map :call Method() map :call Getset() function! Method() perl <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 <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