Customización del Terminal en Mac Os (Parte I)
Mucha gente que usa Mac Os o Linux ni siquiera sabe que existe un terminal, yo como buen administrador de sistemas y técnico de soporte he usado y sigo usando mucho el terminal, es útil para hacer funciones que desde el escritorio gráfico son más complicadas.
Bueno empecemos con la chicha, a mi desde que empece a jugar al quake me gustan los terminales que salen desde arriba, vamos lo que se llama drop-down:
En linux hay un programa que se llama yakuake que tiene el mismo efecto que el terminal del quake, en mac encontré un programa similar y grátis que se llama visor.
Lo primero que tenemos que hacer es descargar SIMBL e instalarlo, luego descomprimimos visor en ~/Library/Application Support/SIMBL/Plugins y reiniciamos el terminal en preferencias ya nos aparece
el icono de visor
con esto nos podemos hacer una combinación como esta, es importante elegir como combinación por
omisión la de visor, sino no funcionará bien y se verá raro
Después vamos a configurar el prompt del bash, esta parte es para dejar el prompt mas atractivo y visual
con la información que queramos, en mi caso el prompt es este:
\[\e[0;37m\]\[\e[0;34m\]\w\[\e[m\] \[\e[0;32m\]\u\[\e[m\] \[\e[1;37m\]->\[\e[m\] \[\e[1;37m\]
que devuelve algo así:
basicamente devuelve el directorio completo y el nombre de usuario (\w y \u) el resto son los colores azul
y verde para el directorio y el usuario y blanco para lo que escribimos después, las barras invertidas son
para hacer no escribible el promtp ya que si el comando es muy largo se sobreescribira.
Para realizar esto usando la shell por defecto de mac que es bash 3.2, primero hay que modificar el
.bash_profile para que carge nuestro archivo de configuración (.bashrc), todos estos ficheros están
en la home de tu usuario si algo no existe se crea con vi .bashrc o vi .bash_profile, añadimos este código
al fichero
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
Bueno empecemos con la chicha, a mi desde que empece a jugar al quake me gustan los terminales que salen desde arriba, vamos lo que se llama drop-down:
En linux hay un programa que se llama yakuake que tiene el mismo efecto que el terminal del quake, en mac encontré un programa similar y grátis que se llama visor.
Lo primero que tenemos que hacer es descargar SIMBL e instalarlo, luego descomprimimos visor en ~/Library/Application Support/SIMBL/Plugins y reiniciamos el terminal en preferencias ya nos aparece
el icono de visor
con esto nos podemos hacer una combinación como esta, es importante elegir como combinación por
omisión la de visor, sino no funcionará bien y se verá raro
Después vamos a configurar el prompt del bash, esta parte es para dejar el prompt mas atractivo y visual
con la información que queramos, en mi caso el prompt es este:
\[\e[0;37m\]\[\e[0;34m\]\w\[\e[m\] \[\e[0;32m\]\u\[\e[m\] \[\e[1;37m\]->\[\e[m\] \[\e[1;37m\]
que devuelve algo así:
basicamente devuelve el directorio completo y el nombre de usuario (\w y \u) el resto son los colores azul
y verde para el directorio y el usuario y blanco para lo que escribimos después, las barras invertidas son
para hacer no escribible el promtp ya que si el comando es muy largo se sobreescribira.
Para realizar esto usando la shell por defecto de mac que es bash 3.2, primero hay que modificar el
.bash_profile para que carge nuestro archivo de configuración (.bashrc), todos estos ficheros están
en la home de tu usuario si algo no existe se crea con vi .bashrc o vi .bash_profile, añadimos este código
al fichero
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
y luego modicamos el .bashrc, en mi caso el fichero contiene esto:
#export PILOTPORT=/dev/pilot
#export PILOTRATE=115200
export TERM="xterm-color"
test -s ~/.alias && . ~/.alias || true
if [ -f /etc/bashrc ]; then
. /etc/bashrc # --> Read /etc/bashrc, if present.
fi
export PATH=/sbin:$PATH:/Developer/Android_SDK/tools:/Developer/Android_SDK/platform-tools:/Developer/usr/bin:/Developer/usr/sbin:/usr/local/bin:/usr/local/sbin
#-------------------------------------------------------------
# Greeting, motd etc...
#-------------------------------------------------------------
# Looks best on a terminal with black background.....
echo -e "This is BASH ${BASH_VERSION%.*}
- DISPLAY on $DISPLAY\n"
date
if [ -x /usr/local/bin/fortune ]; then
/usr/local/bin/fortune -s # Makes our day a bit more fun.... :-)
fi
function _exit() # Function to run upon exit of shell.
{
echo -e "Hasta la vista, baby"
}
trap _exit EXIT
#----------------------------------------------------------------
#Shell Prompt
#----------------------------------------------------------------
alias ls="ls -G"
#export PS1="\e[1;30m\][\e[\e[1;30m\]\e[1;33m\] \u@\H \[\e[1;32m\]\w\[\e[0m\] \e[1;30m\] ] > \e[37m\]"
#PS1='\[\e[0;37m\]\[\e[0;34m\]\e[47m\w\[\e[0;32m\]\e[47m\u\[\e[1;37m\]\e[47m -> \[\e[m\]\[\e[1;37m\]'
PS1='\[\e[0;37m\]\[\e[0;34m\]\w\[\e[m\] \[\e[0;32m\]\u\[\e[m\] \[\e[1;37m\]->\[\e[m\] \[\e[1;37m\]'
Yo he instalado fortune con brew (eso da para otro post) de ahí el código del inicio, este código devuelve
lo siguiente:
también gracias al SIMBL colorea los directorios y las carpetas, basicamente en el PS1 (el prompt) se
puede sacar la siguiente información
\a an ASCII bell character (07) \d the date in "Weekday Month Date" format (e.g., "Tue May 26") \e an ASCII escape character (033) \h the hostname up to the first `.' \H the hostname \j the number of jobs currently managed by the shell \l the basename of the shell's terminal device name \n newline \r carriage return \s the name of the shell, the basename of $0 (the portion following the final slash) \t the current time in 24-hour HH:MM:SS format \T the current time in 12-hour HH:MM:SS format \@ the current time in 12-hour am/pm format \u the username of the current user \v the version of bash (e.g., 2.00) \V the release of bash, version + patchlevel (e.g., 2.00.0) \w the current working directory \W the basename of the current working direcory \! the history number of this command \# the command number of this command \$ if the effective UID is 0, a #, otherwise a $ \nnn the character corresponding to the octal number nnn \\ a backslash \[ begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the prompt \] end a sequence of non-printing characters
y estas son las equivalencias de colores
Black 0;30 Dark Gray 1;30 Blue 0;34 Light Blue 1;34 Green 0;32 Light Green 1;32 Cyan 0;36 Light Cyan 1;36 Red 0;31 Light Red 1;31 Purple 0;35 Light Purple 1;35 Brown 0;33 Yellow 1;33 Light Gray 0;37 White 1;37 |
El 0 es para colores mas claros y el 1 para colores mas brillantes
El resultado final es este:
Para mas información consultar los sigiientes sitios:
http://tldp.org/HOWTO/Bash-Prompt-HOWTO/
http://www.hypexr.org/bash_tutorial.php
http://www.ibm.com/developerworks/linux/library/l-tip-prompt/
Además siempre me podéis preguntar a mí
Comentarios
Publicar un comentario