逐語的に言えば、エクスポートされたLaTeXで実際にマークアップを使用することを意味する場合は、単にを使用できます=*shrug*=
。ただし、としてエクスポートするだけで*shrug*
、これを常に実行する場合は、filtersをお勧めします。ただし、の一部のインスタンスでのみこれが必要な場合は、*shrug*
@ wvxvwによって提案された代替手段を使用する必要があります。マクロを使用してこれをきれいに行うことができます。次に例を示します。
フィルター
(defun my-bold (contents backend info)
(when (org-export-derived-backend-p backend 'latex)
(replace-regexp-in-string "\\`\\\\textbf{\\(.+\\)}"
"\\\\ast{}\\1\\\\ast{}" contents)))
(add-to-list 'org-export-filter-bold-functions 'my-bold)
本質的に、上記のフィルターは\textbf{..}
トランスコードされた文字列内のマークアップを探し、\ast{}..\ast{}
内部でラップされたものを変更せずにそれをに置き換え{..}
ます。正規表現と置換文字列のテストは行っていないため、間違いがある可能性がありますが、アイデアは得られます。同様に、他のバックエンドをカバーするために、次のような追加のスニペットを含めることができます。
(when (org-export-derived-backend-p backend 'html)
(replace-regexp-in-string "<b>\\(.+\\)</b>" "\a;\\1\a;" contents))
上記の正規表現についても同じ注意が必要です。
マクロ
組織ソース:
#+macro: nobold @@latex:\ast{}$1\ast{}@@ @@html:a;$1a;@@
This text is *bold* this is nobold{{{not}}}
次のようにLaTeXにエクスポートします。
This text is \textbf{bold} this is \ast{}not\ast{}
およびHTMLとして:
This text is <b>bold</b> this is a;nota;
もちろん、必要な数のバックエンドをマクロに追加できます。
編集: Kaushalがコメントで指摘しているように、この場合、ラテックスのエクスポートスニペットはオプションです。ただしorg-entities
、Orgソースでベアラテックスを識別するためのリストと特定のルールを追跡するのはかなり難しいので、ベアラテックスが関係する場合は常に使用することを好みます。
注意:
- フィルタの例はテストされていませんが、
- 私は知らない
HTML
ので、それぞれのビットにいくつかの間違いがあるかもしれません。
\ast{}shrug\ast{}
またはを試してみることができます\star{}shrug\star{}
。同様にHTMLでエンティティエンコードを使用できます:a;
、またはアスタリスクの前後にスペースを追加することがオプションの場合、これも機能します。