◀マクロトップへ
  • 237 TeX用マクロ
    • 238 Re:TeX用マクロ
      • 239 Re2:TeX用マクロ
    • 241 Re:TeX用マクロ改
      • 242 初心者ですが
        • 243 Re:初心者ですが
          • 244 Re2:初心者ですが
    • 245 新TeX用マクロ
    • 246 TeX→PDF用マクロ
  • [237] TeX用マクロ てふにしゃん 2006年02月02日 10:44

     サクラエディタ用のTeXマクロってありませんかね?
    なけりゃ作りますが。
    ボタン一発で、TeXでコンパイル→dvioutで表示、をしてくれるようなマクロ
    • [238] Re:TeX用マクロ てふにしゃん 2006年02月02日 20:03

      ググっても見つからないので、作ってみました。

      var objShell = new ActiveXObject("WScript.Shell");
      var i;
      var FileName; //原型ファイル名格納用
      var TeXFileName; //TeXファイル名格納用
      var DviFileName; //DVIファイル名格納用

      Editor.FileSave(); //ファイル上書き保存
      FileName=Editor.GetFileName(); //ファイルパスの取得
      TeXFileName=""; //初期化
      DviFileName=""; //初期化

      for(i=0;i<FileName.length;i++){
      if(FileName.charAt(i)=="\\"){ //ファイルパスの「\」を「/」に変換
      TeXFileName=TeXFileName+"/";
      }else{
      TeXFileName=TeXFileName+FileName.charAt(i);
      }
      if(i<FileName.length-3){ //拡張子をdviに変換
      DviFileName=DviFileName+TeXFileName.charAt(i);
      }else{
      if(i==FileName.length-3)DviFileName=DviFileName+"d";
      if(i==FileName.length-2)DviFileName=DviFileName+"v";
      if(i==FileName.length-1)DviFileName=DviFileName+"i";
      }
      }
      objShell.Run("X:/LaTeX/bin/jlatex "+TeXFileName,1,1); //TeXコンパイラ実行(各自でパス変更)
      objShell.Run("X:/LaTeX/dviout/dviout.exe "+DviFileName,1,0); //DVIビューアの実行(各自でパス変更)
      • [239] Re2:TeX用マクロ てふにしゃん 2006年02月02日 20:38

        ファイル名は「*.js」
        当方の環境での動作は確認済み

        WinXPsp2
        JTeX Version 3.141592-1.9.1 (Web2C 7.5.5)
        dviout for Windows Ver.3.17
    • [241] Re:TeX用マクロ改 てふにしゃん 2006年02月08日 10:37

      var objShell = new ActiveXObject("WScript.Shell");
      var i;
      var FileName; //原型ファイル名格納用
      var TeXFileName; //TeXファイル名格納用
      var DviFileName; //DVIファイル名格納用

      Editor.FileSave(); //ファイル上書き保存
      FileName=Editor.GetFileName(); //ファイルパスの取得
      TeXFileName=""; //初期化
      DviFileName=""; //初期化

      for(i=0;i<FileName.length;i++){
      if(FileName.charAt(i)=="\\"){ //ファイルパスの「\」を「/」に変換
      TeXFileName=TeXFileName+"/";
      }else{
      TeXFileName=TeXFileName+FileName.charAt(i);
      }
      if(i<FileName.length-3){ //拡張子をdviに変換
      DviFileName=DviFileName+TeXFileName.charAt(i);
      }else{
      if(i==FileName.length-3)DviFileName=DviFileName+"d";
      if(i==FileName.length-2)DviFileName=DviFileName+"v";
      if(i==FileName.length-1)DviFileName=DviFileName+"i";
      }
      }
      objShell.Run("C:/usr/local/bin/jlatex "+TeXFileName,1,1); //TeXコンパイラ実行(各自でパス変更)
      objShell.Run("C:/dviout/dviout.exe -1 "+DviFileName,1,0); //DVIビューアの実行(各自でパス変更)(改良)

      ------

      dvioutが複数起動しないように改良しました
      • [242] 初心者ですが 円 2006年02月08日 15:00

        TexはWinShellをいつも使っているのですが、
        このマクロを実行するとplatex2eのフォーマット
        が必要だといわれるのですが。
        • [243] Re:初心者ですが てふにしゃん 2006年02月08日 16:11

          こちらではjarticleでも問題なく動いていますが
          どうなんでしょうか

          まあコンパイラはパスの部分を
          書き換えるだけで変えられると思います
          • [244] Re2:初心者ですが 円 2006年02月08日 16:53

            できました、platexでjarticle,jsarticleどちらも
            コンパイルできました。ありがとうございました。
            m(__)m
    • [245] 新TeX用マクロ てふにしゃん 2006年02月09日 11:36

      画像挿入、数式挿入がボタン一発でできるマクロ

      -------画像用 TeXmacroFig.js

      Editor.InsText('\\begin{figure}[h]\r\n');
      Editor.InsText(' \\begin{center}\r\n');
      Editor.InsText(' \\includegraphics[width=80mm,clip]{Fig■.eps}\r\n');
      Editor.InsText(' \\caption{■}\r\n');
      Editor.InsText(' \\label{fig:■}\r\n');
      Editor.InsText(' \\end{center}\r\n');
      Editor.InsText('\\end{figure}\r\n');


      -------数式用 TeXmacroEqu.js

      Editor.InsText(' \\begin{equation}\r\n');
      Editor.InsText(' ■ \\label{eq:■}\r\n');
      Editor.InsText(' \\end{equation}\r\n');

    • [246] TeX→PDF用マクロ てふにしゃん 2006年02月10日 14:29

      var objShell = new ActiveXObject("WScript.Shell");
      var i;
      var FileName; //原型ファイル名格納用
      var TeXFileName; //TeXファイル名格納用
      var DviFileName; //DVIファイル名格納用
      var PdfFileName; //PDFファイル名格納用

      Editor.FileSave(); //ファイル上書き保存
      FileName=Editor.GetFileName(); //ファイルパスの取得
      TeXFileName=""; //初期化
      DviFileName=""; //初期化
      PdfFileName=""; //初期化

      for(i=0;i<FileName.length;i++){
      if(FileName.charAt(i)=="\\"){ //ファイルパスの「\」を「/」に変換
      TeXFileName=TeXFileName+"/";
      }else{
      TeXFileName=TeXFileName+FileName.charAt(i);
      }
      if(i<FileName.length-3){ //拡張子をdvi、pdfに変換
      DviFileName=DviFileName+TeXFileName.charAt(i);
      PdfFileName=PdfFileName+FileName.charAt(i);
      }else{
      if(i==FileName.length-3)DviFileName=DviFileName+"d";
      if(i==FileName.length-2)DviFileName=DviFileName+"v";
      if(i==FileName.length-1)DviFileName=DviFileName+"i";

      if(i==FileName.length-3)PdfFileName=PdfFileName+"p";
      if(i==FileName.length-2)PdfFileName=PdfFileName+"d";
      if(i==FileName.length-1)PdfFileName=PdfFileName+"f";
      }
      }
      objShell.Run("C:/usr/local/bin/platex "+TeXFileName,1,1); //TeXコンパイラ実行(各自でパス変更)
      objShell.Run("C:/usr/local/bin/dvipdfmx "+DviFileName,1,1); //PDFに変換(各自でパス変更)
      objShell.Run('"C:\\Program Files\\Adobe\\Acrobat 7.0\\Acrobat\\Acrobat"'+PdfFileName,1,0); //PDF表示(各自でパス変更)

      -------

      人によってTeX→PDFの作り方は違うと思いますが、dvipdfmxで作る方法でのマクロを晒しときます。
      (拡張子変換するところがアホっぽい)
      アクロバットを一々閉じないとだめっぽいですね。多分ファイルがロックされているんだろうと思います。