TeXworks

TeXworks

  ◆CONTENTS◆  

TeXworks とは

TeXworks は,TeX でドキュメントを作成するためのシンプルな統合環境です.
TeXworks は Dick*1 Koch 氏の TeXShop をモデルにしています.
TeX Live*2W32TeXMiKTeX 等の TeX ディストリビューションに標準で含まれています.
SyncTeX もサポートしており,メニューも日本語化されています.
TeXworks のデフォルトの文字コードは UTF-8 です.

奥村晴彦 著 『LaTeX2e 美文書作成入門』 (改訂第6版) では,おすすめの統合環境に TeXworks が紹介されています.

動作環境

Microsoft Windows,OS X, GNU/Linux で利用できます.
TeXworks の Windows 版は,Windows XP 以降の Windows で動作します.
TeXworks は Qt を使用しているため,基本的には Qt がサポートされているプラットフォーム で動作します.

License

GPLv2

リリース情報

News を参照.

TeXworks 0.4.5 の Windows バイナリは Qt 4.8.1, Poppler 0.22.2 を使用してビルドされています.
TeXworks 0.4.5 の OS X バイナリは Qt 4.8.4, Poppler 0.22.1 を使用してビルドされています.

ChangeLog

スクリーンショット

TeXworks on GNU/Linux (Ubuntu)TeXworks on Windows 7TeXworks on OS X
TeXworks on GNU/LinuxTeXworks on Windows 7TeXworks on OS X

ダウンロード/インストール

TeXworks/インストール を参照.

TeX ► QA ► フォーラム ► 一般フォーラム ►

不具合

OS X で TeXworks 0.4.5 を使用すると TeXworks のプレビューが日本語表示できないTeXworks 0.4.4 を使用する

OS X で TeXworks 0.4.5 を使用すると TeXworks のプレビューが日本語表示できないので TeXworks 0.4.4 を使用してください.
TeXworks 0.4.5 を OS X 10.8.4 でビルドすると日本語が表示できるそうです.

■ 参考リンク

OS X の TeXworks 0.4.5 で,文字コードが UTF-8 の場合に Backslash (U+005C) が入力できず 円記号 (U+00A5) になってしまう → Karabiner で Backslash が優先されるようにキーバインドを変更する

OS X の TeXworks 0.4.5 で,文字コードが UTF-8 の場合に Backslash (U+005C) が入力できず 円記号 (U+00A5) になってしまうようです.TeXworks 0.2.3 では大丈夫なようです.

OS X の Qt アプリケーションで Backslash (U+005C) が 円記号 (U+00A5) に変換されるバグがあるようです.→ Backslash is converted to YEN SIGN on Qt for Mac with JIS keyboard.
Karabiner で Backslash が優先されるようにキーバインドを変更するといいようです.


                               Karabiner                                   
         [ Change Key ][ Key Repeat ][ Status Message ][ MenuBar ][ Misc & Uninstall ]
    ( Change Yen                  )  ☐ Show enabled only (1 item)          [ ReloadXML ]
    remapping
    ▼For Japanese
      ▼Change Yen(¥) Key
          JIS Yen(¥) to Backslash(\)
            (except virtual machine, X11, RDC)


かな漢字変換をする際に,文字が白く表示され,ハイライトに隠れて見えにくくなる → 現在カーソルのある行をハイライトするを OFF にするまたは TeXstudio を使用する

TeXworks で [編集]-[設定] のエディタタブのエディタ全体のオプションで現在カーソルのある行をハイライトするにチェックを入れている場合,かな漢字変換の際に,文字が白く表示され,ハイライトに隠れて見えにくくなるという現象が発生します.
これを回避するには,現在カーソルのある行をハイライトするのチェックをはずしてください.
TeXworks ではなく TeXstudio を使用しても OK です.


                                     TeXworksの設定                               [ ][ × ]

  [ 全体 ][ エディタ ][ プレビュー ][ タイプセット ][ スクリプト ]
    エディタのデフォルト
     メイリオ                                                                   12 pt []
    タブ幅:                      32 px                 []
    ☐ 行番号表示                               ☑ 行の折り返し
    構文の色付け: [ LaTeX                                          ▼]
    自動インデント: [ なし                                            ▼]
    引用符の入力支援 [ なし                                         ▼]
    スペルチェッカの言語: [ English - UnitedStates (en_US)                       ▼]
    エンコーディング: [ UTF-8                                         ▼]

    エディタ全体のオプション
    ☐ 現在カーソルのある行をハイライトする ← チェックをはずす
    ☑ 自動補完を有効にする




   注意:これはデフォルトの設定です。設定を変更しても、すでに開いているウィンドウには影響しません。既存のウィンドウの設定を変更す
   るには、"フォーマット" メニューから設定をおこなってください


