From 86fd504e9134f536427542983c901f1ede680f87 Mon Sep 17 00:00:00 2001 From: takezoe Date: Thu, 1 Dec 2011 15:05:01 +0000 Subject: [PATCH] =?utf8?q?=E3=83=AC=E3=83=93=E3=83=A5=E3=83=BC=E7=94=A8?= =?utf8?q?=E3=81=AB=E8=BF=BD=E5=8A=A0=E3=80=81=E5=89=8A=E9=99=A4=E3=82=92?= =?utf8?q?=E7=A4=BA=E3=81=99=E3=81=9F=E3=82=81=E3=81=AE=E3=83=97=E3=83=A9?= =?utf8?q?=E3=82=B0=E3=82=A4=E3=83=B3=E3=82=92=E8=BF=BD=E5=8A=A0=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- takezoe/plugin/book/Add.pm | 39 +++++++++++++++++++++++++++++++++++++++ takezoe/plugin/book/Del.pm | 39 +++++++++++++++++++++++++++++++++++++++ takezoe/plugin/book/Install.pm | 12 ++++++++++++ takezoe/plugin/book/Memo.pm | 4 ++-- takezoe/plugin/book/Memolist.pm | 21 ++++++++++++++++++++- 5 files changed, 112 insertions(+), 3 deletions(-) create mode 100644 takezoe/plugin/book/Add.pm create mode 100644 takezoe/plugin/book/Del.pm diff --git a/takezoe/plugin/book/Add.pm b/takezoe/plugin/book/Add.pm new file mode 100644 index 0000000..f53e75e --- /dev/null +++ b/takezoe/plugin/book/Add.pm @@ -0,0 +1,39 @@ +################################################################################ +# +#

¥Ú¡¼¥¸¤Ë¥á¥â¤òµ­½Ò¤¹¤ë¤¿¤á¤Î¥¤¥ó¥é¥¤¥ó¥×¥é¥°¥¤¥ó¤Ç¤¹¡£

+#
+# {{memo ¤³¤³¤Ë¥á¥â¤òµ­½Ò¤·¤Þ¤¹¡£}}
+# 
+#

+# µ­½Ò¤·¤¿¥á¥â¤Ï¶¯Ä´¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£ +# ¤Þ¤¿¡¢memolist¥×¥é¥°¥¤¥ó¤ò»ÈÍѤ·¤Æ°ìÍ÷ɽ¼¨¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +#

+# +################################################################################ +package plugin::book::Add; +#============================================================================== +# ¥³¥ó¥¹¥È¥é¥¯¥¿ +#============================================================================== +sub new { + my $class = shift; + my $self = {}; + $self->{'todo'} = []; + return bless $self,$class; +} + +#============================================================================== +# ¥Ñ¥é¥°¥é¥Õ¥á¥½¥Ã¥É +#============================================================================== +sub inline { + my $self = shift; + my $wiki = shift; + my $text = shift; + + my $plugin = $wiki->get_plugin_instance('plugin::book::Memo'); + push(@{$plugin->{'memolist'}}, "[add]".$text); + my @list = @{$plugin->{'memolist'}}; + + return ''.Util::escapeHTML($text).''; +} + +1; diff --git a/takezoe/plugin/book/Del.pm b/takezoe/plugin/book/Del.pm new file mode 100644 index 0000000..a1565db --- /dev/null +++ b/takezoe/plugin/book/Del.pm @@ -0,0 +1,39 @@ +################################################################################ +# +#

¥Ú¡¼¥¸¤Ë¥á¥â¤òµ­½Ò¤¹¤ë¤¿¤á¤Î¥¤¥ó¥é¥¤¥ó¥×¥é¥°¥¤¥ó¤Ç¤¹¡£

+#
+# {{memo ¤³¤³¤Ë¥á¥â¤òµ­½Ò¤·¤Þ¤¹¡£}}
+# 
+#

