桔梗 (Kikyo) ユーザーマニュアル

桔梗は、親指シフトや文字キー同時打鍵シフトなど、さまざまなキー配列を柔軟に実現するためのキーボード配列エミュレーターです。

1. タスクトレイメニューの使い方

桔梗を起動すると、Windowsのタスクトレイ(画面右下の通知領域)に桔梗のアイコンが表示されます。アイコンをクリック(または右クリック)するとメニューが表示され、以下の操作が可能です。

トレイアイコンの状態

  • 通常時: 桔梗が有効に機能しています。
  • 斜線(赤線)入り: 桔梗が一時停止(無効化)されています。

メニュー項目

  • 配列の一覧: 現在登録されている配列定義ファイルの一覧が表示されます。チェックマークが付いているものが現在有効な配列です。クリックすることで瞬時に配列を切り替えることができます。
  • 配列定義再読み込み: 配列定義ファイル(.kky 等)をテキストエディタ等で編集した際、この項目をクリックすると変更内容が即座に反映されます。
  • 設定: 桔梗の設定画面を開きます。
  • 一時停止 / 再開: 桔梗のキーフック動作を一時的に停止・再開します。
  • 終了: 桔梗の実体を完全に終了します。

2. 設定画面の各項目と挙動

タスクトレイメニューの「設定」から開く画面では、桔梗の各種動作をカスタマイズできます。

2.1. 配列

  • 配列定義ファイル:
    使用する配列定義ファイル(.kky, .yab, .bnz など)をリストに登録し、クリックでアクティブな配列を切り替えます。「新規追加」からファイルを選択して追加できます。
  • 文字キーのキーリピートを有効にする:
    キーを押しっぱなしにした際の連続入力(リピート)の挙動を設定します。
    • 文字が割り当てられているキー: オンにすると、配列定義により文字出力が設定されているキーを押し続けた際に連続入力が発生します。
    • 文字が割り当てられていないキー: オンにすると、配列定義において文字が未定義(パススルー等)のキーを押し続けた際に連続入力が発生します。

2.2. 親指シフト

左親指、右親指それぞれについて独立して挙動を設定できます。

  • 親指シフトキー:
    親指シフトの起点となるキー(無変換、変換、Space等)を指定します。「なし」にすると当該の親指シフトは無効になります。
    拡張1拡張4 などの拡張仮想キーも指定できます。
  • 連続シフト:
    オンにすると、親指シフトキーを押しっぱなしにしている間、文字キーを何度打鍵しても常にシフト状態が継続・適用されます。
  • 単独打鍵:
    親指シフトキーを他のキーと同時押しせず、単独で押して離した際の挙動を指定します。
    • 無効: 押しても何も出力しません。
    • 有効: 設定した親指シフトキー自体の本来のキー入力(例:「変換」なら「変換」)を出力します。
    • 前置シフト: 離した後に次に打鍵する1文字に対してシフトを適用します。
    • スペースキー: 単独打鍵時に強制的に「スペース」を出力します。
  • 親指シフトキーリピート:
    単独打鍵が「有効」または「スペースキー」に設定されている場合、親指シフトキーを押しっぱなしにするとその出力がリピートされるようになります。
  • 親指シフトが同時打鍵と判定される重なり割合:
    文字キーと親指キーが「同時押しされた」と見なされるための、押下時間の重なり(オーバーラップ)の閾値(%)を設定します。
    (※現在の内部仕様上、親指打鍵の判定にも下記の「文字キー同時打鍵シフト」の重なり割合が適用される場合があります)

2.3. 文字キー同時打鍵シフト

  • 連続シフト:
    文字キー同士による同時打鍵シフト(ローマ字テーブル等の拡張)において、シフトキー側の文字キーを押しっぱなしで連続入力することを許可します。
  • 文字キー同士が同時打鍵と判定される重なり割合:
    2つの文字キーが「同時押しされた」と見なされるための重なり時間の閾値(デフォルトは35%)を設定します。後に押されたキーの押下時間に対する、同時押下時間の割合で計算されます。