修正方法 (Windows)

$ svn checkout http://texworks.googlecode.com/svn/trunk/ texworks-read-only
$ pushd texworks-read-only

texworks-read-only/src/CompletingEdit.cpp

currentLineFormat->setBackground(QColor::fromRgbF(.9 * bgR + .1 * fgR, .9 * bgG + .1 * fgG, .9 * bgB + .1 * fgB));

の部分を

currentLineFormat->setForeground(QColor::fromRgbF(.1 * bgR + .9 * fgR, .1 * bgG + .9 * fgG, .1 * bgB + .9 * fgB));
currentLineFormat->setBackground(QColor::fromRgbF(.9 * bgR + .1 * fgR, .9 * bgG + .1 * fgG, .9 * bgB + .1 * fgB));

のように QTextFormat::setForeground メソッドで QColor::fromRgbF(.1 * bgR + .9 * fgR, .1 * bgG + .9 * fgG, .1 * bgB + .9 * fgB) や Qt::darkBlue や Qt::black などの色を指定すれば回避できます.
ただし,この修正方法ではカーソル行の文字が指定された色で表示されてしまい,色分けされなくなります.

$ mkdir build
$ pushd build
$ cmake .. -G "MSYS Makefiles" -DWITH_LUA=OFF -DWITH_PYTHON=OFF -DZLIB_LIBRARY=C:/MinGW/bin/zlib1.dll -Dgp_cmd=C:/MinGW/bin/objdump.exe
$ make
$ ./src/TeXworks.exe &

上記の作業を行うことで,かな漢字変換をしてもハイライトに隠れずに表示されました.

$ objdump -p ./src/TeXworks.exe | grep "DLL Name" | sort | uniq
        DLL Name: KERNEL32.dll
        DLL Name: QtCore4.dll
        DLL Name: QtGui4.dll
        DLL Name: QtScript4.dll
        DLL Name: QtScriptTools4.dll
        DLL Name: QtXml4.dll
        DLL Name: USER32.dll
        DLL Name: libgcc_s_dw2-1.dll
        DLL Name: libhunspell-1.3-0.dll
        DLL Name: libpoppler-qt4.dll
        DLL Name: libpoppler.dll
        DLL Name: libstdc++-6.dll
        DLL Name: msvcrt.dll
$ objdump -p /mingw/bin/libpoppler-qt4.dll | grep "DLL Name" | sort | uniq
        DLL Name: KERNEL32.dll
        DLL Name: QtCore4.dll
        DLL Name: QtGui4.dll
        DLL Name: QtXml4.dll
        DLL Name: libgcc_s_dw2-1.dll
        DLL Name: libpoppler.dll
        DLL Name: libstdc++-6.dll
        DLL Name: msvcrt.dll
$ objdump -p /mingw/bin/libpoppler.dll | grep "DLL Name" | sort | uniq
        DLL Name: ADVAPI32.DLL
        DLL Name: GDI32.dll
        DLL Name: KERNEL32.dll
        DLL Name: USER32.dll
        DLL Name: libcurl-4.dll
        DLL Name: libfontconfig-1.dll
        DLL Name: libfreetype-6.dll
        DLL Name: libgcc_s_dw2-1.dll
        DLL Name: libjpeg-9.dll
        DLL Name: liblcms2-2.dll
        DLL Name: libopenjp2.dll
        DLL Name: libpng16-16.dll
        DLL Name: libstdc++-6.dll
        DLL Name: libtiff-5.dll
        DLL Name: msvcrt.dll
        DLL Name: zlib1.dll
