AutoHotkey スレッド part26

■ このスレッドは過去ログ倉庫に格納されています
2018/04/25(水) 18:08:09.39ID:LmrG+Efz0
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512

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

■前スレ
AutoHotkey スレッド part25
https://egg.5ch.net/test/read.cgi/software/1505357560/

■日本語解説等
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: default:vvvvv:1000:512:----: EXT was configured 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
2019/02/04(月) 20:43:53.17ID:vH5so+Ym0
正規表現を勉強しましょう
2019/02/04(月) 20:54:18.24ID:VZ8qaKeZ0
>>758
http://ahkwiki.net/RegEx#.E3.82.AA.E3.83.97.E3.82.B7.E3.83.A7.E3.83.B3
2019/02/04(月) 20:57:04.58ID:3xzTX1F70
なんだあ、出来ました。ありがとうございました
そういう特殊なのがあったんですね
2019/02/06(水) 12:53:20.44ID:Qp8c4kFo0
Loopで一行ずつ分解して先頭にaをくっつけていくという方法でもいいんですよ
2019/02/06(水) 18:09:37.57ID:zFYVquxw0
半角全角を
英語キーボードみたいにbacktickとして認識させたいんだけど
backtickのキー名って分かる人いませんか?
2019/02/06(水) 18:25:34.46ID:hlw3BzPp0
>>763
自分で確認しよう

#InstallKeybdHook
; #InstallMouseHook
KeyHistory
2019/02/06(水) 18:53:32.25ID:zFYVquxw0
>>764
ありがとう
vkF3::vkC0
vkF4::vkC0で置いたんだけど
ゲーム内だったらキーバインドしようとすると
pc-98 @って認識されるんですよね
pc-98 @で認識させると今度は押したら押しっぱなしになっちゃうから
vkF3::send,{vkC0}
vkF4::send,{vkC0}
にしたらキーバインドはできるけど反応されなくなっちまった
LOLというゲームなんだけど・・・
2019/02/06(水) 19:11:38.41ID:hlw3BzPp0
>>765
AHKのフック$
Sendのモード変更、間隔変更
2019/02/06(水) 20:12:01.26ID:k9lrV6bn0
>>765
まず日本語キーボードの場合 {vkC0} は @ のことだから反応しないのは当たり前
backtickは日本語キーボードでは Shift+@
テキストならこれで行けるけどLOLの挙動は知らん

ちなみに余談だが物は日本語キーボードでも言語設定を英語キーボードの設定にしてしまえば
半角全角キーはbacktickに変わる(その他の記号なども全て英語キー準拠になるので注意)
2019/02/06(水) 20:23:39.40ID:k9lrV6bn0
>>765
あとは少し上でも言われてた散々既出のテンプレ>>4も読んでおいた方が良い
2019/02/08(金) 13:58:51.39ID:wYl6SAwa0
clipboard=%txt%
としたのですが、txtをよそからコピペしてきたものなのでテキスト以外の何かが入っているようで
そのあとがうまく行きません

クリップボードにコピーするときに、テキストだけをコピーする方法ってありますか
ちなみにtxtに直接テキストを代入してやるとうまくいきます
2019/02/08(金) 14:05:27.93ID:wYl6SAwa0
具田的にいうと、エクセルからVBAを使って複数セルをコピーして持ってきたものをそのまま使うと
ダメで同じものを試しに手で文字列にして直接clipboardに代入するとうまく行きます
変数xに何かが入っていて、これから文字だけ抽出するというのでもいいです
2019/02/08(金) 17:36:15.55ID:j+wMk+Qm0
ahkのcbで扱えるのはテキストだけだろ
それ以外のフォーマットはDllCallでうだうだやるしかない
2019/02/08(金) 17:49:12.95ID:wYl6SAwa0
すいません。エクセルのコピーは特殊なことをしているようで、AHKの問題ではなさそうです
この質問は撤回します
2019/02/08(金) 17:55:33.97ID:hNPx+2dr0
Excelからコピーしてきたならすでにクリップボードになんか入ってるんだから
clipboard=%txt% じゃなくて txt=%clipboard% じゃないの?
普通にタブ区切りテキストで取得できてるけど
https://i.imgur.com/GnBFhMo.png


VBA使っててクリップボードに入れる前に必要な情報だけ選別したいなら
VBA側でテキスト加工してからクリップボードに入れたらいいんでね

