2015-12-01 3 views
1

Стандартные цвета vim в терминале (tmux) по-прежнему не соответствуют цветам gvim. Я использую терминал пантеона в элементарной ОС freya. Это, в сочетании с соляризацией темы: http://ethanschoonover.com/solarizedНомера номеров Vim и комментарии зеленые вместо серых (tmux - solarized)

Когда я «Эхо $ TERM» в tmux выхода есть: экран-

256-цветные

Так что, кажется, все в порядке. Из того, что я понимаю, значение $ TERM должно быть правильно определено в .bashrc. Tmux использует это, и vim использует значение TERM, которое он находит в tmux?

Цвета я получаю следующим образом: enter image description here

В пределах GVim нумерации строк и комментарии серый ?? Как я могу это изменить. Другие цвета также не совпадают?

Мой Gvim выглядит следующим образом: enter image description here

Я выглядя эту проблему в течение нескольких часов ...

Моя конфигурация выглядит следующим образом:

.bashr

# set a fancy prompt (non-color, unless we know we "want" color) 
#case "$TERM" in 
    #xterm-color) color_prompt=yes;; 
#esac 

# uncomment for a colored prompt, if the terminal has the capability; turned 
# off by default to not distract the user: the focus in a terminal window 
# should be on the output of commands, not on the prompt 
#force_color_prompt=yes 

if [ -n "$force_color_prompt" ]; then 
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then 
    # We have color support; assume it's compliant with Ecma-48 
    # (ISO/IEC-6429). (Lack of such support is extremely rare, and such 
    # a case would tend to support setf rather than setaf.) 
    color_prompt=yes 
    else 
    color_prompt= 
    fi 
fi 

if [ "$color_prompt" = yes ]; then 
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' 
else 
    PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ ' 
fi 
unset color_prompt force_color_prompt 

# If this is an xterm set the title to [email protected]:dir 
case "$TERM" in 
xterm*|rxvt*) 
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\[email protected]\h: \w\a\]$PS1" 
    ;; 
*) 
    ;; 
esac 

export EDITOR='vim' 

### Start Tmux when opening terminal 
if [[ ! $TERM =~ screen ]]; then 
    exec tmux -2 
fi 

.tmux.conf

# reload source file to enable settings 
#$ tmux source-file ~/.tmux.conf 
bind r source-file ~/.tmux.conf \; display-message "Config reloaded..." 

# Enable vi mode 
set-window-option -g mode-keys vi 

# Enable mouse control (clickable windows, panes, resizable panes) 
set -g mouse-select-window on 
set -g mouse-select-pane on 
set -g mouse-resize-pane on 

# switch panes using Alt-arrow without prefix 
bind -n M-h select-pane -L 
bind -n M-l select-pane -R 
bind -n M-k select-pane -U 
bind -n M-j select-pane -D 

.vimrc

set background=dark 
colorscheme solarized 

При использовании пантеон $ TERM = XTERM

Я также попытался ВИМ csapprox плагин. Это исправляет его большую часть, но комментарии остаются нечитаемыми.

enter image description here

ответ

0

Я исправил его с помощью элементарных настроек. Это позволяет мне использовать солнечную тему в пантеоне. Все остальные настройки терминала не нужны.

enter image description here

Остальная часть моей конфигурации выглядит следующим образом:

.bashrc

export EDITOR='vim' 

### Start Tmux when opening terminal 
if [[ ! $TERM =~ screen ]]; then 
    exec tmux 
fi 

.tmux.conf

# reload source file to enable settings 
#$ tmux source-file ~/.tmux.conf 
bind r source-file ~/.tmux.conf \; display-message "Config reloaded..." 

# Enable vi mode 
set-window-option -g mode-keys vi 

# Enable mouse control (clickable windows, panes, resizable panes) 
set -g mouse-select-window on 
set -g mouse-select-pane on 
set -g mouse-resize-pane on 

# switch panes using Alt-arrow without prefix 
bind -n M-h select-pane -L 
bind -n M-l select-pane -R 
bind -n M-k select-pane -U 
bind -n M-j select-pane -D 

.vimrc

let g:solarized_bold=1 
let g:solarized_italic=1 
let g:solarized_underline=1 
set background=dark 
colorscheme solarized 

При выполнении echo $ TERM в tmux я получаю экран.

Как вы можете видеть, я удалил весь цвет 256 упоминаний и прочее работает. Комментарии все еще темные, но читаемые.

экрана:

enter image description here

+0

Поделиться тем, как вы добавили эту тему, а затем пометить это как ответ. – Vitor

+0

Я вставил свои конфиги и экран. Спасибо – Christoph

+0

Не забудьте отметить это как правильный ответ, чтобы помочь тому, кто попадает сюда с той же проблемой :) – Vitor

1

Используйте csapprox ВИМ плагин. Он работает прозрачно и делает цвета одинаковыми или почти одинаковыми в gvim и в 256-цветном терминале.

.vimrc

let g:solarized_termcolors=256 
let g:solarized_bold=1 
let g:solarized_italic=1 
let g:solarized_underline=1 
let g:solarized_contrast="high" 
set background=dark 
colorscheme solarized 

tmux.conf

set -g default-terminal "screen-256color" 
+0

Чтобы добавить объяснение соляризации тема использует более чем 256 цветов, поэтому она хорошо выглядит в версии графического интерфейса и странно в терминале. Это касается большинства цветовых схем vim. –

+0

Спасибо, это исправляет его для большой части, но комментарии имеют тот же цвет, что и фон. Смотрите мой последний скриншот в сообщении. – Christoph

2

С ВИМ соляризации GitHub страницы:

ВАЖНО ДЛЯ ПОЛЬЗОВАТЕЛЕЙ ОКОНЕЧНЫМ:

Если вы собираетесь использовать соляризации в режиме терминала (т. е. не в графическом интерфейсе, таком как gvim или macvim), пожалуйста, пожалуйста, sider, устанавливающий цветовую схему вашего эмулятора терминала, чтобы использовать Solarized palette. Я включил палитры для некоторого популярного эмулятора терминала, а также Xdefaults в официальной загрузке Solarized, доступной на Solarized homepage. Если вы используете Solarized без этих цветов, Solarized нужно будет сказать, чтобы снизить свою цветовую схему до набора, совместимого с ограниченной палитрой терминала 256 (тогда как с использованием значений цвета 16 ansi терминала вы можете установить правильные конкретные значения для Solarized палитра).

Если вы используете пользовательские цвета терминалов, solarized.vim должен работать из коробки для вас. Если вы используете эмулятор терминала, который поддерживает 256 цветов и не хотите использовать пользовательские цвета Solarized, вам нужно будет использовать дефрагментированную 256 цветов. Чтобы сделать это, просто добавьте следующую строку перед линией colorschem solarated:

let g: solarized_termcolors = 256 Опять же, я рекомендую просто менять цвета терминалов на значения Solarized вручную или через одну из многочисленных схем терминалов, доступных для Импортировать.

+0

Я прочитал это на своей странице github ... Я не могу найти подходящую конфигурацию цвета пантеона. Проблема в том, что есть так много вещей, чтобы думать о том, что я запутался. – Christoph

+0

https://gist.github.com/OpenNingia/5665472 Я пробовал этот, но комментарии остаются невидимыми. – Christoph

+0

Первый хит в Google: https://github.com/Anthony25/gnome-terminal-colors-solarized, если это поможет. – Vitor

Смежные вопросы