初めての ConTeXt Mark IV

ConTeXt (配布元:PRAGMA ADE web page: text)は、TeX 組版システム上の文書表現系の 1 つです。同様なものとしては、LaTeX がよく知られています。

ConTeXt Mark IV は、ConTeXt 文章を LuaTeX エンジンで組版します*1組版するコマンドは、context を使います。

$ context [filename]

さっそく、日本語を含む ConTeXt 文章を ConTeXt MkIV で組版できるか試してみました。
手元に TeX Live 2011 を準備して、以下の内容を test.tex で保存します。

%#!context test
\usemodule[simplefonts]

\setmainfont[hiraginominchopronw3]
\setsansfont[hiraginokakugothicpronw6]
\setmonofont[hiraginokakugothicpronw3]

\mainlanguage[ja]
\language[ja]
\starttext
Hello, \TeX{} World!

はじめてのCon\TeX{}tで日本語組版。
\stoptext

simplefonts は、Wolfgang Schuster 氏によって書かれたモジュールで、ConTeXt Mark IV でフォントを使うときの簡単なインターフェースを提供します。これは、XeLaTeX に対する fontspec パッケージに似たモジュールです。

\setmainfont, \setsansfont, \setmonofont には、それぞれ serif, sans, mono 書体を通常指定します。上記サンプルは、ヒラギノフォントを指定した場合の一例です。指定するフォント名は、「$ mtxrun --script fonts --list --all --patern='*'」から調べられます。たとえば、IPA フォントを探したい場合は、以下のようにします。

$ mtxrun --script fonts --list --all --patern='*' | grep ipa
ipaexgothic                                     ipaexgothic                                ipaexg.ttf
ipaexgothicnormal                               ipaexgothic                                ipaexg.ttf
ipaexmincho                                     ipaexmincho                                ipaexm.ttf
ipaexminchonormal                               ipaexmincho                                ipaexm.ttf
ipagothic                                       ipagothic                                  ipag.ttf
ipagothicnormal                                 ipagothic                                  ipag.ttf
ipamincho                                       ipamincho                                  ipam.ttf
ipaminchonormal                                 ipamincho                                  ipam.ttf
omegaserifipa                                   omegaserifipa                              omseip.afm
omegaserifipamedium                             omegaserifipa                              omseip.afm

$ context test を実行することで、test.pdf が得られます。



と、今日はここまで :)

実は、とある翻訳したい TeX 文章が ConTeXt MkIV で記述されていて、どうにかしたいと思って、ConTeXt MkIV を簡単に触ってみました。上記サンプルでは、もちろん和文フォントと欧文フォントを分けて組版していません。rangeを指定するなど、さらなる改善が必要です。

今回、ConTeXt Mark IV に触れるにあたり、ConTeXt garden http://contextgarden.net/ を大いに参照しました。ここには、ConTeXt に関する情報が十分に集まっております。

さてー、「はじめての ConTeXt MkIV」の次は何を書くか…。po4aで「po4a-gettextize -f context」ってか :)

[追記 2012-04-16]日本語が行分割できる

ZR さんから [id:zrbabbler:20120416:1334595982] を教えていただいた。

\setscript[hanzi]

結論!?:角藤さんのエスパー力はすごい! :)

*1:ConTeXt Mark II では、組版エンジンとして PDFTeX か XeTeX を指定して、texexec コマンドを実行することにより ConTeXt 文章を組版していました。

「CentOS 徹底入門【第3版】」を買ってみた

DVD付 CentOS徹底入門 第3版

DVD付 CentOS徹底入門 第3版

RHEL のサポート期間が標準で 10 年*1になることから、RHEL クローンである CentOS 5, 6 は長く使われるだろうことが容易に想像できます。これまで「CentOS 徹底入門」の第1版、第2版を持っていなかったので、CentOS 6.2 対応をうたっている「CentOS 徹底入門【第3版】」を買ってみました。

2 日ほどの行き帰りの電車で、ようやく全体に目を通せました。たしかに、本書は帯でうたっているとおりの「サーバ向け Linux ディストリビューションのスタンダード」にふさわしい内容です。本書を片手に作業すれば、サーバ運用の基本的なことから学べそうです。また、普通のサーバ入門書で書いていないような、実用的だけど基本的な設定が具体的に書かれてあり、実践的な書籍とも思いました。

