I first started writing web pages using html (hypertext markup language) a little more than twenty years ago. I used a number of text editors on my Amiga computer, but my favorite was dme. This editor was very small, extremely fast, and had easily customisable keys and menus, and a macro facility that allowed me to replay sequences of commands. I came to appreciate minimalist html and its power.
Later I moved to Microsoft Windows when Amiga's corporate owners were in the throes of death. I found Netscape Gold was a useful html editor with a nice wysiwyg (what you see is what you get) interface, so I could see my font styles and embedded pictures immediately. Very nice. It wrote all its tags in uppercase, which bugged me -- capitals are much harder to read than lowercase -- but that was really only a small niggle.
After a while Netscape Gold became superseded by other Mozilla web browsers with html editors built in, but they began to become more and more plagued by a tendency to produce overly complex html. Eventually this drove me in search of a better solution.
I found it in the form of TextPad (http://textpad.com), the best text editor I've ever seen. This is a wonderfully flexible text editor, with reassignable key-commands, macros, the best search-replace function I've ever seen anywhere, and the ability to create lists of text snippets that can be inserted anywhere in your document with simply a mouse click. TextPad is not wysiwyg, but it lets me keep my code absolutely simple, just the way I like it, and it is an utter delight to use. You can use the demo version forever, but I loved it so much I bought a copy.
Later I finally moved to Linux. I'd been experimenting with many flavors of Linux for years before I was shown Puppy Linux. It was tiny compared to all other Linux distributions, and surprisingly full-featured. It was also very fast -- something I needed as my computers were rather dated, and, sadly, operating systems and other software generally become slower as they "develop". I had to start looking again for a good way to write html. TextPad ran only on Microsoft Windows. Mozilla still had html editors, in fact one (Seamonkey) was included as standard in Puppy Linux, but the html produced was messy and unnecessarily verbose. It really got up my nose. The same is true of virtually all the wordprocessors I've tried; they can output html but it is absurdly convoluted and verbose garbage. For example, instead of surrounding a bit of italics text with <i>sample text</i>, they might do something like <c props="font-style:italic">sample text</c> or a similar kind of thing with the <span> tag, often with numerous superfluous tags where font color will be repeatedly be defined as black, when it only needs to be defined once, in the <body> tag, and text styles repeatedly given as having no decoration or no indent, or other silliness that explicitly defines the default condition.
Geany is a small, fast, surprisingly capable text editor that comes with Puppy, and I use it often, but I still miss a lot of the abilities TextPad gives.
I ended up installing Wine on Puppy Linux to let me run TextPad inside a faked MSWindows environment. This worked nicely and let me continue to use this sweet editor. However it niggles at me that I must fake MSWindows in order to run TextPad. Surely there must be a text editor in the Linux world which compares in power and ease of use.
Over the years I've asked around and really only been told of one editor which comes close in power: Vi. But it fails miserably in ease of use. It has a massive learning curve because it does everything differently from just about every other text editor ever made. This isn't Vi's fault; it preceded the development of the interface standards that have helped to unify computers, lower learning curves, and make it easier for people to use them. Interface standards let knowledge be transferable; what you learned on one program was largely applicable to another. Vi missed out on that, but is an undeniably powerful program.
Recently I took another look at vi. I was still looking for a useful Linux-based text editor and many people who I admire had urged me to give it a proper go, so I couldn't ignore it. While investigating further I happened to stumble across a project called cream, which is a set of vi macros that sit on top of it to create an interface that largely fits the standards, yet underneath it is still vi (vim actually -- the gui version of vi) with all the power of that program. This looked very promising. The version I initially tried was 0.41. It was nice, but a little buggy. I use it from time to time, but tended to stick with TextPad for its power, simplicity, ease of use, and reliability.
But the itch has bitten again. I notice version 0.42 of cream is available and I'm downloading it as I write this. I know it still won't come close to TextPad's extraordinary abilities, but it is a step in the right direction.
So, my question:
Does anybody know of a powerful text editor for Linux that lets you create macros, and search and replace regular expressions across end-of-line characters? Even better if it has click-insertable, user-customisable libraries of arbitary text.
Also does anyone know a wysiwyg html editor or wordprocessor for Linux that outputs minimal html?
Later I moved to Microsoft Windows when Amiga's corporate owners were in the throes of death. I found Netscape Gold was a useful html editor with a nice wysiwyg (what you see is what you get) interface, so I could see my font styles and embedded pictures immediately. Very nice. It wrote all its tags in uppercase, which bugged me -- capitals are much harder to read than lowercase -- but that was really only a small niggle.
After a while Netscape Gold became superseded by other Mozilla web browsers with html editors built in, but they began to become more and more plagued by a tendency to produce overly complex html. Eventually this drove me in search of a better solution.
I found it in the form of TextPad (http://textpad.com), the best text editor I've ever seen. This is a wonderfully flexible text editor, with reassignable key-commands, macros, the best search-replace function I've ever seen anywhere, and the ability to create lists of text snippets that can be inserted anywhere in your document with simply a mouse click. TextPad is not wysiwyg, but it lets me keep my code absolutely simple, just the way I like it, and it is an utter delight to use. You can use the demo version forever, but I loved it so much I bought a copy.
Later I finally moved to Linux. I'd been experimenting with many flavors of Linux for years before I was shown Puppy Linux. It was tiny compared to all other Linux distributions, and surprisingly full-featured. It was also very fast -- something I needed as my computers were rather dated, and, sadly, operating systems and other software generally become slower as they "develop". I had to start looking again for a good way to write html. TextPad ran only on Microsoft Windows. Mozilla still had html editors, in fact one (Seamonkey) was included as standard in Puppy Linux, but the html produced was messy and unnecessarily verbose. It really got up my nose. The same is true of virtually all the wordprocessors I've tried; they can output html but it is absurdly convoluted and verbose garbage. For example, instead of surrounding a bit of italics text with <i>sample text</i>, they might do something like <c props="font-style:italic">sample text</c> or a similar kind of thing with the <span> tag, often with numerous superfluous tags where font color will be repeatedly be defined as black, when it only needs to be defined once, in the <body> tag, and text styles repeatedly given as having no decoration or no indent, or other silliness that explicitly defines the default condition.
Geany is a small, fast, surprisingly capable text editor that comes with Puppy, and I use it often, but I still miss a lot of the abilities TextPad gives.
I ended up installing Wine on Puppy Linux to let me run TextPad inside a faked MSWindows environment. This worked nicely and let me continue to use this sweet editor. However it niggles at me that I must fake MSWindows in order to run TextPad. Surely there must be a text editor in the Linux world which compares in power and ease of use.
Over the years I've asked around and really only been told of one editor which comes close in power: Vi. But it fails miserably in ease of use. It has a massive learning curve because it does everything differently from just about every other text editor ever made. This isn't Vi's fault; it preceded the development of the interface standards that have helped to unify computers, lower learning curves, and make it easier for people to use them. Interface standards let knowledge be transferable; what you learned on one program was largely applicable to another. Vi missed out on that, but is an undeniably powerful program.
Recently I took another look at vi. I was still looking for a useful Linux-based text editor and many people who I admire had urged me to give it a proper go, so I couldn't ignore it. While investigating further I happened to stumble across a project called cream, which is a set of vi macros that sit on top of it to create an interface that largely fits the standards, yet underneath it is still vi (vim actually -- the gui version of vi) with all the power of that program. This looked very promising. The version I initially tried was 0.41. It was nice, but a little buggy. I use it from time to time, but tended to stick with TextPad for its power, simplicity, ease of use, and reliability.
But the itch has bitten again. I notice version 0.42 of cream is available and I'm downloading it as I write this. I know it still won't come close to TextPad's extraordinary abilities, but it is a step in the right direction.
So, my question:
Does anybody know of a powerful text editor for Linux that lets you create macros, and search and replace regular expressions across end-of-line characters? Even better if it has click-insertable, user-customisable libraries of arbitary text.
Also does anyone know a wysiwyg html editor or wordprocessor for Linux that outputs minimal html?
no subject
Date: 2010-01-08 04:27 am (UTC)Alternately... *twitch* emacs? I'm not sure it's any easier to use than gvim, but you can write macros in lisp, so... :-)
no subject
Date: 2010-01-08 06:25 am (UTC)Emacs... talk about jumping from the frying pan into... uh... the volcano. :) Emacs is incredibly powerful, but is orders of magnitude more unfriendly than vi. And lisp is like Forth backwards (forth forwards is weird enough). I should re-learn lisp though... Rodney Brooks programs all his robots in lisp.
Maybe I should resurrect dme on an Amiga emulator. It was an astonishing little program. Its macros could contain queries that let the macro take different branches depending on the state of the character the cursor was on, the position in the line, position in the file, and so on. Totally amazing program. Weird command set though. Hmmm... maybe I could dig up the source code and recompile it for Linux! Wow. There's a thought. Thanks for making me think of that. :)
no subject
Date: 2010-01-08 07:03 am (UTC)And even using vim, which has all kinds of crazy enhancements that aren't vi like at all, the first line in my .vimrc is:
set compatible " Go to VI compat mode
so that I don't learn bad non compatible habits (unless I explicitly turn them on further down in my .vimrc). :-)
There's a few good editors out there for Mac OS (BBEdit in particular), but their existence often starts before Mac OS X, so they've not been ported to anything more generally unix like.
no subject
Date: 2010-01-08 08:02 am (UTC)It's a good point that vi is pretty-much universally available. I've used vi on MSWindows, where it is readily available too. It is also available on Amiga and most other OSes.
Its lack of conformity with common interface standards is still a real sticking point. Learn one set of rules for vi and another set for almost everything else (except emacs, which has yet another set of rules). Cream does help make vi more palatable though.