タグ付けされた質問 「xmodmap」

xmodmapは、Xorg環境でキーマップとポインターボタンのマッピングを操作するためのツールです。

3
Caps Lockキーを再度有効にする方法は?
私は現在、次のようにデフォルトのキーボードレイアウトを設定しています。 setxkbmap -layout us -variant dvorak -option ctrl:nocaps,[...] Caps Lockキーを無効にし、他のオプションの群れと共に追加のCtrlキーを押します。 キーボードレイアウトを切り替えるには、次のようにします。 setxkbmap -layout us -variant dvorak-l -option ctrl:swapcaps ただし、Caps Lockキーは再度有効になりません。左のコントロールキーとCaps Lockの両方が、私が見る限り、コントロールキーのままです。 オプションリスト全体をクリアできることはわかっていますが、保守性を考慮して、オプションをコピーして貼り付けたくないです。Caps Lockを再度有効にするにはどうすればよいですか? 更新: xev(1)でControl_Lキーを押すと、ctrl:nocapsは両方のキーにを与え、ctrl:swapcapsはCaps Lockキーを「復元」します(キーを押すとが与えられますCaps_Lock)。ただし、Caps Lock LEDは点灯せず、実際には機能しません。 xkeyboard-config/symbols/ctrlX.orgのソースでファイルを見ると、問題のヒントになります。 xkb_symbols "nocaps" { replace key <CAPS> { [ Control_L, Control_L ] }; modifier_map Control { <CAPS>, <LCTL> }; }; xkb_symbols "swapcaps" …

2
アプリケーションキーマップの修飾キーとしてのCapsLock
私は開発者であり、現在、ウェブサイトの開発にUbuntu LinuxとPyCharm IDEを使用しています。タイピングのパフォーマンスを向上させるために、CapsLockをHyper_Lに変更し、xmodmapを使用してそれをmod3に割り当てることを検討します。この後、「i」キーのmod3を「Up」にマッピングします。これまでのところ私がしたことは: xmodmap -e "keysym Caps_Lock = Hyper_L" 出力は次のようになります: shift Shift_L (0x32), Shift_R (0x3e) lock Hyper_L (0x42) control Control_L (0x25), Control_R (0x69) mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd) mod2 Num_Lock (0x4d) mod3 mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf) mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb) 次に、mod4からHyper_Lを削除します xmodmap …
11 x11  keyboard  xkb  xmodmap 

2
xmodmapを使用したCaps Lockの再マッピングが機能しない
私がプログラムするとき、これらのキーを交換したいです: Esc↔ Tab Ctrl↔CapsLock では~/.xmodmap、これらの再マッピングを指定しました。 keycode 66 = Control_L keycode 37 = Caps_Lock keycode 23 = Escape keycode 9 = Tab EscapeそしてTabキースワップ、問題はないが、その代わりにCaps_LockおよびControl_Lスワップ、両方のこれらのキーはなりCaps_Lock。 何をしようとしても、コントロールキーが割り当てられませんCaps_Lock(キーコード66)。を離れるkeycode 66 =と、キーは割り当てられませんが、Control_Lまたはを割り当てるとControl_R、機能しません。しかし、他のキー(たとえば)keycode 66 = Tabを割り当てても、割り当てられて問題ありません。 xmodmapのように、Caps LockキーとControlキーを入れ替えたくないだけです。本当にイライラします。ヘルプ/ポインターは本当に役に立ちます。 PS:私はArchlinuxを使用しています。
10 keyboard  xmodmap 

2
キーの組み合わせのxmodmap-Fnの動作を切り替える方法は?
USB経由のLogitech K290キーボードでは、FキーはデフォルトではアクセスできFnません。使用する前に押す必要があるため、実際には使用できません。 Fnキーだけですべてのイベントを発生しませんxev。 押すF1ことなく、Fn二つの重要なイベント、キーコード50(火Shift_L)とキーコード133( Super_L)とメッセージを表示私のKubuntuの「タッチパッド無効化」(すべてのキーに同じメッセージF1経由F4) ほとんどのメディアキーは機能しますが、Fキーへの直接アクセスが必要です。Fn動作を切り替える方法を知っていますか? これが私がF1なしで押したときの出力ですFn: KeyPress event, serial 40, synthetic NO, window 0x1a00001, root 0x2c6, subw 0x0, time 64638420, (-352,274), root:(1462,621), state 0x10, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 40, synthetic NO, window …

