我需要使用哪个变量或函数来set-mark-command
C-SPC
使用goto-char
跳转到标记集的位置?
(defun jump-to-mark ()
(interactive)
(goto-char <WHAT PUT HERE>))
答案 0 :(得分:8)
exchange-point-and-mark
命令(绑定到 Cx Cx )跳转到标记,并放置当前位置(即在跳跃之前)在标记环的顶部。
副作用是该区域被激活。您可以传递前缀参数(即按 C-u C-x C-x )以避免这种情况。
正如其他答案中所提到的,在标记环中导航的另一种方法是使用 Cu C-SPC ,它跳转到标记并将其从标记中移除环。因此,重复该命令使您以反向时间顺序浏览所有连续标记位置。但是,以这种方式访问的标记位置将丢失。
Cu C-SPC 的兄弟是 Cx C-SPC ,这是非常相似但行为在全局标记环上,它在所有缓冲区中存储连续标记 。
答案 1 :(得分:3)
我刚发现它是mark-marker
所以我的跳跃功能应该是:
(defun jump-to-mark ()
(interactive)
(goto-char (mark-marker)))
答案 2 :(得分:3)
我认为你在寻找的是
pop-global-mark是一个交互式编译的Lisp函数 `simple.el”。
它与C-x C- @,C-x C-SPC结合。
(弹出全局标记)
弹出全局标记环并跳转到顶部位置。
另一个选项是C-x C-x,它运行命令exchange-point-and-mark
。
答案 3 :(得分:2)
要与原始代码保持一致,您只需将(mark)
放在此处,而不是放在这里,它会起作用。这是因为(mark)
返回标记的位置(就像(point)
返回点的位置整数)。
(defun jump-to-mark ()
(interactive)
(goto-char (mark)))