Emacs cheat sheet
Мой маленький конспект для C-h r
Движение курсора
M-g M-g (M-g g)
перейти к заданой строчке (по умолчанию взять число около курсора)C-u M-g M-g (M-g g)
перейти к заданой строчке в соседнем окнеM-r
двигает курсор не меняя скрол (vim: H M L)C-u C-SPC
передвижение по кольцу меток(mark ring)C-x C-SPC
передвижение по глобальному кольцу метокC-M l
умный скроллинг (показать заголовок функции)M-x follow-mode
двух-страничный скролл
Минибуффер
C-x ESC ESC
повторить предыдущую команду
Поиск
С-[sr] DEL
поиск; С-[sr]: след. вхождение; DEL - предыдущееС-M-[sr]
regexp поискM-r
toggle regexp searchM-c
toggle case sensitiveM-e
редактировать текущий шаблон поискаC-w
добавить слово под курсором к поискуM-s C-e
добавить к поиску остаток строкиC-M-y
добавить символ под курсором к поискуC-M-w
удалить символM-s w
поиск словM-x occur / M-s o
вывести список найденых строк [e - редактировать не месте]M-s w
Инкрементный поиск по списку слов (игнорирует разделяющую пунктуацию)M-x multi-occur-in-matching-buffers
occur по буфферам подходящем по regexpM-x how-many
печатает сколько найдено выражений по regexp'уM-x flush-lines
удаляет строки по регуляркеM-x keep-lines
удаляет все строки кроме регулярки
Замена
M-%
заменаC-M-%
regexp заменаM-x replace-regexp RET pattern RET repl\?ace
замена по регэкспу с запросом ввода вместо \?
Универсальное
C-x z [z +]
повторить предыдущее действиеM-x hi-lock-mode
режим кастомной подсветки:C-x w h
Подсветить регуляркуC-x w r
Разподсветить регулярку
Minor modes
Mx whitespace-mode
отображение пробельных символов
Редактирование
C-o
вставить пустую строку после курсораC-x C-o
удалить пустые строки, оствляя только однуC-q
вставить непечатный символ или символ по восьмеричному кодуC-x 8
вставить символ юникода по имени или по кодуC-M-\
indent regionM-$
проверить орфографиюM-\
удалить все пробелы около точкиM-SPC
удалить все пробелы кроме одного около точкиС-S-BACKSPACE
удалить всю строкуM-z CHAR
удалить до символаC-M-w + kill command CHAR
добавить к предыдущему скопированному объектуC-x RET + x
задать кодировку для X clipboardM-x check-parens
найти несбалансированные скобкиC-t
обменять местами символыM-t
обменять местами словаС-M-t
обменять местами выраженияС-x C-t
обменять местами строкиM-- M-l
предыдущее слово в нижний регистрM-- M-u
предыдущее слово в верний регистрM-- M-c
предыдущее слово сделать с большой буквы
Регистры
C-x r SPC
point-to-registerC-x w SPC
window-configuration-to-registerC-x f SPC
frame-configuration-to-registerC-x r h
jump-to-register (alsi restore frames configuration)C-x s SPC
copy-to-registerC-x i SPC
insert-register
Информация
M-=
показывает количество строк и символов в регионеC-x =
показывает информацию по символу под курсоромM-@ (S-M-2)
выделить слово не двигая курсорС-M-@ (C-M-SPC)
выделить sexp не двигая курсорM-h
курсор в начала параграфа и выделить егоC-M-h
курсор в начала defun и выделить ееC-x h
выделить весь буфер
Управление буферами
C-x k
Убить буферC-x 4 C-o
Переключить буфер в соседнем окне, оставив фокус на текущемM-x ibuffer
навороченная переключалкаM-x buf-move-{up,down,left,right}
передвинуть окно (buffer-move.el)M-x winner-mode
История окон C-c left/right undo/redo
Программирование
M-x imenu
переход к определению символаM-x whitespace-mode
отображает табы и пробелыM-;
comment-dwim: do what i mean
Справка
C-h w COMMAND
показать биндинги для команды
Файлы
C-x RET r
переоткрыть файл у другой кодировкеC-x С-v
Убить текущий буффер и открыть вместо него новый файл (полезно если случайно открыли не тот файл)C-x 4 f
Открыть файл во втором окне, создав его если нужноM-x auto-revert-{tail}-mode
Автоматически обновлять файл с диска при измененияхM-x file-cache-add-directory-using-find
Добавить директорию в кеш файлов. Автодополнение по C-Tab при открытии.
Настройки
M-x load-file
загрузить и выполнить lisp-файл