map <F2> :call Method()<cr>
map <F3> :call Getset()<cr>
+
function! Method()
perl <<EOF
($row) = $curwin->Cursor();
my $method_name = $curbuf->Get( $row );
my @method_string = (
"=head2 $method_name",
"",
"=over",
"",
"=item Usage",
"",
" \$obj->$method_name()",
"",
"=item Function",
"",
"=item Returns",
"",
"=item Arguments",
"",
"=back",
"",
"=cut",
"",
"sub $method_name {",
" my (\$self, \%argv) = \@_;",
"",
"",
"}",
""
);
+
$curbuf->Delete($row);
$row--;
$curbuf->Append($row, @method_string);
EOF
endfunction
function! Getset()
perl <<EOF
($row) = $curwin->Cursor();
my $method_name = $curbuf->Get( $row );
my @method_string = (
"=head2 $method_name",
"",
"=over",
"",
"=item Usage",
"",
" \$obj->$method_name() #get existing value",
" \$obj->$method_name(\$newval) #set new value",
"",
"=item Function",
"",
"=item Returns",
"",
"value of $method_name (a scalar)",
"",
"=item Arguments",
"",
"new value of $method_name (to set)",
"",
"=back",
"",
"=cut",
"",
"sub $method_name {",
" my \$self = shift;",
" return \$self->{'$method_name'} = shift if defined(\@_);",
" return \$self->{'$method_name'};",
"}",
""
);
+
$curbuf->Delete($row);
$row--;
$curbuf->Append($row, @method_string);
EOF
endfunction
|