Jak zrobić stały alias w oh-my-zsh?

43

W moim .zshrc próbowałem zrobić kilka aliasów. Spojrzałem na wiele miejsc, ale nie mogłem znaleźć sposobu, który zadziałałby. Użyłem tego kodu poniżej:

# Set personal aliases, overriding those provided by oh-my-zsh libs, 
# plugins, and themes. Aliases can be placed here, though oh-my-zsh 
# users are encouraged to define aliases within the ZSH_CUSTOM folder. 
# For a full list of active aliases, run alias. # # Example aliases
alias zshconfig="mate ~/.zshrc"
alias ohmyzsh="mate ~/.oh-my-zsh"
alias n= "nano"  
alias m= "mkdir"
alias w= "cd ~/Documents/UoMWorkspace/Semester2"  
alias j= "cd ~/Documents/UoMWorkspace/Semester2/COMP17412"

Potem napisałem polecenie source ~/.zshrc. Nadal nie rozwiązało problemu. Otrzymuję komunikaty o błędach, takie jakzsh: command not found: j

Czy ktoś może mi pomóc z wszelkimi sugestiami i dać mi znać, co robię źle?

Shamveel Ahammed
źródło
3
Sądząc po (mutleple) komentarzach i na podstawie błędu, przypuszczam, że każdy alias jest ustawiony w jednej linii, prawda?
Kos

Odpowiedzi:

67

Wokół ani między =nazwą aliasu lub definicją aliasu nie może być żadnych białych znaków :

alias zshconfig="mate ~/.zshrc"
alias ohmyzsh="mate ~/.oh-my-zsh"
alias n="nano"
alias m="mkdir"
alias w="cd ~/Documents/UoMWorkspace/Semester2"
alias j="cd ~/Documents/UoMWorkspace/Semester2/COMP17412"

BTW: Jeśli szukasz sposobu na skrócenie nazw katalogów, sugeruję zajrzenie do Nazwanych katalogów i AUTO_CDopcji zamiast aliasów:

hash -d w=~/Documents/UoMWorkspace/Semester2
hash -d j=~/Documents/UoMWorkspace/Semester2/COMP17412

Pozwala to na użycie ~wzamiast ~/Documents/UoMWorkspace/Semester2i ~jzamiast ~/Documents/UoMWorkspace/Semester2/COMP17412(lub ~w/COMP17412). Więc cd ~jjest identyczny z cd ~/Documents/UoMWorkspace/Semester2. Działa również jako część ścieżki, np cat ~j/somedir/somefile.

Z

setopt AUTO_CD

zshprzejdzie automatycznie cddo katalogu, jeśli jest podany jako polecenie w wierszu poleceń i nie jest to nazwa rzeczywistego polecenia. na przykład

% /usr
% pwd
/usr
% ~w
/home/YOURUSERNAME/Documents/UoMWorkspace/Semester2
Adaefon
źródło
Jako dalsze wyjaśnienia, dlaczego nie należy używać spacji przed i po znaku równania: np a = b: To będzie traktowane jako polecenia az dwoma parametrami ( bi =) i wygeneruje błąd: zsh: command not found: a. Jeśli wstawisz aliasprzed tym ( alias a = b), będzie to jakoś podobne.
Timo,
Właśnie użyłem „vi ~ / .zshrc” i edytowałem plik, export PATH=/Users/andres/flutter/bin:$PATHponieważ używam trzepotania
Andres Paladines