Open Bug 35748 Opened 25 years ago Updated 4 years ago

Create text mode port

Categories

(Core :: DOM: Serializers, enhancement, P5)

enhancement

Tracking

()

People

(Reporter: BenB, Unassigned)

References

Details

(Keywords: helpwanted)

This is son-of-17723.

The idea is primarily to have a powerful HTML->TXT conversion, which is used
e.g. by mailnews, when composing in HTML editor and sending plain text (this is
a very common case).

However, it would be very cool to have a Mozilla, that can run (only) on a text
console, i.e. a replacement for lynx (which currently doesn't even support
tables).

<quote src="bug 17723">
HTMLToTXTSinkStream and related files are a mess.
[...]
To get some flexible structure, we have to design a browser
minus interactivity plus different linebreak strategies (filled for tables,
plain, flowed etc.). We not just have an existing design, but also a lot of
code, we can reuse: NGLayout.

The plan is to at least reuse everything until nsCSSFrameConstructor (see
<http://www.mozilla.org/docs/url_load.html>), propably some of the nsIFrames.

The problem is my limited knowledge about NGLayout and XPCOM. More detailed: I
don't know, how to decide somewhere at the webshell, which
</quote>
set of frames (2D-graphical or text) to use.

HELPWANTED
From my webpage for bug 17723 (will be disconnected now):

The aim is to make the TXT output more modular. Working are the following cases: 

  + unformatted: just the text 
  * formatted:   trying to do something useful with lists, em, h1 etc. and line
                 wrapping 
  * flowed:      formatted plus implementing RFC2646 

But there's at least one more proposal: Out-of-band SGML. Additionally, I want
to add support for tables, that do
wrapping, too. 

All these cases are coded more or less in the Write function in
nsHTMLToTXTSinkStream, because they follow
the (optional) formatting like bold, but that it makes the function a mess. 

Thus the goal is to make all this more modular and flexible. 
Keywords: helpwanted
Sounds like a cool feature! :)
Can't we "just" implement a /gfx/ for text mode? Maybe using aalib?
Summary: Create text port → Create text mode port
Depends on: 118557
Filter on "Nobody_NScomTLD_20080620"
QA Contact: sujay → dom-to-text

Bulk-downgrade of unassigned, untouched DOM/Storage bug's priority.

If you have reason to believe, this is wrong, please write a comment and ni :jstutte.

Severity: normal → S4
Priority: P3 → P5
You need to log in before you can comment on or make changes to this bug.