Как наиболее эффективно перейти к началу или концу основного текста заголовка организации?

9

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

Предположим, теперь я нахожусь в начале заголовка и хочу добавить основной текст сразу после ключевого слова TODO. Тогда M-f Spaceдоставит меня туда, куда я хочу пойти. Если нет ключевого слова TODO, то это так M-f M-b.

Если я хочу добраться до конца текста заголовка, это сложнее. Если в конце нет ключевых слов, а под заголовком нет скрытого текста, это так же просто, как C-e. Но это редко так. Если есть сложенный текст, но нет ключевых слов, то я могу сделать C-e M-b. Но если это ключевое слово или два в конце сложенного заголовка, то я считаю себя печатая (ужас) C-e M-b M-b M-b M-f! И если есть более двух ключевых слов, это становится хуже.

Когда я прыгаю и редактирую много заголовков один за другим, об этом можно много думать, и это действительно портит весь мой поток. В идеале я бы хотел переопределить sи в eкачестве быстрых клавиш, чтобы получить именно то, что я хочу, во всех этих случаях.

Кто-нибудь видел существующее решение этой проблемы? Мои навыки elisp минимальны, и было бы сложно решить это самостоятельно.

Брайан З
источник
2
Если заголовок представляет собой одно предложение (я думаю, что в большинстве случаев это будет правдой), вы можете M-e(т.е. перейти к концу предложения).
wvxvw

Ответы:

9

Решение

Вам нужно установить org-special-ctrl-a/eпеременную на t.


Документация

Non-nil means `C-a' and `C-e' behave specially in headlines and items.

When t, `C-a' will bring back the cursor to the beginning of the
headline text, i.e. after the stars and after a possible TODO
keyword.  In an item, this will be the position after bullet and
check-box, if any.  When the cursor is already at that position,
another `C-a' will bring it to the beginning of the line.

`C-e' will jump to the end of the headline, ignoring the presence
of tags in the headline.  A second `C-e' will then jump to the
true end of the line, after any tags.  This also means that, when
this variable is non-nil, `C-e' also will never jump beyond the
end of the heading of a folded section, i.e. not after the
ellipses.

When set to the symbol `reversed', the first `C-a' or `C-e' works
normally, going to the true line boundary first.  Only a directly
following, identical keypress will bring the cursor to the
special positions.

This may also be a cons cell where the behavior for `C-a' and
`C-e' is set separately.

пример

Ниже оценивается,

(setq org-special-ctrl-a/e t)

(1) Исходное состояние (▮ представляет точку)

* TODO ab▮c                                                        :test:

(2) после первого C-a

* TODO ▮abc                                                        :test:

(3) после второго C-a

▮* TODO abc                                                        :test:

(4) После первого C-e

* TODO abc▮                                                        :test:

(5) после второго C-e

* TODO abc                                                        :test:▮

Связанный: Развернуть поддерево режима org с точкой после многоточия?

Каушал Моди
источник