Skip to content

Instantly share code, notes, and snippets.

View zr-tex8r's full-sized avatar
💭
🍣🦆⛄

Takayuki YATO zr-tex8r

💭
🍣🦆⛄
View GitHub Profile
@zr-tex8r
zr-tex8r / whatisthis
Created December 12, 2023 15:07
A document source that can be compiled both as plain TeX and Typst (polyglot)
// \begingroup \catcode`\#=12
#let s = ```
\endgroup \newdimen\pwd \newdimen\pht
\pwd=160bp \pht=90bp
\ifnum\ifx\pdfoutput\unDef0\else\pdfoutput\fi>0
\pdfpagewidth=\pwd \pdfpageheight=\pht \let\os\relax
\else \def\os{\special{papersize=\the\pwd,\the\pht}}\fi
\shipout\vbox to\pht{\os \font\ff=cmr10 at 36bp \vskip-1inplus1fil
\moveleft1in\hbox to\pwd{\hfil\ff \TeX!!\hfil}\vskip1inplus1fil}
\output{\setbox0\box255\deadcycles=0}\bye
@zr-tex8r
zr-tex8r / 11README.md
Last active November 11, 2023 04:38
sc1Typst ― もっともっと画期的なTypst用文書テンプレート

sc1Typst ― もっともっと画期的なTypst用文書テンプレート

画期的なTeXフォーマットである[1TeX]のコンセプトを踏襲しつつ、さらに画期的になるように抜本的に仕様を見直して作製された、[Typst]用の文書テンプレート。

前提環境

  • Typst: 0.8.0~0.9.0版
  • [原ノ味フォント][haranoaji]

インストール

@zr-tex8r
zr-tex8r / 00README.md
Created September 24, 2023 07:50
TeX:チョット読みにくいFizzBuzzプログラム

チョット読みにくいFizzBuzzプログラム🙃

実行方法

plain TeX専用である(LaTeXでは動かない)。

fizzbuzz.tex自体は「ライブラリ」であり、これを読み込むと\FizzBuzzマクロが定義される。

  • \FizzBuzz{<整数n>}: 1からnまでのFizzBuzz文字列を出力する。
@zr-tex8r
zr-tex8r / example-1.tex
Last active August 8, 2023 13:58
LaTeX:“Macのヒラギノ”で平和に(u)pLaTeXするやつ(※ただし画期的)
% upLaTeX+dvipdfmx用の横組みの文書の例
\documentclass[uplatex,dvipdfmx,a4paper]{jsarticle}
\usepackage{schira}
\begin{document}
吾輩は{\schira}である。
意味はまだない。
\end{document}
@zr-tex8r
zr-tex8r / bxdpx-tchack.sty
Created July 1, 2023 08:19
LaTeX: Hack for top-level color changes with dvipdfmx
% bxdpx-tchack.sty
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bxdpx-tchack}[2023/07/01 v0.1]
\def\bxqcx@pkgname{bxdpx-tchack}
\ifx\currentgrouplevel\@undefined
\PackageError\bxqcx@pkgname{e-TeX extension not supported}\@ehc
\expandafter\endgroup\fi\relax
\AtBeginDocument{%
\def\bxqcx@org@set@color{\special{color pop}}
\ifx\bxqcx@org@set@color\reset@color
@zr-tex8r
zr-tex8r / nabeazz.typ
Created June 11, 2023 04:28
Typst:NabeAzzする文書
#import "zrsimple.typ"
#show: zrsimple.doc.with(
paper: "a5",
title: "NabeAzz with Typst",
author: "ZR"
)
#let aho-font = "Allura"
#let nabeazz(lmt) = {
@zr-tex8r
zr-tex8r / ddsk.typ
Created June 11, 2023 04:26
Typst:ドドスコ(ラブ注入♡)する文書
#import "zrjasimple.typ"
#show: zrjasimple.doc.with(
title: "Typst でドドスコしてみた",
author: "某 ZR"
)
// ddsk(seed)は, 乱数種を seed としたときの
// "ドドスコ問題"の出力の文字列.
#let ddsk(seed) = {
@zr-tex8r
zr-tex8r / scjaart0.typ
Last active June 8, 2023 14:22
Typst:日本語入力に対応したテンプレート(※ただし画期的)
#let doc(title: "", author: "", body) = {
set document(author: author, title: "☃")
set page(paper: "a5", numbering: none)
set text(size: 320pt)
v(2fr)
align(center)[#emoji.snowman.snow]
v(3fr)
}
@zr-tex8r
zr-tex8r / 00README-quiz.md
Last active May 31, 2023 10:04
\futurelet 芸人クイズ

問題

ファイルquiz.texのコードは
「引数に指定したトークン列に“ある変換”を適用した結果のトークン列を\Parsedに代入する」
という仕様のマクロ\Parseの実装である。

コードを読んで“ある変換”の内容を把握した上で、\Parse\futurelet使わずに実装せよ。

※LaTeXまたはplain TeXを前提とする。

@zr-tex8r
zr-tex8r / sample.tex
Created January 20, 2023 04:51
LuaLaTeX+LuaTeX-jaの下でイロイロな文字を出力してみるやつ
% LuaLaTeX文書; 文字コードはUTF-8
\documentclass[a4paper]{ltjsarticle}
\usepackage[noto-jp]{luatexja-preset}
% 欧文はLatin Modernのまま
\usepackage{newunicodechar,luacode}
%↓入力中のU+FFFDを一旦U+F8FDに置き換える
\begin{luacode*}
luatexbase.add_to_callback('process_input_buffer', function (s)
if s:match('\xef\xbf\xbd') then
return s:gsub('\xef\xbf\xbd', '\xef\xa3\xbd')