Как сделать vim красивым

Добавил пользователь Владимир З.
Обновлено: 18.09.2024

Черно-белый текст это скучно. Цвета приносят жизнь. Цвет не только выглядит красиво, но и помогает быстрее работать. Вы можете менять цвета, которые используются для отображения различных фрагментов текста. Вы также можете печатать текст теми цветами, которые видите на экране.

06.1 Как включить?

Всё волшебство начинается с одной простой команды:

В большинстве ситуаций этого должно быть достаточно для того, чтобы в вашем файле появилась цветовая подсветка синтаксиса. Vim автоматически определит тип файла и загрузит соответствующие правила подсветки. Комментарии станут синими, ключевые слова -- коричневыми, а строки красными. Просматривать файл становится легко и приятно. Спустя некоторое время вы начнете понимать, как сложно разбираться в простом черно-белом тексте!

Если вы всегда хотите использовать подсветку синтаксиса, то поместите команду ":syntax enable" в файл |vimrc|.

Если вы хотите, чтобы подсветка синтаксиса работала только с терминалами, которые поддерживают цвет, то вы можете поместить в файл |vimrc| следующий код:

Если же вы хотите, чтобы подсветка синтаксиса работала только в версии с графическим интерфейсом, то поместите команду "syntax enable" в файл |gvimrc|.

06.2 Неправильные или отсутствующие цвета

Возможно несколько причин, по которым вы можете не увидеть цвета на экране:

Vim будет использовать жирный, наклонный и подчёркнутый текст, но это будет выглядеть не самым лучшим образом. Возможно, вам стоит попытаться установить терминал с поддержкой цветов. Для Unix я рекомендую xterm из XFree86: |xfree-xterm|.

  • Ваш терминал способен отображать цвет, но Vim об этом не знает.

Убедитесь, что настройка переменной $TERM является правильной. Например, для использования цветного xterm:

или (в зависимости от используемой оболочки):

Имя терминала должно соответствовать используемому вами терминалу. Если при этом отображение цветов всё равно не работает, прочитаете |xterm-color|, где объясняется несколько способов заставить Vim показывать цвета (не только для xterm).

Vim не может знать обо всех существующих типах файлов, и подчас бывает почти невозможно определить какой язык используется в файле. Попробуйте ввести такую команду:

Если результатом окажется "filetype Синтаксис". Установить тип файла также можно при помощи |режимной_строки|, чтобы файл правильно определялся всякий раз, когда вы его редактируете. Например, в Makefile можно использовать такую строчку (её следует поместить около начала или конца файла)

Часто для определения типа файла используется расширение. См. также |новый_тип_файла|, где рассказывается о том, как подсказать Vim какой тип файла использовать.

  • Для этого типа файла отсутствуют правила подсветки синтаксиса.

Вы можете попытаться использовать похожий тип файла, установив его вручную, как показано выше. Если этого недостаточно, то можно написать собственные правила подсветки для файлов такого типа, см. |свой_файл_синтаксиса|.

Цвета также могут отображаться неправильно:

Vim пытается догадаться, какой цвет вы используете в качестве фона. Если это черный, или другой тёмный цвет, то он будет использовать для текста светлые цвета. Если же это белый, или другой светлый цвет, то Vim будет использовать для текста тёмные цвета. В том случае, если Vim угадает цвет фона неправильно, текст будет сложно читать. Для решения этой проблемы можно использовать опцию 'background'. Для тёмного фона:

Для светлого фона:

Убедитесь, что вы поместили эту команду _до_ команды ":syntax enable", иначе цвета будут уже установлены. После установки 'background' можно использовать команду ":syntax reset", чтобы Vim восстановил цвета по умолчанию.

06.3 Различные цвета

Если вас не устраивают цвета по умолчанию, то вы можете выбрать другую цветовую схему. В графическом интерфейсе для этого имеется меню Редактировать/Цветовая схема. Кроме того, можно ввести команду:

"evening" (вечер) это имя цветовой схемы. Вместе с Vim поставляется несколько цветовых схем, которые можно попробовать. Загляните в каталог $VIMRUNTIME/colors.

Если вам понравится какая-нибудь схема, то не забудьте добавить соответствующую команду ":colorscheme" в файл |vimrc|.

Кроме того, вы можете написать собственную цветовую схему. Вот как это делается:

1. Выберите подходящую цветовую схему, которая напоминает то, что вам нужно. Скопируйте её в ваш собственный каталог Vim. Например, на Unix:

Это нужно делать из Vim, поскольку только Vim знает значение $VIMRUNTIME.

2. Отредактируйте файл цветовой схемы. Вот полезные переменные:

