&size(24){''TeXWorks で perlとの連携を実現する法''};
&size(24){''TeXWorks で perlとの連携を実現する方法''};
 TeX を処理する統合環境のひとつである TeXWorks を用いて,
 perl との連携機能を実現する方法を記します。
#contents
#br

*emath.pl などの配置(1) [#ze0d39c6]
まずは,当 emathWiki の [[perlとの連携]] ページをご覧のうえ,~
  連携の準備~
という項までを実行します。

*「TeXWorks の設定」ダイアログ [#settei]
 これからの作業では,「TeXWorks の設定」という名のダイアログを用います。
+TeXworks を起動します。
+そのメニューバーから~
   編集~
    設定~
とたどると,「TeXWorks の設定」なるダイアログが登場します。~
その「タイプセット」なるタブをクリックすると
#ref(TeXWorksの設定.png,center,wrap)
(このダイアログ内の表示は TeX環境,TeXWorks のバージョンによって異なります)。
*「タイプセットの方法」ダイアログ [#typeset]
「TeXWorks の設定ダイアログ」で,~
「タイプセットの方法」ブロック右下「+」ボタンと「−」ボタンが並んでいますが,「+」ボタンをクリックします。~
「タイプセットの方法を設定する」というダイアログが登場します:
#ref(typeset.png,center,wrap)
* ptex2pdf の存在確認 [#r4963b06]
 以下は,TeXWorks のバージョンによって,さらには OS によって対応が異なります。 
 TeX 関連実行ファイルの中に
   ptex2pdf.exe (環境によっては .exe は表示されない)
 のあり/なしで処理法が異なります。
-ptex2pdf の存在を確認するには~
++tex 関連の実行ファイルにパスが通っている場合~
コマンドプロンプト(MAC ではターミナル)で,キーボードから~
  which ptex2pdf~
と打ち込み,エンターキーを押します。~
存在すれば,そのフルパスが返ってきます。~
++パスが通っていない場合~
[[「TeXWorks の設定」ダイアログ>#settei]]を呼び出します。~
引き続き,[[「タイプセットの方法」ダイアログ>#typeset]]を呼び出します。~
以下,このダイアログで偵察をしますが,作業が終わったら,右下~
  OKボタン,キャンセルボタン~
のうち,キャンセルボタンを押して元に戻します。~
その「プログラム:」の右「参照」ボタンをクリックすると,~
  TeX 関連実行ファイルの一覧~
が表示されます。その中に "ptex2pdf" が存在するか否かを調べます。~
確認したら「キャンセル」ボタンを何回か押して TeXWorks の画面に戻ります。

** ptex2pdf.exe が存在する場合 [#vbfaad65]
-[[「TeXWorks の設定」ダイアログ>#settei]]を呼び出します。~
引き続き,[[「タイプセットの方法」ダイアログ>#typeset]]を呼び出します。~
この空欄を埋めていきます。
-まず,「名前:」欄はお好みで。ここでは "shellescape" として進行します。
-「プログラム:」欄は "ptex2pdf.exe" とします。~
(右の「参照」ボタンを押して ptex2pdf を選んでもよい。)
-「引数:」欄の入力は少々面倒で,最終的には次の4行となります。~
(短い行をまとめたり,長い行を分割したりしてはいけません。必ず下の4行とします。)~
(3行目は3つの引数を列記していますが,それらは半角空白で区切られています。
それ以外の場所に空白を加えたりしてもいけません。)
 -l
 -ot
 -shell-escape -kanji=utf8 -guess-input-enc $synctexoption
 $fullname
「引数:」の右空欄に直接キーボードから入力は出来ません。~
1行ずつ,空欄右下外の「+」ボタンを押してでてくる小さな窓に入力します。~
(キーボードから入力するよりも上の欄からコピペする方が良い。~
複数行をまとめて入力は出来ません。1行ずつ「+」ボタンを押して,上の順序通りに入力します。)
-以上の入力が正しく行われたら,「OK」ボタンを何回か押して TeXWorks に戻ります。

** ptex2pdf.exe が存在しない場合 [#hd9cdd74]
 TeXWorks は,発展途上のソフトのようです。
 以下対処法を述べますが,TeXWorks を更新 --- というより TeX を更新して,
 ptex2pdf.exe が存在する状態にするのが,賢明策と思います( texlive 2013 以降にすればよい)。
-OS によって対処法は異なります。
***Windows の場合 [#dd9ccfd1]
+次の内容のファイルを shellescape.bat という名前で,tex 関連の実行ファイル(例えば latex.exe )が存在するディレクトリに作成します。
 platex -shell-escape -kanji=utf8 -synctex=1 -guess-input-enc "%1" && dvipdfmx "%~n1"
+[[「TeXWorks の設定」ダイアログ>#settei]]を呼び出します。~
引き続き,[[「タイプセットの方法」ダイアログ>#typeset]]を呼び出します。~
この空欄を埋めていきます。
-まず,「名前:」欄はお好みで。ここでは "shellescapebat" として進行します。
-「プログラム:」欄は "shellescape.bat" とします。~
(右の「参照」ボタンを押して shellescape.bat を選んでもよい。)
-「引数:」欄の入力は次の1行だけです。
 -$fullname
 $fullname
「引数:」の右空欄に直接キーボードから入力は出来ません。~
空欄右下外の「+」ボタンを押してでてくる小さな窓に入力します。~
以上の入力が正しく行われたら,「OK」ボタンを何回か押して TeXWorks に戻ります。
***MAC の場合 [#p5314d5f]
-[[「TeXWorks の設定」ダイアログ>#settei]]を呼び出します。~
引き続き,[[「タイプセットの方法」ダイアログ>#typeset]]を呼び出します。~
この空欄を埋めていきます。
-まず,「名前:」欄はお好みで。ここでは "shellescape" として進行します。
-「プログラム:」欄は "pdfplatex" とします。~
(右の「参照」ボタンを押して pdfplatex を選んでもよい。)
-「引数:」欄の入力は少々面倒で,最終的には次の2行となります。~
(1行目は3つの引数を列記していますが,それらは半角空白で区切られています。
それ以外の場所に空白を加えたりしてもいけません。)
 -shell-escape -kanji=utf8 -guess-input-enc $synctexoption
 -$fullname
 $fullname
「引数:」の右空欄に直接キーボードから入力は出来ません。~
1行ずつ,空欄右下外の「+」ボタンを押してでてくる小さな窓に入力します。~
(キーボードから入力するよりも上の欄からコピペする方が良い。~
複数行をまとめて入力は出来ません。1行ずつ「+」ボタンを押して,上の順序通りに入力します。)
-以上の入力が正しく行われたら,「OK」ボタンを何回か押して TeXWorks に戻ります。

*動作確認(1) [#m39c3fa9]
+まず,次の内容のファイル perllib.tex を作成します。
 \documentclass{jarticle}
 \begin{document}
 start
 \write18{perl -V>perllib.txt}
 end.
 \end{document}
+TeXWorks を起動します。~
メニューバーの下,ツールバー一番左に,緑の円内の右向き矢印が指す位置に~
   タイプセット時に使用するツール名~
が表示されています。その右にある下向き矢印をクリックするとプルダウンメニューが開きます。~
その中から先ほどあなたが作った shellescape or shellescapebat があるはずですから,それを選択します。~
続いて,~
   メニューバーから~
     タイプセット~
       タイプセット~
とするか,ショートカットキー~
   CTRL-T~
でタイプセットを実行します。
+エラーなく実行できましたか。エラーが起きたら,今までの作業を再確認してください。~
作成された PDF には,用がありません。~
perllib.tex と同一ディレクトリに perllib.txt というファイルが出来ているはずです。これが次の作業のネタとなります。
*emath.pl などの配置(2) [#f46a4d82]
+始めに,emath.pl を配置したはずですが,~
TeXWorks は身勝手なソフトで自分用のものを要求します。~
上で,perllib.txt というテキストファイルを作ったはずですが,それをエディタで開きます。~
最下行から少し上に~
 @INC:~
という行がありますが,その下のディレクトリにも~
  emath.pl
などを配置しておかねばなりません。
*動作確認(2) [#cd007261]
次のファイルをタイプセットします。
 \documentclass{jarticle}
 \usepackage[notMy]{emath}
 \usepackage{emathPl}
 \begin{document}
 漢字
 
 \calcval[s]{sqrt(2)}\foo
 \foo
 
 あいうえお
 \end{document}
2の近似値が表示されましたか?

*関連事項 [#f9aaf15d]
+日本語の文字化け~
TeXWorks で日本語が文字化けするという場合は,その原因は~
  エンコードの不一致~
です。一番望ましい(TeXWorks から見て)のは~
  utf8~
で統一することです。~
最近の TeXWorks では,TeXWorks のエディタのエンコードを指定できるようにはなっています。~
「TeXWorks の設定ダイアログ」のエディタタブの中程に~
「エンコーディング:」~
とあります。
RIGHT:&counter;


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS