In trying to get familiar with this editor, there are a couple of things I am attempting to do with just plain old text files.
1-- Turn on syntax coloring for hash marks so that they appear as "comments" inside text files, (appearing similar to those of perl python and ruby).
2-- Turn on indentation-based folding so that text files can be expanded and collapsed based on indentation.
From what I've seen, Komodo treats text files as "second class" files with only one style and no support for this kind of thing out of the box.
Therefore, this looks like a great opportunity to learn how to learn how to extend Komodo based on a very simple test case (i.e., all I want to do is enable the above two features and nothing else, if I have to make up a fake language and make all text files a member of that language, fine, but I'd like to make it so .txt files no longer have such minimal features).
Thanks in advance for any help on getting started with these 2 items.
UDL is the technology Komodo uses to add features like syntax-coloring
and character-based indentation to new languages. Unfortunately we
haven't implemented indentation-based indentation yet, mainly because
the only main language that uses it, Python, already has full support.
I would suggest that if you're going to denote "#" as the start of a
comment, you probably want to restrict them to the beginning of lines,
allowing for white-space. Otherwise you're going to need a full
natural-language lexer/parser to ignore '#' chars in strings, and then
you'll need to determine when a single-quote is an apostrophe and when
it's a secondary quoting character (secondary in the US, primary in
UK, ambiguous as usual in Canada).
I wrote a tutorial on writing new languages at
http://blogs.activestate.com/ericp/2007/01/kid_adding_a_ne.html
The discussion on the UDL language is still up-to-date, but
the build section -- see
http://community.activestate.com/forum-topic/introduction-building-komod...
for info on building a language.
To get you started, the UDL code would look like this:
Untested though. Please update the thread if you give it a try and
run into any issues.