При сохранении файлов это мои настройки по умолчанию в TextMate (Mac OS X):

Кодировка файла: UTF8 (рекомендуется) Окончание строки: LF (рекомендуется)

Как настроить VIM для сохранения файлов с той же кодировкой и окончаниями строк, что и в TextMate? Буду благодарен за любое предложение. Спасибо!

2 ответа2

5
" Stick with the UTF-8 encoding.
if has('multi_byte')
  " Encoding used for the terminal.
  if empty(&termencoding)
    let &termencoding = &encoding
  endif

  " Encoding used in buffers, registers, strings in expressions, "viminfo"
  " file, etc.
  set encoding=utf-8

  " Encoding used for writing files.
  setglobal fileencoding=utf-8
endif

" Use both Unix and DOS file formats, but favor the Unix one for new files.
set fileformats=unix,dos

ПРИМЕЧАНИЕ . Достоинство последней строки в том, что оба формата правильно отображаются в буфере Vim. Например, если вы удалите dos из fileformats , то все файлы dos которые вы теперь будете открывать в Vim, будут загромождены символами ^M конце строки. Это ^M есть не что иное, а \r , которые Vim, в этом случае, будет не в состоянии интерпретировать правильно. Поэтому настоятельно рекомендуется сохранять fileformats как показано выше. Не волнуйтесь, все новые файлы, которые вы создаете, будут использовать формат unix по умолчанию (как указано в комментарии выше).

Если вы столкнулись с каким-то файлом с форматом dos и хотите конвертировать его в unix , введите:

:set ff=unix
0

Окончания строк определяются 'fileformat' (фактически используется) и 'fileformats' (что обнаруживается). Если там есть unix , у вас все хорошо; который представляет <LF> . Вы можете использовать :help по любому из них, чтобы узнать больше.

Ваше 'encoding' должно быть установлено в utf-8 , и это значение должно также появиться в 'fileencodings' (это делает по умолчанию).

Вы можете проверить настройки с помощью (обратите внимание на хвост ? после названия опции):

:set encoding?

Чтобы сделать постоянные изменения, поместите команды :set ... в ваш ~/.vimrc .

Обратите внимание, что вы также всегда можете переопределить настройки, например,

:edit ++ff=unix ++enc=utf-8 myfile

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .