He escrito un script ZSH que utiliza la función de devolución de llamada chpwd
para obtener configuraciones ZSH específicas del proyecto de origen. No estoy seguro de si funciona con Bash, pero creo que valdrá la pena intentarlo. Si no encuentra un archivo de script en el directorio en el que está editando, verificará los directorios principales hasta que encuentre un script en la fuente (o hasta que llegue al /
). También llama a una función unmagic
cuando sale del directorio, lo que le permite limpiar su entorno cuando abandona un proyecto.
http://github.com/jkramer/home/blob/master/.zsh/func/magic
Ejemplo de un guión "mágica":
export BASE=$PWD # needed for another script of mine that allows you to cd into the projects base directory by pressing ^b
ctags -R --languages=Perl $PWD # update ctags file when entering the project directory
export PERL5LIB="$BASE/lib"
# function that starts the catalyst server
function srv {
perl $BASE/script/${PROJECT_NAME}_server.pl
}
# clean up
function unmagic {
unfunction src
unset PERL5LIB
}
Solo agregue 'printf" \ e] 1; $ PWD \ a "' y bam (!), El nombre de la pestaña se cambia a pwd. – Fadi
@Fadi mientras que es cierto, la mayoría de las personas simplemente agrega una secuencia de escape al prompt para eso, realmente no importa que se actualice con cada aviso (en lugar de solo cuando se cambian directorios), ya que no será notorio. – falstro