???Including the project team in this thread.

Harry
On Wed, 2008-05-28 at 23:28 -0500, Brian Cameron wrote:
> Could you explain why W3M is needed on Solaris.  The FastTrack doesn't
> seem to indicate what need it fills.  Dan has suggested elinks is a
> better text-based web browser.  Did we consider elinks?  What made us
> want to integrate w3m instead of other alternatives?
> 
> Brian
> 
> 
> Shi-Ying Irene Huang wrote:
> > Template Version: @(#)sac_nextcase 1.66 04/17/08 SMI
> > This information is Copyright 2008 Sun Microsystems
> > 1. Introduction
> >     1.1. Project/Component Working Name:
> >      W3M
> >     1.2. Name of Document Author/Supplier:
> >      Author:  Rick Ju
> >     1.3  Date of This Document:
> >     27 May, 2008
> > 4. Technical Description
> > 1. Introduction
> >    1.1. Project/Component Working Name:
> > 
> >         w3m  a text-based WWW browser
> > 
> >    1.2. Name of Document Author/Supplier:
> >         
> >         Author:         Rick Ju
> >         Sponser:        Irene Huang
> > 
> >    1.3. Date of This Document:
> > 
> >         05/11/2008
> > 
> > 2. Technical Description:
> >     2.1. Details:
> >      
> >      w3m is a text-based web browser as well as a pager like `more' or 
> > `less'.
> >      With w3m you can browse web pages through a terminal emulator window
> >      (xterm, rxvt or something like that).  Moreover, w3m can be used as a
> >      text formatting tool which typesets HTML into plain text.
> > 
> >      w3m has support for tables, frames, SSL connections, color and even 
> > inline
> >      images on suitable terminals. Generally, it renders pages in a form as 
> > true
> >      to their original layout as possible.  And W3m is small. Its stripped
> >      binary for Sparc is only 260kbyte.
> > 
> >      w3m locally run cgi scripts to test html output (requires *no* 
> > webserver).
> >      w3m keystroke compatible with lynx and support the keybindings 
> > customize.
> >      w3m support SSL through the openssl library. And w3m could support 
> > cookies.
> > 
> >      Table rendering algorithm in w3m
> > 
> >      HTML table rendering is difficult. Tabular environment of LaTeX is not 
> > very
> >      difficult, which makes the width of a column either a specified value 
> > or
> >      the maximum width to put items into it. On the other hand, HTML table
> >      renderer has to decide the width of a column so that the entire table 
> > can
> >      fit into the display appropriately, and fold the contents of the table
> >      according to the column width.  Inappropriate column width decision 
> > makes
> >      the table ugly.  Moreover, table can be nested, which makes the 
> > algorithm
> >      more complicated.
> > 
> >      1. First, calculate the maximum and minimum width of each column. The
> >         maximum width is the width required to display the column without
> >         folding the contents. Generally, it is the length of paragraph
> >         delimited by <BR> or <P>. The minimum width is the lower limit
> >         to display the contents.  If the column contains the word
> >         `internationalization', the minimum width will be 20. If the column
> >         contains <pre>..</pre>, the maximum width of the preformatted
> >         text will be the minimum width of the column.  2. If the width of
> >         the column is specified by WIDTH attribute, fix the column
> >         width using that value. If the specified width is smaller than the
> >         minimum width of the column, fix the column width to the minimum
> >         width.
> > 
> >      3. Calculate the sum of the maximum width (or fixed width) of each 
> > column
> >         and check if the sum exceeds the screen width. If it is smaller than
> >         screen width, these values are used for width of each column.
> > 
> >      4. If the sum is larger than the screen width, determine the widths of
> >         each column according to the following steps.
> >          1. Let W be the screen width subtracted by the sum of widths of
> >             fixed-width columns.
> >          2. Distribute W into the columns whose width are not decided, in
> >             proportion to the logarithm of the maximum width of each column.
> >          3. If the distributed width of a column is smaller than the minimum
> >             width, then fix the width of the column to the minimum width,
> >             and do the distribution again. 
> > 
> >     In this process, distributed width is proportion to logarithm of 
> > maximum width.
> > 
> >     The algorithm above assumes that the screen width is known. But it is 
> > not
> >     true for nested table. According the algorithm above, the column width 
> > of
> >     the outer table have to be known to render the inner table, while the 
> > total
> >     width of the inner table have to be known to determine the column width 
> > of
> >     the outer table. If WIDTH attribute exists there are no problems.
> >     Otherwise, w3m assumes that the inner table is 0.8 times as wide as the
> >     outer table. It works fine, but if there are two tables side by side in 
> > an
> >     outer table, the width of the outer table always exceeds the screen 
> > width.
> >     To render this kind of table correctly, one have to render the table 
> > once,
> >     check the width of outmost table, and then render the entire table 
> > again.
> >     Netscape might employ this kind of algorithm.
> > 
> >     2.2. Interfaces:
> >            Exported Interfaces
> >                 Interface        Classification    Comments
> >                 --------------- ---------------    -----------------------
> >                 w3m CLI           Volatile         See w3m-help.txt
> > 
> >                 $HOME/.w3m/config Project Private  w3m Configuration 
> > information
> >                 SUNWw3m           Uncommited       w3m end-user packaging 
> > contains binary, libraries.
> >                 SUNWw3m-l10n      Uncommited       Localization.
> > 
> >         Imported Interfaces
> >                 Interface        Classification        Comments
> >                 --------------- --------------- -----------------------
> >                 HTML/XML/HTTP       Stable           These specs are defined
> >                                                      W 3C.org
> >                 OpenSSL             Volatile         PSARC/2003/500
> >                 Firefox             Volatile         LSARC/2008/158
> >                 GTK+                Committed        LSARC/2006/202
> >                 libpng              Volatile         LSARC/2006/202
> > 
> >     2.3. Doc Impact:
> >     
> >          Man page is needed.
> >      
> >     2.4. Packaging & Delivery:
> >          SUNWw3m (base package)             - application i.e binary, 
> > libraries
> >          SUNWw3m-l10n (localization)        - Localization.
> > 
> >    
> >     2.5. Dependencies:
> >          w3m depends on OpenSSL, Firefox, GTK+, and libpng.
> >         
> >     2.6. L10N Impact:
> >          There are string changes. Hence this should be taken care.
> > 
> >     2.7 Security Impact:
> > 
> >         None. 
> >         
> > 
> > 
> > 6. Resources and Schedule
> >     6.4. Steering Committee requested information
> >     6.4.1. Consolidation C-team Name:
> >             Desktop
> >     6.5. ARC review type: FastTrack
> >     6.6. ARC Exposure: open
> > 
> > _______________________________________________
> > opensolaris-arc mailing list
> > opensolaris-arc at opensolaris.org
> 
-- 

Harry.Lu at Sun.COM
Solaris Desktop Group, Sun Microsystems
Tel: +86-10-82618200 ext. 82870/ +86-10-62673870
Fax: +86-10-62780969


Reply via email to