SKK で Zero Width Space を入力する.

Zero Width Space は, U+200B または ​,​ など.
http://www.unicode.org/charts/PDF/U2000.pdfなんかを参照.
ここでは,ZWSPと書かれている.
簡単には,

  • 数値文字参照で文字を記述
  • ブラウザで表示
  • ノートパッドへコピペ
  • 該当以外の文字を消した上で全コピー
  • skkの単語登録のダイアログ内でC-YやC-Vなどでペースト(昔はこれでskkimeが落ちていたけど,skk-fepでは大丈夫)

で,何に使うのかっちゅーと,PPTのテキストを1文字ずつアニメーションで出す時,句読点のところだけ時間かせぎするために使うのであった.

Sylpheed Pro 2.5.0で波線を入力するとUnicodeに変換していいか聞かれる問題の対処

ここにある問題が原因と思われる → 文字コード - 波ダッシュ、全角チルダ問題まとめ - Qiita
要するに,JISにない文字コードの文字が入力されていて,JISに変換して送信できないということなのだと思う.

skkでz-などでこの波線を入力しようとすると,全角チルダが入力され,それがJISに変換できないのが原因だと理解することにして,z-で入力される文字をU+301Cに変更してみた.
巷で評判のskkfep(私が使うのは20140826版)の場合,設定をsetting.js→「設定」→「詳細」→357行目を「〜」にする.
327行目は,全角英数モードでのチルダ入力だと思うので,こっちは元のままにしておいた.
ちなみに「〜」をそのまま入力して保存しようとすると,ANSI形式でskkrule.txtが保存できないぜ,って怒られるし,unicodeに変換して保存してどこにどんな動作影響が出るか分かんないので,やめといた方が無難だと思う.

ibus1.5系をASCIIキーボード+SKK環境で使い易くする

参考

本の虫: iBus 1.5がクソすぎる
iBusがクソになった理由 — KaoriYa

経緯

2年くらい前にこの記事を見た時は,何を言っているのかさっぱり分からなかったが,今なら少しは分かる.
でも,uimを散々使ってみた挙句,uimの変換中文字列がホワイトアウトして表示されなくなる現象 (RequestUim - uim-doc-ja - Japanese Documentation Project for uim - Google Project Hosting) に出くわしてからibusに戻っているのが現状だ.
ちなみにホワイトアウトは,私の環境ではシングルモニタでも出る
uimは,.Xdefaultにurxvtの色設定を書いても,.uimで色定義書いてuim-colorに適用してもだめだったから,私の知識では打つ手なし

まぁ方針の善し悪しは,特定人種の攻撃みたいな様相なのでスルーすることにして,
どうすれば,私の環境で快適に使えるかと試してみた.
あくまでマシになる程度で,快適とまではいかなかったが,文字が見えないよりはマシなので,uimは捨ててibusに乗り換えた.

環境

OS
Ubuntu 14.04
WM
xmonad
IM
ibus
IME
ibus-skk
キーボード
ASCII配列
エディタ
VIM ときどき emacs
VIMの動作するurxvtでちゃんと変換中文字列が表示されて,emacsでは起きないよう設定できることが最低条件

やること

ibus+ibus-skkのインストール
.xprofileで環境変数を設定してibus起動させるとかは,頑張って.
今覚えている範囲なら,これ書いてXかubuntu丸ごとかを再起動しとけばいけるかも.

xmodmap .Xmodmap export XIM=ibus export XIM_PROGRAM=/usr/bin/ibus-daemon export XIM_ARGS="--xim" export GTK_IM_MODULE="ibus" export XMODIFIERS="@im=ibus" export QT_IM_MODULE="ibus" ibus-daemon -d -x
ibusの設定を全ウィンドウで共通化させない
xmonadではツールバーなんて軟弱なものはないので,現在のinput methodを確認する術が,入力してみる,しかない.
不便極まりないので,ウィンドウを起こした時には常に決まった入力モードであって欲しい.
ibus-setupのadvancedでShare the same input method among all applicationsのチェックを外すことで,可能である.
skkの初期モードをLatinにしておく
実は初期モードはLatinなんだけど,Hiraganaに切り替えていたので戻すだけ.
キーボード操作メインのxmonadで初期モードHiraganaは自殺行為だった.
ibus-setupのinput MethodからSKKを選択してPreferencesを押し,Behaviorからinitial input modeをLatinにしておけばOK
ASCIIキーボードで入力できるようにする
ibus-skkのキーマップが106キーボードになっているので,asciiに変更する.
要su権限.
/usr/share/ibus/components/skk.xmlのlayoutをjpからusに変えて再起動か再ログインか,何かすればOK
(追記)インプットメソッドをskkのみにする
skkの中で直接入力できるのに,Englishを残しておく意味はないので,消す.これしないと,英語環境を使ってる時デフォでskkが起きてくれなくてうざい.これをやっても,例えばemacsを起動した時にはddskkを呼ばなくてもasciiの入力はできるし,C-jはLispの実行だし,C-x C-jでddskkが起きる.

結果

ウィンドウを遷移する度に,Latinに切り替わるぜ!
これがWindows機の動作だったらキレてるところだが,ubuntuなら,そんなに違和感ない.
ちなみに,何でか分からんが,.XdefaultsにemacsでuseXIMはfalseだよーとかしなくても,emacsからはibus-skkは呼ばれない.

SKKFEP

記事を書いたつもりが、なんか残ってなかったので改めて書いておく。
バイナリは、ここから DL → co Programs
skk-fepとも.

  1. setup.js を起動
  2. IE の窓から「インストール」をクリック
  3. 何度か出る UAC を全部 OK
  4. (個人的にはなくても良い気がしてきている)「カタカナ辞書」にチェックを入れてアップデート
  5. skkuser.txt をユーザ辞書フォルダに入れて「辞書の更新」
  6. 「設定>詳細」を次のように編集して上書き保存。(設定名がころころ変わるので、注意)
    • 配列 → 0 (英語キーボード)
    • 区切 → 1 (コロン、セミコロンの全角入力,なくてもいいかな…)
    • 句点 → 2 (ピリオド)
    • 読点 → 2 (カンマ)
    • 改行 → 1 (Enter入力で決定+改行)
    • 疑似 → 1 (入力モードをカーソルの色で表示する機能をエミュレート)
    • cy → ち
  7. 「コマンド」からコマンドプロンプトを上げて、> rule r
  8. puttyとかでサーバーサイドに uim-fep+uim-skk とか準備している場合,ローカルのskk-fepを殺さないといけなので,> rule putty.exe m5
  9. 「閉じる」で完了だが、IME 全部置き換えるためにログオフ→ログオンを推奨。