vim, dns и ruby

Mar 23, 2018 18:01

есть на dns сервере несолько файлов по 2000 строк. немного. на vim при их открытии начинает жутко тормозить.

профилирование показало, что

FUNCTIONS SORTED ON TOTAL TIME
count total (s) self (s) function
1 125.875976 0.000577 GetRubyIndent()
627 125.748825 25_IsInStringOrComment()
210 125.271957 0.014440 25_PrevNonBlankNonString()
1 125.225812 0.027860 25_GetMSL()
1266 0.575471 0.084163 25_Match()
9 0.001092 15_Highlight_Matching_Pair()
1 0.000091 25_IsInString()
1 0.000020 25_IsInStringOrDocumentation()

можно просто выключить подсветку синтаксиса syntax off, а можно сделать setfiletype dns - и все заработает.
к сожалению, рецепты для ускорения обработки руби не сработали.

и да, у вима еще есть команда set filetype которая может показать, что вим наопределял (если запустить ее без параметров). ну или так же со знаком равно для установки типа файла. но в отличии от setfiletype уже не будет автодополнения при установке параметра

для "автоматической" установки типа файла по директории в .vimrc можно добавить
:autocmd BufRead,BufNewFile */namedb/* set filetype=dns
(а вот setfiletype уже не пройдет)

для понимания, что же занимает время при работе вима, необходимо выполнить следующее
:profile start profile.log
:profile func *
:profile file *
" At this point do slow actions
:profile pause
:noautocmd qall!

для правильного определения кодировок можно дополнить файл настроек следующим set fileencodings=utf-8,koi8-r

ruby, unix, vim, dns

Previous post
Up