term возможные свойства ч/б терминала
cterm возможные свойства цветного терминала
ctermfg цвет текста в цветном терминале
ctermbg цвет фона в цветном терминале
gui возможные свойства для графического интерфейса
guifg цвет текста в графическом интерфейсе
guibg цвет фона в графическом интерфейсе

Например, следующая строка в файле цветовой схемы делает комментарии зелёными:

Свойства, которые можно указывать для "cterm" и "gui" это "bold" и "underline" (жирный и подчеркнутый текст). Если вы хотите использовать оба значения, то пишите "bold,underline". Подробнее см. команду |:highlight|.

3. Скажите Vim всегда использовать вашу цветовую схему. Для этого поместите в |vimrc| строку >

Если вы хотите посмотреть, как выглядят часто употребляемые цветовые комбинации, то используйте команды

Вы увидите текст в различных цветовых комбинациях, из которых можно выбрать самые удобочитаемые и приятные.

06.4 С цветом или без цвета

Выделение цветом может требовать значительное количество ресурсов. Если вам покажется, что редактор работает слишком медленно, то можно на время отключить подсветку:

При редактировании следующего файла подсветка будет восстановлена.

Если вы хотите полностью выключить подсветку синтаксиса, то используйте команду

Это позволит полностью избавиться от подсветки синтаксиса и немедленно убрать её из всех буферов.

Если вы желаете, чтобы подсветка синтаксиса работала только для определённых файлов, то используйте ручную подсветку:

Эта команда разрешает подсветку синтаксиса, но не включает её немедленно при редактировании буфера. Вместо этого от вас потребуется дополнительно включить опцию 'syntax' для каждого буфера, где вы хотели бы видеть подсветку синтаксиса:

06.5 Цветная печать

В версии для MS-Windows текущий файл можно распечатать при помощи команды

Вы увидите привычный системный диалог печати, где сможете выбрать принтер и сделать необходимые настройки. Если у вас цветной принтер, то вывод на бумаге должен выглядеть примерно так же, как и то, что вы видите в самом Vim. Однако, если вы используете тёмный фон, то цвета будут скорректированы, чтобы быть удобочитаемыми на белой бумаге.

На процесс печати из Vim влияет несколько опций:

  • 'printdevice'
  • 'printheader'
  • 'printfont'
  • 'printoptions'

Чтобы напечатать только определённый диапазон строк, выделите требуемые строки в Визуальном режиме и наберите команду :hardcopy. Например:

"v" переводит редактор в Визуальный режим, "100j" выделяет 100 строк вниз от текущего положения курсора, ":hardcopy" отправляет выделенные строки на печать. Конечно, для перемещения в Визуальном режиме можно использовать и другие команды.

Если у вас есть PostScript принтер, то это так же будет работать и в Unix. В противном случае вам потребуется проделать немного дополнительной работы - преобразовать ваш текст в HTML и напечатать его из веб-браузера, например из Netscape.

Перевести текущий файл в HTML можно командой

Некоторое время Vim будет занят преобразованиями, а затем вы увидите новое окно с кодом HTML. Сохраните этот документ в файл, например:

Теперь откройте этот файл в своём любимом браузере и напечатайте оттуда. Если всё прошло успешно, то бумажная копия должна выглядеть так же, как и в самом редакторе. Подробности см. в |2html.vim|. Не забудьте удалить файл HTML, когда он больше не будет нужен.

Вместо печати файл HTML можно поместить на веб-сервер, чтобы другие могли смотреть на цветной текст.

06.6 Дальнейшее чтение по теме

|usr_44.txt| Ваши собственные настройки синтаксических правил.
|синтаксис| Подробности о правилах синтаксиса.

достаточно ли просто скопипастить это в конкретную папку, а затем подключить :colorscheme themename? При таком подходе дефолтовые темы у меня отображаются верно, но кастомные отображаются абсолютно не так, например конкретно та что выше, представляет из себя полностью белый текст

Странная она какая-то. Поместил эту канитель в ~/.vim/colors/Iceberg.vim :colorscheme Iceberg (причём автодополнение до Icberg работает). Но схема не понравилась (не говоря уж про то, что в текстовом режиме её вообще не видать, только в gui).

2 ответа 2

Во-первых, да, достаточно положить тему в папку. Обычно это .vim/colors/ и потом прописать, например, color wombat256 .

Во-вторых, самое главное - нормальные темы для своей работы требуют 256-колор режим, без него вы не сможете насладиться темой в полной мере.

Чтобы включить 256-й режим, надо прописать в .vimrc :

И не забыть после этого перезапустить vim.


