Paragraph Packing

Discussion in 'Javascript' started by Dr John Stockton, Dec 11, 2005.

  1. Page <URL:http://www.merlyn.demon.co.uk/js-quick.htm> now contains code
    to pack text into multiple paragraphs of given right margin (the nominal
    range is from 1 to nearly Infinity).


    function Pak(F) { var S = F.Code.value, L = +F.Len.value, J, Re
    S = S.replace(/(\r?\n){2,}/g, "\u0000").replace(/(\r?\n)/g, " ")
    S = S.replace(/\s+/g, " ").split("\u0000")
    if (L<1) L = F.Len.value = 1
    Re = new RegExp("(.{1," + L + "}) ", "g")
    J = S.length ; while (J--)
    S[J] = (S[J].replace(/^\s+/, "")+" ").replace(Re, "$1\n")
    F.Code.value = S.join("\n") }


    F.Code is the I/O textarea; Code.L gives the margin.

    The input paragraph separator is an empty line or lines.

    It works in my IE4 ; any comment, particularly in respect of recognising
    line-ends in non-Windows systems ?

    Also - is anything wrong with using \u0000 as a marker?


    The feature can be used to normalise badly-posted plain text, for more
    comfortable reading.

    --
    © John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v4.00 IE 4 ©
    <URL:http://www.jibbering.com/faq/> JL/RC: FAQ of news:comp.lang.javascript
    <URL:http://www.merlyn.demon.co.uk/js-index.htm> jscr maths, dates, sources.
    <URL:http://www.merlyn.demon.co.uk/> TP/BP/Delphi/jscr/&c, FAQ items, links.
     
    Dr John Stockton, Dec 11, 2005
    #1
    1. Advertising

  2. Dr John Stockton

    RobG Guest

    Dr John Stockton wrote:
    [...]
    > It works in my IE4 ; any comment, particularly in respect of recognising
    > line-ends in non-Windows systems ?


    Seems to work fine in Safari 1.0.3, it does not recognise new lines in
    IE 5.2 (Mac). I'll mess around with and see if I can find the
    appropriate character - maybe \u0000 is the issue.


    [...]


    --
    Rob
     
    RobG, Dec 13, 2005
    #2
    1. Advertising

  3. JRS: In article <439e9bbb$0$3672$5a62ac22@per-qv1-newsreader-
    01.iinet.net.au>, dated Tue, 13 Dec 2005 20:00:27 local, seen in
    news:comp.lang.javascript, RobG <> posted :
    >Dr John Stockton wrote:
    >[...]
    >> It works in my IE4 ; any comment, particularly in respect of recognising
    >> line-ends in non-Windows systems ?

    >
    >Seems to work fine in Safari 1.0.3, it does not recognise new lines in
    >IE 5.2 (Mac). I'll mess around with and see if I can find the
    >appropriate character - maybe \u0000 is the issue.


    Could be; for test purposes one can use the uncontentious but rare #
    instead; literally or as \u0023 (?).

    But I'd look closely at the two (\r?\n) ... It may be necessary to do
    them in two stages each, first for \r\n and second for \r|\n.


    Thanks for looking.

    --
    © John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v4.00 IE 4 ©
    <URL:http://www.jibbering.com/faq/> JL/RC: FAQ of news:comp.lang.javascript
    <URL:http://www.merlyn.demon.co.uk/js-index.htm> jscr maths, dates, sources.
    <URL:http://www.merlyn.demon.co.uk/> TP/BP/Delphi/jscr/&c, FAQ items, links.
     
    Dr John Stockton, Dec 13, 2005
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Anno Siegel

    Re: read a paragraph via scrit?

    Anno Siegel, Apr 1, 2004, in forum: Perl
    Replies:
    0
    Views:
    453
    Anno Siegel
    Apr 1, 2004
  2. Jim Heavey

    Paragraph Name

    Jim Heavey, Dec 3, 2003, in forum: ASP .Net
    Replies:
    2
    Views:
    466
    Jim Heavey
    Dec 4, 2003
  3. MW de Jager

    HTML Paragraph question

    MW de Jager, Jul 6, 2005, in forum: ASP .Net
    Replies:
    9
    Views:
    468
    John Timney \(ASP.NET MVP\)
    Jul 6, 2005
  4. ad
    Replies:
    4
    Views:
    409
    UT-BadBoy
    Feb 23, 2006
  5. dorayme
    Replies:
    112
    Views:
    2,746
    dorayme
    Mar 30, 2009
Loading...

Share This Page