Un gestionnaire de plugin pour le poisson - votre coquille interactive amicale. Snag Fresh Plugins!
Prenez le contrôle des fonctions, des compléments, des liaisons et des extraits de la ligne de commande. Libérez le véritable potentiel de votre coquille, perfectionnez votre invite et créez des configurations reproductibles sur différents systèmes sans effort. L'impact zéro de Fisher sur le démarrage de la coquille maintient votre coquille zippée et réactive. Pas de gadgets, juste en douceur!
☝️ MODIFICATION DE FISHER
3.xou plus? Strap et lisez ceci!
curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source && fisher install jorgebucaran/fisher Fisher vous permet d'installer, de mettre à jour et de supprimer les plugins comme un boss. Découvrez l'adhésion de l'onglet Fish et la richesse de la syntaxe pendant que vous y êtes.
Pour installer des plugins, utilisez la commande install et pointez-le vers le référentiel GitHub.
fisher install jorgebucaran/nvm.fishVous voulez installer à partir de Gitlab? Pas de problème - Préplosez simplement
gitlab.com/sur le chemin du plugin.
Vous pouvez également accrocher une version spécifique d'un plugin en ajoutant un @ symbole après le nom du plugin, suivi d'une balise, d'une branche ou d'un engagement.
fisher install IlanCosman/tide@v5Et bon, vous pouvez également installer des plugins à partir d'un répertoire local!
fisher install ~/path/to/pluginAttention! Fisher étend les plugins dans votre répertoire de configuration de poisson par défaut, écrasant les fichiers existants. Si ce n'est pas votre confiture, définissez
$fisher_pathà votre emplacement préféré et placez-le dans votre chemin de fonction (# 640).
Utilisez la commande list pour voir tous vos plugins installés brillants.
$ fisher list
jorgebucaran/fisher
ilancosman/tide@v5
jorgebucaran/nvm.fish
/home/jb/path/to/plugin La commande list joue également bien avec des expressions régulières pour filtrer la sortie.
$ fisher list ^ /
/home/jb/path/to/plugin update la commande à la rescousse! Il met à jour un ou plusieurs plugins à leur version la plus récente et la plus grande.
fisher update jorgebucaran/fisherTapez simplement
fisher updatepour tout mettre à jour en un seul coup.
Dites au revoir aux plugins installés avec la commande remove .
fisher remove jorgebucaran/nvm.fishVous vous sentez destructeur? Effacer tout, y compris Fisher lui-même.
fisher list | fisher remove fish_plugins Chaque fois que vous installez ou retirez un plugin de la ligne de commande, Fisher note tous les plugins installés dans $__fish_config_dir/fish_plugins . Ajoutez ce fichier à vos dotfiles ou contrôle de version pour partager facilement votre configuration sur différents systèmes.
Vous pouvez également modifier ce fichier et exécuter fisher update pour commettre des modifications comme un pro:
$EDITOR $__fish_config_dir/fish_plugins jorgebucaran/fisher
ilancosman/tide@v5
jorgebucaran/nvm.fish
+ PatrickF1/fzf.fish
- /home/jb/path/to/plugin fisher updateCela installera Patrickf1 / FZF.fish , retirer / home / jb / path / to / to / plugin et mettre à jour tout le reste.
Les plugins peuvent inclure n'importe quel nombre de fichiers dans les répertoires functions , conf.d et completions . La plupart des plugins ne sont qu'une seule fonction ou un extrait de configuration. Voici l'anatomie d'un plugin typique:
flipper
├fiques
│ └fique
├fiques
│ └fique
Fonctions
Flipper.fisp
Les fichiers et répertoires non .fish à l'intérieur de ces emplacements seront copiés sur $fisher_path sous functions , conf.d ou completions respectivement.
Les événements de poisson informent les plugins lorsqu'ils sont installés, mis à jour ou supprimés.
Gardez à l'esprit que
--on-eventles fonctions doivent être chargées lorsque leur événement est émis. Alors, placez vos gestionnaires d'événements dans le répertoireconf.d
# Defined in flipper/conf.d/flipper.fish
function _flipper_install --on-event flipper_install
# Set universal variables, create bindings, and other initialization logic.
end
function _flipper_update --on-event flipper_update
# Migrate resources, print warnings, and other update logic.
end
function _flipper_uninstall --on-event flipper_uninstall
# Erase "private" functions, variables, bindings, and other uninstall logic.
end Un thème est comme tout autre plugin de poisson, mais avec un fichier .theme dans le répertoire themes . Les thèmes ont été introduits dans Fish 3.4 et fonctionnent avec le fish_config Breetin. Un thème peut également avoir des fichiers dans functions , conf.d . ou completions si nécessaire. Découvrez à quoi ressemble un plugin de thème typique:
branchies
├fiques
│ └── Gills.fish
Thèmes
└fiques-gills.heme
$fisher_path avec des thèmes Si vous personnalisez $fisher_path pour utiliser un répertoire autre que $__fish_config_dir , vos thèmes ne seront pas disponibles via fish_config . $__fish_config_dir/themes $fisher_path/themes Ce n'est pas encore configurable dans le poisson, mais il y a une demande pour ajouter cette fonctionnalité.
N'ayez pas peur! Vous pouvez facilement résoudre ceci en symblinquant le répertoire themes de Fisher dans votre configuration de poisson. Tout d'abord, sauvegarde tout répertoire de thèmes existants.
mv $__fish_config_dir/themes $__fish_config_dir/themes.bakEnsuite, créez un répertoire Symlien pour Fisher's Themes.
ln -s $fisher_path/themes $__fish_config_dir/themesVous voulez utiliser des plugins de thème et maintenir vos propres thèmes locaux? Vous pouvez aussi le faire (# 708).
Bien que Fisher ne s'appuie pas sur un référentiel de plugin central, la découverte de nouveaux plugins n'a pas à avoir envie de naviguer dans les eaux inexplorées. Pour augmenter la visibilité de votre plugin et faciliter la recherche des utilisateurs, ajoutez des sujets pertinents à votre référentiel à l'aide de fish-plugin . Ce faisant, vous contribuez non seulement à la communauté Fisher, mais vous permettez également aux utilisateurs d'explorer de nouveaux plugins et d'améliorer leur expérience de coquille de poisson. Ne laissez pas les plugins Discovery être une entreprise de poisson, étiquetez vos plugins aujourd'hui!
Fisher a commencé son voyage en 2016 par @jorgebucaran en tant que gestionnaire de configuration de Shell pour FISH. En cours de route, beaucoup ont aidé à le façonner en ce qu'il est aujourd'hui. Oh mes poissons ont ouvert la voie en tant que premier cadre de poisson populaire. @Jethrokuan a fourni un soutien crucial au cours des premières années. Les commentaires candides de @ Patrickf1 se sont révélés inattendus à maintes reprises. Bootstrap Fisher était à l'origine l'idée brillante d'Ilancosman. Merci à tous nos contributeurs! <3
Mit