SlickEdit : Java Glossary

The CurrCon Java Applet displays prices on this web page converted with today’s exchange rates into your local international currency, e.g. Euros, US dollars, Canadian dollars, British Pounds, Indian Rupees… CurrCon requires an up-to-date browser and Java version 1.8, preferably 1.8.0_131. If you can’t see the prices in your local currency, Troubleshoot. Use Firefox for best results.

SlickEdit logo  SlickEdit®

SlickEdit® 2017:22.0.2 Last revised/verified: 2018-02-27 née Visual SlickEdit, is a  $300.00 USD visual editor for Java (and dozens of other languages) that tidies source code. It was originally developed by MicroEdge, now named SlickEdit Inc. I use the older version 6.0c with supports only 8-bit text files. . Presumably it has improved considerably since my version. It is available for Windows, Linux Mac OS (Operating System) X, AIX (Advanced Interactive eXecutive), HP-UX, Solaris SPARC, Solaris x86 and as a plug-in for Eclipse. Originally, I did not keep up with upgrades for financial reasons, but now I am looking around for a new editor, one ideally I can program in Java not SlickC and that handles UTF-8 files. Most editors are so slow, compared with SlickEdit, I may stay with it. They now offer upgrades, but do not post prices.

I like it. The support people are utterly amazing. I send in feature requests and they send me back SlickC™ code to implement the feature as a macro. I just wish it were cheaper so more people would enjoy it. It is worth far more than  $300.00 USD in the time it will save you. Even though it is a very full featured editor, it comes up quickly. You can edit hundreds of files at once and hardly notice any slowdown. I use it to prepare all the HTML (Hypertext Markup Language) on this site and used it to write all my Java and assembler code. I am now doing most of my Java work with Eclipse though. I still drop back to it for small projects since it is so much quicker.

Take a 15-day free trial to see for yourself. That is not long enough to properly learn and fall in love with it, but it will give you a taste. It is so quick compared to other tools. I wish the macro Language were Java rather a proprietary C-like language. It takes took long to learn yet another language.

Features Backup
Customising Batch Operations
Adding Custom Icons to Toolbars 2012 Version
SlickC Macro Language Summary
Spell Check Links


It has syntax highlighting and cross reference features that really speed things up. It will display help to fill in parms on any method. It will show you valid symbols for a given context. For HTML it has an IMG icon you can click that inserts the <IMG tag for a *.gif or *.jpg complete with correct height and width for you. The syntax highlighting and indenting beautifier makes your errors immediately obvious. I have been using it for years and every day I discover yet new wonders it can do. It is the closest thing going to a SCID. Take time to configure your custom toolbars and custom keystrokes. You can even add your own icons to them. It supports several flavours of regular expression regex pattern matching search/replace.

Make sure you regularly back up the binary file vslick/vslick.sta. It contains your complete configuration. If it goes, all your tools bars go too.

One of the features I use most often is DIFF to compare two versions of a file. Sometimes it will not let you close. Use Alt-Esc to find the separate DIFF window and close that.


You can customise it to death if you have the patience to figure out how. For example, to control the file extension filters shown when you open a file for editing, edit the def_file_types parameter in the vusrdefs.e file and then hit ESC and type vusrdefs to invoke the vuserdefs defmain batch macro. Later I discovered you could configure it from a menu Tools ⇒ Configuration ⇒ File Options ⇒ Filters..

I prefer to cut and paste, doing the editing of the file list string in the editor. Here is the one I use:

All Files (*.*),Java (*.java;*.jsp), HTML (*.html;*.css;*.htm),batch(*.bat;*.btm),Text (*.txt;*.list;*.csv;*.log;*.mft;*.properties;*.site;*.use;*.wiki),jnlp (*.jnlp;*.xml),Slick-C (*.sh;*.e),Assembler (*.asm),C++ (*.c;*.cxx;*.h;*.hpp;*.hxx;*.inl;*.cpp), SQL (Standard Query Language) (*.sql)

You will probably want to configure tab to space conversion and trailing blank suppression while you are there.

Adding Custom Icons to Toolbars

The trick to adding a custom icon to the toolbar is to first drag a hammer icon from View ⇒ Toolbars ⇒ Categories ⇒ User Definable Tools to the menu bar. Then right click the icon and select Properties. Fill in Command, Message, Bitmap..

The command you associate with your new custom icon is whatever you would type on the command line at the bottom of the screen, not a bit of SlickC code, e.g. you would fill in edit C:\env\todo.txt rather than edit('C:\env\todo.txt') or insert-java-main rather than insert_java_main() .

A good place to find a the names of built-in commands you can use on the command line is in Tools ⇒ Configuration ⇒ Key Bindings even if you don’t want to bind a key. Not all SlickC functions work on the command line.

The toolbars are locked from inadvertent changes except when the View ToolBars dialog is active. Then you can rearrange the icons, or drag them off the tool bar to remove them.

The Message is just the tooltip text.

