マクロツイーター

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

TeX

TeX で例の素数をアレする話

TeX

最大記録素数(Largest Known Prime)の記録を更新する、49 番目のメルセンヌ素数が発見されたそうである。 Largest Known Prime, 49th Known Mersenne Prime Found!! 以下の映像をみると、この素数 274207281 − 1 の値を印刷して製本した冊子(3 分冊)が登…

きょうの LuaTeX (3) ー \mathstyle

\mathstyle : [展開可能] 現在の数式スタイルを表す整数(の十進表記のトークン列)に展開される。 値01234567−1 スタイルDD′TT′SS′SSSS′非数式 ※「スタイル」の記号の意味については以前の記事を参照。 某アドベントカレンダーの記事で詳しく解説してい…

例の BXbase の何かの話(2)

TeX

(前回の続き) さて、ここまでに行った判定手順では入力漢字コードが「自動判定」である場合を扱えていない。実際に「自動判定」である場合に pxbsjc.def を読み込むと、euc であると判定される。そこで、\bxInputEncoding ではもう一つ判定用のファイルを…

例の BXbase の何かの話(1)

TeX

アレForum のアレについて。 bxjaprnindパッケージが処理できない(アレForum) アレのコードが何をするものなのか気になる、という人のための解説。 \bxInputJaEncoding の仕様の話 bxtoolbox パッケージは「便利マクロ集」なので提供される機能は雑多であ…

きょうの LuaTeX(2) ― \crampeddisplaystyle 等

\crampeddisplaystyle [一般命令]: 数式スタイルを「“cramped”な別行立てスタイル」に変更する。 \crampedtextstyle/\crampedscriptstyle/\crampedscriptscriptstyle [一般命令]: 前項と同様。“cramped”なテキスト/添字/二重添字スタイルに変更す…

TeX でもっともっと Quine する話(3)

TeX