При запуске Вима в терминалах вроде Gnome Terminal, Konsole следует использовать :colorsheme default и настраивать цветовую схему при помощи средств самого терминала (настройки профиля - цвета). Все остальные темы в терминале чаще всего отображаются некорректно.

А за интересную ссылку на множество тем для Вима очень большое спасибо :)

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

Похожие

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2022 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2022.1.21.41235

Текстовый редактор Vim не является исключением и поддерживает весь необходимый функционал для изменения, редактирования и создания цветовых схем. Для данного редактора на просторах Интернета доступны множество уже готовых цветовых схем которые Вы можете скачать и использовать. Если же существующие схемы Вас чем то не устраивают Вы можете либо создать свою уникальную схему с нуля либо отредактировать существующую схему под Ваши нужды. В данной статье мы рассмотрим как использовать уже готовые цветовые схемы.

При установке Vim в Вашем распоряжении уже есть некоторое количество предустановленных цветовых схем которые Вы можете использовать произведя минимальные настройки в конфигурационном файле Vim. Список существующих цветовых схем Вы можете посмотреть в каталоге :

FreeBSD

Linux

Где vim_version установленная версия Vim. Обычно в данном каталоге присутствуют следующие файлы :

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

:colorscheme scheme_name

Где scheme_name имя файла схемы без расширения .vim, например desert,blue и т.д.

Чтобы посмотреть текущую схему, выполните команду :

в командном режиме Vim.

Выбирая ту или иную темы Вы увидите как у Вас изменяется расцветка текста набранного в редакторе. Следует обратить внимание, что выбранная Вами схема будет действовать только в течении текущего сеанса редактирования. Чтобы данные настройки действовали всегда, Вам нужно добавить соответствующие записи:

colorscheme scheme_name

в конфигурационный файл Vim. Конфигурационный файл называется .vimrc и находится в директории ~/. Если по указанному пути данного файла нет, Вам его нужно будет создать.

Я только начинаю переключать Textmate на Vim. Я люблю это, но это так ужасно.

Я использую Mac OS X Lion и мне нужна поддержка Ruby, поэтому я использую Vim 7.3, установленный через Homebrew, а не с Vim Lion, который поставляется вместе с.

Я новичок в Vim, так что, возможно, что-то глупо мне не хватает - я обновился до Lion специально, потому что терминал мог обрабатывать цвета, но что-то все еще не работает.

С Vim я становлюсь все лучше и лучше, и мне это очень нравится, но на днях я открыл Textmate, чтобы выполнить поиск по всему проекту, и, конечно же, меня поразила красота, прежде чем я поймал себя на том, что печатаю:wq

Буду очень признателен за ваши советы по красоте Vim - спасибо!

4 ответа 4

Старые версии Terminal.app поддерживали только 16 цветов, и вы правы, что Lion Terminal.app должен поддерживать 256 цветов. Но он не использует CLI Vim, он использует MacVim. Это имеет огромное значение для фронта цветовой схемы, поскольку CLI Vim не поддерживает все оттенки цветов, которые можно использовать в цветовой схеме для GUI Vim. Если вы хотите "красивый" Vim, как его, убедитесь, что вы используете MacVim.

Этот пакет "Vimlander2" имеет около 20 colors (в цветах ). В MacVim, находясь в режиме NORMAL , введите :color (с пробелом после color ), затем нажмите чтобы отобразить список всех схем цветов, доступных в вашей системе. Если ваш пакет установлен правильно (например, у вас есть ~/.vim/colors/[20 or so files] ), у вас будет большой выбор. Как только вы будете удовлетворены, добавьте такую строку в ваш ~/.vimrc :

Я думаю, что шрифтом MacVim по умолчанию является Monaco. Если вам это не нравится, вы можете изменить его в меню "Редактировать", но ваш выбор не останется неизменным. Используйте его, чтобы попробовать все активные моноширинные шрифты на вашем Mac. Как только вы будете удовлетворены, добавьте такую строку в ваш ~/.vimrc :

Смотрите :help guifont для получения дополнительной информации.

Зачем вам нужна поддержка Ruby? Вам нужен был конкретный плагин, написанный на Ruby?

Вы не знаете, как часто я нажимаю o чтобы открыть пустую строку под текущей в других приложениях.

" aria-label https://gist.github.com/novusnota/65dcc593df6d9909ffb59eb83fe69a28.js"> " readonly>

Простая конфигурация, конфиг Vim для тех, у кого русско-английская клавиатура. Для русских, короче (duh). Минималистичная, минимум плагинов, но с развёрнутым описанием каждой функции, настройки и команды.

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

Читайте также: