18/12/05 22:26:29.53 RL2mocpi0.net
そういうことする奴も出てきたか
これは始まりに過ぎないのであった…
622:名無しさん@お腹いっぱい。
18/12/05 22:40:41.51 83UCgxJ10.net
ん、AHKで作ったexe配布ってなんかまずいことあるんだっけ
ゲームの操作性向上スクリプトとか作って攻略スレでばらまいたこととかあるんだが
623:名無しさん@お腹いっぱい。
18/12/05 22:54:04.42 WmdiFMyj0.net
別にいいんじゃないの。自分はAHKベースのソフトは、MouseGestureLやClipboardHistory使ってるよ
使ってないけど、DvorakJも割とユーザーいるみたい
ただ、enthumbleくらいの機能だったら自分で書いた方が早いしな�
624:[ まあそのあたり人それぞれかな
625:名無しさん@お腹いっぱい。
18/12/05 23:53:37.72 whPBY0AD0.net
exe作って配布自体は問題ないけどAHKのライセンス(GNU GPLv2)的には
派生物もソース公開しないとまずい気がする
URLリンク(qiita.com)
URLリンク(www.gnu.org)
あれ?これ結構やばくない?
626:名無しさん@お腹いっぱい。
18/12/05 23:54:22.14 f/SDbl4I0.net
中身AHKでフロントエンドだけちょっと作って金取ったろ!の精神は中々凄い
公式HPの開発ストーリーで、さも開発に苦労したような書き方で更に面白い
しかしこれなんでベクターだけお値段3000円なんていうプレミアム価格なんだろう。気になるw
627:名無しさん@お腹いっぱい。
18/12/06 00:01:55.82 Ym7iS5Jj0.net
clipboardhistoryもvectorでは集金箱置いてるんだな
それにしてもこれ知らん間にすげえ肥えたなあ
628:名無しさん@お腹いっぱい。
18/12/06 00:18:40.31 ONAtkcp00.net
GPLはソース公開義務はあれど営利利用を禁止してるわけではないから
スクリプト版も公開してるclipboardhistoryはセーフかな
(寄付を営利とみなすかどうかはとりあえず横に置いておく)
629:名無しさん@お腹いっぱい。
18/12/06 01:21:59.68 RQGp4gXya.net
派生物のソースは一般公開しなくても
バイナリ利用者から請求された時に渡せばいいんだが(3.c)
AHKがくっついてるのにその事を説明してなかったり(1.違反、2.a違反)
こいつ自身のライセンスがGPLじゃなかったり(2.b違反)
真っ黒だね
派生物の頒布に金取る事自体は全く違反じゃないが
630:名無しさん@お腹いっぱい。
18/12/06 02:16:20.22 GRt+N2Zj0.net
■ライセンス違反まとめ
*AutoHotkeyライセンス(GNU GPLv2)
URLリンク(autohotkey.com)
URLリンク(raw.githubusercontent.com)
*GNU GPL v2.0に関してよく聞かれる質問
URLリンク(www.gnu.org)
> GPLは、改変された版のソースコードを公に発表することを要求しますか?
もしあなたが改変された版を何らかの形で公にするならば、GPLはあなたが改変したソースコードをユーザがGPLのもとで入手できるようにすることを要求します。
> GPLは金銭目的でプログラムの複製を販売することを許可していますか?
はい。GPLは、誰もが販売することを許可しています。
> GPL違反の可能性がある事例を見つけたら、どうすれば良いですか?
その旨を報告してください。URLリンク(www.gnu.org)
631:名無しさん@お腹いっぱい。
18/12/06 02:18:45.94 GRt+N2Zj0.net
Clipboard History URLリンク(www.vector.co.jp)
enthumble URLリンク(www.vector.co.jp)
どちらもソフトウェアライセンス記載なし&最新ソースコードが公開されていないのでライセンス違反状態
632:名無しさん@お腹いっぱい。
18/12/06 07:24:23.83 4MBttEwN0.net
即逮捕やな
胸熱
633:名無しさん@お腹いっぱい。
18/12/06 08:46:59.55 +f9U38U10.net
刑事罰なの?
634:名無しさん@お腹いっぱい。
18/12/06 10:04:08.79 jbt9m6cq0.net
なんか大事になってるんだが
「AHKそのもの」を複製したり改変して配布したらソース公開必要だが
「AHKを利用して成果物」を作った場合には関係ないんじゃないの
なんかごっちゃにしてる気がするぞ
URLリンク(www.gnu.org)
このあたり参照
例えばGNU-Cを使ってゲームを作ったとして
そのゲームのソースコードを公開する義務は当然ないし商用利用も可能
ただしGNU-Cの派生物(オレ専用GNU-C)はソース公開義務が付く
635:名無しさん@お腹いっぱい。
18/12/06 10:52:30.69 tuRe2Yh8M.net
どうかな
スクリプトの配布だけなら確かに成果物だけど
Ahk2exeでコンパイルして作成されたexeにはAHKのバイナリ内包されているよね
改造されたautohotkey.exeとして派生物とみなされるんじゃなかろうか
636:名無しさん@お腹いっぱい。
18/12/06 11:28:38.89 UGStRDw6M.net
GCCとの違いはahkがインタプリタ型言語だということかな
実行にはAHKのバイナリが必要になる
だからコンパイルといってもAHKのバイナリにスプリクトテキストをくっつけてパック化してるだけだし
オブジェクトコード生成してバイナリ組み上げるGCCとは扱いが違ってくる気がする
637:名無しさん@お腹いっぱい。
18/12/06 12:26:08.34 SVb9Vxre0.net
インタプリタの場合はFAQに書いてある
URLリンク(www.gnu.org)
インタプリタとしてだけ使って、他のあらゆる機能は独自で実装しているのなら問題ない。そんなわけないんだけど。
それ以前に、ライセンスに書いてないのは論外。
638:名無しさん@お腹いっぱい。
18/12/06 12:56:07.36 DYoYzeaZa.net
>>604
.ahkだけの頒布なら関係ない
これがその例が当てはまるケース
でもexeにしたら集合著作物になってるからもろGPL対象
639:名無しさん@お腹いっぱい。
18/12/06 12:57:17.17 DYoYzeaZa.net
>>607
その例もインタプリタと本体が集合著作物になっていないときの話
640:名無しさん@お腹いっぱい。
18/12/06 14:49:55.67 ulzH/6dL0.net
URLリンク(autohotkey.com)
641:名無しさん@お腹いっぱい。
18/12/06 20:50:48.35 4MBttEwN0.net
はよ逮捕しようや
犯罪者は逮捕やで
642:名無しさん@お腹いっぱい。
18/12/06 22:07:25.06 LuFaM54m0.net
>>597
いつのを最後に見たかにもよるが、多分64bit版を追加して32/64bit版を同梱するようになったからじゃ…
32bit版だけならそこまでサイズが大きくなったというわけではないと思う
>>601
少なくともClipboard Historyは、ヘルプにAutoHotkeyを使ってることを明記してるから悪意はないと思うよ
厳密に言えばグレーという部分があるなら修正の必要はあるかもしれんけど
enthumbleは、公式・Readme等、自分が確認した限りではAutoHotkeyの文字列が見当たらないなw
643:名無しさん@お腹いっぱい。
18/12/06 22:46:25.85 ONAtkcp00.net
>>610
Q. ahk2exe.exeでコンパイルされたexeはGPL汚染される?.ahkを公開しないで.exeだけ頒布・販売してもいい?
Chris(AHK作者) : おkと言いたいが完全に大丈夫とは言い切れない
.exeに内包されるインタプリタ部はGPLコードを含むためGPLになるが
exe2ahk.exeでバイナリのインタプリタ部とプレーンテキストのユーザースクリプトに完全分離できるので一応それで対策したつもり
Lexikos(L版作者) : いやダメじゃね?1つのexeにまとめた段階で1プログラムとみなされるでしょ
ざっと読んだが要約するとこんなかな、結局グレーで決着ついてない感じ
ただ上の論点は.exe内のスプリクトコードをインタプリタ部と別ライセンスにできるかどうか、であって
インタプリタがAutohotkeyなのを隠して頒布していいことにはならないね
enthumbleはアウト
Clipboard HistoryはインタプリタがAutohotkeyなのは明示してるのでライセンスの記載追加でいけそう
ソースについては>599なので見えるところに公開してある必要はないし
644:名無しさん@お腹いっぱい。
18/12/06 23:16:54.77 vr7AcZsma.net
>>613
Chrisは最初exeはソースコードじゃないからGPLは及ばないとか言ってたり
ライセンスについてはあまり明るくないと思う。。。
1つのexeにしたらGPLが及ぶのはスクリプトをデータと考えるなどグレーになる余地があるとはいえ
ほとんど黒だよ
2つのファイルに分けて実行時にリンクさせてすらGPLは及ぶのに
FAQでもこう書いてある
URLリンク(www.gnu.org)
> モジュールが
645:同じ実行ファイルに含まれている場合、それらは言うまでもなく一つのプログラムに結合されています。 GPLは例外条項が付けられるんだから 作者がGPL汚染させる意図がないなら例外条項を付けておくべきなんだよな
646:名無しさん@お腹いっぱい。
18/12/06 23:35:33.39 jbt9m6cq0.net
ただグレーかアウトだとしても著作者が日本国外の人だし
訴えるつっても誰がどの国の機関に?って話になる
しかも作者はOKつってるんだしチクるとすればFSFだけど
財団にしてもそんな面倒な話持ち込むなってことになるだろう
小銭稼いでるのはうっとおしいにしろ黙認するしかないと思うよ
できることといえばベクターとかのDL支援してるサイトにチクって
掲載取り下げさせるくらいか
647:名無しさん@お腹いっぱい。
18/12/07 00:23:09.18 PAWRXI140.net
「AHK自体」を改変した訳ではないんだし、件のexeに内包されたAHKはただのランタイム扱いのような気がしないでもないが。。。
648:名無しさん@お腹いっぱい。
18/12/07 00:35:25.39 xhhWxiJ00.net
再三言われてるが小銭稼いでることはアウトじゃないぞ
まずは訴えるだの掲載取り下げ依頼だのの前に
GPLライセンスに抵触してることを本人達に伝えて正しく頒布するよう求めるのが先じゃね
あんさんのほうはオリジナルの古いahkでコンパイルしてるし
(L版で削除された/decompileオプションを使うため?)
中身がAHKであることを隠ぺいしようとしてる節があるから素直に認めるかはあやしいところだが
649:名無しさん@お腹いっぱい。
18/12/07 00:48:40.21 xhhWxiJ00.net
× /decompile
〇 /NoDecompile
やった
650:名無しさん@お腹いっぱい。
18/12/07 00:49:46.26 gOdb4Udn0.net
>>616
ってAHK作者自身がいってる
ここで問題にしてるのはAHKが取り込んでるライブラリ部分のこと
>>617
そんな暇なこと誰がやるのって話だろ
FSFの関係者でも無いやつがメールなりツイに凸して
「もしもしこんにちは。GPL違反してるみたいですが」ってやるのか?w
小銭云々は「うっとおしいにしろ」って書いてんだろ日本語読めない人?
651:名無しさん@お腹いっぱい。
18/12/07 01:34:30.61 xhhWxiJ00.net
とりあえずはツイなりquitaのコメントなりの人の目につくところで
「こんな議論がされてるようですよ」ってこのスレのURL貼ったらいいんでね
単純にライセンスに疎いだけだったらなんかしらアクション取るでしょ
ばっくれたらばっくれたでその時だし
それと、違反していないのだから「黙認」もなにもないよ
言葉の意味を正しく使わず人が理解してくれないと責めるのはどうかと
652:名無しさん@お腹いっぱい。
18/12/09 14:09:40.52 65nf1Y1x0.net
SetBatchLines, -1をA_BatchLinesで確認すると”-1”になりますが、これは0msと思って間違いないですか?。
653:名無しさん@お腹いっぱい。
18/12/09 17:36:52.47 izV3B+fS0.net
>>621
違います、なし(OFF)です
10ミリ秒のSleepを行う時間の設定なので
0msだと常にSleep状態という意味になってしまいます
654:名無しさん@お腹いっぱい。
18/12/09 18:19:49.17 65nf1Y1x0.net
ありがとうございます。
アホな私でもよく理解出来ました。
655:名無しさん@お腹いっぱい。
18/12/09 23:13:23.23 wMEkdD3J0.net
画面のスクリーンショットをbmpでとってスクリプトで指定した場所、名前で保存するいい方法ないですか
656:名無しさん@お腹いっぱい。
18/12/09 23:58:05.61 iDyiifYg0.net
>>624
GDI+ライブラリを利用する
BMPはサイズが大きいので同じ可逆圧縮のPNGがお勧め
Gdip_All.ahk
URLリンク(autohotkey.com)
657:名無しさん@お腹いっぱい。
18/12/10 00:02:45.55 qBoOLBEM0.net
>>625
やってみますありがとう!
658:名無しさん@お腹いっぱい。
2018/1
659:2/10(月) 01:47:31.02 ID:/p6elTeg0.net
660:名無しさん@お腹いっぱい。
18/12/10 10:09:34.34 CstvI9Ii0.net
PrintScreenをBMP保存するのは知識0からでもわりと簡単に書けたけど
32bitを24bitにしようとするとすさまじい時間がかかってしまう…
661:名無しさん@お腹いっぱい。
18/12/13 22:39:54.77 KyILgHLO0.net
Vectorから連絡きた
Vector カスタマーサポートセンターです。
弊社サービスをご利用いただきましてありがとうございます。
お問い合わせいただきました件、ご返答が遅くなり申し訳ございません。
AutoHotkeyのGPLの件、両ソフトの作者の方へ確認と修正の依頼を送らせて
頂きました。
対応が完了するまで、お時間を頂く可能性がございますので、今しばらく
お待ちいただけますでしょうか。
※現在、弊社都合により、サイト更新を金曜日のみとさせていただいて
おります。
作者の方に迅速に対応いただけた場合でも、サイトへの反映に時間が
かかる場合がございます。
ご了承ください。
以上となりますが、どうぞよろしくお願いいたします。
662:名無しさん@お腹いっぱい。
18/12/13 23:01:06.72 HRUClBM4a.net
有言実行惚れた
663:名無しさん@お腹いっぱい。
18/12/13 23:22:24.74 mLaQaXYy0.net
早く捕まって欲しいものだな
664:名無しさん@お腹いっぱい。
18/12/14 08:09:30.75 MSNidyJ40.net
GPLが絡むととたんに古事記がエキサイトし始めるからうんざり
早くこのゴミライセンス死滅すればいいのに
665:名無しさん@お腹いっぱい。
18/12/14 10:59:04.14 epMs6prq0.net
>>628
プログラムの知識全然ないけど、見よう見まねでimgctl.dll使ってスクショのpng出力を完成させた
別のやり方なら参考までにbmpのやり方を教えて欲しい
666:名無しさん@お腹いっぱい。
18/12/14 20:49:30.05 cL1b51zw0.net
>>633
言うても、GetClipboardDataしたやつをサイズ決め打ちのバッファにコピって
ヘッダも直書きして書き出してるだけなんで、なんの参考にもならないかと…
667:名無しさん@お腹いっぱい。
18/12/16 00:34:41.69 oez9GTdI0.net
流れ豚切スマソ
autohotkey で Windows10上のタスクスケジューラの imeモードの取得ができないので
あーだこーだと調べておりました。(ime.ahk使用)
どうやら、タスクスケジューラは、管理者権限で動作していたため、
非管理者権限で動作しているautohotkey のスクリプトは、
タスクスケジューラに対して何にもできなかった模様。
試しにnotepad.exeを管理者権限で動作させると、imeモードの取得ができなくなりましたし、
autohotkey のスクリプトを管理者権限で動作させたところ
タスクスケジューラや、管理者権限のnotepad.exeのimeモードの取得ができるように
なりました。
668:名無しさん@お腹いっぱい。
18/12/16 00:50:22.87 oez9GTdI0.net
こんな解決案までハケーンwwwww
URLリンク(stackoverrun.com)
; If the script is not elevated, relaunch as administrator and kill current instance:
full_command_line := DllCall("GetCommandLine", "str")
if not (A_IsAdmin or RegExMatch(full_command_line, " /restart(?!\S)"))
{
try ; leads to having the script re-launching itself as administrator
{
if A_IsCompiled
Run *RunAs "%A_ScriptFullPath%" /restart
else
Run *RunAs "%A_AhkPath%" /restart "%A_ScriptFullPath%"
}
ExitApp
}
669:名無しさん@お腹いっぱい。
18/12/18 21:31:15.80 mM0WUO410.net
今度は、
autohotkeyのスクリプトや、
ahkスクリプトをexe化した実行ファイルを、
Windows10上で、管理者権限付きで自動起動させたいと思いつつ、
調べますた。
URLリンク(qiita.com)
によれば、schtasks.exe を叩いて、特権付きでタスク登録すればよいらしい。
schtasks /create /tn cool-task /tr "C:\cool.bat" /sc onlogon /rl highest /F
この schtasks.exe を実行させるためには、管理者権限付きの環境が要る。
何とか autohotkey から schtasks.exe を管理者権限付きで起動して
自分自身をタスク登録するスクリプトを組まねばならない。
そういうスクリプトが github あたりに落ちてないか・・・。
670:名無しさん@お腹いっぱい。
18/12/18 23:47:15.91 OXYgcbgDa.net
+,::
Send, <
Return
シフトキーとともに「,」を押すと半角の「<」が出るようにしたいのですが
なんか同じキーが押されまくる怪しい挙動をします
何がいけないのでしょうか
エスケープでもなさそうな気がしますし、Unicodeの{FF1C}にしてみてもダメでした
671:名無しさん@お腹いっぱい。
18/12/19 00:56:29.95 abjNWlFF0.net
>>638
$+,::
Send, <
Return
Sendのキーをホットキーが拾って無限ループになっている
Send, < → 「Shift+,」
物理的なキーだけに反応するようにフック「$」を使おう
672:名無しさん@お腹いっぱい。
18/12/19 17:49:55.26 7eaMyzmU0.net
DMMでクリップボードにコピーした型番を検索したいです。
pulover’s macro creatorで作ってみました。
型番例:ABCD1234 ABCD-1234
この2パターンの型番を正規表現で置換して"ABCD 1234"で検索するURLを貼り付けたいのですが
Macro1は成功するのですがクリップボード経由でやろうとしたMacro2は失敗してしまいます。
+F1::
Macro1:
RegExMatch(clipboard,"([A-Za-z]+)([0-9]+)|([A-Za-z]+)-([0-9]+)",$)
WinActivate, ahk_exe chrome.exe
Sleep, 333
SendRaw,
(LTrim
URLリンク(www.dmm.co.jp) %$2%%$4%/analyze=V1EBAVcEUAs_/limit=30/n1=FgRCTw9VBA4GCF5WXA__/n2=Aw1fVhQKX19XC15nV0AC/sort=ranking/
Return
)
Send, {Enter}
Return
673:名無しさん@お腹いっぱい。
18/12/19 17:50:57.68 7eaMyzmU0.net
Macro2です。
+F2::
Macro2:
RegExMatch(clipboard,"([A-Za-z]+)([0-9]+)|([A-Za-z]+)-([0-9]+)",$)
WinActivate, ahk_exe chrome.exe
Sleep, 333
SavedClip := ClipboardAll
Clipboard := ""
Clipboard := "
(LTrim
URLリンク(www.dmm.co.jp) $1$3 " " $2$4 "/analyze=V1EBAVcEUAs_/limit=30/n1=FgRCTw9VBA4GCF5WXA__/n2=Aw1fVhQKX19XC15nV0AC/sort=ranking/
Return
)"
Sleep, 333
Send, ^v
Clipboard := SavedClip
SavedClip := ""
Send, {Enter}
Return
674:名無しさん@お腹いっぱい。
18/12/19 22:58:52.25 grZzhxOH0.net
スクリーンショット(Winキー+PrintScreen)を撮る際に、
ホットキーによって保存先のフォルダを指定することってできませんか?
例えば、a+Win+PrintScreenでフォルダAに即座に保存、
b+Win+PrintScreenでフォルダBに即座に保存
675:名無しさん@お腹いっぱい。
18/12/19 23:34:23.35 mPFOJVBy0.net
PrintScreenを送ったあとクリップボードに入ってる画像イメージを
バイナリとして取り出して任意のパスに書き出す関数を作成する >624-634
676:名無しさん@お腹いっぱい。
18/12/19 23:49:57.27 kmNLO1wx0.net
画面キャプチャソフトをRunするほうが手っ取りばやいとおもうよ
677:名無しさん@お腹いっぱい。
18/12/20 10:35:01.33 4fGdw2sw0.net
もともとUWSCと使い分けてるけどキャプチャはそっちがだんぜん簡単だな
saveimg(path)で保存できる
クリップボードに送ったり座標指定も
678:名無しさん@お腹いっぱい。
18/12/20 16:29:15.86 S+ZooRzV0.net
俺も>>624と同じことやってるけど
難しい事わからないからvbsで使ってたDoodleってやつをComObjCreateで呼び出して使ってた
でも64ビットのahkで使えないんだよね
679:名無しさん@お腹いっぱい。
18/12/21 13:21:26.46 uDcDhz/K0.net
クリップボードをpng保存はこれをちょいちょい変えて使わせて貰ってる。
URLリンク(gist.github.com)
64bitで動かないので、Runで32bitのexeにぶん投げるという大変にスマートでないことをしているがw
680:名無しさん@お腹いっぱい。
18/12/21 19:39:09.88 ZLfl7zMT0.net
ホットキーを1000個くらい用意したいんですが
!aaa::
とか
!aab::
とか
!aac::
とかにできないんですか?
681:名無しさん@お腹いっぱい。
18/12/21 19:47:21.49 7gZdVVdx0.net
まだインストールして30分ぐらいなのですが、初歩的な質問させてください。
フルスクリーンで可動してるアプリのバックで5分ぐらいの長さのScriptを流してみたのですが、
Scriptを任意のタイミングで中断したいとき、毎回タスクから終了するしかなく困っています。
起動中のAutoHotkeyのScriptを強制終了するショートカットキーの機能は無いのでしょうか?
682:名無しさん@お腹いっぱい。
18/12/21 19:52:47.60 bSH6Raz30.net
>>649
ExitApp
683:名無しさん@お腹いっぱい。
18/12/22 00:05:11.35 tIoTJBzC0.net
>>648
ホットストリング
684:名無しさん@お腹いっぱい。
18/12/22 08:48:32.41 38ZnCqoL0.net
ボタンを押したら自分で作ったラベル名に飛ばして
そこの処理を行わせるにはどうすればいいのでしょうか?
私の考えでは下記のスクリプトで1を押すと4が押される処理を無限に繰り返すと
思ったのですが、1を押しても1のままで一体何が悪いのかさっぱり判らず困っています。
#Persistent
loop
{
GetKeyState key,1,p
if key = D
gosub, test
return
}
test:
send {numpad4 down}
sleep 50
send {numpad4 up}
sleep 100
return
685:名無しさん@お腹いっぱい。
18/12/22 08:57:44.08 81GOH3PB0.net
>>652
普通にこれじゃアカンのか?
1::
send {numpad4 down}
sleep 50
send {numpad4 up}
sleep 100
return
686:名無しさん@お腹いっぱい。
18/12/22 09:17:37.39 D6jsOQsg0.net
>>652
永久ループにするならloopの中に無条件rerurn入れちゃだめ
まあでもホットキー指定したほうが楽だと思うよ
687:652
18/12/22 09:50:22.58 38ZnCqoL0.net
>653
その書き方だと押しっぱなしだとずっと繰り返してしまうので
このスクリプトが成功したら次の段階で考えているのは
押しっぱなしでも繰り返すのは一回だけという風にしたいので
無限リピートにして中にif文とか条件分岐も加えて連打防止の変数を加えて改良したいと思ったので
やはりラベルの使い方と繰り返し処理の書き方も理解する必要があったのです。
>654
本当に助かりました。returnが悪さしていたのですね。
gosub 処理を抜けるのにreturnが必要だと思ったのでいれていたのですが
抜いたらうまくいきました。
これでようやく次のステップに進めます。
UWSCとは仕様がかなり違うので慣れるのが大変ですわ。
688:名無しさん@お腹いっぱい。
18/12/22 10:02:37.59 81GOH3PB0.net
>>655
押しっぱなしで繰り返したくないなら
下手に応用するよりも前に基本をしっかり学んだ方が良いと思う
1::
send {numpad4 down}
sleep 50
KeyWait, 1
send {numpad4 up}
sleep 100
return
689:652
18/12/22 10:29:47.86 38ZnCqoL0.net
>656
KeyWait…
そんな便利なコマンドがあったんですね…。
わざわざ変数作って繰り返しを防止した俺の苦労は一体…。
だがloopの書き方も判ったので
無駄ではなかったと思いたい…。
690:名無しさん@お腹いっぱい。
18/12/22 10:56:09.76 D6jsOQsg0.net
>>656
どうでもいいレベルの話ですまんがKeyWait入れるなら前後のsleep外してもよくない?
個人的には押しこぼしはsleep調整よりSetKeyDelayでの全体調整おすすめ
691:名無しさん@お腹いっぱい。
18/12/22 20:42:21.29 yle4Tt0Er.net
初歩的質問便乗ですみません
sc07::return
sc07 up::return ;無変換キー無効化
しているのですが、タイポミスかなにかで押してしまった時反応して
IMEオンのとき入力モードが変わって戻らなくなってしまいます。
例えばIMEオンで「AIU」と入力したとき「あいう」でなく「アイウ」になってしまいます。
そのたびAutoHotkeyをExitappして入力モードを戻してahk再実行しています。
レジストリで無変換キーを無効化する以外の方法で善い手段が有りましたらご教授ください
692:名無しさん@お腹いっぱい。
18/12/22 20:44:25.90 yle4Tt0Er.net
間違えました
sc07B::rerurn
sc07B up::rerurn
でしたすみません
693:名無しさん@お腹いっぱい。
18/12/22 20:46:22.63 81GOH3PB0.net
>>659
AHK関係ないけど
IME側のキー割り当て設定で無変換を無効化しときゃいいだけじゃねえの
694:名無しさん@お腹いっぱい。
18/12/22 21:04:49.75 yle4Tt0Er.net
>>661
有り難うございました
IMEの詳細プロパティでこんな機能あったんですね
初めて知りました
695:名無しさん@お腹いっぱい。
18/12/22 21:09:25.03 0KEVDiKW0.net
>>659
Upいらない
修飾キー忘れている
*sc07B::return
696:名無しさん@お腹いっぱい。
18/12/22 21:21:03.78 yle4Tt0Er.net
>>663
Windows10がNT系なのかよくわからなくて外してました
普通に*使って大丈夫なんですね
有り難う御座いました
697:名無しさん@お腹いっぱい。
18/12/25 21:59:20.60 pnAo6DfM0XMAS.net
変換キーをalt + tabにするには、vk1Csc079::AltTab
だと思うんですが何が間違ってるんでしょう
698:名無しさん@お腹いっぱい。
18/12/25 23:57:25.40 vXRazxR70XMAS.net
>>665
sc079::Send {Alt}{Tab}
ただこれでは変換キー自体の機能はどうしたいのか?
699:名無しさん@お腹いっぱい。
18/12/26 00:20:01.51 RjxA60Ct0.net
>>666
0563-qyC8です.修正します
sc079::Send {Alt Down}{Tab}{Alt Up}
700:名無しさん@お腹いっぱい。
18/12/26 01:23:02.34 l5pdk3eS0.net
sc079::AltTabMenu
701:名無しさん@お腹いっぱい。
18/12/26 01:33:18.96 EW5Tq1f20.net
>>665
要するに「vk1Csc079」という記述方式は古いバージョン用で
現在は「sc079」 か 「vk1C」のどちらかでないとエラーになる
702:名無しさん@お腹いっぱい。
18/12/26 17:29:42.24 GG8lkewu0.net
>>667
>>669
ありがとうございました。
703:名無しさん@お腹いっぱい。
18/12/27 07:36:54.42 hnI2tLxw0.net
このスレ的には何を今更感満載だな
[半角/全角]キー不要に? WindowsのIME切り替えがMac方式に - ITmedia NEWS
URLリンク(www.itmedia.co.jp)
従来は再変換などが割り当てられていたが、今回の変更により[無変換]はIMEオフに、[変換]はIMEオンとなる。
つまり、MacやiOSのJISキーボードと同じだ。
704:名無しさん@お腹いっぱい。
18/12/27 07:49:29.60 1w4qjrcd0.net
少し上で議論になったenthumble、Vectorからは引き上げたみたいだな。自サイトの有料版はあるけど
AHKの基本的な機能ドップリ使ってるんだから、コンパイラ云々という、あの微妙な説明ではな…
そりゃ、今までは意図的に隠してきたと言われても仕方ないと思う
有料版買ったユーザーもいるんだろうから、そこだけは認めたくないのかもしれんが
705:名無しさん@お腹いっぱい。
18/12/27 08:37:17.83 Y0WP
706:mSNB0.net
707:名無しさん@お腹いっぱい。
18/12/27 09:39:09.59 1GXcm5970.net
Vector引き上げとかバカだろ
自らコピペなのでソース公開できませんってゲロったようなもんじゃねえかww
708:名無しさん@お腹いっぱい。
18/12/27 10:08:03.30 XJ0Pw9X30.net
IME制御の機能あるみたいだしIME.ahkのソースのコピペはあるだろうね
まあIME.ahkのライセンスはNYSLだったから無断商用利用でも問題ないし
車輪の再開発大変だしreadmeに出所書いとけばここやネットに転がってるコード使ってたって全然いいとも思うけど
ahk使ってること自体を隠そうとするのは何でなんだろ
作者がTwitterでリツイートしてる漫画(感情を見失うから行動がおかしくなる説)
時期的にここで問題視された後だし俺悪くない嫉妬されてるだけっていいたいのかとだいぶ微妙な気持ちになった
709:名無しさん@お腹いっぱい。
18/12/27 10:09:19.89 Y0WPmSNB0.net
thumbIMEの機能はIME.ahkを使ってそうだよなぁ
710:名無しさん@お腹いっぱい。
18/12/27 10:15:26.74 Y0WPmSNB0.net
被った
>>675
Twitter見てきたけど古いツイート消したんだな
711:名無しさん@お腹いっぱい。
18/12/27 10:26:36.64 lgTwVRmH0.net
どーでもいいけどお前らすげー熱意だなw
712:名無しさん@お腹いっぱい。
18/12/27 10:33:54.08 8MkMN2VM0.net
昔の近所のおばさんたちの井戸端会議と同じ
鬱陶しいし、別のことに力使えよと思うけど
これが治安維持につながる面もある
713:名無しさん@お腹いっぱい。
18/12/27 10:39:17.46 Y0WPmSNB0.net
あんま興味なかったけど、ソースを公開する気がないと知った途端にソースが見たくなった
714:名無しさん@お腹いっぱい。
18/12/27 10:46:00.27 lgTwVRmH0.net
治安維持()とか言うくらいなら -gzl5 みたいなスレを荒らす馬鹿ガイジを追い出す方に尽力してくれよw
715:名無しさん@お腹いっぱい。
18/12/27 10:49:16.90 1GXcm5970.net
オッペケ .*3b-
でNGしろ
永久におさらばだぞ
716:名無しさん@お腹いっぱい。
18/12/27 10:51:07.92 Y0WPmSNB0.net
世にも珍しいAHK製のソース付きシェアウェア
Self-signed by administrator
URLリンク(ja.osdn.net)
717:名無しさん@お腹いっぱい。
18/12/27 10:54:40.85 lgTwVRmH0.net
>>682
回線切り替えて自演するキチガイだぞw
718:名無しさん@お腹いっぱい。
18/12/27 11:02:08.34 1GXcm5970.net
その度に回線情報を共有してNGすればしまいには大人しくなる
ワッチョイはその場限りのNGじゃなくて継続的に使えるんだから活用しないと
719:名無しさん@お腹いっぱい。
18/12/27 11:08:12.52 lgTwVRmH0.net
それは単なる自己防衛で治安維持じゃねえからw
外部の治安維持にはやたら積極的な割に内部の治安維持には消極的なんだなって話
720:名無しさん@お腹いっぱい。
18/12/27 11:15:36.93 1GXcm5970.net
積極的に「治安維持」したいなら運用にでも訴えてこいよ
てめえは何もしないくせになに文句だけいってんだかw
721:名無しさん@お腹いっぱい。
18/12/27 11:17:43.69 lgTwVRmH0.net
運用?何言ってんだお前はw
なんで無駄に俺に絡んでくるんだよw
722:名無しさん@お腹いっぱい。
18/12/27 12:09:02.09 p3dV5701r.net
運用w
723:名無しさん@お腹いっぱい。
19/01/01 15:07:38.52 ujsJxC5C0.net
msgbox, あけおめ
724:名無しさん@お腹いっぱい。
19/01/06 18:12:44.67 pN5/2REI0.net
あけおめ、ことよろ
お年賀がわりに管理者権限で動作中か否かを判定するスクリプトをポスト。
b := DllCall("Shell32\IsUserAnAdmin")
if b = 1
msgbox,管理者権限です
else
msgbox,管理者権限ではありません
return
725:名無しさん@お腹いっぱい。
19/01/06 23:59:56.70 emI//Ac90.net
>>691
A_IsAdminっていう組み込み変数があってな
726:名無しさん@お腹いっぱい。
19/01/07 00:08:07.83 zIu31W3n0.net
if( 関数() )
727:名無しさん@お腹いっぱい。
19/01/07 11:19:08.69 CswGGpIj0.net
OSじゃなくてスクリプトが管理者権限で動いてるかどうかって取得できたっけ?
728:名無しさん@お腹いっぱい。
19/01/07 13:33:44.91 bx68uRNCH.net
TTClock みたいなことを AHK でさせたいのですが
タスクトレイの時計を上書きするにはどうしたらよいでしょうか
サンプルスクリプトなどご存じの方いらっしゃったらリンク等教えていただけませんか
タスクトレイの時計の ClassNN が TrayClockWClass てところまでは分かったのですが
そこからが分かりません…
729:名無しさん@お腹いっぱい。
19/01/07 19:00:02.72 OsrIJ3YK0.net
TTClockみたいなことしたけりゃTTClockのソースみりゃいいだろ
730:名無しさん@お腹いっぱい。
19/01/08 23:04:02.31 83mgysAq0.net
ではTTClockのソースを出してください
731:名無しさん@お腹いっぱい。
19/01/08 23:05:05.28 4AtQxIWK0.net
Loopのファイル検索に正規表現は使えないのでしょうか?
732:名無しさん@お腹いっぱい。
19/01/08 23:31:57.06 dsKNZqqv0.net
>>698
Loopでパス(A_LoopFile***)を拾ってから正規表現RegEx***()
733:名無しさん@お腹いっぱい。
19/01/08 23:37:18.33 nEeiVAcB0.net
>>698
使えない
734:名無しさん@お腹いっぱい。
19/01/08 23:39:55.97 4AtQxIWK0.net
>>699
出来ました
ありがとうございます
735:695
19/01/09 09:49:32.62 vcXe4J2NH.net
実際にやりたいのはコレ
URLリンク(github.com)
ソースみてみたんだけど、言語の知識不足で把握できんかった
Grep で該当しそうなクラスを検索したけど、うまく見つからなかったし
736:名無しさん@お腹いっぱい。
19/01/09 22:11:24.57 DK3L+wGw0.net
何がやりたいのかさっぱりわからんわ
そもそもこんな貧弱なスクリプトでAPIゴリゴリ使った処理なんてするするべきではない
737:名無しさん@お腹いっぱい。
19/01/10 03:16:14.40 LwwfjF9I0.net
AutoHotkeyを流行らせるページのダウンロード版マニュアルをダウンロードして展開
DocFetcher Portableをダウンロードして展開
自分のahkのソースコードとマニュアルのパスを登録してインデックスを作成
超高速串刺し検索が可能になる
738:名無しさん@お腹いっぱい。
19/01/10 19:11:15.12 A+VZ/RZld.net
イメージサーチ(画像)とカラーサーチ(色)処理が早いのはどちらでしょうか
5色のルーレットを今画像でサーチしてストップしてるんですが
スタート位置がランダムなので青を認識してストップかけたつもりが次の赤でストップすることがあるんで
改善したいつもりです
739:名無しさん@お腹いっぱい。
19/01/10 21:46:20.89 P/k653NG0.net
そういうのってゲーム側でずれるようになってんじゃね
740:名無しさん@お腹いっぱい。
19/01/10 23:08:19.29 Z8QunCsz0.net
ウインドウを監視してサイズが変わったら通知するようにしたいのですが
WinGetPosをタイマーで繰り返し呼び出す以外に良い方法はないでしょうか?
741:名無しさん@お腹いっぱい。
19/01/11 11:01:09.28 H1qPXC3Y0.net
>>707
>>425
742:名無しさん@お腹いっぱい。
19/01/11 19:09:12.83 AXnRM+C7d.net
>>706
スロットの滑り?(なんて表現したらいいかわからない)
はなくて単純にスタート位置がランダムなのが問題で
色と色のちょうど切り替わるところでスタートして検索にに引っかかった場合見つけた判定と入力ラグで次の色になってしまう事が50回に1回位起きてるんですよね
前の色をサーチして次に停めたい指定色をサーチすればズレることはないんで完璧なんですけど
それだと初手で指定したい色を引いた場合5色切り替わるのを待たないといけないんです
743:名無しさん@お腹いっぱい。
19/01/11 19:14:15.46 LprUI7zi0.net
>なんて表現したら
慣性?
744:名無しさん@お腹いっぱい。
19/01/12 09:45:53.33 5jgtQssX0.net
オブジェクトの削除は意外な挙動をしますね
array := object()
loop 10
{
array[a_index
745:+1] := a_index*10 } str := "" for index, element in array { str .= index . " " . element . "`n" } msgbox % str array.remove(1) str := "" for index, element in array { str .= index . " " . element . "`n" } msgbox % str とやると何も起きないのかと思っていたのですが 要素数は変わらず全部のindexが1つずつ繰り上がっていました
746:名無しさん@お腹いっぱい。
19/01/12 10:37:58.89 esz5e9Ii0.net
>>711
loop 10
a_index+1 = 2~11
747:名無しさん@お腹いっぱい。
19/01/12 10:54:03.36 vNvrnCmz0.net
array := ["", 10, 20, …, 100]
748:名無しさん@お腹いっぱい。
19/01/12 11:03:52.19 esz5e9Ii0.net
∧_∧ ∧∧
__ (* ´Д`)从 (゜Д゜,,)
空_| ≡=-  ̄ ̄ そ ⊂ J
│ ̄2 ̄│W | |
│ ̄3 ̄│ L ^ J
│ ̄4 ̄│
 ̄ ̄ ̄
749:名無しさん@お腹いっぱい。
19/01/12 11:13:16.42 5jgtQssX0.net
空要素を入れているわけじゃなくて
removeしたindexを引いているみたいなんですよ
array.insert(5000,99)
array["abc"] := 12345
array.remove(1)
とかやると
abcはそのままですが5000は4999になります
挙動からするとハッシュで管理していて
整数値のインデックスのキーを削除するときは
他のキーのなかで整数かつ削除されたインデックスより大きいものは
1引いているようなんです
750:名無しさん@お腹いっぱい。
19/01/12 13:01:36.99 5jgtQssX0.net
gui,addのgオプションで自作関数を呼び出そうとしても
ラベルは関数をポイント出来ないみたいな事言われてダメなのですが
関数の中にラベルを書くといけますね
ラベルは危険ですね
751:名無しさん@お腹いっぱい。
19/01/12 13:45:29.91 FZz59XDa0.net
macでautohotkeyの、無変換+Jのコンビネーションでカーソルを動かす
といったことができるソフトはありますでしょうか?
Karabinerでそれができるでしょうか?
752:名無しさん@お腹いっぱい。
19/01/12 14:04:32.36 1c1//4bM0.net
>>716
Func Object
URLリンク(autohotkey.com)
753:名無しさん@お腹いっぱい。
19/01/13 23:36:05.00 wzMuCyOw0.net
同じホットキーに対してスクリプトが複数あるときって優先順位はどうなるのでしょうか?
754:名無しさん@お腹いっぱい。
19/01/14 00:26:16.65 FUECytBs0.net
>>719
*優先度 劣後 < 優先
RegisterHotkey(Win32API、フック$無しはこれ) < AHKキーボードフック($)
*補足
RegisterHotkey 同じキーに対して割り当て不可、フック$無しで同じキーがある場合は自動でAHKフックが使用される
AHKキーボードフック 後から設定したものが優先される
755:名無しさん@お腹いっぱい。
19/01/14 10:47:07.42 ex3lNo2I0.net
Twitterでツイの削除を自動化したいんですが
座標クリックだと最後の「本当に削除しますか?」の
削除ボタンの位置が文章の長さで変わってしまうのでうまくいきません
#32770やショートカットキーもないようなので他に方法があれば
教えて頂けないでしょうか
756:名無しさん@お腹いっぱい。
19/01/14 10:48:54.34 dpVm2sse0.net
>>721
ユーザーcssで位置を固定させれば済むのでは?
757:名無しさん@お腹いっぱい。
19/01/14 11:06:00.56 CHYngsSQ0.net
imageseachでボタン認識
758:名無しさん@お腹いっぱい。
19/01/14 12:50:46.58 ex3lNo2I0.net
>>722-723
ありがとうございます。調べて試してみます
759:名無しさん@お腹いっぱい。
19/01/17 05:24:54.01 wibuoqRN0.net
自作のスクリプトを起動していると、マウスでファイルをドラッグドロップできなくなる現象がたまに起こるんだけど原因はなんだろう?
キー押しっぱなし病かと思ったけど微妙に違うっぽいし
例えばDesktop上のショートカットアイコン等をマウスドラッグで移動させようとすると一瞬つまめるんだけどすぐに離れちゃう
エクスプローラー上のファイルアイコンも同じ
760:名無しさん@お腹いっぱい。
19/01/17 05:27:31.
761:65 ID:wibuoqRN0.net
762:名無しさん@お腹いっぱい。
19/01/17 10:04:11.14 B6YY3fxm0.net
長くなければ
ちな俺はそういう経験はないな
763:名無しさん@お腹いっぱい。
19/01/17 10:34:59.96 7c3tSIyV0.net
貼る前にある程度自分で削って試してみ
マウス関連ならマウス制御に関わるホットキーやコマンドが怪しいし
ある程度アタリつくのでは?
764:名無しさん@お腹いっぱい。
19/01/19 17:00:43.25 HRmMUcjP0.net
eメールのemlファイルを変数に読み込んで処理したいのですが文字化けしてしまいます
file := FileOpen(ファイルパス, "r")
MsgBox % File.Read()
メールファイルを見てみたらiso-2022-jpとあったので
FileOpen(ファイルパス, "r" , "CP50220")
とやってみましたが文字化けは治りませんでした
なにか方法はないでしょうか
765:名無しさん@お腹いっぱい。
19/01/19 18:01:03.77 i5ZFWVeZ0.net
>>729
なんでだろ、FileEncodingのJIS指定機能してないのかね?
RawRead→StrGetなら大丈夫そう
766:名無しさん@お腹いっぱい。
19/01/19 18:33:24.18 nBEJIery0.net
>>729
MIMEエンコード(Quoted-Printable)
767:名無しさん@お腹いっぱい。
19/01/19 18:48:29.88 RXWyLTxR0.net
>>729
FileName := ""
FileEncoding, CP50220
FileRead, str, %FileName%
MsgBox, %str%
768:名無しさん@お腹いっぱい。
19/01/20 08:25:54.02 WvFZYAU6r.net
WinMoveでウィンドウタイトルをahk_exe指定って動作しないのでしょうか
#NoTrayIcon
SetTitleMatchMode, 2
SetWinDeray,1000
WinMove, ahk_exe notepad.exe,, 0,0,640,480 ;動かない
;WinMove, ahk_clas Notepad.exe,, 0,0,640,480 ;動く
Return
;こっちはahk_exe指定でも動く
#If WniActive("ahk_exe notepad.exe")
:*Z?:h30::2018
:*Z?:h31::2019
#If
769:名無しさん@お腹いっぱい。
19/01/21 16:55:22.15 vKThRBHq0.net
おま環
770:名無しさん@お腹いっぱい。
19/01/23 15:42:37.66 3RrY6pKM0.net
AHKって独自のキーボードアプリを必要とするキーボードとの相性って最悪だったりするの?
771:名無しさん@お腹いっぱい。
19/01/23 17:14:13.90 SuoQsE7W0.net
>>735
独自アプリが送るキーを拾えばいいだけなので問題ない
直接対象のウィンドウやコントロールに送ってる特殊なものは除く
772:名無しさん@お腹いっぱい。
19/01/23 17:21:25.52 tL1hRozK0.net
むしろLGSと組み合わせて使ってるが超快適
773:名無しさん@お腹いっぱい。
19/01/23 17:32:15.21 3RrY6pKM0.net
ありがとうございます。
適当なゲーミングキーボードを購入して試してみます。
774:名無しさん@お腹いっぱい。
19/01/23 17:43:18.04 hgyXKOkAa.net
タッチパッドで上下左右の4方向のどれかに指を動かしたか判定ってできないですか?
775:名無しさん@お腹いっぱい。
19/01/24 18:10:03.05 L8j8rl2I0.net
#IfWinActive,ahk_exe notepad.exe
sc7B&f:: ; 無変換+fでアプリ固有のメニュー
#IfWinActive,ahk_exe calc.exe
sc7B&f:: ; 無変換+fでアプリ固有のメニュー
と言ったコードがずらずらあって
別のコードからそれを呼び出したい場合ってどうすればいいの?
; アクティブウィンドウのアプリ固有のメニューを呼び出す
Send,{sc7B down}f{sc7B up}
だとfしか受け取ってもらえないっぽい
776:名無しさん@お腹いっぱい。
19/01/24 18:35:50.36 P0fFZvnW0.net
その別のコードにアプリ固有のメニューを割り当てろ
777:名無しさん@お腹いっぱい。
19/01/24 18:55:48.48 L8j8rl2I0.net
そういう事ではなくAHKが再度処理できるようにSendしたいんだけど
Input,Even,Playだのとやってもうまくいかない
778:名無しさん@お腹いっぱい。
19/01/24 19:06:06.82 Mp9B1M270.net
正直説明不足すぎて何がやりたいんだがさっぱり分からんのだが
スプリクト同士を
779:連携させたいのならホットキー再帰じゃなくて OnMessage()使ったほうがいいのでは
780:名無しさん@お腹いっぱい。
19/01/24 19:42:56.74 P0fFZvnW0.net
>>742
だからそういうのは無いっつってんの
781:名無しさん@お腹いっぱい。
19/01/24 21:11:02.45 zqSKHQU20.net
>>740
あたしはアプリ別メニューはこう管理してます
メイン.ahk
AppsKey Up::Run, サブ.ahk
サブ.ahk
a := WinActive("WinTitle") <> 0
b := WinActive("WinTitle") <> 0
if a
メニュー作成
else if b
メニュー作成
else
Send {AppsKey}
ExitApp
ラベル作成
782:名無しさん@お腹いっぱい。
19/01/24 21:22:56.80 Nfq/MFxG0.net
send?gosubじゃなくて?
gosubで同名のものが複数あるホットキーラベルの中から任意のものを呼び出したいならホットキーラベルに重ねて適当な名前のラベル割り当てるしかないと思う
#IfWinActive,ahk_exe notepad.exe
sc7B&f::
notepadMenu:
#IfWinActive,ahk_exe calc.exe
sc7B&f:
calkmenu:
みたいな
783:名無しさん@お腹いっぱい。
19/01/25 12:08:08.22 ra3drS5T0.net
Send,{sc7B down}f{sc7B up}
で
sc7B&f:: ; 無変換+fでアプリ固有のメニュー
が
実行できないって話ならSendLevelと#InputLevelの出番じゃなかろうか
よくわからないのは
; アクティブウィンドウのアプリ固有のメニューを呼び出す
↑って別にコードを書かなくても#IfWinActive,ahk_exeあるんだから実現できてるよね?
784:名無しさん@お腹いっぱい。
19/01/25 12:23:11.27 3Rew7U8qM.net
winactiveは現在アクティブになってる窓のことであって
Send元がahk_exeかどうかは関係なくね
ahkは基本バックグラウンド動作なのでGUI出さない限りActiveでは拾えんし
785:名無しさん@お腹いっぱい。
19/01/25 18:08:49.45 SY0NQG/da.net
さんざん既出かもしれませんが
sc03A & f::
Send, ^f
Return
のようにしてCapsLockキーにCtrlキーの役割を持たせようとした場合、
CapsLock単打で元々の機能(IME切り替え)って備えさせられないでしょうか?
また、CapsLockを押してないときでも常時Ctrl状態になってしまいます…
786:名無しさん@お腹いっぱい。
19/01/25 18:14:16.21 fVLTXb650.net
>>748
sc03A::sc03A
787:名無しさん@お腹いっぱい。
19/01/26 06:36:41.70 oXSLhMmV0.net
>>749
CapsLockつっても日本語と英字配列で挙動違うしなぁ
IMEの切り替えもIMEの設定によるからなぁ
環境違うからようわからんがこんなんじゃ?
~sc03A & f::
Send, ^f
Return
俺ならCapsLockをコマンドキー代わりにするならF13とかに書き換えるわ
元々の機能はShift+F13(CapsLock)で送った方がいろいろ楽じゃろ
#MenuMaskKey vk07
SetStoreCapslockMode, off
SetTimer, Timer01, 1000
~LShift & F13::
Send, {CapsLock}
Timer01:
If(A_TimeIdlePhysical>5000)
SetCapsLockState, OFF
Return
788:名無しさん@お腹いっぱい。
19/01/26 08:08:59.15 8hQEop/60.net
さんざん既出でFAQでテンプレ入りしてるこれのことかね?
>4
789:名無しさん@お腹いっぱい。
19/01/30 19:51:43.04 J987Min70.net
URLDownloadToFileを使ってテキストファイルに落としたのを
FileReadLineで読み取って
IfInStringで、文字比較をするのですが、漢字を比較するとひっかかりません
DLしたファイルを秀丸で見ると、エンコードはUTF-8でBOMにはチェックは入っていません
AHKのahkファイルを秀丸で開くと同じくエンコードはUTF-8でBOMにチェックは入っていません
ただ、AHKはSciTE4Autohotkeyで編集しているのですが、ここではUTF-8withBOMとなっています
どうしたら、漢字でも比較できるようになるでしょうか
790:名無しさん@お腹いっぱい。
19/01/30 20:21:14.97 J987Min70.net
わかりました。 日本語Shift-jisのときにだけ、漢字比較も出来るようです
UTF-8では出来ません。 URLDownloadToFileで落としたファイルをShift-jisに変換できないかな
791:名無しさん@お腹いっぱい。
19/01/30 20:26:16.73 RKU6wQxh0.net
FileEncoding
792:名無しさん@お腹いっぱい。
19/01/30 20:39:15.17 J987Min70.net
出来ました! ありがとう
793:名無しさん@お腹いっぱい。
19/02/04 20:04:29.48 3xz
794:TX1F70.net
795:名無しさん@お腹いっぱい。
19/02/04 20:18:02.92 3xzTX1F70.net
たとえば
txt =aaa`r`nbbb`r`nccc`r`n
txt :=RegExReplace( txt, "^" , "Sentou:", -1 )
MsgBox %txt%
全部の行に入りません
796:名無しさん@お腹いっぱい。
19/02/04 20:43:53.17 vH5so+Ym0.net
正規表現を勉強しましょう
797:名無しさん@お腹いっぱい。
19/02/04 20:54:18.24 VZ8qaKeZ0.net
>>758
URLリンク(ahkwiki.net)
798:名無しさん@お腹いっぱい。
19/02/04 20:57:04.58 3xzTX1F70.net
なんだあ、出来ました。ありがとうございました
そういう特殊なのがあったんですね
799:名無しさん@お腹いっぱい。
19/02/06 12:53:20.44 Qp8c4kFo0.net
Loopで一行ずつ分解して先頭にaをくっつけていくという方法でもいいんですよ
800:名無しさん@お腹いっぱい。
19/02/06 18:09:37.57 zFYVquxw0.net
半角全角を
英語キーボードみたいにbacktickとして認識させたいんだけど
backtickのキー名って分かる人いませんか?
801:名無しさん@お腹いっぱい。
19/02/06 18:25:34.46 hlw3BzPp0.net
>>763
自分で確認しよう
#InstallKeybdHook
; #InstallMouseHook
KeyHistory
802:名無しさん@お腹いっぱい。
19/02/06 18:53:32.25 zFYVquxw0.net
>>764
ありがとう
vkF3::vkC0
vkF4::vkC0で置いたんだけど
ゲーム内だったらキーバインドしようとすると
pc-98 @って認識されるんですよね
pc-98 @で認識させると今度は押したら押しっぱなしになっちゃうから
vkF3::send,{vkC0}
vkF4::send,{vkC0}
にしたらキーバインドはできるけど反応されなくなっちまった
LOLというゲームなんだけど・・・
803:名無しさん@お腹いっぱい。
19/02/06 19:11:38.41 hlw3BzPp0.net
>>765
AHKのフック$
Sendのモード変更、間隔変更
804:名無しさん@お腹いっぱい。
19/02/06 20:12:01.26 k9lrV6bn0.net
>>765
まず日本語キーボードの場合 {vkC0} は @ のことだから反応しないのは当たり前
backtickは日本語キーボードでは Shift+@
テキストならこれで行けるけどLOLの挙動は知らん
ちなみに余談だが物は日本語キーボードでも言語設定を英語キーボードの設定にしてしまえば
半角全角キーはbacktickに変わる(その他の記号なども全て英語キー準拠になるので注意)
805:名無しさん@お腹いっぱい。
19/02/06 20:23:39.40 k9lrV6bn0.net
>>765
あとは少し上でも言われてた散々既出のテンプレ>>4も読んでおいた方が良い
806:名無しさん@お腹いっぱい。
19/02/08 13:58:51.39 wYl6SAwa0.net
clipboard=%txt%
としたのですが、txtをよそからコピペしてきたものなのでテキスト以外の何かが入っているようで
そのあとがうまく行きません
クリップボードにコピーするときに、テキストだけをコピーする方法ってありますか
ちなみにtxtに直接テキストを代入してやるとうまくいきます
807:名無しさん@お腹いっぱい。
19/02/08 14:05:27.93 wYl6SAwa0.net
具田的にいうと、エクセルからVBAを使って複数セルをコピーして持ってきたものをそのまま使うと
ダメで同じものを試しに手で文字列にして直接clipboardに代入するとうまく行きます
変数xに何かが入っていて、これから文字だけ抽出するというのでもいいです
808:名無しさん@お腹いっぱい。
19/02/08 17:36:15.55 j+wMk+Qm0.net
ahkのcbで扱えるのはテキストだけだろ
それ以外のフォーマットはDllCallでうだうだやるしかない
809:名無しさん@お腹いっぱい。
19/02/08 17:49:12.95 wYl6SAwa0.net
すいません。エクセルのコピーは特殊なことをしているようで、AHKの問題ではなさそうです
この質問は撤回します
810:名無しさん@お腹いっぱい。
19/02/08 17:55:33.97 hNPx+2dr0.net
Excelからコピ
811:ーしてきたならすでにクリップボードになんか入ってるんだから clipboard=%txt% じゃなくて txt=%clipboard% じゃないの? 普通にタブ区切りテキストで取得できてるけど https://i.imgur.com/GnBFhMo.png VBA使っててクリップボードに入れる前に必要な情報だけ選別したいなら VBA側でテキスト加工してからクリップボードに入れたらいいんでね Excel VBA から、クリップボードにテキストをセットする https://qiita.com/rohinomiya/items/1b719bc90d7497688699
812:名無しさん@お腹いっぱい。
19/02/08 18:23:10.12 wYl6SAwa0.net
>>773
おおすばらしい
クリップボードにテキストをセットする
これだ。私は、
Range(--).Copy
を使ってやってたのでなんかおかしかったんです
ありがとうございました
813:名無しさん@お腹いっぱい。
19/02/09 09:59:24.02 0gnksyzc0.net
tempフォルダ内のフォルダを削除したいのですが、どうしたらいいでしょうか?。
以下の様にしてもフォルダは削除されませんでした。
FileRemoveDir, %A_WinDir%\Temp\*, 1
814:名無しさん@お腹いっぱい。
19/02/09 10:19:34.56 0gnksyzc0.net
すみません、検索したら探せました。
お騒がせしました。
Loop, %A_WinDir%\Temp\*, 2 , 0
{
FileRemoveDir, %A_LoopFileLongPath%, 1
}
815:名無しさん@お腹いっぱい。
19/02/11 11:11:20.52 4JpBGiWx0.net
デスクトップのリストビューを更新するスクリプトはどう書けばいいですか?
LVM_UPDATE := 0x102a これ以降さっぱり分かりません
816:名無しさん@お腹いっぱい。
19/02/11 11:29:42.41 XFeKJxE30.net
>>777
explorer.exeならF5
817:名無しさん@お腹いっぱい。
19/02/11 11:50:40.82 4JpBGiWx0.net
>>778
ブラウザみたいに更新できるなんて知らなかった
ありがとう!
818:名無しさん@お腹いっぱい。
19/02/13 11:46:40.28 LX5xNagOa.net
2つのキーを長押しした時に発動するホットキーはどうやって設定すればいいでしょうか。
具体的にはShift+CapsLockを長押しで実行するようにしたいです。
以下のスクリプトは2回目のKeyWaitで必ず0が返ってきてしまいます。
さ
Shift & sc03A::
KeyWait, Shift
KeyWait, sc03A
If (ErrorLevel)
{
Send, Shift & sc03A
}
Else
{
TrayTip, , 長押ししてね。, ,
}
Return
819:名無しさん@お腹いっぱい。
19/02/13 11:51:38.06 LX5xNagOa.net
まちがえた、最初のKeyWait2行は、「,T0.2」が抜けてました。
820:名無しさん@お腹いっぱい。
19/02/13 12:46:30.85 DtDfhWH00.net
CapsLockに関しては>4を参照
821:名無しさん@お腹いっぱい。
19/02/13 15:47:38.34 LX5xNagOa.net
>>780ですが、自己解決しました。
sc03Aの代わりに{CapsLock}を使ったら認識してくれました。
ホットキーも+CapsLockでいけました。
お騒がせしました。
822:名無しさん@お腹いっぱい。
19/02/19 07:32:26.09 /Y9aNw5G0.net
Googleでahkwiki.netが検索に引っかかるのに404まみれで辛い
823:名無しさん@お腹いっぱい。
19/02/20 09:32:21.11 HEs7YX4m0.net
windows10,autohotkeyのバージョンはv1.1.26.01です
スタートアップにahkのショートカットを登録して使用しています
altキーをLalt::aのように別のキーに割り当てているのですが、
起動して直後の状態でctrl+alt+〇のようなショートカットキーを押すと普通にショートカットが反応します
単体でLaltを押すとaが入力されます
その後タスクバーからautohotkeyの画面を開いてreloadscriptを行うとctrl+alt+〇が反応しなくなるのですが
これは何故なんでしょうか
出来れば最初から反応しなくなるようにしたいんです
824:名無しさん@お腹いっぱい。
19/02/20 10:07:31.48 gmyAfssR0.net
スクリプトの実行するタイミングが早すぎるんじゃないかな
試しに2分後にスクリプト(スクリプトB)を実行するスクリプト(スクリプトA)を経由させてみては?
sleep, 120000
Run, スクリプトB.ahk
を記述したスクリプトA.ahkをスタートアップに登録
もしくはAutohotkeyを使わず、ChangekeyというソフトでAltキーをAに置き換えておく
825:名無しさん@お腹いっぱい。
19/02/21 18:23:47.65 qskE06cf0.net
>>786 こんどそれを試してみます ありがとうございます
827:名無しさん@お腹いっぱい。
19/02/22 14:24:29.45 D0iwsF1G0.net
>>786
上の方法を試したら今のところ不具合なく動いてます
ありがとうございました!
828:名無しさん@お腹いっぱい。
19/02/23 01:47:56.73 s6AaMiGtr.net
既出だったらすまん
.ahkが関連付けされてない環境下でショートカットにファイルパス引数付けて実行するとき
ショートカットの詳細プロパティで管理者として実行チェック入れないと
管理者でログインしてても権限付かないのな
WinMoveが動いてないのに気付くまで気が付かなかった
環境Win10x64
829:名無しさん@お腹いっぱい。
19/02/23 11:37:41.36 DNRf3WAIa.net
>>789
UACをオフ
830:名無しさん@お腹いっぱい。
19/02/27 21:27:13.84 CiDwXRSW0.net
ブラウザ上で日本語を選択した時に検索する様にしているのですが、文字化けしてしまいます。
回避する方法を教えて下さい、よろしくお願いします。
#c::
FileEncoding, CP932
ClipSaved := ClipboardAll
Clipboard := ""
Send, ^c
ClipWait
Run, "URLリンク(www.bing.com)
831:名無しさん@お腹いっぱい。
19/02/27 21:41:20.92 9a9zwy1q0.net
?
それ英日翻訳じゃん
832:名無しさん@お腹いっぱい。
19/02/27 21:45:14.44 rrckRpup0.net
何だかようわからんがまずFileEncoding, CP932いらないんじゃないか
833:名無しさん@お腹いっぱい。
19/02/27 21:49:09.97 CiDwXRSW0.net
日英にしてもだめでした。
834:名無しさん@お腹いっぱい。
19/02/27 21:51:16.58 CiDwXRSW0.net
ああ、すみません、使用しているVersionは1.1.24.1 ANSI 32bitです
835:名無しさん@お腹いっぱい。
19/02/27 21:55:40.17 /ia5FaxV0.net
>>791
とりあえずそのまま使ってみたけど日本語を選択しても文字化けしなかったぞ
Win10 / AHK 1.1.29.1
何か環境の問題か?
836:名無しさん@お腹いっぱい。
19/02/27 21:56:56.01 /ia5FaxV0.net
>>795
ANSIだからじゃね
Uni使ってみ
837:名無しさん@お腹いっぱい。
19/02/27 22:01:53.26 CiDwXRSW0.net
IEだと文字化けするようです。
Chromeにしたら文字化けしませんでした。
これで使ってみます、ありがとうございました。
838:名無しさん@お腹いっぱい。
19/02/27 22:09:08.33 QGMj7MyU0.net
>>ID:CiDwXRSW0
WEB検索はueと連携するのがおすすめ!
もしくは自前でエンコするか
ue URLリンク(www2.axfc.net)
UrlEncode() スレリンク(software板:235番)
839:名無しさん@お腹いっぱい。
19/02/27 22:58:07.57 CiDwXRSW0.net
ありがとうございます、試してみます。
840:名無しさん@お腹いっぱい。
19/02/28 16:28:21.01 gWpaONge0.net
ret := foo(
1,
2,
3)
と改行挟んじゃ駄目なの?
841:名無しさん@お腹いっぱい。
19/02/28 18:37:14.67 Zy0nnfk30.net
>>801
URLリンク(ahkwiki.net)
ret := foo(1
,2
,3)
なら可
842:名無しさん@お腹いっぱい。
19/03/03 21:55:53.84 UPkckduS00303.net
IME.ahk のIME_GetConvMode()を呼んでいたら、
特定のアプリで時々おかしくなる。
デバッグしてみると、おかしくなるときに
-2147483623 の値を返してくる。
なお、本来ならば25の値を返すべき。
これを16進数に変換すると、FFFFFFFF80000019
なんと、上位31-15bitがおかしなことになっている。
という訳で、下位のビットだけ取り出すようにしました。
vConvMode := IME_GetConvMode() & 255
これで、いまのところ大丈夫そうだが、何故このようになるのか不明。
(もしかして、IME.ahk って、32bit環境が前提なのでしょうか。)
843:名無しさん@お腹いっぱい。
19/03/04 22:34:50.17 HiTCLtwi0.net
今日、人生で初めてパソコンを触りました2歳です
おすすめのスクリプトを教えてください
844:名無しさん@お腹いっぱい。
19/03/05 01:30:43.28 6KPoryVC0.net
shiftキーの機能を保持したまま、shift単打に何かしらの働きをさせたい場合はどうすればよいでしょうか
単純にlshft::とかやると元々のシフトができなくなってしまいます
845:名無しさん@お腹いっぱい。
19/03/05 01:36:16.17 KNkPH5Gq0.net
>>805
~lshft::
846:805
19/03/05 06:17:33.34 6KPoryVC0.net
>>806
素早い返信ありがとうございます!
なんか難しいことしなくても1字足すだけでいいみたいでよかったです
847:名無しさん@お腹いっぱい。
19/03/05 23:14:20.46 OisHrBAc0.net
例えばマウスジェスチャ
その存在を(そういう概念を)知らなくても別に困らない
しかし、一度使ってしまうと、使わない時にしんどい
そんな感じで、実はめちゃくちゃ作業効率あがるのに、概念の存在すら知らないプラグインがあるのかな~なんて
848:名無しさん@お腹いっぱい。
19/03/06 15:16:41.42 rp4+iZ/10.net
txtの先頭行に”AB”を書き加えたいのですが、どうしたらいいですか?。
FileAppend,
(
ABC
ABCD
), .\TEST.txt
FileRead, HENSUU, .\TEST.txt
If (!RegExMatch(HENSUU,"AB"))
{
FileDelete, .\TEST.txt
FileAppend,
(
AB
%HENSUU%
), .\TEST.txt
}
849:名無しさん@お腹いっぱい。
19/03/06 16:32:27.96 K+HVjljt0.net
>>809
サンプル URLリンク(pastebin.com)
850:名無しさん@お腹いっぱい。
19/03/06 16:53:09.40 5W18jL5p0.net
>>809
ifの判定式が正しく書けてないだけで他はそれでできてる
ただ改行コードがCR+LFなのかLFなのかを
書き込むとき読み込むとき正規表現に掛けるとき常に意識しておかないとミスりやすい
851:名無しさん@お腹いっぱい。
19/03/06 18:03:32.36 rp4+iZ/10.net
やほー出来ました!有難うございます!!!!!。
本当に助かります!。
852:805
19/03/08 19:41:34.52 R4uMOZvC0.net
あああ>>805ですが
あああ>>806さんの言うとおりに
~LShift::
Send, あああ
Return
としてみたらあああShiftを押すたびに「あああ」が出るようになってしまいます…
Shiftを押したあと、そのまま何もせずに離したときだけ「あああ」が出るようにするためには…
変数とかだとたまにずれると聞きますし…
853:名無しさん@お腹いっぱい。
19/03/08 21:53:19.62 C7+mXGSPD.net
F1だけ1秒押さないと反応しないようにしたいけど可能ですか
854:名無しさん@お腹いっぱい。
19/03/08 21:55:04.21 /nv/U1UP0.net
>>814
可能です
wikiのサンプルコード参照
855:名無しさん@お腹いっぱい。
19/03/08 22:00:29.76 C7+mXGSPD.net
>>815
ありがとうございます!捗ります!!
856:名無しさん@お腹いっぱい。
19/03/09 13:04:18.93 2Yt1jfFd0.net
813は何がしたいんだろね
それじゃShiftキー単体がトリガーになってんだからShift使えないのはあたりまえじゃん
~を頭に付けてる意味が無い
仮にShiftキーの状態を取得して
Shiftキーをupのときだけ「あああ」を出すことはできるが
そもそも、それ以外でShiftキーを送りたいときでもキーはupするでしょ
downのときだけShiftを送るとしても「あああ」を出す前にShiftが送られてしまうし
Shiftキーのみであれもこれもというのは無理がある
~を頭に付けるのはコンビネーションキーを使った時にこそ意味がある
~Shift & a::
Send, あああ
Return
857:名無しさん@お腹いっぱい。
19/03/09 13:18:13.97 f6luyZem0.net
shiftと同時に押されてるキーがあるかどうかで分岐したいんでしょ
getkeystateは何が押されてるかを網羅するのは大変だから
dllcallでGetKeyboardStateでも呼び出したらいいんじゃね
858:名無しさん@お腹いっぱい。
19/03/09 19:40:53.21 amiJbyy8r.net
>805は
>shift単打に何かしらの働きをさせたい
って言ってるから
>>813
Shiftを殺さずにShift単体を何らかの定型文入力に使いたいなら、やりたい事の答えにはなってないけど俺
859:ならこうする ;AutoExecuteセクションでtc1に代入しておかないと1度目だけ失敗する tc1 := a_tickcount return ;LShiftダブルクリックで入力 LShift Up:: tc2 := a_tickcount if( (tc2-tc1) <= 400 ) Send, aaa tc1 := tc2 return つかこれもwikiに載ってたような
860:名無しさん@お腹いっぱい。
19/03/09 19:45:20.73 amiJbyy8r.net
俺も教えて下さい
Send,キーする相手=Kingsoft WPS
OS=Windows10 64bit(管理者ユーザー)
物理メモリ=4GB
Run, C:\hoge.xlsx
WinWait, ahk_class XLMAIN ;WPSのウィンドウclass
While (res <> 0) {
SendMessage, 0, 0, 0
res := ErrorLevel
Sleep, 10
}
Send, 1234
これ(SendMessage, 0, 0, 0)の出所は流行らせるページでLastFoundWindowの応答を待つって言うやつなんですが
このSend, 1234が、OS再起動後の初回起動時のWPSで必ず失敗します。
2度目以降は100%成功します。
物理メモリ増量以外の方法で、もっと確実にAutoHotkeyからの『Sendキーを受け取れる状態になった事を知る方法』はどんなのがありますでしょうか。
Excel同様にControl, EditPasteなどControl系は受け付けませんでした。
861:名無しさん@お腹いっぱい。
19/03/09 20:37:40.96 CNsQjUC/0.net
>>813
やりたいことは>>818の言ってる事が正しいんだろうね
dllcallの使い方が分るならそれが一番賢いやり方なんだろうけど
wikiのサンプルコードレベルの知識しかない俺ならばLShiftを一定時間以上押したかどうかで分岐するかな
Shift+○みたいな2キー同時押しの場合自然と単一押しよりもShiftを押してる時間が長くなるのでそれを判定
~LShift::
KeyWait,LShift,T0.15 ;数字は個人の好みで調整
If(ErrorLevel)
{
KeyWait,LShift
Return
}
Send,あああ
KeyWait,LShift
Return
これだとShiftを短く単一押しなら Send,あああ
0.15秒以上長押しならそのままただのShift(Shift+○などで使用可能)
ただし2キ―押しでも短く入力すると Send,あああ になってしまうので注意が必要
まあぶっちゃけShiftやCtrlなどシステムで使われる修飾キーはAHKで使わずに
無変換/変換キーやAppsキーなどを使った方がスマートだと思うけどw
862:名無しさん@お腹いっぱい。
19/03/10 00:29:30.77 kZRNstrc0.net
受信したメールの自動化したいけど難しい…
一番の敵は文字化け
outlook買ってcomobject操作するしかないのかな
863:名無しさん@お腹いっぱい。
19/03/10 06:43:20.31 kZRNstrc0.net
gas…なにこれしゅごい…
864:名無しさん@お腹いっぱい。
19/03/10 12:04:36.62 EETlpcuo0.net
ありがちなツールではあるが
KeyboardStateView の評価・使い方 - フリーソフト100
URLリンク(freesoft-100.com)
865:名無しさん@お腹いっぱい。
19/03/15 11:15:25.73 MrXm2Aznd.net
sleepで指定した秒数に最大で0.02秒程度の誤差が発生するんですが、この誤差をなくすのは無理でしょうか?
866:名無しさん@お腹いっぱい。
19/03/15 18:23:55.74 d5R2M24F0.net
>>825
自動Sleepと割り込みが無い前提で←重要
より精度が必要ならAPIのSleepを直接叩いたほうが精度は出る
SetBatchLines -1 ; 自動SleepをOFF
; Critical ; 割り込み禁止
Delay = 50
Count = 100
; --- AHKのSleep ---
StartTime := A_TickCount
Loop %Count%
Sleep %Delay%
MsgBox % "誤差(ms) = " (A_TickCount - StartTime) / Count - Delay ; 9.2ms
; --- APIのSleep ---
StartTime := A_TickCount
Loop %Count%
DllCall("Sleep", UInt, Delay)
MsgBox % "誤差(ms) = " (A_TickCount - StartTime) / Count - Delay ; -0.1
867:6ms ※10ms以下の短いSleepが必要ならこれ https://autohotkey.com/docs/commands/Sleep.htm#Examples
868:名無しさん@お腹いっぱい。
19/03/16 03:43:59.48 zmDGDoiB0.net
>>826
ありがとうございます!
869:名無しさん@お腹いっぱい。
19/03/17 00:31:19.11 PzFP5jHx0.net
gdriveのコマンドラインからの操作ってautohotkeyからでもできるのかな
870:名無しさん@お腹いっぱい。
19/03/17 07:47:18.85 yQ9Iq/3v0.net
OnClipboardChange("ClipChanged")として、クリップボードが変化したら
ClipChanged()という関数を呼び出すようにしました
で、このClipChangedの中で、Clipboardに値を代入したいのですが、そうすると、そこでまた
ClipChanged()が呼び出されてしまいます
呼び出されないようにする方法ってありませんか
871:名無しさん@お腹いっぱい。
19/03/17 10:21:21.23 Y4jFFXT70.net
>>829
関数抜ける前にSleep入れる うちだと30くらい
872:名無しさん@お腹いっぱい。
19/03/17 10:23:00.67 yQ9Iq/3v0.net
>>830
ちょっと驚きました。そういう対処で出来るのですか
やってみます
873:名無しさん@お腹いっぱい。
19/03/17 18:07:06.72 1pxNjMPy0.net
>>831
遅延無く確実に止めたいなら一旦停止させればいい
OnClipboardChange("ClipChanged")
ClipChanged() {
OnClipboardChange("ClipChanged", 0)
Clipboard := "hoge"
OnClipboardChange("ClipChanged", 1)
}
874:名無しさん@お腹いっぱい。
19/03/17 21:16:25.60 Is1zibCb0.net
>>832
一旦停止出来るのですね。ありがとうございました
875:名無しさん@お腹いっぱい。
19/03/18 17:28:54.27 n8uSvXmY0.net
^vでクリップボードの中身を貼り付けたあと、その右でなく左にカーソルが来てほしいのですけど
( 貼り付け文字列| でなくて |貼り付け文字列 となってほしい)
{Enter}^v{Up}{Delete}
ってやる以外にもっといい方法ないですかね…
876:名無しさん@お腹いっぱい。
19/03/20 00:48:52.89 O8v9in+G0.net
Wikiにあったサクラエディタのiniファイル
URLリンク(ahkwiki.net)
をサクラエディタにインポートしようとしたら「不正な形式です」と言われて失敗するんですけど
なんでですかね…
877:名無しさん@お腹いっぱい。
19/03/20 23:14:06.69 cVGAielV0.net
>>834
A_CaretXYを取得しておいてClick…
878:名無しさん@お腹いっぱい。
19/03/21 07:56:12.33 5EN2aNq80.net
今までずっとwindowsでAHK使ってきたんですけど、この度macに乗り換える事になったのですが、マック使ってる方はAHKの代替として何使ってますか?
879:名無しさん@お腹いっぱい。
19/03/21 08:27:47.09 YwAbBYS8r.net
そういう人は仮想環境でWindows動かしてるんじゃない?
880:名無しさん@お腹いっぱい。
19/03/21 08:46:12.12 /2p+YB1W0.net
>>837
ググるかマックスレで聞いてみれば
それであまり出てこなければ、今後何かあって誰かに聞きたいことがあっても聞くことも出来ず、トラブルを解決できないよ
881:名無しさん@お腹いっぱい。
19/03/21 09:33:10.42 W9r+4rA80.net
macの場合unixベースでのコマンドライン環境は整ってるだろうし
GUI上での効率化にはさほど重きを置いてなさそうなイメージあるな
実際はどうだかわからんけど
882:名無しさん@お腹いっぱい。
19/03/21 14:54:02.88 CD5POuwD0.net
それWinだってPSあればAHKいらないねって言ってるのと同じようなものでは
883:名無しさん@お腹いっぱい。
19/03/21 15:06:01.72 W6QJct900.net
カラビナ~とかってやつを使うんじゃない?
884:名無しさん@お腹いっぱい。
19/03/21 15:27:29.41 3jzLpwy10.net
keyhacはmacでも使えるよ
885:名無しさん@お腹いっぱい。
19/03/21 16:55:39.19 W9r+4rA80.net
>>841
winの場合PSもcmdも正直使いやすいとは言えないからなあ
886:名無しさん@お腹いっぱい。
19/03/22 11:21:47.80 vm+JVReM0.net
mac板池
887:名無しさん@お腹いっぱい。
19/03/22 14:18:13.09 CzS1buBAa.net
KeyWaitがAppsKeyとLWin, RWinで動かないんだけど、おま環かな。
同じ方法でInsertやF1、CapsLockなんかは動いてくれてるのに。
AppsKey::
KeyWait, AppsKey, T0.3
If (ErrorLevel)
{
MsgBox
}
Else
{
Send, AppsKey
}
KeyWait, AppsKey
Return
LWin::
RWin::
KeyWait, %A_ThisHotKey%, T0.3
If (ErrorLevel)
{
MsgBox
}
Else
{
Send, {%A_ThisHotKey%}
}
KeyWait, %A_ThisHotKey%
Return
888:名無しさん@お腹いっぱい。
19/03/22 14:50:00.28 AwIUcoeS0.net
>>846
イージーミスだな
Send, {AppsKey}
889:名無しさん@お腹いっぱい。
19/03/22 15:17:36.35 CzS1buBAa.net
>>847
ごめんなさい、そこは俺の書き込みミスだった。
Send, {AppsKey}
にしててもダメで、いくら長押ししてもErrorLevelが1になってくれない。
890:名無しさん@お腹いっぱい。
19/03/22 15:41:26.13 AwIUcoeS0.net
>>848
うちではそれで正常に動くのでおま環かな
長押しすればメッセージボックス開く
短く押せば元のキーの動作する
891:名無しさん@お腹いっぱい。
19/03/22 19:24:47.10 bnUQZBeP0.net
室屋って今までいたか?
892:名無しさん@お腹いっぱい。
19/03/22 19:52:27.99 ZntNu9BJ0.net
>>846
タイマーを利用した方法でどうぞ
Example #3
URLリンク(autohotkey.com)
893:名無しさん@お腹いっぱい。
19/03/22 20:37:55.39 CzS1buBAa.net
>>851
ありがとう。けど、これって長押しじゃなくて連続押しのサンプルだよね。
AppsKeyの方は他のAppsKey & key::を全部殺したらKeyWaitが動いた。
他のホットキーで使ってるとダメってことか……。
894:名無しさん@お腹いっぱい。
19/03/23 00:35:36.76 AYFl8FRa0.net
ahkは変数とか文字列の参照方法がキモ過ぎ。
Test_DebugMsg(msg) {
CoordMode, Mouse, Screen
If %DEBUGGING%
{
If msg !=
{
SplashTextOn,300,40, Debug, %msg%
}
}
}
---------------
Test_DebugMsg("あいうえお")
これで動いたけど何でif文の中でmsg が%なしで参照できるのか
何で空文字の比較が、こんな訳ワカメなシンタックスなのか
後文字列も
CallFunc("test")だったり、単に testだったりスゲーわかりにくい。
何考えて言語設計したんだろうね?
895:名無しさん@お腹いっぱい。
19/03/23 00:56:59.49 i51tlT/m0.net
わざわざ非推奨の旧形式使っておいて何言ってんだ
896:名無しさん@お腹いっぱい。
19/03/23 05:36:10.65 AYFl8FRa0.net
>>854
一昨日から触り始めたばっかりだ。
どこが非推奨なのかさっぱりわからんです。
マニュアルみたいなwikiみたいなやつに乗ってるから、そうしただけで・・・。
どうやって非推奨であることを探せばいいのでしょう?
897:名無しさん@お腹いっぱい。
19/03/23 06:44:07.50 QMslRpCG0.net
>>855
確かに一部、首をかしげるところもあるが、いい言語だぞ
触り始めたばかりのド素人がそういうことをいうもんじゃない
お前、perlはやったことあるのか。あれにもちょっと似てるところがある。perlは俺は大好きな言語だ
898:名無しさん@お腹いっぱい。
19/03/23 06:49:47.19 LVLk7hPf0.net
perl的というかshell script的だな
shell script的な言語はだいたい構文がキモくて場当たり的なんだよな
その分記述がお手軽なんだが最初は変数の参照、文字のエスケープ周りでつまずきまくる
899:名無しさん@お腹いっぱい。
19/03/23 06:54:21.07 QMslRpCG0.net
>>857
単に慣れてないだけじゃね w
900:名無しさん@お腹いっぱい。
19/03/23 08:10:49.14 7pE/tj2B0.net
> If msg !=
> 何でif文の中でmsg が%なしで参照できるのか
( )のつかないif文は比較演算子の左辺に来るか右辺に来るかで
変数扱いなのか直値扱いなのかが変わる
左辺は変数なので%%はつけたらだめ
URLリンク(ahkwiki.net)
>854が言うように旧仕様で分かりにくいので
特にこだわりがないならif文に関しては( )付きの式を使ったほうがいい
URLリンク(ahkwiki.net)
901:名無しさん@お腹いっぱい。
19/03/23 09:48:56.68 i51tlT/m0.net
>>855
更新されなくなったマニュアルみたいなwikiみたいなやつではなく付属のヘルプを読みましょう
902:名無しさん@お腹いっぱい。
19/03/23 10:17:01.98 AYFl8FRa0.net
>>857
>perl的というかshell script的だな
そう正にこれ。perlやってて意味不明なシンタックスに悩まされたのを思い出したよ。
>>859
>( )のつかないif文は比較演算子の左辺に来るか右辺に来るかで
>変数扱いなのか直値扱いなのかが変わる
>左辺は変数なので%%はつけたらだめ
そんな、カルトQみたいな言語仕様で分かるかよW
でも教えてくれてありがとう。多分知らずにIf ()見てたら絶対混乱したよ。
> 変数扱いなのか直値扱い
これに気を付けて、意識していれば大丈夫なのかな?
903:名無しさん@お腹いっぱい。
19/03/23 10:38:31.61 7pE/tj2B0.net
確かにこの辺はリアルタイムで仕様の変遷を見てきた人間じゃないとわからんだろうな
ようはユーザー要望で建て増ししてきた結果
最初はBASICライクだったのが徐々にオブジェクト思考的になってって
新旧入り乱れてグチャグチャになったまま今に至る
今からはじめるならその辺整理した v2(アルファ版)のほうがいいかもね
つうても1.1が2に置き換わる未来もまだ見えないけど
904:名無しさん@お腹いっぱい。
19/03/23 10:41:39.46 PxoVUC0e0.net
>>861
()の中は式、コマンドの中は直値、:=の後は式、=の後は直値って思っておけば基本何とかなる。
それと、直値も先頭に"% "を書けばその先は式扱いになるよ。
msg := 1 + 1
MsgBox, %msg%
MsgBox, % 1 + 1
どっちも2が表示される。
905:名無しさん@お腹いっぱい。
19/03/23 10:47:31.33 PxoVUC0e0.net
>>863
あと自分の中でルール決めといた方がいい。If関係は必ず()でくくって式にする、ブロックは必ず{}でくくる。
代入は必ず:=を使って=は使わない、とかね。
906:名無しさん@お腹いっぱい。
19/03/23 10:47:37.92 AYFl8FRa0.net
>>863
最後がキモすぎw
謎の呪文にしか見えん。ひょっとして、
"% " <- パーセントの後はスペースが重要とか!?
907:名無しさん@お腹いっぱい。
19/03/23 11:53:25.14 rQNsNz/vr.net
慣れだよね
if文は必ず
if (msg != "")
みたいに書く事にしてる
Stringコマンド系ではoutput,inputvarは%%で囲わない
あとはLoop,Parseのinputvarもか
タイトルバーに.ahk が含まれるとき
:*Z?:if89::if ()
:*Z?:regm::RegExMatchk(, "", $){Left 8}
:*Z?:regr::RegExReplace(, "", "", ""){Left 13}
よく使う定型文はこんな感じでホットストリングでまとめてる
908:名無しさん@お腹いっぱい。
19/03/23 12:27:00.63 rQNsNz/vr.net
RegExMatchkてなんだk混じったスマソ
RegExMatchだた
909:名無しさん@お腹いっぱい。
19/03/27 01:42:01.98 Iw36cCT10.net
文字キーだけキーリピートを防止(無効化)する方法ってありません?
文字入力を遅らせる(DownでなくUp時に文字が送信される)って方法は思い浮かぶものの
文字入力を遅らせることなく、純粋にキーリピートだけさせなくする方法がわからず…
910:名無しさん@お腹いっぱい。
19/03/27 02:02:20.72 /mxbyJYP0.net
>>868
a::
Send,{a down}
KeyWait, a
Send,{a up}
Return
b::
Send,{b down}
KeyWait, b
Send,{b up}
Return
~以下略
面倒だけど文字キー全部登録すればキーリピートしない
もっとスマートな方法あるかもね
911:868
19/03/27 04:05:16.44 Iw36cCT10.net
>>869
ありがとうございます
UpしてないうちにUpってしちゃって問題ないのか気になるのと(たまに挙動が変になるソフトあったような)、
Upだけで独立して設定してるキーがいくつかあるのでこの方法は合わなさそうですね…
912:名無しさん@お腹いっぱい。
19/03/27 04:59:10.86 ytVG4L1f0.net
>>870
実際に試したか?
KeyWait入ってるから「UpしてないうちにUpってしちゃって」なんてことは無いぞ
普通にキー押したらdown、キー離したらUpでリピートはしないだけ
試しもせずに合わないとか言ってるならもう二度と質問するな
913:868
19/03/27 06:44:51.24 Iw36cCT10.net
>>871
あっ…………KeyWaitしてるんだから待機されてて直後のSendは実行されるわけないですよね…………
一読しただけで、なんか「KeyWaitしたあとすぐそのキーを強制的にUpして解除することでキーリピートを防ぐ的なHack」的なものだと思い込んでました…………
穴にこもります…………
914:名無しさん@お腹いっぱい。
19/03/27 16:14:54.79 zt4bzZsxr.net
>>868
#HotkeyIntervalと
#MaxHotkeysPerInterval
で済むとかそういう話ではない?
915:名無しさん@お腹いっぱい。
19/03/27 19:20:03.11 XPSJXypX0.net
>>869
フック忘れてる
$a::
916:名無しさん@お腹いっぱい。
19/03/28 00:30:16.89 RLY0C+Oa0.net
お尋ねします。
以下の組み込み変数はありますか?。
C:\Users\ユーザー名\AppData\Local
917:名無しさん@お腹いっぱい。
19/03/28 01:00:15.72 VP8ZYpip0.net
ここさがして無いなら無い
URLリンク(autohotkey.com)
環境変数から引っ張てくることはできるから
EnvGet,LOCALAPPDATA,LOCALAPPDATA したらいいんでね
918:名無しさん@お腹いっぱい。
19/03/28 11:02:32.92 ceDg/aqd0.net
以下のような事ってどう記述すればよいのでしょう
w → Shift + w
※wを押し続けている間、その状態(Shiftとwの同時押し)を保持したい
B + W → 8
B + E → 9
※ Bを押している間に別のキー(W)を押した場合、単独で押した場合と違う定義(8)を出力したい
B単独での押下時はwやb同様に別のキーを登録できれば理想ですが、無効でも構いません。
919:名無しさん@お腹いっぱい。
19/03/28 11:19:00.91 VP8ZYpip0.net
>w → Shift + w
リマップもしくはkeywait>869
URLリンク(ahkwiki.net)
>B + W → 8
コンビネーションキーもしくはgetkeystate
URLリンク(ahkwiki.net)
URLリンク(ahkwiki.net)
920:名無しさん@お腹いっぱい。
19/03/28 11:29:44.90 ceDg/aqd0.net
>>878
ありがとうございます。
KeyWaitの方は単独で動作確認できました。
コンビネーションキーもしくはgetkeystateの方、これから調べてみます、どうもでした。
921:名無しさん@お腹いっぱい。
19/03/28 12:19:17.53 RLY0C+Oa0.net
>EnvGet,LOCALAPPDATA,LOCALAPPDATA したらいいんでね
>>876
これは素晴らしい、ありがとうございました!。
922:868
19/03/29 13:21:17.49 1pIbiSZS0NIKU.net
>>869さんの方法で完璧にキーリピートしないようになりました
$a::
$a Up::
みたいに分ける必要なくキーアップ時の動作を書けますし良いですね
……ところが、「asahi」「akari」など折り返して3文字以上を打つときにロールオーバーしてると(前のキーから指が離れきってないと)
「ashi」「akri」のように、折り返し2回目となる文字が出力されず飛ばされてしまうようです
1キーずつしっかり指を離していればそうはならないんですけど
ここだけどうしたものか…
>>873
URLリンク(sites.google.com)
> #MaxHotkeysPerInterval 70位にしておけば、コントロールパネルのキーボード設定で 表示の間隔を最速にしていても問題ないはずである。
って感じですか、やってみます!
923:名無しさん@お腹いっぱい。
19/03/31 23:53:41.65 Um1qMTue0.net
;BackSpace+Delで全消し(Ctrl+A→Del)
{Backspace} & {Delete} :: Send,^a
Send,{Backspace}
return
どこに問題があるのでしょうか?(初心者です)
924:名無しさん@お腹いっぱい。
19/03/31 23:59:17.07 Um1qMTue0.net
Shift+キーボードの0でIME設定に依存せず
(全角モードなら全角のカッコが入力されるようなIME設定だとしても)
半角の()を入力し、カーソルをカッコの間に移
925:動させたいのですが、 動作完了後、日本語入力モード時には日本語モードに、 英語モードなら動作完了後に英語モードにしたいです。 ^vkF2::Send, {vkF2}{vkF3} は別で用意していますからこちらのホットキーを組み込んでいただいて構いません。
926:名無しさん@お腹いっぱい。
19/04/01 00:00:49.90 SHVZOtin0USO.net
>>882
2行以上のコマンドは :: の後改行しましょう
:: の後に続けて書く場合は1行のみのコマンド
927:名無しさん@お腹いっぱい。
19/04/01 00:07:15.29 SHVZOtin0USO.net
>>882
あと :: の前のBackspaceやDelに {} は不要
928:名無しさん@お腹いっぱい。
19/04/01 00:10:24.93 IB03RE8+0USO.net
ホットキーラベル名には{}が要らないのと複数行続く場合は改行が要る(多分)
Backspace & Delete::
Send,^a
Send,{Backspace}
return
あと&を使うと前者のキー(Backspace)を修飾キーとして扱うようになるので別途
Backspace::Send,{Backspace}
というのも記述しないとBackspace自体の機能が失われる
ctrl+Bsとかshift+Bsとかも使うなら全部書かないといけないから単体でよく使うキーはコンビネーションキーにしないほうが無難