LaTeX語にまだ慣れておらず、勉強する時間もない方のために、AMCにはAMC-TXTという特別な形式の簡単なテキストファイルを処理するフィルターが含まれています。この節では、AMC-TXTファイルの構文を詳しく解説します。LaTeXを用いて試験問題を精密に制御する場合は、この節はスキップしてください。
単純な例から始めましょう:
# AMC-TXTソースファイル Title: はじめてのAMC試験問題 Lang: JA Presentation: 以下の設問に最も適切な解答を 選択してください。 * カメルーンの首都はどれですか? + ヤウンデ - ドゥアラ - クリビ ** 以下の数のうち、正の数はどれですか? - -2 + 2 + 10
重要 | |
---|---|
試験問題を含んだファイルは、UTF-8でエンコードされたプレーンテキストファイルでなければなりません。UTF-8はいくつかのテキストエディタ(geditなど)のデフォルトエンコーディングです。テキストをボールドにしたり、画像が埋め込めたりするような、OpenOffice/LibreOfficeやそれに類するエディタを使用しないでください。これらはテキスト以外に多量のデータを保存し、AMCはそれを読むことができません。 |
注記 | |
---|---|
デフォルトとして用いられるフォントはlibertineで、これは多数の言語の文字を含んだオープンソースフォントです。このフォントをインストールするか、そうでなければ他のフォントを選ぶ必要があります(下記オプション参照)。debian/ubuntuパッケージでAMCをインストールすれば、このフォントは推奨パッケージとしていっしょにインストールされます。 |
AMC-TXTの構造はすでにおわかりのとおりです。最初に全体的なオプションがあり、そして設問が続きます。
以下のオプションを(任意の順序で)使用することができます:
試験問題が記述されている言語を指定するのに用います。現時点では、DE(ドイツ語)、ES(スペイン語)、FR(フランス語)、IT(イタリア語)、NL(オランダ語)、NO(ノルウェー語)、PT(ポルトガル語)、JA(日本語、「日本語」参照)、AR(アラビア語、「アラビア語」参照)のみがサポートされています。オプションを指定しないと、英語が選択されます。他の言語用にローカライズ文字列を定義することもできます(L-xxx
形式のオプション参照)。
用紙サイズを設定します。設定可能な値は、A3
、A4
、A5
、A6
、B3
、B4
、B5
、B6
、letter
、legal
、ANSIA
、ANSIB
、ANSIC
、ANSID
、ANSIE
です。
試験タイトル。試験問題用紙の上部に印刷されます。
試験の注意事項を記述する文章(時間、規則など)です。
1なら(デフォルト)、設問がシャフルされ、用紙ごとに順序が変わります。0なら、ファイルに記述された通りの順序で設問が並びます。
シャフル用の乱数生成器のシードはこのオプションで変更することができます。設定されている値(1から4194303の範囲で選択できます)が変更されると、シャフル結果が変わります。当然ですが、問題用紙を印刷したあとはこの値を変更してはなりません。
注記 | |
---|---|
この値はxyファイルに( |
正の整数値n
を指定すると、n
桁分の受験番号をマークする欄が試験問題用紙に追加されます。
受験番号欄の方向を(virtical
またはhorizontal
で)設定します。設定しない場合は桁数により(桁数が少なければ水平、多ければ垂直に)自動選択されます。
正の整数値n
を指定すると、問題用紙をn
カラムで生成します。
1なら(デフォルト)、複数選択問題(正解数が0以上の任意個)において、「該当なし」の選択肢を追加します。これをしないと、「受験者がこの設問に解答しなかった」のと「受験者がこの設問に正解がないと考えた」のが区別できません。この選択肢をつけたくない場合は0に設定してください。
「該当なし」(上記オプション参照)に代わる文字列を設定します。
1なら(デフォルト)、各設問は複数のカラムやページにまたがらないように透明な枠で囲まれます。0なら、必要に応じて設問が分割され、読み易さは多少犠牲になりますがページ数が節約できます。
必要なら、試験問題内での「問」に代わる文字列を設定します。
受験者の氏名記入欄に表示する「氏名」に代わる文字列を設定します。
Code
オプションが使用された場合に、受験者に、受験番号と氏名を記入するよう指示する短い文章です。
Code:
を使用しない場合のタイトル領域の幅。デフォルト値は.47\linewidth
です。
氏名フィールドの幅。LaTeXの通常の長さ単位が使用できます。デフォルト値は、Code:
を使用する場合は5.8cm
で、使用しない場合は.47\linewidth
です。
氏名フィールドボックスの行数。デフォルト値は、Code:
を使用する場合は2
で、使用しない場合は1
です。
氏名フィールドボックスの行間。デフォルト値は.5em
です。
各問題用紙の最小ページ数を指定します。問題がこのページ数より少ない場合は白紙ページが追加されます。別紙答案用紙を使用している場合は、
(例 q
+a
4+2
)のように書くことができ、q
は問題用紙自身の最小ページ数、q
+a
は答案用紙も含めた最小ページ数になります。
1にすると(これはデフォルト値ではありません)、各試験問題用紙のページ数が偶数になり、PDFの試験問題用紙を手動で印刷する際、両面印刷モードで一度に行うことができます。
1にすると(これはデフォルト値ではありません)、設問のページ数が奇数の場合でも、設問と別紙答案用紙の間に空ページが追加されません。このモードは試験問題用紙を片面印刷するときや、設問と答案用紙を分ける必要がないときに有用です。
受験者がマークするボックスの色です。これによりボックスは指定した色(例えばredや、薄いグレーもありえます)で印刷され、データ取込み時の誤検出を軽減します。色は、有効なxcolor(詳細はLaTeXのxcolorドキュメント参照)で、red、magenta、pink、lightgray、cyanや、#RRGGBB
の形式で#FFBEC8
(淡い赤)のように指定します。
単一選択問題(唯一の選択肢のみが正解になる設問)でのデフォルト採点基準です。詳細は「採点基準」を参照してください。デフォルト値は、正解に1点、それ以外に0点です。
複数選択問題(正解の選択肢が0個、1個あるいは複数個ありうる設問)でのデフォルト採点基準です。詳細は「採点基準」を参照してください。デフォルト値はhaut=2
で、完答に2点、1箇所の誤り(マークすべきでないボックスをマークしたり、マークすべきボックスをマークしなかったり)ごとに1点減点します(ただし負にはしない)。
文章中にLaTeXコマンドを使用したい場合は、このオプションを1にしてください。これにより例えば、$\sqrt{a+b}$
のような数式を挿入できます。0なら(デフォルト)、記述した文章がそのまま印刷されます。
LaTeXプリアンブルに追加したいコマンド(例えば\usepackageコマンドなど)を設定します。
LaTeXのdocument環境の先頭に挿入したいコマンド(例えばマクロ定義など)を設定します。
無効にする機能のリストをコンマで区切って指定します。現在実装されている機能はverbatim
(「逐語的コンテント」参照)、images
(「画像」参照)、embf
(「太字、斜体、タイプライター、アンダーライン」参照)、local_latex
(「LaTeXコードの断片」参照)です。
LaTeXのautomultiplechoiceパッケージに渡す追加オプションを与えます(「パッケージオプション」参照)。
試験問題に別紙答案用紙を用いる場合は、次のオプションを指定してください:
1なら、別紙答案用紙が追加されます。
別紙答案用紙のタイトルです。
別紙答案用紙の注意書きです。例えば、解答をこの用紙に記入しなければ無効であることを受験者に伝えます。
別紙答案用紙のカラム数です。
1にすると、automarks
オプション(「パッケージオプション」参照)を使用します。
単一選択問題(唯一の選択肢のみが正解となる設問)は、行を*
で始め、複数選択問題(任意個の正解がある設問)は**
で始めます。そのうしろに設問文を続け、以降の行に+
で始まる正しい選択肢と、-
で始まる誤った選択肢を書きます。
設問にはいくつかオプションが設定できます。それらは次の例のように、*
か**
のあとに角括弧で囲み、カンマで区切って並べます:
*[ordered,horiz,id=sum] 1足す1は いくつですか? - 0 - 1 + 2
設問に使用できるオプションは以下のとおりです:
選択肢を横に並べていきます。
n
選択肢をn
カラムに配置します。
選択肢をシャフルせず、記述ファイル内と同じ順序を保ちます。
xxxx
設問に名前をつけ、出力した採点表の得点がどの設問のものかわかりやすくします。この名前にはアクセントなどを含まずLaTeXの特殊文字(_
、^
、%
など)でない単純な文字しか使用できません。
旧版との互換性のためid
のかわりにname
も使用できますが、id
を使用してください。
この設問の採点結果を、受験者の最終得点に加えません。
ShuffleQuestions
オプションで設問をシャフルする場合でも、直前の設問の次にこの設問を配置します。
この設問を常にグループの先頭に配置します(「設問グループ」を参照してください)。
この設問を常にグループの末尾に配置します(「設問グループ」を参照してください)。
特定の設問や選択肢の開始文字(*
、**
、+
、-
)とオプションの後に、波括弧で囲んで採点基準を設定することができます。例えば次の例のようになりますが、採点基準の詳細については、「採点基準」を参照してください。
*{b=2,m=-1} フランスの首都はどれですか? + パリ - リール - マルセイユ - ワガドゥグー -{-2} ニューヨーク **[ordered,horiz,id=positive]{haut=1} 以下の数のうち、正の数はどれですか? - -2 + 2 + 10
次の例のように<
と>
で囲むことにより、記述式の設問(「記述式設問」参照)を定義することができます:
*<lines=4> 月について述べよ。 -[O]{0} 誤り -[P]{1} 部分点 +[V]{2} 正解
以下のグローバルオプションを使用することも検討すべきです:
別紙答案用紙に記入するよう指示するテキスト(関連する場合のみ)。
採点用ボックスに記入しないようボックス脇に表示するテキスト。
文章はどこで切って次の行に続けても(それが空行であっても)、それがオプションや次の設問文や選択肢の開始と混同さえされなければかまいません。例として次の設問を見てください:
* 2 + 2はいくつですか? - 0 + 4 - 10
これは正しいAMC-TXTの設問ですが、これは意図したとおりには扱われません。それは、2行目が、1行目の続きと認識されず、この設問の最初の選択肢の形式になっているためです!
同様の問題は次のAMC-TXTの設問でも発生します。ここでは、「Gershwin:
」が全体オプションの定義とみなされてしまいます。
* みなさんは、George Gershwin: (作曲家)を知っています。 彼が生まれたのは何年ですか? + 1898年 - 1892年 - 1902年
正しい書き方は次のようになります:
* みなさんは、George Gershwin: (作曲家)を知っています。 彼が生まれたのは何年ですか? + 1898年 - 1892年 - 1902年
空行があると改行が挿入されます:
Presentation: タイトル 試験の説明。 ** 難問です。 空には星が何個ありますか? - 1個 - 2個 - 何千万個も
逐語的なブロック(プログラムのコードのような)を得るには、それを[verbatim]
と[/verbatim]
で囲みます:
* 次のプログラムは何を出力しますか? [verbatim] main( ) { printf("hello, world\n"); } [/verbatim] + [| hello, world |] - [| hello |] - [| world |]
太字のテキストを出力するには、それを[*
と*]
で囲みます。斜体のテキストを出力するには、それを[_
と_]
で囲みます。タイプライターのテキストを出力するには、それを[|
と|]
で囲みます。アンダーラインのテキストを出力するには、それを[/
と/]
で囲みます。
* [_フランス_]の[*首都*]はどこですか? + パリ - リール - マルセイユ
次の構文を用いて文書に画像を追加することができます:
![height=2cm]images/bird.png!
これにより、プロジェクトディレクトリにある画像images/bird.png
が、2cmの高さで追加されます。角括弧内で使用できるオプションはLaTeXコマンド\includegraphicsのオプションと同じです
(例えばwidth=3cm
やkeepaspectratio
)。横幅の3/4の幅で画像をセンタリングしたい場合は、次のようにします。
!{center}[width=.75\linewidth]images/map.pdf!
文書内に小さなLaTeXコード片を置くには、次のように二重の角括弧内にそれを入れます:
[[\multiSymbole{}]]の記号のある設問の正解は1個とは限りません。0個の場合や複数の場合があります。
次の構文により、複数の設問をグループに入れ、シャフルしても離ればなれにならないようにできます:
*( マーチン・ルーサー・キングに関する問題 * 生年はいつですか? - 1901年 + 1929年 - 1968年 * 没年はいつですか? - 1945年 - 1515年 + 1968年 - 1999年 * どこで生まれましたか? + アトランタ - メンフィス - ニューヨーク *) マーチン・ルーサー・キングに関する問題はここまで
次のように、グループにオプションを指定することができます:
*([shuffle=false,columns=2] マーチン・ルーサー・キングに関する問題
以下のオプションが使用できます:
xxx
グループ内の設問をシャフルするかどうかを、true
かfalse
で示します。デフォルト値はグローバルなShuffleQuestions
オプションから得ます。
n
グループの設問のカラム数。
nom
グループに名前をつけます(内部的な事情)。
n
このオプションによりグループの先頭のn
個の設問だけが使用されます。設問がシャフルされている場合は、グループからn
個の設問をランダムに選べるようになります。
注記 | |
---|---|
|
dimen
グループを開始するのに必要な高さを(4cm
のように単位を付けて)指定します。現在のページの残りの垂直スペースがこれより少なければ、グループを次のページから開始します。
アラビア語で試験問題を作成するのは少し特殊です。もちろん次のオプションを用います。
Lang: AR
さらに、以下の全体オプションを使用することができます:
アラビア語テキストに用いるフォントです。デフォルト値はArabEyesプロジェクト(debian/ubuntuではttf-arabeyesパッケージにあります)のフォントRasheeqです。
注記 | |
---|---|
非アラビア文字を挿入するには、 |
日本語の試験問題は次のオプションを用いて生成することができます。
Lang: JA
AMCは、生成されるLaTeXソースにいくらか調整を行い、日本語テキストが処理できるようにします。
警告 | |
---|---|
この場合、AMCはAMC-TXTソースファイルから作られたLaTeXファイルを処理するのにplatexコマンドを用います。これには、最近のバージョンのplatexが必要です。いくつかの旧版linuxディストリビューションに含まれているtexlive 2009に付属のplatexは、AMCに対応していません。 |
次のようにして他のファイルをインクルードできます:
IncludeFile: file-to-include.txt
警告 | |
---|---|
異なるプロジェクトから同じファイルをインクルードするときは十分に注意してください!仮にプロジェクトAとBから |