Vim 80 столбцов макет проблем - PullRequest
404 голосов
/ 25 октября 2008

Мне кажется, что в Vim неправильная индикация на 80 столбцов: set columns=80. Иногда я также set textwidth, но мне нравится видеть и предвидеть переполнение строки с помощью альтернативы set columns.

У этого есть некоторые неприятные побочные эффекты - я не могу set number из-за боязни разделения между файлами, которые имеют разные порядки номеров строк; то есть <100 строковых файлов и> = 100 строковых файлов потребуют два разных значения set columns из-за дополнительного столбца, используемого для отображения дополнительных цифр. Я также запускаю новые (g) сеансы Vim вместо разделения окон по вертикали, что вынуждает меня использовать буфер обмена оконного менеджера - vsplit s заставляет меня делать set columns каждый раз, когда я открываю или закрываю панель, поэтому начинаю сессия менее хлопотная.

Как вы обрабатываете 80-символьную индикацию, когда хотите set numbers, вертикальное разделение и т. Д .?

Ответы [ 14 ]

5 голосов
/ 25 октября 2008

Боюсь, что вы наложили ограничения на набор решений, которые, ну, в общем, оставят вас с нулевым набором.

Использование :set textwidth=80 исправит все проблемы, о которых вы упоминали , за исключением , из-за которых вы не можете легко увидеть приближающийся предел линии. Если вы :set ruler, вы включите отображение положения x, y в строке состояния, которое вы можете использовать, чтобы увидеть, в каком столбце вы находитесь.

Кроме того, я не уверен, что тебе сказать. Стыдно терять числовой столбец, складывать столбец и разбивать только потому, что вам нужно :set columns=80.

3 голосов
/ 28 сентября 2010

Что ж, глядя на столбцы: справки, на самом деле с ней не связываться.

В консоли это обычно определяется настройкой консоли (то есть определяется автоматически); в графическом интерфейсе он определяет (и определяется) ширину окон gvim.

Обычно вы просто позволяете консолям и оконным менеджерам выполнять свою работу, комментируя set columns

Я не уверен, что вы подразумеваете под "увидеть и предвидеть переполнение строки". Если вы хотите, чтобы EOL вставлялся примерно в столбец 80, используйте set textwidth или set wrapmargin; если вам просто нужна мягкая переноска (то есть строка переносится, но без фактического EOL), поиграйте с set linebreak и set showbreak.

2 голосов
/ 29 декабря 2012

это поле выходит из левого поля, но это хорошая маленькая карта для изменения размера вашего текущего разделения до 80 символов, если у вас есть номера строк:

" make window 80 + some for numbers wide  
noremap <Leader>w :let @w=float2nr(log10(line("$")))+82\|:vertical resize <c-r>w<cr> 
1 голос
/ 13 декабря 2010

Вы можете попробовать это, чтобы установить размер окна, чтобы разрешить 80 символов реального текста. Это все еще не работает с вертикальными расщеплениями все же.

let &co=80 + &foldcolumn + (&number || &relativenumber ? &numberwidth : 0)

Для этого требуется vim 7+, 7.3 для относительного номера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...