[BACK]Return to Entry.pm CVS log [TXT][DIR] Up to [local] / todotxt / Text-Todo / lib / Text / Todo

Diff for /todotxt/Text-Todo/lib/Text/Todo/Entry.pm between version 1.13 and 1.16

version 1.13, 2010/01/10 01:03:02 version 1.16, 2010/01/10 22:49:53
Line 1 
Line 1 
 package Text::Todo::Entry;  package Text::Todo::Entry;
   
 # $RedRiver: Entry.pm,v 1.12 2010/01/10 00:13:14 andrew Exp $  # $RedRiver: Entry.pm,v 1.15 2010/01/10 01:45:52 andrew Exp $
   
 use warnings;  use warnings;
 use strict;  use strict;
Line 20 
Line 20 
     my %known_tags_of;      my %known_tags_of;
   
     # XXX Should the completion (x) be case sensitive?      # XXX Should the completion (x) be case sensitive?
     my $priority_completion_regex = qr/      my $priority_completion_regex = qr{
         ^ \s*          ^ \s*
         (?i:   (x)        \s+)?          (?i:   (x)        \s*)?
         (?i:\( ([A-Z]) \) \s+)?          (?i:\( ([A-Z]) \) \s*)?
     /xms;      }xms;
   
     sub replace { _update_entry(@_) }  
   
     sub new {      sub new {
         my ( $class, $options ) = @_;          my ( $class, $options ) = @_;
   
Line 73 
Line 71 
             }              }
         }          }
   
         $self->_update_entry( $options->{text} );          $self->replace( $options->{text} );
   
         return $self;          return $self;
     }      }
   
     sub _update_entry {      sub replace {
         my ( $self, $text ) = @_;          my ( $self, $text ) = @_;
         my $ident = ident($self);          my $ident = ident($self);
   
Line 89 
Line 87 
         foreach my $tag ( keys %{ $known_tags_of{$ident} } ) {          foreach my $tag ( keys %{ $known_tags_of{$ident} } ) {
             my $symbol = quotemeta $known_tags_of{$ident}{$tag};              my $symbol = quotemeta $known_tags_of{$ident}{$tag};
             $tags_of{$ident}{$tag} = { map { $_ => q{} }              $tags_of{$ident}{$tag} = { map { $_ => q{} }
                     $text =~ / (?:^|\s) $symbol  (\S+)/gxms };                      $text =~ / (?:^|\s) $symbol  (\S*)/gxms };
         }          }
         ( $completion_status_of{$ident}, $priority_of{$ident} )          ( $completion_status_of{$ident}, $priority_of{$ident} )
             = $text =~ / $priority_completion_regex /xms;              = $text =~ / $priority_completion_regex /xms;
Line 117 
Line 115 
         return $text_of{$ident};          return $text_of{$ident};
     }      }
   
     sub depri { pri( $_[0], '' ) }      sub depri { my ($self) = @_; return $self->pri(q{}) }
   
     sub pri {      sub pri {
         my ( $self, $new_pri ) = @_;          my ( $self, $new_pri ) = @_;
Line 159 
Line 157 
             push @new, $addition;              push @new, $addition;
         }          }
   
         return $self->_update_entry( join q{ }, @new, $new );          return $self->replace( join q{ }, @new, $new );
     }      }
   
     sub append {      sub append {
         my ( $self, $addition ) = @_;          my ( $self, $addition ) = @_;
         return $self->_update_entry( join q{ }, $self->text, $addition );          return $self->replace( join q{ }, $self->text, $addition );
     }      }
   
     sub do {      ## no critic 'homonym'
       sub do {    # This is what it is called in todo.sh
           ## use critic
         my ($self) = @_;          my ($self) = @_;
         my $ident = ident($self);          my $ident = ident($self);
   

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.16

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>