X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=code_perl%2FMaasha%2FGwiki.pm;h=f9321c80148f7bf33e86d5643d7e2495cb5e477d;hb=ddbb577ec991c2a466b6c1230cc241f649753f09;hp=b0e5c971f9c5a35eea512d2e14b2b8ed3a7e685c;hpb=1857bbfaab292d6c0f2b7de86b6a5e283d332f4e;p=biopieces.git diff --git a/code_perl/Maasha/Gwiki.pm b/code_perl/Maasha/Gwiki.pm index b0e5c97..f9321c8 100644 --- a/code_perl/Maasha/Gwiki.pm +++ b/code_perl/Maasha/Gwiki.pm @@ -1,6 +1,6 @@ package Maasha::Gwiki; -# Copyright (C) 2008 Martin A. Hansen. +# Copyright (C) 2008-2009 Martin A. Hansen. # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -28,10 +28,12 @@ package Maasha::Gwiki; # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< +use warnings; use strict; use Data::Dumper; use Term::ANSIColor; use Maasha::Common; +use Maasha::Filesys; use vars qw ( @ISA @EXPORT ); @ISA = qw( Exporter ); @@ -63,13 +65,19 @@ sub gwiki2ascii { push @lines, text_bold( "$block->[ 0 ]->{ 'TEXT' }" ); } + elsif ( $block->[ 0 ]->{ 'FORMAT' } eq "summary" ) + { + $block->[ 0 ]->{ 'TEXT' } =~ s/^#summary\s+//; + + push @lines, text_bold( "Summary" ), "\n$block->[ 0 ]->{ 'TEXT' }"; + } elsif ( $block->[ 0 ]->{ 'FORMAT' } eq "level_3" ) { push @lines, "$block->[ 0 ]->{ 'TEXT' }"; } elsif ( $block->[ 0 ]->{ 'FORMAT' } eq "verbatim" ) { - map { push @lines, " $_->{ 'TEXT' }" } @{ $block }; + map { push @lines, text_white( " $_->{ 'TEXT' }" ) } @{ $block }; } elsif ( $block->[ 0 ]->{ 'FORMAT' } eq "itemize" ) { @@ -129,7 +137,7 @@ sub gwiki_read my ( $fh, @lines, $i, $c, $section, $paragraph, @block, @output ); - $fh = Maasha::Common::read_open( $file ); + $fh = Maasha::Filesys::file_read_open( $file ); @lines = <$fh>; @@ -144,7 +152,17 @@ sub gwiki_read { undef @block; - if ( $lines[ $i ] =~ /^===\s*(.+)\s*===$/ ) + if ( $lines[ $i ] =~ /(#summary.+)/ ) # TODO: unsolved problem with anchor! + { + $section = $1; + + push @block, { + TEXT => $section, + SECTION => $section, + FORMAT => "summary", + }; + } + elsif ( $lines[ $i ] =~ /^===\s*(.+)\s*===$/ ) { $section = $1; @@ -227,7 +245,7 @@ sub gwiki_read $c = $i; - while ( $lines[ $c ] !~ /^\s*$/ ) + while ( defined $lines[ $c ] and $lines[ $c ] !~ /^\s*$/ ) { $paragraph .= " $lines[ $c ]"; @@ -267,7 +285,7 @@ sub text_bold my ( $txt, ) = @_; - return colored ( $txt, "bold" ); + return colored( $txt, "bold" ); } @@ -276,7 +294,15 @@ sub text_underline my ( $txt, ) = @_; - return colored ( $txt, "underline" ); + return colored( $txt, "underline" ); +} + +sub text_white +{ + my ( $txt, + ) = @_; + + return colored( $txt, "white" ); }