Linux VT Emacs no tmux, quebra cor e cursor

4

TERM está definido para a tela. Eu tentei com screen-256color , mas depois as cores ficaram realmente porcas. Eu também tentei xterm , linux , e alguns outros (que eu poderia pensar, não realmente pensando) mas screen é o mais próximo que eu tenho - embora não totalmente - de cores "pure" tty do Emacs.

Como você vê abaixo, as cores funcionam (janela superior), apenas por algum motivo elas aparecem incorretas como ciano, no caso do Emacs-w3m.

Além disso, provavelmente relacionado, o bloco, cursor de cor sólida que eu tinha, foi substituído por um sublinhado. Eu prefiro o cursor do bloco de mudança de cor - não menos porque é muito mais fácil de detectar após uma pesquisa. (Nota: o problema do cursor não aparece abaixo, pois usei o comando shell para obter as capturas de tela.)

in_tmux http://user.it.uu.se/~embe8573/emacs_tmux_colors/emacs_in_tmux. png not_in_tmux http://user.it.uu.se/~embe8573/emacs_tmux_colors/not_in_tmux.png

    
por Emanuel Berg 12.07.2013 / 22:42

1 resposta

0

O emulador de terminal que você está usando também pode estar parafusando com as cores. Eu estava tendo um problema de cor com o vim no modo de 256 cores e acabou sendo o emulador de terminal do Konsole com o KDE que estava mudando as cores padrão e estava tornando o vim colorshemes todo estragado.

Acabei tendo que definir manualmente as cores para as cores esperadas para que funcione com elas.

Eu tive mais sorte com o seguinte:

  1. tela-256 cores
  2. força o tmux a assumir 256 cores: tmux -2
  3. use o urxvt para o terminal
  4. E o seguinte foi adicionado a .Xresources

~ / .Xresources

URxvt*background:  black
URxvt*foreground:  white
URxvt*font:  xft: Inconsolata:size=12
URxvt*transparent: false
URxvt*depth: 32

Tente o seguinte script para ver se você está realmente obtendo 256 cores.

#!/bin/bash
#
#   This file echoes a bunch of color codes to the 
#   terminal to demonstrate what's available.  Each 
#   line is the color code of one forground color,
#   out of 17 (default + 16 escapes), followed by a 
#   test use of that color on all nine background 
#   colors (default + 8 escapes).
#

T='gYw'   # The test text

echo -e "\n                 40m     41m     42m     43m\
     44m     45m     46m     47m";

for FGs in '    m' '   1m' '  30m' '1;30m' '  31m' '1;31m' '  32m' \
           '1;32m' '  33m' '1;33m' '  34m' '1;34m' '  35m' '1;35m' \
           '  36m' '1;36m' '  37m' '1;37m';
  do FG=${FGs// /}

  echo -en " $FGs 3[$FG  $T  "

  for BG in 40m 41m 42m 43m 44m 45m 46m 47m;
    do echo -en "$EINS 3[$FG3[$BG  $T  3[0m";
  done

  echo;
done
echo
    
por 22.01.2014 / 07:46