元々がIDのみの表示で番号の始まっているスレを途中から別の表示で乗っ取るのは「背乗り」行為に当たるので、IDのみの表示で進行とします
■配布元
https://autohotkey.com/download/
■前スレ
AutoHotkey スレッド part29
https://egg.5ch.net/test/read.cgi/software/1620768466/
■日本語解説等
AutoHotkey Wiki
http://ahkwiki.net
AutoHotkeyを流行らせるページ(ミラー)
http://hdd.s300.xrea.com/ahk/
AutoHotkeyJp(過去ログdatあり)
https://sites.google.com/site/autohotkeyjp/
Autohotkey日本語ヘルプ(chmファイル)
https://www6.atwiki.jp/eamat/
■スクリプト投稿
Autohotkey専用うpろだ
https://ux.getuploader.com/autohotkeyl/
簡易スクリプト掲示板
https://pastebin.com/
■その他のテンプレ(5chのURL規制が厳しいのでpastebinに退避しました)
https://pastebin.com/raw/bWipuNmt
AutoHotkey スレッド part30 IDのみ
■ このスレッドは過去ログ倉庫に格納されています
2022/02/08(火) 18:38:19.33ID:UTRGyCNl0
2023/08/21(月) 06:52:36.46ID:ynMBgfwj0
おお、MS純正デバイスドライバなんだ
Capsはモディファイアに変更してるけど、定番のChangeKeyでレジストリを変えてる
押しっぱなし現象はみんなフック同士の干渉が原因だと思っていて、根本的には避けられない
デバイスドライバ版ahkみたいなのがシェアウェアで出たら買うのに
現状そういうのはのどか一択で、書きやすさはahk v2が勝ってる
Capsはモディファイアに変更してるけど、定番のChangeKeyでレジストリを変えてる
押しっぱなし現象はみんなフック同士の干渉が原因だと思っていて、根本的には避けられない
デバイスドライバ版ahkみたいなのがシェアウェアで出たら買うのに
現状そういうのはのどか一択で、書きやすさはahk v2が勝ってる
2023/08/26(土) 13:40:30.41ID:e6Z469D70
Sticky Keys対策でShiftやCtrlを押し終わるたびにShiftを5回空打ちさせてる
2023/08/29(火) 15:17:03.33ID:Jbveauwv0
右下ろのキーを押した時_にしたくて
¥::
send,+¥
return
としたのですが変わらず¥で出ます
¥::+¥
としても変わらず
簡単な事だと思うのですが、何故出来ないのかヒント頂けないでしょうか?
よろしくお願いします
¥::
send,+¥
return
としたのですが変わらず¥で出ます
¥::+¥
としても変わらず
簡単な事だと思うのですが、何故出来ないのかヒント頂けないでしょうか?
よろしくお願いします
2023/08/29(火) 15:18:53.87ID:Jbveauwv0
あ、V1です
401399
2023/08/29(火) 15:31:39.18ID:Jbveauwv0 すみません、検索で例を色々見てたら丁度見付かりました
vkE2::_
で出来る様になりました
スレ汚し失礼しました
vkE2::_
で出来る様になりました
スレ汚し失礼しました
2023/08/29(火) 15:32:11.68ID:X8K0rgTu0
\は右上のキーだからろの方はキーコードで指定しないとダメ
sc073::_
sc073::_
2023/08/30(水) 17:19:47.77ID:Ryl/SOdu0
Release v2.0.6 · AutoHotkey/AutoHotkey
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.6
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.6
2023/08/30(水) 18:11:41.37ID:oxpZC/QU0
v2.0.6
2023/08/31(木) 22:40:51.14ID:vlAyug6p0
yキーを押してもSend, abcが送信されません。
何が駄目なんでしょうか。
Send, abcの処理はsub.ahk側でしたいです。
;main.ahk------------------
global test
y::
Sleep, 1000
test := "yes"
Sleep, 1000
Return
;sub.ahk------------------
#Persistent
#Include main.ahk
SetTimer, mitukeru, 100
mitukeru:
if (test = "yes") {
Send, abc
}
Return
何が駄目なんでしょうか。
Send, abcの処理はsub.ahk側でしたいです。
;main.ahk------------------
global test
y::
Sleep, 1000
test := "yes"
Sleep, 1000
Return
;sub.ahk------------------
#Persistent
#Include main.ahk
SetTimer, mitukeru, 100
mitukeru:
if (test = "yes") {
Send, abc
}
Return
2023/09/01(金) 02:23:36.87ID:6AcEfkHF0
y::
を見てみなよ
処理内容は、ただ代入しているだけだ
次にSetTimerでサブルーチンに飛ばさないと
ただこのタイマーいつ終わるの?
終了処理が何もないようだけど
を見てみなよ
処理内容は、ただ代入しているだけだ
次にSetTimerでサブルーチンに飛ばさないと
ただこのタイマーいつ終わるの?
終了処理が何もないようだけど
2023/09/01(金) 07:19:25.96ID:qhzzshke0
会社のノートPCにmenuキーが無いのが不便すぎる
フリーソフトとか禁止なので、regeditだけで解決したった
フリーソフトとか禁止なので、regeditだけで解決したった
2023/09/01(金) 07:37:42.70ID:dbcMt4Cv0
>>408
スレ違い
スレ違い
2023/09/01(金) 12:03:41.12ID:fxBmgcCa0
2023/09/01(金) 12:08:50.00ID:fxBmgcCa0
すみません。まだ出来てないかもです。
がんばってみます。
がんばってみます。
2023/09/01(金) 12:12:26.82ID:qhzzshke0
っていうか、複数のahk間でプロセス間通信しようとしてるんでしょ
そんなの無理だよ
そんなの無理だよ
2023/09/01(金) 12:33:22.63ID:YJ2o2ktm0
幾つか突っ込みどころあるが、とりあえず #Include行の位置が悪いな
まあ、#Include行の位置を直しただけじゃまともに動かん…と言うか変数「test」をクリアする行を加えないと暴走するよ
まあ、#Include行の位置を直しただけじゃまともに動かん…と言うか変数「test」をクリアする行を加えないと暴走するよ
2023/09/01(金) 12:39:44.02ID:fxBmgcCa0
2023/09/01(金) 12:43:11.43ID:fxBmgcCa0
2023/09/01(金) 12:44:19.26ID:6AcEfkHF0
sub.ahkってのをライブラリとして使ってるんじゃないの?
includeが逆でなんだかなあって感じだけど
本来は関数化した方が遥かに融通性が高いんだけど
まあ学習の順序があるから
includeが逆でなんだかなあって感じだけど
本来は関数化した方が遥かに融通性が高いんだけど
まあ学習の順序があるから
2023/09/01(金) 12:57:45.45ID:qhzzshke0
includeするならプロセスは1つだけど
両方動かすんじゃないの?
両方動かすんじゃないの?
2023/09/01(金) 19:29:28.33ID:aCFUmNnL0
v2で
a := 1
b := &a
%b% := 2
と同じように
tmp := {a:1}
b := &tmp.a
%b% := 2
でbにtmp.aのVarRefがほしいんだけど&tmp.aでエラーが出ちゃう
これどうやったらいいの?
a := 1
b := &a
%b% := 2
と同じように
tmp := {a:1}
b := &tmp.a
%b% := 2
でbにtmp.aのVarRefがほしいんだけど&tmp.aでエラーが出ちゃう
これどうやったらいいの?
2023/09/01(金) 20:46:26.25ID:0/jYgXFo0
>>418
直接にはできない。
関数 - 定義と使用法|AutoHotkey v2
https://ahkscript.github.io/ja/docs/v2/Functions.htm#ByRef
直接にはできない。
関数 - 定義と使用法|AutoHotkey v2
https://ahkscript.github.io/ja/docs/v2/Functions.htm#ByRef
2023/09/01(金) 21:17:49.17ID:aCFUmNnL0
>>419
仕様でできなかったんですね
オブジェクトの方を持ち歩くようにします
ありがとうございました
> 既知の制限事項:
> オブジェクトのプロパティ(foo.barなど)やA_Clipboardなどの 組み込み変数に対してVarRefを構成することはできないので、これらをByRefで渡すことはできない。
仕様でできなかったんですね
オブジェクトの方を持ち歩くようにします
ありがとうございました
> 既知の制限事項:
> オブジェクトのプロパティ(foo.barなど)やA_Clipboardなどの 組み込み変数に対してVarRefを構成することはできないので、これらをByRefで渡すことはできない。
2023/09/02(土) 17:26:28.26ID:xDVNYmLx0
何か V2.0.4/2.0.6 でエンバグしてるんやって。
スクリプトが動かんようになったって人はアップデートしてみるのも手。
Release v2.0.7 · AutoHotkey/AutoHotkey
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.7
スクリプトが動かんようになったって人はアップデートしてみるのも手。
Release v2.0.7 · AutoHotkey/AutoHotkey
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.7
2023/09/02(土) 18:33:36.19ID:X8oxdeT80
v2.0.7
2023/09/03(日) 14:39:01.92ID:dL6VhtA+0
ヒアドキュメントの仕様が変わってわけわからん
ver.1の頃は
MsgBox, % "
(
さて、
あなたのバージョンは 「" A_AhkVersion "」ですわね。
オホホ
)"
でよかったのがver.2になってから
MsgBox("
(
さて、
あなたのバージョンは「
)"A_AhkVersion "
(
」ですわね。
オホホ
)")
とかしないといけなくなって可読性がー
ver.1の頃は
MsgBox, % "
(
さて、
あなたのバージョンは 「" A_AhkVersion "」ですわね。
オホホ
)"
でよかったのがver.2になってから
MsgBox("
(
さて、
あなたのバージョンは「
)"A_AhkVersion "
(
」ですわね。
オホホ
)")
とかしないといけなくなって可読性がー
2023/09/03(日) 15:01:38.43ID:8zusJ6RA0
理解しているのにわけわからん
とは、どういうことなのか?
長文の文字列は変数に格納するのが通例なんで
関数化されたmsgboxに直接使わなければいいんじゃね
とは、どういうことなのか?
長文の文字列は変数に格納するのが通例なんで
関数化されたmsgboxに直接使わなければいいんじゃね
2023/09/03(日) 15:20:17.21ID:0KBNlEKj0
v2 仕様やとこんな感じやろ(場合よって「"」の位置に気を使う必要がある)。
MsgBox "
(
Here Document,
HERE!!!
)"
MsgBox "
(
Here Document,
HERE!!!
)"
2023/09/03(日) 15:31:18.57ID:Xi/Z1aW+0
改行が意味持ってたり、括弧無しでもokだったり、未だに古臭い
v3に期待
v3に期待
2023/09/03(日) 15:39:07.37ID:0KBNlEKj0
変数絡みやとちょっと面倒くさいことになるかな?
%VarRef% なパターンやと埋め込めるみたいやけど。
MsgBox "
(
AutoHotkey version is`s
)" A_AhkVersion "
(
.
Here Document,
HERE!!!
)"
%VarRef% なパターンやと埋め込めるみたいやけど。
MsgBox "
(
AutoHotkey version is`s
)" A_AhkVersion "
(
.
Here Document,
HERE!!!
)"
2023/09/03(日) 16:01:47.82ID:0KBNlEKj0
ああ、v2 やと %VarRef% も埋め込まれへんみたい。
2023/09/03(日) 16:48:50.59ID:dL6VhtA+0
いやMsgBoxとの取り合わせが悪いとかじゃなくて
式を埋め込めなくなってるのが個人的に致命傷
%VarRef%もだめだしさ
あとオプション周りの挙動がだいぶ変わったように見えて混乱中
式を埋め込めなくなってるのが個人的に致命傷
%VarRef%もだめだしさ
あとオプション周りの挙動がだいぶ変わったように見えて混乱中
2023/09/03(日) 17:16:51.07ID:dL6VhtA+0
ヒアドキュメントに式を埋め込めて、実際に表示されるメッセージを想像しやすいのがよかったのに…
できるっぽい説明あったけど、実際の書き方がまるで理解できなかったし、いま読み返すと全然別の説明っぽい
> If ( or ) appears in the options of a potential continuation section (other than as part of the Join option), the overall line is not interpreted as the start of a continuation section. In other words, lines like (x.y)() and (x=y) && z() are interpreted as expressions. A multi-line expression can also begin with an open-parenthesis at the start of a line, provided that there is at least one other ( or ) on the first physical line. For example, the entire expression could be enclosed with (( ... )).
> ( or ): If an opening or closing parenthesis appears to the right of the initial opening parenthesis (except as a parameter of the Join option), the line is reinterpreted as an expression instead of the beginning of a continuation section. This enables expressions like (x.y)[z]() to be used at the start of a line, and also allows multi-line expressions to start with a line like (( or (MyFunc(.
そしてこういうのに限ってサンプルがない。詰んだ。寝る
できるっぽい説明あったけど、実際の書き方がまるで理解できなかったし、いま読み返すと全然別の説明っぽい
> If ( or ) appears in the options of a potential continuation section (other than as part of the Join option), the overall line is not interpreted as the start of a continuation section. In other words, lines like (x.y)() and (x=y) && z() are interpreted as expressions. A multi-line expression can also begin with an open-parenthesis at the start of a line, provided that there is at least one other ( or ) on the first physical line. For example, the entire expression could be enclosed with (( ... )).
> ( or ): If an opening or closing parenthesis appears to the right of the initial opening parenthesis (except as a parameter of the Join option), the line is reinterpreted as an expression instead of the beginning of a continuation section. This enables expressions like (x.y)[z]() to be used at the start of a line, and also allows multi-line expressions to start with a line like (( or (MyFunc(.
そしてこういうのに限ってサンプルがない。詰んだ。寝る
2023/09/03(日) 18:24:58.98ID:lC0PTvot0
>>423
Format関数使えば多少見やすくなるかも
MsgBox(Format("
(
さて、
あなたのバージョンは「{1}」ですわね。
オホホ、{2}年ですわ。
)", A_AhkVersion, A_YYYY))
Format関数使えば多少見やすくなるかも
MsgBox(Format("
(
さて、
あなたのバージョンは「{1}」ですわね。
オホホ、{2}年ですわ。
)", A_AhkVersion, A_YYYY))
2023/09/03(日) 18:46:21.42ID:Xi/Z1aW+0
pythonでf文字列の実装が妙に遅かったのと同様に、
なんか埋め込むのを嫌う風習があるんだよな
便利なのはperlとかでとっくに判ってたのに
なんか埋め込むのを嫌う風習があるんだよな
便利なのはperlとかでとっくに判ってたのに
2023/09/03(日) 21:59:50.39ID:PW2pKi2Q0
2系の押しっぱ病はいつになったら治るんだ…
2023/09/03(日) 22:09:25.95ID:0KBNlEKj0
2023/09/03(日) 22:14:39.29ID:Xi/Z1aW+0
なんでもないビュアーがすごい行儀悪くキーをフックしてるみたいで、
それを起動した状態で他のソフトを使うと高確率で押しっぱなしになる
開いたまま他のことをしない、しか回避方法が無い
それを起動した状態で他のソフトを使うと高確率で押しっぱなしになる
開いたまま他のことをしない、しか回避方法が無い
2023/09/03(日) 22:38:34.74ID:8zusJ6RA0
そういうアプリはどんどん名前出していこうぜ
情報共有してこその掲示板なわけだし
情報共有してこその掲示板なわけだし
2023/09/04(月) 12:28:15.52ID:K09FILDQ0
epubビュアーのKinoppyだけどね
ahkからKinoppyを何か制御するでもなく、ただいるだけでいろいろおかしくなる
ahkからKinoppyを何か制御するでもなく、ただいるだけでいろいろおかしくなる
2023/09/04(月) 21:28:18.16ID:dQWiiGqe0
>>437 解決の参考にならんかもだが、Kinoppyをインストールして俺環で常駐しているMyScriptに下記のホットキーを追加し
メインアプリとビューアー起動した状態で他のアプリ色々起動したり、しばらく別のことやってたけど特に問題は発生しなかった
問題になりそうな点をあげるとclass名が独特でGUID部分が起動毎に変わるのと
ビューアーの方はExplorer等と同様にahk_exeではhwndが取得できなかったくらい
なのでこれらを含めたウィンドウ指定を直接じゃなくてもGroupやExcludeTitleなんかで行っているとおかしくなる
そうでないなら残念ながらおま環の可能性が高い
; 俺環での関係ありそうな設定
SetTitleMatchMode("RegEx")
InstallKeybdHook()
InstallMouseHook()
A_MenuMaskKey := "vkFF"
return
; メインアプリ
; Kinoppy for Windows
; ahk_class HwndWrapper[Kinoppy.exe;;feff14f8-8819-45a6-9cc5-5edbb2951528]
; ahk_exe Kinoppy.exe
#HotIf WinActive("Kinoppy for Windows ahk_class HwndWrapper\[Kinoppy.exe;; ahk_exe Kinoppy.exe")
XButton1:: MsgBox(WinGetTitle("A"))
LCtrl:: MsgBox(WinGetTitle("A"))
#HotIf
; ビューアー 本は最初から付いてた奴
; [1/160] scripta 18号(2011年冬号、紀伊國屋書店
; ahk_class HwndWrapper[Viewer20.exe;;5f512ab6-52a1-4bc8-8445-abdb7c67f500]
; ahk_exe Viewer20.exe
#HotIf WinActive("ahk_class HwndWrapper\[Viewer20.exe;;")
XButton1:: MsgBox(WinGetTitle("A"))
LCtrl:: MsgBox(WinGetTitle("A"))
#HotIf
メインアプリとビューアー起動した状態で他のアプリ色々起動したり、しばらく別のことやってたけど特に問題は発生しなかった
問題になりそうな点をあげるとclass名が独特でGUID部分が起動毎に変わるのと
ビューアーの方はExplorer等と同様にahk_exeではhwndが取得できなかったくらい
なのでこれらを含めたウィンドウ指定を直接じゃなくてもGroupやExcludeTitleなんかで行っているとおかしくなる
そうでないなら残念ながらおま環の可能性が高い
; 俺環での関係ありそうな設定
SetTitleMatchMode("RegEx")
InstallKeybdHook()
InstallMouseHook()
A_MenuMaskKey := "vkFF"
return
; メインアプリ
; Kinoppy for Windows
; ahk_class HwndWrapper[Kinoppy.exe;;feff14f8-8819-45a6-9cc5-5edbb2951528]
; ahk_exe Kinoppy.exe
#HotIf WinActive("Kinoppy for Windows ahk_class HwndWrapper\[Kinoppy.exe;; ahk_exe Kinoppy.exe")
XButton1:: MsgBox(WinGetTitle("A"))
LCtrl:: MsgBox(WinGetTitle("A"))
#HotIf
; ビューアー 本は最初から付いてた奴
; [1/160] scripta 18号(2011年冬号、紀伊國屋書店
; ahk_class HwndWrapper[Viewer20.exe;;5f512ab6-52a1-4bc8-8445-abdb7c67f500]
; ahk_exe Viewer20.exe
#HotIf WinActive("ahk_class HwndWrapper\[Viewer20.exe;;")
XButton1:: MsgBox(WinGetTitle("A"))
LCtrl:: MsgBox(WinGetTitle("A"))
#HotIf
2023/09/05(火) 23:11:23.66ID:uAjrKV030
質問なのですが ctrl+マウス左クリック で 左クリック を送りたいのですが
^lbutton::
mouseclick,left, , , , 0
return
と書いても左クリック単発ではなくctrl+左クリックになってしまいます
どのように書けばいいですか?
^lbutton::
mouseclick,left, , , , 0
return
と書いても左クリック単発ではなくctrl+左クリックになってしまいます
どのように書けばいいですか?
2023/09/05(火) 23:27:03.44ID:fMQvsfZE0
Send,{LButton}
2023/09/05(火) 23:29:11.87ID:08fzEwC60
>>439
MouseClick - Syntax & Usage | AutoHotkey
https://www.autohotkey.com/docs/v1/lib/MouseClick.htm
MouseClick - Syntax & Usage | AutoHotkey
https://www.autohotkey.com/docs/v1/lib/MouseClick.htm
2023/09/05(火) 23:50:46.44ID:uAjrKV030
>>440, 441
ありがとうございます
試したところそのスクリプトでだいたいは上手くいくのですが10回に1回ぐらいはctrl+左クリックになります
具体的にはブラウザのリンクをこのスクリプトをオンにしてctrl+左クリックするとだいたいは元のタブで開くのですが
10回に1回くらいは別タブで開いてしまいます(左クリックだと元タブでリンクが開き、ctrl+左クリックだと別タブで開く)。
これを防止するためにも ^lbutton:: の開始から終了までは強制的にctrlを押していない状態に出来ないでしょうか?
ありがとうございます
試したところそのスクリプトでだいたいは上手くいくのですが10回に1回ぐらいはctrl+左クリックになります
具体的にはブラウザのリンクをこのスクリプトをオンにしてctrl+左クリックするとだいたいは元のタブで開くのですが
10回に1回くらいは別タブで開いてしまいます(左クリックだと元タブでリンクが開き、ctrl+左クリックだと別タブで開く)。
これを防止するためにも ^lbutton:: の開始から終了までは強制的にctrlを押していない状態に出来ないでしょうか?
2023/09/05(火) 23:57:06.56ID:U/8+P8mP0
クリックする前に
Send {Ctrl Up}
でも書いておけば?
うまくいくかは知らんけど
Send {Ctrl Up}
でも書いておけば?
うまくいくかは知らんけど
2023/09/06(水) 00:04:12.54ID:9rLt8Dwp0
>>443
試したけどだめでした
https://keyboard-test.space/jp/
このサイトでキーの入力状態見てたら Send {Ctrl Up} の瞬間だけ ctrlの入力がオフになっても
次の瞬間またctrlが押された状態になるのでスクリプトが終わるまでずっと {Ctrl Up} の状態を保たないとだめそう
試したけどだめでした
https://keyboard-test.space/jp/
このサイトでキーの入力状態見てたら Send {Ctrl Up} の瞬間だけ ctrlの入力がオフになっても
次の瞬間またctrlが押された状態になるのでスクリプトが終わるまでずっと {Ctrl Up} の状態を保たないとだめそう
2023/09/06(水) 00:11:36.92ID:GGW0aUGl0
すごいサイトだな
ahkにも似たような機能あるけど
ahkにも似たような機能あるけど
2023/09/06(水) 07:15:27.62ID:Yei4EXvP0
Getkeystateってマウスもいけたっけ?
いけるなら物理的に離されてからup打つとか
いけるなら物理的に離されてからup打つとか
2023/09/06(水) 07:53:03.76ID:sYM0CPD00
>>442
Remarks に書いてあることまでちゃんと読んだ?
Remarks
This command uses the sending method set by SendMode.
The Click command is recommended over MouseClick because:
1. It automatically compensates when the left and right mouse buttons are
swapped via the control panel.
2. It is generally easier to use.
To perform a shift-click or control-click, use the Send command before and
after the operation as shown in these examples:
:
The SendPlay mode is able to successfully generate mouse events
in a broader variety of games than the other modes. In addition,
some applications and games may have trouble tracking the mouse
if it moves too quickly. The speed parameter or SetDefaultMouseSpeed
can be used to reduce the speed (in the default SendEvent mode only).
Some applications do not obey a ClickCount higher than 1 for the mouse wheel.
For them, use a Loop such as the following:
:
The BlockInput command can be used to prevent any physical mouse activity by the user from disrupting the simulated mouse events produced by the mouse commands. However, this is generally not needed
for the SendInput/Play modes because they automatically postpone
the user's physical mouse activity until afterward.
There is an automatic delay after every click-down and click-up of
the mouse (except for SendInput mode and for turning the mouse wheel).
Use SetMouseDelay to change the length of the delay.
Remarks に書いてあることまでちゃんと読んだ?
Remarks
This command uses the sending method set by SendMode.
The Click command is recommended over MouseClick because:
1. It automatically compensates when the left and right mouse buttons are
swapped via the control panel.
2. It is generally easier to use.
To perform a shift-click or control-click, use the Send command before and
after the operation as shown in these examples:
:
The SendPlay mode is able to successfully generate mouse events
in a broader variety of games than the other modes. In addition,
some applications and games may have trouble tracking the mouse
if it moves too quickly. The speed parameter or SetDefaultMouseSpeed
can be used to reduce the speed (in the default SendEvent mode only).
Some applications do not obey a ClickCount higher than 1 for the mouse wheel.
For them, use a Loop such as the following:
:
The BlockInput command can be used to prevent any physical mouse activity by the user from disrupting the simulated mouse events produced by the mouse commands. However, this is generally not needed
for the SendInput/Play modes because they automatically postpone
the user's physical mouse activity until afterward.
There is an automatic delay after every click-down and click-up of
the mouse (except for SendInput mode and for turning the mouse wheel).
Use SetMouseDelay to change the length of the delay.
448439
2023/09/06(水) 12:17:42.07ID:9rLt8Dwp0 以下で問題無く動くこと確認しました
^lbutton::
BlockInput, on
send, {click, left}
BlockInput, off
return
しかしBlockInput, onが管理者権限でないと機能しないので使用はためらっています
^lbutton::
BlockInput, on
send, {click, left}
BlockInput, off
return
しかしBlockInput, onが管理者権限でないと機能しないので使用はためらっています
2023/09/06(水) 12:58:50.79ID:ltUQDciW0
>>448
ブラウザ何使ってるか知らんけど、chrome(chromium系)ならchromeのwebストアで「open link same tab」で検索するとやりたい系の拡張出てくるから拡張導入で実現すれば?
ブラウザ何使ってるか知らんけど、chrome(chromium系)ならchromeのwebストアで「open link same tab」で検索するとやりたい系の拡張出てくるから拡張導入で実現すれば?
2023/09/06(水) 13:01:25.15ID:ltUQDciW0
2023/09/06(水) 18:44:01.82ID:Yb6yqz+60
>>448
要はCtrlが物理的に押し下げられている間に発生するキーリピートを止めればいいので下記のような方法でもできるが
これだとKeyNameと同名の既存のホットキーがある場合上書きしてしまうため、既存のホットキーをOnにし直す必要がある
あと >>444 のサイトは物理キーと論理キーの区別がされてないのでこの様なケースではテストして使うには不適切だと思うぞ
^LButton::
Hotkey, LCtrl, disable_key, On
Hotkey, RCtrl, disable_key, On
Send, {LButton}
Hotkey, LCtrl, disable_key, Off
Hotkey, RCtrl, disable_key, Off
return
disable_key:
return
要はCtrlが物理的に押し下げられている間に発生するキーリピートを止めればいいので下記のような方法でもできるが
これだとKeyNameと同名の既存のホットキーがある場合上書きしてしまうため、既存のホットキーをOnにし直す必要がある
あと >>444 のサイトは物理キーと論理キーの区別がされてないのでこの様なケースではテストして使うには不適切だと思うぞ
^LButton::
Hotkey, LCtrl, disable_key, On
Hotkey, RCtrl, disable_key, On
Send, {LButton}
Hotkey, LCtrl, disable_key, Off
Hotkey, RCtrl, disable_key, Off
return
disable_key:
return
2023/09/06(水) 20:22:25.18ID:X26chPwY0
数日パソコンつけっぱにしたら暴走する事ってありますか?
昨日から入力で文字出なかったり重く感じて来たと思ったら今日「っっっっっっっっ」以上の連打状態になったり日本語オンオフが連打状態になったりして、文字入力関係で何かあるとすればこれだけかなって
パソコン再起動で直ったんですがおま環でしょうか?
それか何か記述がおかしくて影響する事とか
ただ今まで問題無くここ数日で追記した事もありません
Win11
V1
昨日から入力で文字出なかったり重く感じて来たと思ったら今日「っっっっっっっっ」以上の連打状態になったり日本語オンオフが連打状態になったりして、文字入力関係で何かあるとすればこれだけかなって
パソコン再起動で直ったんですがおま環でしょうか?
それか何か記述がおかしくて影響する事とか
ただ今まで問題無くここ数日で追記した事もありません
Win11
V1
2023/09/06(水) 20:25:31.25ID:lmw46YqV0
ただのahkあるある
2023/09/06(水) 21:25:42.58ID:uFzGHYTO0
2023/09/06(水) 22:09:08.69ID:9rLt8Dwp0
>>451
ありがとうございます
試すとそのスクリプトを単独の.ahkファイルに書くと問題なく動作するのですが
自分が普段使ってる他にも長々と別のスクリプトが書いてある.ahkファイルの中に書くと
5回に1回ぐらい失敗(ctrl+左クリックが送られる)します
何かの処理が間に合わずに物理ctrlキーが割り込んできているのかと思い以下のようにsleepを挿入しても同じように失敗します
^LButton::
Hotkey, LCtrl, disable_key, On ;LCtrl::return と同じ
Hotkey, RCtrl, disable_key, On
sleep, 500
Send, {LButton}
sleep, 500
Hotkey, LCtrl, disable_key, Off ;上で定義したLCtrlのホットキーを削除
Hotkey, RCtrl, disable_key, Off
sleep, 500
return
disable_key:
return
何でctrlが割り込んで来ちゃうんですかね?
ありがとうございます
試すとそのスクリプトを単独の.ahkファイルに書くと問題なく動作するのですが
自分が普段使ってる他にも長々と別のスクリプトが書いてある.ahkファイルの中に書くと
5回に1回ぐらい失敗(ctrl+左クリックが送られる)します
何かの処理が間に合わずに物理ctrlキーが割り込んできているのかと思い以下のようにsleepを挿入しても同じように失敗します
^LButton::
Hotkey, LCtrl, disable_key, On ;LCtrl::return と同じ
Hotkey, RCtrl, disable_key, On
sleep, 500
Send, {LButton}
sleep, 500
Hotkey, LCtrl, disable_key, Off ;上で定義したLCtrlのホットキーを削除
Hotkey, RCtrl, disable_key, Off
sleep, 500
return
disable_key:
return
何でctrlが割り込んで来ちゃうんですかね?
2023/09/06(水) 23:02:51.49ID:Yb6yqz+60
>>455
そうなるとコード全体を見てみないと分からんが
全コード晒すのもそれを解析するのも現実的でないのでとりあえず適当に思い当たるのを挙げとくと
・同条件でトリガーされるホットキーで他に干渉しているものがないかチェックして、あればHotkeyで無効にする
・SetKeyDelay 及び SetMouseDelay を変更しているなら戻す
・SendInput もしくは SendPlay を使用する
・Send, {LButton} の前に Send, {Blind}{LCtrl Up}{RCtrl Up} を入れ明示的に押し上げる
・Hotkey, LCtrl, disable_key, On P100 のように優先度を上げる
・#UseHook を使う
・ホットキーやスレッド周りの設定で極端な設定をしているものがあれば戻す
とまあ基本手当たり次第かな、がんばって
そうなるとコード全体を見てみないと分からんが
全コード晒すのもそれを解析するのも現実的でないのでとりあえず適当に思い当たるのを挙げとくと
・同条件でトリガーされるホットキーで他に干渉しているものがないかチェックして、あればHotkeyで無効にする
・SetKeyDelay 及び SetMouseDelay を変更しているなら戻す
・SendInput もしくは SendPlay を使用する
・Send, {LButton} の前に Send, {Blind}{LCtrl Up}{RCtrl Up} を入れ明示的に押し上げる
・Hotkey, LCtrl, disable_key, On P100 のように優先度を上げる
・#UseHook を使う
・ホットキーやスレッド周りの設定で極端な設定をしているものがあれば戻す
とまあ基本手当たり次第かな、がんばって
2023/09/08(金) 00:16:48.01ID:suMaKzxk0
質問させてください
AHKでWin10のBluetoothをオン/オフ切り替えるコマンドってありませんか?
AHKでWin10のBluetoothをオン/オフ切り替えるコマンドってありませんか?
2023/09/08(金) 07:45:00.03ID:GbWsAhNI0
>>457
AHK にはないやろ。
autohotkey bluetooth on off - Google 検索
https://www.google.com/search?q=autohotkey+bluetooth+on+off
AHK にはないやろ。
autohotkey bluetooth on off - Google 検索
https://www.google.com/search?q=autohotkey+bluetooth+on+off
2023/09/08(金) 08:55:55.00ID:+ULrgBan0
runがあるんだからahkだけで何でもできる
2023/09/08(金) 09:32:53.12ID:GbWsAhNI0
2023/09/08(金) 09:38:25.14ID:MNBExYpU0
runしないといけないってことはahkで出来ないことじゃね?
2023/09/08(金) 09:58:48.37ID:YMO30/bT0
ただの言葉遊びだが、>>457の質問の仕方もちょっとあれだな
恐らくAHK経由で制御できるかを知りたいんだろうが
コマンドと書いてしまっているから、存在しないので、「ない」
という答えが返ってくるはめになる
制御スイッチとしてのスクリプトを書けるかといえば書ける
恐らくAHK経由で制御できるかを知りたいんだろうが
コマンドと書いてしまっているから、存在しないので、「ない」
という答えが返ってくるはめになる
制御スイッチとしてのスクリプトを書けるかといえば書ける
2023/09/08(金) 13:21:18.66ID:suMaKzxk0
2023/09/08(金) 17:58:23.82ID:+ULrgBan0
::の後{の前に改行がいるルールは、何の役に立ってるの?
続けて書いても誤解は無いと思うけど
続けて書いても誤解は無いと思うけど
2023/09/08(金) 18:43:25.14ID:i4UroxiT0
v2の話?
v2ならホットキーは関数だから、そういう書式ルールなんでとしか
ただOTBも許容しているから、別に前でなくてもいいよね
F1::{
Run "Explorer"
}
v2ならホットキーは関数だから、そういう書式ルールなんでとしか
ただOTBも許容しているから、別に前でなくてもいいよね
F1::{
Run "Explorer"
}
2023/09/08(金) 18:52:15.25ID:gx8PwsTd0
>>464
パーサの役に立ってるよ
パーサの役に立ってるよ
2023/09/08(金) 21:28:52.01ID:GbWsAhNI0
>>464
ちゅうかさ、AHK v2 にそんな「ルール」はないやろ。
「行末の{」に対して、オブジェクト or OTB の判定が入るだけで。
Scripts - Definition & Usage | AutoHotkey v2
https://www.autohotkey.com/docs/v2/Scripts.htm#continuation-expr
ちゅうかさ、AHK v2 にそんな「ルール」はないやろ。
「行末の{」に対して、オブジェクト or OTB の判定が入るだけで。
Scripts - Definition & Usage | AutoHotkey v2
https://www.autohotkey.com/docs/v2/Scripts.htm#continuation-expr
2023/09/08(金) 21:38:01.87ID:+ULrgBan0
OTBで書けるケースが限定されている、というルールでしょ
そんなややこしいことにするメリットが判らん
そんなややこしいことにするメリットが判らん
2023/09/08(金) 22:05:34.06ID:zFwuV2d30
2023/09/08(金) 22:35:10.31ID:GbWsAhNI0
2023/09/08(金) 22:43:00.25ID:+ULrgBan0
全然判らん
何と何を誤解するという具体例とかあるの
何と何を誤解するという具体例とかあるの
2023/09/08(金) 22:55:06.64ID:zFwuV2d30
2023/09/09(土) 08:49:36.22ID:pR8NjTB70
v1みたいに処理が一つなら省略できるんだから別にいいじゃん
スクリプトの改行で文句言う奴なんて初めて見たぜ
スクリプトの改行で文句言う奴なんて初めて見たぜ
2023/09/09(土) 13:53:20.96ID:xOfvB+/e0
なんかよく分からないその人なりのこだわりがあるんだろ。
2023/09/09(土) 15:42:27.29ID:feDxAAkf0
何かの互換性の維持の為とかならまあ仕方ないけど、
そんなの関係なくて単に面倒くさいという理由で合理性が欠如してたら、
もうちょっと頑張れよと思うのは仕方ない
そんなの関係なくて単に面倒くさいという理由で合理性が欠如してたら、
もうちょっと頑張れよと思うのは仕方ない
2023/09/09(土) 21:56:07.18ID:dR4zuzdz0
2023/09/10(日) 15:58:51.93ID:ZkN65p7R0
AutoHotkeyって、ネーミング通りホットキーに操作を割り当てるだけの物かと思ってスルーしてたけど
調べたら色々出来るんだね
こんなことならUWSC(作者死亡、6年更新ない)に手を出さず、最初からAutoHotkeyにしとけば良かった。
調べたら色々出来るんだね
こんなことならUWSC(作者死亡、6年更新ない)に手を出さず、最初からAutoHotkeyにしとけば良かった。
2023/09/10(日) 16:09:06.76ID:oMtz/ggC0
今からでも遅くはありません
勇者よ、学ぶのです
勇者よ、学ぶのです
2023/09/10(日) 16:11:04.10ID:ItMWkI4Z0
ImageSearchまだ使ったことないけど、使いこなすと可能性が広がりそうだな
2023/09/10(日) 16:24:59.90ID:oXJfo1RU0
2023/09/10(日) 16:36:29.30ID:ApyovvyA0
Keyhac って Python だったよな
2023/09/10(日) 16:46:52.42ID:ItMWkI4Z0
のどかにラッパーを追加してpythonのモジュールみたいにできないかな
ぶっちゃけ、キーの入れ替え以外は全部pythonでできる
ぶっちゃけ、キーの入れ替え以外は全部pythonでできる
2023/09/10(日) 16:57:15.43ID:ItMWkI4Z0
ラッパーていうか、アプリそのものだな
のどかはデバイスドライバとそれを使う本体で構成されてるので、
APIを解析してのどか以外からデバイスドライバを使うことも可能
APIの全機能をカバーしただけの低レベルpythonモジュールをまずこさえて、
それを利用してahkのスクリプトを理解できる上位モジュールから呼び出す
のどかはデバイスドライバとそれを使う本体で構成されてるので、
APIを解析してのどか以外からデバイスドライバを使うことも可能
APIの全機能をカバーしただけの低レベルpythonモジュールをまずこさえて、
それを利用してahkのスクリプトを理解できる上位モジュールから呼び出す
2023/09/11(月) 11:00:53.01ID:ia7g+DFl0
>>481
keyhacは修飾キー周りの設定がめんどいのと更新止まってるから使ってないな
keyhacは修飾キー周りの設定がめんどいのと更新止まってるから使ってないな
2023/09/11(月) 20:36:49.65ID:AdChF0Gh0
Release v2.0.8 · AutoHotkey/AutoHotkey
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.8
https://github.com/AutoHotkey/AutoHotkey/releases/tag/v2.0.8
2023/09/11(月) 20:39:27.89ID:tG+HBWzg0
2023/09/11(月) 20:51:26.09ID:H9PG0Vk20
メンテナンスだけなんだから
そりゃ当然だわ
そりゃ当然だわ
2023/09/11(月) 21:17:56.44ID:AdChF0Gh0
公式のダウンロードページでも「Download v1.1 (deprecated)」になってるしな。
セキュリティ絡みかよっぽどなバグでもない限りアップデートはないやろ。
セキュリティ絡みかよっぽどなバグでもない限りアップデートはないやろ。
2023/09/11(月) 21:27:50.78ID:tG+HBWzg0
2023/09/11(月) 21:28:32.59ID:tG+HBWzg0
492名無しさん@お腹いっぱい。
2023/09/12(火) 02:41:12.62ID:ZxfrDDhW0 漠然とした質問ですがAHKって何に使ってますか?
自分はpython書くくらいしかPCで作業しないので
Pythonであまり使わない@に()を割り当てたり
=と""を打ちやすくしたりしてみたのですが
他に割り当てるほどのことが何も思いつきません
何でもできるツールなので、使い方がわかってないだけだと思うのですが……
切り取り貼り付けなどのショートカットをワンプッシュでできるようにしてみたのですが元々Ctrl+C、Vとかはかなり押しやすい配置なのであまり便利になりませんでした
皆さんが複雑な作業でホットキー設定して便利だと感じているものって何かありますか?
自分はpython書くくらいしかPCで作業しないので
Pythonであまり使わない@に()を割り当てたり
=と""を打ちやすくしたりしてみたのですが
他に割り当てるほどのことが何も思いつきません
何でもできるツールなので、使い方がわかってないだけだと思うのですが……
切り取り貼り付けなどのショートカットをワンプッシュでできるようにしてみたのですが元々Ctrl+C、Vとかはかなり押しやすい配置なのであまり便利になりませんでした
皆さんが複雑な作業でホットキー設定して便利だと感じているものって何かありますか?
2023/09/12(火) 03:06:37.00ID:TCPOB/1O0
2023/09/12(火) 04:30:06.97ID:48RxhFtI0
2023/09/12(火) 07:42:20.39ID:Nluft5rv0
mayu -> yamy -> ahk と流れてきて、設定を連綿と引き継いでいる
最初にやりたかったのは、ダイヤモンドカーソル
CapsLock+esdxがカーソルキーになる
他にも極力ホームポジションから動かなくていいように、ファンクションキーとか、
かな入力の一部を別のキーに追加
あとは特定アプリ限定で、マウスでしか操作出来ない機能にキーアサインを追加
最初にやりたかったのは、ダイヤモンドカーソル
CapsLock+esdxがカーソルキーになる
他にも極力ホームポジションから動かなくていいように、ファンクションキーとか、
かな入力の一部を別のキーに追加
あとは特定アプリ限定で、マウスでしか操作出来ない機能にキーアサインを追加
2023/09/12(火) 08:32:49.30ID:GBoxE6db0
関数ライブラリ廃止がクソすぎる やってられん
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「日本が戦争に一歩踏み出す危機感」官邸前で抗議デモ 高市総理“台湾有事”発言の撤回求める 中国メディアの姿も ★2 [蚤の市★]
- 【おこめ】ふるさと納税でも「新米が売れない」 米農家の最悪のシナリオは「仮払金返納」 鈴木農水相は「農協」の代弁者か [ぐれ★]
- 「レアアースを精製できる技術は日本が持っている、日本にレアアース来なければ中国は精製できない」 衆議院答弁 [お断り★]
- 【NHK】タモリ「滋賀県の人に『滋賀県よりも琵琶湖の方が広いよね』って言ったら…」 [少考さん★]
- 「風呂キャンセル界隈」の夫と離婚できる? 不潔すぎる配偶者に絶望する妻たちの切実な声 [少考さん★]
- 日銀が円安進行を警戒 物価高に懸念、利上げ観測も きっかけは高市首相の経済対策で財政規律が悪化するとの懸念による「日本売り」★2 [ぐれ★]
- なんでネトウヨって中国警戒するの?ここ1週間他国を侵略したことないのに [916950698]
- 小林鷹之「経済の中国依存から脱却して将来的にはゼロに近づける。世論が高市首相を批判すれば誰が得をするか考えて欲しい」★2 [931948549]
- 【実況】博衣こよりのえちえちゼルダの伝説 ムジュラの仮面🧪★4
- んなぁ…🍬…んなたん起きたのらよぉ🍬✋…🏡
- 【悲報】X「アマゾン配達員の劣化が激しい…」何が悪いんだこれ [394133584]
- 【悲報】チェンソーマンのレゼちゃん、海外のAV女優が元ネタと判明して炎上wwwwwwwwwwwwwwwww [839150984]
