Команда XEmacs для перехода к соответствующей скобке в режиме cc - PullRequest
1 голос
/ 20 января 2010

Есть ли встроенная или сторонняя команда elisp для перехода на соответствующую фигурную скобку в режиме cc-mode?

В настоящее время я использую (paren-set-mode 'paren t), чтобы XEmacs выделил соответствующую фигурную скобку или скобку, но когда фигурная скобка отключена от экрана в фрагменте кода с вложенными блоками if, было бы очень полезно иметь команду для перехода к соответствующей скобке.

Что-то похожее на M-C-f и M-C-b, но для {}, а не ().

Ответы [ 2 ]

3 голосов
/ 20 января 2010

C-M-f и C-M-b должны работать и для { и }.

2 голосов
/ 31 мая 2012

У меня установлен big-menubar.el в XEmacs 21.5. Он добавляет пункт меню «Движение», и в этом меню отображаются следующие две команды с указанными клавишами:

Конец сбалансированной скобки C-M-n

Начало сбалансированной скобки C-M-p

Я думаю о них как о Control-Meta-next и previous.

У них также есть некоторые другие команды перехода, которые могут вас заинтересовать, Вот небольшой фрагмент из big-menubar.el, показывающий команды, которые они выполняют (которые вы можете назначать любым клавишам, которые вам нравятся, когда вы знаете, какие команды ...):

(add-submenu
 nil
 '("Motion"
   ["Goto Mark"                  exchange-point-and-mark (mark t)]
   ["Goto Line..."                          goto-line           t]
   "---"
   ["End of Balanced Parentheses ( )"       forward-list        t]
   ["Beginning of Balanced Parentheses ( )" backward-list       t]
   ["Next Opening Parenthesis ("            down-list           t]
   ["Previous Opening Parenthesis ("        backward-up-list    t]
   ["Next Closing Parenthesis )"            up-list             t]
   "---"
   ["End of Balanced Expression"            forward-sexp        t]
   ["Beginning of Balanced Expression"      backward-sexp       t]
   "---"
   ["End of Function"                       end-of-defun        t]
   ["Beginning of Function"                 beginning-of-defun  t]
   "---"
   ["Next Page"                             forward-page        t]
   ["Previous Page"                         backward-page       t]
   "---"
   ["End of Buffer"                         end-of-buffer       t]
   ["Beginning of Buffer"                   beginning-of-buffer t]
   "---"
   ["Save Current Position..."              point-to-register   t]
   ["Goto Saved Position..."                register-to-point   t]
   "---"
   ["Set Marker..."                         set-user-marker     t]
   ["Goto Marker..."                        goto-user-marker    t]
   ["List Markers"                          list-markers        t]
   "---"
   ["Set Goal Column"                       set-goal-column     t]
   ["Cancel Goal Column"          (set-goal-column t) goal-column]))
...