2.4. 動作モード

  • 一時停止用のショートカットキー:
    桔梗の動作を瞬時にオン・オフするためのキー(ScrollLock, Pause, Insert 等)を設定します。ゲームプレイ時など、一時的に通常キーボードに戻したい場合に便利です。
  • IMEへのアクセス方法:
    桔梗が内部でWindowsの日本語入力状態を判定する方式を指定します。通常は Auto のままで問題ありません。
  • Windowsログオン時に自動起動:
    オンにすると、PC起動時(Windowsログイン時)に自動的に桔梗が常駐します。

3. 配列定義ファイル(.kky 等)の仕様

配列定義ファイルは、カンマ区切りの表形式(CSVライク)で記述されたテキストファイルです。
[セクション名] でブロックを分け、どのような打鍵で何の文字を出力するかを定義します。

3.1. 定義可能なセクション名とその挙動

桔梗では、セクション名によって「IMEの状態(日本語入力か英数か)」と「どのシフトキーが押されているか」を自動判定し、定義内容の解釈モードを切り替えます。

サポートされているすべてのセクション名は以下の通りです。

1. かな配列用セクション(全6種)

IMEが日本語入力モードのときに適用されます。
このセクション内に記述された文字は「かな解釈モード」となり、かな文字や全角記号(例:, , )を直接記述した際に、OSに送信すべき適切なキーコード群へと自動展開されます。

  • [かなシフト無し] : シフトキーも親指シフトキーも押されていない、基本となる状態。
  • [かな左親指シフト] : 左親指シフトキーを押しながら打鍵した状態。
  • [かな右親指シフト] : 右親指シフトキーを押しながら打鍵した状態。
  • [かな小指シフト] : Shiftキー(左右問わず)のみを押しながら打鍵した状態。
  • [かな小指左親指シフト] : Shiftキーと左親指シフトキーを両方押しながら打鍵した状態。
  • [かな小指右親指シフト] : Shiftキーと右親指シフトキーを両方押しながら打鍵した状態。

2. ローマ字配列用セクション(全6種)

IMEが日本語入力モードのときに適用されますが、かな配列用セクションと異なり、文字のパース(解釈)は通常の英数・ローマ字扱いとして処理されます。かな入力を前提としない日本語配列(ローマ字テーブル拡張など)を定義する場合に使用します。

  • [ローマ字シフト無し]
  • [ローマ字左親指シフト]
  • [ローマ字右親指シフト]
  • [ローマ字小指シフト]
  • [ローマ字小指左親指シフト]
  • [ローマ字小指右親指シフト]

3. 英数配列用セクション(全6種)

IMEがオフ(英数・半角入力モード)のときに適用されるセクションです。英数入力時専用のキー配列や記号配列を定義する場合に使用します。

  • [英数シフト無し]
  • [英数左親指シフト]
  • [英数右親指シフト]
  • [英数小指シフト]
  • [英数小指左親指シフト]
  • [英数小指右親指シフト]

4. 拡張親指シフト用セクション(全2種)

左右の親指シフトキー以外に、「拡張1」「拡張2」として割り当てた親指シフトキーを押した際に適用されます。主にIMEが日本語モードの際に評価されます。

  • [拡張親指シフト1]
  • [拡張親指シフト2]

5. キーマッピング用セクション

  • [機能キー]
    キー配列のベースとなるハードウェア的なマッピング(置換)を定義します。
    フォーマットは 置換元キー, 置換先キー と記述します。
    (例: 無変換, Extended1 と記述すると、以降桔梗内部において無変換キーが「拡張仮想キー1」として振る舞い、これを親指シフトの起点などに設定できるようになります)

3.2. サブプレーン(拡張レイヤー)の定義

同一セクションの中で、同時打鍵の組み合わせによって出力を変えたい場合、<キー名> というタグを用いてサブプレーンを定義できます。
例えば [かなシフト無し] セクションの中に [かなシフト無し] の基本の配列を記述した後、<k> という行を書き、その下に配列を書くと「ベース面のキー」+「kキー」を同時打鍵したときの出力を定義できます。

3.3. キーの定義方法・構文表現

カンマ区切りの各セルには、以下のルールで出力したい文字やキーを記述します。

① コーテーション囲みなし(裸の文字列)

