文章作成システムの提案

日付:2024-05-02

名前:小林 大輔

学生番号:HT12A038

指導教員:兼宗 進

年度:2014

所属:総合情報学部 メディアコンピュータシステム学科

本研究では、

~研究の目的・背景

様々な文章作成ソフト

現在、文章作成ソフトには「Word」、「Writter」等がありこれらは「視覚マークアップ言語」と呼ばれ、テキスト中の「手掛かり」から文書構造を推論しようというものである。

例えば、テキストファイルの文書のタイトルの前にいくつか改行やスペースを入れることで行送りの調整や中央寄せを暗示させている。

これらの作業は、ユーザーが入力した内容、つまり画面に出力される内容が印刷などの出力と一致するという利点がある。これはユーザにとってわかりやすい使用であるが、ユーザーがすべてのレイアウト作業を行わなければいけない為、文章作成のみに集中することが出来ず、執筆以外にも労力が必要となる。図や表を入れ変えた際に番号を振りなおす必要が生じることや、全体的に構成を変更した際に目次も変更しなければならない、等弱点と呼べる点が多々ある。 また、論文のように何十ページも文章も記述するとなると、どこにどのような文章が記述しているか一目で判断したり、それを思い出し作業するのは非常に困難でこの様な点でも文章作製のみに集中するのは難しい。

他にも、卒業論文や研究論文など理系の論文を執筆する際の多くは「LaTeX」という文章作成ソフトが存在する。

「LaTeX」の特徴として

現在の論文執筆方法と提案方法の比較

先行研究

「Wiki2LaTeXフィルターの開発」

→文章作成への集中と作業効率が向上

~研究課題

~研究内容

LaTeX を扱うのは容易ではなく負担がかかるため、今回は直感的に表などの作成が可能である「pukiwiki記法」を用いて、それをTeX形式に変換することでユーザの負担を軽減することは出来ないかと考えた。

動作方法

上記を図に示したものが図【【activity】】である

activity.png
(変換方法,【activity】)

対応の仕方

今回pukiwikiのページを扱う利点としては、プレビュー時にpdfにした時のイメージが掴める、という点である。しかし、PukiwikiとLaTeXではそれぞれ利用目的が違うため、対応する項目は限られている。今回はそれぞれの項目の対応から行った。

対応時に考えたのは、プレビュー時にどれだけ自然に見せることができるか、という点である。 まず、LaTeX で文章作成を行う際に頻出する項目をリストアップしPukiwikiとの対応表を作成した 図【【list】】に示す。

list.png
(対応表,【list】)

LaTeXに存在し、Pukiwikiに存在しない項目についてはプレビュー時に、pdfにした時にどうなるのか明確に理解できれば意味が異なる項目でもそれを使用し対応させている。

PukiwikiとLaTeX、お互いに対応する語が存在しない項目をリストアップし、Webブラウザ上(pukiwiki)で様々な項目を使用しプレビューを行いながら対応付けを行った。 全ての項目を対応させるのは困難な為、今回の研究では論文を作成する際に一般的に使用すると思われる項目と卒業論文に使用するであろう項目に絞り対応付けを行う。 下記は一般的に使用すると思われる項目である。

下記は卒業論文のサンプルに記述されていたため、特別に必要であると思われる項目である。

例えば、LaTeX には「章立て」という項目があるが、Pukiwiki記法には「章立て」という項目はなく「見出し」しかない、そのため自身で項目を考え対応させる必要があった。Pukiwiki上では「*」を使用しなければ目次に表示されない為、見出しと章立てで同様に「*」を用いた記述方法にするようにした。しかし、pukiwiki記法では「***(LaTeXでいう\subsubsection)」までしか対応されていない。そのため、文頭に「*」と記述すると「章立て」とし、「見出し」と区別するようにした。

chapsec.png
(編集画面とプレビュー,【chapsec】)