Excel VBA から、クリップボードにテキストをセットする
https://qiita.com/rohinomiya/items/1b719bc90d7497688699
2019/02/08(金) 18:23:10.12ID:wYl6SAwa0
>>773
おおすばらしい
クリップボードにテキストをセットする
これだ。私は、
Range(--).Copy
を使ってやってたのでなんかおかしかったんです
ありがとうございました
2019/02/09(土) 09:59:24.02ID:0gnksyzc0
tempフォルダ内のフォルダを削除したいのですが、どうしたらいいでしょうか?。
以下の様にしてもフォルダは削除されませんでした。

FileRemoveDir, %A_WinDir%\Temp\*, 1
2019/02/09(土) 10:19:34.56ID:0gnksyzc0
すみません、検索したら探せました。
お騒がせしました。

Loop, %A_WinDir%\Temp\*, 2 , 0
{
FileRemoveDir, %A_LoopFileLongPath%, 1
}
2019/02/11(月) 11:11:20.52ID:4JpBGiWx0
デスクトップのリストビューを更新するスクリプトはどう書けばいいですか?
LVM_UPDATE := 0x102a これ以降さっぱり分かりません
2019/02/11(月) 11:29:42.41ID:XFeKJxE30
>>777
explorer.exeならF5
2019/02/11(月) 11:50:40.82ID:4JpBGiWx0
>>778
ブラウザみたいに更新できるなんて知らなかった
ありがとう!
2019/02/13(水) 11:46:40.28ID:LX5xNagOa
2つのキーを長押しした時に発動するホットキーはどうやって設定すればいいでしょうか。
具体的にはShift+CapsLockを長押しで実行するようにしたいです。
以下のスクリプトは2回目のKeyWaitで必ず0が返ってきてしまいます。

Shift & sc03A::
KeyWait, Shift
KeyWait, sc03A
If (ErrorLevel)
{
Send, Shift & sc03A
}
Else
{
TrayTip, , 長押ししてね。, ,
}
Return
2019/02/13(水) 11:51:38.06ID:LX5xNagOa
まちがえた、最初のKeyWait2行は、「,T0.2」が抜けてました。
2019/02/13(水) 12:46:30.85ID:DtDfhWH00
CapsLockに関しては>4を参照
2019/02/13(水) 15:47:38.34ID:LX5xNagOa
>>780ですが、自己解決しました。
sc03Aの代わりに{CapsLock}を使ったら認識してくれました。
ホットキーも+CapsLockでいけました。
お騒がせしました。
2019/02/19(火) 07:32:26.09ID:/Y9aNw5G0
Googleでahkwiki.netが検索に引っかかるのに404まみれで辛い
2019/02/20(水) 09:32:21.11ID:HEs7YX4m0
windows10,autohotkeyのバージョンはv1.1.26.01です
スタートアップにahkのショートカットを登録して使用しています
altキーをLalt::aのように別のキーに割り当てているのですが、
起動して直後の状態でctrl+alt+〇のようなショートカットキーを押すと普通にショートカットが反応します
単体でLaltを押すとaが入力されます
その後タスクバーからautohotkeyの画面を開いてreloadscriptを行うとctrl+alt+〇が反応しなくなるのですが
これは何故なんでしょうか
出来れば最初から反応しなくなるようにしたいんです
2019/02/20(水) 10:07:31.48ID:gmyAfssR0
スクリプトの実行するタイミングが早すぎるんじゃないかな
試しに2分後にスクリプト(スクリプトB)を実行するスクリプト(スクリプトA)を経由させてみては?

sleep, 120000
Run, スクリプトB.ahk
を記述したスクリプトA.ahkをスタートアップに登録

もしくはAutohotkeyを使わず、ChangekeyというソフトでAltキーをAに置き換えておく
2019/02/21(木) 18:23:47.65ID:qskE06cf0
>>786
こんどそれを試してみます
ありがとうございます
2019/02/22(金) 14:24:29.45ID:D0iwsF1G0
>>786
上の方法を試したら今のところ不具合なく動いてます
ありがとうございました!
2019/02/23(土) 01:47:56.73ID:s6AaMiGtr
既出だったらすまん
.ahkが関連付けされてない環境下でショートカットにファイルパス引数付けて実行するとき
ショートカットの詳細プロパティで管理者として実行チェック入れないと
管理者でログインしてても権限付かないのな

