Changeset 215
- Timestamp:
- 04/06/07 20:39:01 (2 years ago)
- Files:
-
- trunk/lib/Document/AST (added)
- trunk/lib/Document/AST.pm (added)
- trunk/lib/Document/AST/Tree.pm (added)
- trunk/src/core/Spork/lib/Spork/Formatter2.pm (modified) (1 diff)
- trunk/src/core/Spork/lib/Spork/Parser.pm (modified) (3 diffs)
- trunk/src/cpan/modules.mk (modified) (1 diff)
- trunk/src/plugins/ingy/Document-Parser/lib/Document/AST (added)
- trunk/src/plugins/ingy/Document-Parser/lib/Document/AST.pm (added)
- trunk/src/plugins/ingy/Document-Parser/lib/Document/AST/Tree.pm (added)
- trunk/src/plugins/ingy/Document-Parser/lib/Document/Parser.pm (modified) (1 diff)
- trunk/src/plugins/modules.mk (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/core/Spork/lib/Spork/Formatter2.pm
r203 r215 3 3 use Spork::Parser; 4 4 use Spork::Emitter::HTML; 5 use XXX;6 5 7 6 sub text_to_html { trunk/src/core/Spork/lib/Spork/Parser.pm
r214 r215 3 3 use warnings; 4 4 use base 'Document::Parser'; 5 6 sub set_ast { 7 require Document::AST::Tree; 8 my $self = shift; 9 $self->{ast} = Document::AST::Tree->new; 10 } 5 11 6 12 sub set_grammar { … … 60 66 } 61 67 68 # Fancy Regexp Generators 62 69 my $ALPHANUM = '\p{Letter}\p{Number}\pM'; 63 70 … … 73 80 } 74 81 75 sub set_ast {76 my $self = shift;77 $self->{ast} = Spork::AST->new;78 }79 80 package Spork::AST;81 use base 'Document::AST';82 83 sub insert {84 my $self = shift;85 my $ast = shift;86 my $new = $ast->{output};87 my $current = $self->{output}[-1];88 my ($key) = keys %$current;89 push @{$current->{$key}}, @$new;90 }91 92 sub begin_node {93 my $self = shift;94 push @{$self->{output}}, {shift, []};95 }96 97 sub text_node {98 my $self = shift;99 push @{$self->{output}}, shift;100 }101 102 sub end_node {103 }104 105 82 1; trunk/src/cpan/modules.mk
r142 r215 18 18 CPAN_LEVEL_1 = \ 19 19 URI.pm \ 20 XXX.pm \ 20 21 21 22 CPAN_LEVEL_2 = \ trunk/src/plugins/ingy/Document-Parser/lib/Document/Parser.pm
r213 r215 169 169 } 170 170 171 package Document::AST;172 173 sub new {174 my $class = shift;175 return bless { output => [], @_ }, ref($class) || $class;176 }177 178 sub content {179 my $self = shift;180 return $self->{output};181 }182 183 sub insert {184 my $self = shift;185 my $ast = shift;186 die;187 # $self->{output} .= $ast->{output};188 }189 190 sub begin_node {191 my $self = shift;192 my $tag = shift;193 die;194 # $self->{output} .= "+$tag\n";195 }196 197 sub end_node {198 my $self = shift;199 my $tag = shift;200 die;201 # $tag =~ s/-.*//;202 # $self->{output} .= "-$tag\n";203 }204 205 sub text_node {206 my $self = shift;207 my $text = shift;208 die;209 # $self->{output} .= " $text\n";210 }211 212 171 1; 213 172 214 173 =head1 174 175 =cut trunk/src/plugins/modules.mk
r202 r215 1 1 PLUGINS_PATHS = \ 2 2 Document \ 3 Document/AST \ 3 4 HTTP/Server/Simple \ 4 5 Kwiki \ … … 109 110 Kwiki/VimMode.pm \ 110 111 Kwiki/Weather.pm \ 112 Document/AST.pm \ 111 113 Document/Parser.pm \ 112 114 Kwiki/AdSense.pm \ … … 219 221 Kwiki/UserName/Remote.pm \ 220 222 Kwiki/Users/Remote.pm \ 223 Document/AST/Tree.pm \ 221 224 Kwiki/Ajax/Toolman.pm \ 222 225 Kwiki/Archive/Rcs.pm \
