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
300
日本語入力を再考する
日本語入力方式AZIKの紹介
Akinori MUSHA
December 23, 2022
Tweet
Share
More Decks by Akinori MUSHA
See All by Akinori MUSHA
上手なPRと機能要望の勘所
knu
1
200
RubyとRailsの何が強いのか
knu
7
14k
OSSで結果を出す方法
knu
16
10k
Rails and JSON API in 2019
knu
0
180
Evolution Of Enumerator
knu
3
4.9k
What's Cooking In Ruby 2.7
knu
1
620
Other Decks in Technology
See All in Technology
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
7
760
Platform Engineering for Software Developers and Architects
syntasso
1
510
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
370
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
590
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Side Projects
sachag
452
42k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Faster Mobile Websites
deanohume
305
30k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
What's new in Ruby 2.0
geeforr
343
31k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Producing Creativity
orderedlist
PRO
341
39k
A Philosophy of Restraint
colly
203
16k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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などに置いておけば共用パソコンでも少々の 設定で快適に