2

Вступление

Я всегда использовал терминал со светлым фоном и редактор темного фона (vim). В этом я не готов идти на компромисс. В любом случае, я только что переключился с xterm на urxvt ($ TERM == rxvt-unicode-256color) в основном из-за неразрешенной ошибки усечения шрифта fontconfig/xft в xterm и способности urxvt правильно переформатировать текст (есть и другие льготы хотя, поэтому, пожалуйста, не предлагайте вслепую переключать терминалы). К сожалению, у меня есть одна проблема с urxvt, которую я не могу решить: цвет курсора в vim невидим. Позвольте мне объяснить поведение каждого терминала по умолчанию:

XTerm:

  • Цвет курсора по умолчанию соответствует цвету переднего плана основного текста и поэтому изменяется. Если основного текста нет, по умолчанию используется цвет переднего плана (обычно белый или черный).
  • цвет текста под курсором переводится на цвет фона (обычно черный или белый)
  • XTerm игнорирует параметр cursorColor «# 000000» и вместо этого использует поведение по умолчанию

Поэтому текст под курсором невидим в XTerm, только когда цвет курсора соответствует (как можно ближе) к цвету фона.

URxvt:

  • Цвет курсора по умолчанию черный.
  • цвет текста под курсором становится белым.

Поэтому текст под курсором невидим в URxvt, только когда цвет курсора белый

Вернуться к проблеме:

Курсор URxvt невидим в vim, потому что я использую темную цветовую схему (черный курсор на черном фоне). Я не могу изменить курсор на цвет на белый в ~/.Xdefaults потому что я использую терминал со светлым фоном, это приведет к появлению белого курсора на белом фоне над белым текстом: невидимого курсора и невидимого шрифта. Однако, хотя vim обычно не поддерживает изменение цвета курсора, с небольшим количеством взлома в ~/.vimrc это становится возможным. К сожалению, белый или светлый курсор приводит либо к невидимому тексту, либо, по крайней мере, к гораздо менее разборчивому тексту.

обзор

Невидимый курсор:

  • объяснение: черный курсор на черном фоне.
  • Решение: измените цвет курсора на белый (или более светлый цвет)
  • проблема: приводит к невидимому тексту (или труднее читать текст)

Невидимый текст:

  • объяснение: белый курсор над белым текстом
  • решение: ????

Решения

Я надеюсь, что либо URxvt может поддерживать поведение XCerm cursorColor/cursorTextColor, либо, по крайней мере, поддерживать изменение цвета текста под курсором, хотя, конечно, я открыт для других решений.

0