Hapus atau nonaktifkan alias di zsh

12

Saya menginstal oh-my-zsh untuk membuat penggunaan terminal sedikit lebih mudah. Satu hal yang mengganggu saya adalah alias yang banyak ditambahkan, seperti "ga", "gap", "gcmsg", "_", yang lebih sulit diingat daripada perintah aslinya, dan mencemari tabel perintah hash.

Jadi apakah ada cara untuk menonaktifkan alias sama sekali? Atau cara untuk menghapus semua alias sehingga saya bisa memasukkannya ke saya .zshrc?

Siyuan Ren
sumber

Jawaban:

8

Jika Anda tidak menginginkan alias oh-my-zsh, tetapi Anda ingin menyimpan alias lain, Anda dapat menyimpan alias sebelum memuat oh-my-zsh

save_aliases=$(alias -L)

dan mengembalikannya setelah itu.

eval $save_aliases; unset save_aliases

Jika Anda ingin menghapus semua alias di beberapa titik, Anda dapat menggunakan unalias -m '*'(hapus semua alias yang cocok *, yaitu semuanya).

Jika Anda benar-benar benci alias dan tidak ingin pernah melihat satu, Anda dapat membuat aliasbuiltin tdk berlaku: unalias -m '*'; alias () { : }. Atau Anda cukup mematikan ekspansi alias dengan setopt no_aliases.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
7

Anda dapat menggunakan unaliasdengan -mopsi:

unalias -m '*'

untuk menghapus semua alias yang ditentukan

cuonglm
sumber
Ketika saya menambahkan baris ini .zshrc, masih ada satu alias globurl='noglob urlglobber 'tersisa. Ada yang tahu kenapa?
Siyuan Ren
Mungkin dimuat setelah unaliasberlari. , Mungkin Anda harus meletakkan unaliasperintah di akhir Anda.zshrc
cuonglm
Saya memang meletakkannya di bagian akhir. Itu sebabnya sangat membingungkan.
Siyuan Ren
Apa output zstyle?
cuonglm
Lihat gist.github.com/netheril96/70be43f8627eea5603f1 untuk zstyleoutput.
Siyuan Ren
3

Jika Anda hanya ingin menghapus alias git, saya sarankan salah satu dari dua pilihan berikut:

  1. Ubah ~/.oh-my-zsh/plugins/git/git.plugin.zshdengan menghapus semua alias di bagian bawah

  2. Membuat salinan yang plugin (lokasi direkomendasikan: ~/.oh-my-zsh/custom/plugins/git-noalias/git-noalias.plugin.zsh), mengedit yang menyalin untuk tidak memiliki alias, dan kemudian mengubah Anda ~/.zshrcuntuk melakukan plugins=(git-noalias)bukan plugins=(git).

Ini akan memberi Anda semua manfaat plugin (saya tidak yakin apa itu tetapi mereka mungkin terkait dengan informasi status / cabang Git otomatis yang ditampilkan dalam folder Git) tanpa alias.

A.Wan
sumber