探検


AutoHotkey スレッド part25 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1名無しさん@お腹いっぱい。 転載ダメ©2ch.net (ワッチョイ f977-fKjf)
垢版 |
2017/09/14(木) 11:52:40.84ID:uijNj4qb0

■配布元
http://ahkscript.org/download/

■前スレ
AutoHotkey スレッド part24
http://egg.2ch.net/test/read.cgi/software/1487149472/

■日本語解説等
AutoHotkey Wik
http://ahkwiki.net
AutoHotkeyを流行らせるページ(ミラー)
http://ahk.xrea.jp/ (不調時は http://hdd.s300.xrea.com/ahk/ )
AutoHotkeyJp(過去ログdatあり)
http://sites.google.com/site/autohotkeyjp/
Autohotkey日本語ヘルプ(chmファイル)
http://www6.atwiki.jp/eamat/
Autohotkey専用うpろだ
http://ux.getuploader.com/autohotkeyl/
簡易スクリプト掲示板
http://pastebin.com/

■派生版
IronAhk (.NET製、クロスプラットフォーム)
https://github.com/polyethene/IronAHK
AutoHotkey.dll (真のマルチスレッド対応など, AHKLの派生)
http://www.autohotkey.com/board/topic/39588-autohotkeydll/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
592名無しさん@お腹いっぱい。 (ワッチョイ d2d9-w+5f)
垢版 |
2017/12/14(木) 21:57:18.36ID:GqJFhkoy0
>>590 >>591
ショートカットキーを使って、既存のブラウザのコントロールにアクセスしたいというのが
もともとの願望でした。
(会社の基幹システムの提携作業をマクロ化したいという動機)

検索すると、HotKey制御ならAutoHotKeyらしいということがわかって、
いろいろ試行錯誤してみた次第です。

ずっとVBAで業務支援ソフトなんかを同僚のために作ってきたのですが、
HotKeyの制御はC#やVBなんかでもできるのでしょうか?
初心者ですが、VisualAtudioは最近ちょろっと触ってるので、
HotKeyを使ったブラウザ制御なんかを学べる環境を教えていただけると幸いです。
2017/12/15(金) 07:32:08.50ID:lV80xGQe0
>>589

| IEウインドウを最大化
| IEを最前面表示固定
| 座標100,200 を左クリック
| 1秒待つ
| 座標100,220 を左クリック
| 0.5秒待つ
| 座標300,200 を左クリック
| 1秒待つ
| 座標300,220 を左クリック
| ・・・
| IEを最前面表示固定解除

みたいなのにすればいいだろ
#スクリプト動作中はマウス、キーボードを触らない


AHKじゃなくても、マウスユーティリティー系で可能
openmausujiならソースが公開されているから、業務で使用も可能だろ
2017/12/15(金) 20:50:32.58ID:OrMVJhUA0
>>589
テンプレにあるACC.ahkでDoDefaultActionでいいんじゃないかな
それでできないならUI AutomationのSetFocus()でフォーカス合わせるぐらいしか思いつかないけど
UI AutomationのほうもAutoHotKeyである程度使いやすいようにされたものがどっかにあったはず
595名無しさん@お腹いっぱい。 (ワッチョイ 16e6-WcAR)
垢版 |
2017/12/16(土) 16:06:02.33ID:AUvdSLPQ0
>>593 >>594
ありがとうございます。
レスが遅くなって申し訳ありません。

上記を参考に一度トライしてみます。
2017/12/17(日) 02:32:30.21ID:MdcvIGaz0
マウスのホイール操作全般(WheelUp WheelDown WheelLeft WheelRight)にキーを割り当てると、単純な a とか一文字でも
不定期に反応しなくなります
すり抜けとかではなく全く反応しなくなるのですが、リロードすれば直ります
右クリック、左クリック、サイドボタンでは全く問題ないです

定期的にリロードするよう書き込んだ方が良いのか、それとも
他に何か原因があるのでしょうか?
2017/12/17(日) 07:31:34.32ID:DTDP6E0d0
>>596
まず、余分なものをどんどん省いていって、それが再現する必要最低限のスクリプトにしてみましょう。
その結果、原因が分かって自分で解決できる場合もあるし、その最低限のスクリプトをここに書き込めば
誰かにヒントをもらえる確率が上がると思います。
2017/12/17(日) 08:29:26.24ID:MdcvIGaz0
>>597
WheelRight::send,a
return

これだけしか書いてないスクリプトでも急に受け付けなくなるのですが・・
2017/12/17(日) 09:58:02.93ID:ZbWlvwyg0
再インストールしてみるとか?
2017/12/17(日) 10:15:31.95ID:ZbWlvwyg0
うちの環境だと問題なく動いてるけどなぁ
2017/12/17(日) 11:06:05.21ID:pdjYZcFx0
一体どういう状況でソレが使いたいのかが分かれば精査しようもある
ただ言えるのは、短く書こうとして誤動作おきてるなんてことはよくある

WheelRight::
send,{a down}
keywait,WheelRight
send,{a up}
Return

くらいは書かないとダメかも
2017/12/17(日) 11:12:23.44ID:pdjYZcFx0
もうちょっというなら、キーヒストリーはちゃんと確認しよう
早すぎて抜けてるとかなら調節しないといけないわけだし、そもそもキーが送られてないとかになると、マウスとの相性まで疑ったほうが良い。
WheelLeft、Rightはうちも反応して無くて、しょうがないからF13,F14をレジストリレベルで割り当ててF13に設定してたりする
2017/12/17(日) 11:22:47.97ID:4YmA5vyY0
それロジマウス使ってるだけじゃねえの
2017/12/17(日) 11:34:53.14ID:fzbLbuEn0
LogicoolのSetpointのような他のカスタマイズ系ツールが入ってて競合していたり
仮想PC上で動かしていたりするんじゃない?
もしそうなら思考錯誤すればなんとかなったりするけど
Autohotkeyとの併用だと根本的解決は厳しいのでどこかで妥協が必要
2017/12/17(日) 11:39:13.82ID:4YmA5vyY0
ロジの左右スクロールはWindows標準APIじゃないから反応しないだけ
質問者の様に途中から反応しなくなると言った症状とは全く別問題
2017/12/17(日) 12:12:17.21ID:eySZ52HR0
その手の質問するときはちゃんと環境書いたほうがいいよ
反応しなくなるのは件のホットキーだけ?
それとも他のホットキーも全滅になるん?

リダイレクトホイール系のスクリプト入れてるけど
ブラウザとかでページの読み込みが重いとスクロール処理に遅延が生じてしまって
それ以降他のアプリ上でホイール回しても一切スクロールしなくなることはあった
ただ処理はロストしてるわけじゃなく溜まっててるだけで
数分〜10分後に え今更?ってタイミングでスクロールされるけど
(win8 x64 & ahkL U64 v1.1.24 & m570)
2017/12/17(日) 16:53:37.57ID:MdcvIGaz0
>>601
ありがとうございます
そのスクリプトでやってみると初めの一文字だけしか出てきません
キーヒストリーを見ると

002: Send,{a down} (0.09)
003: KeyWait,WheelRight (2.81)

で止まって Send,{a up} が送られていないようでそれ以降反応しません
WheelLeft、,WheelUp とかでも同じ挙動です

WheelRight::send,a
return
で反応しなくなるときはキーヒストリーにも何も記述されなくなってます

環境は win8 x64 & ahk v1.1.26.01(Unicode 32-bit) マウスはエレコム です
2017/12/17(日) 17:20:03.67ID:DTDP6E0d0
>>607
#NoEnv
#InstallKeybdHook
#UseHook
SendMode,Input

WheelRight::send,a

このスクリプトのみを書いたAHKを実行させてみたけど、問題なく動いてるよ。
何回目のホイール右倒しで無反応になるの?
2017/12/17(日) 17:31:48.08ID:3XY+E35O0
>>607
とりあえず>>601は無視した方が良いぞ
ろくに確認もしてないやつだから
2017/12/17(日) 20:17:29.22ID:MdcvIGaz0
>>608
ありがとうございます

WheelRight::
send,{a down}
keywait,WheelRight
send,{a up}
Return

で反応しなくなるのは2回目からです