WinMoveが動いてないのに気付くまで気が付かなかった
環境Win10x64
2019/02/23(土) 11:37:41.36ID:DNRf3WAIa
>>789
UACをオフ
791名無しさん@お腹いっぱい。 (ワッチョイ 66dc-ldXb)
垢版 |
2019/02/27(水) 21:27:13.84ID:CiDwXRSW0
ブラウザ上で日本語を選択した時に検索する様にしているのですが、文字化けしてしまいます。
回避する方法を教えて下さい、よろしくお願いします。
#c::
FileEncoding, CP932
ClipSaved := ClipboardAll
Clipboard := ""
Send, ^c
ClipWait
Run, "http://www.bing.com/translator/?from=en&;to=ja&text=%Clipboard%"
2019/02/27(水) 21:41:20.92ID:9a9zwy1q0

それ英日翻訳じゃん
2019/02/27(水) 21:45:14.44ID:rrckRpup0
何だかようわからんがまずFileEncoding, CP932いらないんじゃないか
794名無しさん@お腹いっぱい。 (ワッチョイ 66dc-ldXb)
垢版 |
2019/02/27(水) 21:49:09.97ID:CiDwXRSW0
日英にしてもだめでした。
795名無しさん@お腹いっぱい。 (ワッチョイ 66dc-ldXb)
垢版 |
2019/02/27(水) 21:51:16.58ID:CiDwXRSW0
ああ、すみません、使用しているVersionは1.1.24.1 ANSI 32bitです
2019/02/27(水) 21:55:40.17ID:/ia5FaxV0
>>791
とりあえずそのまま使ってみたけど日本語を選択しても文字化けしなかったぞ
Win10 / AHK 1.1.29.1
何か環境の問題か?
2019/02/27(水) 21:56:56.01ID:/ia5FaxV0
>>795
ANSIだからじゃね
Uni使ってみ
798名無しさん@お腹いっぱい。 (ワッチョイ 66dc-ldXb)
垢版 |
2019/02/27(水) 22:01:53.26ID:CiDwXRSW0
IEだと文字化けするようです。
Chromeにしたら文字化けしませんでした。
これで使ってみます、ありがとうございました。
2019/02/27(水) 22:09:08.33ID:QGMj7MyU0
>>ID:CiDwXRSW0
WEB検索はueと連携するのがおすすめ!
もしくは自前でエンコするか

ue ttp://www2.axfc.net/u/3902154
UrlEncode() ttp://hibari.5ch.net/test/read.cgi/software/1280482227/235
800名無しさん@お腹いっぱい。 (ワッチョイ 66dc-ldXb)
垢版 |
2019/02/27(水) 22:58:07.57ID:CiDwXRSW0
ありがとうございます、試してみます。
2019/02/28(木) 16:28:21.01ID:gWpaONge0
ret := foo(
1,
2,
3)
と改行挟んじゃ駄目なの?
2019/02/28(木) 18:37:14.67ID:Zy0nnfk30
>>801
http://ahkwiki.net/Scripts#.E8.A4.87.E6.95.B0.E8.A1.8C.E3.81.AB.E6.B8.A1.E3.82.8B.E5.BC.8F.E3.83.BB.E3.82.B3.E3.83.9E.E3.83.B3.E3.83.89


ret := foo(1
,2
,3)

なら可
803名無しさん@お腹いっぱい。 (ヒッナー 7f73-SKB1)
垢版 |
2019/03/03(日) 21:55:53.84ID:UPkckduS00303
IME.ahk のIME_GetConvMode()を呼んでいたら、
特定のアプリで時々おかしくなる。

デバッグしてみると、おかしくなるときに
-2147483623 の値を返してくる。
なお、本来ならば25の値を返すべき。

これを16進数に変換すると、FFFFFFFF80000019
なんと、上位31-15bitがおかしなことになっている。
という訳で、下位のビットだけ取り出すようにしました。

vConvMode := IME_GetConvMode() & 255