1
キーの組み合わせをキーに再マッピングする方法は?
Xサーバーベースのシステムでキーの組み合わせをキーに再マッピングすることは可能ですか?たとえば、End+ を押すとArrow_up、キーコードHomeが生成されますか?Googleはこの問題について沈黙しているようです。より便利なキーボードマッピングの多くの可能性を開くため、解決策があればそれは素晴らしいことです。

2
Openboxがxmodmap構成を上書きする
Linux Mint 13を実行しているラップトップにopenboxをセットアップしています。CapsLockキーを追加のコントロールキーとして機能させたいです。必要な設定を~/.Xmodmapファイルに入れ、実行して確認しました xmodmap ~/.Xmodmap 正常に動作します。 ただし、openboxセッションに再ログインしても、これらの重要な変更はありません。上記のxmodmapコマンドを実行すると、再び機能しますが、起動時に自動的に実行されるようにしたいと思います。 興味深いのはzenity、~/.config/openbox/autostartファイルに次のようにテストコマンドを追加したことです。 zenity --info --text=Hello これにより、小さなダイアログウィンドウが生成され、ダイアログが閉じられた後にのみ終了します。 これで、openboxセッションに再ログインすると、Caps Lock はzenityダイアログが閉じるまで Ctrlキーとして機能します。そのダイアログを閉じると、Caps Lockはデフォルトの動作に戻ります。 私はこれでグーグルで何も見つけていないので、ここで助けを求めています。何がうまくいかないのか考えていますか? 更新: 私はこれを理解しようとしました、そして私の実験では、私は自分の/usr/bin/xmodmapファイルをにコピーして、次のbashスクリプトでファイルを/usr/bin/xmodmap_置き換えました/usr/bin/xmodmap #!/bin/bash { echo '-------' date echo xmodmap "$@" } >> ~/xmodmap-calls exec /usr/bin/xmodmap_ "$@" そのため、システム上のいまいましいスクリプトが実行されるたびにxmodmap、私はそれを知るようになります。 これで、私は再ログインし、私の~/xmodmap-callsファイルでエントリを1つだけ見つけます~/.Xmodmap。だから、私はxmodmapそれが私の変更を上書きしているわけではないと考えました。 次に、少しグーグルでsetxkbmapコマンドを紹介しましたが、明らかに同じこともできます。上記のxmodmapと同様に、その実行可能ファイルも置き換えました。そして、私は犯人の命令を得ました! setxkbmap -option terminate:ctrl_alt_bksp 私はそれが何をしているのか全くわかりませんが、xmodmap ~/.Xmodmap(私の設定を正しく適用した)実行後、上記のコマンドを実行すると、変更がリセットされます!編集:これは本当に面白いことが判明しています。setxkbmap引数なしのコマンドだけで、変更内容がxmodmap ~/.Xmodmapコマンドによって上書きされます。 今、私は2つのことを理解する必要があります、これはどこsetxkbmapから実行されているのか、なぜそしてどのようにこれを修正するのですか?私はまだ調査中ですが、いくつかの助けを真剣に使うことができます:) アップデート2 と地獄にxmodmap。のsetxkbmap呼び出し元がわかりませんが、setxkbmapコマンドを使用してCaps LockをCtrlとして動作させる方法を見つけました。 setxkbmap -option ctrl:nocaps …