もっとも基本的な記述方法です。文字やキー名、修飾キーなどを組み合わせて書くことができます。

  • 単一の文字(かな/英数字): , a, 1 など。指定した文字を出力するための適切なキー情報に変換されます。
  • 修飾キーの付与: 特定の文字を前置することで、修飾キーを同時押しした状態を表現できます。
    • S (Shift), C (Ctrl), A (Alt), W (Windows)
    • (例: S左 → Shift + 左矢印キー 、 C1 → Ctrl + 1)
  • 機能キー・特殊キーの指定: Enter, Space, Tab, BS, Esc, Home, End, PageUp, PageDown, Up, Down, Left, Right などのキー名を指定できます。
    • 特殊な定義として 機1機12 は F1 ~ F12 キーを意味します。
    • V41 のように V + 16進数を記述すると、対応する仮想キーコード(VK)として直接送信されます。
  • 無効なセル: または xx と記述すると、そのセルには何も出力もパススルーも割り当てられません。

② ダブルコーテーション囲み "文字列"

出力したい文字列を "(ダブルコーテーション)で囲みます。
(例: "こんにちは", "、", "Shift"
この形式を使用すると、桔梗はシステムのIME状態を一時的に制御し、クリップボードや直接文字列入力APIなどを用いて記述した文字列そのものを確実に出力します(DirectString)。
記号や顔文字、一連の長い文字列を1キーで出力したい場合や、配列モードに左右されずに常に固定の文字を出力したい場合に最適です。

③ シングルコーテーション囲み '文字列'

内部的には文字列を個別のキーシーケンス(連続したキーストローク)として展開し、順番にキー入力を行ったものとして処理します。
(例: 'ni' と記述すると n を打鍵した後に i を打鍵する挙動になります)

3.4. 設定例

以下は配列定義ファイル(一部)の記述例です。

[英数シフト無し]
1,2,3,4,5,6,7,8,9,0,-,^,¥,後
q,w,e,r,t,y,u,i,o,p,@,[
a,s,d,f,g,h,j,k,l,;,:,]
z,x,c,v,b,n,m,,,.,/,¥

[英数左親指シフト]
!,”,#,$,%,&,’,(,),'',=,~,|,後
Q,W,E,R,T,Y,U,I,O,P,‘,{
A,S,D,F,G,H,J,K,L,+,*,}
Z,X,C,V,B,N,M,<,>,?,_

[ローマ字シフト無し]
1,2,3,4,5,6,7,8,9,0,-,^,],後
"",き,て,し,下,上,後,る,す,へ,"",[
ろ,け,と,か,っ,く,あ,い,う,-,"",]
ほ,ひ,は,こ,そ,た,な,ん,ら,れ,¥

<j>
;2キー同時打鍵
無,無,無,無,無,無,無,無,無,無,無,無,無,無
無,ぎ,で,じ,無,無,無,無,無,無,無,無
ぜ,げ,ど,が,ぢ,無,無,無,無,無,無,無
ぼ,び,ば,ご,ぞ,無,無,無,無,無,無

<j><r>
;3キー同時打鍵
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,無,無,じょ,じぇ,じゅ,無,無
無,無,無,無,無,じゃ,無,無,無,無,無,無
無,無,無,無,無,無,無,無,無,無,無

<d><f>
;特殊文字系サンプル
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,家,S終後,変,消,S逃S逃S逃,無,無
無,無,無,無,無,入終,上,S上,S上S上S上S上S上S上S上,機7,無,無
無,無,無,無,無,終,下,S下,S下S下S下S下S下S下S下,機6,無

<j><k>
;特殊文字系サンプル
無,無,無,無,無,無,無,無,無,無,無,無,無
C終,"/",無,Cs,/,無,無,無,無,無,無,無
"……","『","?","「","(",無,無,無,無,無,無,無
"――","』","!","」",")",無,無,無,無,無,無

[ローマ字左親指シフト]
;センターシフト・JIS配列記号用
!,”,#,$,%,&,’,(,),"",=,~,|,後
"",め,り,ね,S下,S上,さ,よ,え,ゆ,`,}
せ,め,に,ま,ち,や,の,も,つ,ふ,*,{
ほ,ひ,を,,,ぬ,お,.入,む,わ,れ,_
タイトルとURLをコピーしました