ここでは、「CentOS 徹底入門【第3版】」について、メモったこと、感想などを書きます。

Chapter 2 CentOS のインストール

ISO イメージをダウンロードしたら、ぜひチェックサムや署名を確認しましょう!

p.10「2.1.1 ISO イメージファイルのダウンロード」には、CentOS の ISO イメージファイルのダウンロード方法が記載されています。でも、本当に正しい ISO イメージファイルをダウンロードしたか、できたかという確認の説明がありませんでした。

たとえば、JAISTミラーサイト http://ftp.jaist.ac.jp/pub/Linux/CentOS/ から、CentOS 6.2 x86_64 をダウンロードしてみます。目的の ISO イメージファイルは http://ftp.jaist.ac.jp/pub/Linux/CentOS/6.2/isos/x86_64/ にあります。

$ wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD1.iso
$ wget http://ftp.jaist.ac.jp/pub/Linux/CentOS/6.2/isos/x86_64/sha1sum.txt{,.asc}

sha1sum コマンドを利用して、ダウンロードした ISO イメージファイルと sha1sum.txt に格納されたハッシュ値を比べて、ISO イメージファイルに改変がないか検証できます。しかし、sha1sum.txt 自体に改変されていては無意味なので、GnuPG を使用したパッケージ署名の検証をします。

CentOS の公開鍵を取得します。CentOS のサイトからたどってもよいですし、Web サイトの http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6 やミラーの FTP サイト http://ftp.jaist.ac.jp/pub/Linux/CentOS/RPM-GPG-KEY-CentOS-6 から取得してもよいでしょう。

取得した公開鍵を取り込みます。

$ gpg --import RPM-GPG-KEY-CentOS-6
gpg: key C105B9DE: "CentOS-6 Key (CentOS 6 Official Signing Key) <centos-6-key@centos.org>" imported
gpg: Total number processed: 1
gpg:              imported: 1

sha1sum.txt ファイルの署名を検証します*2

