TeX ã·ã¹ãã ã®ãå¤é¨ã³ãã³ãå®è¡è¨å®ãã«é¢ããã»ãã¥ãªãã£ãã¼ã«ãå ±åããã¦ããã
æ¢ã« W32TeX ã TeX Liveï¼æ¬å®¶ï¼ã®å´ã§ã®å¯¾çã¯è¡ããã¦ãããã¦ã¼ã¶ããTeX ã·ã¹ãã ãã¢ãããã¼ãããããªã©ã®å¯¾çãã¨ãå¿ è¦ãããã
å 容
- TeX å¦çç³»ã«ã¯ãã¨ãã¨ãå¤é¨ã®ã½ããã¦ã§ã¢ï¼ã³ãã³ãï¼ããå®è¡ããæ©è½ãããããå®å ¨ã®ãããæ¢å®ã§ã¯å®è¡ã§ããå¤é¨ã®ã³ãã³ããç¹å®ã®ãã®ï¼kpsewhich çï¼ã«å¶éãã¦ããããã®ç¶æ ããå¶éä»ã·ã§ã«ã¨ã¹ã±ã¼ãï¼restricted shell escapeï¼ãã¨ããã
- ããããã®èå¼±æ§ã®ãããã®å¶éãå®è³ªçã«ç¡å¹ã«ãªãã
- ã¤ã¾ãæ»æè ãä»»æã®å¤é¨ã³ãã³ããï¼ã¦ã¼ã¶ã®æ¨©éã§ï¼å®è¡ã§ããããã«ãªãã
å½±é¿ç¯å²
以ä¸ã®äºé ã®å ¨ã¦ãæºããå ´åã«å½±é¿ãåããã
- 2010 å¹´é 以éã«ã¤ã³ã¹ãã¼ã«ããã TeX é
å¸ã
ï¼â»æãããã®ã»ã¨ãã©å ¨ã¦ã該å½ãããï¼ - ãå¶éä»ã·ã§ã«ã¨ã¹ã±ã¼ããã®ç¶æ
ã§ä½¿ç¨ãã¦ãããã¾ãã¯ãã®å¯è½æ§ãããã
ï¼â»ãããæ¢å®ãªã®ã§ãã»ã¨ãã©ã®äººã該å½ãããï¼ - ãå¶éä»ã·ã§ã«ã¨ã¹ã±ã¼ããã§ã®å®è¡ã許ãããå¤é¨ã³ãã³ãã®ä¸ã« MetaPost ã®ã³ãã³ãï¼mpostãjmpostãpmpostãupmpostï¼ãå«ã¾ãã¦ããã以å¾ãã®ç¶æ ããç¡å¶é MetaPost é£æºå¯è½ãã¨å¼ã¶ãã¨ã«ããã
以ä¸ã®äºé ã¯é¢ä¿ããªãã
- ã¨ã³ã¸ã³ï¼TeXãpTeXãLuaTeXãâ¦ï¼ã®ç¨®é¡ã
- ãã©ã¼ãããï¼plain TeXãLaTeXãâ¦ï¼ã®ç¨®é¡ã*1
- èªåã MetaPost ã使ãï¼èªåã§èµ·åããï¼ãã¨ããããã
- TeX é
å¸ã®æ°ããã
- ãã¨ãï¼ãã®è¨äºããè¦ã¦ï¼æªæ¥ã®ãã®ï¼ä¾ãã°â2017 å¹´ã®ææ°çâï¼ã§ããã¦ã¼ã¶ã®è¨å®ã«ãã£ã¦ã¯ãç¡å¶é MetaPost é£æºå¯è½ãã«ãªãå¯è½æ§ãããã*2
æ¤æ»æ¹æ³
ãç¡å¶é MetaPost é£æºå¯è½ãã§ãããã調ã¹ãæ¹æ³ã
- ã³ãã³ãã·ã§ã«ã§ä»¥ä¸ã®ã³ãã³ããå®è¡ããã
kpsewhich -var-value=shell_escape_commands
- 次ã®ãããªã³ãã³ãåã®ãªã¹ãã表示ãããã¯ãã§ããã
ï¼â»ããããå®è¡ã許å¯ãããå¤é¨ã³ãã³ããã®ãªã¹ãã§ãããï¼
ï¼â»ä½ã表示ãããªããªãã°ãç¡å¶é MetaPost é£æºå¯è½ãã§ã¯ãªãã*3ï¼bibtex,bibtex8,extractbb,kpsewhich,makeindex,mpost,repstopdf
- ãªã¹ãã®ä¸ã« mpostãjmpostãpmpostãupmpost ã®ãããã ãåå¨ããã°ãç¡å¶é MetaPost é£æºå¯è½ãã§ããã
- rmpostãrpmpost ã®ããã« r ã§å§ã¾ãååã®ãã®ã¯é¢ä¿ããªãã*4
対å¦æ¹æ³
- å¯è½ã§ããã° TeX é
å¸ãææ°çã«ã¢ãããã¼ãããã
ï¼â»ææ°çã§ã¯ãå®è¡ã許å¯ãããå¤é¨ã³ãã³ãããã MetaPost ã®ã³ãã³ããé¤å¤ããä¿®æ£ãããã¦ããããããã¦ã¼ã¶å´ã§ã«ã¹ã¿ã ã®è¨å®ããªããã¦ããå ´åã¯ä¿®æ£ãåæ ãããªãå¯è½æ§ããããï¼ - ã¢ãããã¼ãããå ´åãå度ä¸è¨ã®æ¤æ»ãè¡ãããç¡å¶é MetaPost é£æºå¯è½ãã§ãªãç¶æ ã«ãªã£ã¦ããã°OKã
- ã¾ã ãç¡å¶é MetaPost é£æºå¯è½ãã§ããå ´åããMetaPost ã®ã³ãã³ããããå®è¡ã許å¯ãããå¤é¨ã³ãã³ããã®ãªã¹ãããå¤ããå¦ç½®ãè¡ãã
- TeX Liveæ¬å®¶ãªã©ãtlmgrã³ãã³ããå©ç¨ã§ããå ´åã¯ã以ä¸ã®ã³ãã³ããå®è¡ããã
tlmgr conf texmf shell_escape_commands ããªã¹ãã
ããã§ããªã¹ããã®é¨åã¯ãæ¤æ»ã®éã« kpsewhich ã³ãã³ãã«ãã表示ããããå®è¡ã許å¯ãããå¤é¨ã³ãã³ããã®ãªã¹ãã®ãã¡ãmpostãjmpostãpmpostãupmpost ãï¼ããã°ï¼é¤å¤ãããã®ãæå®ããã
ï¼â»ä¾ãã°æ¤æ»ã®ç®æã§ç¤ºããä¾ã®å ´åã¯ããªã¹ããã¯bibtex,bibtex8,extractbb,kpsewhich,makeindex,repstopdf
ã§ãããï¼
- TeX Liveæ¬å®¶ãªã©ãtlmgrã³ãã³ããå©ç¨ã§ããå ´åã¯ã以ä¸ã®ã³ãã³ããå®è¡ããã
- tlmgrãå©ç¨ã§ããªãå ´åã¯ã以ä¸ã®æé ãè¡ãã
- 以ä¸ã®ã³ãã³ããå®è¡ãã¦ãæå¹ãªtexmf.cnfãã¡ã¤ã«ãæ¢ãã
kpsewhich texmf.cnf
ããã§è¡¨ç¤ºããããã¹åãæå¹ãªtexmf.cnfã§ããã
- æå¹ãªtexmf.cnfãã¡ã¤ã«ã®ä¸ã«ã
shell_escape_commands=
ãã§å§ã¾ãè¡ãããå ´åã¯ãã=ãã®å¾ã«ããã³ãã³ãåã®ãªã¹ã((ããã§ãè¡æ«ã®ã\
ãã¯è¡ç¶ç¶ã表ããããªãã¡ããã®ã\
ããç¡ãã¦ãã¤æ¬¡ã®è¡ã¨ç¹ãã£ã¦ããã®ã¨åãã¨è¦ãªãããã))ï¼ãå®è¡ã許å¯ãããå¤é¨ã³ãã³ããã¨ä¸è´ããã¯ãã§ããï¼ãã mpostãjmpostãpmpostãupmpost ãï¼ããã°ï¼åé¤ããã - ã
shell_escape_commands=
ãã§å§ã¾ãè¡ããªãå ´åã¯ãé©å½ãªä½ç½®ï¼ä¾ãã°æ«å°¾ï¼ã«ä»¥ä¸ã®è¡ãæ¸ãè¾¼ããshell_escape_commands=ããªã¹ãã
ããã§ããªã¹ããã®é¨åã¯ããå®è¡ã許å¯ãããå¤é¨ã³ãã³ããã®ãªã¹ãã®ãã¡ãmpostãjmpostãpmpostãupmpost ãï¼ããã°ï¼é¤å¤ãããã®ãæå®ããã
è£è¶³
- ä»åã®ä»¶ã¯âæ»æè ãæ§æããMetaPostã®ã³ãã³ãè¡âãåå ã¨ãªã£ã¦ãããèªåã§MetaPostã®ã³ãã³ããå®è¡ããåã«ã¯ä½ã®åé¡ããªãã
*1:å³å¯ã«ããã¨ãâtexâã¨ããã³ãã³ãï¼Knuth ãªãªã¸ãã«ã® plain TeXï¼ã ãã¯ã·ã§ã«å®è¡ãå®å ¨ã«ç¦æ¢ããã¦ããã®ã§ãã®åé¡ã¯èµ·ããªãããã ãããå®ç¨ããã¦ãããã¨ã¯ãªãã ããã
*2:è¦ããã« TeX ã MetaPost èªèº«ã®åé¡ã§ã¯ãªãâè¨å®âã®åé¡ã§ããããã
*3:ãå¶éä»ã·ã§ã«ã¨ã¹ã±ã¼ãããå®è£ ããã以åã® TeX ã·ã¹ãã ã¨èããããã
*4:ãããã¯ãTeX ã¨å®å ¨ã«é£æºã§ããç¹å¥ãª MetaPostãã®ã³ãã³ãåã§ããã