View difference between Paste ID: teRLvpTc and FC6Y5A8q
SHOW: | | - or go back to the newest paste.
1-
; スクリプト先頭でこう書いておく。ウィンドウ巡回用の初期設定
1+
function nyaos.filter.launch_shortcut_without_extension(cmdline)
2-
GroupAdd launchers, ahk_class ConsoleWindowClass
2+
  cmdline = cmdline:gsub('^%S+', function(cmd)
3-
#WinActivateForce
3+
    if cmd:match('%.') then
4
      return false
5-
; Win+Rの設定。コマンドプロンプトがなかったら起動する。そうでなければ切り替える
5+
    end
6-
; 連打すると複数あるコマンドプロンプトを巡回できる
6+
7-
#r::
7+
    local path='.;' .. os.getenv('PATH')
8-
  ifwinexist ahk_group launchers
8+
    local cmdl = cmd:lower() .. '.lnk'
9-
  {
9+
10-
    GroupActivate launchers, R
10+
    for dir in path:gmatch('[^;]+') do
11-
  } else {
11+
      for fname in nyaos.dir(dir) do
12-
     run_launcher()
12+
        if fname:lower() == cmdl then
13-
  }
13+
          return fname
14-
  return
14+
        end
15
      end
16-
; Shift+Win+Rの設定。巡回とかしないで新しくコマンドプロンプトを起動する
16+
    end
17-
+#r::run_launcher()
17+
  end)
18
  return cmdline
19-
; コマンドプロンプトを新しく開く処理
19+
end