Como posso encontrar os valores válidos para o termo TERM no tmux?

2

Ao iniciar tmux , preciso passar um tipo de terminal válido. Como estou fazendo o script da inicialização inicial de tmux , gostaria de abordar todas as bases descobrindo os valores válidos de TERM no sistema atual.

Como posso encontrar valores válidos para usar para tmux e qual ordem, incluindo um possível fallback de 16 cores, devo preferir?

Isto é principalmente para sistemas Linux, mas presumo que a abordagem seria semelhante na maioria dos outros unixóides.

    
por 0xC0000022L 25.01.2013 / 18:50

2 respostas

10

O comando toe mostrará as definições do terminfo no sistema atual. Se você não tiver esse comando, verá os dados brutos em /usr/share/terminfo na maioria dos sistemas Linux.

    
por 25.01.2013 / 19:53
2

O programa toe lista as entradas no banco de dados do terminal ncurses, mas pode não ser útil em um menu simples.

Por exemplo, o pacote ncurses-base do Debian lista a noção de alguém das descrições de terminal mais comuns:

This package contains terminfo data files to support the most common types of terminal, including ansi, dumb, linux, rxvt, screen, sun, vt100, vt102, vt220, vt52, and xterm.

A seleção é ad hoc e reflete os relatórios de bugs. Verificando o pacote real;

ansi cons25 cons25-debian cygwin dumb Eterm Eterm-color hurd linux mach mach-bold mach-color mach-gnu mach-gnu-color pcansi rxvt rxvt-basic rxvt-m rxvt-unicode screen screen-256color screen-256color-bce screen-bce screen-s screen-w sun vt100 vt102 vt220 vt52 wsvt25 wsvt25m xterm xterm-256color xterm-color xterm-debian xterm-mono xterm-r5 xterm-r6 xterm-vt220 xterm-xfree86

ou 41 entradas. Olhando para a lista, há vários lugares para discordar:

  • xterm-xfree86 foi preterido em favor de xterm-new 12 anos atrás .
  • os usuários de hurd (e as entradas relacionadas demach) são poucos e
  • não inclui nenhuma das entradas corrigidas para konsole ou vte . Para obter aqueles (assim como as variantes de 256 cores corrigidas), você precisaria de ncurses-term (que tem 2675 entradas).

O programa infocmp não é específico de ncurses, então você seria capaz de use isso em mais plataformas - para verificar a existência. Mas se você quiser verificar a existência (e verificar recursos específicos), tput é o lugar para começar.

Na maioria dos sistemas que você provavelmente utilizará, você usaria o banco de dados de terminais ncurses - ou algum subconjunto definido pelo empacotador. Como o banco de dados de terminais ncurses define as variantes de 256 cores anexando "-256color" ao nome recomendado para o terminal, a maneira que você encontraria uma adequada é simplesmente testar a existência do nome preferido com o sufixo.

Leitura adicional:

por 31.03.2016 / 00:48

Tags