For a couple of years I have been using
Notepad ++ as the main text editor. Before him was
ColdFusion Studio 4.5.2 , which is very good. That's just it is not free and somewhat ponderous. I don’t have a licensed Studio today, and it seems to me that it’s wrong for a long time to use Varese in the presence of free alternatives. In addition, the loader to the Studio (loader) is defined by antiviruses as malware (there was no desire to understand, besides, antiviruses always strive to tear down this loader, which does not add comfort in the work). There was no desire and there was no desire to switch to all kinds of options based on Eclipse: I hate heavy software. On the advice of friends I tried
Notepad ++ aka
NPP , I liked it. Particularly pleased that with several movements NPP turns into a close resemblance of the beloved CFStudio. From time to time I tried a number of other editors (for example, several from this list:
http://en.wikipedia.org/wiki/Comparison_of_text_editors ), nothing attracted. Returned to the already familiar Notepad Plus Plus.
As a tool for web development, NPP was good, but the convenience and productivity that CFStudio gave could not be achieved until a successful set of
plug-ins came up.
I decided to share my experience in the hope that I would save someone some time.
')
So, what we need to equip the
NPP and make it a place suitable for life
- Explorer plugin to go through the file system without getting out of NPP (used in CFStudio, conveniently)
- Keyboard shortcuts for frequently used constructions like & nbsp; and html tags.
- Syntax Highlighting (I need CFML syntax, among others).
- Context help (for the same CFML).
- Automatic closing tags.
With p.1 (Explorer) there were no problems from the very beginning, the plugin -
here it is , take it and use it.
For
shortcuts with time, a wonderful
WebEdit plugin was
found . Shortcuts, however, did not immediately work, I had to figure it out. It turned out that the cute keyboard shortcuts like Ctrl + Shift + Space (used in the Studio for & nbsp;) are escaped because they are already assigned to other commands. After the reason is clear, it is easy to cure: you go to the Shortcut Manager (Options / Hot Keys), find the screening definition, most likely in the
Main menu tab and clear it (and in the
Plugin Commands tab you prescribe the necessary shortcuts for the WebEdit plug-in).
HTML
syntax highlighting is available out-of-the-box. I also need a backlight for CFML, a solution proposed by Howard Scholz:
http://howardscholz.wordpress.com/2007/10/13/cf8-in-notepad-continued/ , along with
context-sensitive help . However, at the address given by the author, the link to the archive does not work :) (well, I have a
copy preserved from time immemorial), and the contextual help does not live on modern systems, which is clearly related to the improvement of Windows security (without comment).
I had to dig deeper and put together
my own version . On the way, it became necessary to recompile
chm help for
CF8 , which I did, guided by
http://www.oszone.net/3789 . At the same time, it seemed to me correct to translate the
help for CF9 into chm-format, since I took it. The chm-help was made working only with the help of the
LanguageHelp plugin from
Franco Stellari . The plugin, among other things, is good because it can include the necessary help depending on the extension of the file being edited. By the way, there was an option not to bother with
chm , but to connect a
pdf help,
LanguageHelp can search for it, only a search in pdf takes a fair amount of time, which is wrong, not our way. And, of course, you need to move the context help with Ctrl + F1 to F1, on which Help / About hangs by default. I can not imagine why someone call the Help / About hotkeys. Go to Options / Hot Keys, in the
Main tab we find F1 in the right column, open it with a double click, in the combo box we select None (the first one from the top). In the
Plugin Commands tab, we hang up the LanguageHelp call on F1 (you can also take the refined shortcuts.xml, see below).
Unfortunately, I have not yet found the source code for LanguageHelp, so, for peace of mind, well, in general, we are talking about OpenSource.Automatic closing of tags - the feature is very useful, without it, so many extra letters have to be driven in with pens. In addition, auto-close reduces the number of markup errors. In fact, if you edit only files with the extension htm, html, xml, then you need not worry: several plugins (starting with
Insertion and
TextFX ) support automatic tag closing (
Automatically close Html / Xml tags ), but the trouble is: they are tight stand guard over legality and close tags only in files that
they themselves consider to be html / xml. Mostly in the company take
php , but
cfm ,
asp ,
aspx remain behind. It is possible to understand the authors, it is unlikely that a c ++ developer will be pleased with the #include <windows.h> </ windows.h> construction, but where to go for simple web developers? At first I solved the problem simply: I took the language definition file
langs.xml and stuffed all the keywords and other details from the definition of
CFM ,
ASP , etc. in the definition of
HTML , but this is the path of the curve.
I was looking for a solution to the problem for a long time and did not find it. It ended with the fact that I decided to write the corresponding plugin. A surprising thing, the simplicity of the problem is sometimes an obstacle to its solution. Well, it can not be that someone has already done this! It turns out - can. Once again it turned out that it was faster to write oneself than to find a ready-made solution (it’s not a fact that the finished one will not turn out to be crooked). In this case, I was searching for 2 years, and I did it myself for a week (in snatches). I took the
Insertion Plugin , compiled for Unicode (thanks to
http://www.mailinglistarchive.com/html/notepad-plus-plus@lists.sourceforge.net/2009-03/msg00677.html and April), cut off the excess, including hostile check for file type. The main time spent on: compile under Unicode; overwrite the save settings; re-arrange sortsy so that there was hope to understand them in a month. Probably, the result was a bunch of errors (10 years did not take the C ++ compiler into the hands), but it closes the tags. Laid out
sortsy and a
binary under Unicode .
Here you go. Now, after finishing with a file, everything looks and works quite well. Something in which
NPP is even better (more universal)
ColdFusion Studio : there is, for example,
HexEditor , you can run external programs without departing from the cash register. Something is probably weaker: there is no debugging in the same window. The CFML syntax highlighting has one cant: the text after the # symbol to the next # is highlighted, as for # my_variable #, even if it meant only {color: # dddd00;} (this does not give me a big inconvenience, so I did not try to repair ).
But in general, both environments are doing about the same thing (namely, what I need for work) and leave a similar impression.

For convenience, the above-mentioned plug-ins have included
CF8NPP in the
updated assembly , especially since compared to the reference, the volume of plug-ins is quite small. I attached a set of keyboard shortcuts (shortcuts.xml) to WebEdit, borrowed mainly from
ColdFusion Studio and
HomeSite .
Finally, a few hints.
- It is better to install the Unicode version of NPP. The ANSI version had problems with printing the Cyrillic alphabet on the printer (I did not check the latest versions).
- By default, several plug-ins are installed with NPP, of which TextFX is surely needed, without it, with syntax highlighting, everything is bad.
- On CFML, the wedge did not converge; there is no big problem to attach contextual help for an arbitrary programming language to NPP.
PS Many thanks to DenisO for an invite