Отображать символ мягкого дефиса в vim в Mac OS X Terminal

vim полностью запутан с мягкими символами дефиса (0xAD) в Mac OS X Terminal. Он не отображается, хотя номер "виртуального столбца" правильный, вставка перепутана.

Так что, если у меня есть строка с a-b, где - мягкий дефис, он показывает как ab в VIM, и когда я пытаюсь заменить символ b от cЯ получаю вместо acb, Весьма запутанно.

То же самое происходит с pico, но не с emacs,

Есть ли способ это исправить?

Я использую vim в Терминале Mac OS X.

1 ответ

Unicode назначает символ U+00AD SOFT HYPHEN. Восточноазиатская ширина неоднозначна, что означает, что он занимает один или два столбца терминала - он должен отображаться визуально, - но Терминал использует полное средство визуализации текста Unicode, доступное в OS X, которое не отображает мягкие дефисы если он не выполняет разрыв строки.

Интересно, emacs отображает мягкие дефисы, отправляя дефис на терминал, вместо того, чтобы в зависимости от него отображать мягкий дефис. vim просто отправляет мягкий дефис на терминал и предполагает, что он будет отображаться.

Начиная с OS X Mountain Lion 10.8, Терминал отображает мягкие дефисы.

iTerm2 не имеет этой проблемы с мягкими дефисами.

@Kevin Ballard Если вы включите "Экспериментальный рендер" в настройках MacVim, MacVim правильно отобразит мягкие дефисы.

Другие вопросы по тегам