Обзор клавиш sim

Обзор клавиш по документации продукта. Здесь только клавиши, которые документация перечисляет как реализованные. Полный список — собственная таблица клавиш продукта, `sim/keys.tsv`.

Запуск

КлавишиЧто они делают
simsim dirОткрыть дерево текущего каталога или каталога dir.
sim filesim file:42Открыть файл (при закрытом дереве), при желании — на нужной строке.
sim +/re fileОткрыть файл и сначала найти шаблон.

Сохранение и выход

КлавишиЧто они делают
Ctrl-sСохранить, в любом режиме.
ZZ:x:wqСохранить, если есть изменения, и выйти.
q:qЗакрыть текущий файл; закрытие последнего завершает работу.
ZQ:q!Закрыть без сохранения.
:w!Сохранить даже поверх файла только для чтения или оставить вашу версию поверх изменения на диске.
:wa:qa:qa!Сохранить всё, выйти из всего, выйти из всего с отбрасыванием изменений.
:cqВыйти с кодом 1 (прерывает git commit).

Дерево файлов

КлавишиЧто они делают
Ctrl-nОткрыть дерево и перевести на него фокус или закрыть, если оно в фокусе.
jkПеремещение вниз и вверх.
lEnterРаскрыть каталог или открыть файл.
h-Свернуть каталог (или перейти к родительскому); - сворачивает всё.
/Искать по всем файлам под корнем по мере ввода.
.Сузить дерево до изменённых, открытых и недавних файлов; повторное нажатие снова показывает всё.
EscqВернуть фокус тексту; q закрывает дерево.

Поиск файлов и текста

КлавишиЧто они делают
Ctrl-pНаходить файлы нечётким поиском, откуда угодно.
Ctrl-fИскать по содержимому всех файлов по мере ввода, откуда угодно.
Ctrl-nCtrl-p↓↑Перемещение выделения.
EnterОткрыть выбранный результат.
EscЗакрыть окно; всё остаётся как было.

Несколько файлов

КлавишиЧто они делают
TabShift-TabСледующий и предыдущий открытый файл.
:e file:e!Открыть другой файл; перечитать этот.

Грамматика vi

КлавишиЧто они делают
h j k lw b e0 ^ $gg Gf F t T ; ,%Ctrl-d Ctrl-uПеремещения, со счётчиками.
x r J p PuCtrl-r.i a I A o Odd cc yy D C Y>> <<Правка, повтор и отмена.
d c y > <iw aw i" a( i{ …Операторы, сочетаемые с перемещением или текстовым объектом.
vVoВизуальный режим: символы, строки, смена концов выделения.
/?n N* #:nohИнкрементальный поиск со smartcase и снятие его подсветки.
:{N}:%s/re/rep/g:{range}Переход к строке, подстановка и диапазоны (%, ., $, '<,'>).
YUГде sim отходит от vi: Y копирует до конца строки, U повторяет отменённое.
"ayw"ap:registersРегистры: поставьте имя перед командой ("ayw копирует в a, "ap вставляет); "A дописывает, "0 — последний yank, "1 — "9 — последние удаления, "+ пишет в системный буфер обмена. :registers перечисляет их.
ma'a`a'':marksМетки: ma ставит метку, 'a переходит на её строку, клавиша с обратным апострофом — на её точное место, '' возвращает туда, где вы были до последнего перехода; :marks перечисляет их.

Оформление

КлавишиЧто они делают
zlПереключение оформлений по кругу: calm, flat, depth.
zhЦвета синтаксиса: включить и выключить.
ziЗначки: включить и выключить.
<Space>umВключает и выключает режим чтения Markdown. Строка, на которой стоит курсор, всегда показывается как текст самого файла.

git

КлавишиЧто они делают
<Space>geДерево только с файлами, которые отличаются от HEAD; Enter открывает версию из HEAD только для чтения, а повторное <Space>ge (или q) возвращает назад.
<Space>giЕщё раз сообщает, что защита сделала с этим репозиторием: почему git не запускался или какие настройки были отключены.

Мышь

КлавишиЧто они делают
clickwheeldragЩелчок открывает файл или ставит курсор, колесо прокручивает, перетаскивание выделяет.

Изменения извне

КлавишиЧто они делают
]c[cПерейти к следующему или предыдущему изменению извне.
:seenСнять отметки изменений.

Флаги и окружение

КлавишиЧто они делают
sim --plainОдно лишь ядро: оформление calm, один файл, без панели, без внешних программ. По умолчанию от root и в роли редактора sudoedit.
sim --versionsim --helpВыводит справку по использованию и переменные окружения, которые читает sim, или версию и завершается.
NO_COLORСовсем без цвета, в том числе на терминалах менее чем с 8 цветами: жирность, подчёркивание и инверсия говорят то, что говорил цвет.
SIM_ON_NORMALКоманда, которая запускается каждый раз, когда вы возвращаетесь в нормальный режим, например чтобы выключить IME. SI_ON_NORMAL, прежнее имя, по-прежнему работает.

Подсказки по клавишам

КлавишиЧто они делают
<Space>Клавиша-лидер. Пауза на Space (или на g, z, [, ], операторе) открывает небольшое окно, в котором перечислены клавиши, которые могут идти дальше.
F1:helpСписок всех клавиш и команд с поиском и с описанием того, что делает каждая. :help tab находит Tab, Shift-Tab и <Space>bp.
<Space>bpСтавит букву на каждую вкладку; нажатие буквы переходит к её файлу.
<Space>bcВыбор вкладки по букве, чтобы закрыть её. Изменённый файл остаётся открытым.
:tutorОколо пятнадцати минут уроков в черновом буфере, на вашем языке; ничего не записывается.
sim показывает notes/store.py. Ближе к низу маленькое окно с заголовком <Space>b перечисляет три клавиши: p — выбрать вкладку по букве; c — выбрать вкладку для закрытия; и k — куда делась другая версия.
which-key: Space, затем b, затем пауза в 200 мс — и небольшое окно перечисляет клавиши, которые могут идти дальше. Если продолжать набирать клавиши, всё работает точно так же, как без окна, а Esc закрывает его.
sim показывает окно Help · keys and commands поверх дерева файлов проекта и файла Python; в строке ввода набрано tab. Совпадают шесть строк: <Tab>, <S-Tab>, <Tab> в режиме вставки, <Space>bp, <Space>bc и T{char}. Предпросмотр объясняет <Tab> — следующий файл.
:help tab: все клавиши и команды в одном списке с поиском, созданном из той же таблицы клавиш, которую читает which-key. Предпросмотр говорит, что делает выбранная клавиша. Enter и Esc закрывают окно и ничего не запускают.

Полный список

Полный список — это собственная таблица клавиш продукта, sim/keys.tsv. :help, F1 и which-key редактора читают её, его тесты сверяют её с тем, что делают клавиши, а приведённые выше описания клавиш сверяются с ней, поэтому ни одно из них не может разойтись с редактором. :tutor есть в дорожной карте.