4
起動時にNumLockをオンにしますか?
私は通常Vimで編集し、を押すとき+は、+を+実行するのではなく、キーボードの常駐する右側の部分に手を移動したいです。shift= しかし、NumLockオンになっていない場合、Vimでは上に新しい行を開き、文字kを挿入します。また、起動するたびにPC NumLockがオフになります。 私はそこにあるかどうかを知りたいxmodmapオンにするトリックは、NumLock私はそれを追加することもできますので、.xinitrc私は私にそれを追加することができれば、それも良いだろう.AND .mapどのスワップファイルEscapeとCapsLockしているI負荷loadkeys私の中/etc/rc.localで起動。 Arch Linuxを使用しています。

2
X11でキャップロックをescに恒久的に再マッピングする方法は?
Caps LockをX11でエスケープするように再マッピングしたい(つまり、物理的なCaps Lockボタンを押すと、アプリケーションによってescとして解釈され、escの動作は変更されません)。ソリューションはXの再起動後も存続する必要があります。xmodmapとsetxkbmapは、許容できるソリューションです(同様のプログラムと同様)。ソリューションを移植可能にして、ドットファイルの一部にしたいので、GUIを扱いたくありません。より良い/より簡単な/より明白な解決策がない場合は、教えてください。ただし、DEを使用していないことに注意してください(i3wmを試してみます)。 これまでのところ、xmodmapとsetxkbmapを使用してみましたが、ほとんど成功しませんでした。 これがxmodmapを使用する私の試みです: # ~/.xinitrc xmodmap ~/.xmodmap そして # ~/.xmodmap remove Lock = Caps_Lock keysym Caps_Lock = Escape $ xmodmap ~/.xmodmapコマンドラインからの実行は機能し、私が望むことを行います。問題は、xが再起動するたびにリセットされることです。これが、xinitrcが入ることを期待する場所です-xが起動してxmodmapコマンドを実行するたびにロードされませんか?コマンドが機能する場合、ファイルから読み取ったときに何も実行されないのはなぜですか? setxkbmapでいくつかのことを試しましたが、どちらも機能しませんでした。以下の2つの試みは、別々の時間にファイルで行われました。 # ~/.xinitrc setxkbmap -option caps:esc # attempt 1 setxkbmap -option esc:nocaps # attempt 2 どちらのコマンドもコマンドラインから認識できることは何もしなかったので、コマンドが間違っていると想定しています。ワンライナーであり、他のファイルに何も必要としないため、このソリューションのアイデアが気に入っています。それがうまくいけば。 .xinitrcは間違ったファイルを使用していますか?startxが〜/ .xinitrcからロードしていることを知っています。 可能な解決策に、1行だけではなく(ファイルに複数行が必要な場合)ファイル全体を含めるように要求します。そのため、中間ステップを台無しにしないでください。たとえば、.xinitrcと.xcapsrebindに何かが必要な場合は、両方のファイルと必要なすべてのコンテンツを表示してください(末尾に何かを追加するように指示することもできますが、&または同様のものが必要な場合は、教えてください)。

3
X11のAltキーに別の修飾子を割り当てる方法
目的: AltをCapsLockキーに、MetaをAltキーに割り当てたいのですが。ただし、そのようにすると、AltキーはAltとして認識されなくなり、CapsLockキーはCapsLockとして認識されなくなります。 openSUSE 11.4 以前は: openSUSE 11.1-私は自分のコンピューターの唯一のユーザーなので、/ usr / share / X11 / xkb / keycodes / xfree86ファイルを「単純に」編集したところ、問題なく動作しました。キーは最下位レベルでシンボルに関連付けられていました。 問題: xkb 私はポーランド語のレイアウト(pl_ext)のバリアントを作成しました(テスト用)このようなエントリで構成されています: key <CAPS> { [ Alt_L ] }; modifier_map Mod1 { Alt_L, Alt_R }; ただし、これは単に何もしません。xevのCapsLockキーはAlt_Lとして認識されます(記号)。 )。 質問:レイアウトファイルを定義して、CapsLockキーをAltに、Altキーをメタに設定するにはどうすればよいですか? 編集:ここでの成功の半分!今私はそのようなエントリを持っています: key <CAPS> { [ Alt_L ] }; modifier_map Mod1 { <CAPS> }; …
9 keyboard  x11  xmodmap  xkb 

