「Xterm」の版間の差分
(→ヒントとテクニック: 翻訳) |
Kusanaginoturugi (トーク | 投稿記録) (→リソースファイルの設定: リンクを修正) |
||
| (他の1人の利用者による、間の18版が非表示) | |||
| 6行目: | 6行目: | ||
'''xterm''' は [[Xorg|X Window System]] の標準の[[Wikipedia:Terminal emulator|ターミナルエミュレータ]]です。様々なカスタマイズができ、多数の役に立つ機能と、少数のあまり役に立たない機能を備えています。 |
'''xterm''' は [[Xorg|X Window System]] の標準の[[Wikipedia:Terminal emulator|ターミナルエミュレータ]]です。様々なカスタマイズができ、多数の役に立つ機能と、少数のあまり役に立たない機能を備えています。 |
||
| + | == インストール == |
||
| − | ==基本設定== |
||
| + | |||
| + | {{Pkg|xterm}} パッケージを [[インストール]] して下さい。 |
||
| + | |||
| + | == 基本設定 == |
||
| + | |||
=== リソースファイルの設定 === |
=== リソースファイルの設定 === |
||
| − | ターミナルエミュレータとして使いやすさを向上させるオプションを [[X |
+ | ターミナルエミュレータとして使いやすさを向上させるオプションを [[X リソース]]ファイルで設定することができます。オプションのリストは {{ic|man xterm}} を見て下さい。 |
==== TERM 環境変数 ==== |
==== TERM 環境変数 ==== |
||
| 26行目: | 31行目: | ||
==== UTF-8 ==== |
==== UTF-8 ==== |
||
| − | + | [[ロケール]] が UTF-8 に設定されていることを確認してください。UTF-8 を使用しない場合は、設定によって xterm がロケールに厳密に従うように強制する必要がある場合があります。 |
|
| + | |||
| + | XTerm.vt100.locale: true |
||
| + | |||
| + | UTF-8 を強制するには、次のように設定します。 |
||
| + | |||
| + | XTerm.vt100.locale: false |
||
| + | XTerm.vt100.utf8: true |
||
| + | |||
| + | XTerm は {{ic|eo.UTF-8}} を含むすべての UTF-8 ロケールをサポートしているわけではないためこの設定は、多くの場合必要になります。 |
||
| + | |||
| + | ==== 'Alt' キーを他のターミナルエミュレータと同じように動作させる ==== |
||
| + | |||
| + | 例えば {{Ic|Alt+f}} を押すと {{Ic|æ}} が挿入されます。{{ic|Alt}} の代わりに {{Ic|^[}} を送るようにするには、(gnome-terminal や konsole のように) 以下を設定します。 |
||
| + | |||
| + | XTerm.vt100.metaSendsEscape: true |
||
| + | |||
| + | ==== バックスペースキーの修正 ==== |
||
| + | |||
| + | Arch Linux では、xterm は backspace が押されると {{ic|^H}} キーを送信します。これは [[Emacs]] の {{ic|Ctrl+H}} キーコンビネーションを壊してしまいます。 |
||
| + | 回避策として、リソースに以下を追加して下さい。 |
||
| + | |||
| + | XTerm.vt100.backarrowKey: false |
||
| + | XTerm.ttyModes: erase ^? |
||
| + | |||
| + | ==== キーバインド ==== |
||
| + | xterm は端末を操作するための一連の "アクション" を定義しています。例えば、 {{ic|copy-selection()}}, {{ic|hard-reset()}}, {{ic|scroll-back()}} などです。これらのアクションは {{ic|translations}} リソースを使用してマウスとキーの組み合わせにマッピングできます。例えば、ウィンドウを最大化/復元するために {{ic|Ctrl+M}} と {{ic|Ctrl+R}} をマップすることができます。 |
||
| − | XTerm*locale: true |
||
| + | XTerm.vt100.translations: #override \n\ |
||
| − | ==== 'Alt' キーの修正 ==== |
||
| + | Ctrl <Key>M: maximize() \n\ |
||
| + | Ctrl <Key>R: restore() |
||
| + | {{ic|#override}} は、これらのキー割り当てが既存のキー割り当てを上書きすることを示します (カスタムキー割り当てでは、ほとんどの場合、これが必要です。) 各バインドはエスケープシーケンス {{ic|n}} で区切らなければなりません。もし、リテラルな改行を挿入したい場合は、それもエスケープする必要があります({{ic|ac|n}} となります。)動作の完全なリストと多くの例は {{man|1|xterm}} の '''KEY BINDINGS''' セクションを参照してください。 |
||
| − | キーボードショートカットに {{ic|Alt}} キーを使う場合、リソースファイルに以下の設定をしてください: |
||
| + | {{Tip|キーバインドを切り替えて使うこともできます。man ページの {{ic|keymap()}} アクションを参照してください。}} |
||
| − | XTerm*metaSendsEscape: true |
||
=== スクロール === |
=== スクロール === |
||
| + | |||
xterm ウィンドウの一番下に新しい行が書き込まれると、一番上の古い行は消えます。マウスホイールや {{ic|Shift+PageUp}} または {{ic|Shift+PageDown}} のキーコンビネーション、あるいはスクロールバーを使うことで画面から消えた行をスクロールして見ることができます。 |
xterm ウィンドウの一番下に新しい行が書き込まれると、一番上の古い行は消えます。マウスホイールや {{ic|Shift+PageUp}} または {{ic|Shift+PageDown}} のキーコンビネーション、あるいはスクロールバーを使うことで画面から消えた行をスクロールして見ることができます。 |
||
デフォルトでは、1024行が保存されます。保存する行数は {{ic|saveLines}} リソースで変更できます: |
デフォルトでは、1024行が保存されます。保存する行数は {{ic|saveLines}} リソースで変更できます: |
||
| − | Xterm*saveLines: 4096 |
||
| + | XTerm.vt100.saveLines: 4096 |
||
| − | スクロールの設定を変更する他の X リソースとしては {{ic|jumpScroll}} (デフォルトでは {{ic|true}}) や、{{ic|multiScroll}} と {{ic|fastScroll}} があります (どちらもデフォルトでは {{ic|false}})。[[#VT オプションメニュー|別のスクリーン]]の中をスクロールするには、{{ic|alternateScroll}} を {{ic|true}} に設定してください。 |
||
| + | |||
| + | スクロールの設定を変更する他の X リソースとしては {{ic|jumpScroll}} (デフォルトでは {{ic|true}}) や、{{ic|multiScroll}} と {{ic|fastScroll}} があります (どちらもデフォルトでは {{ic|false}}) [[#VT オプションメニュー|別のスクリーン]] の中をスクロールするには、{{ic|alternateScroll}} を {{ic|true}} に設定してください。 |
||
==== スクロールバー ==== |
==== スクロールバー ==== |
||
| + | |||
| − | スクロールバーはデフォルトでは表示されません。メニューセレクションやコマンドラインオプションを使ったり、あるいはリソースを設定することで表示させることができます。ウィンドウの左右に表示させることができ、リソース設定を弄ることで見た目も変えることができます。 |
||
| + | スクロールバーはデフォルトでは表示されません。これを有効にしたり、リソース設定を通じて外観を調整することができます ("scrollbar" の大文字と小文字の違いに注意してください) |
||
| + | |||
| + | XTerm.vt100.scrollBar: true |
||
| + | XTerm.vt100.scrollbar.width: 8 |
||
| + | |||
| + | 他のスクロールバーリソースについては、{{man|1|xterm|Scrollbar Resources}} を参照してください。 |
||
スクロールバーの使い方は普段使用するようなスクロールバーとは異なっています。 |
スクロールバーの使い方は普段使用するようなスクロールバーとは異なっています。 |
||
| + | |||
*下にスクロール: |
*下にスクロール: |
||
| − | + | ** スクロールバーを左マウスボタンでクリック |
|
| − | + | ** スクロールバーの ''つまみ'' (サム) の下部を中マウスボタンでクリック |
|
*上にスクロール: |
*上にスクロール: |
||
| − | + | ** スクロールバーを右マウスボタンでクリック |
|
| − | + | ** スクロールバーの ''つまみ'' (サム) の上部を中マウスボタンでクリック |
|
*上下どちらかに移動: |
*上下どちらかに移動: |
||
| − | + | ** 中マウスボタンで ''つまみ'' をクリックして "クリックアンドドラッグ" |
|
| + | |||
| + | === メニュー === |
||
| − | ===メニュー=== |
||
Arch Linux の xterm ではツールバーやメニューバーは無効にしてコンパイルされています。メニューは xterm ウィンドウの中で {{ic|Ctrl+MouseButton}} を押すことでポップアップして表示されます。メニューアイテムで設定できることは、大抵コマンドラインオプションやリソースの設定でも可能です。 |
Arch Linux の xterm ではツールバーやメニューバーは無効にしてコンパイルされています。メニューは xterm ウィンドウの中で {{ic|Ctrl+MouseButton}} を押すことでポップアップして表示されます。メニューアイテムで設定できることは、大抵コマンドラインオプションやリソースの設定でも可能です。 |
||
| 64行目: | 106行目: | ||
メニューオプションは以下で説明します。 |
メニューオプションは以下で説明します。 |
||
| − | ====メインのオプションメニュー==== |
+ | ==== メインのオプションメニュー ==== |
| + | |||
'''''Ctrl + 左マウス''''' |
'''''Ctrl + 左マウス''''' |
||
| 76行目: | 119行目: | ||
*{{ic|Quit}} メニューアイテムは xterm ウィンドウを終了します。{{ic|HUP}} シグナルを送信するのと同じです。キーボードで {{ic|Ctrl+d}} を押すか、または {{ic|exit}} を入力することでも xterm は終了できます。 |
*{{ic|Quit}} メニューアイテムは xterm ウィンドウを終了します。{{ic|HUP}} シグナルを送信するのと同じです。キーボードで {{ic|Ctrl+d}} を押すか、または {{ic|exit}} を入力することでも xterm は終了できます。 |
||
| − | ====VT オプションメニュー==== |
+ | ==== VT オプションメニュー ==== |
| + | |||
'''''Ctrl + 中マウス''''' |
'''''Ctrl + 中マウス''''' |
||
*{{ic|Select to Clipboard}} – 通常、選択されたテキストは PRIMARY に保存され、中マウスボタンを使うか {{ic|Shift+Insert}} で貼り付けることができます。このオプションをオンにすると、選択されたテキストは CLIPBOARD を使うようになり、xterm ウィンドウで選択したテキストを {{ic|Ctrl+v}} で GUI アプリケーションに貼り付けることができます。対応する XTerm リソースは {{ic|selectToClipboard}} です。 |
*{{ic|Select to Clipboard}} – 通常、選択されたテキストは PRIMARY に保存され、中マウスボタンを使うか {{ic|Shift+Insert}} で貼り付けることができます。このオプションをオンにすると、選択されたテキストは CLIPBOARD を使うようになり、xterm ウィンドウで選択したテキストを {{ic|Ctrl+v}} で GUI アプリケーションに貼り付けることができます。対応する XTerm リソースは {{ic|selectToClipboard}} です。 |
||
| 86行目: | 130行目: | ||
*{{ic|Show Tek Window}} と {{ic|Switch to Tek Mode}} – [[Wikipedia:Tektronix 4010|Tektronix 4014]] は CAD やプロットアプリケーションで使われていた1970年代のグラフィックスターミナルです。{{Pkg|plotutils}} に含まれているコマンドラインプログラム {{ic|graph}} やアプリケーション {{Pkg|gnuplot}} が xterm の Tek エミュレーションを使うことができます。ただし、普通の人はデータを図に記すのに近代的なディスプレイオプションを使うでしょう。下の [[#Tek 4014 デモンストレーション]] を見て下さい。 |
*{{ic|Show Tek Window}} と {{ic|Switch to Tek Mode}} – [[Wikipedia:Tektronix 4010|Tektronix 4014]] は CAD やプロットアプリケーションで使われていた1970年代のグラフィックスターミナルです。{{Pkg|plotutils}} に含まれているコマンドラインプログラム {{ic|graph}} やアプリケーション {{Pkg|gnuplot}} が xterm の Tek エミュレーションを使うことができます。ただし、普通の人はデータを図に記すのに近代的なディスプレイオプションを使うでしょう。下の [[#Tek 4014 デモンストレーション]] を見て下さい。 |
||
| − | ====VT フォントメニュー==== |
+ | ==== VT フォントメニュー ==== |
| + | |||
'''''Ctrl + 右マウス''''' |
'''''Ctrl + 右マウス''''' |
||
| 95行目: | 140行目: | ||
* XLFD フォントの名前を使うときに、{{ic|Selection}} で PRIMARY (または CLIPBOARD) セレクションに保存されたフォントの名前に切り替えられます。 |
* XLFD フォントの名前を使うときに、{{ic|Selection}} で PRIMARY (または CLIPBOARD) セレクションに保存されたフォントの名前に切り替えられます。 |
||
| − | ====Tek オプションメニュー==== |
+ | ==== Tek オプションメニュー ==== |
| + | |||
'''Tek Window''' から '''''Ctrl + 中マウス''''' |
'''Tek Window''' から '''''Ctrl + 中マウス''''' |
||
| 131行目: | 177行目: | ||
== カラー == |
== カラー == |
||
| − | + | xtermのデフォルトは、白の ''背景色'' に黒の ''前景色'' です。 前景色と背景色を逆にするには、リソースを設定することで逆転できます。 |
|
| − | $ xterm -rv |
||
| + | XTerm.vt100.reverseVideo: true |
||
| − | もしくは、以下の [[X resources]] パラメータでも色を反転させられます (設定後にリソースを[[X resources#.Xresources の解析|再読み込み]]するのを忘れないで下さい): |
||
| − | XTerm*reverseVideo: on |
||
| + | あるいは、リソースを使用して、前景色と背景色 (および最初の 16 個の端子色) を直接変更することもできます。 |
||
| − | Xterm の前景色 (文字の色) と背景色はコマンドラインから設定することができます。それぞれ {{ic|-fg}} と {{ic|-bg}} オプションを使います。 |
||
| − | xterm -fg PapayaWhip -bg "rgb:00/00/80" |
||
| + | XTerm.vt100.foreground: white |
||
| − | 前景色と背景色だけでなく、最初の16色のターミナルの色も [[X resources]] ファイルで設定できます: |
||
| + | XTerm.vt100.background: black |
||
| − | {{bc|XTerm*foreground: rgb:b2/b2/b2 |
||
| − | XTerm |
+ | XTerm.vt100.color0: rgb:28/28/28 |
| + | ! ... |
||
| − | XTerm*color0: rgb:28/28/28 |
||
| + | XTerm.vt100.color15: rgb:e4/e4/e4 |
||
| − | ! ...Lines omitted... |
||
| − | |||
| − | XTerm*color15: rgb:e4/e4/e4}} |
||
{{Note|X ライブラリを使用するアプリケーションの色は、さまざまな方法で指定することができます。いくつかの色は、割り当てられた名前で指定することができます。 {{{Pkg|emacs}} または {{Pkg|vim}} がインストールされていれば、 {{ic|/usr/share/emacs/*/etc/rgb.txt}} または {{ic|/usr/share/vim/*/rgb.txt}} で色名のリストとその 10 進数の RGB 値を確認することができます。 色は 16 進数の RGB 値で {{ic|rgb:RR/GG/BB}} というフォーマットで指定することもできますし、古い構文で推奨されていない {{ic|#RRGGBB}} という構文で指定することもできます。{{ic|PapayaWhip}} の色は {{ic|rgb:ff/ef/d5}} と同じで、これは {{ic|#ffefd5}} と同じです。色の構文についてのより完全な説明は {{Pkg|xorg-docs}} の {{ic|man(7)X}} を参照してください。}} |
{{Note|X ライブラリを使用するアプリケーションの色は、さまざまな方法で指定することができます。いくつかの色は、割り当てられた名前で指定することができます。 {{{Pkg|emacs}} または {{Pkg|vim}} がインストールされていれば、 {{ic|/usr/share/emacs/*/etc/rgb.txt}} または {{ic|/usr/share/vim/*/rgb.txt}} で色名のリストとその 10 進数の RGB 値を確認することができます。 色は 16 進数の RGB 値で {{ic|rgb:RR/GG/BB}} というフォーマットで指定することもできますし、古い構文で推奨されていない {{ic|#RRGGBB}} という構文で指定することもできます。{{ic|PapayaWhip}} の色は {{ic|rgb:ff/ef/d5}} と同じで、これは {{ic|#ffefd5}} と同じです。色の構文についてのより完全な説明は {{Pkg|xorg-docs}} の {{ic|man(7)X}} を参照してください。}} |
||
カラースキームについては [https://bbs.archlinux.org/viewtopic.php?id=51818&p=1 Terminal Colour Scheme Screenshots] のフォーラムスレッドに様々な設定例が載っています。 |
カラースキームについては [https://bbs.archlinux.org/viewtopic.php?id=51818&p=1 Terminal Colour Scheme Screenshots] のフォーラムスレッドに様々な設定例が載っています。 |
||
| + | |||
{{Tip|多くの人は、アプリケーションクラスやアプリケーションインスタンスを指定せずに、X リソースファイルで色を指定します |
{{Tip|多くの人は、アプリケーションクラスやアプリケーションインスタンスを指定せずに、X リソースファイルで色を指定します |
||
| − | {{bc|*foreground: rgb:b2/b2/b2 |
||
| − | *background: rgb:08/08/08}} |
||
| − | 上記の例では、これらのリソースを使用するすべての''Xlib'' アプリケーション(xclock、xfontsel など)の前景色と背景色の値を設定しています。これは、統一された配色を実現するための優れた簡単な方法です。}} |
||
| + | *foreground: rgb:b2/b2/b2 |
||
| − | ==フォント== |
||
| + | *background: rgb:08/08/08 |
||
| + | |||
| + | 上記の例では、これらのリソースを使用するすべての''Xlib'' アプリケーション (xclock、xfontsel など) の前景色と背景色の値を設定しています。これは、統一された配色を実現するための優れた簡単な方法です。}} |
||
| + | |||
| + | == フォント == |
||
| + | |||
=== デフォルトフォント === |
=== デフォルトフォント === |
||
Xterm のデフォルトフォントは [[X Logical Font Description]] エイリアスで {{ic|fixed}} という名前のビットマップフォントです。大抵は以下のフォントになります: |
Xterm のデフォルトフォントは [[X Logical Font Description]] エイリアスで {{ic|fixed}} という名前のビットマップフォントです。大抵は以下のフォントになります: |
||
| + | |||
-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-? |
-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-? |
||
| + | |||
| − | このフォントは {{ic|6x13}} という名前でもエイリアスされていて、ユニコードのグリフに対して驚くほど広いカバー範囲を持っています。 デフォルトの "TrueType" フォントは {{ic|mono}} という名前の 14-point フォントになります。 使用される ''FreeType'' フォントは、このコマンドで見つけることができます。 |
||
| + | このフォントは {{ic|6x13}} という名前でもエイリアスされていて、ユニコードのグリフに対して驚くほど広いカバー範囲を持っています。 デフォルトの "TrueType" フォントは {{ic|mono}} という名前の 14-point フォントになります。使用される ''FreeType'' フォントは、このコマンドで見つけることができます。 |
||
| + | |||
$ fc-match mono |
$ fc-match mono |
||
| + | フォントが TrueType であるかどうかに応じて、リソースでフォントを指定できます: |
||
| − | フォントはコマンドラインから指定できます。ビットマップフォントの名前を指定するときは {{ic|-fn}} オプションを、Xft フォントを指定するときは {{ic|-fa}} を使います。以下の設定では [[#VT フォントメニュー]] の {{ic|TrueType Fonts}} で2つのフォントを切り替えることができます。 |
||
| − | {{bc|<nowiki>$ xterm -fn 7x13 -fa "Liberation Mono:size=10:antialias=false"</nowiki>}} |
||
| − | 永続的に設定したい場合、デフォルトフォントを [[X resources]] ファイルで設定します: |
||
| − | {{bc|<nowiki>xterm*faceName: Liberation Mono:size=10:antialias=false</nowiki> |
||
| − | xterm*font: 7x13}} |
||
| + | XTerm.vt100.faceName: Liberation Mono:size=10:antialias=false |
||
| − | {{Note|リソースファイルで {{ic|faceName}} が設定されている場合にコマンドラインオプションの {{ic|-fn}} が使えなくなるというバグが xterm には昔から存在しています。コマンドラインでリソース {{ic|renderFont}} を {{ic|false}} に設定するのが一つの解決方法です。 |
||
| + | XTerm.vt100.font: 7x13 |
||
| − | {{bc|$ xterm -fn 8x13 # If this command does not set the font, |
||
| + | |||
| − | $ xterm -fn 8x13 -xrm "*renderFont:false" # set the 'renderFont' resource to 'false'.}} |
||
| − | + | テストするには、コマンドラインでフォントを設定することもできます: {{ic|faceName}} の場合は {{ic|-fa}}、{{ic|font}} の場合は {{ic|-fn}}。両方の種類のフォントを設定した場合は、[[Xterm#VT フォントメニュー|VT フォントメニュー]] から {{ic|TrueType フォント}} を切り替えることで、2 つのフォントを切り替えることができます。次のリソースを使用してデフォルトを選択することもできます |
|
| + | |||
| + | ! start with TrueType fonts disabled |
||
| + | XTerm.vt100.renderFont: false |
||
=== 太字フォントと下線フォント === |
=== 太字フォントと下線フォント === |
||
| 179行目: | 226行目: | ||
xterm で XLFD 名を使用する場合、イタリック体のフォントは下線文字として表示されます。 TrueType フォントは斜体の書体を使用する必要があります。 |
xterm で XLFD 名を使用する場合、イタリック体のフォントは下線文字として表示されます。 TrueType フォントは斜体の書体を使用する必要があります。 |
||
| − | コマンドライン、{{ic|-fb}}、または {{ic|boldFont}} リソースで太字フォントを指定しない場合、xterm は通常のフォントに一致する太字フォントを探そうとします。 一致するフォントが見つからない場合、太字フォントは通常フォントを ''overstriking'' することによって作成されます。 |
+ | コマンドライン、{{ic|-fb}}、または {{ic|XTerm.vt100.boldFont}} リソースで太字フォントを指定しない場合、xterm は通常のフォントに一致する太字フォントを探そうとします。 一致するフォントが見つからない場合、太字フォントは通常フォントを ''overstriking'' することによって作成されます。 |
| + | |||
| + | === CJK フォント === |
||
| − | ===CJK フォント=== |
||
中国語や日本語、韓国語で使われる全角文字が含まれているフォントは多くありません。これらの言語を使う場合は [[urxvt]] など別のターミナルエミュレータを使うほうが良いでしょう。 |
中国語や日本語、韓国語で使われる全角文字が含まれているフォントは多くありません。これらの言語を使う場合は [[urxvt]] など別のターミナルエミュレータを使うほうが良いでしょう。 |
||
xterm における CJK のビットマップの XLFD フォントの使用は落とし穴がたくさんあります。CJK を表示するときは {{ic|faceNameDoublesize}} リソースを利用して TrueType フォントを使うほうがずっと楽です。以下の例では通常フォントとして ''DejaVu Sans Mono'' を全角フォントとして ''WenQuanYi Bitmap Song'' を使用します: |
xterm における CJK のビットマップの XLFD フォントの使用は落とし穴がたくさんあります。CJK を表示するときは {{ic|faceNameDoublesize}} リソースを利用して TrueType フォントを使うほうがずっと楽です。以下の例では通常フォントとして ''DejaVu Sans Mono'' を全角フォントとして ''WenQuanYi Bitmap Song'' を使用します: |
||
| + | |||
| − | {{bc|<nowiki>xterm*faceName: DejaVu Sans Mono:style=Book:antialias=false</nowiki> |
||
| + | XTerm.vt100.faceName: DejaVu Sans Mono:style=Book:antialias=false |
||
| − | xterm*faceNameDoublesize: WenQuanYi Bitmap Song |
||
| + | XTerm.vt100.faceNameDoublesize: WenQuanYi WenQuanYi Bitmap Song |
||
| − | xterm*faceSize: 8}} |
||
| + | XTerm.vt100.faceSize: 8 |
||
== ヒントとテクニック == |
== ヒントとテクニック == |
||
| 203行目: | 252行目: | ||
=== 緊急ベルの有効化 === |
=== 緊急ベルの有効化 === |
||
| + | ベルの文字がウィンドウマネージャーに緊急事態を知らせるようにするには、次のように設定します: |
||
| − | 以下の行を {{ic|~/.Xresources}} ファイルに追加します: |
||
| − | + | XTerm.vt100.bellIsUrgent: true |
|
| − | ===フォントのヒント=== |
+ | === フォントのヒント === |
==== 太字や斜体の代わりに色を使う ==== |
==== 太字や斜体の代わりに色を使う ==== |
||
フォントサイズを小さくしている場合、太字や斜体の文字を読むのは困難です。太字や斜体、下線を無効にして代わりにテキストに色を付けることができます。例: |
フォントサイズを小さくしている場合、太字や斜体の文字を読むのは困難です。太字や斜体、下線を無効にして代わりにテキストに色を付けることができます。例: |
||
| + | |||
| − | {{bc|! Forbid bold font faces; bold type is light blue. |
||
| + | ! disable bold font faces, instead make text light blue. |
||
| − | XTerm*colorBDMode: true |
||
| + | XTerm.vt100.colorBDMode: true |
||
| − | XTerm*colorBD: rgb:82/a4/d3 |
||
| + | XTerm.vt100.colorBD: rgb:82/a4/d3 |
||
| − | ! Do not underscore text, underlined text is white. |
||
| + | ! disable underlined text, instead make it white. |
||
| − | XTerm*colorULMode: true |
||
| + | XTerm.vt100.colorULMode: true |
||
| − | XTerm*colorUL: rgb:e4/e4/e4}} |
||
| + | XTerm.vt100.colorUL: rgb:e4/e4/e4 |
||
| + | ! similarly use colorIT for italics |
||
| + | |||
| + | 書式設定の情報については、[[Xterm#カラー|カラー]] を参照してください。 |
||
==== 行間の調整 ==== |
==== 行間の調整 ==== |
||
| − | + | テキストの行が近すぎたり、間隔が広すぎたりすることがあります。一例として、''DejaVu Sans Mono'' を使用すると、アンダーバー記号が CJK グリフまたは下の行のカーソルブロックに突き当たる可能性があります。タイポグラフによって ''leading '' と呼ばれる行間隔は、たとえば間隔を広げるために、次のリソースを使用して調整できます: |
|
| − | XTerm*scaleHeight: 1.01 |
||
| − | {{ic|scaleHeight}} に設定できる値は {{ic|0.9}} から {{ic|1.5}} までの間の数値で、デフォルトは {{ic|1.0}} です。 |
||
| + | XTerm.vt100.scaleHeight: 1.01 |
||
| − | ===黒いボーターの削除=== |
||
| − | 場合によって Xterm には黒い縁が表示されますが、以下の行を {{ic|~/.Xresources}} ファイルに追加することで消すことができます。 |
||
| + | {{ic|scaleHeight}} に設定できる値は {{ic|0.9}} から {{ic|1.5}} までの間の数値で、デフォルトは {{ic|1.0}} です。 |
||
| − | xterm*borderWidth: 0 |
||
=== Tek 4014 デモンストレーション === |
=== Tek 4014 デモンストレーション === |
||
| 237行目: | 287行目: | ||
cat /usr/share/tek2plot/dmerc.tek |
cat /usr/share/tek2plot/dmerc.tek |
||
Tek ウィンドウに世界地図が表示されます。同じディレクトリにある他の {{ic|*.tek}} ファイルを表示することもできます。Tek ウィンドウを終了するには、xterm メニューを使います。 |
Tek ウィンドウに世界地図が表示されます。同じディレクトリにある他の {{ic|*.tek}} ファイルを表示することもできます。Tek ウィンドウを終了するには、xterm メニューを使います。 |
||
| + | |||
| + | === X11 の入力スヌーピングからの保護 === |
||
| + | |||
| + | [[Xterm#メインのオプションメニュー|メインのオプションメニュー]] から "Secure Keyboard" モードを有効にするのは不便な場合があります。代わりに、[[Xterm#キーバインド|キーバインド]] を使用して {{ic|secure()}} アクションを呼び出すことができます: |
||
| + | |||
| + | Ctrl Alt <Key>S: secure() |
||
== トラブルシューティング == |
== トラブルシューティング == |
||
| 242行目: | 298行目: | ||
=== スクロールでチラつきが発生する === |
=== スクロールでチラつきが発生する === |
||
| − | {{ |
+ | {{Note|ダブルバッファを使用すると非ビットマップフォントが正しく表示されなくなることがあります。}} |
[[ABS]] を使って {{ic|--enable-double-buffer}} フラグを指定して xterm をリビルドしてください: |
[[ABS]] を使って {{ic|--enable-double-buffer}} フラグを指定して xterm をリビルドしてください: |
||
| 260行目: | 316行目: | ||
設定ファイルに重複した項目を書かない方が良い場合は、ワイルドカードによるマッチングを使用することができます。 |
設定ファイルに重複した項目を書かない方が良い場合は、ワイルドカードによるマッチングを使用することができます。 |
||
*.vt100.reverseVideo: true |
*.vt100.reverseVideo: true |
||
| + | |||
| + | === フォントサイズメニューでフォントサイズが変更されない === |
||
| + | |||
| + | フォントサイズの変更で問題が発生した場合は、{{Pkg|xorg-mkfontscale}} パッケージをインストールしてください。 |
||
== 参照 == |
== 参照 == |
||
2024年7月2日 (火) 18:51時点における最新版
xterm は X Window System の標準のターミナルエミュレータです。様々なカスタマイズができ、多数の役に立つ機能と、少数のあまり役に立たない機能を備えています。
目次
インストール
基本設定
リソースファイルの設定
ターミナルエミュレータとして使いやすさを向上させるオプションを X リソースファイルで設定することができます。オプションのリストは man xterm を見て下さい。
TERM 環境変数
xterm が TERM 変数を適切に設定できるようにしてください。~/.bashrc や ~/.bash_profile などのファイルから TERM 変数を設定してはいけません。ターミナルが自ら適切な TERM を設定することで、適切な terminfo ファイルが使われるようになります。利用できる terminfo ファイルは xterm と xterm-256color です。
TERM を明示的に設定しなかった場合、xterm は $TERM を xterm と設定します。以下のコマンドを xterm の中から実行することで確認できます:
$ echo $TERM $ tset -q
TERM が明示的に設定されていない場合、vim など、プログラムによっては何かキーが押されるまでカラースキームが正しく表示されないことがあります。この問題は以下のようにリソースを設定することで直せます:
xterm*termName: xterm-256color
UTF-8
ロケール が UTF-8 に設定されていることを確認してください。UTF-8 を使用しない場合は、設定によって xterm がロケールに厳密に従うように強制する必要がある場合があります。
XTerm.vt100.locale: true
UTF-8 を強制するには、次のように設定します。
XTerm.vt100.locale: false XTerm.vt100.utf8: true
XTerm は eo.UTF-8 を含むすべての UTF-8 ロケールをサポートしているわけではないためこの設定は、多くの場合必要になります。
'Alt' キーを他のターミナルエミュレータと同じように動作させる
例えば Alt+f を押すと æ が挿入されます。Alt の代わりに ^[ を送るようにするには、(gnome-terminal や konsole のように) 以下を設定します。
XTerm.vt100.metaSendsEscape: true
バックスペースキーの修正
Arch Linux では、xterm は backspace が押されると ^H キーを送信します。これは Emacs の Ctrl+H キーコンビネーションを壊してしまいます。
回避策として、リソースに以下を追加して下さい。
XTerm.vt100.backarrowKey: false XTerm.ttyModes: erase ^?
キーバインド
xterm は端末を操作するための一連の "アクション" を定義しています。例えば、 copy-selection(), hard-reset(), scroll-back() などです。これらのアクションは translations リソースを使用してマウスとキーの組み合わせにマッピングできます。例えば、ウィンドウを最大化/復元するために Ctrl+M と Ctrl+R をマップすることができます。
XTerm.vt100.translations: #override \n\
Ctrl <Key>M: maximize() \n\
Ctrl <Key>R: restore()
#override は、これらのキー割り当てが既存のキー割り当てを上書きすることを示します (カスタムキー割り当てでは、ほとんどの場合、これが必要です。) 各バインドはエスケープシーケンス n で区切らなければなりません。もし、リテラルな改行を挿入したい場合は、それもエスケープする必要があります(<coden>ac となります。)動作の完全なリストと多くの例は xterm(1) の KEY BINDINGS セクションを参照してください。
スクロール
xterm ウィンドウの一番下に新しい行が書き込まれると、一番上の古い行は消えます。マウスホイールや Shift+PageUp または Shift+PageDown のキーコンビネーション、あるいはスクロールバーを使うことで画面から消えた行をスクロールして見ることができます。
デフォルトでは、1024行が保存されます。保存する行数は saveLines リソースで変更できます:
XTerm.vt100.saveLines: 4096
スクロールの設定を変更する他の X リソースとしては jumpScroll (デフォルトでは true) や、multiScroll と fastScroll があります (どちらもデフォルトでは false) 別のスクリーン の中をスクロールするには、alternateScroll を true に設定してください。
スクロールバー
スクロールバーはデフォルトでは表示されません。これを有効にしたり、リソース設定を通じて外観を調整することができます ("scrollbar" の大文字と小文字の違いに注意してください)
XTerm.vt100.scrollBar: true XTerm.vt100.scrollbar.width: 8
他のスクロールバーリソースについては、xterm(1) § Scrollbar Resources を参照してください。
スクロールバーの使い方は普段使用するようなスクロールバーとは異なっています。
- 下にスクロール:
- スクロールバーを左マウスボタンでクリック
- スクロールバーの つまみ (サム) の下部を中マウスボタンでクリック
- 上にスクロール:
- スクロールバーを右マウスボタンでクリック
- スクロールバーの つまみ (サム) の上部を中マウスボタンでクリック
- 上下どちらかに移動:
- 中マウスボタンで つまみ をクリックして "クリックアンドドラッグ"
メニュー
Arch Linux の xterm ではツールバーやメニューバーは無効にしてコンパイルされています。メニューは xterm ウィンドウの中で Ctrl+MouseButton を押すことでポップアップして表示されます。メニューアイテムで設定できることは、大抵コマンドラインオプションやリソースの設定でも可能です。
メニューオプションは以下で説明します。
メインのオプションメニュー
Ctrl + 左マウス
Secure Keyboardを設定すると xterm ウィンドウだけがキーストロークを受け取れるようになり、他のアプリケーションがキーストロークを傍受することはできなくなります。実行すると画面の色が反転します。色が反転しない場合、Secure Keyboard モードが有効になっていません。このオプションの制限については xterm の man ページの "SECURITY" セクションを読んで下さい。
Allow SendEventsは他のプロセスが xterm ウィンドウに打鍵やマウスのイベントを送信できるようにします。セキュリティ上のリスクがあるため、何の効果があるのかよくわからないときは有効にしないでください。
Log to File– ログファイルの名前はXterm.log.hostname.yyyy.mm.dd.hh.mm.ss.XXXXXXになります。このファイルには印字された出力とマウスの移動が全て記録されます。ログ出力はセキュリティリスクになることもあります。
- 6つの
Send *** Signalメニューアイテムはキーボードが動作しなくなったような場合を除いて、基本的に使うことはありません。HUP,TERM,KILLは xterm ウィンドウを終了します。KILLはできるだけ使わないでください。
Quitメニューアイテムは xterm ウィンドウを終了します。HUPシグナルを送信するのと同じです。キーボードでCtrl+dを押すか、またはexitを入力することでも xterm は終了できます。
VT オプションメニュー
Ctrl + 中マウス
Select to Clipboard– 通常、選択されたテキストは PRIMARY に保存され、中マウスボタンを使うかShift+Insertで貼り付けることができます。このオプションをオンにすると、選択されたテキストは CLIPBOARD を使うようになり、xterm ウィンドウで選択したテキストをCtrl+vで GUI アプリケーションに貼り付けることができます。対応する XTerm リソースはselectToClipboardです。
Show Alternate Screen– vim や less などのターミナルアプリケーションを使うときに、新しい画面が開きます。メインの VT ウィンドウは非表示になりますが、メモリ上に残ります。このメニューオプションを有効にすると、メインウィンドウを見ることができるようになりますが、メインウィンドウでコマンドを実行することはできません。メインウィンドウからテキストを選択・コピーすることは可能です。
Show Tek WindowとSwitch to Tek Mode– Tektronix 4014 は CAD やプロットアプリケーションで使われていた1970年代のグラフィックスターミナルです。plotutils に含まれているコマンドラインプログラムgraphやアプリケーション gnuplot が xterm の Tek エミュレーションを使うことができます。ただし、普通の人はデータを図に記すのに近代的なディスプレイオプションを使うでしょう。下の #Tek 4014 デモンストレーション を見て下さい。
VT フォントメニュー
Ctrl + 右マウス
- XLFD フォントを使用する場合、最初の7つのメニューアイテムが xterm ウィンドウで使われるフォントフェイスやフォントサイズを変更します。Xft フォントを使う場合、フォントサイズだけが変わります。フォントフェイスは変わりません。
- XLFD フォントの名前を使うときに、
Selectionで PRIMARY (または CLIPBOARD) セレクションに保存されたフォントの名前に切り替えられます。
Tek オプションメニュー
Tek Window から Ctrl + 中マウス
最初のセクションのオプションは Tek ウィンドウのフォントサイズを変えられます。2番目のセットのオプションは Tek エミュレーションウィンドウとメインウィンドウ、VT ウィンドウのフォーカスを移動したり、Tek ウィンドウを終了・非表示にするのに使います。
コピーアンドペースト
まず、xterm(または他のアプリケーション)でマウスを使ってテキストをハイライトすると、コピーするテキストが選択され、マウスの中ボタンをクリックすると、ハイライトされたテキストがペーストされます。また、キーの組み合わせ Shift+Insert でも貼り付けられますが、これは xterm 内に限られます。
PRIMARY または CLIPBOARD
デフォルトでは、X で動作する xterm などのアプリケーションは、選択されたテキストを PRIMARY セレクションと呼ばれるバッファにコピーします。PRIMARY セレクションは短命です。他のテキストが選択されるとすぐに新しい PRIMARY セレクションによってテキストは置き換えられます。アプリケーションによっては (Shift+Insert ではなく) 中マウスで PRIMARY セレクションを貼り付けることができますが、PRIMARY を全く貼り付けることができないアプリケーションも存在します。
テキストをコピーするときは CLIPBOARD セレクションと呼ばれるバッファも使われます。CLIPBOARD のテキストは長命で、ユーザーによって上書きされるまで保存されます。Ctrl+c, Ctrl+x, Ctrl+v を使ってテキストのコピー・切り取り・貼り付けをするアプリケーションはこの CLIPBOARD を使っています。
他のセレクションを選択するとすぐコピーしたテキストが消失してしまう PRIMARY セレクションの儚さが鬱陶しいと感じられるかもしれません。Xterm では #VT オプションメニュー の Select to Clipboard や selectToClipboard リソースを使うことで PRIMARY と CLIPBOARD の使用を切り替えることができます。
PRIMARY と CLIPBOARD
上記の設定では PRIMARY または CLIPBOARD どちらかを使うことを選択できますが、両方使いたい場合、.Xresources に以下のように記述する必要があります:
XTerm*VT100.translations: #override <Btn1Up>: select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0)
テキストの選択
初めて使う人は、マウスの左ボタンで クリック&ドラッグ することでテキストを選択できます。 ダブルクリックすると、単語が選択されます。単語は、連続したアルファベット文字とアンダースコア、または基本正規表現(BRE)[A-Za-z_] で定義されます。 トリプルクリックは行を選択し、タブ 文字は通常複数の スペース 文字としてコピーされます。
もう一つのテキスト選択の方法は、特に複数の全画面をコピーするときに便利です。
- 選択したい部分の始点で左クリックします。
- 選択範囲の終端が見える位置までスクロールする。
- 選択範囲の終点で右クリック。
ハイライトされた選択範囲は、右クリックによって拡大・縮小することができます。
xterm ウィンドウ内の任意の場所で左クリックすると、選択したテキストを消去することができます。
カラー
xtermのデフォルトは、白の 背景色 に黒の 前景色 です。 前景色と背景色を逆にするには、リソースを設定することで逆転できます。
XTerm.vt100.reverseVideo: true
あるいは、リソースを使用して、前景色と背景色 (および最初の 16 個の端子色) を直接変更することもできます。
XTerm.vt100.foreground: white XTerm.vt100.background: black XTerm.vt100.color0: rgb:28/28/28 ! ... XTerm.vt100.color15: rgb:e4/e4/e4
カラースキームについては Terminal Colour Scheme Screenshots のフォーラムスレッドに様々な設定例が載っています。
フォント
デフォルトフォント
Xterm のデフォルトフォントは X Logical Font Description エイリアスで fixed という名前のビットマップフォントです。大抵は以下のフォントになります:
-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-?
このフォントは 6x13 という名前でもエイリアスされていて、ユニコードのグリフに対して驚くほど広いカバー範囲を持っています。 デフォルトの "TrueType" フォントは mono という名前の 14-point フォントになります。使用される FreeType フォントは、このコマンドで見つけることができます。
$ fc-match mono
フォントが TrueType であるかどうかに応じて、リソースでフォントを指定できます:
XTerm.vt100.faceName: Liberation Mono:size=10:antialias=false XTerm.vt100.font: 7x13
テストするには、コマンドラインでフォントを設定することもできます: faceName の場合は -fa、font の場合は -fn。両方の種類のフォントを設定した場合は、VT フォントメニュー から TrueType フォント を切り替えることで、2 つのフォントを切り替えることができます。次のリソースを使用してデフォルトを選択することもできます
! start with TrueType fonts disabled XTerm.vt100.renderFont: false
太字フォントと下線フォント
xterm で XLFD 名を使用する場合、イタリック体のフォントは下線文字として表示されます。 TrueType フォントは斜体の書体を使用する必要があります。
コマンドライン、-fb、または XTerm.vt100.boldFont リソースで太字フォントを指定しない場合、xterm は通常のフォントに一致する太字フォントを探そうとします。 一致するフォントが見つからない場合、太字フォントは通常フォントを overstriking することによって作成されます。
CJK フォント
中国語や日本語、韓国語で使われる全角文字が含まれているフォントは多くありません。これらの言語を使う場合は urxvt など別のターミナルエミュレータを使うほうが良いでしょう。
xterm における CJK のビットマップの XLFD フォントの使用は落とし穴がたくさんあります。CJK を表示するときは faceNameDoublesize リソースを利用して TrueType フォントを使うほうがずっと楽です。以下の例では通常フォントとして DejaVu Sans Mono を全角フォントとして WenQuanYi Bitmap Song を使用します:
XTerm.vt100.faceName: DejaVu Sans Mono:style=Book:antialias=false XTerm.vt100.faceNameDoublesize: WenQuanYi WenQuanYi Bitmap Song XTerm.vt100.faceSize: 8
ヒントとテクニック
自動透過
transset-dfAUR パッケージと Xcompmgr などのコンポジットマネージャをインストールして、以下の行を ~/.bashrc に追加します:
[ -n "$XTERM_VERSION" ] && transset-df -a >/dev/null
これで、xterm でシェルを起動し、コンポジットマネージャーが起動している場合は、毎回、xterm ウィンドウが透明になります。
transset-df の前にあるテストは XTERM_VERSION が定義されていない場合に transet が実行されないようにするものです。この方法でシェル以外のプログラムを起動した場合、ターミナルが透明にならないことに注意してください。この機能が必要であれば、これを回避できる可能性があります。
アプリケーションごとの透過設定 も参照。
緊急ベルの有効化
ベルの文字がウィンドウマネージャーに緊急事態を知らせるようにするには、次のように設定します:
XTerm.vt100.bellIsUrgent: true
フォントのヒント
太字や斜体の代わりに色を使う
フォントサイズを小さくしている場合、太字や斜体の文字を読むのは困難です。太字や斜体、下線を無効にして代わりにテキストに色を付けることができます。例:
! disable bold font faces, instead make text light blue. XTerm.vt100.colorBDMode: true XTerm.vt100.colorBD: rgb:82/a4/d3 ! disable underlined text, instead make it white. XTerm.vt100.colorULMode: true XTerm.vt100.colorUL: rgb:e4/e4/e4 ! similarly use colorIT for italics
書式設定の情報については、カラー を参照してください。
行間の調整
テキストの行が近すぎたり、間隔が広すぎたりすることがあります。一例として、DejaVu Sans Mono を使用すると、アンダーバー記号が CJK グリフまたは下の行のカーソルブロックに突き当たる可能性があります。タイポグラフによって leading と呼ばれる行間隔は、たとえば間隔を広げるために、次のリソースを使用して調整できます:
XTerm.vt100.scaleHeight: 1.01
scaleHeight に設定できる値は 0.9 から 1.5 までの間の数値で、デフォルトは 1.0 です。
Tek 4014 デモンストレーション
plotutils をインストールしている場合、xterm の Tektronix 4014 エミュレーションを使って plotutils パッケージのテストファイルを表示することができます。#VT オプションメニュー のメニューアイテム Switch to Tek Mode を使うか次のコマンドで xterm を起動することで Tek ウィンドウを開いて下さい:
$ xterm -t -tn tek4014
完全に表示されると、PS1 は正しく表示されなくなります。新しいウィンドウで、次のコマンドを入力してください:
cat /usr/share/tek2plot/dmerc.tek
Tek ウィンドウに世界地図が表示されます。同じディレクトリにある他の *.tek ファイルを表示することもできます。Tek ウィンドウを終了するには、xterm メニューを使います。
X11 の入力スヌーピングからの保護
メインのオプションメニュー から "Secure Keyboard" モードを有効にするのは不便な場合があります。代わりに、キーバインド を使用して secure() アクションを呼び出すことができます:
Ctrl Alt <Key>S: secure()
トラブルシューティング
スクロールでチラつきが発生する
ABS を使って --enable-double-buffer フラグを指定して xterm をリビルドしてください:
./configure --prefix=/usr \
...
--with-utempter \
--enable-double-buffer
詳しくは Xterm modifications を参照。
設定が適用されない
i3 などの一部のアプリケーションでは、xterm の代わりに uxterm のラッパーを呼び出すことがあります。このような場合は、uxterm と同じ設定を追加することで解決することができます。
UXTerm.vt100.reverseVideo: true
設定ファイルに重複した項目を書かない方が良い場合は、ワイルドカードによるマッチングを使用することができます。
*.vt100.reverseVideo: true
フォントサイズメニューでフォントサイズが変更されない
フォントサイズの変更で問題が発生した場合は、xorg-mkfontscale パッケージをインストールしてください。