$ objdump -p /mingw/bin/libfontconfig-1.dll | grep "DLL Name" | sort | uniq
        DLL Name: KERNEL32.dll
        DLL Name: libfreetype-6.dll
        DLL Name: libxml2-2.dll
        DLL Name: msvcrt.dll
$ objdump -p /mingw/bin/libxml2-2.dll | grep "DLL Name" | sort | uniq
        DLL Name: KERNEL32.dll
        DLL Name: WS2_32.dll
        DLL Name: libiconv-2.dll
        DLL Name: liblzma-5.dll
        DLL Name: msvcrt.dll
        DLL Name: zlib1.dll

文字コードの変換

TeXworks で使用する文字コードはデフォルトでは UTF-8 です.
Shift_JIS, ISO-2022-JP, EUC-JP の文字コードを使用しているファイルを UTF-8 で表示する場合はファイルの文字コードを UTF-8 に変換する必要があります.
W32TeX には,標準で文字コード変換プログラムである nkf が含まれています.
nkf の場所は以下のようにして確認できます.

使用方法は UTF-8への変換 などを参照してください.
Windows PowerShell またはコマンド プロンプトに慣れていない場合は,メモ帳で UTF-8 に変換する方法もあります.
メモ帳で UTF-8 に変換した場合は BOM が付加されます.
nkf やメモ帳以外の変換ツールを使用したい場合は KanjiTranslator などの文字コード変換ツールを使っても OK です.

組み込みの PDF ビューアにゴシック体を表示させる

Windows 版 TeXworks の PDF ビューアでゴシック体を表示する場合はフォントを埋め込む必要があります.

TeX Live の場合

デフォルトでは和文フォントを埋め込みません.
IPAexフォントを埋め込む場合は Windows PowerShell またはコマンド プロンプトから

kanji-config-updmap-sys ipaex

または

kanji-config-updmap ipaex

を実行します.

W32TeX の場合

デフォルトでは IPAexMincho・IPAexGothic を埋め込みます.
upLaTeX (ptex2pdf), pdfupLaTeX で PDF ファイルを作成した場合,自動的にフォントが埋め込まれるので特に設定する必要はありません.
フォントが埋め込まれていない場合は C:\w32tex\share\texmf-dist\fonts\map\dvipdfmx\base\cid-x.map の設定を確認します.


C:.
└─w32tex
    └─share
        └─texmf-dist
            └─fonts
                └─map
                    └─dvipdfmx
                        └─base
                            └─cid-x.map

C:\w32tex\share\texmf-dist\fonts\map\dvipdfmx\base\cid-x.map が以下のように記述されていれば IPAexフォントが埋め込まれます.


%%
%% upTeX examples
%%

urml     UniJIS-UTF16-H   ipaexm.ttf
urmlv    UniJIS-UTF16-V   ipaexm.ttf
ugbm     UniJIS-UTF16-H   ipaexg.ttf
ugbmv    UniJIS-UTF16-V   ipaexg.ttf
uprml-h  UniJIS-UTF16-H   ipaexm.ttf
uprml-v  UniJIS-UTF16-V   ipaexm.ttf
upgbm-h  UniJIS-UTF16-H   ipaexg.ttf
upgbm-v  UniJIS-UTF16-V   ipaexg.ttf
uprml-hq UniJIS-UCS2-H    ipaexm.ttf
upgbm-hq UniJIS-UCS2-H    ipaexg.ttf

cid-x.map の場所は Windows PowerShell またはコマンド プロンプトから以下のコマンドを実行すれば検索できます.

kpsewhich -progname=dvipdfmx -format=map cid-x.map

設定

TeXworks/設定 を参照.

使い方

TeXworks/使い方 を参照.

スクリプト

関連リンク


*1 Dick は Richard のニックネーム (愛称).Richard → Rich → Rick → Dick.
*2 TeXworks は Win32 版の TeX Live に収録されています.Cygwin, OS X, GNU/Linux の TeX Live には TeXworks は収録されていません.

Last-modified: 2014-07-14 (月) 05:42:21 (11d)