Scheme update
This commit is contained in:
parent
170507f61b
commit
0ca574db04
|
@ -0,0 +1,104 @@
|
|||
snippet textio "Insert Textio import" b
|
||||
with Ada.Text_IO;$0
|
||||
endsnippet
|
||||
|
||||
snippet procedure "insert procedure" bA
|
||||
-- @name $1
|
||||
-- @return
|
||||
`!p
|
||||
snip.rv = ""
|
||||
if t[2].startswith("l"):
|
||||
parameters = []
|
||||
else:
|
||||
parameters = t[2].replace("\n", "").split(";");
|
||||
for parameter in parameters:
|
||||
if not parameter == "" and not parameter.startswith("typ"):
|
||||
paramless = parameter.replace("\t", "")
|
||||
snip.rv += f"-- @variable {paramless}\n"
|
||||
`-- @description $3
|
||||
procedure ${1:Name} is
|
||||
$2
|
||||
begin
|
||||
$4
|
||||
end $1;$0
|
||||
endsnippet
|
||||
|
||||
snippet function "insert function" bA
|
||||
-- @name $1
|
||||
-- @return $3
|
||||
-- @param $2
|
||||
`!p
|
||||
snip.rv = ""
|
||||
if t[4].startswith("l"):
|
||||
parameters = []
|
||||
else:
|
||||
parameters = t[4].replace("\n", "").split(";")
|
||||
for parameter in parameters:
|
||||
if not parameter.startswith("typ") and not parameter == "":
|
||||
paramless = parameter.replace("\t", "")
|
||||
snip.rv += f"-- @variable {paramless}\n"
|
||||
`-- @description $5
|
||||
function ${1:Name}($2`!p if (t[2] == ""):
|
||||
t[2] = "a, b: Integer"`) return ${3:Integer} is
|
||||
$4
|
||||
begin
|
||||
$7
|
||||
return ${6:`!p snip.rv = t[3]`};
|
||||
end $1;$0
|
||||
endsnippet
|
||||
|
||||
global !p
|
||||
def complete(t, opts):
|
||||
if t:
|
||||
opts = [ m[len(t):] for m in opts if m.startswith(t) ]
|
||||
if len(opts) == 1:
|
||||
return opts[0]
|
||||
if len(opts) > 5:
|
||||
opts = opts[0:5]
|
||||
return "(" + "|".join(opts) + ")"
|
||||
endglobal
|
||||
|
||||
snippet if "If condition" bA
|
||||
if $1 then
|
||||
$2
|
||||
$3`!p snip.rv = complete(t[3], ["elsif", "else", "end if;"])` ${4:`!p if t[3] == "elsif":
|
||||
snip.rv = "condition"
|
||||
else:
|
||||
snip.rv = ""`} `!p
|
||||
if t[3] == "elsif":
|
||||
snip.rv = "then"`
|
||||
$5
|
||||
`!p if t[3] == "end if;":
|
||||
snip.rv = ""
|
||||
else:
|
||||
snip.rv = "end if;"`$0
|
||||
endsnippet
|
||||
|
||||
snippet for "For loop" bA
|
||||
for ${1:i} in ${2:1}..${3:10} loop
|
||||
$4
|
||||
end loop;$0
|
||||
endsnippet
|
||||
|
||||
snippet while "While loop" bA
|
||||
while ${1:Condition} loop
|
||||
$2
|
||||
end loop;$0
|
||||
endsnippet
|
||||
|
||||
snippet let "Create new Variable" bA
|
||||
${1:letName}`!p if not t[1].startswith("let"):
|
||||
t[1] = t[1].capitalize()``!p snip.rv = "\t:\t"`${2}`!p if t[2].startswith("!"):
|
||||
snip.rv = ""
|
||||
else:
|
||||
snip.rv = complete(t[2], ["Integer", "Boolean", "Float", "Natural", "Positive", "Negative", "Long_Float", "String"])
|
||||
``!p if t[3] == "":
|
||||
snip.rv = ""
|
||||
else:
|
||||
snip.rv = " := "
|
||||
`$3;
|
||||
endsnippet
|
||||
|
||||
snippet type "declare a new type" bA
|
||||
type ${1:TypeName} is ${2:array($3..$4)} of ${5:Integer};$0
|
||||
endsnippet
|
|
@ -33,8 +33,8 @@ function Liten()
|
|||
set spell spelllang=en_us
|
||||
endfunction
|
||||
|
||||
nnoremap <C-e> :call Liten()<CR>
|
||||
nnoremap <C-g> :call Litde()<CR>
|
||||
nnoremap <M-e> :call Liten()<CR>
|
||||
nnoremap <M-g> :call Litde()<CR>
|
||||
|
||||
" Theme
|
||||
nnoremap <M-+> :colo github_light_high_contrast<CR>
|
||||
|
|
Loading…
Reference in New Issue