とりあえずスクリプトの頭に
#NoEnv
#InstallKeybdHook
#UseHook
SendMode,Input
を付けてうまくいくのか様子を見てみます
2017/12/17(日) 20:23:31.32ID:DTDP6E0d0
俺のロジクールマウスの場合、ホイールに関しては d のみで u の発行は無い。
ボタンのアップ待ちは無駄かもよ。
2017/12/17(日) 20:56:02.37ID:7BTXFvHJ0
だからホイールには「離す」なんて概念は無いって
keywait,WheelRight とか言ってるやつがアホなだけ
613名無しさん@お腹いっぱい。 (ワッチョイ a787-OyZG)
垢版 |
2017/12/18(月) 00:49:44.45ID:fHENqFFZ0
そもそもお前らにとってマウスは仇なの?
そこまでキーボードでやりだい心境ってどうなの?
2017/12/18(月) 00:56:22.46ID:L9Sezhe2a
keywaitがだめと言うならSleepでもいいぞ。とにかく押し下げて離すをエミュレートさせたほうが確実って話だから
2017/12/18(月) 01:09:51.37ID:D6Zzwcuh0
脳波でカーソルうごかせたら万事解決するのに
2017/12/18(月) 01:55:14.23ID:82QJfRCd0
>>613
お前何と戦ってんの?
全く真逆のこと言ってんだがw
2017/12/18(月) 11:07:38.53ID:dHJj4PmW0
>>614
>551の時は代替キーがモデファイヤ含んでたからそういう処理が必要だったけどそうでないなら助長じゃね
WheelLeft/Rightは倒してる間中リピート発生するみたいだし本来なら
WheelRight::a
だけでいいはず

書き方じゃなく環境的な問題な予感
2017/12/18(月) 19:44:47.33ID:8SoFyHAV0
>>610です
#NoEnv
#InstallKeybdHook
#UseHook
SendMode,Input

スクリプトの頭に上のを付けてもやっぱり不定期にホイールは反応しなくなるので
諦めます
2017/12/19(火) 11:49:43.42ID:Van3T9iO0
WheelScroll.ahkとかWheelaccel.ahkだと、WINDOWS10の modern UI でスクロールできないです。
MGLを使った回避はあったのですが、単体利用での回避方法を誘導していただけないでしょうか。
よろしくお願いいたします。
2017/12/19(火) 12:15:03.89ID:ZXNMo4hja
あれってスクロールメッセージ送ってるはずだからそれがないなら反応しないとかだったような
2017/12/19(火) 17:14:58.39ID:knaBMDJJ0
>>619
WheelScroll.ahk modernUI対策版を上げました
ただwin10の場合は標準でリダイレクトホイール可能ですのでもうこのスクリプトは要らないかも
http://www6.atwiki.jp/eamat/pages/30.html
622名無しさん@お腹いっぱい。 (ワッチョイWW a787-XSIK)
垢版 |
2017/12/19(火) 22:34:23.63ID:TaxqTr0o0
FileGetShortcutを使って指定したショートカットファイルのアイコンをGUIに表示させたいのですが、FileGetShortcutで取得したアイコンのフルパスは「C:\Users\ユーザー名」の部分が%USERPROFILE%となっているようで、GUIに表示できません。
%USERPROFILE%を展開する方法などはないでしょうか。

Path := "C:\Users\ユーザー名\Desktop\Google Keep - メモとリスト.lnk"
FileGetShortcut,% Path,,,,, OutIcon
Gui, Add, Picture ,w32 h32 ,%OutIcon%
Gui, Show, AutoSize x60y60
2017/12/19(火) 22:50:38.94ID:spQDjKkw0
>>622
%USERPROFILE%を直接展開する方法は分からないが、
A_UserNameでログインしているユーザー名を
または、A_Desktopでデスクトップフォルダのフルパスを
取得することは出来るから置換すればいいような…
624名無しさん@お腹いっぱい。 (ワッチョイWW a787-XSIK)
垢版 |
2017/12/19(火) 23:25:51.46ID:TaxqTr0o0
>>623
ありがとうございます。
StringReplace, OutIcon, OutIcon,% "%USERPROFILE%" , %USERPROFILE%, All
この一行で解決しました。
2017/12/20(水) 08:57:02.76ID:CxHWmxkW0
>>621
お世話になってます。
WheelScroll.ahkの作者さんがいらっしゃったのですね。
スクリプトの修正ありがとうございました。

業務用ソフトだからでしょうか。
特殊なコントロールが多いせいか、必須スクリプトです!
加速以外は全部の機能を使ってると思います。

