マクロツイーター

はてダから移行した記事の表示が崩れてますが、そのうちに直せればいいのに(えっ)

LuaTeX の検索結果:

例の「verb の呪い」を LuaTeX の力で打破する(bxrawstr パッケージ)

TeX

…できないわけです。 LuaTeX の力を使ってみる 「verb の呪い」を打破して「どこでも使える verb 系命令」を実装することはできないのでしょうか。一見すると「本質的に解決困難な問題」のようにも思えますが、今はまだ 12 月ですので、もう少し一般の*2解決策を探ってみましょう。確かに TeX 言語での解決は無理ですが、エンジンを LuaTeX に限定するのであれば状況は変わります。LuaTeX では Lua 言語の力を利用して「TeX の入力規則を変える」ことができる…

非常にアドベントがはじまった ― \begin{texadvent2018}

TeX

…)TeX しよう 「LuaTeX はいいぞ」とよく言われますが、具体的に何がいいのかは十分に知られていません。熱狂的な LuaTeX ファンの皆さん、是非とも LuaTeX の魅力について熱く語りましょう! ※例によって、重点テーマは「必須」ではありません。あんまり LuaTeX でない TeX ネタ、さっぱり LuaTeX でない TeXネタ、なんでも歓迎しております。 で、初日のネタは こちらになります。 自分がどのLaTeXを使ってるか知りたい話 (Qiita) まだ参…

今年も非常に TeX で Advent Calendar する件について

TeX

…しいエンジンである LuaTeX に関心を持つ人も増えていますが、 残念ながら、まだまだ情報(特に日本語文書作成に関するもの)が不足しているように思います。 LuaTeX/LuaLaTeX に関する知見を広めていきましょう。 LuaTeX がもっと普及すべきだと思っている皆さん、その理想の実現に必要なのはあなたの書く貴重な記事です。TeX 界隈の人々に「LuaTeX を使ってみよう」と思わせるような、そんな素敵な記事を書いてみましょう。 例によって「重点テーマ」は「制限」では…

unicode-math を完全に理解したい話(1)

…た」の図#TeX #LuaTeX ツイートへのリンク unicode-math パッケージにおける数式フォントの扱いについて学習中なので、学習メモをてきとーに書き流しておく。 ※数式フォントの中でも、特に数式英字フォント(数字、ラテン文字、ギリシャ文字の類)に焦点を当てている。 前提知識 従来の LaTeX における数式フォントの扱い 従来の LaTeX にいて、数式フォントは次の“軸”をもつ。 数式英字(math alphabet)フォントの選択 無指定:この場合、字種ごと…

そういえば ZXjafont が新しくなった(v0.4)

