Обзор
В моей предыдущей статье Лигатурные шрифты для терминала, VS Code, Neovim и Emacs я показал вам, как настраивать шрифты с лигатурами. В этой статье я покажу вам, как настроить Vim / Neovim для использования символов Unicode для отображения символов программирования.
Диграфы
В Vim / Neovim орграфы используются для ввода символов, которые обычно не могут быть введены с помощью обычной клавиатуры. В основном это печатаемые символы, отличные от ASCII. Орграфы запомнить легче, чем десятичное число, которое можно ввести с помощью CTRL-V
.
Введите :digraphs
, и вы увидите список определенных орграфов.
Например. чтобы ввести символ авторского права, в режиме вставки введите Control-K
, а затем Co
(заглавная C и строчная буква o).
Для пользователей Visual Studio Code, если вы устанавливаете расширение vscodevim или vscode-neovim, вы также можете использовать функцию орграфа.
Точно так же для Emacs, если вы установили emacs-evil, тогда вам будет доступна функция орграфа.
Кодовые шрифты с использованием диграфов и маскировки
Vim / Neovim связывает каждый файл, который вы открыли, с определенным синтаксисом. Например. откройте файл Python и введите :set syntax?
, и вы увидите syntax=Python
. (Примечание: убедитесь, что у вас есть syntax enable
в вашем .vimrc
или init.vim
)
Сделайте :verbose set ft?
, и вы увидите тип и расположение файла filetype.vim, который сообщает вам список поддерживаемых типов файлов.
Vim чрезвычайно гибок и позволяет нам определять цвета, компиляторы, сопоставления клавиш и многое другое. В этом случае я также могу определить свой собственный файл синтаксиса. Введите:h mysyntaxfile-add
, и он расскажет вам, как создавать файлы пользовательского синтаксиса в after/syntax
папке из runtimepath
.
Объединив это с функцией conceal
, теперь я могу использовать Vimscript для отображения символов программирования в символах Unicode.
Ниже приведен пример для Rust. Я создаю файл с именем rust.vim
в папке after/syntax
.
И теперь, если я открываю файл Rust, я вижу, что символы Unicode отображаются на основе файла синтаксиса, который я определил.
Используя этот метод, вы можете легко применить его к любым языкам. Вот еще один пример для Python.
Также ознакомьтесь со следующими статьями
Если вы еще не являетесь участником Medium и хотите им стать, нажмите здесь. (Часть вашей абонентской платы будет использована для поддержки alpha2phi.)