org mode 怎么 narrow to sublist?

如图, 这是我的一个 list 的部分, 我怎么 narrow to 这个 list, 也就是显示 item 本身和它的子 items?

试试

(defun org-narrow-to-list ()
  (interactive)
  (save-excursion
    (narrow-to-region
	 (progn (org-beginning-of-item-list) (point))
	 (progn (org-end-of-item-list) (point)))))

Claude的回答:

在 Emacs 的 Org mode 中,可以使用 narrowed to subtree 特性来聚焦在某个子列表上。要激活这个功能,可以:

  1. 将光标置于要聚焦的子列表上

  2. 按下 C-x n s 或者 C-x n n 键这会将视图缩小到该子列表。你会看到标题栏显示 Narrowed to subtree。

现在,你只能看到和编辑这个子列表及其子元素。要退出 narrowed view,按下 C-x n w 键。

例如,如果你有这样一个列表:

* Heading 1 
** Subheading A
*** Sub-subheading 1
*** Sub-subheading 2
** Subheading B
* Heading 2

将光标置于 Subheading A 上,按下 C-x n s 会得到:

** Subheading A  
*** Sub-subheading 1
*** Sub-subheading 2

只显示 Subheading A 及其子元素

这是一个很有用的功能,可以让你专注在某一部分,而不被其他部分分散注意力。

希望这个解释有帮助!如果你有其他 Org mode 的问题,随时问我。

谢谢, 我没说清楚, 我想说的是:

- a
  - b

这样的 list, 不是 heading tree.

org-beginning(end)-of-item 比较好。

(defun org-narrow-to-item ()
  "Narrow buffer to the current item.

Throw an error when not in a list."
  (interactive)
  (save-excursion
    (narrow-to-region
	 (progn (org-beginning-of-item) (point))
	 (progn (org-end-of-item) (1- (point))))))