横スクロールのコメントがございました。
Shiftホイールで横スクロール部分を有効にしました。
2017/12/20(水) 17:56:12.25ID:CxHWmxkW0
もしお時間をいただけるならば、ご確認、ご対応いただければ幸いです。。

20150711バージョンにて、excelのシート切り替えのため、下記を追加しておりましたが
20171219バージョンで機能しなくなりました。
スクリプトを比較してみて、競合しそうな追加部分は無いように見えるのですが、いかがでしょうか。

WheelScroll.ahkの最終行に追加
#IfWinActive ahk_exe EXCEL.EXE
XButton1::Send ^{PgUp}
XButton2::Send ^{PgDn}
Return

あと、諦めていたことなのですが、excelにて、列の固定(ウインドウ枠の固定)をしていると横スクロールできません。
環境依存などあれば書き込みます。
よろしくお願いいたします。
2017/12/21(木) 00:44:34.93ID:tyYKgEs60
>>625-626
ご使用&報告ありがとうございます
当方先月やっとwin10に移行したばかりであまり動作確認が取れておりませんでご不便をおかけします
色々酷いので手直ししたいんですがWheelaccelやMGLのほうがいい感じに改良されてるようですし
こっちはもう自分用で汚くてもいいかな〜みたいな感じで放置してました
こんなでも使ってくださってる方がいるのは嬉しいです、ありがとうございます

>WheelScroll.ahkの最終行に追加
こちらでも20171219に同条件で追加し、Excel2007、2016の2種で試しましたがどちらも問題なくシート切替できました
もしやShiftホイール部のコメントを外されたときに */での閉じに失敗してたりしないでしょうか
; /***** チルトが無いマウス用
  :
; */
↑行頭にセミコロンでコメントのコメント化してみてください
(shift横スクロールはチルトのないm570使い続けてる自分のために入れたままにしてたんですが
今更チルトマウス使ってない人のほうが少なかろうということで今回コメントにしてしまいました
ややこしいことしてすみません)

excelの固定時横スクロールについては原因判明しましたので次回更新時に修正いたします
他にも手直ししたい箇所があるため少しお時間下さい
628名無しさん@お腹いっぱい。 (ワッチョイ f315-aRp6)
垢版 |
2017/12/21(木) 01:20:20.36ID:SquZXOD10
send {5 down}

の5を変数でできないです?
629名無しさん@お腹いっぱい。 (ワッチョイ f315-aRp6)
垢版 |
2017/12/21(木) 01:33:36.72ID:SquZXOD10
evalがあったのか〜
2017/12/21(木) 01:44:00.48ID:PxmCSxyY0
a:=5
send {down %a%}
631名無しさん@お腹いっぱい。 (ワッチョイ f315-aRp6)
垢版 |
2017/12/21(木) 02:05:04.78ID:SquZXOD10
>>630
%か〜さんんきゅ〜
2017/12/21(木) 09:26:50.18ID:Iywphmus0
>>627
ご説明賜り感謝致します。
コメントアウトの方法は理解しており間違っていませんでした。。
これから出張なので、来週改めて確認していきたいと思います。
その他含め、ありがとうございました!
私はm510でチルト出来るのですが、shift横スクロールの方がスクロール量をコントロールできるので便利です。
2017/12/21(木) 17:04:35.86ID:6WwU69go0
>>627
2017/12/21(木) 17:38:42.68ID:WwMk0bk3p
>>627
632です。
ahk_classで指定したらシートの切り替えができました。
あとコメントにありました互換固定のテストは、| modeの方でないと動かないソフトがありました。
ありがとうございました。
2017/12/21(木) 20:40:35.45ID:WrHlVdtR0
最近 本体アップデートされないですね
2017/12/21(木) 21:04:01.05ID:coGv5Pxe0
github見ると前回の更新からFixedが大分溜まってきてるし落ち着いたら更新するんでない
2017/12/22(金) 10:01:04.41ID:vcVm8yL20
ソートはせずに、前に出てきたものを同じ行を省く操作ってありますか
たとえば、
aaa
bbb
ccc
aaa
ddd
bbb

