Solist Work Blog

ソフトウェアエンジニア / IT navigator

Google日本語入力(Mozc)

マルチバイトのバグに悩まされたことがあったので、多くのソフトウェアエンジニアと同じく 私はプログラミングは基本的に英語で書いてきましたが、 最近ブログを書くようになって日本語を入力することが増え、日本語入力の重要さを今頃気づいた次第です。 パソコンで日本語入力なしで仕事をする人はいないでしょうし、 日本語入力の効率的なやり方を改善すればほとんどの人に役に立つと思いますので、 この記事では日本語入力について書いてゆきます。

多くの人と同じように日本語の単語を打ったあとIMEをオフにして英語の単語を打ちまたIMEをONにするという作業を繰り返して入力してきました。 しかし大量に日本語を打ち込むようになるとこの方法では流れるように文章がでてきません。 確かにGoogle日本語入力(Mozc)は賢いですが、一般的でないプログラミングに関する英単語混じりの長文の文章を一発で変換してくれるほど賢くはありません。流れるように文章が打てればアウトプットももっと増えていくはずです。

そこでまず考えたのが日本語で英単語を入力しようというものです。

日本語でクリスマスを入力してXmasに

このように「くりすます」と打てば 「Xmas」と変換してくれます。 なかなかGoogle日本語入力(Mozc)は賢いです。 しかし、この手法が使えるのはメジャーな単語だけです。

日本語でリナックスと入力

見てのとおり、「りなっくす」と打って「RINAKKUSU」とでてきていまう始末です。 「いーまっくす」と打っても「I-MAKKUSU」がでてきてしまいます。 Linuxの高い知名度ですらこれではソフトウェアエンジニアがこの方法で文章を書くことはできないでしょう。 Google日本語入力(Mozc)の賢さに頼るところは頼るべきですが、全部の面倒を見てもらうには無理がありそうです。

Google日本語入力(Mozc)に頼らない部分を決める

Google日本語入力(Mozc)に頼らない部分を決めてうまく共存することを考えます。

Mozcの設定画面

Composition Ctrl j  DisplayAsHiragana
Composition Ctrl k  DisplayAsFullKatakana
Composition Ctrl l  ConvertToHalfAlphanumeric

まずキモになるのはこのショートカットキーを定義することです。 Ctrl-jを押すと何があってもひらがなになります。 Ctrl-kを押すと何があってもカタカナになります。 Ctrl-lを押すと何があっても小文字英数になり、2回押すと大文字英数になり、3回押すと先頭だけ大文字英数になります。

よこはまと入力した状態で

  • Ctrl-lを押すとyokohama
  • Ctrl-l 2回目を押すとYOKOHAMA
  • Ctrl-l 3回目を押すとYokohama
  • Ctrl-j を押すとよこはま
  • Ctrl-k を押すとヨコハマ

となります。いくらGoogle日本語入力(Mozc)が賢くなっても「よこはま」の使い分けは難しいだろうと思います。 人間はいつも同じ「ヨコハマ」を使うとは限らないからです。

さて、話を「りなっくす」と「いーまっくす」に戻します。

「ぃぬx」と入力した状態で`Ctrl-l`を押すとlinux、2回押すとLINUX、3回押すとLinux
「えまcs」と入力した状態で`Ctrl-l`を押すとemacs、2回押すとEMACS、3回押すとEmacs

となります。英語と日本語の境目でIMEをONにしたりOFFしたりしなくてよくなるので 慣れは必要ですが、流れるように文章が書けるようになります。

「いめ」と打って`Ctrl-l`を2回押してでIME
「おn」と打って`Ctrl-l`を2回押してでON
「おっf」と打って`Ctrl-l`を2回押してでOFF

この文章はこのように入力しています。英語は英語入力モードで入力しなければいけないという先入観を取り除けばこれほど楽になるとは思いませんでした。頭をやわらかくして見落としているものを見つけていかなければいけません。 きっと他にも思い込みによって阻害されているものがたくさんあるはずです。先入観にとらわれないセンスを磨く必要がありそうです。 その他の設定も最後に書いておくので参考にしてください。 わたしは基本的にEmacs脳なのでEmacsベースです。

Google日本語入力(Mozc)の学習したデータ

Google日本語入力(Mozc)があなたの癖を学習しても再インストールやマシントラブルでデータが消えればレベル1からやり直しです。 私の場合はArchLinuxなので~/.mozcにデータがあります。 Dropboxでいつでも復活できるようにしておきましょう。 ~/.mozcのデータを~/Dropbox/mozc/.mozcに保存したらこのようなシンボリックリンクを貼っておくとバックアップ不要になります。

ln -sfn ~/Dropbox/mozc/.mozc ~/.mozc

そしてMakefileを作ると次回以降はmake mozcを実行するだけでよいのです。

mozc: ## Install ibus-mozc
	test -L ${HOME}/.mozc || rm -rf ${HOME}/.mozc
	ln -vsfn ${HOME}/Dropbox/mozc/.mozc   ${HOME}/.mozc
	yay -S ibus-mozc
	ibus-daemon -drx

allinstall: ttf-cica install init initdropbox pipinstall goinstall aur mozc neomutt docker mariadb redis rbenv rustinstall nodeinstall screenkey dnsmasq desktop chromium sxiv zeal zoom toggle sylpheed rubygem

make allinstall するとmake mozcも実行されるのでさらにわかり易くなります。 面倒なことは自動化しておけば、本質的なことに集中できるのではないでしょうか。

Google日本語入力(Mozc)の設定

参考までに私の設定を書いておきます。

