Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
日本語入力を再考する
Search
Akinori MUSHA
December 23, 2022
Technology
1
370
日本語入力を再考する
日本語入力方式AZIKの紹介
Akinori MUSHA
December 23, 2022
Tweet
Share
More Decks by Akinori MUSHA
See All by Akinori MUSHA
上手なPRと機能要望の勘所
knu
1
220
RubyとRailsの何が強いのか
knu
7
15k
OSSで結果を出す方法
knu
16
10k
Rails and JSON API in 2019
knu
0
190
Evolution Of Enumerator
knu
3
5k
What's Cooking In Ruby 2.7
knu
1
650
Other Decks in Technology
See All in Technology
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
230
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.9k
JAWS DAYS 2025 アーキテクチャ道場 事前説明会 / JAWS DAYS 2025 briefing document
naospon
0
2.7k
JAWS FESTA 2024「バスロケ」GPS×サーバーレスの開発と運用の舞台裏/jawsfesta2024-bus-gps-serverless
ma2shita
3
290
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
900
DeepSeekとは?何がいいの? - Databricksと学ぶDeepSeek! 〜これからのLLMに備えよ!〜
taka_aki
1
170
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
520
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
510
Amazon Aurora のバージョンアップ手法について
smt7174
2
180
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
390
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
280
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
280
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
A designer walks into a library…
pauljervisheath
205
24k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Building Your Own Lightsaber
phodgson
104
6.2k
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Thoughts on Productivity
jonyablonski
69
4.5k
Building Adaptive Systems
keathley
40
2.4k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Transcript
🚅ຊޠೖྗΛ࠶ߟ͢Δ💨 ऀ থل
あなたは何派? • ローマ字入力 • かな入力 • 親指シフト(NICOLA) • 漢直入力 •
その他?
ローマ字入力 • “nihongonyuuryoku”+変換→”日本語入力” • Pros: • 学習コストが小さい(ローマ字は義務教育で習うため、アルファベットの配置さ え覚えれば英語も日本語も迷うことなく入力できる) • すべての環境で使える(デファクトスタンダード;
9割以上の人が採用) • Cons: • 必要な打鍵数が多い(1音あたり2打鍵前後) • 二重母音(「しい」「ちゅう」)、促音、撥音(あ行・や行の直前や末尾ではnn) などで頻繁に連打が必要 • 色々な打ち方が許されているため、効率や覚えやすさと(ヘボン式)ローマ字と しての正しさの間のジレンマがある(ju/zyu/jyu, cha/tya, fu/hu, aiueoy以外 の前のnを重ねるか, 等)
かな入力 • “にほんごにゅうりょく”+変換→”日本語入力” • Pros: • 必要な打鍵数が少ない 1音あたり1打鍵(+濁点)
→ローマ字入力の約半分 • 基本的に音と打鍵が1:1に対応しているため分かりやすく、揺れもない • ほとんどの環境で使える(配列はJISのデジュールスタンダード) • Cons: • 学習コストが高い(五十音配列を英数記号類と別個に覚える必要がある) • 英語キーボードの場合、キートップに表記されていない、「ろ」「む」「へ」 「゜」などが入力できなかったり位置が異なるなどの問題がある
親指シフト(NICOLA) • “にほんごにゅうりょく”+変換→”日本語入力” • Pros: • 必要な打鍵数が少ない 1音あたり1(単独または2同時)打鍵
→ローマ字入力の約半分 • 音と打鍵が濁音も含めて完全に1:1対応で明解 • 他方式では遊びがちな親指を活用し、リズミカルに入力できる • Cons: • 学習コストが高い • 専用キーボード以外、特に英語キーボードでは親指の位置にキーが少ないので難しい • 使える環境が限られる(他人のPC/デバイスではまず無理)
漢直入力(T-Codeなど) • “日本語入力”→”日本語入力” (実際は各文字にキー割り当てがある) • Pros: • 必要な打鍵数が最小限かつ一定
1「文字」あたり2-3打鍵 • 変換操作が不要なので確定的 候補を選ぶ操作が不要で、究極的には 画面を視認する必要もない • Cons: • 学習コストが非常に高い(ただし、TUT-codeのように、覚えていない字も効率を犠牲に読 み+変換で代替入力できる方式もある) • 覚え違いや入力ミスにより他方式ではあり得ない誤字が発生しうる(筆記時のように似た 漢字を間違えることもある) • 使える環境が限られる(他人のPC/デバイスではまず無理) 出典: http://blogs.yahoo.co.jp/nozomi701/67696601.html
その他? • 希望条件: • 必要な打鍵数が少ない • 学習コストが低い • 既存のIME(MS-IME, Google日本語入力,
ATOK, …) やキーボードカスタマイザ(Karabiner, のど か, …)だけで実現できるとうれしい • オレオレ理論で開発してもいいが、できれば他人の 苦労や経験に乗っかりたい
ちなみに… • SKKもここに載せるべきかも • Simple Kana to Kanji • ローマ字入力と変換エンジンを統合し、かなは確定入力、漢
字は変換入力、と小さな単位でこまめに確定していく(形態 素解析+連文節変換へのアンチテーゼ) • 辞書育成ゲーム(新語を入力したその場で辞書登録できる) • マイナー界のメジャー選手 • ただし、かな入力や漢直入力等とハイブリッドすることも可能 なので、ここではIMEの一つとして別枠扱い
拡張ローマ字入力「AZIK」 • “nihlgonyhryoku”+変換→”日本語入力” • 総本山:「AZIK総合解説書」 • ローマ字入力がベース、ほとんどの組合せはそのまま使える • 専用のIMEを入れるのではなく、既存の入力システムのロー マ字テーブルのカスタマイズだけで利用可能
• Google日本語入力, ATOK, Microsoft IMEなど • macOS標準の日本語入力でもplistファイルをいじればでき るかも?(「ことえり」時代はできた)
拡張ローマ字入力「AZIK」 • 促音、撥音は子音を重ねるのではなく1文字 で入力(「;」で「っ」, Qで「ん」) • しゃ行は「sh」の代わりに「x」, ちゃ行は 「ch」の代わりに「c」を使う
拡張ローマ字入力「AZIK」 • 標準的なローマ字テーブルは、実はスカスカ 二 打 目 A I U E
O K T N H D 一 打 目 K か き く け こ っk S さ し す せ そ T た ち つ て と っt N な に ぬ ね の んk んt ん んh んd H は ひ ふ へ ほ っh
拡張ローマ字入力「AZIK」 • 使われていない子音+子音の組合せを活用する 二 打 目 A I U E
O K T N H D 一 打 目 K か き く け こ きん こと かん くう けん S さ し す せ そ しん した さん すう せん T た ち つ て と ちん たち たん つう てん N な に ぬ ね の にん にち ん ぬう ねん H は ひ ふ へ ほ ひん ひと はん ふう へん
拡張ローマ字入力「AZIK」 • ローマ字テーブルの空き領域を活用し、日 本語に頻出する読みにショートカットを割 り当て • 二重母音 (ai, ei, ou,
uu) • 母音+撥音 (an, in, un, en, on, …) • 「です」「ます」「する」「こと」等
拡張ローマ字入力「AZIK」 • Pros: • 学習コストが小さい • ヒトの空間認識能力を活用する配列なので短期間で覚え られる • 覚えたショートカットから使い始めることで徐々に入力
効率を上げていくことができる • ショートカットを思い出すのに0コンマ何秒か掛かったと しても(ショートカットなので)元は取れる • ほとんどのIMEで、ローマ字テーブルの改変のみで実現可能
拡張ローマ字入力「AZIK」 • Pros (cont.): • 開発者によれば、通常のローマ字入力から節約できる打鍵数は 12%とのことだが、拗音、撥音、促音、二重母音を巡るストレス から解放される(連打や続けにくい運指パターンが激減する) • 設定ベースなので好みに応じていくらでもカスタマイズ可能
• Cons: • 使う環境を選ぶ • 各IME向けの設定ファイルが公開・共有されていない(おそら く、オリジナルのまま使う人は少なく、それぞれの家で秘伝の タレ化しているため?)
母音+撥音 • -Z: -an (「Aの下」で覚える) • -K: -in (「Iの下」で覚える) •
-J: -un (「Uの下」で覚える) • -D: -en (「Eの下」で覚える) • -L: -on (「Oの下」で覚える) 黄色
二重母音 • -Q: -ai (「Aの上」で覚える) • -W: -ei (「Eの左」で覚える) •
-P: -ou (「Oの右」で覚える) • -H: -uu (「Uの左下」で覚える) • →漢語の入力負担が激減 水色
頻出の並びを簡約 • DS: です • MS: ます • ST: した
• SR: する • MN: もの • KT/GT: こと/ごと • HT/BT: ひと/びと • TT/DT: たち/だち • RR: られ • WR: われ • KR/GR: から/がら • NR: なる • YR: よる • TB: たび • NT: にち • …
ファンによる改造案 • 拗音の負担を軽減 • -X: -ょう • -V: -ゅう •
特殊コンボ追加 • RB: れば • DR: である • TST: として
定型のあいさつを楽に • よく使う組合せを特殊コンボに • TX: という • YS: よろし •
NG: ねがい • YSKUONGSIMS.: よろしくお願いします。
左の小指をいたわる • 左上のQは押しづらいときもあるので右にも 「ん」を追加 • \: ん
もっと行ける • 拗音の負担をさらに大幅軽減 • -YK: -ゃく -YX: -ょく •
XT: しゅつ JT: じゅつ • XV: しゅく JV: じゅく
どんどん行ける • 漢語の頻出パターンをカバー • -C: -(e)き • SC: せき, TC:
てき, … • -;: -(e)つ • K;: けつ, S;: せつ, T;: てつ, M;: めつ, G;: げつ, Z;: ぜつ, B;: べつ, … • 「へつ」はほぼ使わないので H;: はつ にしたり
まだ行ける • 外来語でよく出る長音 • -' : -(ぃ)ー • d': でぃー,
t': てぃー, k': きー, …
設定上の注意 • ATOK for Windowsには、ローマ字テーブル のエントリ数に上限がある(550) • 使わない組合せは消して行こう • ATOK
for Macでやりすぎると特定の並びの 入力中に固まる • 入力支援の「高度な自動修復」をオフにし よう
まとめ • 私の設定: https://github.com/knu/azik • 日本語入力 = nihlgonvryk + 変換
→11打鍵でかな10文字分の入力 • 劇的に改善できます = gctcnikqzddcms + 変換 →15打鍵でかな13文字分の入力 • 日本語入力が楽しくなるよ!😊 • 標準のローマ字テーブルをベースに、使われていない組合せに登録 したり、少しずつ変えてみるのが入りやすくておすすめ • 設定ファイルをGitHubなどに置いておけば共用パソコンでも少々の 設定で快適に