aaa
bbb
ccc
ddd
としてほしいのです。ソートはしません
2017/12/22(金) 12:31:37.29ID:DzJ++uf1r
>637
var =
(
aaa
bbb
ccc
bbb
aaa
)
Loop, Parse, var, `n
{
If(!InStr(newvar, a_loopfield "`n"))
newvar .= a_loopfield "`n"
}
Msgbox, %newvar%
2017/12/22(金) 12:35:31.15ID:CpHj++au0
すべての変数を一個ずつIfで比較して、一致しなければ出力してけばいいんじゃね
2017/12/22(金) 15:39:38.72ID:O+PHC10P0
ポインタの使い方がよく分かりません

i := 4
p := &i

MsgBox, % *p
MsgBox, % NumGet(p + 0, "int")

のように書いても両方共iとは関係のない値が出てしまいます
どうすればpからiの中身にアクセスできるのでしょうか?
2017/12/22(金) 15:49:45.03ID:O+PHC10P0
すいません、自己解決しました
VarSetCapacityとNumPutを使えば良かったのですね
2017/12/23(土) 08:30:47.00ID:jbJlOP0C0
あるアプリでツリービューをクリックするとサーバーと通信してその結果を
隣のリストボックスに表示する、というのがあります
今はAHKでmousemoveでカーソル移動してツリービュー上でクリックして
隣のリストボックスの情報をControlGet等でとっています
これをもっとスマートにしたいのですが、
ツリービューをクリックしてネットに情報を送るところを直接httpで送ることは
できませんか。具体的にどういうメッセージを送ってるのかを知ることは出来ないのでしょうか
URLDownloadToFileというのは見つけたのですがここまでのことはAHKでは出来ませんか
2017/12/23(土) 12:21:47.75ID:2pB5qSyN0
アプリの名前伏せられても通信プロトコルすら分からないわけだが
質問内容から想像つく範囲で答えるならdllcallからwinsockAPI叩けばおそらく可能ではある
ただSendMessageみたいに1発投げればいいってもんじゃないし
相手サーバーとのネゴシエート必要だし通信プログラムの知識は必要になると思うが
2017/12/25(月) 10:30:36.34ID:LC3msSEB0XMAS
v.1.1.27.00にアップデートした

●AutoHotkey Downloads
https://autohotkey.com/download/
2017/12/25(月) 15:17:48.28ID:4tI3Wjp7aXMAS
エディタであるように二打鍵からなるホットキーを設定したいのですが
どうやればいいのでしょうか?
たとえば
Ctrl+K→Ctrl+T
など
2017/12/25(月) 16:05:01.58ID:dcbUg3oN0XMAS
>>644
v.1.1.27.00にしたらremap用スクリプトがエラーで起動しなくなった
sc073::+vkE2sc073という記述が一箇所あってそこでエラー発生したてので、
sc073::+sc073としたらスクリプトが正常に動いた
今バージョンからvk**付けるとエラーになってしまうのか?
2017/12/25(月) 16:10:40.46ID:mWbboXyW0XMAS
>>645
wiki読め
2017/12/25(月) 16:31:55.71ID:LC3msSEB0XMAS
>>646
変更履歴によるとこれまでの「vk**sc***」という記述は廃棄されてsc***を削除した「vk**」でOK

●Changes & New Features
https://autohotkey.com/docs/AHKL_ChangeLog.htm
2017/12/25(月) 18:24:54.21ID:mj5Z4sTu0XMAS
ahk2なんて作ってるのか
期待はしたいが現状のコード1万行を移植しないといけないと思うとめっちゃだるいな
2017/12/25(月) 21:26:06.64ID:Hj7/q9TgaXMAS
ソースコードはテキストだ
つまり文章をコンバートするスクリプトさえ作ればなんとかなんじゃね?
2017/12/26(火) 04:54:57.32ID:uLjqpZSC0
A_Argsは嬉しい
2017/12/27(水) 16:25:05.40ID:Aacf2UtF0
#IfWinActive,無題 ahk_exe notepad.exe
としてもメモ帳を認識しない。
無題をやめて - にすると大丈夫。
何か問題ある?

スクリプトはUTF-8。
環境は、Windows10で、v.1.1.27.00です。
2017/12/27(水) 16:27:33.29ID:Aacf2UtF0
>>652
UTF-8のBOM付きやSJISしたら動作した。