他にも、Pukiwkiには文章や画像・表などにラベルを付け、参照するという記述法はなくそれぞれにアンカーやリンクを付けるといった項目しかない。 対応する項目がない場合は難しく、Pukiwikiのページ上・文章中に存在しても違和感がなく、尚且つ、文章作成中に確実に使用しない記号を使用する必要があった。 今回、ラベル(\label)と参照(\ref)にはすみつきカッコを用いた(【【labref】】)。

labref.png
(Pukiwiki上でのラベルと参照,【labref】)

LaTeXは「プリアンブル」と呼ばれるインクルードファイルのようなものをテキストファイルに記述しなければコンパイルすることが出来ないため、今回は卒業論文で使用するプリアンブルを変換プログラムにかけた際に自動で付与している(図【【puri】】)。パッケージの追加などには未対応であるため、決められた形式の論文を作成することしかできない。

puri3.png
(プリアンブルの付与,【puri】)

論文を印刷した際に、ページ番号がついていないと非常に見にくくなってしまう。しかしPukiwiki記法はWebページを作成する言語なので、ページ番号を付与させるような命令はない。そのため、TeX形式に変換した際に特定のコマンドの前後にページ番号などの命令を付与させるようにした。プログラムが自動的に決められたページ番号を出力するようにした為、現在はページ番号の書式の設定などは出来ていない。

画像

プログラムの処理

下記は図のプログラムの処理方法である。

  1. 記号を判別し、対応する命令\begin{itemize}を出力する(変数の値が0の場合)
  2. 文頭の記号をを\itemに変換し変数の値を+1する
  3. 文頭に対応する記号が無い行かつ変数の値が0以上であればと命令\end{itemize}を出力する
item.png
(箇条書きの変換プログラム,【item】)

箇条書きや表組、画像貼り付け等、LaTeX側で複数行に渡り命令をする場合は図のような処理方法を行っている。

その他のタイトル(\title)や目次(\tableofcontents)等、一行で判別が可能な命令については図【【pl2】】のように、文頭や文中に特定の項目がが存在した際にLaTeXの命令に変換している。

pl2.png
(タイトルと目次の変換プログラム,【pl2】)

Pukiwikiではページ更新をした際に、文頭に「*(見出し)」を使用した文末にアンカーが付属してしまう(図)。アンカーを放置し、そのままTeX形式に変換しターミナルなどでコンパイルするとエラーが出てしまうためTeX形式へ変換する際にそのアンカーを削除する必要があった。文章作成時にアンカーのような文章を記述してしまうと、アンカーと同様に削除してしまう恐れがあった為、文頭が「*」で文末に特定の文字列が存在した場合のみ削除するようにプログラムを作成した。

ancer.png
(ページ更新前と更新後の比較,【ancer】)

~評価実験

~まとめ

PukiWiki記法からTeX形式に変換するシステムの開発

課題

~考察

終わりに

「おわりに」では,あらためて,研究で何を行ったのか,また,そ の成果は何か,を簡潔にまとめる.また,今後の課題も簡潔にまとめる. 特に,今後の課題については,たくさんある場合でも,あまり多 くは書かず,次にするべきことは何かを簡潔にまとめる. 今後の課題がたくさんある場合には,考察のところで取り上げ, どのようなアプローチが考えられるかをなるべく具体的に書く とよい.

~謝辞

「謝辞」では,卒業研究や修士の研究でお世話になった先生や 先輩に対して感謝の意を表す.卒業研究や修士の研究とはいう ものの,大学や大学院で得た知識の集大成が卒業研究や修士の 研究の成果なのであるから,それをふまえて,広く感謝の意を 表す方がよい.

通常,謝辞では,感謝の度合が高いほど先に書く.また,何 人かを一まとめにするよりは,個別に謝辞を書く方が,感謝の 度合が高くなる.同列に並べる時でも,役職の高い人を先に書 くなど,一般的に常識とされることがあるので,気を配った方 がよい.


~付録

付録には実験のデータやプログラムリストを付ける


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS