Just looked at PSPad -- it's a jack of all trades application. The syntax highlight system is horrible -- you're forced to have an exact number of system and an exact number of user syntaxes, and user syntaxes are only capable of highlighting words. JujuEdit's system is too buggy to use, and too strange to understand, but with help from the developer and perseverance I've succeeded in creating some nice custom rulesets including nesting one language inside another using static conditionals.
PSPad has integrated FTP, but it can't do binary files? So basically I still need another FTP program open to upload images; the screenshots also show that the integrated FTP panel can't do file information or type icons.
If I really wanted to learn something decent, I'd be better off learning gVim, as it's a proper professional tool ;-) It also should have a proper context sensitive syntax highlighting grammar -- JujuEdit relies on customed regular expressions that are context insensitive and make sequences like heredocs very hard to detect. Actually, recognising a set of heredocs would be very hard to do, as this is valid in Perl:
- Code: Select all
print <<ONE, ' ', <<TWO;
all text here
is part of heredoc ONE
ONE
all text here
is part of heredoc TWO
TWO
gVim may also have a dedicated nester, such that you could something like:
- HTML.highlight
- CSS.highlight
- JavaScript.highlight
HTML.highlight could then have:
- Code: Select all
[inject]
<script>*</script> := JavaScript.highlight
<style>*</style> := CSS.highlight
However, it's not that straightforward, because there's more than one scripting language. So you'd need to find <script> tags, pull out their language= and type= tags and select the appropriate highlight file.
What's more important still is that this is all transparent. BBEdit on the Mac, for example, has a very advanced highlighting engine, but the rules are neither viewable nor editable, so I can't manually add new PHP constants that have been introduced since my copy was built. PSPad appears to have first and second class rules -- first class for itself, second class for the user. The user is limited to a small number of active rules and very simple syntax, for example no control over which words are to be spell checked, nested constructs, language embedding or anything else.
This first class–second class design is very typical in IT and especially language design. C is one of the few languages where you're given first class access: the entire C library is written in C. JujuEdit only has one syntax highlight system that both presupplied
and user rules follow, so I'm at liberty to reprogram and learn from the built-in rules as I see fit. All of gVim's rules ship as editable text files.
The reason I chose JujuEdit incidentally is that my previous PC was a PII 333, and most editors won't run on that. The quality of coding these days is so awful that they grind to a halt. JujuEdit was remarkable in that, on a PII 333, I could open a file up to 20-30 k before it would grid down. BBEdit on a 200 MHz Mac will reack 100 k (with highlighting off) before it grinds down.
And frankly, I'm very happy with it. Though, I note that PSPad has at least two of its features -- highlight-and-tab to indent, and home obeys indenting.
Thanks though.