60 lines
1.6 KiB
Lua
60 lines
1.6 KiB
Lua
return {
|
|
--[[ =====================================================================
|
|
TEMPLATE: MAIN (Entrypoint)
|
|
File: main.py
|
|
Target: src/{project_name}/main.py
|
|
===================================================================== --]]
|
|
main = vim.trim([=[
|
|
def main() -> None:
|
|
print("Hello from %s!")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|
|
]=]) .. "\n",
|
|
|
|
--[[ =====================================================================
|
|
TEMPLATE: INIT (Package Anchor)
|
|
File: __init__.py
|
|
Target: src/{project_name}/__init__.py
|
|
===================================================================== --]]
|
|
__init__ = vim.trim([=[
|
|
# %s init
|
|
|
|
__all__: list[str] = []
|
|
]=]) .. "\n",
|
|
|
|
--[[ =====================================================================
|
|
TEMPLATE: PYPROJECT (Spec / Build Manifest)
|
|
File: pyproject.toml
|
|
Target: pyproject.toml
|
|
===================================================================== --]]
|
|
pyproject = vim.trim([=[
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "%s"
|
|
version = "0.1.0"
|
|
description = "Project %s"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
dependencies = []
|
|
|
|
[project.scripts]
|
|
%s = "%s.main:main"
|
|
]=]) .. "\n",
|
|
|
|
--[[ =====================================================================
|
|
TEMPLATE: MODULE (Standalone File)
|
|
File: {name}.py
|
|
Target: src/{project_name}/{name}.py
|
|
===================================================================== --]]
|
|
module = vim.trim([=[
|
|
"""
|
|
Module: %s
|
|
"""
|
|
]=]) .. "\n",
|
|
}
|