[過去ログ] AutoHotkey スレッド part30 IDのみ (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
112: 2023/04/17(月)22:41 ID:bN+BDAgh0(1) AAS
ID:0ZruvkIP0
は、期待している値と実現したい内容を明確に書かないとダメよ
コードだけで分からないって言われても、こっちが分からんわって
なるのが普通でしょ
113
(1): 2023/04/20(木)03:00 ID:w8okL8J50(1) AAS
code1.ahk
code2.ahk
code3.ahk
...
というファイルがありどれも関数foo()を定義している

そのファイルを順番に動的にロードして関数foo()を呼び出して廃棄
exec() {
ret := []
for k,v in ["1", "2", "3"]
{
省8
114: 2023/04/20(木)14:21 ID:cFx/MHGt0(1/2) AAS
v1/2を問わず#ディレクティブって条件付き実行ってできないから、
そういう使い方は無理なんじゃないかな?
115: 2023/04/20(木)14:48 ID:en+46tKw0(1) AAS
そもそも#unincludeってコマンドある?
116: 2023/04/20(木)14:57 ID:cFx/MHGt0(2/2) AAS
それもない。
もしかしたらライブラリを作ればなんとかなるかも知れんけど調べてない。
117: 2023/04/20(木)16:45 ID:k3CogS+T0(1) AAS
動的includeあれば便利そうだよね常駐から使用頻度低い記述を削減したい
118: 2023/04/20(木)17:01 ID:CZ21fJcG0(1) AAS
>>113

これをやる意図は?
119
(1): 2023/04/23(日)08:41 ID:qhrW4uB00(1) AAS
SRWare Iron portable上で動作しません。何故でしょうか。
chromeやエクスプローラーなどではちゃんと動作しますが、Iron上では無効化されるんです
120: 2023/04/23(日)10:11 ID:bEEY46BE0(1) AAS
V1/2 なのかどんなスクリプトなんか知らんが、V2 の Window Spy で見てみ。
そのスクリプトが SRWare Iron のクラス名とかに対応してないんちゃうか?
121: 2023/04/23(日)14:14 ID:4t6f0QdC0(1) AAS
>>119
外部リンク:pastebin.com
Q6:Windows Vista(以降)で管理者権限のウィンドウ操作やSendPlayが効かないんだけど?
122
(1): 2023/04/26(水)10:09 ID:Iah7Z2jh(1) AAS
テレビチューナーアプリのPIXELA StationTVXとXitでAutoHotkeyが動作しないのですが対策方法分かる方いましたら教えてください
123: 2023/04/26(水)13:28 ID:wRF6CHBz0(1) AAS
エスパー募集中!
124
(1): 2023/04/26(水)14:45 ID:fzHyTn/Y0(1/3) AAS
超初心者の超初歩的な質問です。
V2での次のスクリプトと同じ動作をするV1のスクリプトは
どのように書けば良いのでしょう。

x := 1
y := 2
var := x+y

MsgBox " x+y = " x+y

MsgBox "The value of Var is " . Var . "."

MsgBox("The sum of X and Y is " . (X + Y))
125
(1): 2023/04/26(水)15:08 ID:rPAoeGO10(1/2) AAS
>>124
MsgBoxの後に、スペース パーセント スペース
126
(2): 2023/04/26(水)15:48 ID:fzHyTn/Y0(2/3) AAS
MsgBox % x+y とすると 3が表示されますが、
x+y =3と表示したいのです。

MsgBox x+y = % x+y ではエラーになります。
127: 2023/04/26(水)15:58 ID:lV75YWmm0(1) AAS
>>122
タスクスケジューラーから最上位特権で実行したらイケないかな?
ツイッター/Giko_Hanyern/status/1572749712335446016
128
(1): 2023/04/26(水)16:11 ID:rPAoeGO10(2/2) AAS
>>126
MsgBox % " x+y = " x+y
MsgBox % "The value of Var is " . Var . "."
MsgBox % ("The sum of X and Y is " . (X + Y))
129: 2023/04/26(水)16:15 ID:XJXsub2s0(1) AAS
>>126
なんで>>125の言うとおりにできないのか
130: 2023/04/26(水)16:18 ID:fzHyTn/Y0(3/3) AAS
>>128
できました。ありがとうございます。
そういうことだったんですね。
勉強になりました。
131
(1): 2023/04/27(木)12:43 ID:iW74hXYP0(1/3) AAS
AHKスクリプトで作ったGUIウィンドウでウィンドウタイトルが固定でないものを
IfWinExistなどでマッチングさせるにはどうしたらいいでしょうか?

○○.ahkのGUIウィンドウというような感じで指定できる方法などありますか?
132
(1): 2023/04/27(木)13:55 ID:FUOB1sNF0(1/2) AAS
>>131
ahk_pid ◯◯.ahkのPID ahk_class AutoHotkeyGUI
133
(2): 2023/04/27(木)15:02 ID:iW74hXYP0(2/3) AAS
>>132
手動で(自分がそのウィンドウだとわかっていて)
そのウィンドウを直接指定してPIDを調べるというのはできるのですけど
自動でスクリプト名などから割り出してウィンドウを指定したいのですが方法がわかりません
134: 133 2023/04/27(木)15:10 ID:iW74hXYP0(3/3) AAS
説明が下手なので変な文章になってしまったかもしれませんが
タイトル指定の代替として都度手動で調べたりすることなく追従させたいという事です
135: 2023/04/27(木)15:22 ID:FUOB1sNF0(2/2) AAS
>>133
スクリプトはGUI作らなくても必ず非表示のメインウィンドウを持ってる(ListLinesとかで出てくるあれ)

そいつのウィンドウタイトルは
(スクリプトのフルパス) - AutoHotkey v(バージョン)
だから前方一致で探してPID取得できる
136: 2023/05/06(土)05:45 ID:vtzHjqHw0(1/2) AAS
久々に使ったけど無変換キーはvkF0sc03Aじゃなくてvkf0にしないとだめなのか
wiki通りにずっとやってたらできなかったわ
137: 2023/05/06(土)06:26 ID:Sr2OwPe+0(1) AAS
その仮想キーとスキャンコードの両方書くスタイル自体が廃止になった
138: 2023/05/06(土)11:38 ID:gSC4mMc/0(1) AAS
無変換sc07B
変換sc079
139: 2023/05/06(土)21:56 ID:vtzHjqHw0(2/2) AAS
ようするにそこらへんのキーは
vkF0かsc03Aみたいにどっちか書けばいいのか
140
(2): 2023/05/07(日)10:45 ID:ZT8Dl3jT0(1/2) AAS
Scan CodeとVirtual Key Codeを使い分けられる

例えばJISキーボードをUS配列で使うためにUS104ドライバ動作させると
5つのキーは無効になるけど、AutoHotKeyでドライバの代わりにSC→VK変換させれば使えるようになる
SC07B::VK1D ; VK_NONCONVERT 無変換
SC079::VK1C ; VK_CONVERT 変換
SC070::VKF2 ; VK_OEM_COPY かな
SC073::VKE2 ; VK_OEM_102 \
SC07D::VKDC ; VK_OEM_5 ¥
141
(1): 2023/05/07(日)11:13 ID:6T9qFBCS0(1) AAS
>>140
未検証だけとこれマジならすごいありがたい情報
142: 140 2023/05/07(日)12:08 ID:ZT8Dl3jT0(2/2) AAS
>>141
俺が実際に使ってるんで、検証済みっす
143: 2023/05/13(土)05:16 ID:wIr4Hu5e0(1) AAS
#if 直下にこれ仕込んどくと便利

EditMe() {
e := Exception(0, -1)
run % Format("myeditor.exe -line {1} -file ""{2}""", e.Line, e.File)
}

#if WinActive("ahk_exe notepad.exe")
+!Q::EditMe()
144: 2023/05/14(日)19:41 ID:SpZWqZhg0(1) AAS
ChatGPTもBardもAHK v2の質問にはろくに答えてくれなくてつれぇ
ChatGPTは2021年までの情報しかないからしゃーないが・・
145: 2023/05/14(日)20:23 ID:wLis/bTc0(1) AAS
公式サイトの V1→V2の変更点とか、各ページでV1↔V2で切り替えて
見られるから、それで何とかならんか?
V2でなくなったものなんかも、こんな風に実装しなはれ的なコード例が
大抵あるし。
146: 2023/05/14(日)20:56 ID:vdcP1ne90(1) AAS
V2にすると速くなるって本当ですか?
147: 2023/05/15(月)09:48 ID:0ANZuee90(1) AAS
v2はwindow spyで取得できなくなって操作も受け付けなくなったものがあるから移行したくても出来ないんだよな
そのためにv1v2混在させるならv1のままでいいかってなっちゃう
148: 2023/05/16(火)11:54 ID:di1TSdIO0(1) AAS
ここ読めば1でもパフォーマンスは上がる余地はある
外部リンク[htm]:www.autohotkey.com

そもそもAHKで遅いような処理書くなら
外部スクリプトに投げるのが手っ取り早い
149: 2023/05/16(火)13:24 ID:fxYBD07v0(1/2) AAS
プログラムど素人がやっとAHKに慣れてきたというのに
2を使いたいなら一から勉強し直さないといけないのかorz
150: 2023/05/16(火)14:45 ID:bfOlPNzX0(1/2) AAS
対して変わらんって。
他言語習得者ならV2の方が自然かけるし、大概の場合V1っぽく書けるし。
151: 2023/05/16(火)16:23 ID:z+AiwZyr0(1) AAS
v1しか対応してないライブラリが残ってて困ってる
152: 2023/05/16(火)18:41 ID:bfOlPNzX0(2/2) AAS
あ〜ある程度の規模のものになると自前で書き換えもしんどいか。
153
(1): 2023/05/16(火)21:32 ID:fxYBD07v0(2/2) AAS
そうですしんどいですorz
でもWindowsを使う数少ない理由がAHKなのでしがみつくしかない
154: 2023/05/17(水)19:26 ID:YbDlyAZ20(1) AAS
V2童貞なんだけどIME.ahkはV2で使えるの?
155
(1): 2023/05/18(木)02:16 ID:aVqMgVDQ0(1/2) AAS
中身が変わる文字列の4行目だけをまるまる削除したいのですがスマートにやるにはどうすればいいのでしょうか?
156: 2023/05/18(木)03:32 ID:m4Xwoaak0(1) AAS
V2の情報が公式頼りだから時間だけ消費して折れる
ブログはほぼV1だからV2ではまるで使えない
V2にすると苦労するがV2で使い人は多いだろうな
157
(1): 2023/05/18(木)04:00 ID:ICsWNhV10(1) AAS
>>155
正規表現で置換
158: 2023/05/18(木)15:39 ID:aVqMgVDQ0(2/2) AAS
>>157
ありがとうございます!
StringSplitとかで区切って~とか面倒くさいやろうとしてました
159
(1): 2023/05/18(木)22:43 ID:58DYFPVC0(1) AAS
UWSCからAHKかautoit に乗り換えようと迷ってたけど困ったな
AHKのいいとこは日本語の文献が多いことだったのに
160: 2023/05/19(金)06:27 ID:SM+6djjW0(1) AAS
>>153
Linux版AHKはアカンの?
161: 2023/05/19(金)11:10 ID:EbTobve50(1) AAS
>>159
autoitの利便性が見いだせない
AHK一択でちょっと込み入った処理はpythonでしょ
162: 2023/05/19(金)16:23 ID:cqae+3LS0(1) AAS
ピソンてguiが難しいんだよね…
163
(2): 2023/05/23(火)01:51 ID:qHWX0/Vx0(1) AAS
半角全角の切り替えだけならvk19でリマップすればIME.ahkいらんよね
164: 2023/05/23(火)12:27 ID:JtLhu4ps0(1) AAS
>>163
無いと困るっつーの

IME onで処理を止める(入力中と判断)
IME状態に応じてキャレットサイズとマウスポインタを変える
起動すると必ずIME offになるアプリでonにする
165: 2023/05/23(火)13:44 ID:2Vhse2QX0(1) AAS
IME.ahkなんか難しいことなんにもやってないのに
自分で読んでみたこともないのか
166: 2023/05/24(水)01:43 ID:acjDN++40(1) AAS
>>163
なるべくどんな状況でも確実にOFFするために使ってるよ
167: 2023/05/26(金)00:11 ID:c1g7n9Bd0(1/2) AAS
タイマーについて質問すみません

起動すると音だけ鳴って30分経つと終了のmsgboxがポップアップする
下のようなシンプルすぎるタイマーを作りました
たまに残り時間を知りたいことが出てきたので
何かキーを押してる間だけツールチップで今何分経過したかを表示させたいのですが
どんな式を追加したらいいでしょうか?
settimerで60000ms毎に変数に+1して・・・などおぼろげに想像するも
あまりに素人すぎて全く形にすることが出来ませんでした

SoundPlay, *-1
sleep, 1800000
省3
168
(1): 2023/05/26(金)08:43 ID:uk7fS3gc0(1) AAS
外部リンク:duckduckgo.com
169
(1): 2023/05/26(金)09:07 ID:Wq8Okrmz0(1) AAS
cnt := 0
SetTimer, countup, 1000
SoundPlay, *-1
sleep, 1800000
SetTimer, countup, Off
SoundPlay, *16
msgbox, 30min
return

countup() {
global cnt
省8
170: 2023/05/26(金)12:03 ID:c1g7n9Bd0(2/2) AAS
>>168
ポモドーロタイマーというのがあるんですね、初めて知りました
今回はカウントダウン機能が欲しかったので少し異なるものでしたが
かなり便利そうだったので公開されてたahkを幾つか保存しておきました
どうもありがとうございます

>>169
正にこれを作ろうとしてました、完璧です
コピペしただけでは全く身にならないのでコードの内容を全部理解出来てから
お礼を書こうと思ったのですが、コアであろうcountup() { 略 }が何してるのか
wiki見ながらググってもよく判りませんでした
省2
171: 2023/06/05(月)19:49 ID:s6jaA7//0(1) AAS
一つ情報提供を・・・

最近ChromeやEdgeやFirefoxでAutoHotkeyが効かなくなってお困りの方へ
ウイルス対策ソフトに「ESET」を使っておりませんか?
ESETをバージョンアップしたことにより、一部のブラウザでAutoHotkeyが効かなくなることがあるようです。

私は↓の方法で直りました!
外部リンク:www.jh4vaj.com
172
(2): 2023/06/06(火)21:32 ID:9bAtqEXG0(1) AAS
未初期化変数のデフォルト値って変えられないの?

"3joi3@reqwirjowej@"
とかにしてtypoしたときに分かりやすくしたい
173: 2023/06/06(火)22:06 ID:Xmyfp1Hs0(1) AAS
>>172
変える意味がないから変えられない
174: 2023/06/06(火)22:24 ID:EOs7ePVH0(1) AAS
ちゅうかそもそもの話で AutoHotkey に無関係やろそれ。
アンタのコーディング・プログラミングスタイルの問題。
175: 2023/06/10(土)17:50 ID:WuavGT3n0(1) AAS
v2ならエラー吐くから嫌でも分かるな
176
(1): 2023/06/10(土)21:51 ID:ZTh/5Uee0(1) AAS
Shift +「2」(sc003)キーで@を出すスクリプト

+sc003::@

こう書くと「@」じゃなく「`」(Shift + @のバッククォート)になっちゃうんですが、どうすれば良いですか?
177
(1): 2023/06/10(土)22:23 ID:0vreqA470(1) AAS
普通に
+2::@
でイケるんちゃうか?

ていうか日本語キーボードをUS-ASCII配列にしたいとか?
それなら AutoHotkey で弄るより、キーマップ変更の常駐物なり
レジストリ弄りの方がエエと思うけど。
178
(1): 2023/06/11(日)00:29 ID:DBOvZWu20(1/2) AAS
>>177
V1で、+2::@も同じ結果でしたが、普通の結果じゃないみたいなので、念の為V2でも試したら成功しました
ありがとうございます

ですが今度は「{」の入力スクリプト
+sc01A::{

V1は正常にできてV2だとエラー
-----
Error: Missing "}"
▶︎ 001: {
省8
179
(1): 2023/06/11(日)04:27 ID:QJYFa2Xb0(1) AAS
+SC003::VKC0 でイケない?
180
(1): 2023/06/11(日)06:44 ID:ysLsrQv50(1) AAS
>>176
Send, @
181
(1): 2023/06/11(日)07:32 ID:EJYtQWxJ0(1) AAS
+SC003::SendText "{"
+SC003::Send "{Raw}{"
182: 2023/06/11(日)07:36 ID:Ba/t18ei0(1) AAS
>>172
#WarnのUseUnsetLocalとUseUnsetGlobalとか
183
(1): 2023/06/11(日)08:18 ID:RVNeeTUS0(1) AAS
>>178
V2なら
+sc01A::send "{{}"
でダメかな?
184: 2023/06/11(日)15:01 ID:DBOvZWu20(2/2) AAS
>>179
V2では成功で、V1だとバッククォートになっちゃいました
>>180
両バージョンで成功しました
>>181
前者はV2で成功しました(V1ではエラー)
後者もV2で成功しました(V1では"{"という3文字が出力される)
>>183
V2で成功しました(V1では"{"という3文字が出力される)

V2で何とかなりそうです
省1
185: 2023/06/17(土)09:58 ID:H5Hx9I3p0(1/2) AAS
バックスラッシュのキー(sc073)をShiftにして
2のキー(sc003)をShiftと一緒に押して@が出るようにしたいんですが

sc073::Shift
+sc003::SendText "@"

このスクリプトだとsc073とsc003一緒に押すと@じゃなく"が出ます
sc073ではなく元からのShiftキーを使うと正しく@が出ます
どうすればいいですか?
186
(1): 2023/06/17(土)13:42 ID:L5n38dfU0(1) AAS
Shift置換せずに、
SC073 & SC003::@
でいいんじゃ?
187: 2023/06/17(土)14:59 ID:H5Hx9I3p0(2/2) AAS
>>186
なるほど、@以外の組み合わせもこれでゴリ押しすればいけそうですね
ありがとうございます
188: 2023/06/20(火)04:34 ID:sT1WC8H30(1) AAS
Version 2.0.3
バグ修正いろいろ
189: 2023/06/28(水)17:15 ID:vl8/4m5J0(1/2) AAS
無変換でIME offに設定したのに無視される場合
sc07B::send {sc07B}
のように同じキーコードを送るとちゃんと動作する
(何故かSuppressedにされてしまう)
190: 2023/06/28(水)19:06 ID:9d24A2oK0(1) AAS
>無変換でIME off
ahkでやらずIME側で割り当てろよ
191: 2023/06/28(水)19:22 ID:vl8/4m5J0(2/2) AAS
Suppressedだから無理
192: 2023/06/29(木)13:49 ID:HvNLPeRK0(1) AAS
いつになったらキーボードの入力はキーコード直接送信するようになるのかな
文字はUnicodeで一意に決まるし、装飾キーも今後増えることはないからコード割当てきるだろうに
ドライバでキーの位置を決めるなんて無くなって欲しい
193: 2023/06/29(木)14:08 ID:P65O2+vE0(1/2) AAS
タスクバーの1番目に例えばエクスプローラーとかピン止めしておいて、
win-1を押すとタスクバーをクリックしたのと同様にアクセスできる
エクスプローラーが複数起動していた場合は、win-1を1回押すと1番目で2回押すと2番目が選択できる

ahkで何かのキーを ::#1 みたいに定義すると、起動しているのが1つなら同様に動作するけど、
複数起動していると画面がおかしくなる
多分タイミングの問題なので、ゆっくり送信すればうまくいく筈だと思うけど、
#1 をゆっくり送信する方法が判らない
194: 2023/06/29(木)14:45 ID:P65O2+vE0(2/2) AAS
AA省
195
(1): 2023/06/29(木)23:58 ID:LnRI2dek0(1) AAS
これでどう?

sc07B::
win1down := 1
return

sc07B up::
if(win1down = 1)
send {sc07B}
if(win1down = 2)
send {LWin UP}
win1down := 0
省9
196: 2023/06/30(金)17:51 ID:I13+A2Ls0(1) AAS
選択したファイルの絶対パスをダブルクオーテーション抜きでショートカットでコピーする方法ないでしょうか?

外部リンク:qiita.com
こちらを参考にしたのですが、windows純正のパスのコピーを使用するのでどうしてもパスの前後に"が付いてしまいます。

"を毎回削除するのが煩わしいので、どうにかパスをそのままコピーしたいのですが方法ないでしょうか?
197: 2023/06/30(金)18:00 ID:8GKPkB550(1) AAS
ClipboardChangeで書換
198: 2023/06/30(金)18:02 ID:ktXPCW8H0(1) AAS
Trim()の1行が煩わしいんじゃ他の方法も無理では
199: 2023/06/30(金)18:19 ID:ZTZJy8xI0(1) AAS
RegexReplace(str, """", "")
200: 2023/06/30(金)19:29 ID:O3h73S2Q0(1/2) AAS
ファイル選択して ctrl + c で終わりだべ
"" など関係ねぇべよ
201: 2023/06/30(金)19:44 ID:lLRwY/Li0(1) AAS
文字列を貼り付けたい場合はソフトが対応してないと無理だべ?
202: 2023/06/30(金)20:37 ID:O3h73S2Q0(2/2) AAS
clipboard := clipboard
この一行追加でどうだべ
203: 2023/07/01(土)14:44 ID:JSbfNA7M0(1) AAS
>>195
なんで動くか判らんけど動くなあ
204: 2023/07/02(日)18:54 ID:mq1/CYK10(1) AAS
1.1.37.00
205: 2023/07/02(日)19:10 ID:WAJOWZNC0(1) AAS
無変換+qだけじゃなくて、無変換+wとかにも拡張するのは簡単だった

ただなー
こんな大仰なことしなくても、yamyだったら
key M1-q = W-_1
だけで完全に動作したんだよな

yamyの方がより低いレイヤーでフックしているから
ahkの方が行儀がいいんだけど、奪い合いになると負けてしまう
206: 2023/07/04(火)22:59 ID:bLMqkorL0(1) AAS
麻生なんだー
207: 2023/07/04(火)23:24 ID:UvZzeLwp0(1) AAS
たまにctrlとか押しっぱなしになるのも、奪い合いに負けた結果なんだよな
もっと低レベルにはできないんだろうか
208: 2023/07/06(木)00:38 ID:equDk8Un0(1) AAS
PathMatchSpecが日本語のテキストで誤動作する問題で七転八倒してしまった…
なんでこんなバグ放置してんだアホエスは
そしてAHKはワイルドカード判定標準でつけろよ
209: 2023/07/06(木)05:37 ID:152urR560(1) AAS
ちょっとググってみたら PathMatchSpec 関係は色々と仕様変更が積み重なったり
挙動が怪しいってあるな。PathMatchSpec〜 で色々とバリエーションがあるし。
(自前でAPI相当の処理を書いている人とかも)
210: 2023/07/06(木)22:54 ID:ZPNlWptz0(1) AAS
AutoHotkey初心者です。

Space::Space
Space & G::Send,{Space}
Space & D::Send, !{Left}
Space & F::Send, !{Right}
Space & W::Send, ^w
Space & Q::Send, +^t

このようなスペースキーを基本にしたショートカットのためにAutohotkeyを導入しました。
その割当自体は出来たのですが、
これだとPhotoshopでのスペースキー単体押しっぱなしで使用する手のひらツールが使えなくて困っています。
省2
211: 2023/07/06(木)23:09 ID:ngOiScvr0(1) AAS
Space::Space
なんか普通は要らんのでは
1-
あと 791 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.197s*