{開発}{『希哲日記』}{希哲元年}{日記}{}{デライト}{24時}{デライト開発}{数学知識}{数学の研究基盤}(32)

{希哲15年3月7日の日記 K#F85E/E74C-9AFE}

デライト開発高進捗ながら24時前には切り上げることが出来,理想に近い一日だった。

課題だったデライトの数式対応が一応実現し,何気なく始めた作業だったが意外にも色々な思いが込み上げてきた。

異常な数学好き影響数学の研究基盤を創りたいという思いは昔からあり,希哲元年には Org-Mode組み込み LaTeX について解説文を書いたりしていた。

それからデライトにいたるまで開発の方に時間を取られ,ほとんど数学知識蓄積出来なかった。十何年もの時を経て,ようやくやりたかったことの一つと繋がったわけだ。

そもそもデライト設計も,その原点である輪郭法も,非常に数学的感性思考によるものだとは感じていた。デライトと数学の親和性は高いはずだ。

これを機に数学の勉強再開しろということなのかもしれない。

{組み込み LaTeX}{Org-Mode}{LaTeX}(3)

{Org-Mode の組み込み LaTeX 和訳部分 K#F85E/899E}

    <ol class="toc">
  • 11 組み込み LaTeX
  • 11.1 数学記号
  • 11.2 下付き文字と上付き文字
  • 11.3 LaTeX 文
  • 11.4 LaTeX 文の処理
  • 11.5 CDLaTeX の数式入力への使用
  • </ol> </ol>

    この描出は,2007年11月4日投稿の旧ブログ記事(付録)を再録したものです。長らく更新されていませんので,最新の情報は著者のページからお探し下さい。

    この文書は、Org-Mode バージョン 5.13e 向けに書かれた Org Mode Manual の一部を翻訳したものです。原文の著作権は © 2004, 2005, 2006, 2007 Free Software Foundation にあります。また、文章は「GNU フリー文書利用許諾契約書」に従い配布されています。

    <h2 id="11">11. 組み込み LaTeX</h2>

    プレーン・テキストは、大部分の書きものに十分利用できます。一つの例外は、数学記号や数式を必要とするような科学的な書きものです。LaTeX は学術的文書の組版に幅広く利用されています。Org-Mode はファイル中への LaTeX コード組み込みに対応しています。それは、多くの学術分野で LaTeX ソースコードが流通しており、HTML 向けの画像変換にも応用できるためです。

    <h3 id="11-1">11.1 数学記号</h3>

    LaTeX マクロで特殊な記号を挿入できます。例えば `\alpha' でギリシャ文字を表したり、`\to' で矢印を表すことが出来ます。どのマクロが利用できるか分からないときは、`\' と文字をタイプして、M-<TAB> を押すことで候補をみることが出来ます。LaTeX コードではなくても、Org-mode では以下のような、数式区切り文字で囲まれていない文も認めています。

    <blockquote>角はギリシャ文字 \alpha, \beta そして \gamma と書かれている。</blockquote>

    HTML エクスポート時 (HTML エクスポートを参照) には、これらの記号は HTML の構文に翻訳されます。最初の例では、それぞれ `&alpha;' と `&rarr;' となります。

    <h3 id="11-2">11.2 下付き文字と上付き文字</h3>

    LaTeX では、`^' と `_' は、上付き文字と下付き文字を示します。また、数式モードの区切り文字なしでも使われます。アスキー文字の可読性をよくしたいなら、複数文字を波括弧で囲む必要は (可能ですが) ありません。例えば:

    <blockquote> 太陽の質量 M_sun = 1.989 x 10^30 kg . 太陽の半径 R_{sun} = 6.96 x 10^8 m.</blockquote>

    上付き、下付きと解釈されることを避けたい場合、`^' と `_' をバックスラッシュで `\^' や `\_' のようにします。

    HTML エクスポート時 (HTML エクスポートを参照) には、下付き文字と上付き文字は、それぞれ <sub> と <sup> のタグで囲まれます。

    <h3 id="11-3">11.3 LaTeX 文</h3>

    下付き・上付き文字の記号を使い、HTML は多少の数式を表現することは出来ます。更に複雑な表現には、数式処理プログラムの助けを借りる必要があります。この目的のため、Org-mode は任意の LaTeX 文を扱えるようになっています。LaTeX 文の変換結果を確認するためのコマンドが用意されており、HTML へのエクスポートでは全ての LaTeX 文を画像へ変換し、HTML 文書中に挿入します。この機能を働かせるためには、システムに LaTeX がインストールされている必要があります。また、こちら(http://sourceforge.net/projects/dvipng) で入手できる dvipng プログラムも必要になります。LaTeX 文の処理時に使われる LaTeX ヘッダ は変数 org-format-latex-header で設定することが出来ます。

    LaTeX 文には特殊な記述は全く必要ありません。下記の点で、LaTeX ソースコードと同等です。

    • 環境の全種類。但し、\begin 命令文は新しい行に置くこと、その前には空白以外置けません。
    • 通常の数式区切り文字中のテキスト。仕様の衝突を避けるために、単一の `$' の文字は、挟まれたテキストが、長くて二行の強制改行に収まっており、 `$' の文字との間に空白がなく、終わりの `$' の後に空白か句読点が続いている場合にのみ数式区切り文字として認識されます。他の区切り文字にはこのような制限はありません。不安であれば、行中の区切り文字には `\(...\)' を使って下さい。
    読み込み中...
{組み込み LaTeX}{Org-Mode}{LaTeX}(3)

{Org-Mode の機能、組み込み LaTeX — その2 K#F85E/9839}

この描出は,2007年11月4日投稿の旧ブログ記事を再録したものです。長らく更新されていませんので,最新の情報は著者のページからお探し下さい。

Org-Mode で組み込み LaTeX を使うには、Emacs と Org -Mode の他に、LaTeX 処理系と dvipng がインストールされている必要があります。

既に Emacs と Org-Mode が正常に動作していることを前提として、使用している OS が Ubuntu (Feisty) の場合のインストール手順を簡単に説明します。 (Windows の場合は後述)

コマンドラインで、 下記のように入力します。

	$ sudo apt-get install ptex-base ptex-bin ptex-jisfonts dvipng

以上でインストール作業は完了です。

ptex は株式会社アスキーが開発した TeX システムの一種で、ptex-bin パッケージに LaTeX 処理用の platex が付属しています。dvipng は platex で出力した DVI ファイルを PNG 画像に変換するために必要となります。

LaTeX コード自体の書き方がわからない方でも、最初は下記のような専門のサイトを参考にしながら少しづつ覚えていけば、使いこなせるようになります。

LaTeX コードを入力したら、あとは Org-Mode 動作中にコマンドを入力するだけです。

  • C-c C-x C-l で LaTeX コードを画像に変換する。
  • C-c C-c で画像を取り除いてコードの状態へ戻す。

変換時のカーソルの位置によって変換される範囲が変わります。

  • カーソルがコード中にある場合、そのコードだけを変換する。
  • カーソルがコード中になく、見出し中にあった場合、その見出し中にある全てのコードを変換する。
  • カーソルがコード中になく、最初の見出しの前にあった場合、文書中にある全てのコードを変換する。

その他、機能の詳細については解説書の一部和訳をご覧ください。

組み込み LaTeX は Windows で簡単に利用できればもっと注目される機能だと思うのですが、 筆者は以前 Windows XP 上の Meadow で試行錯誤したものの結局うまく動作しませんでした。何か役にたつかもしれないので一応簡単な状況を記しておきます。

<ol>
  • TeX インストーラ3」で LaTeX 環境 をインストール
  • dvipng は上記インストーラで選択できる dvitools-w32 に含まれていた dvipng.exe
  • </ol>

    この状態で YaTeX から platex を利用出来ることは確認しましたが、Org-Mode では画像が作成されませんでした (変換された画像は、文書と同じ階層に作られる ltxpng フォルダに置かれるようです)。

    dvipng はコマンドラインから使用すれば正常に動作したので、単純にパスの設定ミスか Meadow との関係だと思うのですが、筆者はその後 Ubuntu に移行してしまったので原因は不明なままです。

    もし Windows 上で既に使用している方、もしくは成功した方がいらっしゃればご一報頂けると嬉しいです。

    {組み込み LaTeX}{Org-Mode}{LaTeX}(3)

    {Org-Mode の機能、組み込み LaTeX — その1 K#F85E/8E33}

    この描出は,2007年11月4日投稿の旧ブログ記事を再録したものです。長らく更新されていませんので,最新の情報は著者のページからお探し下さい。

    Org-Mode は、テキストエディタである Emacs のモード (拡張機能) の一つです。主に、テキストファイルのアウトライン (骨組) を表示・編集したり、スケジュールやプロジェクトを管理する機能をもっています。

    一方 LaTeX は、世界的に普及している、数式の表現に優れた組版処理システムです。利用者が作成した、文章の構成や配置、数式、図の挿入などを指示したコードを含む (ソースファイルと呼ばれる) 文書をプログラムに処理させると、出版品質のデータを出力してくれるというものです。

    この LaTeX 形式は、特に数式処理に優れることから、論文等の投稿データとして、理数系の多くの学術機関で正式に認められています。

    通常、PC 上の単純な文字データでは、文字の大きさや位置を細かく制御できないため、数学の「a 割る b」は a/b、 「a の二乗」 は a^2、「a を底とする x の対数」は log_{a}x などと、記号を組みあわせた代替表記が一般に用いられています。

    これらは勿論、数学の正式な表記ではありませんが、わざわざ自分の手で画像ファイルを用意しても、作成・修正に手間がかかる上、品質の一貫性も保証できません。教科書などの活字で用いられているような見慣れた表記を、PC 上で綺麗に・手軽に扱ったり、印刷に利用するには、何らかの機構が必要になります。LaTeX はそのための道具です。

    LaTeX では、数式を上述のような文字と記号の組み合わせのコードとして入力すれば、それをプログラム側で変換処理して正常な数式を表示させます。そのため、内容を変更したい場合でも、元のコードを書きかえるだけで済みます。また、この方式は専門分野で広く利用されているため、コードの書き方は一種の共通言語になっています。

    出力を画像ファイルに変換することも (dvipng などで) 出来るため、数式を表現したいウェブページ等に応用することにも向いています。理数系分野の解説サイトなどで、綺麗な数式を表示している所は、LaTeX やその前身 TeX の出力を利用していることが多いです。

    前置きが長くなりましたが、ここで本題の Org-Mode と LaTeX の関係についての話に入ります。

    Org-Mode には、「組み込み LaTeX」というあまり知られていない機能があります。Org-Mode が動作しているバッファ中で LaTeX コードを認識すると、以下の処理をさせることが出来ます。

    • コマンドひとつでコードを数式画像に置き換えて、そのままバッファ中に表示する。
    • HTML エクスポート時には、全てのコードを数式画像に変換し、HTML 文書中に挿入する。

    Emacs には、他にも AUCTeX や YaTeX という、LaTeX コードの作成を支援する有名なモードも存在します。しかし、LaTeX 形式という物は基本的に、文書というよりはソースファイルと呼ばれるもので、 文書内容以外にもたくさんの形式的な記号類を含んでいて、そのままの状態では可読性が高いとは言えません。文書として表示するには、ソースファイルを処理して別のファイルに出力された DVI ファイルを、DVI プレビューワなどを起動して閲覧する必要があり、少々煩雑です。

    それに対し、Org-Mode と LaTeX の組み合わせには、以下の利点があります。

    • 数式表示が必要な部分だけに LaTeX コードを用いればよく、全体的に LaTeX 形式を意識する必要がない。
    • アウトライン表示、表作成などをはじめとして、Org-Mode の諸機能が利用できる。
    • 無形式であるため、iimage-mode (画像ファイルの表示) などマイナーモードとの併用も自由に出来る。

    このように、文書の体裁よりも、内容を手早く確認・編集できることが必要な場合、例えば、数学・科学系文章の草稿を作る、学習ノートを作る等の際には、Org-Mode の 組み込み LaTeX 機能の利用が最適なのです。もちろん、数式表示に用いるコードはそのまま LaTeX ソースファイルで通用するため、正式な文書を作成する時に LaTeX 形式へ修正することも簡単です。

    組み込み LaTeX を使うために必要となる LaTeX 処理系と dvipng のインストール方法や実際の使い方については、「その2」に続きます。

    {組み込み LaTeX}

    {}