Re: Babel: Japaneseオプション

名前: ZR
日時: 2007-12-03 22:03:31
IPアドレス: 123.225.37.*

>>50357 先の書き込みは自分の考えたことを書き連ねただけなので読み辛かったかも しれません。もう一度 japanese.dtx を読み返して %<japanese.dtx;抜粋> % japaneseパッケージは日本語による見出し語と日付を出力するためのマクロ % 定義しています。\babel のオプションの最後で日本語を指定します。 %<EOF> これで「このパッケージが何か」の十分な説明になっていると感じました。 だからこれを README にも書いておくとよいかもしれません。 他に気づいた点を列挙します。 * \captionsjapanese の行末 %<japanese.ldf;抜粋> \addto\captionsjapanese{% \def\prepartname{第} \def\postpartnam{部} \def\prechaptername{第} \def\postchaptername{章} \def\presectionname{}% 第 \def\postsectionname{}% 節 %<END> 最初の 4 つの \def の行末の % が抜けています。 * \heisei カウンタ %<japanese.ldf;抜粋> \newcount\heisei \heisei\year \advance\heisei-1988\relax \def\datejapanese{% \def\today{% \if西暦% \number\year 年% \number\month 月% \number\day 日% \else 平成\number\heisei 年% \number\month 月% \number\day 日% \fi}} %<END> japanese が想定する一番普通の設定では \heisei は既に存在しています。だから ここでまた \heisei にカウンタを割り当てるのは物凄く無駄な感じがします。 といって \heisei が「必ず」あるとは限らないので場合分けをするとなると 少し面倒なことになります。次のようにすればいいと思います。 {\advance\year-1988\relax \xdef\the@heisei{\the\year}} \def\datejapanese{% \def\today{% \if西暦% \number\year 年% \number\month 月% \number\day 日% \else 平成\the@heisei 年% \number\month 月% \number\day 日% \fi}} * sample.tex に関して感じたこと - 「表のキャプションの例」は \yes の外に出した方がいい。 - 日本語に戻ってキャプションを出す例が欲しい。 # それは「想定外」だという先の発言と矛盾してますが…。 - 一応非日本語話者も読むので表現は正確な方がいいかと(お節介)。 - あと、"-- --" という妙な句読点も気になります。 --- orig/sample.tex Sun Dec 02 22:20:20 2007 +++ sample.tex Mon Dec 03 21:31:35 2007 @@ -13,9 +13,9 @@ \documentclass{jbook} \usepackage[german,english,japanese]{babel} \makeatletter -\def\tbcaption{\def\@captype{table}\caption} +\def\tbcaption{\def\@captype{table}\caption{キャプションの例}} \makeatother -\def\yes{--- はい。今日は\today です。 \tbcaption{キャプションの例}} +\def\yes{--- はい。今日は\today です。} \def\no{--- いいえ。} \def\TEXT{Textverarbeitung mit einem Rechner kann in vielf\"altiger Weise erfolgen. Eigenschaften und Leistungsf\"ahigkeit sind hierbei weniger @@ -36,6 +36,7 @@ \item ここで英語(\texttt{english})に変更します。(languageの値は\the\language) \TEXT +\tbcaption ここは英語? \iflanguage{english}{\yes}{\no}\par -- --ドイツ語? \iflanguage{german}{\yes}{\no}\par @@ -44,9 +45,10 @@ ※ \verb:\adddialect\l@japanese0: と設定しているため,日本語?も「はい」となる。 \sg -\item ここでドイツ語(\texttt{german})変更します。(languageの値は\the\language) +\item ここでドイツ語(\texttt{german})に変更します。(languageの値は\the\language) \TEXT +\tbcaption ここは英語? \iflanguage{english}{\yes}{\no}\par -- --ドイツ語? \iflanguage{german}{\yes}{\no}\par @@ -56,7 +58,10 @@ なお,新正書法(\texttt{ngerman})の分綴は\texttt{Leis-tungs-f\"a-hig-keit}となる。 \sj -\item \verb:\和暦: はデフォルトの日付(西暦)を和暦「\和暦\today 」で表示します。 +\item ここで日本語(\texttt{japanese})に変更します。(languageの値は\the\language) +\tbcaption + +\item \verb:\和暦: は日付の表示をデフォルトの西暦から和暦「\和暦\today 」に変更します。 \end{itemize} \end{document}

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)