我需要访问 Emacs 缓冲区中的选择。我找到了这篇文章如何在 Emacs Lisp 中访问当前区域的内容? 它对我有很大帮助。
但有一个问题。第一次选择(突出显示)一个区域时,它可以正常工作,但是当我按 Cg 并将光标正常移动到另一个地方而不突出显示任何字符时,我得到了一个从最后一个标记到当前点的字符串,而我期望一个空的.
实际上我需要实现一个函数,它将当前选择(突出显示)作为字符串返回,如果没有突出显示,则返回空字符串。下面的代码可能会更清楚地表达我。
(defun get-search-term ()
(interactive)
(let (
(selection (buffer-substring-no-properties (region-beginning) (region-end))))
(if (= (length selection) 0)
(message "empty string")
(message selection))))
有什么建议么?非常感谢!