Emacs 将注释导出为注释

Emacs 将注释导出为注释,emacs,latex,comments,org-mode,Emacs,Latex,Comments,Org Mode,在组织模式下,您可以发表评论,在组织模式下,您可以导出到LaTeX,但组织模式下的评论不会导出到LaTeX评论。如何使组织模式将组织模式注释导出为LaTeX注释 这里有一个例子。以下 * Test Text before comment # Comment Text after comment Text before comment #+BEGIN_COMMENT Comment #+END_COMMENT Text after comment 出口到 \section{Test} \标签

在组织模式下,您可以发表评论,在组织模式下,您可以导出到LaTeX,但组织模式下的评论不会导出到LaTeX评论。如何使组织模式将组织模式注释导出为LaTeX注释

这里有一个例子。以下

* Test

Text before comment
# Comment
Text after comment

Text before comment
#+BEGIN_COMMENT
Comment
#+END_COMMENT
Text after comment
出口到

\section{Test}
\标签{sec-1}
评论前的文本
评论后的文本
评论前的文本
评论后的文本
但是我想把组织模式的注释导出为LaTeX注释。因此,我需要以下乳胶输出:

\section{Test}
\标签{sec-1}
评论前的文本
%评论
评论后的文本
评论前的文本
\开始{comment}
评论
\结束{comment}
评论后的文本

我正在Emacs 23.3.1中运行组织模式7.6。

在当前导出器下,我能想到的唯一允许您导出注释的方法是特定于后端的。您可以使用以下内容:

#+latex: comment

但是,这两种格式都是人为设计的,如果要导出到多种格式,则需要对HTML等执行等效操作

然而,在开发过程中,这应该不会太难实现(注释在解析器中已经被标识为块,因此它只需要一个方法在导出时转换它们)

我将此请求转发到邮件列表,以查看是否可以包含此请求。
编辑:线程已定位

编辑:来自组织模式维护者的响应

目前的出口商不允许这样做,但新的出口引擎 尼古拉斯使之成为可能

该计划是在之前将新的导出引擎合并到组织的核心中 版本8.0,请继续关注


除了Jonathan Leech Pepin的答案外,还有一种针对特定出口商后端的黑客方式。注释在
org export handle Comments
函数中处理,该函数由org-exp.el中的
org export preprocess string
调用。每个出口商后端都是不同的,但是让我们考虑胶乳后端。 如果查看org-latex.el中的
org export as latex
函数,可以找到对
org export preprocess string
的调用。传递给
org export preprocess string
函数的一个内容是参数列表,特别是它包含一个
:comments
参数,在LaTeX情况下,该参数设置为
nil
。此参数告诉组织模式导出器如何处理注释-有关详细信息,请参阅org-exp.el中对
org export handle comments
的调用和实现。本质上,
:comments
参数可以是显示如何处理注释的格式字符串;如果为
nil
,则表示没有格式处理,因此不会打印任何内容。如果在
org export as latex
功能中,您将
:comments nil
替换为
:comments“%%%s”
,则这将在导出时注释文本的前面插入一个“%”。那么你的情况呢

this is text before a comment
# this is a comment
this is text after a comment
将作为

this is text before a comment
% this is a comment
this is text after a comment
这不是最方便的方法,我也不确定是否有一种方法可以指定每个文件的
:comments
参数。也许Jonathan设计的线索会对这个问题有所启发


请注意,您可能需要删除字节编译的org-latex.elc文件,以便看到您在org-latex.el中的更改传播到导出

恐怕这不可能。但是我喜欢将注释导出为输出格式的注释(那些支持文档中的注释)的想法。我在
\n#
上搜索并替换了注释,使其成为
\n#+latex:%
。这将所有在组织模式下以
#
开头的行转换为在emacs中以
%
开头的行,这完成了我认为N.N.的任务。这对我不起作用。在导出的pdf中,我仍然得到不需要的文本。@bobsacameno这是基于OrgMode<8.0的版本。从那时起,随着对导出引擎的更改,过程将有所不同。
this is text before a comment
% this is a comment
this is text after a comment