dot_files/vim-plugins/bundle/xptemplate/ftplugin/perl/perl.xpt.vim
2017-07-09 00:26:06 +03:00

151 lines
2.5 KiB
VimL

XPTemplate priority=lang
let s:f = g:XPTfuncs()
XPTvar $TRUE 1
XPTvar $FALSE 0
XPTvar $NULL
XPTvar $UNDEFINED
XPTvar $VOID_LINE # void;
XPTvar $CURSOR_PH # cursor
XPTvar $BRif ' '
XPTvar $BRel \n
XPTvar $BRloop ' '
XPTvar $BRstc ' '
XPTvar $BRfun ' '
XPTinclude
\ _common/common
XPTvar $CS #
XPTinclude
\ _comment/singleSign
XPTvar $VAR_PRE $
XPTvar $FOR_SCOPE 'my '
XPTinclude
\ _loops/for
XPTinclude
\ _loops/c.while.like
" ========================= Function and Variables =============================
" ================================= Snippets ===================================
" perl has no NULL value
XPT fornn hidden=1
XPT whilenn hidden=1
XPT perl " #!/usr/bin/env perl
#!/usr/bin/env perl
..XPT
XPT xif " .. if ..;
`expr^ if `cond^;
XPT xwhile " .. while ..;
`expr^ while `cond^;
XPT xunless " .. unless ..;
`expr^ unless `cond^;
XPT xforeach " .. foreach ..;
`expr^ foreach @`array^;
XPT sub " sub .. { .. }
sub `fun_name^`$BRfun^{
`cursor^
}
XPT unless " unless ( .. ) { .. }
unless`$SPcmd^(`$SParg^`cond^`$SParg^)`$BRif^{
`cursor^
}
XPT eval wrap=risky " eval { .. };if...
eval`$BRif^{
`risky^
};
if`$SPcmd^(`$SParg^$@`$SParg^)`$BRif^{
`handle^
}
XPT try alias=eval " eval { .. }; if ...
XPT whileeach " while \( \( key, val ) = each\( %** ) )
while`$SPcmd^(`$SParg^(`$SParg^$`key^,`$SPop^$`val^`$SParg^) = each(`$SParg^%`array^`$SParg^)`$SParg^)`$BRloop^{
`cursor^
}
XPT whileline " while \( defined\( \$line = <FILE> ) )
while`$SPcmd^(`$SParg^defined(`$SParg^$`line^`$SPop^=`$SPop^<`STDIN^>`$SParg^)`$SParg^)`$BRloop^{
`cursor^
}
XPT foreach " foreach my .. (..){}
foreach`$SPcmd^my $`var^ (`$SParg^@`array^`$SParg^)`$BRloop^{
`cursor^
}
XPT forkeys " foreach my var \( keys %** )
foreach`$SPcmd^my $`var^ (`$SParg^keys @`array^`$SParg^)`$BRloop^{
`cursor^
}
XPT forvalues " foreach my var \( keys %** )
foreach`$SPcmd^my $`var^ (`$SParg^values @`array^`$SParg^)`$BRloop^{
`cursor^
}
XPT if wrap=job " if ( .. ) { .. } ...
XSET job=$CS job
if`$SPcmd^(`$SParg^`cond^`$SParg^)`$BRif^{
`job^
}`
`elsif...^`$BRel^elsif`$SPcmd^(`$SParg^`cond2^`$SParg^)`$BRif^{
`job^
}`
`elsif...^`
`else...{{^`$BRel^else`$BRif^{
`cursor^
}`}}^
XPT package "
package `className^;
use base qw(`parent^);
sub new`$BRfun^{
my $class = shift;
$class = ref $class if ref $class;
my $self = bless {}, $class;
$self;
}
1;
..XPT