/ / Comment convertir cette fonction zsh en shell de poisson? - zsh, poisson

Comment convertir cette fonction zsh en shell de poisson? - zsh, poisson

J'ai cette fonction qui fonctionne très bien dans zsh, mais je veux le convertir en fish-shell et je ne peux pas le faire fonctionner.

function ogf () {
echo "Cloning, your editor will open when clone has completed..."
source <(TARGET_DIRECTORY=~/students EDITOR=$EDITOR clone_git_file -ts "$1")
}

Réponses:

2 pour la réponse № 1

Tout d'abord, puisque la syntaxe de fish est différente de zsh, vous devez également modifier la sortie de clone_git_file à source il.

Par exemple, si clone_git_file est quelque chose comme:

#!/bin/bash
echo "FOO=$TARGET_DIRECTORY"
echo "BAR=$2"

vous devez le changer pour la syntaxe du poisson.

#!/bin/bash
echo "set -gx FOO $TARGET_DIRECTORY"
echo "set -gx BAR $2"

Maintenant, voici le ogf() fonction et code d'échantillon pour les poissons:

function ogf
echo "Cloning, your editor will open when clone has completed..."
source (env TARGET_DIRECTORY=~/students EDITOR=$EDITOR clone_git_file -ts $argv[1] | psub)
end

ogf MY_ARGUMENT
echo "FOO is $FOO"
echo "BAR is $BAR"

En exécutant ce code avec fish, la sortie est la suivante:

FOO is /home/MY_USER/students
BAR is MY_ARGUMENT