Mrrrr
AdMiN
Inregistrat: acum 17 ani
Postari: 2228
|
|
All credits go to davebrny,
Comment by davebrny:
the idea was that you just highlight text anywhere in windows (text you might get from an email, on a website, in a txt file etc) and if there were any url's or files/folders in the text, they would show in the list and be launch-able.
usually url's in an email would be clickable anyway so this is not needed as much, but if someone sent you 10 urls this would be useful since you could highlight the text once, then use the alt+shift hotkey to bring up the same menu, instead of having to switch back to your email app 10 times
USAGE:
- select the text you want to launch - if no text is select then ctrl + A will be used to select all the text - press alt + L to show the menu - use alt + shift + L to re-use the last menu without needing to select anything
Paths in your user folder can be added like this: \Documents\file.txt
Full paths can also have quotes on either side "C:\Users\dave\Documents\file.txt"
#noEnv #singleInstance, force sendMode, input return
!l:: goSub, get_text_to_launch !+l::goSub, text_launcher ; repeat last selection
get_text_to_launch: clipboard_save := clipboardAll clipboard := "" send ^{c} ; check for selected text clipWait, 0.3 if (clipboard = "") ; if nothing was selected, then select all { send ^{a}^{c} clipWait, 0.3 send {right} ; deselect text } selected_text := clipboard clipboard := clipboard_save goSub, text_launcher return
text_launcher: menu, tl_menu, add, % t := "text launcher", run_line menu, tl_menu, default, % t menu, tl_menu, disable, % t menu, tl_menu, add
; create menu loop, parse, selected_text, `n, `r { if a_loopField is space continue line := trim(a_loopField)
if fileExist("C:\Users\" a_userName . line) line := "C:\Users\" a_userName . line ; convert "\Documents\file.txt" to full path
quoted_path := subStr(line, 2, strLen(line) - 2) ; catch paths with quotes on either side if fileExist(quoted_path) line := quoted_path
; if url, folder or file if regExMatch(line, "http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+") or instr(fileExist(line), "D") or fileExist(line) menu, tl_menu, add, % line, run_line }
menu, tl_menu, show menu, tl_menu, delete return
run_line: run, % a_thisMenuItem return
/* [script info] version = 1.0 description = launch files/folders/urls from a text list author = davebrny source = */ |
_______________________________________
|
|