日付:2024-11-24
名前:小林 大輔
学生番号:HT12A038
指導教員:兼宗 進
年度:2014
所属:総合情報学部 メディアコンピュータシステム学科
本研究では、
現在、文章作成ソフトには「Word」、「Writter」等があり、これらは「視覚マークアップ言語」と呼ばれ、テキスト中の「手掛かり」から文書構造を推論しようというものである。
例えば、テキストファイルの文書のタイトルの前にいくつか改行やスペースを入れることで、行送りの調整や中央寄せを暗示させている。
これらの作業は、ユーザが入力した内容、つまり画面に出力される内容が印刷などの出力と一致するという利点がある。これはユーザにとってわかりやすい仕様であるが、ユーザーがすべてのレイアウト作業を行わなければいけない為、文章作成のみに集中することが出来ず、執筆以外にも労力が必要となる。
図や表を入れ替えた際に、番号を振り直す必要が生じることや、全体的に構成を変更した際に目次も変更しなければならない等、弱点と呼べる点が多々ある。
また、論文のように何十ページも文章も記述するとなると、どこにどのような文章が記述しているか一目で判断したり、それを思い出し作業するのは非常に困難でこの様な点でも文章作成のみに集中するのは難しい。
他にも、卒業論文や研究論文など理系の論文を執筆する際の多くは「LaTeX」という文章作成ソフトが存在する。
「LaTeX」の特徴としては、
手続きマークアップ言語というのは、書式を整えるために、書式指定の命令を文章の直前にずらずらと並べ、中央揃えモードに移り、書体を大きくさせるなどの指示を出す。文章の後には、それらの効果を打ち消す命令が並ぶ、という言語である。出力した際には非常に整っていて見やすい。
本学の卒業論文の執筆方法は、各自様々なエディタを用いて、LaTeXの命令や本文を記述し、コマンドプロンプトなどを用いてコンパイルし、pdfファイルを得るという方法である。しかし、LaTeXの命令には複雑なものが多く、初学者が扱う際にはLaTeXの命令をいちいち参考書やインターネットなどで調べながら、本文を書かなければならない。そのため、文章作成のみに集中できないのではないかと考える。
そこで今回、「変換プログラム」を作成した。
「Wiki2LaTeXフィルターの開発」
→文章作成への集中と作業効率が向上
LaTeX を扱うのは容易ではなく負担がかかるため、今回は直感的に表などの作成が可能である「pukiwiki記法」を用いて、それをTeX形式に変換することで、ユーザの負担を軽減することは出来ないかと考えた。
上記を図に示したものが図【【activity】】である
今回pukiwikiのページを扱う利点としては、プレビュー時にPDFにした時のイメージが掴める、という点である。しかし、PukiwikiとLaTeXではそれぞれ利用目的が違うため、対応する項目は限られている。今回はそれぞれの項目の対応から行った。
対応時に考えたのは、プレビュー時にどれだけ自然に見せることができるか、という点である。 まず、LaTeX で文章作成を行う際に頻出する項目をリストアップしPukiwikiとの対応表を作成した。 それを図【【list】】に示す。
LaTeXに存在し、Pukiwikiに存在しない項目については、それぞれの意味が異なる項目でも対応させている。その時に考えたのは、Pukiwikiでのプレビュー時に、それの文章をPDFにした時にどのように出力されるのかイメージできるか、という点である。
PukiwikiとLaTeX、お互いに対応する語が存在しない項目をリストアップし、Webブラウザ上(Pukiwiki)で様々な項目を使用し、プレビューを行いながら対応付けを行った。 全ての項目を対応させるのは困難な為、今回の研究では、論文を作成する際に一般的に使用すると思われる項目と、卒業論文に使用するであろう項目に絞り対応付けを行う。 下記は一般的に使用すると思われる項目である。
下記は卒業論文のサンプルに記述されていたため、特別に必要であると思われる項目である。
例えば、LaTeX には「章立て(\chapter)」や「見出し(\section)」という項目があるが、Pukiwiki記法には「章立て」という項目はなく「見出し」しかない、そのため自身で項目を考え対応させる必要があった。Pukiwiki上では「*」を使用しなければ目次に表示されない為、見出しと章立てを「*」を用いた記述方法にした。しかし、Pukiwiki記法では「***(LaTeXでいう\subsubsection)」までしか対応されていない。そのため、文頭に「*~」と記述すると「章立て」とし、「見出し」部分と区別するようにした。
他にも、Pukiwkiには文章や画像・表などにラベルを付け、参照するという記述法はなく、それぞれにアンカーやリンクを付けるといった項目しかない。 対応する項目がない場合は難しく、Pukiwikiのページ上・文章中に存在しても違和感がなく、かつ、文章作成中に確実に使用しない記号を使用する必要があった。 今回、ラベル(\label)と参照(\ref)には、すみつきカッコを用いた(図【【labref】】参照)。
LaTeXは「プリアンブル」と呼ばれる、インクルードファイルのようなものをテキストファイルに記述しなければコンパイルすることが出来ない。そのため、今回は卒業論文で使用するプリアンブルを変換プログラムにかけた際に自動で付与している(図【【puri】】参照)。パッケージの追加などには未対応であるため、決められた形式の論文を作成することしかできない。
論文を印刷した際に、ページ番号がついていないと非常に見にくくなってしまう。しかしPukiwiki記法はWebページを作成する言語なので、ページ番号を付与させるような命令はない。そのため、LaTeX形式に変換した際に特定のコマンドの前後にページ番号などの命令を付与させるようにした。プログラムが自動的に決められたページ番号を出力するようにした為、現在はページ番号の書式の設定などは出来ていない。
画像
下記は図【【item】】のプログラムの処理方法である。
箇条書きや表組、画像貼り付け等、LaTeX側で複数行に渡り命令をする場合は図【【item】】のような処理方法を行っている。
その他のタイトル(\title)や目次(\tableofcontents)等、一行で判別が可能な命令については、図【【pl2】】のように文頭や文中に特定の項目がが存在した際に、LaTeXの命令に変換している。
Pukiwikiではページ更新をした際に、見出し(*)を使用した際にアンカーが付属してしまう(図【【ancer】】参照)。アンカーを放置したままTeX形式に変換しターミナルなどでコンパイルするとエラーが出てしまうため、TeX形式へ変換する際にそのアンカーを削除する必要があった。文章作成時にアンカーのような文章を記述してしまうと、アンカーと同様に削除してしまう恐れがあった為、文頭が「*」で文末に特定の文字列が存在した場合のみアンカーを削除するプログラムを作成した。
「おわりに」では,あらためて,研究で何を行ったのか,また,そ の成果は何か,を簡潔にまとめる.また,今後の課題も簡潔にまとめる. 特に,今後の課題については,たくさんある場合でも,あまり多 くは書かず,次にするべきことは何かを簡潔にまとめる. 今後の課題がたくさんある場合には,考察のところで取り上げ, どのようなアプローチが考えられるかをなるべく具体的に書く とよい.
「謝辞」では,卒業研究や修士の研究でお世話になった先生や 先輩に対して感謝の意を表す.卒業研究や修士の研究とはいう ものの,大学や大学院で得た知識の集大成が卒業研究や修士の 研究の成果なのであるから,それをふまえて,広く感謝の意を 表す方がよい.
通常,謝辞では,感謝の度合が高いほど先に書く.また,何 人かを一まとめにするよりは,個別に謝辞を書く方が,感謝の 度合が高くなる.同列に並べる時でも,役職の高い人を先に書 くなど,一般的に常識とされることがあるので,気を配った方 がよい.
付録には実験のデータやプログラムリストを付ける