Texmaker

Texmaker は,統合環境として使える LaTeX エディタです. SyncTeX もサポートされています. Texmaker のデフォルトの文字コードは UTF-8 です.

現在は Texmaker から開発がフォークし,機能の追加や不具合が修正された TeXstudio もあります.ただし,使用感が Texmaker とは違う部分もあります.



動作環境

Windows, macOS, Linux

License

GPLv2

派生版

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

Texmaker (free cross-platform latex editor) から,Windows, macOS, Linux 用の 64-bit バイナリおよびソースコードがダウンロードできます.

Windows

Windows の場合は msi 形式のファイルをダウンロードして実行すればインストールされます.

macOS

macOS の場合は dmg 形式のファイルをダウンロードして展開します.

Homebrew でインストールすることもできます.

https://github.com/caskroom/homebrew-cask/blob/master/Casks/texmaker.rb

brew cask install texmaker

Linux

Linux の場合はパッケージ管理システムからインストールするのがよいです.パッケージ名は大抵 texmaker でしょう.

日本語化

Texmaker はデフォルトでは英語でメニューが表示されますが,メニューを日本語化するためのファイルが作成されています.

Texmaker 4.0.1

texmaker_jp.qm を texmaker.exe と同じフォルダーに置いて Texmaker を起動して Options > Interface Language > jp を選択して Texmaker を再起動するとメニューが日本語化されます.

不具合

macOS の Texmaker で,文字コードが UTF-8 の場合に Backslash (U+005C) が入力できず 円記号 (U+00A5) になってしまうため自動補完機能が使えない

macOS の Qt アプリケーションで Backslash (U+005C) が 円記号 (U+00A5) に変換されるバグがあるようです (Backslash is converted to YEN SIGN on Qt for Mac with JIS keyboard.).

Karabiner で Backslash が優先されるようにキーバインドを変更するとよいようです.

Windows の Texmaker でかな漢字変換をする際に,変換候補の文字と背景が黒く表示され,読めなくなる

Windows の Texmaker には,かな漢字変換をする際に変換候補の文字色とその背景色がともに「黒」となって読めなくなるという不具合があります.

Options > Configure Texmaker > Editor で Dark theme を選択することで回避できます.

コマンドの設定に使用するパラメータのパースの仕方に問題があるため %% と % を同時に使用することができない

% これが本当で困っているならばバグ報告するべきでは.ここに書いて終わりですか?

Texmaker はコマンドの設定に使用するパラメータのパースの仕方に問題があります. TeXstudio ではコマンドの設定に使用するパラメータが正しく処理されています.

Texmaker のマニュアルにはコマンドの設定に % という表示が必要になった場合に %% と記述すればよいとありますが,%% を % よりも前に記述した場合は %% が % に変換されますが % が "basename" に変換されません.また,%% を % よりも後に記述した場合は %% は % に変換されずに "basename" が2回出力されてしまいます.

https://fossies.org/linux/texmaker/texmaker.cpp#l_7703 によると Texmaker では

QRegExp rx2("(%+)");
capt="";
if (rx2.indexIn(commandline) != -1) capt=rx2.cap(1);
if (capt=="%") commandline.replace("%","\""+basename+"\"");
else if (capt=="%%") commandline.replace("%%","%");

と記述されており,最初に % にマッチした場合は % が "basename" に置き換えられて %% は % に変換されずに "basename" が2回出力され,最初に %% にマッチした場合は %% は % に変換されますが % は "basename" に変換されずに % のまま出力されるためこの処理方法ではファイル名 (%) と % の表記 (%%) は同時に使用することが困難であると考えられます.

https://github.com/texstudio-org/texstudio/blob/master/src/buildmanager.cpp#L476 によると TeXstudio では

 	for (int i = 0; i < str.size(); i++) {
 		QString add;
 		if (str.at(i) == QChar('%')) {
 			if (str.at(i + 1) == QChar('%')) add = str.at(++i);
 			else add = "\"" + mainFile.completeBaseName() + "\"";

と記述されており,正規表現は使用せずに1文字ずつ文字列をチェックして %% であれば % を追加して % であれば "basename" を追加して文字列リストを作成するようです.

実例を挙げると例えば Windows 版の TeXstudio では Latexmk-upLaTeX は以下の設定で動作します.

latexmk.exe -e "$latex=q/uplatex %%O -kanji=utf8 -no-guess-input-enc -synctex=1 -interaction=nonstopmode %%S/" -e "$bibtex=q/upbibtex %%O %%B/" -e "$biber=q/biber %%O --bblencoding=utf8 -u -U --output_safechars %%B/" -e "$makeindex=q/upmendex %%O -o %%D %%S/" -e "$dvipdf=q/dvipdfmx %%O -o %%D %%S/" -norc -gg -pdfdvi -silent %

ところが Windows 版の Texmaker では上記の設定では動作せず以下のように %% を記述しない方法で設定する必要があります.

ruby -e "cmd='latexmk -e '+0x22.chr+'$latex=q/uplatex '+0x25.chr+'O'+' -kanji=utf8 -no-guess-input-enc -synctex=1 -interaction=nonstopmode '+0x25.chr+'S'+'/'+0x22.chr+' -e '+0x22.chr+'$bibtex=q/upbibtex '+0x25.chr+'O'+' '+0x25.chr+'B'+'/'+0x22.chr+' -e '+0x22.chr+'$biber=q/biber '+0x25.chr+'O'+' --bblencoding=utf8 -u -U --output_safechars '+0x25.chr+'B'+'/'+0x22.chr+' -e '+0x22.chr+'$makeindex=q/upmendex '+0x25.chr+'O'+' -o '+0x25.chr+'D'+' '+0x25.chr+'S'+'/'+0x22.chr+' -e '+0x22.chr+'$dvipdf=q/dvipdfmx '+0x25.chr+'O'+' -o '+0x25.chr+'D'+' '+0x25.chr+'S'+'/'+0x22.chr+' -norc -gg -pdfdvi '+'%.tex';system(cmd)"

Ruby では

0x25.chr

Windows PowerShell では

[char]0x25

で % を表示できます. このようにして Ruby や Windows PowerShell を使用して表示したい文字を「数値→文字」の変換で表現して設定を記述すれば OK です. Ruby, Windows PowerShell の他に バッチファイルやシェルスクリプトを使用しても OK です.

文字コードの変換

Texmaker で使用する文字コードはデフォルトでは UTF-8 です. このため,Shift_JIS, ISO-2022-JP, EUC-JP の文字コードを使用しているファイルを開きたい場合は,事前にファイルの文字コードを UTF-8 に変換する必要があります. 文字コードの変換には,各種テキストエディタの機能を使う方法と,コマンドラインから変換プログラムを使う方法があります.

設定

% 以下の設定解説ページは読めるものではない.一から書き直しが必要.

Texmaker/設定 を参照.

使い方

Texmaker/使い方 を参照.


Last-modified: 2018-07-17 (火) 10:21:04 (91d)