これで、いまのところ大丈夫そうだが、何故このようになるのか不明。
(もしかして、IME.ahk って、32bit環境が前提なのでしょうか。)
804名無しさん@お腹いっぱい。 (ワッチョイWW d7b1-ZXL5)
垢版 |
2019/03/04(月) 22:34:50.17ID:HiTCLtwi0
今日、人生で初めてパソコンを触りました2歳です
おすすめのスクリプトを教えてください
805名無しさん@お腹いっぱい。 (ワッチョイ 97b1-5J0D)
垢版 |
2019/03/05(火) 01:30:43.28ID:6KPoryVC0
shiftキーの機能を保持したまま、shift単打に何かしらの働きをさせたい場合はどうすればよいでしょうか
単純にlshft::とかやると元々のシフトができなくなってしまいます
2019/03/05(火) 01:36:16.17ID:KNkPH5Gq0
>>805
~lshft::
2019/03/05(火) 06:17:33.34ID:6KPoryVC0
>>806
素早い返信ありがとうございます!
なんか難しいことしなくても1字足すだけでいいみたいでよかったです
808名無しさん@お腹いっぱい。 (ワッチョイWW d7b1-ZXL5)
垢版 |
2019/03/05(火) 23:14:20.46ID:OisHrBAc0
例えばマウスジェスチャ
その存在を(そういう概念を)知らなくても別に困らない
しかし、一度使ってしまうと、使わない時にしんどい

そんな感じで、実はめちゃくちゃ作業効率あがるのに、概念の存在すら知らないプラグインがあるのかな〜なんて
2019/03/06(水) 15:16:41.42ID:rp4+iZ/10
txtの先頭行に”AB”を書き加えたいのですが、どうしたらいいですか?。

FileAppend,
(
ABC
ABCD
), .\TEST.txt

FileRead, HENSUU, .\TEST.txt
If (!RegExMatch(HENSUU,"AB"))
{
FileDelete, .\TEST.txt
FileAppend,
(
AB
%HENSUU%
), .\TEST.txt
}
2019/03/06(水) 16:32:27.96ID:K+HVjljt0
>>809
サンプル ttp://pastebin.com/raw/AN55Gb00
2019/03/06(水) 16:53:09.40ID:5W18jL5p0
>>809
ifの判定式が正しく書けてないだけで他はそれでできてる

ただ改行コードがCR+LFなのかLFなのかを
書き込むとき読み込むとき正規表現に掛けるとき常に意識しておかないとミスりやすい
2019/03/06(水) 18:03:32.36ID:rp4+iZ/10
やほー出来ました!有難うございます!!!!!。
本当に助かります!。
813805 (ワッチョイ a7b1-80Wi)
垢版 |
2019/03/08(金) 19:41:34.52ID:R4uMOZvC0
あああ>>805ですが
あああ>>806さんの言うとおりに

~LShift::
Send, あああ
Return

としてみたらあああShiftを押すたびに「あああ」が出るようになってしまいます…
Shiftを押したあと、そのまま何もせずに離したときだけ「あああ」が出るようにするためには…
変数とかだとたまにずれると聞きますし…
2019/03/08(金) 21:53:19.62ID:C7+mXGSPD
F1だけ1秒押さないと反応しないようにしたいけど可能ですか
2019/03/08(金) 21:55:04.21ID:/nv/U1UP0
>>814
可能です
wikiのサンプルコード参照
2019/03/08(金) 22:00:29.76ID:C7+mXGSPD
>>815
ありがとうございます!捗ります!!
2019/03/09(土) 13:04:18.93ID:2Yt1jfFd0
813は何がしたいんだろね
それじゃShiftキー単体がトリガーになってんだからShift使えないのはあたりまえじゃん
~を頭に付けてる意味が無い

仮にShiftキーの状態を取得して
Shiftキーをupのときだけ「あああ」を出すことはできるが
そもそも、それ以外でShiftキーを送りたいときでもキーはupするでしょ
downのときだけShiftを送るとしても「あああ」を出す前にShiftが送られてしまうし
Shiftキーのみであれもこれもというのは無理がある

~を頭に付けるのはコンビネーションキーを使った時にこそ意味がある
~Shift & a::
Send, あああ
Return
2019/03/09(土) 13:18:13.97ID:f6luyZem0
shiftと同時に押されてるキーがあるかどうかで分岐したいんでしょ
getkeystateは何が押されてるかを網羅するのは大変だから
dllcallでGetKeyboardStateでも呼び出したらいいんじゃね
2019/03/09(土) 19:40:53.21ID:amiJbyy8r
>805は
>shift単打に何かしらの働きをさせたい
って言ってるから
>>813
Shiftを殺さずにShift単体を何らかの定型文入力に使いたいなら、やりたい事の答えにはなってないけど俺ならこうする

