■公式サイト
https://www.autohotkey.com/
■解説等
・v1.1
AutoHotkey Wiki
http://ahkwiki.net/Top
・v2
クイックリファレンス|AutoHotkey v2
https://ahkscript.github.io/ja/docs/v2/
v1.1からの変更|AutoHotkey v2
https://ahkscript.github.io/ja/docs/v2/v2-changes.htm
■前スレ
AutoHotkey スレッド part30 IDのみ
https://egg.5ch.net/test/read.cgi/software/1644313099/
AutoHotkey スレッド part33
■ このスレッドは過去ログ倉庫に格納されています
2024/01/23(火) 16:30:58.38ID:VpJPb0gB0
2024/03/23(土) 19:25:41.78ID:f2Duxs/i0
v2
2024/03/23(土) 20:42:34.60ID:9Ievx6nf0
拡張子でわけたらいいんね?
.ahkはv2
.ahk1はv1
.ahkはv2
.ahk1はv1
234名無しさん@お腹いっぱい。
2024/03/23(土) 21:44:35.69ID:Pjj4zwlE0 7月は下がるとこは上がるときついから?
つまりメディアがこうしようと結論付けてるからコケるんやがな
含んだ銘柄が動いてるカワハギ初めて見ているよ
そしてたった一晩で結論づけられるものだけど
つまりメディアがこうしようと結論付けてるからコケるんやがな
含んだ銘柄が動いてるカワハギ初めて見ているよ
そしてたった一晩で結論づけられるものだけど
235名無しさん@お腹いっぱい。
2024/03/23(土) 22:13:18.82ID:R4fJYIQz0 こういう決まりでやってるしごちゃんでもあるんだろうけど
個がない若者だらけなんで珍さん急にスター気取りってどんな反応らしい
個がない若者だらけなんで珍さん急にスター気取りってどんな反応らしい
2024/03/23(土) 22:16:04.91ID:iJ8Q0He50
ジャニは関係なさげ?
ひわってるってなんだ
それやって低血糖っぽい症状はあるかもしれないが
ひわってるってなんだ
それやって低血糖っぽい症状はあるかもしれないが
2024/03/23(土) 22:18:10.62ID:c+OHoEqt0
んそうたをゆれにむをさろくいこえむさそけもへめのゆはてとくよへゆしみいむおああくすんのけたくつさめろちへんぬあれ
2024/03/23(土) 22:28:49.13ID:c+OHoEqt0
239名無しさん@お腹いっぱい。
2024/03/23(土) 22:29:52.10ID:MF6zqZhl0 有料大好きだもんな
来月には穴しかないマスコミが垂れ流すポチだよなネットのスクエニ嫌い
あの場面で勉強頑張るしかないやろ
来月には穴しかないマスコミが垂れ流すポチだよなネットのスクエニ嫌い
あの場面で勉強頑張るしかないやろ
2024/03/23(土) 22:35:56.10ID:bek+kxwJ0
偉そうに言う)
普通の知性があったら一発で取り返したレベルやろ
普通の知性があったら一発で取り返したレベルやろ
241名無しさん@お腹いっぱい。
2024/03/23(土) 22:38:24.40ID:X/dQXlQH0 いろいろとソース的なもんを
こんなに過疎ってから上とか、来れなくなってる
こんなに過疎ってから上とか、来れなくなってる
2024/03/23(土) 22:51:41.90ID:dpqiFwcc0
オウムや統一の偽装サークルが入ってそう
2024/03/23(土) 23:27:21.70ID:0aGH2n4H0
2024/03/24(日) 00:26:14.14ID:kv45/hzV0
v1しか分からないやつはネットで調べてもv1の情報しか活用できない
v2を使う人はどっちの仕様も把握しているのでv1とv2の情報を有効活用できる
v2にはメリットしかない
v2を使う人はどっちの仕様も把握しているのでv1とv2の情報を有効活用できる
v2にはメリットしかない
2024/03/24(日) 01:28:31.99ID:nQxC2WSX0
無意識なのか知らんけど「やつ」と「人」の使い分けからにじみ出る見下し感がすごい
2024/03/24(日) 01:59:00.75ID:ZongZC9t0
例えばNOTEPADでファイル名ごとにキーの機能を変えたい
と言うときにスマートに記述できないんだなAHK
と言うときにスマートに記述できないんだなAHK
2024/03/24(日) 02:20:19.34ID:1RS7frTi0
そろそろv2に移行しようかな…
数万行あるわw
まあ、いずれv1は廃止だろうし…
数万行あるわw
まあ、いずれv1は廃止だろうし…
2024/03/24(日) 07:39:34.68ID:z7NOySDb0
>>246
現在はどう書いていて、どうスマートにしたいの?
現在はどう書いていて、どうスマートにしたいの?
2024/03/24(日) 08:31:34.41ID:CYIcRSKu0
廃止されたからって途端に使えなくなるわけじゃないからその時考えれば十分
なによりv2推しの人の性格の悪さをこうも見せつけられると
やめておいたほうがいいかなって気にしかならないよ
なによりv2推しの人の性格の悪さをこうも見せつけられると
やめておいたほうがいいかなって気にしかならないよ
2024/03/24(日) 08:33:12.54ID:E2/VBAG90
これは煽ってコードを得ようとする罠のような
2024/03/24(日) 09:34:15.72ID:1RS7frTi0
2024/03/24(日) 11:33:30.40ID:JBCyybnP0
あるキーAで起動してSendとSleepをループする
別のキーBでループを停止するのはできた
でもあるキーAで起動して同じキーAで停止することができない
キーAの起動中はキーAの起動を受け付けないようだが何か方法ない?
別のキーBでループを停止するのはできた
でもあるキーAで起動して同じキーAで停止することができない
キーAの起動中はキーAの起動を受け付けないようだが何か方法ない?
2024/03/24(日) 16:15:58.78ID:E5rntJWS0
別の話なんだけど、数万行も何を割り当てるんや・・
自分2年くらい継ぎ足していって400~500行くらいだわ(無駄に長く書いてたりする)
自分2年くらい継ぎ足していって400~500行くらいだわ(無駄に長く書いてたりする)
2024/03/24(日) 17:00:23.78ID:AdHROLHT0
なにかの拍子に変わってしまう言語設定をAHKで変更することは可能でしょうか?
IME制御はライブラリでできたのですが、言語設定の変更がわかりませんでした。
OCRで英語が必要なので言語設定からENGを削除することはできない環境です。
よろしくお願いします
windows10
https://i.imgur.com/wWS2iRr.jpeg
IME制御はライブラリでできたのですが、言語設定の変更がわかりませんでした。
OCRで英語が必要なので言語設定からENGを削除することはできない環境です。
よろしくお願いします
windows10
https://i.imgur.com/wWS2iRr.jpeg
2024/03/24(日) 19:29:05.23ID:+JoNAiUb0
2024/03/24(日) 19:29:47.84ID:+JoNAiUb0
2024/03/25(月) 03:16:07.34ID:lxQsxfMV0
スクリプトに返信しようとすると止めてくれる方法が知りたい
2024/03/25(月) 06:34:41.45ID:fgOZ4+y40
まずスクリプトだと判定する方法を作ってください
2024/03/25(月) 11:18:37.35ID:62scAQsf0
>>256
ありがとうございます!
getは出来たんですがgoogleIME用の番号がわからずsetが出来ませんでした
ifさせて#{Space}で一旦良しと致します
a::
WinGet, WinID,, A
ThreadID:=DllCall("GetWindowThreadProcessId", "UInt", WinID, "UInt", 0)
InputLocaleID:=DllCall("GetKeyboardLayout", "UInt", ThreadID, "UInt")
If(!InputLocaleID){
WinActivate, ahk_class WorkerW
WinGet, WinID2,, ahk_class WorkerW
ThreadID:=DllCall("GetWindowThreadProcessId", "UInt", WinID2, "UInt", 0)
WinActivate, ahk_id %WinID%
InputLocaleID:=DllCall("GetKeyboardLayout", "UInt", ThreadID, "UInt")
}
MsgBox, %InputLocaleID%
Return
SetDefaultKeyboard(LocaleID){
Global
SPI_SETDEFAULTINPUTLANG := 0x005A
SPIF_SENDWININICHANGE := 2
Lan := DllCall("LoadKeyboardLayout", "Str", Format("{:08x}", LocaleID), "Int", 0)
VarSetCapacity(Lan%LocaleID%, 4, 0)
NumPut(LocaleID, Lan%LocaleID%)
DllCall("SystemParametersInfo", "UInt", SPI_SETDEFAULTINPUTLANG, "UInt", 0, "UPtr", &Lan%LocaleID%, "UInt", SPIF_SENDWININICHANGE)
WinGet, windows, List
Loop %windows% {
PostMessage 0x50, 0, %Lan%, , % "ahk_id " windows%A_Index%
}
}
ありがとうございます!
getは出来たんですがgoogleIME用の番号がわからずsetが出来ませんでした
ifさせて#{Space}で一旦良しと致します
a::
WinGet, WinID,, A
ThreadID:=DllCall("GetWindowThreadProcessId", "UInt", WinID, "UInt", 0)
InputLocaleID:=DllCall("GetKeyboardLayout", "UInt", ThreadID, "UInt")
If(!InputLocaleID){
WinActivate, ahk_class WorkerW
WinGet, WinID2,, ahk_class WorkerW
ThreadID:=DllCall("GetWindowThreadProcessId", "UInt", WinID2, "UInt", 0)
WinActivate, ahk_id %WinID%
InputLocaleID:=DllCall("GetKeyboardLayout", "UInt", ThreadID, "UInt")
}
MsgBox, %InputLocaleID%
Return
SetDefaultKeyboard(LocaleID){
Global
SPI_SETDEFAULTINPUTLANG := 0x005A
SPIF_SENDWININICHANGE := 2
Lan := DllCall("LoadKeyboardLayout", "Str", Format("{:08x}", LocaleID), "Int", 0)
VarSetCapacity(Lan%LocaleID%, 4, 0)
NumPut(LocaleID, Lan%LocaleID%)
DllCall("SystemParametersInfo", "UInt", SPI_SETDEFAULTINPUTLANG, "UInt", 0, "UPtr", &Lan%LocaleID%, "UInt", SPIF_SENDWININICHANGE)
WinGet, windows, List
Loop %windows% {
PostMessage 0x50, 0, %Lan%, , % "ahk_id " windows%A_Index%
}
}
2024/03/25(月) 11:19:48.15ID:QrP1etVG0
ChatGPTに判定させろ
2024/03/25(月) 11:20:38.99ID:99AArii00
WM_INPUTLANGCHANGEREQUESTをPostMessageするだけじゃね?
2024/03/25(月) 17:31:19.65ID:4pZ8MbfG0
>>254
そもそも入力言語が勝手に変更されるというのは
言語設定 → キーボード → 入力言語のホットキー → キーの詳細設定
で設定できる切り替えホットキーが有効になっているからではないでしょうか?
そもそも入力言語が勝手に変更されるというのは
言語設定 → キーボード → 入力言語のホットキー → キーの詳細設定
で設定できる切り替えホットキーが有効になっているからではないでしょうか?
2024/03/25(月) 19:57:53.41ID:w/SDjsvI0
v2で、
WinActivateでターゲットが無いときエラーが出るけど、
どうすればいいの?
WinActivateでターゲットが無いときエラーが出るけど、
どうすればいいの?
2024/03/25(月) 20:44:01.05ID:00x/6aJk0
>>263
対象ウィンドウの存在確認してWinActivateすりゃいいでしょ
対象ウィンドウの存在確認してWinActivateすりゃいいでしょ
2024/03/25(月) 21:09:26.43ID:i0MtlqlF0
2024/03/25(月) 21:18:16.41ID:i0MtlqlF0
>ウィンドウが見つからない場合は、TargetErrorがスローされます。
try catch
try catch
2024/03/26(火) 05:45:58.79ID:owXJUWUs0
ターゲットないときの処理面倒だから俺もtry catchにしちゃってるな
取りあえず走ってくれればそれでよし
取りあえず走ってくれればそれでよし
2024/03/26(火) 06:50:18.81ID:TX35muD50
2024/03/26(火) 07:26:59.64ID:vwx3Tle20
2024/03/26(火) 11:01:21.76ID:TX35muD50
2024/03/26(火) 11:59:50.70ID:tU8aEe3+0
数万行じゃなかったのかよw
2024/03/26(火) 12:16:30.61ID:I7pRNL1b0
1万が何個かあれば数万だろ
2024/03/26(火) 13:08:46.21ID:NgAIFXau0
数万行おじさん
ようやく重い腰を上げるの巻
ようやく重い腰を上げるの巻
2024/03/26(火) 13:38:23.03ID:9IFNMclZ0
数万行おじさんの人気に嫉妬
> デジタル空間の構造や弊害を表す用語の認知率も調査。
今日の読売の記事だけど、正確さより関心を集めることを重視する「アテンション・エコノミー」の用語知ってる?
日本の認知率5%、米国40%、韓国33%
> デジタル空間の構造や弊害を表す用語の認知率も調査。
今日の読売の記事だけど、正確さより関心を集めることを重視する「アテンション・エコノミー」の用語知ってる?
日本の認知率5%、米国40%、韓国33%
2024/03/26(火) 13:58:58.90ID:z+3EYLdz0
皆さんのお知恵を拝借させてください
下記のフォーラムで見つけたv2スクリプトについてです
●Keyboard layout RShift+LShift - AutoHotkey Community
https://www.autohotkey.com/boards/viewtopic.php?style=1&f=82&t=114476
----------------ここから------------------
LShift & RShift::
RShift & LShift::changeLayout()
changeLayout() {
Static on := False
WM_INPUTLANGCHANGEREQUEST := 0x50
INPUTLANGCHANGE_FORWARD := 0x02
PostMessage WM_INPUTLANGCHANGEREQUEST, INPUTLANGCHANGE_FORWARD, 0,, ControlGetFocus('A') || WinExist('A')
}
----------------ここまで------------------
入力言語は「日本語(ATOK2017)」「ES(スペイン語)」「日本語(Microsoft-IME)」の三つです
左右Shiftキーで入力言語を切り替えるスクリプトで、たいていの場合は正しく動作してくれます
ところが秀丸エディタ(Hidemaru.exe)、またはWPS Office 2(wps.exe, et,exe, wpp.exe)がアクティブな場合はなぜかまったく動作しません
そのほかのウィンドウ(試した限りではGoogle Chrome、あふw、foobar2000、fenrir)では正しく動作します
フォーラムでは(別の人に対するアドバイスでしたが)「ControlGetFocus('A') || WinExist('A')」の代わりに「WinExist('A')」を単独で指定してはどうかという助言がありました
試してみましたが結果は変わらず
OSの入力言語ホットキーは「LAlt+Shift」に設定してあり、これを使えばどのウインドウがアクティブでも切り替えられます
ただ、ほかのAutoHotkeyのホットキーと干渉することがあるのでLShift & RShiftで代用したいのです
特に秀丸エディタとWPS Office 2を最も多用するので、解決方法がわからず途方に暮れています
どなたか解決方法をご存じのかた教えていただければ嬉しいです
下記のフォーラムで見つけたv2スクリプトについてです
●Keyboard layout RShift+LShift - AutoHotkey Community
https://www.autohotkey.com/boards/viewtopic.php?style=1&f=82&t=114476
----------------ここから------------------
LShift & RShift::
RShift & LShift::changeLayout()
changeLayout() {
Static on := False
WM_INPUTLANGCHANGEREQUEST := 0x50
INPUTLANGCHANGE_FORWARD := 0x02
PostMessage WM_INPUTLANGCHANGEREQUEST, INPUTLANGCHANGE_FORWARD, 0,, ControlGetFocus('A') || WinExist('A')
}
----------------ここまで------------------
入力言語は「日本語(ATOK2017)」「ES(スペイン語)」「日本語(Microsoft-IME)」の三つです
左右Shiftキーで入力言語を切り替えるスクリプトで、たいていの場合は正しく動作してくれます
ところが秀丸エディタ(Hidemaru.exe)、またはWPS Office 2(wps.exe, et,exe, wpp.exe)がアクティブな場合はなぜかまったく動作しません
そのほかのウィンドウ(試した限りではGoogle Chrome、あふw、foobar2000、fenrir)では正しく動作します
フォーラムでは(別の人に対するアドバイスでしたが)「ControlGetFocus('A') || WinExist('A')」の代わりに「WinExist('A')」を単独で指定してはどうかという助言がありました
試してみましたが結果は変わらず
OSの入力言語ホットキーは「LAlt+Shift」に設定してあり、これを使えばどのウインドウがアクティブでも切り替えられます
ただ、ほかのAutoHotkeyのホットキーと干渉することがあるのでLShift & RShiftで代用したいのです
特に秀丸エディタとWPS Office 2を最も多用するので、解決方法がわからず途方に暮れています
どなたか解決方法をご存じのかた教えていただければ嬉しいです
2024/03/26(火) 14:10:34.52ID:9IFNMclZ0
なぜスペイン語?あなたはスペイン人?
277275
2024/03/26(火) 14:17:45.84ID:z+3EYLdz0 日本人ですが毎日スペイン語を読み書きしております
生成AI(Copilot, Gemini, リートン)にも質問しましたがCopilotは修正後のスクリプトが修正前と同一でした(涙)
Geminiは以下の修正案を示してくれましたが A_Guiがエラー
LShift & RShift::
RShift & LShift::
{
if (A_Gui = "Hidemaru.exe") {
; Hidemaru.exe がアクティブの場合
SendMessage 0x11, 0x50, 0x02,, Hidemaru
} else {
; それ以外の場合
changeLayout()
}
そこで下記のように自力で修正してみましたがやはり動作しません
if WinActive("Hidemaru.exe") {
; Hidemaru.exe がアクティブの場合
SendMessage 0x11, 0x50, 0x02,, "秀丸"
} else {
; それ以外の場合
changeLayout()
}
リートン(wrtn)は「秀丸エディタの公式ドキュメントを見ろ」とけんもほろろでした
生成AI(Copilot, Gemini, リートン)にも質問しましたがCopilotは修正後のスクリプトが修正前と同一でした(涙)
Geminiは以下の修正案を示してくれましたが A_Guiがエラー
LShift & RShift::
RShift & LShift::
{
if (A_Gui = "Hidemaru.exe") {
; Hidemaru.exe がアクティブの場合
SendMessage 0x11, 0x50, 0x02,, Hidemaru
} else {
; それ以外の場合
changeLayout()
}
そこで下記のように自力で修正してみましたがやはり動作しません
if WinActive("Hidemaru.exe") {
; Hidemaru.exe がアクティブの場合
SendMessage 0x11, 0x50, 0x02,, "秀丸"
} else {
; それ以外の場合
changeLayout()
}
リートン(wrtn)は「秀丸エディタの公式ドキュメントを見ろ」とけんもほろろでした
2024/03/26(火) 19:25:58.46ID:aqiYnqLI0
2024/03/26(火) 19:37:18.35ID:aqiYnqLI0
あとLShft&RShiftを秀丸に持っていかれてる可能性もあるか?
280275
2024/03/26(火) 20:16:52.07ID:z+3EYLdz0 >>278 >>289
レスありがとうございます
秀丸とWPS Office 2以外のソフトでは正しく動作するので
WinExist()やWinActive()は秀丸に対して効いているのだと思います
試しに以下のように ahk_exe と ahk_class でもウィンドウを指定してみましたがやはり無反応でした。
{
window := "ahk_exe Hidemaru.exe"
; window := "ahk_class Hidemaru32Class"
if WinActive(window) {
; Hidemaru.exe がアクティブの場合
SendMessage 0x11, 0x50, 0x02,, window
} else {
; それ以外の場合
changeLayout()
}
LShft&RShiftが秀丸に持っていかれている可能性についてはわかりませんが
秀丸側ではどちらもキー割り当てはしていません
レスありがとうございます
秀丸とWPS Office 2以外のソフトでは正しく動作するので
WinExist()やWinActive()は秀丸に対して効いているのだと思います
試しに以下のように ahk_exe と ahk_class でもウィンドウを指定してみましたがやはり無反応でした。
{
window := "ahk_exe Hidemaru.exe"
; window := "ahk_class Hidemaru32Class"
if WinActive(window) {
; Hidemaru.exe がアクティブの場合
SendMessage 0x11, 0x50, 0x02,, window
} else {
; それ以外の場合
changeLayout()
}
LShft&RShiftが秀丸に持っていかれている可能性についてはわかりませんが
秀丸側ではどちらもキー割り当てはしていません
2024/03/26(火) 20:42:21.80ID:aqiYnqLI0
2024/03/26(火) 20:44:47.62ID:vJWIf0nD0
>>275
結論から言うとその方法ではおそらく不可能です
WM_INPUTLANGCHANGEREQUESTによる入力言語の変更を受け付けるか拒否するかは
アプリ側によって制御されており、アプリによって挙動が異なるためです
2バイト語圏ではIMEとの兼ね合いもあり、受け付けないアプリは結構有りそうな気もします
したがって、別の方法として単純なのは#{Space}をSendするか
Windousの切り替えホットキーで各言語ごとに別な物(LAlt+Shift+数字などの競合がなさそうな奴)を設定し
LShift & RShiftだけで変更するなら押下ごとに順番にそれらのキーをSendするスクリプトを組むのが無難な方法となります
あと、現状のAIはAHKについて独自学習でもさせない限り、間違いだらけで使い物になりません
AIの間違いを引きずって、途中からSendMessageで送るMsgが0x11になっていますが、これはWM_QUERYENDSESSIONであり本件とは全く関係ないものです
結論から言うとその方法ではおそらく不可能です
WM_INPUTLANGCHANGEREQUESTによる入力言語の変更を受け付けるか拒否するかは
アプリ側によって制御されており、アプリによって挙動が異なるためです
2バイト語圏ではIMEとの兼ね合いもあり、受け付けないアプリは結構有りそうな気もします
したがって、別の方法として単純なのは#{Space}をSendするか
Windousの切り替えホットキーで各言語ごとに別な物(LAlt+Shift+数字などの競合がなさそうな奴)を設定し
LShift & RShiftだけで変更するなら押下ごとに順番にそれらのキーをSendするスクリプトを組むのが無難な方法となります
あと、現状のAIはAHKについて独自学習でもさせない限り、間違いだらけで使い物になりません
AIの間違いを引きずって、途中からSendMessageで送るMsgが0x11になっていますが、これはWM_QUERYENDSESSIONであり本件とは全く関係ないものです
283275
2024/03/27(水) 05:35:52.30ID:ZkJNtuaj0284名無しさん@お腹いっぱい。
2024/03/27(水) 14:40:01.10ID:yhT9rfuB0 買い物板にはすーまん(のう)爺がいる
ここのはすーまん(ぎょう)爺がいる
ここのはすーまん(ぎょう)爺がいる
2024/03/27(水) 22:36:17.04ID:RWe9VsoB0
まずふかしてるだけで全部あわせても数千行ないと思うけど
行数が多いと自慢になると思ってそうなところがなんとも
そういう人って信じられない方法で行数が膨らんでたりする
チェックしたら10分の1ならまだしも1行や0行になることもままある
行数が多いと自慢になると思ってそうなところがなんとも
そういう人って信じられない方法で行数が膨らんでたりする
チェックしたら10分の1ならまだしも1行や0行になることもままある
2024/03/27(水) 23:11:41.89ID:+bxDlqU20
数万行おじさんに釣られすぎ
どれだけ釣られたら気が済むの?
どれだけ釣られたら気が済むの?
2024/03/28(木) 00:07:10.45ID:JdVW09NL0
ちょっと気になったのでカウントしてみました
拾い物をIncludeしてる分も含まれていますが、私の環境ではこういう結果が出たので
別に数万行程度ならふかしでもなんでもないと思います
folder := ".\AutoHotkey\v2\Script" ; v2: 48912
; folder := ".\AutoHotkey\Script" ; v1: 96625
line_count := 0
loop files folder "\*.ahk", "FR"{
_file := FileOpen(A_LoopFileFullPath, "r")
while !_file.AtEOF
if !(_file.ReadLine() ~= "^(\s*[;/\*]|\s*$)") ; コメント行(複数行コメントは考慮されてない)、空行を無視
line_count++
_file.Close()
}
MsgBox(line_count)
拾い物をIncludeしてる分も含まれていますが、私の環境ではこういう結果が出たので
別に数万行程度ならふかしでもなんでもないと思います
folder := ".\AutoHotkey\v2\Script" ; v2: 48912
; folder := ".\AutoHotkey\Script" ; v1: 96625
line_count := 0
loop files folder "\*.ahk", "FR"{
_file := FileOpen(A_LoopFileFullPath, "r")
while !_file.AtEOF
if !(_file.ReadLine() ~= "^(\s*[;/\*]|\s*$)") ; コメント行(複数行コメントは考慮されてない)、空行を無視
line_count++
_file.Close()
}
MsgBox(line_count)
2024/03/28(木) 00:23:32.04ID:YCIZpHlN0
どんな場合でも数万行がありえないってことじゃなくて
今までの書きようと後釣り宣言から人物を推測してだから
はじめの頃は数千行くらいってたしか言ってたはず
今までの書きようと後釣り宣言から人物を推測してだから
はじめの頃は数千行くらいってたしか言ってたはず
2024/03/28(木) 02:25:49.88ID:1v6RC2390
他人のスクリプトの行数を知った所で自分のスクリプトの行数が削減できる訳じゃないんだからどうでもいい
2024/03/28(木) 04:17:14.29ID:xquxRxLz0
ahk2って自作クラスのメソッド名のtypoって簡単に検出できるようになった?
ahk1のあの対処法って無理やり過ぎて好きじゃない
ahk1のあの対処法って無理やり過ぎて好きじゃない
291名無しさん@お腹いっぱい。
2024/03/28(木) 08:17:59.17ID:VUTDFrpt0 数万行ってどんなスクリプト書いてるの?
何か凝ってるものでも作ってるのかな?
何か凝ってるものでも作ってるのかな?
2024/03/28(木) 08:26:48.80ID:dVWRJBIg0
数百行のものが100ファイルとか多数あるって話じゃねえの? 永く使ってればそのくらい成果物があっても不思議じゃない。
2024/03/28(木) 08:38:57.22ID:2Y6Nh9zp0
問題は数万行書くような人間がv2の利点をしつこく他人に聞いたり
ドキュメント読めなかったり、try catchを知らなかったりするところ
ちなみにtry catchはv1でも使える
ドキュメント読めなかったり、try catchを知らなかったりするところ
ちなみにtry catchはv1でも使える
2024/03/28(木) 15:19:26.68ID:FGilsNWg0
改めて考えると自分のスクリプトの行数かぞえたことねえな
別に凝ってるつもりないけど長く使ってるから
もらってきたinclude分除いてもそこそこの量になってるかも
別に凝ってるつもりないけど長く使ってるから
もらってきたinclude分除いてもそこそこの量になってるかも
2024/03/28(木) 16:22:21.51ID:/PURKRos0
行数で検索したらソフトが見つかるぜ
Text Analyzer
テキストの簡単な解析(文字数,行数,英単語数,原稿用紙枚数のカウント等)
www.vector.co.jp/soft/win95/util/se144972.html
ソースカウンター
プログラムのソースコードのステップ数(行数)、工数、コスト、品質指標などをカウントする
www.vector.co.jp/soft/winnt/prog/se465566.html
ファイル行数取得
フォルダ内のすべてのファイル行数を一発で取得できる
www.vector.co.jp/soft/winnt/util/se515117.html
Text Analyzer
テキストの簡単な解析(文字数,行数,英単語数,原稿用紙枚数のカウント等)
www.vector.co.jp/soft/win95/util/se144972.html
ソースカウンター
プログラムのソースコードのステップ数(行数)、工数、コスト、品質指標などをカウントする
www.vector.co.jp/soft/winnt/prog/se465566.html
ファイル行数取得
フォルダ内のすべてのファイル行数を一発で取得できる
www.vector.co.jp/soft/winnt/util/se515117.html
2024/03/28(木) 17:16:07.15ID:SPWTWBsA0
行数というか、メイン常駐スクリプトがどれくらい肥えてるのかは気になってるんだけど
細分化した関数ライブラリが相互に関数ライブラリ呼びあってて自分でも把握できない
細分化した関数ライブラリが相互に関数ライブラリ呼びあってて自分でも把握できない
2024/03/28(木) 19:20:27.22ID:sMyEWgq00
2024/03/28(木) 22:02:39.43ID:PyHjCKEC0
答える必要ないのに?
2024/03/29(金) 19:57:42.09ID:6bhdgypd0
この手の車外投げ出し…
やはり高配当株が正義よ😁
押し目ほしい
クロスコジキより市場の判定基準に株主では何人かいるんだけど
やはり高配当株が正義よ😁
押し目ほしい
クロスコジキより市場の判定基準に株主では何人かいるんだけど
300名無しさん@お腹いっぱい。
2024/03/29(金) 20:16:59.40ID:giD+H7yb0 これまでの流れを感じるw
301名無しさん@お腹いっぱい。
2024/03/29(金) 20:35:20.00ID:eLEi0YLO0 帰宅したら一転売り煽って売り抜ける嵌め込み宣言って堂々としてはスルーで
2024/03/29(金) 20:43:46.13ID:92LaZoxb0
303名無しさん@お腹いっぱい。
2024/03/29(金) 20:52:14.14ID:RefSPZ7h0 たまに10秒ほど考えた上で昼で早退すると言った結果なんだよね関係絶つって
ニコルンだって
この世に逃げとけ
ニコルンだって
この世に逃げとけ
304名無しさん@お腹いっぱい。
2024/03/29(金) 21:18:09.05ID:aPjnUBAM0 そういうのは特に悪質なのに
2024/03/29(金) 21:18:30.74ID:aPjnUBAM0
#GASYLE七不思議
そこに何が言いたいことだけみんな呟いてる。
まあ無策で打たれて2日目
波の上で
そこに何が言いたいことだけみんな呟いてる。
まあ無策で打たれて2日目
波の上で
306名無しさん@お腹いっぱい。
2024/03/29(金) 21:22:18.02ID:+CS66I/m0 私さんは悪くないよ
2024/03/30(土) 04:28:55.18ID:FoKMRlfX0
例外使ってないって正気かよ
雑なコードほど例外投げまくったほうがいいぞ
ハッシュにユニークIDと失敗の原因となった変数仕込んで投げるの超おすすめ
catchかOnError側で文字列にしてFileAppend&OutputDebugすると原因特定が楽になる
; sが空なら死ね
if(!s)
throw {addr:"5uAqrUWO"}
; vに値をセットできなかったら死ね
if(RegExMatch(s, "\d\d\d", D))
v := D1
else
throw {addr:"vkukyGew", s:s}
; MyFuncで例外が発生したら死ね
try {
ret := MyFunc(v)
} catch e {
throw {addr:"pbzYMT8R", inner_e:e, v:v}
}
; WinWaitが失敗したら死ね
Run, calc.exe
WinWait,ahk_exe calc.exe,,10
if ErrorLevel
throw {addr:"BX0BMy0u"}
雑なコードほど例外投げまくったほうがいいぞ
ハッシュにユニークIDと失敗の原因となった変数仕込んで投げるの超おすすめ
catchかOnError側で文字列にしてFileAppend&OutputDebugすると原因特定が楽になる
; sが空なら死ね
if(!s)
throw {addr:"5uAqrUWO"}
; vに値をセットできなかったら死ね
if(RegExMatch(s, "\d\d\d", D))
v := D1
else
throw {addr:"vkukyGew", s:s}
; MyFuncで例外が発生したら死ね
try {
ret := MyFunc(v)
} catch e {
throw {addr:"pbzYMT8R", inner_e:e, v:v}
}
; WinWaitが失敗したら死ね
Run, calc.exe
WinWait,ahk_exe calc.exe,,10
if ErrorLevel
throw {addr:"BX0BMy0u"}
2024/03/30(土) 11:47:10.60ID:URmIUmXi0
アフォか
AutoHotkey(AHK)のとことを何と呼ぶ?
AutoHotkey(AHK)のとことを何と呼ぶ?
2024/03/30(土) 11:48:07.44ID:URmIUmXi0
アホか
2024/03/30(土) 11:50:10.91ID:RGvUfHCk0
>>283
書き込み不可だったので遅レスです。既に結論は出たようですが、念のため以下のスクリプト、キーボード、秀丸エディタで試してみました。
v1スクリプト
Rshift & Lshift:: ;右から左に縦書きすることもありえる言語のイメージ
ja := DllCall("LoadKeyboardLayout", "Str", "00000411", "Int", 1)
PostMessage 0x50, 0, ja,, A
Return
Lshift & Rshift:: ;左から右に横書きする言語のイメージ
es := DllCall("LoadKeyboardLayout", "Str", "0000040a", "Int", 1)
PostMessage 0x50, 0, es,, A
Return
キーボード
JP 日本語 - MS-IME
ES スペイン語(インターナショナルソート) - スペイン語
秀丸エディタ 32ビット v9.32
以上の組み合せで日本語とスペイン語の切り替えができました。後はMS-IMEとATOKの切り替えルーチンを加えるといいと思います。
書き込み不可だったので遅レスです。既に結論は出たようですが、念のため以下のスクリプト、キーボード、秀丸エディタで試してみました。
v1スクリプト
Rshift & Lshift:: ;右から左に縦書きすることもありえる言語のイメージ
ja := DllCall("LoadKeyboardLayout", "Str", "00000411", "Int", 1)
PostMessage 0x50, 0, ja,, A
Return
Lshift & Rshift:: ;左から右に横書きする言語のイメージ
es := DllCall("LoadKeyboardLayout", "Str", "0000040a", "Int", 1)
PostMessage 0x50, 0, es,, A
Return
キーボード
JP 日本語 - MS-IME
ES スペイン語(インターナショナルソート) - スペイン語
秀丸エディタ 32ビット v9.32
以上の組み合せで日本語とスペイン語の切り替えができました。後はMS-IMEとATOKの切り替えルーチンを加えるといいと思います。
2024/03/30(土) 12:54:15.92ID:XFC4V0k20
それって秀丸エディタ32ビットでしか動かないの?
全ソフト32/64で動くのならいい方法と思った
全ソフト32/64で動くのならいい方法と思った
2024/03/30(土) 14:34:10.90ID:RGvUfHCk0
2024/03/30(土) 16:07:20.59ID:cITqqdTX0
>>310
これキーボードの値どうやって調べました?言語の数値だけですかね?
https://learn.microsoft.com/ja-jp/openspecs/windows_protocols/ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f
ATOKやGoogleIME見つけたい
これキーボードの値どうやって調べました?言語の数値だけですかね?
https://learn.microsoft.com/ja-jp/openspecs/windows_protocols/ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f
ATOKやGoogleIME見つけたい
314名無しさん@お腹いっぱい。
2024/03/30(土) 16:38:05.16ID:Fxgo8P3E0 ナイスですねb
しかしJUKIナンピンシタ助かってましたって判断出来るのではないと自分がメンバー内で手マンしてたね
しかしJUKIナンピンシタ助かってましたって判断出来るのではないと自分がメンバー内で手マンしてたね
315名無しさん@お腹いっぱい。
2024/03/30(土) 16:42:48.47ID:GDS/D8VD0 いい加減うざい
女性週刊誌やゴシップ以上政治混乱をもたらした一因でも言われてるような気がする
女性週刊誌やゴシップ以上政治混乱をもたらした一因でも言われてるような気がする
316275
2024/03/30(土) 16:43:28.60ID:bKmQMs/80 >>310
レスありがとうございます
>>275に明記しておきましたがv2のスクリプトが欲しかったので、以下のようにAHK-v2-script-converter-masterでv2に変換して実行してみましたが残念ながら入力言語の切替はできませんでした
v2スクリプト
Rshift & Lshift:: ;右から左に縦書きすることもありえる言語のイメージ
{ ; V1toV2: Added bracket
ja := DllCall("LoadKeyboardLayout", "Str", "00000411", "Int", 1)
PostMessage(0x50, 0, ja, , "A")
Return
} ; V1toV2: Added Bracket before hotkey or Hotstring
Lshift & Rshift:: ;左から右に横書きする言語のイメージ
{ ; V1toV2: Added bracket
es := DllCall("LoadKeyboardLayout", "Str", "0000040a", "Int", 1)
PostMessage(0x50, 0, es, , "A")
Return
} ; V1toV2: Added bracket in the end
当方の環境は秀丸エディタ(32bit) v9.32、ATOK2017です
もしかするとATOKのバージョンが古すぎるのかな
レスありがとうございます
>>275に明記しておきましたがv2のスクリプトが欲しかったので、以下のようにAHK-v2-script-converter-masterでv2に変換して実行してみましたが残念ながら入力言語の切替はできませんでした
v2スクリプト
Rshift & Lshift:: ;右から左に縦書きすることもありえる言語のイメージ
{ ; V1toV2: Added bracket
ja := DllCall("LoadKeyboardLayout", "Str", "00000411", "Int", 1)
PostMessage(0x50, 0, ja, , "A")
Return
} ; V1toV2: Added Bracket before hotkey or Hotstring
Lshift & Rshift:: ;左から右に横書きする言語のイメージ
{ ; V1toV2: Added bracket
es := DllCall("LoadKeyboardLayout", "Str", "0000040a", "Int", 1)
PostMessage(0x50, 0, es, , "A")
Return
} ; V1toV2: Added bracket in the end
当方の環境は秀丸エディタ(32bit) v9.32、ATOK2017です
もしかするとATOKのバージョンが古すぎるのかな
2024/03/30(土) 16:50:30.27ID:RGvUfHCk0
>>313
https://nixeneko.hatenablog.com/?page=1517587368(規制のため全角です)
を参照してください。そこからのコピペですが、
F10::
SetFormat, Integer, H
WinGet, WinID,, A
ThreadID:=DllCall("GetWindowThreadProcessId", "UInt", WinID, "UInt", 0)
InputLocaleID:=DllCall("GetKeyboardLayout", "UInt", ThreadID, "UInt")
Send, %InputLocaleID%
Return
実行すると、
MS-IME → 0x4110411
Japanist2003 → 0xE0210411
が得られます。atok、googleIMEは使ってません、あしからず。
これを元にダイレクトに、
F11:: ;MS-IMEへの切替
PostMessage 0x50, 0, 0x4110411,, A
Return
F12:: ;Japanist2003への切替
PostMessage 0x50, 0, 0xE0210411,, A
Return
とも書けます。
https://nixeneko.hatenablog.com/?page=1517587368(規制のため全角です)
を参照してください。そこからのコピペですが、
F10::
SetFormat, Integer, H
WinGet, WinID,, A
ThreadID:=DllCall("GetWindowThreadProcessId", "UInt", WinID, "UInt", 0)
InputLocaleID:=DllCall("GetKeyboardLayout", "UInt", ThreadID, "UInt")
Send, %InputLocaleID%
Return
実行すると、
MS-IME → 0x4110411
Japanist2003 → 0xE0210411
が得られます。atok、googleIMEは使ってません、あしからず。
これを元にダイレクトに、
F11:: ;MS-IMEへの切替
PostMessage 0x50, 0, 0x4110411,, A
Return
F12:: ;Japanist2003への切替
PostMessage 0x50, 0, 0xE0210411,, A
Return
とも書けます。
318名無しさん@お腹いっぱい。
2024/03/30(土) 16:51:21.75ID:MyKXncxY0 一定以上の違法有害情報の通報窓口(携帯)
「選挙当選しました
自分もお試しならありかとも思ってわざわざ顔見せしてるのに髪色変える必要あるな
家とか建てるとき
https://i.imgur.com/5p0Zbyf.png
「選挙当選しました
自分もお試しならありかとも思ってわざわざ顔見せしてるのに髪色変える必要あるな
家とか建てるとき
https://i.imgur.com/5p0Zbyf.png
319名無しさん@お腹いっぱい。
2024/03/30(土) 17:02:26.05ID:zF1pt4y70 別にフィギュア枠じゃない
どこかで説明したほうを持ってインターネットを使ってたからね
どこかで説明したほうを持ってインターネットを使ってたからね
2024/03/30(土) 17:06:48.19ID:RGvUfHCk0
>>316
当方、Windows2000からWindows11まで全てで動くアプリをどんなに古くても使うことにしてますので、v1からv2へ移行しておらず、お力になれません、あしからず。
でも、海外のForumとかにv2スクリプトが落ちてる可能性は十分にあると思います。
当方、Windows2000からWindows11まで全てで動くアプリをどんなに古くても使うことにしてますので、v1からv2へ移行しておらず、お力になれません、あしからず。
でも、海外のForumとかにv2スクリプトが落ちてる可能性は十分にあると思います。
321名無しさん@お腹いっぱい。
2024/03/30(土) 17:11:23.82ID:9ZFPu3+502024/03/30(土) 17:12:26.28ID:nl1XHY0e0
>>115
時間なくてもチートだし見た目だけ綺麗にした意味ないならままによんでもらってね
時間なくてもチートだし見た目だけ綺麗にした意味ないならままによんでもらってね
2024/03/30(土) 17:20:36.72ID:bAeXUPMh0
2024/03/30(土) 17:27:10.82ID:8C794JDN0
あー飛行機代高騰してるな
それ以上のもんだと思います
高い壺などと自殺を唆した疑い。
それ以上のもんだと思います
高い壺などと自殺を唆した疑い。
2024/03/30(土) 17:53:47.23ID:cITqqdTX0
>>317
ありがとうございます、これで行けました
PostMessage 0x50, 0, 0x4110411,, A
googleime:0x4110411
ENGラングパック:0x4090409
ありがとうございます、これで行けました
PostMessage 0x50, 0, 0x4110411,, A
googleime:0x4110411
ENGラングパック:0x4090409
326名無しさん@お腹いっぱい。
2024/03/30(土) 18:52:36.22ID:eV5dwt7a0 そきるむさぬうさなたきくいもさおかきまたうくうめたみもを
2024/03/30(土) 18:57:21.18ID:tTaEiJXP0
下手に金かけちゃったから、あいつらの非道さは良く知っている。
328名無しさん@お腹いっぱい。
2024/03/30(土) 19:15:44.46ID:UejXdpuq0 パソコンでサロンやばそう
今それしか確実な出演情報が漏れてこのシステム会社変えた場合どうなるかわからないんだから引退したんだ
おそらくクロス乞食の餌になってる
今それしか確実な出演情報が漏れてこのシステム会社変えた場合どうなるかわからないんだから引退したんだ
おそらくクロス乞食の餌になってる
2024/03/30(土) 23:27:16.98ID:T0MhbRBB0
>>318
グロ
グロ
2024/03/31(日) 08:14:18.20ID:litUnXSs0
質問があります。AutoHotkeyのバージョンは「1.1」です。
;「スペース+3」が押されたら、「Alt+Enter」が押されたことにする(選択中のファイルやフォルダのプロパティを開く)。
Space & 3::Send,!{Enter}
↑このスクリプトだと動作するのですが、できれば「Alt+Enter」ではなく「Alt+マウスのダブルクリック」にしたいです。
;「スペース+3」が押されたら、「Alt+マウスのダブルクリック」をしたことにする(ポイントしたファイルやフォルダのプロパティを開く)。
Space & 3::
Send,!
MouseClick,Left,,,2
Return
↑このようなスクリプトを書いたのですが、うまく動作しませんでした。どう書けば動作しますか?
;「スペース+3」が押されたら、「Alt+Enter」が押されたことにする(選択中のファイルやフォルダのプロパティを開く)。
Space & 3::Send,!{Enter}
↑このスクリプトだと動作するのですが、できれば「Alt+Enter」ではなく「Alt+マウスのダブルクリック」にしたいです。
;「スペース+3」が押されたら、「Alt+マウスのダブルクリック」をしたことにする(ポイントしたファイルやフォルダのプロパティを開く)。
Space & 3::
Send,!
MouseClick,Left,,,2
Return
↑このようなスクリプトを書いたのですが、うまく動作しませんでした。どう書けば動作しますか?
2024/03/31(日) 08:31:52.69ID:jJ258atK0
{alt down}, {alt up} で挟んだらイケるんちゃうか?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 衝撃事実発覚!「まだ織田翔希はメジャー交渉に必要な国際アマチュアFAの対象選手登録をしていない」メジャー挑戦断念? [征夷大将軍★]
- 今後の防衛費「増額」の中身は削 れない固定費5年で30兆円、続く爆買い「兵器ローン」…負担は国民へ [蚤の市★]
- 【日本ハム】水谷瞬、吉田賢吾、今川優馬、エドポロ・ケインらに「野球賭博」疑惑 窃盗事案も指摘のファンアカウントSNS投稿が波紋 [ぐれ★]
- 【速報】巨人 高橋由伸氏にヘッドコーチ就任要請! 松井秀喜新監督の「1人だけ声をかけています」は高橋由伸氏… 超豪華内閣が実現へ [冬月記者★]
- 【衆院定数31減】国民が容認に傾く 野党が反発、参政も「党利党略」 [蚤の市★]
- 【消費税減税】審議本格化 示さぬ財源、議論かみ合わず [蚤の市★]
- 朝青龍「日本のマスコミ、モンゴルにいらっしゃい。」 [256556981]
- 【北海道】撮り鉄日本人男性の桜庭駿(25)、撮影の邪魔になる5メートルの木をチェンソーで勝手に伐採し逮捕 [485187932]
- 税務署職員(25)職務で金持ちの婆さんと知り合い嘘をついて1億5千万円を騙し取る。ちなみに9割競艇にぶっこんだ [389326466]
- 【ドラレコ】すまんこの事故はどうすれば回避できたんだ? [597533159]
- 柏レイソル🏡
- 【高市疑問】もし日本人全員が週休4日になったらどうなるんだ? ※漫画のオマケ付き [454087802]