XYplorer Scripting, introduced with version 7.00, can truly be seen as the ultimate in file management efficiency. Roll your own custom commands, combine them to scripts, wrap them in an XY Script file (XYS), or a, and trigger them by just a click or a keystroke. Can't get any better? Share scripts with colleagues, or download them from the internet: Just drop a script file into your app folder and fresh plug-in commands are at your finger tips.Without doubt, scripting is an advanced feature that only pays off if you take the time to dive into it and explore the ways and possibilities.
There's also the UDC Run Script which accepts scripts without a prefixed '::', e.g. Run Script can also handle more advanced stuff like multi-line scripts (see image on the left), and multi-scripts, the rules and possibilities of which will be further explained below under 'XYplorer Script Files'. Here's just an appetizing. Jun 26, 2018 The script runs a cscript command to run a VBScript called wordcmpr.vbs, located in the same scripts directory as my xyplorer script files. I’m only currently using this script from XYplorer, so it made sense to store it there rather than in my central VBScript directory structure. The script is.
However, you will eventually find out that it ain't rocket science at all. What can Scripting do for me anyway?Before we dig deeper, here are some of the truly wonderful things Scripting can do for you. Now paste::msg 'Hello world!' Into the Address Bar and press Enter. You should see a 'Hello world!' Message box.As you see, Quick Scripting means: Scripts, when prefixed with '::', can be executed directly (i.e. Quickly) through any interface in XYplorer that can process locations: Address Bar, Go To, Favorites, Catalog etc.
This gives you a lot of choices for usage and storage of scripts.Now, for mouse users, the is a very good place for scripts. Using the '::' prefix, scripts can be simply entered into the Location field of a catalog item. They are executed on a single click.For example. Now click the item. The Find Files tab on the Info Panel is opened, all search filters are reset, and the cursor is placed into the Name field.
Nice!But how did this work? And what is #1026?
In XYplorer almost every function has a fixed number, the function ID, by which it can be referred to in a script. ID #1026 happens to refer to 'Miscellaneous / Find Files / Open Find Files and Reset'. Open the Customize Keyboard Shortcuts dialog (menu Tools) and find this function in category Miscellaneous.
At the bottom of the dialog you'll see a button showing the function's ID. Clicking this button will copy the function's ID to the clipboard, making it easy to use it in a script.Here's another simple but useful script. You could place it e.g.
Into the Favorite Folders menu by adding it via List Management. Click Apply and OK.Now press Ctrl+Alt+3. You should see a small window displaying the current textual contents of the clipboard.Of course, you don't have to abuse the UDC Go To for scripts. There's also the UDC Run Script which accepts scripts without a prefixed '::', e.g. Text '.Run Script can also handle more advanced stuff like multi-line scripts (see image on the left), and multi-scripts, the rules and possibilities of which will be further explained below under 'XYplorer Script Files'. Here's just an appetizing preview: goto 'Desktop ';// sort by modified date, descendingsortby 'm', 'd';// select firstsel 1;focus 'List';What you have learned in this section about XY scripting is. Now execute your mysterious script.A small dialog will pop up and tell you what is about to happen.
You can now decide whether to execute the command, or skip it, or cancel the whole script. In stepping mode you are on the safe side.
It is highly recommended when writing or debugging scripts!There's also a toolbar button for toggling the stepping mode. When pressed (stepping is ON) its color changes to red to make the current state very clear.XYplorer Script FilesHere we are talking popup menus that are user-defined by a text file. Let's make one. Now, in XYplorer, click menu Scripting Load Script Files. And open test.xys.
The following menu should pop up at your mouse cursor:Now you can choose where you want to go.A script file is basically a library of scripts. It is nothing more than a simple text file, which can contain one or more scripts.
You will be able to either call one of those scripts directly, or simply load the entire file. In such case, XY will create a menu based on the contained scripts in that file and pop it up, allowing you to choose which script to execute.The syntax for the scripts themselves within script files is exactly the same as for scripts anywhere else in XY since this is just another way to store and execute scripts.
Syntax rules for XYplorer Script Files. Use the script command load scriptfile.The existence of a command load, of course, means that one script file can load another. Read imovie hd and idvd 5 for mac pro. You will get an idea of the potential of scripting by now. Frenkel exercise manual. Script Files for the Advanced LabelsBy using labels you can execute a script inside a file directly, avoiding the popup menu.
The label is attached to the caption, separated by ': ' (space-colon-space). For example: // some little test scripts, using labels'Go to C:: croot'goto 'C:'Go to System Folder: system'goto '%winsysdir%'Go to XYplorer Folder: xy'goto 'If the above is saved to a file called 'test.xys' in application data path then the following command will directly bring you to the System folder: load 'test.xys', 'system'. Hiding scripts inside a script fileHidden scripts can be executed but are not shown in the script file's popup menu. To hide a script simply prefix an underscore to the caption or label (a hidden script does not need a caption anyway).For example, create a script file 'date.xys' in application data path with the following contents: // this is in script file 'date.xys'date'msg 'time'msg 'Show Date: date'sub date;'Show Date && Time: datetime'sub date;sub timeNow execute the script load 'date.xys'.
The popup menu will show only two of the four contained scripts. Select either and see what happens.Now run the script load 'date.xys', 'date'. The script with the label 'date' will be executed directly. It has only one command: sub 'date'. The sub command is a special command to call a script inside the same script file. In this case the hidden script with the label 'date' is called and executed.
Its command msg ' produces the message box showing the current date.User-Defined VariablesAdvancing in script writing, you will soon feel the need for variables. XYplorer allows you to define and use as many variables as you want, using a number of commands like set, input, replace, etc. The script $a = 'Hi!' ; msg $a; will define a new variable $a and assign the string 'Hi!' (without the quotes) to it; then a message box will display 'Hi!' .Variables are resolved wherever they are found in the arguments of all subsequent commands of the script, even if they are found inside quoted strings; for example:$name = 'Ted'; msg 'Hi, I'm uncle $name!'
;will display the message 'Hi, I'm uncle Ted!' .Variables have to conform to the following rules.
Edit: Current version is V0.2 - see far below!Wanting a bit of practise I 'played' with an old codefragment from Stefan - and happened to create something that is quite helpful for me. Maybe it can help you, too?(And after having had several wishes, problems and notes regarding scripting I thought I should show that I use parts of them.)The XY script folder fills up with a lot of scripts. Some oftem used, some seldom. Some just for some tests, some in 'creation status', some 'high productive'. And all mixed up.And if you need one of your scripts, you have to 'search' through all this. (OK, there are alternatives, but.)- One idea to help: move scripts for test and alike to a subfolder of.
But: it must be easy to call them.- Both Main- and Sub-Folder.can. possibly contain scripts with the same name. (So you can create a test-version of a working script.)- Another idea: while the list of scripts for selection should automatically be built from all existing scripts, 'prefered' scripts should be sorted together 'at the top' for easy finding.- Special: when the selected script is started, the state of XY must be the same as before - especially selections: be it pane, tabs or files. Just as if the script would have been directly called.The script needs a bit of customization: you find it rather on top, in the first part called User-CUSTOMIZATION:- between $prefer0 = and a list of 'Prefered' Scripts in, one per line, left aligned. See samples in script.- $subf1 specifies the name of a subfolder of for further scripts, without leading or trailing '. If ' no subfolder will be searched.
'Test' means: Test- between $prefer1 = and a list of 'Prefered' Scripts in subfolder of, one per line, left aligned. See samples in script.- separatp and separats specify 2 dividers in the selection menu. Leave as is or change as wanted.And now to the script! I've tested it as good as possible, but you know.If you are interested and have questions, have ideas, or find errors - just give me a note! OK: new Version 0.2The lists of Prefered Scripts now can contain a sublist of Scripts that are to be suppressed from display.
The beginning of this Sublist is indicated by an entry SUPPRESS - see the sample.You may define no entry after SUPPRESS,and in that case you even may delete this line.Some parts of the code got restructured: better adapted to a not (yet?) available functionality 'function-call' in XY-scripts. So I had to simulate this. But I hate multiple coding the same code.Again: it's tested, but can have bugs.I'd expect: in this script bugs could lead to errors in functionality, but not destroy anything else.