(e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

(e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- 匿 名 の投稿
返信数: 8

W32TeX [2014/04/19] を使用しています.

コマンド プロンプトから
(e-)up(La)TeX, Xe(La)TeX で
存在しないファイル hoge.tex を指定して実行したあと
Ctrl-Z, Ctrl-C を入力しても
終了できません.
x を入力すると終了できます.
(e-)p(La)TeX, pdf(La)TeX などは
Ctrl-Z, Ctrl-C を入力すると
終了します.

>uptex hoge.tex
This is upTeX, Version 3.14159265-p3.5-u1.11 (utf8.uptex) (TeX Live 2014/W32TeX)
 (preloaded format=uptex)
 restricted \write18 enabled.
! I can't find file `hoge.tex'.
<*> hoge.tex

(Press Enter to retry, or Control-Z to exit)
Please type another input file name: ^Z
! I can't find file `^^Z'.
<*> hoge.tex

(Press Enter to retry, or Control-Z to exit)
Please type another input file name:
! I can't find file `竡・.
<*> hoge.tex

(Press Enter to retry, or Control-Z to exit)
Please type another input file name: x
(c:/w32tex/share/texmf-dist/tex/latex/tools/x.tex
! Interruption.
l.2
    %% This is file `x.tex',
? x
No pages of output.
Transcript written on x.log.

x を入力すれば終了できますが
できれば Ctrl-Z, Ctrl-C で終了できたほうが
いいと思います.

匿 名 への返信

Re: (e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- Akira Kakuto の投稿
ずっと以前から認識していますが,変なところを
触ると大変なので,そのままにしています。
x.tex はこのようなときのために準備されています。
Akira Kakuto への返信

Re: (e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- Akira Kakuto の投稿
少なくともメッセージは変更したほうが良いので
考えておきます。
Akira Kakuto への返信

Re: (e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- Akira Kakuto の投稿
メッセージの変更だけしておきました。
Akira Kakuto への返信

Re: (e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- 匿 名 の投稿

W32TeX [2014/04/21] において
(e-)up(La)TeX, Xe(La)TeX で
存在しないファイル hoge.tex を指定して実行すると
エラーメッセージが
(Press Enter to retry, or x to exit)
と表示され
x を入力すると終了することを確認しました.
対応ありがとうございました.

>uptex hoge.tex
This is upTeX, Version 3.14159265-p3.5-u1.11 (utf8.uptex) (TeX Live 2014/W32TeX)
 (preloaded format=uptex)
 restricted \write18 enabled.
! I can't find file `hoge.tex'.
<*> hoge.tex

(Press Enter to retry, or x to exit)
Please type another input file name: x
(c:/w32tex/share/texmf-dist/tex/latex/tools/x.tex
匿 名 への返信

Re: (e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- t tk の投稿
Ctrl+Zの方は、添付のパッチで対策出来ると思います。

getc() でWindowsのコンソールから読み込む際、
文字列の先頭が^ZならEOFを返し、
文字列の先頭以外ならそのまま^Z(0x1a)を返すのが
元の仕様のようです。
getc()をReadConsoleW()に置き換えた際に、うまくいっていなかったのですが、
添付のパッチはそこを対策出来ていると思います。

よさそうでしたらTeXLiveにコミットします。

Ctrl+Cの方は、調査しているのですが、まだ解決策がわかっていません。


t tk への返信

Re: (e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- Akira Kakuto の投稿
> よさそうでしたらTeXLiveにコミットします。

うまく動いていますので,よろしくお願い致します。
CTRL-C は通常の win32 ではデフォルトでは組み込まれて
いないので (TeX Live の通常の場合はサポートされています
が多分文書で明言はされていない) 問題ないと思います。
t tk への返信

Re: (e-)up(La)TeX, Xe(La)TeX で存在しないファイルを指定して実行したあと Ctrl-Z, Ctrl-C を入力しても終了できない

- 匿 名 の投稿

W32TeX [2014/04/28] において
(e-)up(La)TeX, Xe(La)TeX で
存在しないファイル hoge.tex を指定して実行すると
エラーメッセージが
(Press Enter to retry, or Control-Z to exit)
と表示され
Ctrl-Z を入力すると終了することを確認しました.
対応ありがとうございました.

>uptex hoge.tex
This is upTeX, Version 3.14159265-p3.5-u1.11 (utf8.uptex) (TeX Live 2014/W32TeX)
 (preloaded format=uptex)
 restricted \write18 enabled.
! I can't find file `hoge.tex'.
<*> hoge.tex

(Press Enter to retry, or Control-Z to exit)
Please type another input file name: ^Z

! Emergency stop.
<*> hoge.tex

No pages of output.
Transcript written on texput.log.