以下、雑談です。
> (1)定義そのものをコピーしてきて、書き足す
> (2)変更を書き足した環境を、別名の環境にする
> (3)\let でコピーしてから、それを使って再定義する
> (4)\g@addto@macro で書き足す
> (5)etoolbox.sty の \appto や \apptocmd を使って書き足す
いずれもがなかなか難しくなりつつあると思っています。
「これがいま動いているものの本当に定義である」を探すのがたいへんですよね。
LaTeX kernelのものを引っ張ってきたとしても、それ以降に読み込んでいる何かが勝手に上書きしていたとか、Hookで\begin{document}以降なり、何かのパッケージ前後で勝手に上書きされているとか、本当はすべてを完全に把握した上で、初めてできることだと思います。
例えば、hyperrefパッケージを読み込んだ時点で、通常のクラスファイルさえも影響しますし、hyperrefパッケージが前提としているパッケージの挙動さえも変わってしまうものがありますし、なんなら\begin{document}...\end{document}中の記法を厳密にhyperrefの挙動に合わせる必要に迫られたりします。なので、hyperrefパッケージを読み込む場合、hyperrefパッケージの挙動で大事なところを把握することが必要になります。
実際には、ちょっとしたものを書き換えるものに依って、
・だいたいまぁまぁ動く、
・前後のパッケージの影響でなんかちょっとおかしくなる(それに気付かないで、そのちょっとおかしい状態さえも仕様となる)
などあると思います。
本末転倒ですが、いまLaTeXでコンパイルしようとしている文章を、できるかぎり全体を把握して、変える必要があると思います。
貴重なご返信をありがとうございます!
無意識のうちに「古き良き法」の感覚にどっぷりと浸かってしまっ
ていたようです。
(←「古き良き法(gutes altes Recht)」なんて考えを知ったのは
学部生の頃なので、これについてさえ、私の理解は実はもう時代遅れ
なのかも知れませんが…)
最近記憶力の減退が激しく、munepi さんのご返信をお読みしてよう
やく、昨年末の ZR さんの記事を思い出しました:
重点解説! イマドキのLaTeXの“命令フック機能”
https://qiita.com/zr_tex8r/items/70ba9e910c8d265307fa
(先の私の投稿で「今どき」という言葉を使っていたのは単なる
偶然です)
現在の LaTeX を扱う際に、昔ながらの知識を無自覚にあてはめるの
は危険ということを、よくよく肝に銘じるようにいたします。
無意識のうちに「古き良き法」の感覚にどっぷりと浸かってしまっ
ていたようです。
(←「古き良き法(gutes altes Recht)」なんて考えを知ったのは
学部生の頃なので、これについてさえ、私の理解は実はもう時代遅れ
なのかも知れませんが…)
最近記憶力の減退が激しく、munepi さんのご返信をお読みしてよう
やく、昨年末の ZR さんの記事を思い出しました:
重点解説! イマドキのLaTeXの“命令フック機能”
https://qiita.com/zr_tex8r/items/70ba9e910c8d265307fa
(先の私の投稿で「今どき」という言葉を使っていたのは単なる
偶然です)
現在の LaTeX を扱う際に、昔ながらの知識を無自覚にあてはめるの
は危険ということを、よくよく肝に銘じるようにいたします。