Соляризованная цветовая схема и искажения палитры для пользователей ssh'd в iTerm2
Моя установка включает в себя vim, iTerm2, tmux и соляризованную темную цветовую схему. У меня есть темная соляризованная цветовая палитра, загруженная в iTerm2 (изменяет цвета ANSI), и я не использую ухудшенную соляризованную цветовую схему (т.е. let g:solarized_termcolors=256
), как говорилось в файле readme, в качестве альтернативы использованию цветовой палитры. Все выглядит отлично.
Но я часто нахожусь в паре с коллегами. Собирает ssh на мою машину из других экземпляров iTerm2, а иногда и Terminal.app, и создает новый сеанс tmux с моим сеансом tmux в качестве базового / родительского сеанса. В случае iTerm2 их настройка не включает в себя загрузку соляризованной цветовой палитры (одна использует другую палитру полностью) и установку let g:solarized_termcolors=256
использовать ухудшенную соляризованную цветовую гамму. Если это то, что они хотят, отлично, но когда они подключаются ко мне через ssh / tmux, цвета теряются и часто искажаются до такой степени, что становятся неразборчивыми.
Есть ли какая-либо комбинация настроек, кроме того, что все используют одни и те же настройки, чтобы исправить это? Сейчас я рекомендую использовать ухудшенную цветовую схему и не загружать соляризованную цветовую палитру, чтобы цвета ANSI не изменялись. Это работает, но оставляет меня с ухудшенной соляризованной цветовой схемой. И поскольку я предпочитаю не ухудшенную соляризованную цветовую схему, я бы предпочел не использовать этот подход.
1 ответ
При использовании в терминале соляризованная цветовая схема для Vim по умолчанию имеет 16 цветов и зависит от палитры эмулятора терминала, поскольку она использует "Красный", "Желтый"… в качестве значений для ctermfg
и друзья.
Если вы хотите, чтобы везде были одинаковые цвета, вам, очевидно, нужно, чтобы везде была одна и та же палитра, потому что ваш "красный" может не быть чьим-либо "красным".
Я не знаю, что курил автор, когда писал, но let g:solarized_termcolors=256
не "ухудшен" вообще по сравнению со значением по умолчанию. По умолчанию используется только палитра из 16 цветов (в зависимости от палитры терминала, как мы уже видели), в то время как эта опция заставляет использовать независимую от терминала палитру из 256 цветов. Поскольку схема цветов больше не зависит от палитры эмулятора терминала, цвета на самом деле "гарантированно" выглядят "хорошо" и "одинаково" на вашем эмуляторе терминала и на чужом эмуляторе терминала.
Суть в том, что ваш эмулятор терминала и их эмуляторы терминала должны поддерживать 256 цветов. Все сегодняшние терминалы делают, но по умолчанию часто устанавливается 16 цветов. Как правило, поддержку 256 цветов легко включить.
Но этот вариант только для Vim. Цвета вашего приглашения или вывода некоторых команд или tmux
TUI может все еще чувствовать себя "выключенным" по отношению к вашим коллегам.
Возможность настроить ад из ваших настроек, конечно, является важным аспектом работы с Vim. Но настройка идет по цене. Вы привыкаете ко многим мелочам, и может случиться так, что, столкнувшись с совершенно другими настройками, ну... вы просто потерялись. Или, как это происходит с вами, ваши настройки настроены так, что ваши коллеги не смогут их использовать.
Парное программирование может работать только в том случае, если вы и ваша пара способны достичь компромисса в настройке. Очевидно, что эта установка может быть не совсем вашей или его, но вы должны найти золотую середину, на которой все согласны на работу в паре. Поскольку вы и ваша пара можете использовать разные версии tmux/vim, разные оболочки или разные эмуляторы терминала, самый безопасный вариант - использовать самые простые настройки. К сожалению для вас, соляризация слишком хрупкая и далеко не достаточно "базовая".