サーバいじくり雑記

2014年5月7日

Android端末からSSH経由で日本語入力したい

Filed under: ソフト, FreeBSD, Linux — bompopo @ 7:06 PM

ベッドでごろ寝しながらAndroid端末からサーバ上のファイルいじったりプログラムしたりしたいなーというだらだらするためのダメ人間の設定。
キー入力はスクリーンの仮想キーボードではなく、Bluetooth接続な物理キーボードを使います(ただし簡易的なもののためESCキー等なし)。

今回AndroidのSSHクライアントには「JuiceSSH」を使用しました。鉄板らしい「ConnectBot」はCtrlキー等をちゃんと送信してくれないらしいので外しました。(OSSで固めたかったのですがorz)
また、今回設定をした理由はAndroidのSSHクライアントは日本語入力ができないのです!なんでー?

さて、サーバ上の設定は以下な感じです。

必要なソフトのインストール(mozcの部分はお好きな変換サーバを使ってください)。

$ sudo apt-get install uim-fep uim-mozc

uim用設定。リモートからはデフォルトの「shift+space」が使えないので「Ctrl+Space」と「Ctrl+/」を定義します。

$ cat ~/.uim
(define default-im-name 'mozc)
(define-key generic-on-key? '("<Shift> " "<Control> " "<Control>\\"))
(define-key generic-off-key? '("<Shift> " "<Control> " "<Control>\\"))

vimには、今回キーボードに存在しない「ESC」キーを「Ctrl+j」にマップしました。

$ cat ~/.vimrc
imap <c-j> <esc>

これでリモート接続からサーバサイドでの日本語入力が可能になります。ただ、そもそも日本語が表示できない環境からやったとしてももちろん表示はできないのでそこら辺は別問題。

$ uim-fep

これ以降、コンソール下部に入力の状態や変換候補がでるようになります。ヤッタネ!
抜けるときは「exit」で。

参考:debian コンソールで日本語を読み書きする
参考:gentooでuim-mozcを使う方法
参考:uim-fep README.ja
参考:emacs、vimで日本語の文章を書く
参考:VimでESCを別のキーにマッピングする

広告

2件のコメント »

  1. こんにちは。すごくヒントになる記事でした。
    当方もAndroidから自宅サーバーにJuiceSSHで入って日本語入れようと思ったらできず、なんでだろうと。無料JuiceSSHだから?

    普段、あまり意識してなかったのですが、ssh経由での日本語入力って、クライアント側から日本語コードを送っていたのですね。サーバーサイドで日本語入力できるなら、解決しそうです。
    勘違いかもしれませんが、そういうお話だと理解しましたが、正しいでしょうか?

    コメント by kazanjoho — 2016年6月18日 @ 9:12 PM

  2. 記事を読んでいた上、コメントありがとうございます。そして遅くなってすいません。

    その理解でOKです。

    Android上で日本語入力できるSSHクライアントがでてくればこんな回りくどいことせずにすむのですが(^_^;)

    コメント by bompopo — 2016年7月4日 @ 3:29 PM


RSS feed for comments on this post. TrackBack URI

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。