Devi aggiornare il tuo file TERMINFO
.
Grazie a video di wincent e ai suoi pagine github
Guarda il video e guarda le sue pagine github, sono eccellenti.
Ho memorizzato la seguente nota sul mio HD:
Possiamo corsivo nel terminale.
Funziona in iTerm e Terminal.
Dobbiamo adattare il database terminfo per dirgli di mostrare il corsivo.
Crea un file di testo semplice che contenga quanto segue:
xterm-256color|xterm with 256 colors and italic,
sitm=\E[3m, ritm=\E[23m,
use=xterm-256color,
Salvalo come xterm-256color.terminfo.txt
Quindi esegui il seguente comando:
tic -o ~/.terminfo xterm-256color.terminfo.txt
Questo creerà una directory ~/.terminfo/some_arbitrary_number/
, e all'interno di quella directory c'è un file xterm-256color
.
Che cosa fa secondo la manpage:
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.
Quindi con il comando dato stiamo scrivendo una nuova voce terminfo nella directory ~/.terminfo
nascosta. Accetta le funzionalità della voce xterm-256color esistente (da /usr/share/terminfo/
) e aggiunge la modalità in corsivo.
Per verificare che il terminale faccia la cosa giusta:
Suppongo che al momento la maggior parte dei colorimet di terminale vim non imposti il corsivo come stile. Per controllare questo:
:hi Comment
se la risposta contiene cterm=italic
hai finito.
Se non aggiungi highlight Comment cterm=italic
al tuo vimrc ( sotto imposta il tuo colorscheme).
Addendum per tmux
tmux usa i propri file terminfo, devono anche essere aggiornati per usare il corsivo.
- crea un file
tmux.terminfo.txt
che contiene
tmux|tmux terminal multiplexer,
sitm=\E[3m, ritm=\E[23m,
smso=\E[7m, rmso=\E[27m,
use=screen,
- crea un file
tmux-256color.terminfo.txt
che contiene
tmux-256color|tmux with 256 colors,
sitm=\E[3m, ritm=\E[23m,
smso=\E[7m, rmso=\E[27m,
use=screen-256color,
ed esegui il comando tic.
tic -o ~/.terminfo tmux-256color.terminfo.txt
e
tic -o ~/.terminfo tmux.terminfo.txt