$ gpg sha1sum.txt.asc 
File `sha1sum.txt' exists. Overwrite? (y/N) y
gpg: Signature made Sat Dec 17 23:39:50 2011 JST using RSA key ID C105B9DE
gpg: Good signature from "CentOS-6 Key (CentOS 6 Official Signing Key) <centos-6-key@centos.org>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: C1DA C52D 1664 E8A4 386D  BA43 0946 FCA2 C105 B9DE

「gpg: Good signature(正しい署名)」って言ってますね!

ダウンロードした ISO イメージファイルが改変されていたり、破損していないか、中途半端にダウンロードされていないかをsha1sum 値から確認します。

$ sha1sum -c sha1sum.txt
CentOS-6.2-x86_64-bin-DVD1.iso: OK
(省略)
USB のインストーラを作ってもいいかもですよ!

本書には、付録として、CentOS 6.2 i386 DVD-ROM が 1 枚付いています。いまどき、DVD-ROM からインストールするのでしょうか。USB に dd コマンドなどでインストーライメージを突っ込んで、USB ブートからインストーラを立ち上げないのでしょうか?ということで、SysLinux から USB インストーラを作りますかね。

でも、一番楽なのは、やっぱり p.33 以降のネットワークインストールですね(笑

Chapter 3 基本操作

基本的なことを懇切丁寧に解説してあるのも、本書の魅力です。

「表3.1:bash の基本操作コマンド」に「[Ctrl] + [f]、→」、「[Ctrl] + [b]、←」もほしぃーの!

表3.1 に「[Ctrl] + [a]」と「[Ctrl] + [e]」があるので、「[Ctrl] + [f]、→」、「[Ctrl] + [b]、←」も載ってほしいです。

ACL の解説が載っている!

「3.3.3 ACL」には、getfacl コマンドと setfacl コマンドの具体的な利用方法が載っています。ACL の解説は、入門であまり見られないと思います。

hoge(N)」⇔「$ man N hoge

「3.5.1 マニュアルの参照」には、man コマンドの使い方が載っています。本書のなかでしばしば「hoge(N)」の表記を目にするのですが、「hoge(N)」が何であるかの説明が見当たりませんでした。本書では、p.73で man コマンドの使い方と man マニュアルの section の説明があり、p.102 でいきなり「日本語の mke2fs(8) は更新が追いついておらず、」と出てきます。

したがいまして、「hoge(N)」の意味を、p.73 に載せてあると、より親切だと思います。

Chapter 4 ファイルシステム

man の原文と日本語訳、それは DocFest に任せろ(笑

翔泳社の中の人に交渉して、本書(のみならず、オープンソースに関係のある IT 系書籍)の白ページのどこかに、ドキュメント、翻訳系のコミュニティの現状や募集中の、広報ページをなんとか載せてもらえないかしらん(笑 先日の DocFest201202 - Doc-ja Archive Project では、JM のもときさんが大活躍だったことだし!*3

/dev/shm と tmpfs

「4.1.8 マウント、アンマウントと fstab」らへんに、「/dev/shm と tmpfs」の解説がコラムぐらいにちょこっと載っていてほしいです。

Chapter 5 ネットワークの基本コマンド

サーバ管理をやる人は ipcalc に頼らないで(笑

p.130 の COLUMN「ipcalc」、脳内変換でヨロー(笑

/etc/sudoers の解説が実践的!

p.163 にコラム「PAM」を設けていたり、root アカウントに関する注意喚起、sudo/su コマンドの使い分け、sudoers の具体的な設定方法など、実践的な解説が載っています。

Chapter 7 パッケージの管理とアップデート

Yum の話を除けば、Vine Linux でもそのまま解説になる章です。p.170 に「Vine Linux」の文字列が載っています。著者の方々に感謝いたします(笑

野良ビルドでも野良パッケージを作ろう!

「7.3 ソースからのインストール」には、"いつもの呪文" を唱えてインストールできるソフトウェアについて、ひとととおり解説されています。

一度は必ずといってよいほど、既存のパッケージや他の野良ビルドとのファイル衝突を起こしてしまいます。やはり、自前で RPM パッケージを作って、インストールし、管理するのがのぞましいと思います。

"いつもの呪文" を唱える程度でインストールできるソフトウェアを RPM パッケージにするのは、そんなに難しくないです。たとえば、第 6 回 Vine Linux ユーザの集い with LILO - RPM パッケージ作成ハンズオン - 。また、RPM パッケージハンズオンをやりたいなー。

Chapter 10 システム管理

root ユーザとしてのログインをできないようにしておくべき!

サーバ用途であれば、なおさらそうすべきだと思います。本書の解説にもある /etc/securetty ファイルを編集することで、コンソールからの root のログインを禁止できます。

さて、$ sudo vipw -s から /etc/shadow の root のパスワードを「*」にするとどうなるでしょうか?grub から single user mode でブートしてみるなど。

Chapter 12 システムリソースの監視とパフォーマンス管理

"いくつか" なのに、1 つ(noatime)しか紹介されていない(笑

「12.2.2 ディスクとファイルシステムのパフォーマンスチューニング」のリードには、「ここでは、ディスクのパフォーマンスを向上させるのに役立つ事項をいくつか紹介します。」と書かれています。ところが、ここには、「noatime オプション」しか、紹介されていません(笑

たぶん、誌面の都合などで、削ったのかもしれないのですが、ほかにどのようなチューニングが紹介されるのか、気になります。

Chapter 14 DNS サーバ

BIND もいいけど、Unbound と NSD もいいよ!

キャッシュサーバ Unbound Unbound とコンテンツサーバ NSD nlnetlabs.nl :: Home :: の解説が載っていたら、嬉しかったなー(笑

chroot

p.324「14.2.1 BIND を動かすための準備」に、「CentOS 6 には、chroot環境で動作する bind-chroot、(中略)が用意されています。chroot 版が用意されているのは、さまざまな攻撃からシステムを守るためです。ここでは、chroot 環境にBINDをセットアップしてみます。」という文章があります。

索引で引っ張っても、「chroot って何?」を説明した箇所がどこにも見当たりませんでした。傍注にでも、chroot の解説がちょこっとあれば、「chroot」を初めて知る人にとって、chroot 環境の理解に手助けできそうです。

Chapter 16 Web サーバ

ここでは、「Apache Web サーバ」を解説されています。nginx news についても、ちょこっと言及してあったらなー。

Chapter 17 SSH

OpenSSH サーバとクライアントの実用的な運用方法が記載されていて、はじめて SSH サーバを立てる方への説明として、コンパクトにまとまっていてオススメです。

Chapter 20 NFS

「20.3 NFS と Kerberos 認証」は、日本語ドキュメントとしてまとまっているものをあまり見かけません。Kerberos 5 のドキュメントは、本家にがっつりとあるけれども、今まで試す機会がなかった。本書を購入したことをきっかけに、近いうちにでも Vine Linux で Kerberos 5 を試してみよう。えっ、CentOS 6 で試さないの!?(笑

その他

Samba や vsftpd が載っているのであれば、Netatalk - Networking Apple Macintosh through Open Source も載っていてほしいわん。たとえば、Netatalk で Time Machine サーバを作るぞとか(おぃ ふつーに AFTPD でいいから(笑

NIS(Network Information Service)は、システム管理のところで載っていてもよさそうですが、全く出てきませんね。索引にすら、ありません。

本書の台割は、16 折 35 台*4と推察できます。奥付の直前に、白が全くないことから、何か内容を大幅に追加するには、8 折か 16 折の台を一つ増やすのでしょうか?いや、増刷でそんなことをしないと思いますよ、はい。

おまけ:「Vine Linux 徹底入門」、あるの?

……、もし出るとしたら、どんな内容がよいかな?

デスクトップとサーバの両方が主要な柱で、TeX, Emacs, そして TeX, ... 話題が尽きそうにない(笑

\vspace{1zw} が 1 行を空けない件

%#!platex hoge && dvipdfmx hoge && acroread hoge.pdf
\documentclass{jarticle}
\begin{document}
\hfil
\begin{minipage}[t]{3zw}
□□□
\vskip1zw
□□□
\end{minipage}\hfil
\begin{minipage}[t]{3zw}
□□□
\vskip\Cvs
□□□
\end{minipage}\hfil
\begin{minipage}[t]{3zw}
□□□
\vskip\baselineskip
□□□
\end{minipage}\hfil
\begin{minipage}[t]{3zw}
□□□\par
□□□\par
□□□
\end{minipage}
\end{document}

MacBook Air (Mid 2011) に VineSeed を入れてしまった

去年の夏に買った MacBook Air (Mid 2011) [id:munepi:20110807:mba] だが、とうとう年末に VineSeed を入れてしまいました。

MBA (Mid 2011) への VineSeed の入れ方は、Project Vine の 松林さんこと、shaolin さんが Installing Vine Linux on MacBook Air (Middle 2011) - 短期記憶容量少ナキ我ガ爲ノ備忘録也 に書き記してくださっています。このメモを参考にしつつ、わたしは以下のような手順で、VineSeed をインストールしました。

  1. 別のマシンの Vine Linux 6/VineSeed 上に netatalk で TimeMachine 用 AFP サーバを立てて、そこへ一度、Macintosh HD ごとバックアップ
  2. インターネット経由のリカバリ用 Lion を立ち上げて、diskutils で VineSeedLinux Swap、Macintosh HD*1用の領域を作成
  3. Vine Linux 6 x86_64 インストーラから、Vine Linux 6 をインストール
  4. 再び、リカバリ用 Lion を立ちあげて、Lion を再インストール
  5. Macintosh HD から Lion を起動して、refit をインストール*2
  6. refit から Vine Linux 6 を起動して、VineSeed へアップグレード

MBAVineSeed が動くようになったものの、何も調整していないキーボードとトラックパッドが非常に使いにくかったので、これらを自分好みに設定してみました。

ここでは、キーボードとトラックパッドの設定例を紹介します。

キーボード

私の MBA は JIS 配列ですので、ここでは JIS 配列を前提として説明します。基本的に jp106 配列なのですが、以下のキーを変更しました。

  • caps: 左 Control
  • 英数: 左 Alt
  • かな: 右 Alt
  • 右 command: 右 Control

なお、左 command は、左 Super のままです。

このような変更をすることで、

  • 左、右ともに、Control, Alt が確保され、
  • できるだけ小指を使わず、親指で modifier を押す

ことができます。

コンソール

/lib/kbd/keymaps/i386/qwerty/jp106.map.gz を元に、mbajis.map.gz をでっちあげてみました。

# mbajis.map : MacBook Air JIS keyborad keymap
# 
# Date: Sun,  8 Jan 2011 23:36:44 +0900
# From: Munehiro Yamamoto <munepi@vinelinux.org>
# based on 
# jp106.map : Japanese 106 keyboard keymap
#
# Date: Tue, 20 Aug 1996 16:15:31 +0900
# From: Hideya Hane <wing@aries.bekkoame.or.jp>
#
#
# The differences between mbajis.map and jp106.map are below: 
# - Key caps (keycode 58) = Control
# - Key eisuu (keycode 123) = Alt
# - Key kana (keycode 122) = Alt
# - Key right command (keycode 126) = Control
#
# NOTE: We keep keycode 125 as Super
#
keymaps 0-1,4-5,8-9,12
alt_is_meta
include "qwerty-layout"
include "linux-with-two-alt-keys"
strings as usual
compose as usual for "iso-8859-1"

keycode   1 = Escape
keycode   2 = one              exclam
keycode   3 = two              quotedbl
keycode   4 = three            numbersign
	control	keycode   4 = Escape
keycode   5 = four             dollar
	control	keycode   5 = Control_backslash
keycode   6 = five             percent
	control	keycode   6 = Control_bracketright
keycode   7 = six              ampersand
	control	keycode   7 = Control_underscore
keycode   8 = seven            apostrophe
keycode   9 = eight            parenleft
keycode  10 = nine             parenright
keycode  11 = zero             asciitilde
	control	keycode  11 = nul
keycode  12 = minus            equal
keycode  13 = asciicircum      asciitilde
	control	keycode  13 = Control_asciicircum
keycode  14 = Delete
	control	keycode  14 = BackSpace
keycode  15 = Tab
keycode  26 = at               grave
	control	keycode  26 = nul
keycode  27 = bracketleft      braceleft
keycode  28 = Return
	alt	keycode  28 = Meta_Control_m
keycode  29 = Control
keycode  39 = semicolon        plus
keycode  40 = colon            asterisk
	control keycode  40 = Control_g
keycode  41 = Escape
keycode  42 = Shift
keycode  43 = bracketright     braceright
	control	keycode  43 = Control_bracketright
keycode  51 = comma            less
keycode  52 = period           greater
	control	keycode  52 = Compose
keycode  53 = slash            question
	control	keycode  53 = Delete
	shift	control	keycode  53 = Delete
keycode  54 = Shift
keycode  56 = Alt
keycode  57 = space
	control	keycode  57 = nul
#keycode  58 = Caps_Lock
keycode  86 = less             greater
keycode  89 = backslash        underscore
	control	keycode  89 = Control_backslash
keycode  92 = space
keycode  94 = space
keycode  97 = Control
keycode 124 = backslash        bar
	control	keycode 124 = Control_backslash
# 
# for My MBA
# 
keycode  58 = Control
#keycode 125 = Control
keycode 123 = Alt
keycode 122 = Alt
keycode 126 = Control

mbajis.map.gz を有効にするために、/etc/sysconfig/keyboard を以下のように変更します。

KEYTABLE="mbajis"
MODEL="jp106"
LAYOUT="jp"
X

/etc/X11/Xmodmap を以下のように変更します。

! /etc/X11/Xmodmap.mbajis
! customize for MacBook Air (mid 2011) Japanese keyborad layout
!
! The differences between Xmodmap.mbajis and default are below: 
! * caps -> Left Control
! * eisuu -> Left Alt
! * kana -> Right Alt
! * right command -> Right Control
! 
! NOTE: We keep left command as Left Super
!
!
! global Xmodmap file -- used by both xdm and xinit (startx)

! keycode and keysym remapping should generally be used only if the X
! server config file has been configured to disable the XKEYBOARD
! extension

! i386 and alpha
! keycode 22 = BackSpace
! keycode 107 = Delete           

! powerpc
! keycode 59 = BackSpace
! keycode 125 = Delete

! sparc
! keycode 50 = BackSpace
! keycode 73 = Delete

! Euro sign support
! keycode 26 = e E currency
! keycode 54 = c C cent
! keycode 113 = Mode_switch Mode_switch Multi_key

!
! Swap Caps_Lock to Ctrl
!
!remove Lock = Caps_Lock
!remove Control = Control_L
!keysym Control_L = Caps_Lock
!keysym Caps_Lock = Control_L
!add Lock = Caps_Lock
!add Control = Control_L

!
! Change Caps_Lock to Ctrl
!
remove Lock = Caps_Lock
keysym Caps_Lock = Control_L
add Control = Control_L

!
! Change Super_L to Ctrl
!
!remove Mod4 = Super_L
!keysym Super_L = Control_L
!add Control = Control_L

! 
! Change Eisuu to Alt
!
keysym Hangul_Hanja = Alt_L
add Mod1 = Alt_L
 
!
! Change Kana to Alt
!
keysym Hangul = Alt_R
add Mod1 = Alt_R

!
! Change Super_R to Ctrl
!
remove Mod4 = Super_R
keysym Super_R = Control_R
add Control = Control_R

トラックパッド

/etc/X11/xorg.conf.d/99-mbamultitouch.conf へ以下の内容を書きます。ただし、Lion での動作とほとんど同じようにするためには、もう少し調整が必要かもしれません。

Section "InputClass"
    MatchIsTouchpad "on"
    Identifier "Multitouch Touchpad"
    Driver "mtrack"
    MatchDevicePath "/dev/input/event*"
        #Option "PalmSize" "40"
        Option "IgnorePalm" "true"
        Option "ThumbRatio" "60"
        Option "ThumbSize" "20"
        Option "ClickTime" "200"
        Option "ScrollDistance" "150"
        Option "ScrollUpButton" "5"
        Option "ScrollDownButton" "4"
        Option "Sensitivity" "1.50"
        Option "TapButton1" "0"
        Option "TapButton2" "0"
        Option "TapButton3" "0"
        Option "FingerHigh" "10"
        Option "FingerLow" "7"
        Option "SwipeLeftButton" "8"
        Option "SwipeRightButton" "9"
        Option "SwipeUpButton" "10"
        Option "SwipeDownButton" "11"
        #Option "ScaleUpButton" "0"
        #Option "ScaleDownButton" "0"
        Option "TapDragTime" "350"
        Option "TapDragWait" "60"
        Option "TapDragDist" "200"
        #Option "GestureWaitTime" "300"
        Option  "ClickFinger2"      "3"
EndSection

この設定のポイントは、

  • 「Option "ScrollUpButton" "5"」「Option "ScrollDownButton" "4"」
  • 「Option "TapButton1" "0"」「Option "TapButton2" "0"」「Option "TapButton3" "0"」

です。前者は、例の紙を指で上下するのと同じスクロールの動作になるようにしています。後者は、トラックパッドに触れてしまっても(タップ)、何も起こりません。このポイントを設定しておけば、だいたい Lion 上の操作と変わらないと思います。

よりよい TrackPad の設定があれば、教えて下さい。

*1:Lion を再インストールするときに、自動的に Recovery HD も作られる。

*2:ついでに、Recovery 用 USB メディアも作りました。

tex-qa: 56483 脚注のページ分割とカラー を色指定できるようにしてみた

今朝から、tex-qa:56483 脚注のページ分割とカラー のネタで楽しませてもらいました。

\@makecol*1 をいじるにしても、\footins を分解して、脚注ごとにゴニョゴニョしないといけなさそうだと、おおげさになりがちですね。

\jumoline のように、1"文字"*2とって下線引いてを繰り返す処理が、tex-qa: 56483 の解になると思っていて、今日一日を過ごしていた。

すると、露伴さんという方が tex-qa:56487 で、より簡潔な解を示して下さった!この解は、「\tmploop 以降に、通常の意味でマクロを指定しない」のであれば使えますね。

露伴さんが示して下さった解に対して、「色指定ができる」ようにマクロを以下に書きたしてみました。簡単な付け足しなので、texqa の方に返信しないでおきます (^^;;

\documentclass[twocolumn]{jsarticle}
\usepackage{color}
\textheight2cm
\makeatletter
\def\footnotecolor#1{%
  \gdef\fnc@l@r{#1}\fnc@l@rloop}
\def\@@fnc@l@rloop#1{%
  \textcolor{\fnc@l@r}{#1}\hskip\kanjiskip\fnc@l@rloop}
\def\fnc@l@rloop{%
  \futurelet\fnc@l@rlooptemp\@fnc@l@rloop}
\def\@fnc@l@rloop{%
  \let\fnc@l@rloopnext\relax
  \ifx\fnc@l@rlooptemp\egroup\else\let\fnc@l@rloopnext\@@fnc@l@rloop\fi
  \fnc@l@rloopnext}
\makeatother

\begin{document}
A\footnote{\footnotecolor{red}
あああああああああああああ
あああああああああああああ
あああああああああああああ
あああああああああああああ
あああああああああああああ
あああああああああああああ}

B\footnote{\footnotecolor{blue}
あああああああああああああ
あああああああああああああ
あああああああああああああ
あああああああああああああ
あああああああああああああ
あああああああああああああ}
\end{document}

*1:latex.ltx を参照してください。

*2:実際は、1文字という単位でとっているわけじゃない。

ZR さんのサイト「マクロツイーター」一周年記念メッセージがまじパネー!

ZR さんのサイト「マクロツイーター」が、一周年だそうです [id:zrbabbler:20111108:1320773695] 。おめでとうございます。この事実を全く存じておりませんでした。大変申し訳ありません。代わりに、素晴らしい Art をそのまま転載いたします。

\documentclass{article}
\usepackage{iamjatex}
\begin{document}

\begin{iamjatex}

7nmmmpX    ,.     ____________             7nmmm2    7yyr7. 
  MMM1    7$Rv   1XZ7772Z2777ZZ             "1XHE     H7    
  MMM1   ,2 $$w  7    1771    7               T7TH   X/     
  MMMl  ,$  j$$ 7     l77l    ~777Z77X7777     T7TH 7       
  MMMl  $++++$$=      1771      XX7     777     7HH7        
  MMM1 2,     $X      177l      777       7      2HHX       
  MMM=+++  m =+++=    1771      777   A   1     2, HHX      
  MMM      M          1771      777xx77       v2    HHXx    
 1MMM     NM          7777      7X7  V7      77      HHHH   
MMMMMMMMMMMF       777X7777771  7X7   !   ,722nn,  n7HHHHNKn
                                7X7       7F                
                                777      7l                 
                             z7X77777777XF                 
\end{iamjatex}
\end{document}

上記をタイプセットするためには、iamjatex.sty v0.1 [id:munepi:20111023:texconf11lt] が必要です。

Just Another TeXnician に世界中が泣いた!

ZR さんは、これだから素敵すぎて、大好きなんですよね。

[2011-11-12 追記]ut さんのメッセージもまじパネー!

ut さんのサイト では、LaTeX のフォントの話が大変詳しく解説されております。しかし、昨晩それだけではないことが発覚しました!ZR さんの 一周年記念メッセージを受けて、なんと Art がありました\<(笑 その Art があまりに素晴らしかったので、そのまま転載いたします。

\documentclass[a4paper]{article}
\usepackage{iamjatex}
\begin{document}
\begin{iamjatex}

  ,ad12X7ba,  77722X12ba         db   777777X77777 7X        db
 d7"'    `"7b 77      "7b       d1Xb       77      77       d77b
