Borrar o deshabilitar alias en zsh


12

Instalé oh-my-zsh para hacer que el uso del terminal sea un poco más fácil. Sin embargo, una cosa que me molesta son los prolíficos alias agregados, como "ga", "gap", "gcmsg", "_", que son más difíciles de recordar que el comando original y contaminan la tabla hash del comando.

Entonces, ¿hay alguna manera de deshabilitar los alias por completo? ¿O una forma de borrar todos los alias para que pueda ponerlo en mi .zshrc?

Respuestas:


8

Si no desea ninguno de los alias de oh-my-zsh, pero desea mantener otros alias, puede guardar los alias antes de cargar oh-my-zsh

save_aliases=$(alias -L)

y restaurarlos luego.

eval $save_aliases; unset save_aliases

Si desea eliminar todos los alias en algún momento, puede usar unalias -m '*'(eliminar todos los alias que coincidan *, es decir, todos).

Si odias los alias y no quiero ver nunca uno, puede hacer que la aliasorden interna inoperante: unalias -m '*'; alias () { : }. O simplemente puede desactivar la expansión de alias con setopt no_aliases.


7

Puedes usar unaliascon la -mopción:

unalias -m '*'

para eliminar todos los alias definidos


Cuando agrego esta línea a .zshrc, todavía queda un alias globurl='noglob urlglobber '. ¿Alguna idea de por qué?
Siyuan Ren

Tal vez está cargado después de unaliascorrer. , Tal vez deberías poner el unaliascomando al final de tu.zshrc
Cuonglm

Lo puse al final. Por eso es tan confuso.
Siyuan Ren

¿Cuál es la salida de zstyle?
Cuonglm


3

Si solo desea eliminar los alias git, le recomiendo una de las dos opciones siguientes:

  1. Cambie ~/.oh-my-zsh/plugins/git/git.plugin.zsheliminando todos los alias en la parte inferior

  2. Haga una copia de ese complemento (ubicación recomendada:) ~/.oh-my-zsh/custom/plugins/git-noalias/git-noalias.plugin.zsh, edite esa copia para que no tenga los alias, y luego cambie su ~/.zshrchacer en plugins=(git-noalias)lugar de plugins=(git).

Esto le dará todos los beneficios del complemento (no estoy seguro de cuáles son, pero pueden estar relacionados con el estado automático de Git / información de rama que se muestra dentro de las carpetas de Git) sin los alias.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.