A good text editor is a key tool for every programmer, regardless of the language in which he programs – C, C ++, Java, PHP, or even plain HTML. Currently, the network can find hundreds of word processing programs offering different levels of complexity – from the simplest “notepad” replacements to even complex Microsoft Word-like word processors. Beginners face a rather difficult task – how do you go about choosing which is the best for what you’re trying to accomplish?
As a programmer with over fifteen years experience, I think that another question should also be asked. For example, some people use keyboard shortcuts frequently when writing text, while others use only menu-bound items. For some, the possibility of binding a MACRO to a key is a REQUIRED option, while others may not even know what MACRO is.
The next thing to consider is how much you’re willing to pay for the product. Free editors tend to have less functionality, while commercial editors are constantly developing. Although development is great for commercial editing products, you might have to deal with the developer’s support team if anything goes wrong.
So, what should you pay attention to when choosing your editor? In my opinion, the most important points are listed below:
- How often are new versions being released?
- Is the product free? If not, how much does it cost?
- Is there a commercial free-trial version available in order for you to test it?
- Is it possible to change key bindings for different functions?
- Does the editor support syntax highlighting? If so, how many languages are supported? Is there a possibility of adding more?
- Is it possible to fold functions in the code?
- How flexible is the Find and Replace option? Does it support regular expressions (REGEX)? Can it display all the lines meeting the search criteria on a single page?
- Is it possible to move the cursor between the last few positions?
- Is there bracket matching functionality?
- Is it possible to change case of selected fragments?
- Is UNICODE supported?
There are also other convenient options, such as:
- HEX file preview
- The ability to group individual files into a project
- The ability to run external scripts
- HTML tags database
- The ability to configure toolbars, including their location on your screen
- The ability to display list of functions on the current file
- Spell check
- FTP client
Keep in mind, sometimes the simplest of editing software is the best. An example: Vim and EMACS – A vast percentage of people do not know how to use either, while the remaining percentage utilizing these two products can do everything they could ever need with them.
In my career I have had the opportunity to use dozens of different editing products and while I can pick out a handful that were my favorites, I always found a more interesting, functional replacement. You can say that this is my ultimate quest – to find the best editor on the market.
In this series, I will try to introduce to you some interesting products – both free and commercial.