Tienes que actualizar tu archivo TERMINFO
.
Gracias a video de wincent y su github pages
Mira el video y mira sus páginas de github, son excelentes.
Tengo la siguiente nota almacenada en mi HD:
Podemos tener itálicas en el terminal.
Esto funciona tanto en iTerm como en Terminal.
Tenemos que adaptar la base de datos terminfo para que muestre las cursivas.
Cree un archivo de texto sin formato que contenga lo siguiente:
xterm-256color|xterm with 256 colors and italic,
sitm=\E[3m, ritm=\E[23m,
use=xterm-256color,
Guárdalo como xterm-256color.terminfo.txt
Luego ejecuta el siguiente comando:
tic -o ~/.terminfo xterm-256color.terminfo.txt
Esto creará un directorio ~/.terminfo/some_arbitrary_number/
, y dentro de ese directorio hay un archivo xterm-256color
.
Lo que hace según la página del manual:
The command tic translates a terminfo file from source format into com-
piled format. The compiled format is necessary for use with the
library routines in ncurses(3X).
The results are normally placed in the system terminfo directory
/usr/share/terminfo. There are two ways to change this behavior.
First, you may override the system default by setting the variable TER-
MINFO in your shell environment to a valid (existing) directory name.
Secondly, if tic cannot get access to /usr/share/terminfo or your TER-
MINFO directory, it looks for the directory $HOME/.terminfo; if that
directory exists, the entry is placed there.
Libraries that read terminfo entries are expected to check for a TER-
MINFO directory first, look at $HOME/.terminfo if TERMINFO is not set,
and finally look in /usr/share/terminfo.
-o dir Write compiled entries to given directory. Overrides the TER-
MINFO environment variable.
Entonces, con el comando dado estamos escribiendo una nueva entrada de terminfo en el directorio oculto ~/.terminfo
. Toma las capacidades de la entrada xterm-256color existente (de /usr/share/terminfo/
) y le agrega el modo de cursiva.
Para comprobar que el terminal hace lo correcto:
Supongo que en este momento la mayoría de los esquemas de color de los terminales vim no establecen la cursiva como un estilo. Para verificar esto, haga lo siguiente:
:hi Comment
si la respuesta contiene cterm=italic
, ha terminado.
Si no, agrega highlight Comment cterm=italic
a tu vimrc ( abajo configurando tu esquema de colores).
Addendum para tmux
tmux usa sus propios archivos terminfo, también deben actualizarse para usar cursiva.
- crear un archivo
tmux.terminfo.txt
que contenga
tmux|tmux terminal multiplexer,
sitm=\E[3m, ritm=\E[23m,
smso=\E[7m, rmso=\E[27m,
use=screen,
- crear un archivo
tmux-256color.terminfo.txt
que contenga
tmux-256color|tmux with 256 colors,
sitm=\E[3m, ritm=\E[23m,
smso=\E[7m, rmso=\E[27m,
use=screen-256color,
y ejecuta el comando tic.
tic -o ~/.terminfo tmux-256color.terminfo.txt
y
tic -o ~/.terminfo tmux.terminfo.txt