ウィンドウタイトルの日本語を探すのは初めてだから、ごめんちょ。
2017/12/30(土) 03:58:59.09ID:gls+cAd20
マウスの中ボタン+右クリックにホットキーを当てると
中ボタン単体では動作しなくなってしまうので

Mbutton::send,{Mbutton}
return

としていたのですが、これだと中ボタンでドラッグアンドドロップできなくなることに気付いて

Mbutton::MouseClick,middle,,,,,d
return
Mbutton up::send,{Mbutton Up}
return

と書いてみたのですがうまくドラッグアンドドロップ出来ません
どのように書けば良いのでしょうか?
2017/12/30(土) 04:20:23.50ID:b6YqK2p70
>>654
中ボタン+右クリックにホットキーを当てた時点で
中ボタン単体の判定は中ボタンを離した時に行われる様になるので
通常の方法ではドラッグは出来なくなる
別の対処策としては2度押しでドラッグにするとか、別のボタンにドラッグ割り当てるとか幾つかやりようはあるけど
どうしても普通にドラッグしたいなら中ボタン+右クリックを諦めた方が良い
2017/12/30(土) 05:26:41.98ID:xIT/wV5A0
Hotkeyコマンドでホットキーをトグルさせるのは?
特定のウィンドウがアクティブ時、または中クリック長押しで切り替えとか
2017/12/30(土) 09:28:37.04ID:mI1ieLxE0
>>654
中ボタンでドラッグアンドドロップ出来るアプリを持っていないので確認できないけど、
オートスクロールのキャンセルはCtrlで出来るから、
#if GetKeyState("MButton","P")
RButton::
Send,{Ctrl}
ToolTip,M+R
Sleep,1000
ToolTip
return
#if
こんな感じでどうだろ
2017/12/30(土) 10:20:44.83ID:gls+cAd20
>>657
出来ました!ありがとうございます
GetKeyStateを使えばホットキーとして割り当てなくて済むのですね!
2017/12/30(土) 13:31:53.23ID:fvgI/zHL0
>>658
それだと中+右ボタンを押す時にも中ボタン単体押しが送信されるのでは?
それで構わないならば
~MButton & RButton::
にすればいいだけだな
2017/12/30(土) 21:59:48.99ID:gls+cAd20
>>659
>>657でも出来るのですが  ~MButton & RButton:: でも出来ますね
~ の意味を調べたら イベントを乗っ取らず、そのままシステムに通す って書いてあったのですが
元のキーの機能を殺さずに的なことなんでしょうか?
2017/12/31(日) 12:27:31.81ID:cHZnLDz90
v1.1.27.01が公開されたよ

●Changes & New Features
https://www.autohotkey.com/docs/AHKL_ChangeLog.htm
2017/12/31(日) 15:22:16.33ID:VvllMHuur
>>661
vkF3SC029::rerurn ;全半角
vkF4SC029::rerurn ;全半角up
でエラー出る
俺環かな
スキャンコードなし指定ならokだた
2017/12/31(日) 17:48:52.87ID:iRBxU1N10
>>662
久しぶりにアップデートしたら自分もInvalid hotkeyってエラー出たわ
とりあえず1.1.26に戻した
2017/12/31(日) 17:56:20.08ID:iRBxU1N10
仕様変更あったのね
チェンジログ読んだらちゃんと書いてあったや
Scripts containing hotkeys of the form VKnnSCnnn:: will need to be corrected by removing SCnnn, which was previously ignored.

しかし互換性持たせてくれればいいのになぁ
2018/01/01(月) 22:19:27.79ID:Yv5Bp8s50
エラーが出るかと何かと思った
スキャンコード全部削除したけど動作がおかしくならないか不安
2018/01/02(火) 00:23:22.16ID:cBxV7kcZ0
え?scxxxのみで何も問題ないけど…
2018/01/05(金) 23:03:42.41ID:l4zNz2Hg0
あー、先にここ見とくべきだった。更新したら動かなくて何だろうかと
せっかくなので、これからverup予定の方に、自分が修正したキー一覧を以下に
変換…vk1Csc079
無変換…vk1Dsc07B
:(コロン)…vkBAsc028
:(コロン)…vkBAsc03A
;(セミコロン)…vkBBsc027
;(セミコロン)…vkBBsc03B
,(コンマ)…vkBCsc033
\(バックスラッシュ)…vkE2sc073
CapsLock…vkF0sc03A
ひらがな/カタカナ…vkF2sc070
全角/半角…vkF3sc029
全角/半角…vkF4sc029
grepツールで済ませてそんなに時間はかからなかったけど、久しぶりに面倒な更新作業だった
668sage (ワッチョイ 9f13-fYpg)
垢版 |
2018/01/06(土) 01:51:53.58ID:gHX87yO10
vkxxscxxxが使えなくなって
vkxxまたはscxxxのどちらかで指定と理解してるんだけどいいんかな?