;AutoExecuteセクションでtc1に代入しておかないと1度目だけ失敗する
tc1 := a_tickcount
return
;LShiftダブルクリックで入力
LShift Up::
tc2 := a_tickcount
if( (tc2-tc1) <= 400 )
Send, aaa
tc1 := tc2
return
つかこれもwikiに載ってたような
2019/03/09(土) 19:45:20.73ID:amiJbyy8r
俺も教えて下さい
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系は受け付けませんでした。
2019/03/09(土) 20:37:40.96ID:CNsQjUC/0
>>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
2019/03/10(日) 00:29:30.77ID:kZRNstrc0
受信したメールの自動化したいけど難しい…
一番の敵は文字化け
outlook買ってcomobject操作するしかないのかな
2019/03/10(日) 06:43:20.31ID:kZRNstrc0
gas…なにこれしゅごい…
2019/03/10(日) 12:04:36.62ID:EETlpcuo0
ありがちなツールではあるが

KeyboardStateView の評価・使い方 - フリーソフト100
https://freesoft-100.com/review/keyboardstateview.html
2019/03/15(金) 11:15:25.73ID:MrXm2Aznd
sleepで指定した秒数に最大で0.02秒程度の誤差が発生するんですが、この誤差をなくすのは無理でしょうか?
2019/03/15(金) 18:23:55.74ID:d5R2M24F0
>>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.16ms


※10ms以下の短いSleepが必要ならこれ
https://autohotkey.com/docs/commands/Sleep.htm#Examples
2019/03/16(土) 03:43:59.48ID:zmDGDoiB0
>>826
ありがとうございます!
2019/03/17(日) 00:31:19.11ID:PzFP5jHx0
gdriveのコマンドラインからの操作ってautohotkeyからでもできるのかな
2019/03/17(日) 07:47:18.85ID:yQ9Iq/3v0
OnClipboardChange("ClipChanged")として、クリップボードが変化したら
ClipChanged()という関数を呼び出すようにしました
で、このClipChangedの中で、Clipboardに値を代入したいのですが、そうすると、そこでまた
ClipChanged()が呼び出されてしまいます
呼び出されないようにする方法ってありませんか
2019/03/17(日) 10:21:21.23ID:Y4jFFXT70
>>829
関数抜ける前にSleep入れる うちだと30くらい
2019/03/17(日) 10:23:00.67ID:yQ9Iq/3v0
>>830
ちょっと驚きました。そういう対処で出来るのですか
やってみます
2019/03/17(日) 18:07:06.72ID:1pxNjMPy0
>>831
遅延無く確実に止めたいなら一旦停止させればいい

OnClipboardChange("ClipChanged")

ClipChanged() {
OnClipboardChange("ClipChanged", 0)
Clipboard := "hoge"
OnClipboardChange("ClipChanged", 1)
}
2019/03/17(日) 21:16:25.60ID:Is1zibCb0
>>832
一旦停止出来るのですね。ありがとうございました
834名無しさん@お腹いっぱい。 (ワッチョイ 43b1-AgyY)
垢版 |
2019/03/18(月) 17:28:54.27ID:n8uSvXmY0
^vでクリップボードの中身を貼り付けたあと、その右でなく左にカーソルが来てほしいのですけど
( 貼り付け文字列| でなくて |貼り付け文字列 となってほしい)

