在组织模式(8.2.5)中是否有任何方法可以导出到ascii而不会在.txt文件的每一行末尾插入换行符?
好心的人应该是:
(setq org-ascii-text-width nil)
但是不接受nil作为org-ascii-text-width
的参数。
不优雅的解决方法是:
(setq org-ascii-text-width 1000)
假设我的段落中没有一个长度超过1000个字符。
如果我:
(setq org-ascii-text-width 10000)
我收到错误:
Stack overflow in regexp matcher
答案 0 :(得分:2)
misc-commands
包定义了一个名为goto-longest-line
的函数。使用此函数,我们可以定义一个函数,将org-ascii-text-width
设置为当前缓冲区中最长行的长度:
(defun org-set-ascii-text-width ()
(save-excursion (setq org-ascii-text-width
(cadr (goto-longest-line (point-min) (point-max))))))
要确保每次保存org-ascii-text-width
缓冲区时org-mode
都会更新,请将其添加到before-save-hook
:
(add-hook 'before-save-hook
(lambda () (if (eq major-mode 'org-mode)
(org-set-ascii-text-width))))
misc-commands
位于MELPA,可以package-install
编辑(在adding MELPA to the list of package archives之后为Emacs包管理器)。
如果您不想安装该软件包,我猜您也可以前往here,抓住goto-longest-line
功能并将其添加到.emacs
(以及当然,提及原作者的评论。
答案 1 :(得分:0)
这有点令人尴尬:
一起删除org-ascii-text-width
- 变量可以满足我的需要:导出到ascii时不会添加任何中断。
当我注意到在导出的文本中添加了换行符时,我开始摆弄org-ascii-text-width
,我错误地认为这是由于对组织8.2.5的更新。
这是另一回事。我必须无意中设置fill-column
或类似的东西。