xrdp - キーボードレイアウトを変更する方法

xrdp - キーボードレイアウトを変更する方法

Windows 7 マシンから Ubuntu マシンに xrdp セッションを開くと、US キーボード レイアウトが使用されます。ただし、Ubuntu マシンのデフォルトのキーボード レイアウトは異なるため、xrdp セッション中にそれを使用したいと思います。どうすればこれを修正できますか?

答え1

説明がほとんどないようですので、ここに投稿したいと思います。

必要な言語/キーボード入力を見つけるここ

たとえば、fr-be フランス語 (ベルギー) は 080C です。

次に、これらのコマンドを実行して、選択した入力のキーボード マッピングを生成します。

xrdp-genkeymap km-080C.ini

xrdpフォルダにコピーするには

sudo mv km-080C.ini /etc/xrdp

ファイルの権限を変更して、使用できるようにすることを忘れないでください。

sudo chown root:root /etc/xrdp/km-080C.ini

サービスを再起動すると動作するはずです

sudo service xrdp restart

答え2

私の場合、Xで正しいキーボードマップを設定するには次のコマンドを実行するだけで十分でした。

setxkbmap be

ここで「be」はあなたの土地コードに置き換えてください。現在の値は次のように確認できます。

setxkbmap -query

答え3

残念ながら、上記の回答のどれも私の問題を完全に解決しませんでした。

ディレクトリを調べたところ、ファイルに 0 プレフィックスが複数あるsudo ls /etc/xrdp/ことがわかった.iniので、代わりに次の操作を実行して動作させる必要がありました。

sudo xrdp-genkeymap /etc/xrdp/km-00000424.ini(スロベニア語レイアウト)

さらにファイルを編集しsudo vi /etc/xrdp/xrdp-keyboard.ini、各セクションの後に次の行を追加します。

[default_rdp_layouts]
rdp_layout_si=0x00000424

; <rdp layout name> = <X11 keyboard layout value>
[default_layouts_map]
rdp_layout_si=si

[rdp_layouts_map_mac]
rdp_layout_si=si

それが誰かの役に立つことを願います。

答え4

残念ながら、iniファイルの操作はうまくいきませんでした。私が得ることができたのは、英語のレイアウトの追加だけでした。そのため、奇妙な名前の英語レイアウトが3つできました。これを始まり1行目の直後の、例/etc/xrdp/startwm.sh:/etc/xrdp/reconnectwm.sh

( sleep 3; setxkbmap -model pc105 -layout us,ru -option grp:alt_shift_toggle )&

または、システム全体の設定ファイルから XRDP キーボード レイアウトを設定する場合は (/etc/default/keyboardおそらくこれが望ましいでしょう)、代わりに次のように記述します。

. /etc/default/keyboard
( sleep 3; setxkbmap ${XKBMODEL:+-model "$XKBMODEL"} ${XKBLAYOUT:+-layout "$XKBLAYOUT"} ${XKBVARIANT:+-variant "$XKBVARIANT"} ${XKBOPTIONS:+-option "$XKBOPTIONS"} )&

ちなみに、システム全体のキーボード設定ファイル自体の設定は、/etc/default/keyboard次の方法で行うことができます。

  • 手作業で編集する
  • 構成ユーティリティを使用する場合:dpkg-reconfigure keyboard-configuration
  • コマンドラインユーティリティを使用する場合:localectl set-x11-keymap us,ru pc105 , grp:alt_shift_toggle

関連情報