Files
nvim/UltiSnips/python.snippets
Nina Chlóe Kassandra Reiß 4acae3052a
Some checks failed
Test Neovim config on push / build (ubuntu-20.04) (push) Has been cancelled
Class and shebang snippet for python
2026-06-02 20:17:51 +02:00

83 lines
1.6 KiB
Plaintext

snippet helloworld "Hello world example" b
"""
File: `!p snip.rv = fn`
Author: Nina Chloe Kassandra Reiß <nina.reiss@nickr.eu>
Created on: `date`
Description: Hello world python example
"""
if __name__ == "__main__":
print("Hello world!")
$0
endsnippet
snippet docmodule "Documentation for modules"
"""
File: `!p snip.rv = fn`
Author: ${1:Nina Chloe Kassandra Reiß <nina.reiss@nickr.eu>}
Created on: `date`
Description: ${2:No further description}
"""
$0
endsnippet
snippet def "Python Function"
def ${1:function}(${2}):
"""
@name $1
@brief ${3:function description}
Args:
`!p
params = t[2].replace(", ", ",").split(",")
snip.rv = ""
for param in params:
snip.rv += f"\t\t@param {param}\n"
`
Returns:
@return $4
"""
$5
`!p
if t[4] != "" and len(t[4].split(":")) > 1:
snip.rv = f"return {t[4].split(':')[0]}"`
$0
endsnippet
snippet class "Python class description" b
class ${1:`!p snip.rv = fn.split('.')[0]`}`!p
if t[2] != "":
snip.rv = " ("
else:
snip.rv = ""`${2:object}`!p
if t[2] == "":
snip.rv = ""
else:
snip.rv = ")"`:
"""
${3:Description of module $1.}
"""
def __init__(${4:self}`!p
if not t[4].startswith("self"):
t[4] = f"self, {t[4]}"
t[4] = t[4].replace(' ', '')
t[4] = t[4].replace(':', ': ')
t[4] = t[4].replace(',', ', ')`):
"""`!p
parameters: list = t[4].split(", ")
snip.rv = "\n"
for parameter in parameters:
parameter_meta = parameter.split(": ")
if len(parameter_meta) == 1:
snip.rv += f"\t\tnotype:\t{parameter_meta[0]}\n"
else:
snip.rv += f"\t\t{parameter_meta[0]}:\t{parameter_meta[1]}\n"`
"""
endsnippet
snippet #! "Environment Shebang" b
#!/usr/bin/env bash
$0
endsnippet