+# µ­½Ò¤·¤¿¥á¥â¤Ï¶¯Ä´¤µ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£ +# ¤Þ¤¿¡¢memolist¥×¥é¥°¥¤¥ó¤ò»ÈÍѤ·¤Æ°ìÍ÷ɽ¼¨¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ +#

+# +################################################################################ +package plugin::book::Del; +#============================================================================== +# ¥³¥ó¥¹¥È¥é¥¯¥¿ +#============================================================================== +sub new { + my $class = shift; + my $self = {}; + $self->{'todo'} = []; + return bless $self,$class; +} + +#============================================================================== +# ¥Ñ¥é¥°¥é¥Õ¥á¥½¥Ã¥É +#============================================================================== +sub inline { + my $self = shift; + my $wiki = shift; + my $text = shift; + + my $plugin = $wiki->get_plugin_instance('plugin::book::Memo'); + push(@{$plugin->{'memolist'}}, "[delete]".$text); + my @list = @{$plugin->{'memolist'}}; + + return ''.Util::escapeHTML($text).''; +} + +1; diff --git a/takezoe/plugin/book/Install.pm b/takezoe/plugin/book/Install.pm index 163b7ef..9610bf3 100644 --- a/takezoe/plugin/book/Install.pm +++ b/takezoe/plugin/book/Install.pm @@ -26,6 +26,8 @@ sub install { $wiki->add_block_plugin("box" ,"plugin::book::Box" ,"HTML"); $wiki->add_inline_plugin("memo", "plugin::book::Memo", "HTML"); + $wiki->add_inline_plugin("add", "plugin::book::Add", "HTML"); + $wiki->add_inline_plugin("del", "plugin::book::Del", "HTML"); $wiki->add_paragraph_plugin("memolist", "plugin::book::Memolist", "HTML"); $wiki->add_inline_plugin("wordcount", "plugin::book::Wordcount", "HTML"); @@ -89,6 +91,16 @@ span.memo { margin-right: 2x; } +span.delete { + color: blue; + text-decoration: line-through; +} + +span.add { + color: red; + text-decoration: underline; +} + div.caption { font-size: 80%; font-weight: bold; diff --git a/takezoe/plugin/book/Memo.pm b/takezoe/plugin/book/Memo.pm index 4475206..427b872 100644 --- a/takezoe/plugin/book/Memo.pm +++ b/takezoe/plugin/book/Memo.pm @@ -29,10 +29,10 @@ sub inline { my $wiki = shift; my $text = shift; - push(@{$self->{'memolist'}}, $text); + push(@{$self->{'memolist'}}, "[comment]".$text); my @list = @{$self->{'memolist'}}; - return ''.Util::escapeHTML($text).''; + return ''.Util::escapeHTML($text).''; } 1; diff --git a/takezoe/plugin/book/Memolist.pm b/takezoe/plugin/book/Memolist.pm index b62e1c5..f31cd38 100644 --- a/takezoe/plugin/book/Memolist.pm +++ b/takezoe/plugin/book/Memolist.pm @@ -27,8 +27,27 @@ sub paragraph { my $buf = ''; my $count = 1; + my @paths = split(/\//, $wiki->get_CGI()->path_info()); + my $path_prefix = ''; + for(my $i = 0; $i < $#paths; $i++){ + $path_prefix .= '../'; + } + foreach my $memo (@{$plugin->{'memolist'}}){ - $buf .= '
  • '.Util::escapeHTML($memo).'
  • '; + $buf .= '
  • '; + $icon = ''; + if($memo =~ /^\[comment\]/){ + $icon = 'comment.png'; + } elsif($memo =~ /^\[add\]/){ + $icon = 'add.png'; + } elsif($memo =~ /^\[delete\]/){ + $icon = 'delete.png'; + } + if($icon ne ''){ + $buf .= ''; + $memo =~ s/^\[.+?\]//; + } + $buf .= Util::escapeHTML($memo).'
  • '; $count++; } -- 2.11.0