Index: /lang/perl/Module-Setup/trunk/lib/Module/Setup/Flavor.pm
===================================================================
--- /lang/perl/Module-Setup/trunk/lib/Module/Setup/Flavor.pm (revision 20378)
+++ /lang/perl/Module-Setup/trunk/lib/Module/Setup/Flavor.pm (revision 20404)
@@ -58,2 +58,8 @@
 
 1;
+
+=head1 NAME
+
+Module::Setup::Flavor - Module::Setup Flavor
+
+=cut
Index: /lang/perl/Module-Setup/trunk/lib/Module/Setup/Plugin.pm
===================================================================
--- /lang/perl/Module-Setup/trunk/lib/Module/Setup/Plugin.pm (revision 20391)
+++ /lang/perl/Module-Setup/trunk/lib/Module/Setup/Plugin.pm (revision 20404)
@@ -45,2 +45,69 @@
 
 1;
+
+__END__
+
+=head1 NAME
+
+Module::Setup::Plugin - Module::Setup Plugin
+
+=head1 Trigger Point
+
+=head2 befor_dump_config $config
+
+config setup L<Module::Setup::Plugin::Config::Basic>
+
+=head2 after_setup_module_attribute
+
+module attribute setup L<Module::Setup::Plugin::VC::SVN>
+
+=head2 after_setup_template_vars
+
+template parameters setup
+
+=head2 append_template_file $template_vars, $module_attribute
+
+add module template file for new module L<Module::Setup::Plugin::VC::Git>
+
+=head2 template_process $options
+
+for template process L<Module::Setup::Plugin::Template>
+
+=head2 check_skeleton_directory
+
+=head1 Plugin Example
+
+~/.module-setup/flavor/myflavor/plugins/plugin.pl
+  package MyFlavor::Plugin;
+  use strict;
+  use warnings;
+  use base 'Module::Setup::Plugin';
+
+  use Path::Class;
+
+  sub register {
+      my($self, ) = @_;
+      $self->add_trigger( check_skeleton_directory => \&check_skeleton_directory );
+  }
+
+  sub check_skeleton_directory {
+      my $self = shift;
+  }
+
+~/.module-setup/flavor/myflavor/config.yaml
+
+  config:
+    plugins:
+      - Config::Basic
+      - VC::SVN
+      - Template
+      - Test::Makefile
+      - +MyFlavor::Plugin
+
+or command option
+
+  $ module-setup --plugin=+MyFlavor::Plugin New::Module
+
+=cut
+
+
Index: /ng/perl/Module-Setup/trunk/lib/Module/Setup/Plugin/SVN.pm
===================================================================
--- /lang/perl/Module-Setup/trunk/lib/Module/Setup/Plugin/SVN.pm (revision 20391)
+++  (revision )
@@ -1,21 +1,0 @@
-package Module::Setup::Plugin::SVN;
-use strict;
-use warnings;
-use base 'Module::Setup::Plugin';
-
-use Path::Class;
-
-sub register {
-    my($self, ) = @_;
-    $self->add_trigger( after_setup_module_attribute => \&after_setup_module_attribute );
-}
-
-sub after_setup_module_attribute {
-    my($self, $module_attribute) = @_;
-    if ($self->dialog("Subversion friendly? [Yn] ", 'y') =~ /[Yy]/) {
-        $self->create_directory( dir => Path::Class::Dir->new( $module_attribute->{dist_name}, $_) ) for (qw/ trunk tags branches /);
-        push @{ $module_attribute->{dist_path} }, 'trunk';
-    }
-}
-
-1;
Index: /lang/perl/Module-Setup/trunk/lib/Module/Setup.pm
===================================================================
--- /lang/perl/Module-Setup/trunk/lib/Module/Setup.pm (revision 20391)
+++ /lang/perl/Module-Setup/trunk/lib/Module/Setup.pm (revision 20404)
@@ -359,5 +359,5 @@
         localtime   => scalar localtime,
     };
-    $self->call_trigger( after_setup_template_vars => $module_attribute);
+    $self->call_trigger( after_setup_template_vars => $template_vars);
 
     my $base = $self->module_setup_dir('flavors', $flavor, 'template');
@@ -446,14 +446,37 @@
 =head1 SYNOPSIS
 
+simply use
+
   $ module-setup Foo::Bar
 
+make flavor
+
   $ module-setup --init catalyst-action # create a "catalyst actions" flavor
 
+edit for flavor
+
   $ cd ~/.module-setup/flavor/catalyst-action/template && some files edit for catalyst action templates
 
+use flavor
+
   $ module-setup Foo catalyst-action # create to Catalyst::Action::Foo module
 
+redistribute pack for flavor
+
   $ module-setup --pack MyFlavorCatalystAction catalyst-action > MyFlavorCatalystAction.pm
 
+useing redistributed flavor
+
+  $ module-setup --direct --flavor-class=+MyFlavorCatalystAction New::Class
+
+importing redistributed flavor
+
+  $ module-setup --init --flavor-class=+MyFlavorCatalystAction new_flavor
+
+for git
+
+  $ module-setup --plugin=VC::Git Foo::Bar # or edit your ~/.module-setup/flavor/foo/config.yaml
+
+
 =head1 DESCRIPTION
 
@@ -462,4 +485,28 @@
 When the module-setup command is executed first, a necessary template for ~/.module-setup directory is copied.
 
+=head1 What's difference Module::Setup and Module::Starter?
+
+L<Module::Starter> is very useful module. However customize of module template is complex.
+
+If L<Module::Sterter::PBP> is used, do you solve it?
+
+Yes, but switch of two or more templates is complex.
+
+If Module::Setup is used, switch of template flavor is easy.
+
+flavor customized uniquely becomes the form which can be redistributed by "module-setup --pack".
+
+if incorporating Module::Setup in your application, you can make Helper which is well alike of Catalyst::Helper.
+
+=head1 Example For Incorporating
+
+  use Module::Setup;
+  my $pmsetup = Module::Setup->new;
+  local $ENV{MODULE_SETUP_DIR} = '/tmp/module-setup'; # dont use  ~/.module-setup directory
+  my $options = {
+      unset_hash_term => 1, # disable log, using default value for all dialog method
+  };
+  $pmsetup->run($options, [qw/ New::Module foo_flavor /]; # create New::Module module with foo_flavor flavor
+
 =head1 AUTHOR
 
@@ -468,5 +515,5 @@
 =head1 SEE ALSO
 
-L<module-setup>
+L<Module::Setup::Plugin>, <L<module-setup>
 
 this module's base code is pmsetup written by Tatsuhiko Miyagawa.
