Определение связывания клавиш Emacs Lisp в файле инициализации - PullRequest
1 голос
/ 08 октября 2010

В моем файле инициализации Emacs есть следующая строка.

(global-set-key (kbd "C-x a r") 'align-regexp)

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

Ответы [ 2 ]

3 голосов
/ 08 октября 2010

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

(defun align-specific-regexp (beg end)
  "Call 'align-regexp with the regexp ..."
  (interactive "r")
  (align-regexp beg end "^some.*regexp\\(here\\)?"))
1 голос
/ 08 октября 2010

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

(fset 'my-align-regexp
   [?\M-x ?a ?l ?i ?g ?n ?- ?r ?e ?g ?e ?x ?p return ?f ?o ?o return])

(global-set-key (kbd "C-x a r") 'my-align-regexp)

Создайте макрос клавиатуры с помощью M-x align-regexp, затем введите свое регулярное выражение.

Затем вставьте макрос в ваш файл .emacs с помощью M-x insert-kbd-macro return return

...