diff options
Diffstat (limited to 'vim/bundle/vim-snippets/UltiSnips/ada.snippets')
-rw-r--r-- | vim/bundle/vim-snippets/UltiSnips/ada.snippets | 280 |
1 files changed, 280 insertions, 0 deletions
diff --git a/vim/bundle/vim-snippets/UltiSnips/ada.snippets b/vim/bundle/vim-snippets/UltiSnips/ada.snippets new file mode 100644 index 0000000..cc35c2c --- /dev/null +++ b/vim/bundle/vim-snippets/UltiSnips/ada.snippets @@ -0,0 +1,280 @@ +priority -50 + +global !p + +def ada_case(word): + out = word[0].upper() + for i in range(1, len(word)): + if word[i - 1] == '_': + out = out + word[i].upper() + else: + out = out + word[i] + return out + +endglobal + +snippet wi "with" +with $1;$0 +endsnippet + +snippet pac "package" +package ${1:`!p snip.rv = ada_case(snip.basename)`} is + $0 +end $1; +endsnippet + +snippet pacb "package body" +package body ${1:`!p snip.rv = ada_case(snip.basename)`} is + $0 +end $1; +endsnippet + +snippet ent "entry ... when" +entry $1($2) when $3 is +begin + $0 +end $1; +endsnippet + +snippet task "task" +task $1 is + entry $0 +end $1; +endsnippet + +snippet taskb "task body" +task body $1 is + $2 +begin + $0 +end $1; +endsnippet + +snippet acc "accept" +accept $1($2) do + $0 +end $1; +endsnippet + +snippet prot "protected type" +protected type $1($2) is + $0 +end $1; +endsnippet + +snippet prob "protected body" +protected body $1 is + $2 +begin + $0 +end $1; +endsnippet + +snippet gen "generic type" +generic + type $1 is $2;$0 +endsnippet + +snippet ty "type" +type $1 is $2;$0 +endsnippet + +snippet tyd "type with default value" +type $1 is $2 + with Default_Value => $3;$0 +endsnippet + +snippet subty "subtype" +subtype $1 is $2;$0 +endsnippet + +snippet dec "declare block" +declare + $1 +begin + $0 +end; +endsnippet + +snippet decn "declare named block" +$1: +declare + $2 +begin + $0 +end $1; +endsnippet + +snippet ifex "if expression" +if $1 then $2 else $0 +endsnippet + +snippet casex "case expression" +case $1 is + when $2 => $3,$0 +endsnippet + +snippet fora "for all" +for all $1 ${2:in} $3 => $0 +endsnippet + +snippet fors "for some" +for some $1 ${2:in} $3 => $0 +endsnippet + +snippet if "if" +if $1 then + $0 +end if; +endsnippet + +snippet ife "if ... else" +if $1 then + $2 +else + $0 +end if; +endsnippet + +snippet el "else" +else + $0 +endsnippet + +snippet eif "elsif" +elsif $1 then + $0 +endsnippet + +snippet wh "while" +while $1 loop + $0 +end loop; +endsnippet + +snippet nwh "named while" +$1: +while $2 loop + $0 +end loop $1; +endsnippet + +snippet for "for" +for ${1:I} in $2 loop + $0 +end loop; +endsnippet + +snippet fore "for each" +for $1 of $2 loop + $0 +end loop; +endsnippet + +snippet nfor "named for" +$1: +for ${2:I} in $3 loop + $0 +end loop $1; +endsnippet + +snippet nfore "named for each" +$1: +for $2 of $3 loop + $0 +end loop $1; +endsnippet + +snippet proc "procedure" +procedure $1($2) is + $3 +begin + $0 +end $1; +endsnippet + +snippet procd "procedure declaration" +procedure $1;$0 +endsnippet + +snippet fun "function" +function $1($2) return $3 is + $4 +begin + $0 +end $1; +endsnippet + +snippet fune "expression function" +function $1 return $2 is + ($3);$0 +endsnippet + +snippet fund "function declaration" +function $1 return $2;$0 +endsnippet + +snippet ret "extended return" +return $1 do + $0 +end return; +endsnippet + +snippet rec "record" +record + $0 +end record; +endsnippet + +snippet case "case" +case $1 is + when $2 => $3;$0 +end case; +endsnippet + +snippet whe "when" +when $1 => $2;$0 +endsnippet + +snippet wheo "when others" +when others => $1;$0 +endsnippet + +snippet lo "loop" +loop + $0 +end loop; +endsnippet + +snippet nlo "named loop" +$1: +loop + $0 +end loop $1; +endsnippet + +snippet ex "exit when" +exit when $1;$0 +endsnippet + +snippet put "Ada.Text_IO.Put" +Ada.Text_IO.Put($1);$0 +endsnippet + +snippet putl "Ada.Text_IO.Put_Line" +Ada.Text_IO.Put_Line($1);$0 +endsnippet + +snippet get "Ada.Text_IO.Get" +Ada.Text_IO.Get($1);$0 +endsnippet + +snippet getl "Ada.Text_IO.Get_Line" +Ada.Text_IO.Get_Line($1);$0 +endsnippet + +snippet newline "Ada.Text_IO.New_Line" +Ada.Text_IO.New_Line(${1:1});$0 +endsnippet + +# vim:ft=snippets: |