2012-02-09 10 views
5

Al usar zsh, me gustaría agregar un acceso directo para ir al directorio padre. Peasy fácil hacer quecómo volver a dibujar el indicador zsh después de la acción del widget

cdup() { 
    builtin cd .. 
} 
zle -N cdup 
bindkey "your_favorite_key_code" cdup 

Pero esto no quiere volver a dibujar el símbolo del sistema, todo el mundo sabe cómo hacerlo?

Atajos de atajo para hacer pushd/popd podría ser una idea también, para ser honesto, obtuve esas ideas de la "concha de pescado".

Respuesta

6

Recientemente implementé exactamente lo mismo. La mejor solución que puedo llegar a es el siguiente

cdup() { 
    cd .. 
    zle reset-prompt 
} 

la zle reset-prompt es el bit que lo consigue volver a dibujar el símbolo.

Editar:
Mi versión previa de la respuesta tenía un printf '\n' en la respuesta. Esto era necesario si el mensaje era un mensaje de varias líneas. Sin embargo, zsh aparentemente tiene un montón de problemas con las instrucciones mutli-lines, así que lo descarté.

+0

Gracias por la respuesta, ¡incluso mantiene lo que está escrito actualmente en la línea de aviso! El 'printf '\ n'' es bienvenido porque cuando cambio de directorio tengo impresa la nueva pwd. – lolesque

Cuestiones relacionadas