…Xchfon とか luatexja-preset の機能にあるような「和文フォントのプリセット設定」を XeLaTeX + zxjatype の環境で行うためのもの。*1% XeLaTeX文書; UTF-8 \documentclass{article} \usepackage{zxjatype}% 欧文文書で部分的に日本語を使う \usepackage[ms]{zxjafont}% 和文をMSフォントに \begin{document} % 欧文は変わらない(Latin …

LuaLaTeX で和文しない速さを調べてみた

…9 回実行して所要時間を計測、その中間にある 5 回分の平均値を求めた。 実験結果 pdfLaTeX: 1.497 秒 LuaLateX: 5.560 秒 LuaLaTeX の方が 3.71 倍遅い。 ※生データは result.txt の通り。 まとめ というわけで、「LuaTeX(LuaTeX-ja ではない)のタイプセットは遅い」という風評が打破されて、代わりに「LuaTeX(LuaTeX-ja ではない)のタイプセットは遅い」という知見が確立された。めでたしめでたし。

Windows な XeTeX で TEXMFLOCAL なフォント名する方法

TeX

…nf.d ディレクトリの中には 51-local.conf(“local.conf”の読込を指示するもの)だけが置かれている。 なので結局、追加の設定は $TEXMFVAR/fonts/conf/local.conf に書くのが正しい、ということになりそう。 *1:LuaTeX + luaotfload の場合はまた話が違う。 *2:Linux 上の XeTeX は OS の Fontconfig を利用していて、macOS 上の XeTeX は OS の機能を利用している。

新しい bxtexlogo の話(v0.4)

…マイチなことになる。LuaTeX-ja で欧文を和文と同じフォントに揃えている場合に起こりやすい。*1% LuaLaTeX; UTF-8 \documentclass[lualatex,js=standard,a4paper]{bxjsarticle} \usepackage{luatexja-fontspec,xcolor} % みんなだいすき創英角ポップ体 \setmainjfont{HGSSoeikakupoptai} \setmainfont{HGSSoeikak…

BXjscls の新しいやつ(v1.7c)

…aTeX の場合は、luatexja-preset パッケージでのプリセット名は sourcehan なので、次のようなクラス宣言が必要である。% LuaLaTeX \documentclass[lualatex,ja=standard,jafont=sourcehan]{bxjsarticle} 従って、autodetect-engine を使う必要がある場面は、jafont で「Source Han の OTC 版」を指定することができなず、不便である。 もちろん、こうい…

新しい bxjscls の話をもうチョット

…everyparhook クラスオプション 段落冒頭の括弧類の空き補正のために入れる“段落冒頭のフック”をどのように実現するか。(詳しい話は後日に……書ければいいね。) everyparhook=compat: JS クラスと同じ方式。 everyparhook=modern: \everypar を乗っ取る方式。LuaTeX-ja の jsclasses 互換クラスと同様。 everyparhook=none: “段落冒頭のフック”を無効にする。つまり空き補正が行われない。

ちゃっかりアドベントがはじまった ― \begin{texadvent2017}

TeX

…ナル組日本語文書 (Qiita) まだ参加できます! TeX & LaTeX Advent Calendar 2017(#texadvent2017)は まだまだ参加者募集中です。 LaTeX なネタ、TeX 言語なネタ、expl3 なネタ、TeX Live なネタ、dvipdfmx なネタ、KaTeX なネタ、LuaTeX なネタ、lwarp なネタ、その他ナントカカントカ、お持ちの方はぜひぜひ、 ご参加おねがいします! もう空席が残りわずかとなっています。登録はお早めに!

去年のアレ(ナニカ)を振り返ってみる

TeX

[ステマ] ☃︎ TeX & LaTeX Advent Calendar ☃︎ 2017/12/01 〜 2017/12/25 〜TeXでつくるアレ〜 TeX & LaTeX アドベントカレンダー 2017 * * * 昨年(2016 年)の「TeX & LaTeX Advent Calendar」はこんな感じでした。 12/01zr_tex8rLaTeXで現在のページ番号を取得・出力する話 12/02doraTeXSierra時代の TeX Live 環境 12/03hak…

BXjscls の新しいやつ(v1.7)

…ジンが XeTeX/LuaTeX の場合、defaultfontfeatures で Ligatures=TeX を有効にしている。))ところが、日本語 LaTeX においては一般に(xeCJK や LuaTeX-ja も含めて)、「Unicode 文字(左側)は和文扱い、“LaTeX 式の入力”(右側)は欧文扱い」という取扱がされている。従って、このままでは上記の 5 種の約物が常に欧文扱いになってしまい不都合である。TeXはアレ……、いや違う、TeXは“超絶アレ”だ。 こ…

新しい pxjahyper でもっと日本語 PDF 情報する話

…いかをよく確認してほしい。 *1:☃とポーランド語の両方を UTF-8 で直接入力できるようにするのは少し面倒であるが。 *2:LuaTeX の場合、非 ASCII 文字を PDF 文字列として直接書き出すと UTF-8 になる。しかし PDF の仕様としては UTF-16BE で書き出す必要があるため、あらかじめ符号化方式の変換を行ってから書き出す必要があるのである。 *3:pdfTeX エンジンと判定されて「文字は ASCII の範囲しかない」という前提で処理されるため。

LuaTeX が実はそんなに遅くないかも知れない件

…var i=0;i LuaTeX といえば「スゴイけど遅い」という印象がある。しかし最近は随分と速くなった感じもしている。というわけで、実際に「日本語文書のコンパイル速度の比較」をしてみた。 ※詳細についてはこちら。 LaTeX: 日本語文書のコンパイル所要時間比較(Gist/zr-tex8r) 計測方法 テスト用の文書はコレ。BXJS クラスの標準設定を使っていて、A4 で 9 ページある。% BXJSクラスを使用してエンジンを自動判定させる. \documentclass…

BXjscls の新しいやつ(v1.5c)

…pxchfon や luatexja-preset などの外部のパッケージの機能を用いている。一方、これらのフォントプリセット設定のパッケージには「2004JIS 字形を優先する」ためのオプションが備わっている。ところが BXJS クラスにはそのようなオプションを有効化する手段を持っていない。このため、2004JIS 字形を優先したいという場合には jafont 指定は使えず、結局エンジンに依存する書き方が必要になっていた。((グローバルオプションを用いてパッケージのオプショ…

pxrubrica のもっと新しいやつ(v1.3)

…ment} その他 LuaTeX-ja の縦組に対応した。*4 (続く) *1:なぜか、CTAN でのバージョン情報(“Version”項)が「1.2」のままになっているのだが、実際には 1.3 版に更新されている。 *2:「朱鷺→とき」のように、各漢字ごとの読みがあるのではなく、熟語全体としてのみ読みがあるもの。 *3:モノルビ・熟語ルビは親文字一文字ごとの読みが指定されるので、親文字列の分解が必要となる。 *4:本来は 1.1 版の時点で対応しておくべきであったが、考慮が…

PXrubrica の新しいやつ(v1.1)

…uaLaTeX + LuaTeX-ja および XeLaTeX + xeCJK の環境では、全ての機能が利用できるはずである。*2 % XeLaTeX文書, 文字コードはUTF-8 \documentclass[xelatex,ja=standard,a5paper]{bxjsarticle} \usepackage{pxrubrica} % Lohit Fonts: https://pagure.io/lohit \newfontfamily{\fTaml}[Script=…

BXjscls の新しいやつ(v1.4)

…してほしい。 なお、LuaTeX-ja パッケージはそれ自身が和文数式ファミリの設定を行うので、LuaTeX-ja が使われている限りは数式中の和文文字は常に使える状態にある。従って、旧版の BXJS クラスでももちろん使える。無効化はできないので、disablejfam オプションはサポートされない(指定すると警告が出て無視される)。 BXJS クラス + XeLaTeX で和文の数式ができるようになった話 エンジンが XeLaTeX の場合は、既定では数式中の和文文字はサ…

e-TeX 拡張に依存するパッケージ

TeX

…XeTeX または LuaTeX 専用であるもの(fontspec、xeCJK、luacode、等)は除外する。 「他のパッケージやクラスから読み込まれる(開発者向けの)パッケージ」に焦点を当てていて、どちらかというと TeX on LaTeX 者向けの情報である。ソレ CJKfntef acronym atenddvi auto-pst-pdf autonum biblatex biditools bmpsize catchfile catoptions chemgreek…

【重要】TeXシステムの脆弱性の件

TeX

…(TeX、pTeX、LuaTeX、…)の種類。 フォーマット(plain TeX、LaTeX、…)の種類。*1 自分が MetaPost を使う(自分で起動する)ことがあるか。 TeX 配布の新しさ。 たとえ(この記事から見て)未来のもの(例えば“2017 年の最新版”)でも、ユーザの設定によっては【無制限 MetaPost 連携可能】になる可能性がある。*2 検査方法【無制限 MetaPost 連携可能】であるかを調べる方法。 コマンドシェルで以下のコマンドを実行する。 k…

LaTeX で 1TeX なロゴをする話

…る XeTeX や LuaTeX のロゴについては metalogo や hologo などのパッケージを利用すれば出力できる。ところが、1TeX の(画期的な)ロゴについては、その知名度の低さのため、それをサポートするパッケージが存在しないのである。 この悲しむべき事態を打破するため、作ってみた。 BXtexlogo パッケージ (GitHub:zr-tex8r) % pdfLaTeX document \documentclass[a4paper]{article} \u…

埋め込めないフォントを埋め込むとどうなるか

TeX

…ifdefined\luatexversion \message{[[LuaTeX]]} \input luaotfload.sty \font\ftest="[TestFont.ttf]" \else\ifnum\ifdefined\pdfoutput\pdfoutput\else0\fi>0 \message{[[pdfTeX]]} \pdfmapline{=cmtt10 TestFont "TeXBase1Encoding ReEncodeFont" <TestFont…

TeX で TTC フォントする件に関する素朴な疑問

TeX

…提 XeTeX や LuaTeX で TrueType/OpenType フォントを使う場合、フォントを「フォント名で指定する」ことも「ファイル名で指定する」ことも可能である。*1 [XeTeX]% plain XeTeX 文書 \font\fTestA="[ipam.ttf]" % ファイル名 "ipam.ttf" \font\fTestB="IPAMincho" % フォント名 "IPAMincho" [LuaTeX + luaotfload]% plain LuaTeX…

新しい bxpdfver パッケージ(v0.3)の話

…イバ(pdfTeX/LuaTeX/XeTeX/dvipdfmx)において、全ての機能が使えるようになった。 dvipdfmx/XeTeX で nocompress/noobjcompress できる話 従来の bxpdfver では、このうちの②と③の機能は pdfTeX/LuaTeX においてのみサポートされていて、XeTeX および dvipdfmx では使えなかった。このような制限がある理由は非常に単純で、「そもそも XeTeX/dvipdfmx において文書中で②や③…

LaTeX で \newfont したい話 (bxnewfont パッケージ)(補足)

…が、XeTeX や LuaTeX(+ luaotfload)においてはここに OpenType フォントの名前(および拡張子付のファイル名)を書くことができる。% plain XeTeX 文書 \font\fcomic="Comic Sans MS/I" {\fcomic Thnaks {\TeX}, and Good-bye!} \newfontx(*) 命令においてもフォント名の部分を \font や \newfont と同じ書式で書くことができる。% XeLaTeX 文…

BXjscls の新しいやつ(v1.2)

…れてドライバ指定は luatex となる。((ここで dvi=dvipdfmx の代わりに dvipdfmx を指定してしまうと、LuaLaTeX でコンパイルした場合に「ドライバ指定がおかしい!」と怒られる。)) この dvi オプションは以前に存在した「dvipdfmx-if-dvi」を他のドライバにも適用できるように一般化したものである。((今のところ、dvipdfmx-if-dvi は非推奨になったわけではないので、これを使っても(残念ながら)警告は出ない。)) ma…

とある LuaTeX クイズの正解

…。 This is LuaTeX, Version 0.95.0 (TeX Live 2016/W32TeX) restricted system commands enabled. (./quiz.tex LaTeX2e <2016/03/31> patch level 1 Babel <3.9r> and hyphenation patterns for 1 language(s) loaded. ……(中略)…… (see the transcript file for…

pTeX のプリミティブを把握したい話

TeX

…TeX、XeTeX、LuaTeX が「SyncTeX 拡張」をもつが, \synctex を持っているのは「e-TeX 拡張をもつもの」(つまり e- でない pTeX と upTeX 以外)に限られる。 pdfTeX 互換拡張プリミティブ \ifpdfprimitive \pdfcreationdate \pdffiledump \pdffilemoddate \pdffilesize \pdflastxpos \pdflastypos \pdfmdfivesum \pdf…

LaTeX でもっともっとカラー絵文字する話(bxcoloremoji v0.3a)

…document} LuaTeX-ja の縦組みモードにも対応している。 % LuaLaTeX 文書; 文字コードは UTF-8 \documentclass[a4paper]{ltjsarticle} \usepackage{graphicx} \usepackage{lltjext}% 組方向拡張 \begin{document} \parbox{5\zw}{夏は\coloremoji{☃}。} \end{document} CJK パッケージ対応 (pdf)LaTeX …