I believe I made some progress with my little research concerning suckless word 
processing.
Basically, I realised that things get much easier as soon as we realize that 
there is no need for paper-centric formats.

First, there is no standard here, that is correctly supported by all office 
suites on all platforms: ODF (as well as OASIS) is not getting any decent 
popularity any time soon, common MSO formats often lack needed compatibility 
(even now when I have to bring .doc files created by OpenOffice to be printed 
on a Windows machine with MSO I get my formatting partially lost).

Second, there are lots of restrictions being imposed by those formats. They all 
employ the paradigm of paper-centric documents (documents that are created to 
be printed), whereas lots of documents people create today (I would say, almost 
the majority) won't ever be printed and are actually intended to be viewed and 
edited only between computers: be that sharing over the Net/email, passing them 
on portable media, etc. Thus, one could actually switch from paper-centric 
paradigm to screen-centric paradigm, which changes the way we think of 
formatting - e.g. we don't need page numbering, the references, links and TOC 
appear in a whole different form. Many other changes come here.

For documents that will actually get printed one could probably employ 
something like LaTeX/lout/troff/etc - and that's the whole different story.

Then I learnt about the fact that Opera employees actually use HTML for all the 
documents they share within company. Opera is actually interesting due to the 
Opera Show format, which is an approach to creating presentations using 
HTML/JavaScript/CSS only + some easy markup. The only drawback (AFAIK) is that 
Opera Show is supported only by Opera Browser (there should be addons for 
Firefox, though).

Then there is S5 with a similar approach (and I believe, better compatibility - 
not sure about IE6, though).

But what about word processing and spreadsheets?

Word processing is easier, since there are lots of lightweight markup languages 
(MarkDown being the most famous ones) that support all the basic formatting and 
produce an XHTML output. Here one could see what I called a screen-based 
approach: when I define the formatting for my text, I actually define the 
structure of my text, instead of defining the beautifiers 
(bold/italic/underline) or font sizes manually - the language interpreter does 
that for me. Besides, lightweight markup languages are nice here, because 
usually their tags don't get in the way of a spell checker.

Spreadsheets are a bit trickier. I was looking for a lightweight tool to 
produce plain text files that can be easily converted to HTML. There is SC, 
which is really nice (only depends on Curses), has VI-like keybindings and 
produces .sc files. Which are actually just plain text files with a specific 
formatting, that can later be converted to CSV (and be used in xhtml 
documents). And I think that it should be pretty easy to convert CSV to any 
lightweight markup language syntax for tables. The only drawback with SC is 
that it doesn't have Unicode support (the last update of SC was in 2002, when 
Unicode wasn't popular enough), so I couldn't get it to work with non-Latin 
characters. So I am looking for something similar, but more recent. Any ideas 
here?

Second, tools like SC naturally can't produce graphs. I know there are lots of 
plot utilities, but I couldn't really find what I needed. What I wanted was a 
small (C, preferably) console tool (so that I could invoke it right from VIM) 
that could produce images with graphs (or diagrams) using the provided CSV 
file. That image can later be used within the resulting xhtml file.

So, basically, to sum up, this way one can get a pretty flexible single 
document type that can easily mix text elements with tables (produced by a 
spreadsheet tool like sc) and graphics (be that images or graphs for the 
provided data in the tables). This document can be later viewed and edited 
(provided we send the source files as well) on literally any machine with a web 
browser (including IE6). And of course it can be easily published on the Web.

This way, one can use almost any text editor that can:
-highlight syntax (for MarkDown or any other lightweight language)
-invoke external tools (for conversion of table files, producing graphs and the 
final conversion to html)
-properly wrap lines and words (which is why nano, being a really nice, easy 
and tiny editor is not a good solution here)

to replace existing office suites.

What do you think? Can this approach work in real life - for creating academic 
papers with non-strict formatting, lecture notes, articles - for sharing with 
your friends, teachers or colleagues that may or may not have any computer 
skills?

I believe this approach can be easily implemented within Emacs environment 
(using org-mode and muse-mode, but I would like to implement this idea in VIM 
(or any other text editor), too - but I need a spreadsheet calculator and a 
plotter for that. Don't want to cause a flamewar here, of course.
-- 
wbr, Илембитов

Reply via email to