(前回の続き) DVI で Quine できた話 というわけで、先述の方針に従って、実際に「DVI で Quine する」やつを作ってみた。 [teqgen.tex](Quine 生成器) ! \catcode13=12! \toks0{\output{\setbox0\box255 \shipout\hbox{% \special{ps::(! \catcode13=12…

TeX でもっともっと Quine する話(2)

TeX

(前回の続き) それでも DVI で Quine したい話 だがしかし完全に希望が無くなったわけではない。「DVI で Quine」が無理なのは、飽くまで“普通の”plain TeX や LaTeX においての話に過ぎなくて、TeX のフォーマットは他にも色々ある。 例えば画期的なフォ…

TeX でもっともっと Quine する話(1)

TeX

前回の記事では次のようなタイプの「TeX 言語の Quine」を作った。 元の TeX 文書ファイルと生成される PDF ファイルの内容がバイナリで一致する。 しかしこれは pdfTeX エンジンを使うことを前提としている。「(Knuth の)元祖 TeX」で同様のことはできな…

TeX でもっと Quine する話

TeX

「TeX で Quine する件」に関する更なる話。 Quine の“出力”って何 Quine とは「自分自身を出力するプログラム」、もう少し厳密にいうと「プログラムのソースコードのテキストと、そのプログラムを実行した際の“出力”のテキストが一致する」ようなプログラム…

texadvent2015 の記事ではないものセレクション

TeX

TeX & LaTeX Advent Calendar 2015 の記事ではないものを列挙したい。ただしこの条件に当てはまるもの自体はたくさんあって、例えば“紫色の牛”は texadvent2015 の記事ではない(もちろんカラスでもない)。従って、全部挙げることは諦めてチョットだけ挙げ…

2016 年のパズル年賀状

今年の年賀状。 以前に述べたとおり、年賀状にはその年の数に関連した数学パズルを載せるのが通例である。*1しかし去年はパズルを作っている気力が 1 ポイント*2もなかったので、3 年前に作っていたネタで済ませた。 肝心のパズル問題の部分の文字がチョット…

例の texadvent2015 の adventcal.tex の話

TeX

今年も例によって、某アドベントカレンダーの某フィナーレにアレな TeX ソースが載っていますね。 adventcal.tex (Gist:zr-tex8r) [adventcal.tex] \relax \expandafter \expandafter \expandafter \relax \catcode \lq \z \active \let \k \catcode \charde…

今年も Merry TeXmas! ― \end{texadvent2015}

TeX

☃ TeX & LaTeX Advent Calendar ☃ 2015/12/01 〜 2015/12/25 〜今さら人に聞けない、TeXのキホン〜 TeX & LaTeX アドベントカレンダー 2015 * * * ☃ 祝! アドベントカレンダー完走! ☃ []\relax \expandafter \expandafter \expandafter \relax \catcode \…

ヤバくない \text 命令を作る話(補足)

TeX

(前回の続き) ヤバくない \text 命令の作り方 bxamstext パッケージの「2 パス処理」を実現するのに zref パッケージをどのように使ったか、について概説することにする。(例の記事を読んでいることを前提とする。) プロパティとラベルの使用に関する方…

今さら人に聞けない zref パッケージのキホン(3)

TeX

(前回の続き) zref のうまみ ところで、実際に完成した lastdo.sty のコードについて、ネタ元の某フォーラムにある回答に載せられている実装と比較すると、zref の枠組を利用したにも関わらずコードがあまり簡単になっていないようにも見える。この課題で …

今さら人に聞けない zref パッケージのキホン(2)

TeX

(前回の続き) ラベルを置く 次に「文書の最後にラベル“lastdo:”を置く」処理を実装する。このために、「文書の最後に実行されるフック」である \AtEndDocuemnt を利用する。\AtEndDocuemnt{\zref@labelbylist{lastdo:}{LastDo}}ラベルを置く命令が \zref@l…

今さら人に聞けない zref パッケージのキホン(1)

TeX

↑誰も聞いてないって……。 ……というツッコミはさて措き。前回の記事のネタで登場した zref パッケージは「極めて難解でかつ便利なパッケージ」だと思うので、それについて解説する。 幸せな LaTeX 者の皆さんへ 以下の節では zref パッケージの「開発者向けの…

plain TeX でマイナンバーのアレをアレする話

TeX

先日のことである。この上ない幸せな気分で Twitter を眺めていたら……。 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id…

TeX 者のための、“LaTeX の引数の規則”のキホン

TeX

[ステマ] ☃ TeX & LaTeX Advent Calendar ☃ 2015/12/01 〜 2015/12/25 〜今さら人に聞けない、TeXのキホン〜 TeX & LaTeX アドベントカレンダー 2015 * * * 素敵な記事が連日届けられている TeX & LaTeX Advent Calendar の、初日のチョットアレな記事に…

やっぱりアドベントがはじまった ― \begin{texadvent2015}

TeX

☃ TeX & LaTeX Advent Calendar ☃ 2015/12/01 〜 2015/12/25 〜TeX で笑おう、TeX で騒ごう〜 * * * TeX & LaTeX Advent Calendar 2015 TeX 界のおける年末の恒例イベントとなりつつある(?)アドベントカレンダーが今年も始まりました。 重点テーマ 今年の…

dvipdfmx の tounicode で ToUnicode されるのはどれか

TeX

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

/Rotate な画像は「回転した画像」か

TeX

再び「/Rotate な PDF を pdf:epdf する件」に関する話。 先の記事で述べた通り、現状の dvipdfmx は /Rotate 指定をもつ PDF 画像を(pdf:epdf 命令で)挿入すると、(「/Rotate は未対応です」という警告メッセージが出て)/Rotate 指定が無視される、とい…

/Rotate する pdf:epdf に関するメモ

TeX

dvipdfmx が /Rotate 指定付きの PDF 画像の挿入に対応させる場合、仕様はどうすべきか、という話。 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js =…

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

TeX

昨年(2014 年)の「TeX & LaTeX Advent Calendar」はこんな感じでした。 12/01zr_tex8r xparse パッケージでスゴイ LaTeX マクロを作ろう! 12/02golden_lucky LaTeX で git のメタ情報を使うパッケージ 12/03doraTeX dvipdfmx で複数ページPDF/AIファイル…

今年も結局 TeX で Advent Calendar する件について

TeX

やります! TeX & LaTeX Advent Calendar 2015 TeX & LaTeX Advent Calendar 2015 とっておきの TeX/LaTeX ネタを皆で持ち寄って楽しむ 「TeX & LaTeX Advent Calendar」 今年で 4 回目の開催となります。 皆さんの、心をこめたネタをお待ちしております…

にっき〠

TeX

きょうは「TeX ユーザの集い 2015」のようななにかにいきました。チョット \expandafter が足りないとおもいました。でもたのしかったです。 関連記事 にっき☃ にっき🍣 参考 にっき♪ ←本家

空白文字入りファイル名の画像を extractbb したい話 (2)

TeX

(前回の続き) extractbb からパイプ入力する場合 実は話はここでもまだ終わってないのである。何故かと言えば、最近の graphicx パッケージの dvipdfmx 用ドライバファイルでは extractbb の出力をパイプ入力を利用して読み込んでいるからである。\input "…

空白文字入りファイル名の画像を extractbb したい話 (1)

TeX

「graphicx パッケージ + dvipdfmx ドライバの環境において、空白入りのファイル名をもつ画像ファイルを扱えるようにする」という課題について、少し真剣に考えてみる。最大の難点は「extractbb の自動実行」の部分であろうから、まずそれについて考えること…

TeX コマンドの引数を理解したい話(補足)

TeX

(前回の続き) 蛇足事項 コマンド行の引数の先頭が「\」で無ければ、“\input を”挿入する、という規則についての、諸々の蛇足。 ここの“\input”は「\input という制御綴のトークン」ではなく「プリミティブの \input のトークン」のことである。例えばlatex…

TeX コマンドの引数を理解したい話

TeX

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…