Alt-<とAlt->(そしておそらく他のキー)がelinkで動作しない

Alt-<とAlt->(そしておそらく他のキー)がelinkで動作しない

私は追加のソフトウェアを最小限に変更/インストールしながら、Debian netinstall(7.8)のOpenboxにあるxtermウィンドウでelinks(0.12pre5)を実行しています。いくつかのelinkオプションを変更しましたが、その何もこの問題とは関係がないようです。特にキーバインディングを変更していません。関連がある場合に備えて、terminus-fontsパッケージをインストールしました。

man elinkskeysによると、 Alt+<Alt+は>テキストボックスを編集するときに現在のバッファの最初または最後の行に移動する必要があり、それ以外の場合はタブを左右に移動する必要があります。私にとって、彼らはそのようなことをしませんでした。テキストボックスを編集すると、Alt+ <(つまりAlt++)は文字(1/4の結合バージョン)を生成し、+(つまり++ Shift)は文字(3/4の結合バージョン)を生成します。 +givenと+givenも省略してみました。テキストボックスを編集しないと、これらのキーストロークが機能しないようです。,¼Alt>AltShift.¾ShiftAlt,¬Alt.®

関連する注意によると、マニュアルページには、テキストボックスを編集するときに+と「ページ/行の先頭に移動」と+およびCtrl「ページ/A行の末尾に移動」が記載されています。実際、4つのキーストロークはすべて期待どおりに行の先頭/末尾に移動しますが、繰り返しタップまたは押し続けても行間にカーソルは移動しません。そのため、テキストボックスから一度に1行以上垂直に移動する方法がないようです。HomeCtrlEEnd

Tabそして、Shift+はTab編集時に何もしないようです(私はAlt+がTabOpenboxによってプリエンプトされる可能性があるので、何もしたくありません。そうなることを願っています!)。これが私がタブの順序をオフにしているのかどうかはわかりません。一部のページの番号が付けられたリンクと正しく対話しなかったため、そうしました。

ベストアンサー1

以前は、男は本物の男であり、女性は本物の女性であり、Alpha Centauriの小さな毛皮の生き物は、アングロサクソンプログラマーが印刷可能な95のキャラクターと33のコントロールと考えていたAlpha Centauriの小さな毛皮の生き物でした。キャラクターはみんなに十分です。バイトサイズはほぼ常に8ビットですが、7ビットで十分です。すべての役割したがって、文字を表す各バイトにはスペアビットがあります。多くの端末メーカーはこのスペアビットを最大限に活用することにしました。端末には通常、「文字を入力したい」の代わりに「コマンドを呼び出したい」を示す修飾キーがあります。。多くの端末では、この代替ビットを使用して「メタキーを押しました」を示します。たとえば、.バイト値46(文字のASCIIコード.)を送信するには+を押し、バイト値46 + 128 = 174を送信するにはMeta+を押します。.

そしてヨーロッパの言語を使っている人もコンピュータを使いたかった。発音区別記号を持つ他の文字と文字を書くことができる必要があり、英語ユーザーと英語以外のユーザーの両方に句読点が必要です。だから彼らはいくつかをデザインしました。文字エンコードビット8を利用するための拡張ASCII。たとえば、ISO 8859-1エンコード(Latin-1とも呼ばれます)では、バイト値174は文字をエンコードします®Metaキーが設定されたバイト値のビット8でエンコードされた端末でMeta+を押すと、ISO 8859-1でエンコードされた入力が必要なアプリケーションを実行すると.文字が効果的に送信されます®

Meta一部のヨーロッパ人は+が.挿入され®Meta+が+iに挿入されることを覚え始めました。しかし、それは暗記したくない人には役に立ちません。幸いなことに、国別のキーボードバリアント(フランス語には1つのキー、スウェーデンには1つのキーなど)などの他のソリューションがあります。Metaééåデッドキーそして書き込みキー。それにもかかわらず、このソリューションは、256を超える個々の文字が必要な人(たとえば、ほとんどのアジア言語ユーザー)には機能しません。

同時に、別のより一般的なキーエンコーディング規則がMeta現れました。つまり、キーエンコード前にエスケープ文字を送信することです。たとえば、+はと同じ2バイトシーケンスをMeta送信します。これが今日のほとんどのアプリケーションが期待しているものです。.Esc.

キーをビット 8 に設定することは、Meta古くから役に立たなかった技術的な決定ですが、一部のシステムの基本構成にはまだ存在します。 PCキーボードにはそのようなラベル付きのキーはありませんが、Meta同じ位置に同じ意図された効果を持つラベル付きのキーがあるため、「Meta」キーを読むたびに「Alt」に適用されます。Alt

歴史的な理由から、XtermはMetaデフォルトでビット8に設定されています。エスケープ文字を送信するには、次のものが必要です。

  • リソースmetaSendsEscapeをに設定しますtrue(また、altSendsEscapeリソースをに設定した場合にのみ適用されます。これは、altIsNotMetaキーボードにキーとキーのtrue両方がある場合にのみ機能します)。AltMeta
  • リソースをeightBitInput次に設定しますfalse(名前にもかかわらず、これは非ASCII入力をブロックせず、Meta+characterが送信される内容のみを決定します)。

次の行のいずれかをファイルに入れます。~/.Xresources:

XTerm.VT100.eightBitInput: false
XTerm.VT100.metaSendsEscape: true

xrdb -merge ~/.Xresourcesファイルを再読み込みするには実行してください。ほとんどの環境では、GUIの起動時にこのコマンドが実行されるようにスケジュールします。それ以外の場合は、GUIログインスクリプトに追加します。

metaSendsEscape+メニュー(「Meta Sends Escape」)からリソースを切り替えることもできます。これは使用するxtermインスタンスにのみ影響します。CtrlLeft-Click

他のリンクキーボードショートカットの問題は、端末ではなくリンクに関連しています。

おすすめ記事