In version 6, you create your own bitmap icons as *.bmp files and use them just like the built-in ones on toolbars. Use grey 192,192,192 as your background. BMP (Bitmap) files don’t have a formal transparent background the way *.gifs do. Make them all 23x21. Make sure you have backup copies of the bitmaps outside the vslick\bitmaps directory which you may lose on reinstall. Also make a record of the bitmap names, command and tooltip text so you can reconstruct it if you lose the menu bar.

In version 11, you can also use *.ico files for your icons.

Here is a little script you can save in a *.e file, then load to create a new command called cdm which changes the directory then brings up the open file dialog box on that directory. To install the command, load the *.e file, with load macro and it will stay installed forever, (or at least until you unload it.) You can then create an associated icon on the toolbar for one click open. You can define several such commands in a single *.e file.

_command cdm()
cd( 'E:\mindprod\' );
If your toolbars come undocked, unmaximise the Vslick app, shrink it down small, click View Toolbars, mark the toolbar as visible, shrink the toolbar to as vertically small as you can make it and one continuous motion drag it into place by the gripper on the left end and double click. Then drag it to final position using pure vertical and horizontal moves. If you are trying to dock the HTML toolbar, make sure you are editing an HTML document so that the toolbar will be active. Failing that restore the Vslick control files from backup.

SlickC Macro Language

You program it in SlickC which bears only a superficial resemblance to C/ C++. SlickC has no classes. It has safer pointers than C. It uses containers, decimal arithmetic and both typed and untyped variables like Rexx, It works like Visual Basic for its dialog boxes. It has Java-like ArrayList style autogrowing arrays and Hashtable s that masquerade as arrays. The syntax is, to put it kindly, eclectic, held together with duct tape and bailing wire. The designer has never heard of the concept of orthogonality. Every feature of the language comes with a list of odd exceptional conditions under which it does not work. It is the quirkiest most ad hoc, asymmetrical language I have ever encountered and probably the hardest to learn. However, the pcode it uses is fast and compact and gets the job done. All the common methods are written in native code for speed. You must You learn it mainly by studying the existing source code. I would assume most people using the editor never learn any SlickC, but even then it is still a powerful editor.

SlickC macro language uses some very strange language constructs and odd terminology. defmain and batch macro refer to a type of nameless procedure. All you can do is load it and execute it once. Usually it defines the values for many configuration constants. procedure is much like a Java method, except that it usually takes a variable number of parameters and the types of the parameters are deduced dynamically by the procedure. command is a procedure that can be bound to a keystroke, with rules about the contexts in which it is valid to call it.

Macros you create by recording keystrokes are stored in vslick/macros/vusrmacs.e. They generate compilable SlickC code.

Here is a simple macro to generate the boilerplate for a Java main method:

// stored as C:\env\javamain.e


* Define conditions under which the insert_java_main
* command will work.
* @param cmdui
* @param target_wid
* @param command
* @return enabled or disabled.

int _OnUpdate_insert_java_main(CMDUI cmdui,int target_wid,_str command)
if ( !target_wid || !target_wid._isEditorCtl()) {


* Generate a java main method by typing insert_java_main on the command line.
* Command can also be hooked to a button, or to a keystroke.
* @return

_command insert_java_main() name_info(','VSARG2_MARK|VSARG2_REQUIRES_EDITORCTL)
if ( p_extension!='java' ) {
// Check to see if we are in java mode. If not, exit
message( nls( 'Command not allowed while not in java mode' ) );
insert_line( '/**' );
insert_line( ' * test harness’ );
insert_line( ' *' );
insert_line( ' * @param args not used' );
insert_line( ' */' );
insert_line( 'public static void main ( String[] args )' );
insert_line( ' {' );
insert_line( ' }' );

Spell Check

By default the auxiliary spell check dictionary is in vslick/win/userdct1.lst. The default built-in list of common words is in vslick/scommon.lst. The file names can be changed with by clicking Tools ⇒ Spell Check ⇒ Spell Options. You should prune and sort those text files periodically. vslick.vlx can modified to add extra entities.


Files you might want to back up include:

Before you backup, clear out junk in X:\vslick\$slk.? (abandoned spill files) and X:\vslick\backup\*.* (previous versions of files edited)

Batch Operations

One way you can do batch operation is to click File ⇒ File Manager ⇒ New file list. Enter a wildcard, then select which of the files you want to process with the space bar, or select them all with Ctrl-A. Then click File ⇒ File Manager ⇒ repeat command. Then enter a command such as beautify-files %f to be applied to each file.

New with Version 2012


Now that free IDEs (Integrated Development Environments) and editors can handle multiple languages and do many of the things than SlickEdit can and things it cannot like single step trace and now that hardware can make even the slowest code run acceptably well, the niche for SlickEdit is narrowing. At some point it will have to reduce prices to compete.

This page is posted
on the web at:

Optional Replicator mirror
on local hard disk J:

Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

Your face IP:[]
You are visitor number