AHK:: US配列のままJISキーボードを使う
でも時々,新規/手持ちのJISキーボードをつなげたくなります.
◎大本のUS配列は変更したくない ← ()とか慣れているので
◎USでのAHKキーマップも変更しない前提.その上で,
◎おいらはかな入力なのでJIS配列にしかない「ろ」とか「¥」キーは使いたい
◎JIS配列でのAutoHotKeyで「無変換」を活用しているので,それは追加したい
※いつの間にかUSキー使いになってしまっていたのだ~
2022/12/1:reviseした.ついでにちゃんと記録しよう
【準備】
◎鍵盤:使う鍵盤はUS鍵盤またはJIS鍵盤
Windowsの設定で,鍵盤の種類を「US」にしておく.
◎キー変換: AHKでは扱いづらいものはChgkeyで変換しておく.
Esc ←→ 半角全角:USキーの場合は「`~」
Caps --> LCtrl:CapsキーはトグルなのでAHKでは扱えない
※Capsは日本ではほぼ不要なので割り当てはなし
LCtrlにF13=0x0064 :大活躍するのでぜひ
※JIS鍵盤では無変換キーを活用する
RCtrlにF14=0x0065 → Teams マイクon/off用途
↑↑必要ないかも.他に使わないから直接割当も可
RWinにF15=0x0066 → 「ろ」と「ー」(REALFORCE等)
AppKeyにF15=0x0066 → 「ろ」と「ー」(NiZ PLUM等)
↑↑App,RWinがない鍵盤もある.どちらでもいいように設定.
※ThinkPad Keyboardにはどちらもない
右AltにF16=0x0067 → Teams Editor on/off用途
↑↑必要ないかも.他に使わないから直接割当も可
◎IME設定:Google日本語入力では次のように定義
Ctrl + j → IME On/Off
Shift + F4 → IME On/Off
Ctrl + F12 → 辞書登録
Shift + Ctrl + F12 → 辞書ツール
これらはAHKのCtrl+j → IME on/offが効かないアプリへの対策
【割当方針】
◎US配列対策
「ろ」問題:RWin(F15)を「ろ」「ー」
Rwin/AppsKey --> `/~ ; かなの「ろ」を割付
本来 `のシフトは~だが,どちらもかな入力では「ろ」
シフト「ろ」が空はもったいないので「ー」を充てる
変換はShift+Jと,LCtrl(F13)+Jで行う
◎JIS配列への対応
ahkファイルの最後の方参照.
無変換キー(sc07B)をいろいろ活用
→ LCtrl-> F13 はあまり活躍しなくなる
MuHenkan = sc07B -> いろいろ活用
Henkan = sc079 -> IME ON/OFF(Ctrl+Space)
Kana = sc070 -> Teams Editor ON/OFF
JIS鍵盤「ろ」 = sc073 -> `~(ろと~)
JIS鍵盤「\」 = sc07D -> \| (むと|)
※元の"む"(US keyでは"\"キー)も"む"のまま
■起動用vbs (ver 2022.12.1)
ahkファイルは作業環境なので,ログインしたら自動起動させたい.
が,shell:startup にahkを登録するとうまく稼働しないことが.
なので,vbsで起動スクリプトを組んで,startupに登録.( batファイルでも構わない )
vbsのメリットは,"vbhide"オプションで,黒ウィンドウが開かずに実行してくれること.
▲▲の中身が▼▼
code:USKana3onJIS.vbs
Set ws = CreateObject("Wscript.Shell")
Set fs = CreateObject("Scripting.FileSystemObject")
Dim ahkbin
Dim ahkfile
ahkbin = "C:\local\bin\ut.sys\AutoHotkey\AutoHotkey.exe"
ahkfile = fs.getBaseName(WScript.ScriptName) &".ahk"
ws.run "cmd /c " & ahkbin &" "& ahkfile, vbhide
ahkファイルと同じファイル名(拡張子以外)にすれば,どんなファイル名でも実行してくれる.
ahkbin変数は適宜環境に合わせてくれ.
■ahkファイル (ver 2022.12.1)
ファイルとしてもアップしておく.
▲▲の中身が▼▼
code:USKanaonJIS.ahk
;;;;; for Kana input on US keybord to input kana "Ro"
;; for REALFORCE and Niz Plum 87
;; ChangeKeyにてキー変更
;; Esc ←→ 半角全角:USキーの場合は「`~」
;; LCtrlにF13=0x0064 無変換キー代用
;; ↑↑大活躍するのでぜひ
;; RCtrlにF14=0x0065 → Teams マイクon/off用途
;; ↑↑必要ないかも.他に使わないから直接割当も可
;; RWinにF15=0x0066 → 「ろ」と「ー」(REALFORCE等)
;; AppKeyにF15=0x0066 → 「ろ」と「ー」(NiZ PLUM等)
;; ↑↑App,RWinがない鍵盤もある.どちらでもいいように設定.
;; ※ThinkPad Keyboardにはどちらもない
;; 右AltにF16=0x0067 → Teams Editor on/off用途
;; ↑↑必要ないかも.他に使わないから直接割当も可
;; ※IME設定でShift+F4,Ctrl+F16,Ctrl+Jを定義しよう
;; ← Ctrl+jで変換が効かないアプリの対応
;;
;; JIS鍵盤でUS配列入力も兼ねる設定を追加
;; OSではUS鍵盤を選択が前提
;; ↓↓ 最下方に追記
;; Key配列の整理
;; Rwin/AppsKey --> `/~ ; かなの「ろ」を割付
;; 本来 `のシフトは~だが,どちらもかな入力では「ろ」.
;; これはもったいないのでシフト「ろ」に「ー」を充てた.
RWin::Send,{Blind}{} ;; ろ
+RWin::Send,{Blind}{_} ;; ー
sc15D::Send,{Blind}{} ;; ろ
+sc15D::Send,{Blind}{_} ;; ー
F15::Send,{Blind}{} ;; ろ
+F15::Send,{Blind}{_} ;; ー
;;; スクショ
PrintScreen::Send,{Blind}+#{s}
F13 & PrintScreen::Send,{Blind}+#{s}
;;; Teamsの拡張エディタOn/Off
RAlt::Send,{Blind}^+{x}
F16::Send,{Blind}^+{x}
;;; TeamsのマイクON/OFF(Ctrl+Shift+M)
Pause::Send,{Blind}^+{m}
F14::Send,{Blind}^+{m}
RCtrl::Send,^+{m}
;; IME On/off
^j::Send,{Blind}^{Space}
F13 & j::Send,{Blind}^{Space}
;; IMEでShift+F4=IME On/Offを割当してたら
;; ^j::Send,{Blind}+{F4}
;; F13 & j::Send,{Blind}+{F4}
;; Close Current Window
!q::Send,{Blind}!{F4}
F13 & q::Send,{Blind}!{F4}
;; cursor ope (vi+emacs like)
;F13 & k::Send,{Blind}{Up}
;F13 & j::Send,{Blind}{Down}
F13 & h::Send,{Blind}{Home}
F13 & l::Send,{Blind}{End}
;;;; emacs like
F13 & p::Send,{Blind}{Pgup}
F13 & n::Send,{Blind}{Pgdn}
;;;; LCtrlに近いから
;F13 & a::Send,{Blind}{Home}
;F13 & z::Send,{Blind}{End}
;; Other binds
F13 & W::Send,{Blind}^{w}
F13 & F::Send,{Blind}{F2} ;;for Excel
F13 & \::Send,{Blind}^{F12} ;; for漢字登録
F13 & E::Run, C:\bin\ut.text\vim\gvim.exe
F13 & Left::Send,{Blind}{Browser_Back}
F13 & Right::Send,{Blind}{Browser_Forward}
;; AutoHotKeyリロード
+!r::Reload
F13 & r::Reload
;; Mouse Operation
;; +!Enter::MouseClick,Left
;;; Macro for Mouse
;F13 & s::
; MouseClick,Left
; Sleep, 1500
; Send,{Enter}
; Sleep, 1000
; Send,^{w}
; Return
;F13 & f::
; MouseClick,Right
; Sleep, 1000
; Send,{t}
; Sleep, 1000
; MouseClick,WheelDown,,,7,100,,
; Return
;
;;;;; Launcher
;;
;; chrome a91021@mail
F13 & 1::Run,"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 3"
;;
;; Scrapbox@a91021
;;
;; chrome HumptyWorkShop
F13 & 3::Run,"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 1"
;;
;; chrome Gekidan.root
F13 & 4::Run, "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 4"
;;
;; google keep
;;
;; chrome Uryaryadumpty
F13 & 6::Run, "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Default"
;;
;; chrome fujii.mailman
F13 & 7::Run, "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 8"
;;
;; chrome dumpty.dai
F13 & 8::Run,"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 2"
;;
;; Scrapbox@uryaryadumpty
;;
;; chrome secret win
F13 & 0::Run, "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Default" --incognito
;;
;; Chrome fb messenger
;;
;; Teams@mail
F13 & t::Run,"C:\Users\dumpty\AppData\Local\Microsoft\Teams\Update.exe" --processStart "Teams.exe"
;;; 左Ctrlキー二連打 = DF起動
F13::
KeyWait, F13
if (A_PriorHotkey == A_ThisHotkey) && (400 > A_TimeSincePriorHotkey)
Run, C:\bin\ut.file\df198\DF.EXE, C:\Users\fujii\Documents
WinActivate
return
;;; US on JIS ;;;;;
;;; 無変換キー二連打 = DF起動
sc07B::
KeyWait, sc07B
if (A_PriorHotkey == A_ThisHotkey) && (400 > A_TimeSincePriorHotkey)
Run, C:\bin\ut.file\df198\DF.EXE, C:\Users\fujii\Documents
WinActivate
;;; Run, C:\Program Files (x86)/VDesk/vdesk.exe on:0 run:C:\bin\ut.file\df198\DF.EXE, C:\Users\fujii\Documents
;;; WinActivate, ahk_exe DF.EXE
;; Send,+#{Left}
return
;;;;;;;;;;;;;;;;;
;;; US on JIS ;;;
;;;;;;;;;;;;;;;;;
;; 無変換キー(sc07B)をいろいろ活用
;; → JIS鍵盤を使うと,LCtrl-> F13 はあまり活躍しなくなる
;; MuHenkan = sc07B -> いろいろ活用
;; Henkan = sc079 -> 変換キー(IME On/Off)
;; Kana = sc070 -> Teams Editor ON/OFF
;; JISろ = sc073 -> `~(ろ)
;; JIS\ = sc07D -> \| (む)
;; ※元の"む"(US keyでは"\"キー)も"む"のまま
sc073::` ;; ろ
+sc073::~ ;; ろ → 全角英字変換後「~」
sc07D::\ ;; む
+sc07D::| ;; む → 全角英字変換後「|」
sc070::Send,{Blind}^+{x}
sc079::Send,{Blind}^{Space}
;;;;その他:無変換に上記F13のキーバインドをコピー
;;;; ※JIS鍵盤は親指に近い無変換キーを活用できるのがメリット
sc07B & PrintScreen::Send,{Blind}+#{s}
sc07B & q::Send,!{F4}
sc07B & k::Send,{Blind}{Up}
sc07B & j::Send,{Blind}{Down}
sc07B & h::Send,{Blind}{Home}
sc07B & l::Send,{Blind}{End}
sc07B & p::Send,{Blind}{Pgup}
sc07B & n::Send,{Blind}{Pgdn}
sc07B & r::Reload
sc07B & W::Send,{Blind}^{w}
sc07B & F::Send,{Blind}{F2}
sc07B & \::Send,{Blind}^{F12}
sc07B & E::Run, C:\bin\ut.text\vim\gvim.exe
sc07B & Left::Send,{Blind}{Browser_Back}
sc07B & Right::Send,{Blind}{Browser_Forward}
以上.