「Xterm」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→リソースファイルの設定: リンクを修正) |
|||
(4人の利用者による、間の29版が非表示) | |||
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 |
+ | XTerm.vt100.locale: true |
+ | UTF-8 を強制するには、次のように設定します。 |
||
− | ==== 'Alt' キーの修正 ==== |
||
+ | XTerm.vt100.locale: false |
||
− | キーボードショートカットに {{ic|Alt}} キーを使う場合、リソースファイルに以下の設定をしてください: |
||
+ | XTerm.vt100.utf8: true |
||
+ | XTerm は {{ic|eo.UTF-8}} を含むすべての UTF-8 ロケールをサポートしているわけではないためこの設定は、多くの場合必要になります。 |
||
− | XTerm*metaSendsEscape: true |
||
+ | |||
+ | ==== '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.vt100.translations: #override \n\ |
||
+ | Ctrl <Key>M: maximize() \n\ |
||
+ | Ctrl <Key>R: restore() |
||
+ | |||
+ | {{ic|#override}} は、これらのキー割り当てが既存のキー割り当てを上書きすることを示します (カスタムキー割り当てでは、ほとんどの場合、これが必要です。) 各バインドはエスケープシーケンス {{ic|n}} で区切らなければなりません。もし、リテラルな改行を挿入したい場合は、それもエスケープする必要があります({{ic|ac|n}} となります。)動作の完全なリストと多くの例は {{man|1|xterm}} の '''KEY BINDINGS''' セクションを参照してください。 |
||
+ | |||
+ | {{Tip|キーバインドを切り替えて使うこともできます。man ページの {{ic|keymap()}} アクションを参照してください。}} |
||
=== スクロール === |
=== スクロール === |
||
+ | |||
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}} – |
+ | *{{ic|Select to Clipboard}} – 通常、選択されたテキストは PRIMARY に保存され、中マウスボタンを使うか {{ic|Shift+Insert}} で貼り付けることができます。このオプションをオンにすると、選択されたテキストは CLIPBOARD を使うようになり、xterm ウィンドウで選択したテキストを {{ic|Ctrl+v}} で GUI アプリケーションに貼り付けることができます。対応する XTerm リソースは {{ic|selectToClipboard}} です。 |
+ | *{{ic|Show Alternate Screen}} – ''vim'' や ''less'' などのターミナルアプリケーションを使うときに、新しい画面が開きます。メインの VT ウィンドウは非表示になりますが、メモリ上に残ります。このメニューオプションを有効にすると、メインウィンドウを見ることができるようになりますが、メインウィンドウでコマンドを実行することはできません。メインウィンドウからテキストを選択・コピーすることは可能です。 |
||
− | *{{ic|Show Alternate Screen}} – When you use an a terminal application such as ''vim, ''or ''less, ''the alternate screen is opened. The main VT window, now hidden, remains in memory. You can view this main window, but not issue any commands in it, by toggling this menu option. You are able to select and copy text from this main window. |
||
+ | {{Tip|代替画面で実行中のプロセスを一時停止してから再開すると、{{ic|Show Alternate Screen}} を使用するよりも多くの機能が提供されます。bash シェルでは、{{ic|Ctrl+z}} を押すとプロセスが中断され、{{ic|fg}} コマンドを発行するとプロセスが再開されます。}} |
||
− | {{Tip|Suspending the process running in the Alternate Screen and then resuming it provides more functionality than using {{ic|Show Alternate Screen}}. With a ''bash'' shell, pressing {{ic|Ctrl+z}} suspends the process; issuing the command {{ic|fg}} then resumes it.}} |
||
*{{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 + 右マウス''''' |
||
+ | *XLFD フォントを使用する場合、最初の7つのメニューアイテムが xterm ウィンドウで使われるフォントフェイスやフォントサイズを変更します。Xft フォントを使う場合、フォントサイズだけが変わります。フォントフェイスは変わりません。 |
||
− | *When using XLFD fonts, the first seven menu items will change the font face and the font size used in the current xterm window. If you are using an Xft font, only the font size will change, the font face will not change with the different selections, . |
||
+ | |||
+ | {{Tip|プロセスを監視したいが、ターミナルウィンドウに大きな画面スペースを割きたくない場合に、{{ic|Unreadable}} と {{ic|Tiny}} が便利です。 例えば、長時間のコンパイル処理で、処理が完了したことだけを確認したいような場合に使用します。}} |
||
+ | * XLFD フォントの名前を使うときに、{{ic|Selection}} で PRIMARY (または CLIPBOARD) セレクションに保存されたフォントの名前に切り替えられます。 |
||
− | {{Tip|{{ic|Unreadable}} and {{ic|Tiny}} are useful if you wish to keep an eye on a process but do not want to devote a large amount of screen space to the terminal window. An example use might be a lengthy compilation process when you only want to see that the operation completes.}} |
||
+ | ==== Tek オプションメニュー ==== |
||
− | *{{ic|Selection}}, when using XLFD font names, allows you to switch to the font name stored in the PRIMARY selection (or CLIPBOARD). |
||
− | ====Tek オプションメニュー==== |
||
'''Tek Window''' から '''''Ctrl + 中マウス''''' |
'''Tek Window''' から '''''Ctrl + 中マウス''''' |
||
+ | 最初のセクションのオプションは Tek ウィンドウのフォントサイズを変えられます。2番目のセットのオプションは Tek エミュレーションウィンドウとメインウィンドウ、''VT'' ウィンドウのフォーカスを移動したり、Tek ウィンドウを終了・非表示にするのに使います。 |
||
− | The first section's options allow you to change the Tek window font size. The second set of options are used to move the focus between the Tek emulation window and the main, or ''VT, ''window and to close or hide the Tek window. |
||
− | ===コピーアンドペースト=== |
+ | === コピーアンドペースト === |
+ | まず、xterm(または他のアプリケーション)でマウスを使ってテキストをハイライトすると、コピーするテキストが選択され、マウスの中ボタンをクリックすると、ハイライトされたテキストがペーストされます。また、キーの組み合わせ {{ic|Shift+Insert}} でも貼り付けられますが、これは xterm 内に限られます。 |
||
− | First, highlighting text using the mouse in an xterm (or alternatively another application) will select the text to copy, then clicking the mouse middle-button will paste that highlighted text. Also the key combination {{ic|Shift+Insert}} will paste highlighted text, but only within an xterm. |
||
− | ====PRIMARY または CLIPBOARD==== |
+ | ==== PRIMARY または CLIPBOARD ==== |
デフォルトでは、X で動作する xterm などのアプリケーションは、選択されたテキストを PRIMARY セレクションと呼ばれるバッファにコピーします。PRIMARY セレクションは短命です。他のテキストが選択されるとすぐに新しい PRIMARY セレクションによってテキストは置き換えられます。アプリケーションによっては ({{ic|Shift+Insert}} ではなく) 中マウスで PRIMARY セレクションを貼り付けることができますが、PRIMARY を全く貼り付けることができないアプリケーションも存在します。 |
デフォルトでは、X で動作する xterm などのアプリケーションは、選択されたテキストを PRIMARY セレクションと呼ばれるバッファにコピーします。PRIMARY セレクションは短命です。他のテキストが選択されるとすぐに新しい PRIMARY セレクションによってテキストは置き換えられます。アプリケーションによっては ({{ic|Shift+Insert}} ではなく) 中マウスで PRIMARY セレクションを貼り付けることができますが、PRIMARY を全く貼り付けることができないアプリケーションも存在します。 |
||
111行目: | 157行目: | ||
他のセレクションを選択するとすぐコピーしたテキストが消失してしまう PRIMARY セレクションの儚さが鬱陶しいと感じられるかもしれません。Xterm では [[#VT オプションメニュー]] の {{ic|Select to Clipboard}} や {{ic|selectToClipboard}} リソースを使うことで PRIMARY と CLIPBOARD の使用を切り替えることができます。 |
他のセレクションを選択するとすぐコピーしたテキストが消失してしまう PRIMARY セレクションの儚さが鬱陶しいと感じられるかもしれません。Xterm では [[#VT オプションメニュー]] の {{ic|Select to Clipboard}} や {{ic|selectToClipboard}} リソースを使うことで PRIMARY と CLIPBOARD の使用を切り替えることができます。 |
||
− | ====PRIMARY と CLIPBOARD==== |
+ | ==== PRIMARY と CLIPBOARD ==== |
上記の設定では PRIMARY または CLIPBOARD どちらかを使うことを選択できますが、両方使いたい場合、{{ic|.Xresources}} に以下のように記述する必要があります: |
上記の設定では PRIMARY または CLIPBOARD どちらかを使うことを選択できますが、両方使いたい場合、{{ic|.Xresources}} に以下のように記述する必要があります: |
||
117行目: | 163行目: | ||
XTerm*VT100.translations: #override <Btn1Up>: select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0) |
XTerm*VT100.translations: #override <Btn1Up>: select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0) |
||
− | ====テキストの選択==== |
+ | ==== テキストの選択 ==== |
− | The new user usually discovers that text may be selected using a "click-and-drag" with the left mouse button. Double-clicking will select a word, where a word is defined as consecutive alphabetic characters plus the underscore, or the Basic Regular Expression (BRE) {{ic|[A-Za-z_]}}. Triple-clicking selects a line, with a "tab" character usually copied as multiple "space" characters. |
||
+ | 初めて使う人は、マウスの左ボタンで ''クリック&ドラッグ'' することでテキストを選択できます。 ダブルクリックすると、単語が選択されます。単語は、連続したアルファベット文字とアンダースコア、または基本正規表現(BRE){{ic|[A-Za-z_]}} で定義されます。 トリプルクリックは行を選択し、''タブ'' 文字は通常複数の ''スペース'' 文字としてコピーされます。 |
||
− | Another way of selecting text, especially useful when copying more than one full screen, is: |
||
− | #Left-click at the start of the intended selection. |
||
− | #Scroll to where the end of the selection is visible. |
||
− | #Right-click at the end of the selection. |
||
− | You do not have to be precise immediately with the right-click – any highlighted selection may be extended or shortened by using a right-click. |
||
+ | もう一つのテキスト選択の方法は、特に複数の全画面をコピーするときに便利です。 |
||
− | You can clear any selected text by left-clicking once, anywhere within the xterm window. |
||
+ | #選択したい部分の始点で左クリックします。 |
||
+ | #選択範囲の終端が見える位置までスクロールする。 |
||
+ | #選択範囲の終点で右クリック。 |
||
+ | ハイライトされた選択範囲は、右クリックによって拡大・縮小することができます。 |
||
+ | xterm ウィンドウ内の任意の場所で左クリックすると、選択したテキストを消去することができます。 |
||
− | ==カラー== |
||
− | Xterm のデフォルトでは白い背景に黒字のテキストが使われます。前景と背景の色は [[#VT オプションメニュー|VT オプションメニュー]] や {{ic|-rv}} コマンドラインオプションを使うことで逆転させることができます。 |
||
− | $ xterm -rv |
||
+ | == カラー == |
||
− | もしくは、以下の [[X resources]] パラメータでも色を反転させられます (設定後にリソースを[[X resources#.Xresources の解析|再読み込み]]するのを忘れないで下さい): |
||
− | XTerm*reverseVideo: on |
||
− | + | xtermのデフォルトは、白の ''背景色'' に黒の ''前景色'' です。 前景色と背景色を逆にするには、リソースを設定することで逆転できます。 |
|
− | xterm -fg PapayaWhip -bg "rgb:00/00/80" |
||
+ | XTerm.vt100.reverseVideo: true |
||
− | 前景色と背景色だけでなく、最初の16色のターミナルの色も [[X resources]] ファイルで設定できます: |
||
− | {{bc|XTerm*foreground: rgb:b2/b2/b2 |
||
− | XTerm*background: rgb:08/08/08 |
||
− | XTerm*color0: rgb:28/28/28 |
||
+ | あるいは、リソースを使用して、前景色と背景色 (および最初の 16 個の端子色) を直接変更することもできます。 |
||
− | ! ...Lines omitted... |
||
+ | |||
+ | XTerm.vt100.foreground: white |
||
+ | XTerm.vt100.background: black |
||
+ | XTerm.vt100.color0: rgb:28/28/28 |
||
+ | ! ... |
||
+ | XTerm.vt100.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}} を参照してください。}} |
||
− | XTerm*color15: rgb:e4/e4/e4}} |
||
− | {{Note|Colors for applications that use the X libraries may be specified in many different ways. Some colors can be specified by assigned names. If {{Pkg|emacs}} or {{Pkg|vim}} has been installed, you can examine {{ic|/usr/share/emacs/*/etc/rgb.txt}} or {{ic|/usr/share/vim/*/rgb.txt}} to view the list of color names with their decimal RGB values. Colors may also be specified using hexadecimal RGB values with the format {{ic|rgb:RR/GG/BB}}, or the older and not encouraged syntax {{ic|#RRGGBB}}. The color {{ic|PapayaWhip}} is the same as {{ic|rgb:ff/ef/d5}}, which is the same as {{ic|#ffefd5}}. See {{ic|man(7) X}} from {{Pkg|xorg-docs}} for a more complete description of color syntax.}} |
||
カラースキームについては [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|Many people specify colors in their X resources files without specifying an application class or application instance: |
||
− | {{bc|*foreground: rgb:b2/b2/b2 |
||
− | *background: rgb:08/08/08}} |
||
− | The above example sets the foreground and background color values for all ''Xlib'' applications (xclock, xfontsel, and others) that use these resources. This is a nice, easy way to achieve a unified color scheme.}} |
||
+ | {{Tip|多くの人は、アプリケーションクラスやアプリケーションインスタンスを指定せずに、X リソースファイルで色を指定します |
||
− | ==フォント== |
||
+ | |||
− | ===デフォルトフォント=== |
||
+ | *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-? |
||
+ | |||
− | This font, also aliased to the name {{ic|6x13}}, has remakably wide coverage for unicode glyphs. The default "TrueType" font is the 14‑point font matched by the name {{ic|mono}}. The ''FreeType ''font that will be used can be found with this command: |
||
+ | このフォントは {{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>}} |
||
+ | XTerm.vt100.faceName: Liberation Mono:size=10:antialias=false |
||
− | 永続的に設定したい場合、デフォルトフォントを [[X resources]] ファイルで設定します: |
||
+ | XTerm.vt100.font: 7x13 |
||
− | {{bc|<nowiki>xterm*faceName: Liberation Mono:size=10:antialias=false</nowiki> |
||
+ | |||
− | xterm*font: 7x13}} |
||
+ | テストするには、コマンドラインでフォントを設定することもできます: {{ic|faceName}} の場合は {{ic|-fa}}、{{ic|font}} の場合は {{ic|-fn}}。両方の種類のフォントを設定した場合は、[[Xterm#VT フォントメニュー|VT フォントメニュー]] から {{ic|TrueType フォント}} を切り替えることで、2 つのフォントを切り替えることができます。次のリソースを使用してデフォルトを選択することもできます |
||
+ | |||
+ | ! start with TrueType fonts disabled |
||
+ | XTerm.vt100.renderFont: false |
||
+ | |||
+ | === 太字フォントと下線フォント === |
||
+ | xterm で XLFD 名を使用する場合、イタリック体のフォントは下線文字として表示されます。 TrueType フォントは斜体の書体を使用する必要があります。 |
||
− | {{Note|リソースファイルで {{ic|faceName}} が設定されている場合にコマンドラインオプションの {{ic|-fn}} が使えなくなるというバグが xterm には昔から存在しています。コマンドラインでリソース {{ic|renderFont}} を {{ic|false}} に設定するのが一つの解決方法です。 |
||
− | {{bc|$ xterm -fn 8x13 # If this command does not set the font, |
||
− | $ xterm -fn 8x13 -xrm "*renderFont:false" # set the 'renderFont' resource to 'false'.}} |
||
− | さらに、ターミナルウィンドウの [[#VT フォントメニュー]] から {{ic|TrueType Fonts}} を切り替えることもできます。}} |
||
+ | コマンドライン、{{ic|-fb}}、または {{ic|XTerm.vt100.boldFont}} リソースで太字フォントを指定しない場合、xterm は通常のフォントに一致する太字フォントを探そうとします。 一致するフォントが見つからない場合、太字フォントは通常フォントを ''overstriking'' することによって作成されます。 |
||
− | ===太字フォントと下線フォント=== |
||
− | Italic fonts are shown as underlined characters when using XLFD names in xterm. TrueType fonts should use an oblique typeface. |
||
+ | === CJK フォント === |
||
− | If you do not specify a bold font at the command line, {{ic|-fb}}, or through the {{ic|boldFont}} resource, xterm will attempt to find a bold font matching the normal font. If a matching font is not found, the bold font will be created by "overstriking" the normal font. |
||
− | ===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*faceNameDoublesize: WenQuanYi Bitmap Song |
||
− | xterm*faceSize: 8}} |
||
+ | XTerm.vt100.faceName: DejaVu Sans Mono:style=Book:antialias=false |
||
− | ==Tips and tricks== |
||
+ | XTerm.vt100.faceNameDoublesize: WenQuanYi WenQuanYi Bitmap Song |
||
− | ===自動透過=== |
||
+ | XTerm.vt100.faceSize: 8 |
||
− | {{pkg|transset-df}} パッケージと [[Xcompmgr]] などの[[Wikipedia:Compositing window manager|コンポジットマネージャ]]をインストールして、以下の行を {{ic|~/.bashrc}} に追加します: |
||
+ | |||
+ | == ヒントとテクニック == |
||
+ | |||
+ | === 自動透過 === |
||
+ | |||
+ | {{AUR|transset-df}} パッケージと [[Xcompmgr]] などの[[Wikipedia:Compositing window manager|コンポジットマネージャ]]をインストールして、以下の行を {{ic|~/.bashrc}} に追加します: |
||
[ -n "$XTERM_VERSION" ] && transset-df -a >/dev/null |
[ -n "$XTERM_VERSION" ] && transset-df -a >/dev/null |
||
+ | これで、xterm でシェルを起動し、コンポジットマネージャーが起動している場合は、毎回、xterm ウィンドウが透明になります。 |
||
− | Now, each time you launch a shell in an xterm and a composite manager is running, the xterm window will be transparent. |
||
+ | {{ic|transset-df}} の前にあるテストは {{ic|XTERM_VERSION}} が定義されていない場合に transet が実行されないようにするものです。この方法でシェル以外のプログラムを起動した場合、ターミナルが透明にならないことに注意してください。この機能が必要であれば、これを回避できる可能性があります。 |
||
− | The test in front of {{ic|transset-df}} keeps transet from executing if {{ic|XTERM_VERSION}} is not defined. Note that your terminal will not be transparent if you launch a program other than a shell this way. It is probably possible to work around this if you want the functionality. |
||
− | [[en2:Per Application Transparency|アプリケーションごとの透過設定]]も参照。 |
+ | [[en2:Per Application Transparency|アプリケーションごとの透過設定]] も参照。 |
− | ===緊急ベルの有効化=== |
+ | === 緊急ベルの有効化 === |
− | 以下の行を {{ic|~/.Xresources}} ファイルに追加します: |
||
+ | ベルの文字がウィンドウマネージャーに緊急事態を知らせるようにするには、次のように設定します: |
||
− | xterm*bellIsUrgent: true |
||
+ | XTerm.vt100.bellIsUrgent: true |
||
− | ===フォントのヒント=== |
||
+ | |||
+ | === フォントのヒント === |
||
+ | |||
+ | ==== 太字や斜体の代わりに色を使う ==== |
||
− | ====太字や斜体の代わりに色を使う==== |
||
フォントサイズを小さくしている場合、太字や斜体の文字を読むのは困難です。太字や斜体、下線を無効にして代わりにテキストに色を付けることができます。例: |
フォントサイズを小さくしている場合、太字や斜体の文字を読むのは困難です。太字や斜体、下線を無効にして代わりにテキストに色を付けることができます。例: |
||
− | {{bc|! Forbid bold font faces; bold type is light blue. |
||
− | XTerm*colorBDMode: true |
||
− | XTerm*colorBD: rgb:82/a4/d3 |
||
− | ! Do not underscore text, underlined text is white. |
||
− | XTerm*colorULMode: true |
||
− | XTerm*colorUL: rgb:e4/e4/e4}} |
||
+ | ! disable bold font faces, instead make text light blue. |
||
− | ====行間の調整==== |
||
+ | XTerm.vt100.colorBDMode: true |
||
− | 場合によっては行間が狭すぎたり、広すぎるように感じられることもあるでしょう。例えば、''DejaVu Sans Mono'' を使っていると、アンダーバー記号が CJK の文字にぶつかったり、次の行のカーソルに被さってしまうことがあります。行間 (植字工は''鉛''と呼ぶ) は {{ic|scaleHeight}} リソースを使うことで調整できます。例えば、行間を広げるには: |
||
− | XTerm |
+ | XTerm.vt100.colorBD: rgb:82/a4/d3 |
+ | ! disable underlined text, instead make it white. |
||
− | {{ic|scaleHeight}} に設定できる値は {{ic|0.9}} から {{ic|1.5}} までの間の数値で、デフォルトは {{ic|1.0}} です。 |
||
+ | XTerm.vt100.colorULMode: true |
||
+ | XTerm.vt100.colorUL: rgb:e4/e4/e4 |
||
+ | ! similarly use colorIT for italics |
||
+ | 書式設定の情報については、[[Xterm#カラー|カラー]] を参照してください。 |
||
− | ===黒いボーターの削除=== |
||
+ | |||
− | 場合によって Xterm には黒い縁が表示されますが、以下の行を {{ic|~/.Xresources}} ファイルに追加することで消すことができます。 |
||
+ | ==== 行間の調整 ==== |
||
+ | |||
+ | テキストの行が近すぎたり、間隔が広すぎたりすることがあります。一例として、''DejaVu Sans Mono'' を使用すると、アンダーバー記号が CJK グリフまたは下の行のカーソルブロックに突き当たる可能性があります。タイポグラフによって ''leading '' と呼ばれる行間隔は、たとえば間隔を広げるために、次のリソースを使用して調整できます: |
||
+ | |||
+ | XTerm.vt100.scaleHeight: 1.01 |
||
+ | |||
+ | {{ic|scaleHeight}} に設定できる値は {{ic|0.9}} から {{ic|1.5}} までの間の数値で、デフォルトは {{ic|1.0}} です。 |
||
+ | === Tek 4014 デモンストレーション === |
||
− | xterm*borderWidth: 0 |
||
− | ===Tek 4014 デモンストレーション=== |
||
{{Pkg|plotutils}} をインストールしている場合、xterm の Tektronix 4014 エミュレーションを使って plotutils パッケージのテストファイルを表示することができます。[[#VT オプションメニュー]] のメニューアイテム {{ic|Switch to Tek Mode}} を使うか次のコマンドで xterm を起動することで Tek ウィンドウを開いて下さい: |
{{Pkg|plotutils}} をインストールしている場合、xterm の Tektronix 4014 エミュレーションを使って plotutils パッケージのテストファイルを表示することができます。[[#VT オプションメニュー]] のメニューアイテム {{ic|Switch to Tek Mode}} を使うか次のコマンドで xterm を起動することで Tek ウィンドウを開いて下さい: |
||
$ xterm -t -tn tek4014 |
$ xterm -t -tn tek4014 |
||
226行目: | 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() |
||
== トラブルシューティング == |
== トラブルシューティング == |
||
231行目: | 298行目: | ||
=== スクロールでチラつきが発生する === |
=== スクロールでチラつきが発生する === |
||
− | {{ |
+ | {{Note|ダブルバッファを使用すると非ビットマップフォントが正しく表示されなくなることがあります。}} |
[[ABS]] を使って {{ic|--enable-double-buffer}} フラグを指定して xterm をリビルドしてください: |
[[ABS]] を使って {{ic|--enable-double-buffer}} フラグを指定して xterm をリビルドしてください: |
||
241行目: | 308行目: | ||
詳しくは [https://bbs.archlinux.org/viewtopic.php?id=146023 Xterm modifications] を参照。 |
詳しくは [https://bbs.archlinux.org/viewtopic.php?id=146023 Xterm modifications] を参照。 |
||
+ | |||
+ | === 設定が適用されない === |
||
+ | |||
+ | [[i3]] などの一部のアプリケーションでは、{{ic|xterm}} の代わりに {{ic|uxterm}} のラッパーを呼び出すことがあります。このような場合は、{{ic|uxterm}} と同じ設定を追加することで解決することができます。 |
||
+ | UXTerm.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 パッケージをインストールしてください。