3
Linuxコンソールでcaps-lockを再マッピングしてエスケープし、メニューを作成して作成する
XIを実行するときは、.xmodmaprcを使用して特定のキーを再マッピングします。 ! Make it so that both Caps Lock and Escape do Escape clear Lock keysym Caps_Lock = Escape ! Remap the menu key as Compose keysym Menu = Multi_key コンソールで同じことをするにはどうすればよいですか? 更新 私の回答で与えられた部分的な解決策に加えて、コンソールがCTRL- .をComposeにマップすることを学びました。だから、それに慣れることができるかもしれません。メニューキーをComposeとして設定するのは簡単ではありません。nulが割り当てられたキーコードが大量にあり、Menuの別名の明確な候補がないためです。 また、作成バインディング自体は、Xで使用されているものよりもはるかに制限されており、頻繁に使用する特殊文字のほとんどはそこにはないことにも気付きました。おそらく、X構文の構成バインディングをloadkeys読み取り可能なものに変換するユーティリティがあるでしょうか。

1
<esc>と<caps lock>を外付けキーボードでも持続する方法で交換する
以下を含む〜/ .speedswapperというファイルがあります。 ! Swap caps lock and escape remove Lock = Caps_Lock keysym Escape = Caps_Lock keysym Caps_Lock = Escape add Lock = Caps_Lock ...を実行xmodmap ~/.speedswapperするescと、とCaps Lockキーが切り替わります。私の〜/ .profileにこの行があるので、ログインするたびにこれらのキーが切り替えられます。 ただし、外部USBキーボードを接続すると、この設定が保持されないようです。私のラップトップのキーボードは完璧に機能しますが、外部キーボードで2つのキーを切り替えるには、コマンドを再度実行する必要があります。幸い、これを行っても私のラップトップのキーボードには影響がないようです-同期しているようです。 1つの解決策は、外部キーボードが接続されているときはいつでもそのxmodmapコマンドを実行する方法を見つけることですが、より堅牢であれば、別のキースワップソリューションを利用できます。OSはUbuntu 13.04です。 justbrowsingのコメントを考えると、これはudevルールを書くことで達成できるようです-私はRUNオプションを使用する必要があると思います、そしてそれは/ dev / hidraw0または/ dev / hidraw1でトリガーされる必要があるデバイスですキーボードを接続したときに表示されます...しかし、私はまだコンセプトに頭を抱えようとしているので、udevで何をしているのかを知っている人からの助けをいただければ幸いです。

1
AltGrキーがVirtualBoxのUbuntuで機能しない
Windows 7に(Oracleから)VirtualBoxをインストールし、最新のUbuntuで仮想マシンを作成しました。 ここでは、Firefoxで、左側のCtrlキーを使用できますが、右側のCtrlキーは効果がありません。ただし、AltGrキー(Right Altとも呼ばれます)を使用して{}のような中括弧を作成することはできません(Ctrl Vで貼り付けました)。 ターミナルウィンドウで、[入力方法]を[マルチプレス]に切り替えてから、AltGrを使用して、たとえば{}と入力します。これにより、この投稿用にこれらの文字を生成しました。ただし、「Multipress」では、Ctrlキーはまったく効果がないようです。たとえば、Ctrl DIと入力するには、右クリックして、[入力方法]を[システム(IBus(インテリジェント入力バス))]に切り替える必要があります。その後、AltGrは機能しません。 システム設定のキーボードレイアウトで構成キーを指定してみました。 それでは、CtrlもAltGrも機能しませんでした。 xmodmapが報告する内容は次のとおりです。 [〜] $ xmodmap -pke | grep -iコントロール キーコード37 = Control_L NoSymbol Control_L キーコード105 = Control_R NoSymbol Control_R [〜] $ xmodmap -pke | grep -i alt キーコード64 = Alt_L Meta_L Alt_L Meta_L キーコード204 = NoSymbol Alt_L NoSymbol Alt_L [〜] $ _ …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.