status  key command
Composition Backspace   Backspace
Composition Ctrl ;  DisplayAsHalfWidth
Composition Ctrl :  DisplayAsHalfAlphanumeric
Composition Ctrl '  DisplayAsHalfAlphanumeric
Composition Ctrl a  MoveCursorToBeginning
Composition Ctrl b  MoveCursorLeft
Composition Ctrl d  Delete
Composition Ctrl e  MoveCursorToEnd
Composition Ctrl f  MoveCursorRight
Composition Ctrl g  Cancel
Composition Ctrl h  Backspace
Composition Ctrl j  DisplayAsHiragana
Composition Ctrl k  DisplayAsFullKatakana
Composition Ctrl l  ConvertToHalfAlphanumeric
Composition Ctrl Left   MoveCursorToBeginning
Composition Ctrl m  Commit
Composition Ctrl m  Commit
Composition Ctrl Right  MoveCursorToEnd
Composition Delete  Delete
Composition Eisu    ToggleAlphanumericMode
Composition End MoveCursorToEnd
Composition Enter   Commit
Composition ESC Cancel
Composition F10 DisplayAsHalfAlphanumeric
Composition F2  ConvertWithoutHistory
Composition F6  DisplayAsHiragana
Composition F7  DisplayAsFullKatakana
Composition F8  DisplayAsHalfWidth
Composition F9  DisplayAsFullAlphanumeric
Composition Shift Space IMEOff
Composition Home    MoveCursorToBeginning
Composition Left    MoveCursorLeft
Composition Option a    DisplayAsHalfWidth
Composition Option c    DisplayAsFullAlphanumeric
Composition Option F1   DisplayAsHiragana
Composition Option F2   DisplayAsFullKatakana
Composition Option F3   DisplayAsFullAlphanumeric
Composition Option F4   DisplayAsHalfWidth
Composition Option F5   DisplayAsHalfAlphanumeric
Composition Option j    MoveCursorLeft
Composition Option l    MoveCursorRight
Composition Option s    DisplayAsHalfAlphanumeric
Composition Option Space    InsertFullSpace
Composition Option x    DisplayAsFullKatakana
Composition Option z    DisplayAsHiragana
Composition Right   MoveCursorRight
Composition Space   Convert
Composition Tab PredictAndConvert
Conversion  Backspace   Cancel
Conversion  Ctrl ;  DisplayAsHalfWidth
Conversion  Ctrl :  DisplayAsHalfAlphanumeric
Conversion  Ctrl '  DisplayAsHalfAlphanumeric
Conversion  Ctrl a  SegmentFocusFirst
Conversion  Ctrl b  SegmentFocusLeft
Conversion  Ctrl d  SegmentFocusRight
Conversion  Ctrl e  ConvertPrev
Conversion  Ctrl f  SegmentFocusRight
Conversion  Ctrl h  Cancel
Conversion  Ctrl i  SegmentWidthShrink
Conversion  Ctrl j  DisplayAsHiragana
Conversion  Ctrl k  DisplayAsFullKatakana
Conversion  Ctrl l  DisplayAsHalfAlphanumeric
Conversion  Ctrl Left   SegmentFocusFirst
Conversion  Ctrl m  Commit
Conversion  Ctrl n  ConvertNext
Conversion  Ctrl o  SegmentWidthExpand
Conversion  Ctrl p  ConvertPrev
Conversion  Ctrl q  SegmentWidthShrink
Conversion  Ctrl Right  SegmentFocusLast
Conversion  Ctrl s  SegmentFocusLeft
Conversion  Ctrl w  SegmentWidthExpand
Conversion  Ctrl x  ConvertNext
Conversion  Down    ConvertNext
Conversion  End SegmentFocusLast
Conversion  Enter   Commit
Conversion  Ctrl g  Cancel
Conversion  F10 DisplayAsHalfAlphanumeric
Conversion  F6  DisplayAsHiragana
Conversion  F7  DisplayAsFullKatakana
Conversion  F8  DisplayAsHalfWidth
Conversion  F9  DisplayAsFullAlphanumeric
Conversion  Shift Space IMEOff
Conversion  Home    SegmentFocusFirst
Conversion  Left    SegmentFocusLeft
Conversion  Option a    DisplayAsHalfWidth
Conversion  Option c    DisplayAsFullAlphanumeric
Conversion  Option F1   DisplayAsHiragana
Conversion  Option F2   DisplayAsFullKatakana
Conversion  Option F3   DisplayAsFullAlphanumeric
Conversion  Option F4   DisplayAsHalfWidth
Conversion  Option F5   DisplayAsHalfAlphanumeric
Conversion  Option i    ConvertPrev
Conversion  Option k    ConvertNext
Conversion  Option s    DisplayAsHalfAlphanumeric
Conversion  Option x    DisplayAsFullKatakana
Conversion  Option z    DisplayAsHiragana
Conversion  PageDown    ConvertNextPage
Conversion  PageUp  ConvertPrevPage
Conversion  Right   SegmentFocusRight
Conversion  Shift Down  ConvertNextPage
Conversion  Shift Left  SegmentWidthShrink
Conversion  Shift Right SegmentWidthExpand
Conversion  Shift Space ConvertPrev
Conversion  Shift Tab   ConvertPrev
Conversion  Shift Up    ConvertPrevPage
Conversion  Space   ConvertNext
Conversion  Tab PredictAndConvert
Conversion  Up  ConvertPrev
DirectInput Ctrl Shift r    Reconvert
DirectInput Shift Space IMEOn
Precomposition  Backspace   Revert
Precomposition  Ctrl Backspace  Undo
Precomposition  Ctrl Shift r    Reconvert
Precomposition  Eisu    ToggleAlphanumericMode
Precomposition  Shift Space IMEOff
Precomposition  Space   InsertSpace
Prediction  Ctrl Delete DeleteSelectedCandidate
Suggestion  Ctrl n  PredictAndConvert
Suggestion  Down    PredictAndConvert
Suggestion  Shift Enter CommitFirstSuggestion
Composition Kanji   IMEOff
Composition OFF IMEOff
Composition ON  IMEOn
Conversion  Kanji   IMEOff
Conversion  OFF IMEOff
Conversion  ON  IMEOn
DirectInput Kanji   IMEOn
DirectInput ON  IMEOn
Precomposition  Kanji   IMEOff
Precomposition  OFF IMEOff
Precomposition  ON  IMEOn

タグ一覧

お仕事の依頼はこちらからどうぞ

お仕事の依頼はこちらからどうぞ