右クリック+ホイールでタブ切替

チルト非対応トラボに買い換えてブラウザのタブ切替が出来なくなった。
→代わりに右クリック+ホイール上下で切り替えたい。
→Vivaldiのマウスジェスチャや拡張機能はホイール操作を指定出来ない。
→MouseGestureL.ahkはソフト固有のジェスチャと共存出来ない。
→AHKで試みる。

単なるRButton & WheelUp::Send, ^{PgUp}等では色々と問題があったが、フォーラム内のコードで解決。

RButton::
	CoordMode, Mouse, Screen
	MouseGetPos, mX0, mY0
	Loop
	{
		Sleep, 20
		If not GetKeyState("RButton", "P") or Wheel
			Break
		MouseGetPos, mX, mY
		dX:=Abs(mX-mX0), dY:=Abs(mY-mY0)
		If (dX>3 or dY>3)
		{
			Move=1
			Click Down Right
			KeyWait, RButton
			Click Up Right
			Break
		}
	}
Return

RButton Up::
If not (Wheel or Move)
	Click Right
Else
	Move:=0, Wheel:=0
Return

WheelDown::
	If GetKeyState("RButton", "P")
	{
		Wheel=1
		Send, ^{PgDn}
	}
	Else
		Click WheelDown
Return

WheelUp::
	If GetKeyState("RButton", "P")
	{
		Wheel=1
		Send, ^{PgUp}
	}
	Else
		Click WheelUp
Return


ブラウザのマウスジェスチャも効き、タブの連続切替も出来る。

分割キーボードでSandSとEandS

分割キーボードによって日本語入力に無用なクソデカスペースキーから解放され、押しやすく丁度よいサイズのスペースキーを2つ得た。
通常同じキー入力扱いだが、ハードウェアマクロ機能があるので右をEnterに割当。
かな打ちの小指酷使を解消すべく、AutoHotkeyでSandS(Space&Shift)とEandS(Enter&Shift)を実装してみた。

EandSは検索しても出てこない。誰もやってないのだろうか

左Space単独
+他キー
Space (未確定時は変換)
Shift
右Space単独
+他キー
Enter (未確定時は確定)
Shift

左親指で変換、右親指で確定は日本語入力に最適。

AHK

試験段階。使いながら修正中。

;SandS
Space::
	SendInput {LShift Down}
	If SpDown = 1
		Return
	SpDown := 1
	SpKey := 0
	Input, SpKey, L1 V,{LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}{Enter}
	SpKey := 1
Return

Space Up::
	SendInput {LShift Up}
	SpDown := 0
	If SpKey = 0
		Send {Space}
Return

;EandS
Enter::
	SendInput {RShift Down}
	If EnDown = 1
		Return
	EnDown := 1
	EnKey := 0
	Input, EnKey, L1 V,{LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}{Enter}
	EnKey := 1
Return

Enter Up::
	SendInput {RShift Up}
	EnDown := 0
	If EnKey = 0
		Send {Enter}
	If GetKeyState("Space","P")
		SpKey := 1
Return

;長押し
>+Space:: SendInput {Space}
>+Enter:: SendInput {Enter}
続きを読む 分割キーボードでSandSとEandS