zshでエイリアスをクリアまたは無効にする


12

端末を少し使いやすくするために、oh-my-zshをインストールしました。私を悩ませているのは、元のコマンドよりも覚えにくい「ga」、「gap」、「gcmsg」、「_」などのエイリアスが追加され、コマンドハッシュテーブルが汚染されることです。

エイリアスを完全に無効にする方法はありますか?または、すべてのエイリアスをクリアして、それを自分の場所に置くことができる方法.zshrcですか?

回答:


8

oh-my-zshのエイリアスは必要ないが、他のエイリアスを保持したい場合は、oh-my-zshをロードする前にエイリアスを保存できます。

save_aliases=$(alias -L)

後で復元します。

eval $save_aliases; unset save_aliases

ある時点ですべてのエイリアスを削除する場合は、unalias -m '*'(一致するすべてのエイリアス*、つまりすべてのエイリアスを削除する)を使用できます。

エイリアスが絶対に嫌いで、エイリアスを見たくない場合は、alias組み込みを無効にすることができますunalias -m '*'; alias () { : }。または、でエイリアスの展開をオフにすることもできますsetopt no_aliases


7

あなたは使うことができunalias-mオプション:

unalias -m '*'

定義済みのすべてのエイリアスを削除するには


この行をに追加すると.zshrc、まだ1つのエイリアスがgloburl='noglob urlglobber '残っています。理由は何ですか?
思源レン

たぶんそれunaliasは実行後にロードされます。、たぶん、unaliasコマンドの最後にコマンドを置くべきです。.zshrc
cuonglm14年

最後に付けました。それがとても混乱している理由です。
思源レン

の出力はzstyle何ですか?
クオンルム

出力については、gist.github.com / netheril96 / 70be43f8627eea5603f1を参照してくださいzstyle
思源レン

3

gitエイリアスのみを削除する場合は、次の2つの選択肢のいずれかをお勧めします。

  1. ~/.oh-my-zsh/plugins/git/git.plugin.zsh下部のすべてのエイリアスを削除して変更します

  2. そのプラグインのコピーを作成し(推奨場所~/.oh-my-zsh/custom/plugins/git-noalias/git-noalias.plugin.zsh:)、エイリアスを持たないようにそのコピーを編集して~/.zshrcから、のplugins=(git-noalias)代わりにtoを変更しますplugins=(git)

これにより、エイリアスなしでプラグインのすべての利点が得られます(それらが何であるかはわかりませんが、Gitフォルダー内に表示される自動Gitステータス/ブランチ情報に関連している可能性があります)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.