On Sat, Apr 18 2009, Andreas Tille wrote: > On Sat, 18 Apr 2009, Manoj Srivastava wrote: > >> Here is an algorithm: >> --8<---------------cut here---------------start------------->8--- >> we are not in a list >> while reading each line, do >> remove leading space >> if the only non white space character on the line is a singe . >> remove the dot >> if the line matches the regexp: '^\s+[\*\+\-]\s+' >> if we are not in a list >> emit blank line first >> record we are not in a list s/not// >> else >> if we are in a list >> record we are not in a list >> emit line >> --8<---------------cut here---------------end--------------->8--- >> >> People who can not convert this 13 line Psuedocode into a real >> code should not be writing stuff to pretty print descriptions. > > Thanks for the trust in the programming skills of your fellow > developers. You obviosely are able to write the code to detect > a list *without* using a library. Wasn't it you who told me we > should use a library to *avoid* inventing our own code? So if > you have this code which works perfectly on the input I'm > suggesting since two weeks why you want to add an additional library > on top of this. I feel a little bit bored by this discussion which > is running several circles starts to become personal without any > real reason (I hope I did not gave any) and finally leads to nothing > (at least this is my impression).
Frankly, I have no idea where this trade is going. With a 6 line pre-processor, you can feed the grep-dctrl provided Description fields to Markdown. So, seems like we have come somewhere -- we have had one investigation that leads one to believe that there are a small fraction of packages using "o" as a bullet that need to be changed, and apart fro that there are less than 50 packages are affected (if we want to specify markdown as the markup language for descriptions -- and these are the one where we have some unwanted emphasis, a non-fatal result). There is a mechanism to pre-process the description for markdown (Perl implementation below). What more is needed for you to think this is leading somewhere? >>> enclose lists in blank lines because people will tell you that >>> this will look ugly in the existing interfaces. So I would rather >>> tend to "No for both" and this is the crux here. >> >> Frankly, I think this is very wrong. > > The solution does not work without the code you wrote above. But you > need this code anyway to detect lists in the long descriptions and so > I wonder where the real profit of an additional library is. *Sigh*. All I am doing with the code is inserting a line before the lists. I am not generating html. I am not also handling the _other_ markup that markdown handles, that I presented as something that will make the description more readable too. The markdown librarys does all the heavy lifting fro the html generation. If you think my little perl snippet is the equivalent for what markdown does, you have not looked at markdown. I am not re-inventing the wheel when it comes to markup languages. We know we needed _some_ pre-processing because we have the paragraphs separated by ' .', but the code is pretty minimal. --8<---------------cut here---------------start------------->8--- my $in=0; while(<>) { chomp; s/^ //g; s/^\.\s*$//; if(/^\s+[\*\+\-]\s+/) { print "\n" unless $in++;} else { $in=0; } print "$_\n" } --8<---------------cut here---------------end--------------->8--- manoj ps: This can easily become a shell function. __> grep-aptavail -s Description -P airport-utils | perl -e ' my $in=0; while(<>) { chomp; s/^ //g; s/^\.\s*$//; if(/^\s+[\*\+\-]\s+/) { print "\n" unless $in++;} else { $in=0; } print "$_\n" }' | markdown <p>Description: configuration and management utilities for Apple AirPort base stations This package contains various utilities to manage the Apple AirPort base stations.</p> <p>Be aware that Apple released several versions of the AirPort base station; the original AirPort ("Graphite") was a rebranded Lucent RG-1000 base station, doing 802.11a/b. The AirPort Extreme ("Snow") is an Apple-built 802.11a/b/g base station.</p> <p>For the original Apple AirPort and the Lucent RG-1000 base stations only:</p> <ul> <li>airport-config: base station configurator</li> <li>airport-linkmon: wireless link monitor, gives information on the wireless link quality between the base station and the associated hosts</li> </ul> <p>For the Apple AirPort Extreme base stations only:</p> <ul> <li>airport2-config: base station configurator</li> <li>airport2-portinspector: port maps monitor</li> <li>airport2-ipinspector: WAN interface monitoring utility</li> </ul> <p>For all:</p> <ul> <li><p>airport-modem: modem control utility, displays modem state, starts/stops modem connections, displays the approximate connection time (Extreme only)</p> <ul> <li>airport-hostmon: wireless hosts monitor, lists wireless hosts connected to the base station (see airport2-portinspector for the Snow)</li> </ul></li> </ul> -- Never call a man a fool; borrow from him. Manoj Srivastava <sriva...@debian.org> <http://www.debian.org/~srivasta/> 1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C -- To UNSUBSCRIBE, email to debian-policy-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org