d7'           77      ,XP      d7'`Xb      77      77      d7'`1b
X7            77aaaaaa7P'     d7'  `7b     7X      77     d7'  `7b
77      7X777 77""""77'      d7YaaaaY7b    X7      77    d2YaaaaY2b
YX,        77 12    `Xb     d7""""""""7b   77      77   d7""""""""7b
 Y7a.    .a77 77     `7b   d7'        `7b  77      77  d7'        `7b
  `"Y77777P"  77      `7b d7'          `7b 77      77 d7'          `7b

\end{iamjatex}
\end{document}

ut さんのメッセージも、愛があふれています。

Just Another TeXnician 文化が根づき始めたのでしょうか(^^ このまま世界中に広がるとよいですね(おぃ

I am a Just Another TeXnician の作品集

Fun emath の更新を一旦中断することにしました

emath 修正パックの配布形態が変わった*1ことを受け、しばらく対応しておりました。しかしながら、もしかしたら、修正パックや実験版の配布形式が変わってしまうことも十分あり、私自身が修正パックを実際に試さないかぎり、表向けに nosrc.rpm ですら提供すべきでないという判断しました。

したがいまして、Vine Linux 向けに配布しておりました rpm や emath 関連ツールも更新を一旦中断しました。emath の rpm をはじめ、emathfigtoeps など、ご利用下さったみなさま、本当にありがとうございました。