{"action":"created","issue":{"url":"https://api.github.com/repos/texjporg/platex/issues/18","repository_url":"https://api.github.com/repos/texjporg/platex","labels_url":"https://api.github.com/repos/texjporg/platex/issues/18/labels{/name}","comments_url":"https://api.github.com/repos/texjporg/platex/issues/18/comments","events_url":"https://api.github.com/repos/texjporg/platex/issues/18/events","html_url":"https://github.com/texjporg/platex/issues/18","id":172647032,"number":18,"title":"\\footnote に verbatim を許可するか？","user":{"login":"aminophen","id":9957466,"avatar_url":"https://avatars.githubusercontent.com/u/9957466?v=3","gravatar_id":"","url":"https://api.github.com/users/aminophen","html_url":"https://github.com/aminophen","followers_url":"https://api.github.com/users/aminophen/followers","following_url":"https://api.github.com/users/aminophen/following{/other_user}","gists_url":"https://api.github.com/users/aminophen/gists{/gist_id}","starred_url":"https://api.github.com/users/aminophen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aminophen/subscriptions","organizations_url":"https://api.github.com/users/aminophen/orgs","repos_url":"https://api.github.com/users/aminophen/repos","events_url":"https://api.github.com/users/aminophen/events{/privacy}","received_events_url":"https://api.github.com/users/aminophen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-08-23T09:03:25Z","updated_at":"2016-08-25T06:15:31Z","closed_at":null,"body":"#16 の変更と jsclasses のバッティングについての議論です。\r\n\r\n[既に書いたとおり](https://github.com/texjporg/platex/issues/16#issuecomment-241271294)ですが、#16 の変更のうち `\\@footnotetext` に対する【脚注の合印直後の改行を許可、ただしペナルティが設定されている場合はその値を保持】という修正が、jsclasses の【脚注で \\verb を使えるようにする修正】とバッティングしています。両立するためには、以下のようなコードをどこか（jsclasses または pLaTeX）に含める必要があります。\r\n~~~~ tex\r\n\\long\\def\\@footnotetext{%\r\n  \\ifydir\\def\\@tempa{\\yoko}\\else\\def\\@tempa{\\tate}\\fi\r\n  \\insert\\footins\\bgroup\\@tempa%\r\n    \\reset@font\\footnotesize\r\n    \\interlinepenalty\\interfootnotelinepenalty\r\n    \\splittopskip\\footnotesep\r\n    \\splitmaxdepth \\dp\\strutbox \\floatingpenalty \\@MM\r\n    \\hsize\\columnwidth \\@parboxrestore\r\n    \\protected@edef\\@currentlabel{%\r\n       \\csname p@footnote\\endcsname\\@thefnmark\r\n    }%\r\n    \\color@begingroup\r\n      \\@makefntext{%\r\n        \\rule\\z@\\footnotesep\\ignorespaces}%\r\n      \\futurelet\\next\\pltx@fo@t}\r\n\\def\\pltx@fo@t{\\ifcat\\bgroup\\noexpand\\next \\let\\next\\pltx@f@@t\r\n                            \\else \\let\\next\\pltx@f@t\\fi \\next}\r\n\\def\\pltx@f@@t{\\bgroup\\aftergroup\\pltx@@foot\\let\\next}\r\n\\def\\pltx@f@t#1{#1\\pltx@@foot}\r\n\\def\\pltx@@foot{\\@finalstrut\\strutbox\\color@endgroup\\egroup\\null\r\n    \\ifnum\\pltx@foot@penalty=\\z@\\else\r\n      \\penalty\\pltx@foot@penalty\r\n      \\pltx@foot@penalty\\z@\r\n    \\fi}\r\n~~~~\r\n\r\n問題は、このコードをどちらに導入するかです。[1]「jsclasses に含める」だと\r\n\r\n- pLaTeX では従来どおり脚注内での verbatim をサポート**しない**で、合印直後の改行に関する修正だけを入れる\r\n- jsclasses は従来どおり脚注内での verbatim をサポートしたまま、さらに合印直後の改行に関する修正も入れる\r\n\r\nを意味します。一方、[2]「pLaTeX に含める」だと\r\n\r\n- pLaTeX では**新たに脚注内での verbatim をサポートし**、合印直後の改行に関する修正も入れる\r\n- jsclasses 側のコードは `\\@ifl@t@r` により新 pLaTeX では無視させる\r\n\r\nことを意味します。どちらがよいでしょうか。\r\n\r\n個人的には jsclasses のこれ以上の肥大化を促進する [1] はあまり嬉しくないので、[2] のほうがよいのではないか、と考えています。"},"comment":{"url":"https://api.github.com/repos/texjporg/platex/issues/comments/242290664","html_url":"https://github.com/texjporg/platex/issues/18#issuecomment-242290664","issue_url":"https://api.github.com/repos/texjporg/platex/issues/18","id":242290664,"user":{"login":"aminophen","id":9957466,"avatar_url":"https://avatars.githubusercontent.com/u/9957466?v=3","gravatar_id":"","url":"https://api.github.com/users/aminophen","html_url":"https://github.com/aminophen","followers_url":"https://api.github.com/users/aminophen/followers","following_url":"https://api.github.com/users/aminophen/following{/other_user}","gists_url":"https://api.github.com/users/aminophen/gists{/gist_id}","starred_url":"https://api.github.com/users/aminophen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aminophen/subscriptions","organizations_url":"https://api.github.com/users/aminophen/orgs","repos_url":"https://api.github.com/users/aminophen/repos","events_url":"https://api.github.com/users/aminophen/events{/privacy}","received_events_url":"https://api.github.com/users/aminophen/received_events","type":"User","site_admin":false},"created_at":"2016-08-25T06:15:30Z","updated_at":"2016-08-25T06:15:30Z","body":"返信ありがとうございます。\r\n\r\n> いままで十分な代替手段が知られていたならば\r\n\r\n現状では「pLaTeX で jsclasses を使うと自動的に脚注に \\verb が使える」ので、代替手段を探そうとした人は少ないでしょう。したがって、これは NO だと思います。\r\n\r\n> （jsclassesのコードは大きくなっても，まともなfeature requestに対する修正はどんどん入れる）\r\n\r\njsclasses のコードが大きくなるのを私が嫌っているのは、それが「LaTeX カーネルは△△という仕様」「pLaTeX カーネルは○○という仕様」に加え、3つ目の「jsclasses では××という仕様」を維持する必要が生じるからでした。メンテナンスの手間が倍増していますし、衝突の危険性が不必要に増大している気がします。\r\n\r\n----\r\n\r\njsclasses の原著者の方針を前提とするならば、【**少なくとも** pLaTeX で jsclasses を使う場合には、永久に \\verb をサポートする必要がある】が導かれるはずです。\r\n\r\nこれと、上の「別々の仕様は面倒だ」という観点を両立すると、jsclasses の独自仕様を“独自でない”ものにする、つまり【pLaTeX でも \\verb を使えるようにする】になります。すなわちこれが [2]「pLaTeX に含める」の意図です。\r\n\r\n逆に、別々の仕様であること自体も「仕様である」と定めるならば、[1]「jsclasses に含める」になります。この場合、「今後もし pLaTeX を変えるときは同時に jsclasses も変えなければならない」と覚えておかないと、致命的な問題が起きる恐れがあります。"}}
{"actor":{"display_login":"aminophen"}}