{Enter}^v{Up}{Delete}
ってやる以外にもっといい方法ないですかね…
835名無しさん@お腹いっぱい。 (ワッチョイ 43b1-AgyY)
垢版 |
2019/03/20(水) 00:48:52.89ID:O8v9in+G0
Wikiにあったサクラエディタのiniファイル
http://ahkwiki.net/Sakura
をサクラエディタにインポートしようとしたら「不正な形式です」と言われて失敗するんですけど
なんでですかね…
2019/03/20(水) 23:14:06.69ID:cVGAielV0
>>834
A_CaretXYを取得しておいてClick…
2019/03/21(木) 07:56:12.33ID:5EN2aNq80
今までずっとwindowsでAHK使ってきたんですけど、この度macに乗り換える事になったのですが、マック使ってる方はAHKの代替として何使ってますか?
2019/03/21(木) 08:27:47.09ID:YwAbBYS8r
そういう人は仮想環境でWindows動かしてるんじゃない?
2019/03/21(木) 08:46:12.12ID:/2p+YB1W0
>>837
ググるかマックスレで聞いてみれば
それであまり出てこなければ、今後何かあって誰かに聞きたいことがあっても聞くことも出来ず、トラブルを解決できないよ
2019/03/21(木) 09:33:10.42ID:W9r+4rA80
macの場合unixベースでのコマンドライン環境は整ってるだろうし
GUI上での効率化にはさほど重きを置いてなさそうなイメージあるな
実際はどうだかわからんけど
2019/03/21(木) 14:54:02.88ID:CD5POuwD0
それWinだってPSあればAHKいらないねって言ってるのと同じようなものでは
842名無しさん@お腹いっぱい。 (ワッチョイW 6797-WQoH)
垢版 |
2019/03/21(木) 15:06:01.72ID:W6QJct900
カラビナ〜とかってやつを使うんじゃない?
2019/03/21(木) 15:27:29.41ID:3jzLpwy10
keyhacはmacでも使えるよ
2019/03/21(木) 16:55:39.19ID:W9r+4rA80
>>841
winの場合PSもcmdも正直使いやすいとは言えないからなあ
2019/03/22(金) 11:21:47.80ID:vm+JVReM0
mac板池
2019/03/22(金) 14:18:13.09ID:CzS1buBAa
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
2019/03/22(金) 14:50:00.28ID:AwIUcoeS0
>>846
イージーミスだな

Send, {AppsKey}
2019/03/22(金) 15:17:36.35ID:CzS1buBAa
>>847
ごめんなさい、そこは俺の書き込みミスだった。
Send, {AppsKey}
にしててもダメで、いくら長押ししてもErrorLevelが1になってくれない。
2019/03/22(金) 15:41:26.13ID:AwIUcoeS0
>>848
うちではそれで正常に動くのでおま環かな
長押しすればメッセージボックス開く
短く押せば元のキーの動作する
2019/03/22(金) 19:24:47.10ID:bnUQZBeP0
室屋って今までいたか?
2019/03/22(金) 19:52:27.99ID:ZntNu9BJ0
>>846
タイマーを利用した方法でどうぞ
Example #3
https://autohotkey.com/docs/commands/SetTimer.htm#Examples
2019/03/22(金) 20:37:55.39ID:CzS1buBAa
>>851
ありがとう。けど、これって長押しじゃなくて連続押しのサンプルだよね。

AppsKeyの方は他のAppsKey & key::を全部殺したらKeyWaitが動いた。
他のホットキーで使ってるとダメってことか……。
2019/03/23(土) 00:35:36.76ID:AYFl8FRa0
ahkは変数とか文字列の参照方法がキモ過ぎ。

Test_DebugMsg(msg) {
CoordMode, Mouse, Screen
If %DEBUGGING%
{
If msg !=
{
SplashTextOn,300,40, Debug, %msg%
}
}
}
---------------

Test_DebugMsg("あいうえお")

これで動いたけど何でif文の中でmsg が%なしで参照できるのか
何で空文字の比較が、こんな訳ワカメなシンタックスなのか
後文字列も
CallFunc("test")だったり、単に testだったりスゲーわかりにくい。
何考えて言語設計したんだろうね?
2019/03/23(土) 00:56:59.49ID:i51tlT/m0
わざわざ非推奨の旧形式使っておいて何言ってんだ
2019/03/23(土) 05:36:10.65ID:AYFl8FRa0
>>854
一昨日から触り始めたばっかりだ。
どこが非推奨なのかさっぱりわからんです。
マニュアルみたいなwikiみたいなやつに乗ってるから、そうしただけで・・・。
どうやって非推奨であることを探せばいいのでしょう?
2019/03/23(土) 06:44:07.50ID:QMslRpCG0
>>855
確かに一部、首をかしげるところもあるが、いい言語だぞ
触り始めたばかりのド素人がそういうことをいうもんじゃない
お前、perlはやったことあるのか。あれにもちょっと似てるところがある。perlは俺は大好きな言語だ
2019/03/23(土) 06:49:47.19ID:LVLk7hPf0
perl的というかshell script的だな
shell script的な言語はだいたい構文がキモくて場当たり的なんだよな
その分記述がお手軽なんだが最初は変数の参照、文字のエスケープ周りでつまずきまくる
2019/03/23(土) 06:54:21.07ID:QMslRpCG0
>>857
単に慣れてないだけじゃね w
■ このスレッドは過去ログ倉庫に格納されています