For the minimalist programmer, there's vim. For everybody else, there's SlickEdit.
I fell in love with SlickEdit a few years ago when I noticed its ads on our Web site. Although most companies use the sort of Web ads you'd expect in the tech industry, I took a second look when LOLCat images appeared in the place of our regular ads. Admittedly, for a moment I thought perhaps we'd been hacked, but when I realized I was looking at a clever marketing campaign, I decided the folks at SlickEdit were okay in my book. I recently had the chance to review SlickEdit, and although my programming skills are fairly novice, SlickEdit made me feel right at home.
SlickEdit is a text editor designed for programmers. Calling SlickEdit a text editor, however, is much like calling the DeLorean from Back to the Future a daily driver. SlickEdit makes the line between text editing and full-blown IDE pretty fuzzy. It is available for nine platforms, and, thankfully, Linux is one of them. In this review, I take a look at its features, and you can decide whether it's a text editor, IDE or something in between.
Installation is fairly straightforward if you've ever installed a closed-source application in Linux. Both 32- and 64-bit versions are available, and on the handful of systems on which I installed it, I didn't run into any problems with dependencies. The installation must be performed on the command line, as there is interaction during the install (Figure 1). By default, the program is installed into the /opt/slickedit directory. (Thanks to the SlickEdit folks for not using weird capitalization in the installation directory; that is so frustrating.)
Figure 1. Installation must be done on the command line; there is no GUI installer.
Starting SlickEdit the first time is a little cumbersome, because the
installer doesn't appear to make any icons in the system menu or on the
desktop. A desktop icon is created after the first launch of SlickEdit,
but you have to get past the catch 22 of needing to start the program
to create the program startup icon. The executable to start SlickEdit
by default is
/opt/slickedit/bin/vs, and typing that in a command
shell starts the program and its initial wizard right up.
During the Quick Start Wizard, you start to see some of SlickEdit's neat features. Figure 2 shows the configuration screen for selecting keyboard emulation. If you're used to a particular set of keybindings (like vim in my case), SlickEdit can use those familiar keybindings by default. You even can customize the emulation if your needs don't line up with the dozen-plus emulation options offered.
Figure 2. The keystroke emulation makes SlickEdit behave like your favorite editor.
One of the other neat features configured during the initial wizard phase is the customization of how you prefer your code to look. Figure 3 shows indentation and brace-style configurations that can be set for all languages. The indentation and methods for displaying braces and parentheses certainly don't change the compiled product, but they make code look however you prefer. And, a happy coder is an efficient coder, right?
Figure 3. If SlickEdit is going to save time, it needs to know how you prefer to format your code.
You can change many other initial settings, such as color themes, font size and choice and so on. Once configured, you even have the option to export your settings so they can be imported on another machine. It's a great feature if you use SlickEdit at home and at work, in order to ensure your developing environments match.
Once the initial quickstart is complete, it's easy to be overwhelmed by the feature set. Thankfully, although SlickEdit boasts an incredible number of features, understanding them all isn't a prerequisite for coding. As shown in Figure 4, I jumped right in with a simple Bash script to see how well it handles code formatting. As expected, it looks and behaves quite nicely.
Figure 4. My messy Bash script was recognized without any problems.
Next, I tried to work with one of SlickEdit's new features, namely Git repository interaction. Here, I was met with some frustration. Although I could get SlickEdit to recognize my local cloned Git repository, using the GUI tools to interact with a remote GitHub repo consistently locked up the interface, requiring me to kill the process and start over. Admittedly, I'm a novice programmer, but my naïveté shouldn't lock up the program. Git support is new, however, so it is possible a few bugs need to be shaken out.
Although Git support is new, SlickEdit still has FTP built in to access remote repositories. I really like the flexibility to use either the built-in file management or to manipulate my files separately and simply browse the local file structure with SlickEdit.
Features and Features and Features
SlickEdit is a code editor, and credit where credit is due, it really excels in this area. Some features like code highlighting are expected, but some others stand out from the crowd. I'm listing a few of my favorites below.
As I mentioned earlier, this is an advantage for coders coming from other
programs. The ability to customize individual keystrokes is nice, but
it's the built-in support for other familiar program keybindings that
makes this feature so great. Emacs fan? You don't need to learn new
keystrokes to edit your code. Vim master? Same deal—you can save and
close a file like God intended by pressing <ESC>