Rated 5 stars at SnapFiles
   Shareware and Freeware



This Month's Donators (none) (K. McColpin -- last month's top donator $40) ... more PayPal

 

joejoe May-17-12 9:32 PM UTC

Executing Commands with Global Hotkeys

Each Permanent Clip can be used to execute copy functions, paste functions, run Windows commands, simulated keystrokes, or even used to display ArsClip's own windows. Since each Permanent Clip can be activated using an optional global hotkey, they can function as commands that can be directly executed by a keystroke.

The "_System" Permanent Group is a special group designed to store these type of clips. These clips are never shown on the Popup and can only be run using an associated Global Hoktey.

NOTE: In the Edit Permanent Clip window, under [View>Online Code Examples], there is a selection of example macros. These macros show how to do common tasks and how to interact with external programs.

joejoe May-17-12 10:19 PM UTC

Script-Like Abilities

By default, a Permanent Clip is used to simply paste a clip. When the Keystrokes and Commands variables are enabled in the Edit Permanent Clip window, a Permanent Clip can also contain keystrokes to simulate and commands to execute.


Keystrokes

ArsClip directly supports simulated keystrokes that are often used in text editing and form filling. These keystrokes includes the basic navigation keys and editing keys. For other keystroke combinations, a 'Custom Key Combination' menu item is used. The 'Example Key Combination' menu items shows examples of how to perform some basic text editing tasks, like highlighting and word deleting.


Insert Commands

The first group of command variables are inserts. These are used to insert dynamic text into a clip, so the clip effectively becomes a template. The 3 supported inserts are the date, a clip from the popup, or the clipboard. For example, the last 3 clips can be pasted with a Permanent Clip using the following:

[POPUPITEM=0][POPUPITEM=1][POPUPITEM=2]

To turn this into a form-filling clip, keystrokes can be inserted between the clips as in the following:

[POPUPITEM=0][TAB][POPUPITEM=1][TAB][POPUPITEM=2]

The above Permanent Clip will paste will simulate a tab keystroke between each of the top 3 clips from the popup.


Executing Windows Commands

The [RUN] variable is used to treat all text that follows as a command to be executed by Windows. The text can be one of the following: a command to be executed in the command prompt, a filename or a program name, or a URL or web address.

[COPYWAIT=2000][RUN]http://www.google.com/search?q=[CLIPBRDCURRENT][/ENDRUN]

The above example will copy any highlighted text and use it as the search term for a Google search. The [COPYWAIT] command executes a clipboard copy and waits for a new clip or 2 seconds to pass.
The [RUN] command executes everything after it. In this case, it's a web address.
The [CLIPBRDCURRENT] command contains the results of the [COPY] command. This variable is replaced first before executing the [RUN] command.


ArsClip Windows

Lastly, each window in ArsClip can be opened using a Permanent Clip. This is useful if you want to create a global hotkey to instantly open a window, like Search and Paste, instead of navigating the program or popup to do so.

This allows for opening text directly in a text editor. For example, the following Permanent Clip will copy all text in the target program and open it in the program associated with text files:

[SELECTALL][COPY][WINDOWCLIPBOARD]

By inserting text highlighting keystrokes, the following Permanent Clip uses the same idea to edit only a single line of text in an editor:

[END][KEY="001024SHIFT+HOME"][COPY][WINDOWCLIPBOARD]

joejoe May-20-12 10:54 PM UTC

Creating Templates

Not only can Permanent Clips string together keystroke and command variables, it can also paste static text as part. In the example below, the current text on the clipboard and the current date is inserted and the entire test is pasted as a single clip:

Part Number: [CLIPBRD]
Date: [DATE="hh:mm ampm"]

Some variables, like keystrokes, will cause all text before it to be pasted before continuing. In the example below, the text is pasted using 2 clips because of the keystroke simulation:

Part Number: [CLIPBRD][ENTER]
Date: [DATE="hh:mm ampm"]

Take note that CLIPBRD is not the same as POPUPITEM=0, since the top clip on the clipboard is not always the last copied clip.


Combining Multiple Clips

In this example, the user copies three clips and wants to paste the items using the order they were copied. Notice below that the "last" copied clip is actually first on the popup, so the item numbers are reversed:

Clip 1 - [POPUPITEM=2]
Clip 2 - [POPUPITEM=1]
Clip 3 - [POPUPITEM=0]

To guarantee that the clips copied are in this order, enable the option [Configuration>Clipboard Monitoring>Text Clips] that will move a duplicate clip to the top of the list. Without this option, duplicate clips on the popup are ignored by the program.

joejoe Jul-28-14 8:20 AM UTC

Interacting with External Scripts and Programs

NOTE; Version 4.20 or above of ArsClip is required.

The RUN Command

The [RUN][ENDRUN] command is the method used for with interacting external programs, the command console, files, scripts, and websites. It is very similar to the START command used in Windows command prompt and can run more than just programs and console commands. For example, if the text between the tags is the name of a file, the program associate with the file will be opened. This action is just like clicking on a file in Explorer.

Examples:

[RUN]http://www.joejoesoft.com[ENDRUN]
[RUN]c:\windows\system.ini[ENDRUN]
[RUN]notepad.exe c:\path\name.txt[ENDRUN]

The commands above opens a website in a browser, opens a file using Explorer filetype associations, and open a text file with Notepad.


Sending data to an external source:

ArsClip can send data using three methods: the clipboard, text inside the RUN command, or a text file. External scripts can retrieve data directly from the clipboard, but this is method is not as widely supported as a text file.

[RUN]http://www.google.com/search?q=[CLIPBRDCURRENT][/ENDRUN]
[TOTEXTFILE="c:\temp\test.txt"][RUN]notepad.exe c:\temp\test.txt[ENDRUN]
[TOTEXTFILE="e:\temp\test.txt"][RUN]cmd.exe /k type e:\temp\test.txt[ENDRUN]


The first example performs a Google search using the clipboard data. This shows how to send data using text inside the RUN command.

The second example saves the clipboard to a file and opens it with Notepad. This shows how send data to a text file and how to pass the filename to an external program.

The third example uses the Windows command prompt to execute the "type" command with the file. Batch files and batch programs are commonly used to automate the process of editing data.

The [TOCLIPBOARD=0] command places a Popup Clip on the clipboard. This can be used to load the clipboard before saving it to a file.


Receiving data from an external source:

The [WAITFORCLIP] command is the primary method of synchronization with and external program or script. ArsClip will know the program is done processing the data when it sends it to the clipboard. Also, the [WAIT] command can be used to pause a set amount of time before continuing the macro.

For batch programs in Windows, the "CLIP" command can be used to redirect the output of a program or a file to the Windows clipboard. For example, "echo hello | CLIP" will place the word "hello" on the clipboard, using the command prompt.

[RUN]cmd.exe /c dir *.exe | CLIP[ENDRUN][WAITFORCLIP=2000]EXE Files Found:[CLIPBRDCURRENT]

In the example above, a directory listing is placed on the clipboard and pasted into the current foreground program. The wait command will wait for up to 2 seconds (2000 milliseconds) for a new clipboard clip before timing out.

Scripting languages that can run console commands can also use the Windows CLIP command to communicate with the clipboard, if the language does not directly support sending text to the clipboard.







Got an idea for improvement, a bug to report? Just want to say hello? Send me your feedback.
I can be contacted at jackass.joejoe@gmail.com English only please.