Доступ к значениям настроек vim в регулярном выражении

Привет, я использую настройку vim, чтобы выделить столбцы за столбцом 80. Эта жестко заданная настройка достаточно хороша для программирования, где я предпочитаю сохранять ее в 79 столбцах. Однако для LaTeX, plain txt, RST, где я использую разные значения tw, он не работает по очевидным причинам. Можно ли как-то использовать значение параметра textwidth внутри этого регулярного выражения? Или, если нет, как я могу подойти к этой проблеме?

hi OverLength ctermbg=darkred ctermfg=white guibg=#592929
match OverLength /\%81v.\+/

vim
person Darek    schedule 11.02.2013    source источник
comment
да, я думаю, это обман   -  person Darek    schedule 11.02.2013
comment
Для меня это звучит как проблема XY. Вы можете найти ответы на свой вопрос в теле сообщения здесь.   -  person glts    schedule 11.02.2013
comment
Вы также можете использовать ftplugin и установить разрешение только для определенного набора файлов.   -  person Micha Wiedenmann    schedule 11.02.2013
comment
@romainl Я знаю cc, но предпочитаю это решение   -  person Darek    schedule 12.02.2013


Ответы (1)


Почему бы не просто установить предел, почему бы не иметь функцию с привязкой, которая выделяла бы символы за n столбцами?

nnoremap <leader>h :call ToggleOverLengthHighlight()<CR>
let g:overlength_enabled = 0
highlight OverLength ctermbg=black guibg=#212121

function! ToggleOverLengthHighlight()
    if g:overlength_enabled == 0
        match OverLength /\%79v.*/
        let g:overlength_enabled = 1
        echo 'OverLength highlighting turned on'
    else
        match
        let g:overlength_enabled = 0
        echo 'OverLength highlighting turned off'
    endif
endfunction

введите описание изображения здесь

person timss    schedule 20.04.2013
comment
в нашем примере у вас также есть жестко запрограммированные 79 столбцов - person Darek; 22.04.2013
comment
@ Dārayavahuštdi Эх, жестко запрограммированный - не совсем подходящий термин. Обновил свой ответ. Я по-прежнему считаю, что это достойное решение этой проблемы, поскольку вам не придется постоянно заниматься определенными типами файлов. - person timss; 22.04.2013