我需要将一个字符串(不属于缓冲区)附加到一个特殊文件中,但是由于我希望此操作花费尽可能少的时间,所以我不想作为缓冲区打开。S
F
F
AFAIK,emacs 中有一个名为 的内置函数write-region
,但这需要将内容写入F
其中一个缓冲区(而在我的情况下,不能保证S
应该是这样的字符串)。我怎样才能做到?
(write-region <STRING> nil <FILENAME> 'append)
你为什么不尝试类似的东西:
(defun my-append-string-to-file (s filename)
(with-temp-buffer
(insert s)
(write-region (point-min) (point-max) filename t)))
编辑:显然,正如@Stefan 回答的那样,write-region
能够将字符串附加到文件中,所以我建议改用他的答案。
不确定您想要实现的确切目标,但这样的事情可能会奏效……您可以将要附加到的文件的路径放在 /path/to/F 的位置。
(defun interactive-append (something)
(interactive "sAppend S to F:")
(shell-command (format "echo '%s' >> /path/to/F" something)))