как установить уровни заголовка контурного второстепенного режима в outline-regexp

684
godblessfq

Я пытаюсь добавить пользовательский заголовок в программный режим и хочу, чтобы он был на самом высоком уровне и переместил все остальные уровни вниз, чтобы я мог добавить больше структуры в свой длинный скрипт. Например, для режима Python заголовок имеет формат «# *», число звездочек определяет его уровень. Мой подход состоит в том, чтобы изменить переменную outline-regexp, добавив такой хук.

(defun my_heading() "custom heading for all prog mode" (setq outline-regexp (concat "\\(?:" comment-start " [*]\\\\)?" outline-regexp))) (add-hook 'outline-minor-mode-hook 'my_heading) 

В идеале, чем меньше совпадение, тем выше уровень заголовка. Но вышесказанное не работает. Если я заменю его следующим, он тоже не будет работать.

(setq outline-regexp (concat comment-start " [*]\\\\|" outline-regexp))) 

Значение исходного outline-regexp для режима Python:

"[[:space:]]*\\_<\\(?:\\(?:class\\|def\\|e\\(?:l\\(?:if\\|se\\)\\|xcept\\)\\|f\\(?:inally\\|or\\)\\|if\\|try\\|w\\(?:hile\\|ith\\)\\)\\)\\_>" 

Может ли кто-нибудь сказать мне, как я могу достичь своей цели? Заранее спасибо.

2

0 ответов на вопрос

Похожие вопросы