stub: Lojban code highlighting
"""Like any good programmers' text editor"""
The Pitch:
I'm the kind of person who's going to work to improve
my lojban regardless of it's ease of reading, but I feel
that improving it's "readability" might make it a more
welcoming medium of expression. Indeed, with unique usage
of punctuation, lojbanic text appears somewhat alien at
first glance.
Since one of the selling points of the language is its
ease to parse... why not color-code the various parts of
speech? Since predicates are the semantic core of the
language, they could be accented in bold or in a striking
color to emphasize their importance. Then, by glancing at
a lojbanic text, you can easily scout out the general topics
and concepts being discussed.
I haven't thoroughly looked through all the parsers
already available on the site; maybe this has already been
done. Either way, I think this functionality would not only
make the language more accessible to learn, but I bet it
would increase speed of reading and encourage deeper
comprehension.
Here's my thoughts on implementation...
Concept A: A browser plugin for viewing lojban text (or just greasemonkey?)
Concept B: An emacs face profile (for a .lojban ascii-text file ext?)
Concept C: A simple text editor/reader (java for portability?)
Concept D: An in-browser editor/reader (interface like google translate, hosted somewhere?)
Concept E: An export function with formatting in-situ (like XML/HTML/PDF)
Functions:
a)all different POS are highlighted with different color
The five possible sumti (arguments) should ideally have unique colors
determined by their formal order, regardless of their textual positioning in the text.
b)selbri (functions) are bold, (black?)
To allow quick skimming of topics/concepts in a text.
c)concepts A & C: bridi have subscripts with the number of arguments
(Where formatting is possible) Add a numbered subscript to the (righthand?) side
of the a selbri that takes multiple sumti
d)italicize OOV terms that are not tagged as cmene
Just like emacs does when you try to type a non-existant keyword
e)separate each predicate by linebreak(?)
Maybe this is just me thinking too procedurally, but it might also
increase clarity if each line only contains at most one bridi
f)additional linebreak/tabbed formatting for connected phrases (?) [ie. 'and,' 'but' etc]
This it total conjecture. Please critique.
Concerns:
i. must keep updated to latest vocabulary (duh)
ii. hyperlink differentiation (just an underline?)
iii. treatment of tag-like cmavo (fa, fe, fi etc)
iv. support for non-standard conventions
v. think about the color-blind!
vi. still culturally neutral?
vii. goes against the plain-text precedent
viii. viability (speed??)
Anyhow, I'd really like to hear what people think, especially any
pointers from more experienced lojbanists/programmers, or links to
similar projects I'm unaware of.