使ってる人いるかわからないけど・・・
vkff系のscはkeywaitでエラー出たので
sc056::
keywait,vkff
return
としたらエラー無しで動いた。

sc05eは使えなくなったが、こいつだけvkff::をアテた。
とりあえず他とバッティングしてない。
2018/01/06(土) 22:19:48.65ID:L9VE7V/R0
こんばんはー、ホットストリングって機能に初めて手を出してみたんですけど、
ちょっと???な部分があるのでお伺いしたいです。
「[[」って打ったら「『」、「[[[」って打ったら「【」になるようにするにはどう書けばいいんでしょう?
Z0オプションでバッファが残るっていうならそれ指定するだけでいいのかなーと思ったら思うように動かず。
フラグを変数に格納するなり、複数行書かないとダメでしょうか?
2018/01/06(土) 23:15:38.82ID:G7wFYGrJ0
ここ↓見るとか具体的にスクリプト晒すとかしないとレス付かないぞ
ホットストリング - AutoHotkey Wiki
http://ahkwiki.net/Hotstrings
2018/01/07(日) 00:56:44.38ID:JkICX0vw0
ああいえ、読んだんですがイマイチ仕様を把握できず、
シンプルな構文で書けるのか書けないのか書けないのか、単にそれだけを慣れている人に聞きたかったんです。
必要ないでしょうけど一応晒すと、
:*Z0:[[::『
:*:[[[::【
で[を3回押したら【になりそうだなーと思ったのですがならないなーってことでして。
2018/01/07(日) 01:23:31.75ID:rPkuxGOZ0
ホントにちゃんと読んだのか?
特に「終了文字」の項目を・・・
2018/01/07(日) 01:54:30.71ID:JkICX0vw0
>>672
……? *で不要化してますよね?
2018/01/07(日) 12:54:08.50ID:vRDST1RB0
本当にちゃんと読んだか?
「置換後のテキストに2バイト文字を使うことはできないので、スクリプト実行型でクリップボードを経由して貼り付けるなどの方法を取る必要がある」
2018/01/07(日) 16:17:48.05ID:JkICX0vw0
>>674
ご自分で試されましたか?
大分前から2バイト文字送信も実装されているようですが
そもそも質問の方向性が全く違います
676名無しさん@お腹いっぱい。 (ワッチョイWW 2b87-8bQF)
垢版 |
2018/01/07(日) 16:59:29.06ID:TEnpSFgY0
>>671
『が入力される時に[[がBSで消されたことになるので、続けて[を打っても:*:[[[::が実行されない。
677名無しさん@お腹いっぱい。 (ワッチョイWW 2b87-8bQF)
垢版 |
2018/01/07(日) 17:03:26.18ID:TEnpSFgY0
ホットストリングでやっても出来なくはないけど、ややこしいし色々問題あるからおすすめしない
2018/01/07(日) 17:41:28.22ID:JkICX0vw0
>>677
あー、簡単に上手いことはいかないんですね。
B0にして、かつスクリプト実行型に変えたらようやく入力バッファ残りました。
しかもバグなのか、必要とされるBackspaceの量(置換後に本来消す文字数)まで引き継がれてしまい、
後続もB0で手動でBackspaceの数を調整しないといけないハメに。
さらに言うと、「:B0 O*:abc::」のあとは「:B0 O*:bcd::」では反応せず、「:B0 O*:abcd::」のみ受け付けると仕様がよーわからん…。
とりあえず↓のように出来ましたけど、もっとスマートな書きかたあります?

:B0 O*:[[[::{Backspace}【
:B0 O*:[[::
Send, {Backspace}『
Return
679名無しさん@お腹いっぱい。 (ワッチョイWW 2b87-8bQF)
垢版 |
2018/01/07(日) 18:35:00.89ID:TEnpSFgY0
>>678
?オプション付けないとa〜z打った直後に動いてくれないから付けた方が良い
ちなみに、他にキー入力をいじるソフト(やまぶきRとか)使ってるとちゃんと動かない事がある
2018/01/10(水) 01:51:34.06ID:BCaOYMAn0
ゲームにAHKを利用しているのですが以下はQキーを押したとき
@Iキーを送る
A指定座標上で右クリ
B再びIキーを送る
という単純なものです

Q::example() ;
examplel(){
BlockInput On
Send {i}
Click right 1305,829
Send {i}
BlockInput Off
return
}

ここで質問なのですが、このマクロによる操作(@〜Bですね)が一通り終わった後、マウスポインタをもとの位置に戻ってこさせるということは可能でしょうか?
2018/01/10(水) 02:51:37.30ID:4l+dsFFh0
>>680
移動する前に座標取得
MouseGetPos
2018/01/10(水) 10:42:20.97ID:JKf1Cq3D0
>>681
ありがとうございます
683名無しさん@お腹いっぱい。 (ワッチョイ ea67-zHNy)
垢版 |
2018/01/11(木) 22:19:09.67ID:HG8U+U2Z0
RegExReplaceでファイルパスのファイル名だけを置き換えようとしたんですけどこう書いてしまうと

NewStr := RegExReplace("C:\a\b", "([^\\]+?)?$", "c")
tooltip,%NewStr%

結果が「C:\a\cc」となってしまいます。なぜか置き換え文字に指定した文字が二重で入力されます
以下のように置き換え回数を1に制限すると「C:\a\c」となってくれます

NewStr := RegExReplace("C:\a\b", "([^\\]+?)?$", "c",,1)
tooltip,%NewStr%

使っている正規表現がまずいのかRegExReplaceの記述の仕方がまずいのかわかりませんが置き換え文字が二重に入力されないようにするにはどうしたらいいんでしょうか?
2018/01/11(木) 22:55:45.09ID:8RyCoUmG0
>>683
RegExReplace("C:\a\b", "(.*\\).*", "$1c")
2018/01/12(金) 02:04:04.29ID:+j8QRcK60
>>683
拡張子、ファイルかフォルダの考慮も忘れずに
2018/01/13(土) 13:16:34.08ID:aFWvyjXJ0
>>683
正規表現がまずくて、量指定子"?"とグループ化"()"の使い方が迷走してるんだと思う
個人的にはこう
RegExReplace("C:\a\b", "[^\\]+$", "c")
2018/01/13(土) 13:50:09.04ID:NZPiUPRF0
いつの間にかバグフィックスが進んで
1.1.27.04になっとるやないかい
688名無しさん@お腹いっぱい。 (ワッチョイ ea67-zHNy)
垢版 |
2018/01/13(土) 23:00:31.98ID:u3DR4K2j0
>>684
>>685
>>686
ありがとうございます
参考になりました
2018/01/14(日) 11:50:07.84ID:M43+YLx+0
以下のスクリプトを「常時」「全てのウィンドウに」適用する(キャプションバーを隠す)にはどうすれば良いでしょうか

;キャプションバーをなくす
LWIN & LButton::
WinSet, Style, -0xC00000, A
return

「bug.n」の以下のスクリプトでも同様のことができているようなのでこの方法でもかまいません
(キャプションバーの非表示という部分の抽出の方法)
https://github.com/fuhsjr00/bug.n/blob/master/src/Window.ahk

実はこれで1年以上悩んでおります。
どうかよろしくお願いします。
2018/01/14(日) 13:28:36.81ID:SeWYloWZ0
>>689
https://arak.jp/diary/?20091030S1
2018/01/14(日) 13:50:26.25ID:M43+YLx+0
>>690
できました!
本当に助かりました
ありがとうございました
692名無しさん@お腹いっぱい。 (ワッチョイ 1e63-Un5q)
垢版 |
2018/01/15(月) 11:47:41.46ID:r2mlDsgK0
sc と vk だが,フォーラム読む限りはvkのほうがいいみたいだぞ.scは”still supported”とか書いてあるが,いつ消されるかわからんしな. 
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況