vim-eof-comment 0.1.11__tar.gz → 0.3.18__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. vim_eof_comment-0.3.18/.flake8 +23 -0
  2. vim_eof_comment-0.3.18/.gitattributes +1 -0
  3. vim_eof_comment-0.3.18/.github/CODEOWNERS +1 -0
  4. vim_eof_comment-0.3.18/.github/workflows/flake8-lint.yml +40 -0
  5. vim_eof_comment-0.3.18/.github/workflows/mypy-lint.yml +37 -0
  6. vim_eof_comment-0.3.18/.github/workflows/release.yml +103 -0
  7. vim_eof_comment-0.3.18/.github/workflows/vim-eof-comment.yml +40 -0
  8. vim_eof_comment-0.3.18/.pre-commit-config.yaml +36 -0
  9. vim_eof_comment-0.3.18/Makefile +86 -0
  10. vim_eof_comment-0.3.18/PKG-INFO +91 -0
  11. vim_eof_comment-0.3.18/Pipfile +44 -0
  12. vim_eof_comment-0.3.18/README.md +55 -0
  13. vim_eof_comment-0.3.18/docs/Makefile +22 -0
  14. vim_eof_comment-0.3.18/docs/make.bat +35 -0
  15. vim_eof_comment-0.3.18/docs/source/conf.py +56 -0
  16. vim_eof_comment-0.3.18/docs/source/functions.rst +2 -0
  17. vim_eof_comment-0.3.18/docs/source/index.rst +22 -0
  18. vim_eof_comment-0.3.18/docs/source/installation.rst +14 -0
  19. vim_eof_comment-0.3.18/pyproject.toml +127 -0
  20. vim_eof_comment-0.3.18/requirements.txt +12 -0
  21. vim_eof_comment-0.3.18/taplo.toml +16 -0
  22. vim_eof_comment-0.3.18/version.txt +1 -0
  23. vim_eof_comment-0.3.18/vim_eof_comment/__init__.py +25 -0
  24. vim_eof_comment-0.3.18/vim_eof_comment/__init__.pyi +16 -0
  25. vim_eof_comment-0.3.18/vim_eof_comment/__main__.py +16 -0
  26. vim_eof_comment-0.3.18/vim_eof_comment/args/__init__.py +12 -0
  27. vim_eof_comment-0.3.18/vim_eof_comment/args/__init__.pyi +6 -0
  28. vim_eof_comment-0.3.18/vim_eof_comment/args/completion.py +48 -0
  29. vim_eof_comment-0.3.18/vim_eof_comment/args/completion.pyi +18 -0
  30. vim_eof_comment-0.3.18/vim_eof_comment/args/parsing.py +227 -0
  31. vim_eof_comment-0.3.18/vim_eof_comment/args/parsing.pyi +68 -0
  32. {vim_eof_comment-0.1.11/vim_eof_comment → vim_eof_comment-0.3.18/vim_eof_comment/comments}/__init__.py +6 -2
  33. vim_eof_comment-0.3.18/vim_eof_comment/comments/__init__.pyi +5 -0
  34. vim_eof_comment-0.3.18/vim_eof_comment/comments/filetypes.json +1 -0
  35. vim_eof_comment-0.3.18/vim_eof_comment/comments/generator.py +282 -0
  36. vim_eof_comment-0.3.18/vim_eof_comment/comments/generator.pyi +121 -0
  37. vim_eof_comment-0.3.18/vim_eof_comment/eof.py +176 -0
  38. vim_eof_comment-0.3.18/vim_eof_comment/eof.pyi +58 -0
  39. vim_eof_comment-0.3.18/vim_eof_comment/file.py +160 -0
  40. vim_eof_comment-0.3.18/vim_eof_comment/file.pyi +72 -0
  41. vim_eof_comment-0.3.18/vim_eof_comment/regex.py +41 -0
  42. vim_eof_comment-0.3.18/vim_eof_comment/regex.pyi +20 -0
  43. vim_eof_comment-0.3.18/vim_eof_comment/types.py +192 -0
  44. vim_eof_comment-0.3.18/vim_eof_comment/types.pyi +157 -0
  45. vim_eof_comment-0.3.18/vim_eof_comment/util.py +160 -0
  46. vim_eof_comment-0.3.18/vim_eof_comment/util.pyi +100 -0
  47. vim_eof_comment-0.3.18/vim_eof_comment/version.py +249 -0
  48. vim_eof_comment-0.3.18/vim_eof_comment/version.pyi +144 -0
  49. vim_eof_comment-0.3.18/vim_eof_comment.egg-info/PKG-INFO +91 -0
  50. vim_eof_comment-0.3.18/vim_eof_comment.egg-info/SOURCES.txt +55 -0
  51. {vim_eof_comment-0.1.11 → vim_eof_comment-0.3.18}/vim_eof_comment.egg-info/requires.txt +3 -3
  52. {vim_eof_comment-0.1.11 → vim_eof_comment-0.3.18}/vim_eof_comment.egg-info/top_level.txt +2 -0
  53. vim_eof_comment-0.1.11/PKG-INFO +0 -68
  54. vim_eof_comment-0.1.11/README.md +0 -39
  55. vim_eof_comment-0.1.11/pyproject.toml +0 -43
  56. vim_eof_comment-0.1.11/vim_eof_comment/args/__init__.py +0 -7
  57. vim_eof_comment-0.1.11/vim_eof_comment/args/__init__.pyi +0 -0
  58. vim_eof_comment-0.1.11/vim_eof_comment/args/color.py +0 -103
  59. vim_eof_comment-0.1.11/vim_eof_comment/args/color.pyi +0 -9
  60. vim_eof_comment-0.1.11/vim_eof_comment/args/parsing.py +0 -62
  61. vim_eof_comment-0.1.11/vim_eof_comment/args/parsing.pyi +0 -7
  62. vim_eof_comment-0.1.11/vim_eof_comment/comments.py +0 -130
  63. vim_eof_comment-0.1.11/vim_eof_comment/comments.pyi +0 -14
  64. vim_eof_comment-0.1.11/vim_eof_comment/eof.py +0 -80
  65. vim_eof_comment-0.1.11/vim_eof_comment/eof.pyi +0 -14
  66. vim_eof_comment-0.1.11/vim_eof_comment/file.py +0 -58
  67. vim_eof_comment-0.1.11/vim_eof_comment/file.pyi +0 -9
  68. vim_eof_comment-0.1.11/vim_eof_comment/util.py +0 -70
  69. vim_eof_comment-0.1.11/vim_eof_comment/util.pyi +0 -4
  70. vim_eof_comment-0.1.11/vim_eof_comment.egg-info/PKG-INFO +0 -68
  71. vim_eof_comment-0.1.11/vim_eof_comment.egg-info/SOURCES.txt +0 -25
  72. {vim_eof_comment-0.1.11 → vim_eof_comment-0.3.18}/LICENSE +0 -0
  73. {vim_eof_comment-0.1.11 → vim_eof_comment-0.3.18}/setup.cfg +0 -0
  74. /vim_eof_comment-0.1.11/vim_eof_comment/__init__.pyi → /vim_eof_comment-0.3.18/vim_eof_comment/py.typed +0 -0
  75. {vim_eof_comment-0.1.11 → vim_eof_comment-0.3.18}/vim_eof_comment.egg-info/dependency_links.txt +0 -0
  76. {vim_eof_comment-0.1.11 → vim_eof_comment-0.3.18}/vim_eof_comment.egg-info/entry_points.txt +0 -0
@@ -0,0 +1,23 @@
1
+ [flake8]
2
+ exclude =
3
+ *.pyc,
4
+ *.pyi,
5
+ *migrations*,
6
+ *staticfiles*,
7
+ .git,
8
+ .tox
9
+ .venv,
10
+ __pycache__,
11
+ build,
12
+ docs,
13
+ locale,
14
+ test_*.py
15
+ tools,
16
+ venv,
17
+ max-line-length = 100
18
+ show-source = True
19
+ statistics = True
20
+ count = True
21
+ import-order-style = pep8
22
+ per-file-ignores =
23
+ __init__.py: F401
@@ -0,0 +1 @@
1
+ .gitignore export-ignore
@@ -0,0 +1 @@
1
+ * @DrKJeff16
@@ -0,0 +1,40 @@
1
+ name: Lint with flake8
2
+ on:
3
+ push:
4
+ paths:
5
+ - .github/workflows/flake8-lint.yml
6
+ - vim_eof_comment/*.py
7
+ - vim_eof_comment/args/*.py
8
+ - vim_eof_comment/comments/*.py
9
+ - vim_eof_comment/types/*.py
10
+ branches:
11
+ - main
12
+ pull_request:
13
+ paths:
14
+ - .github/workflows/flake8-lint.yml
15
+ - vim_eof_comment/*.py
16
+ - vim_eof_comment/args/*.py
17
+ - vim_eof_comment/comments/*.py
18
+ - vim_eof_comment/types/*.py
19
+ branches:
20
+ - main
21
+ jobs:
22
+ flake8-lint:
23
+ runs-on: ubuntu-latest
24
+ name: Lint with flake8
25
+ steps:
26
+ - name: Checkout
27
+ uses: actions/checkout@v6
28
+ - name: Set up Python environment
29
+ uses: actions/setup-python@v6.1.0
30
+ with:
31
+ python-version: "3.10"
32
+ architecture: x64
33
+ - name: flake8 Lint
34
+ uses: py-actions/flake8@v2.3.0
35
+ with:
36
+ ignore: "D401"
37
+ max-line-length: "100"
38
+ path: "vim_eof_comment"
39
+ plugins: "flake8-pyi"
40
+ exclude: ".tox,.git,*staticfiles*,build,locale,docs,tools,venv,.venv,*migrations*,*.pyc,*.pyi,__pycache__,test_*.py"
@@ -0,0 +1,37 @@
1
+ name: Lint with mypy
2
+ on:
3
+ push:
4
+ paths:
5
+ - "*.py"
6
+ - "*.pyi"
7
+ - .github/workflows/mypy-lint.yml
8
+ branches:
9
+ - main
10
+ pull_request:
11
+ paths:
12
+ - "*.py"
13
+ - "*.pyi"
14
+ - .github/workflows/mypy-lint.yml
15
+ branches:
16
+ - main
17
+ jobs:
18
+ mypy-lint:
19
+ runs-on: ubuntu-latest
20
+ name: Lint with mypy
21
+ steps:
22
+ - name: Checkout
23
+ uses: actions/checkout@v6
24
+ - name: Set up Python environment
25
+ uses: actions/setup-python@v6.1.0
26
+ with:
27
+ python-version: "3.10"
28
+ architecture: x64
29
+ - name: Install mypy
30
+ run: |
31
+ pip install -U mypy mypy-extensions typing typing-extensions
32
+ - name: Run mypy
33
+ uses: sasanquaneuf/mypy-github-action@main
34
+ with:
35
+ checkName: mypy-lint # NOTE: this needs to be the same as the job name
36
+ env:
37
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,103 @@
1
+ name: Action Release
2
+ on:
3
+ push:
4
+ tags:
5
+ - "*.*.*"
6
+ merge_group:
7
+ branches:
8
+ - main
9
+ release:
10
+ types:
11
+ - created
12
+ jobs:
13
+ release:
14
+ permissions:
15
+ contents: write
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - name: Checkout
19
+ uses: actions/checkout@v6
20
+ - name: Build Project Assets
21
+ run: |
22
+ mkdir -pv vim-eof-comment
23
+ cp -rv vim_eof_comment README.md LICENSE Makefile vim-eof-comment
24
+ zip -r -9 vim-eof-comment.zip vim-eof-comment
25
+ tar cvJf vim-eof-comment.tar.xz vim-eof-comment
26
+ tar cvzf vim-eof-comment.tar.gz vim-eof-comment
27
+ sha512sum vim-eof-comment.zip vim-eof-comment.tar.gz vim-eof-comment.tar.xz >| sha512sums.txt
28
+ md5sum vim-eof-comment.zip vim-eof-comment.tar.gz vim-eof-comment.tar.xz >| md5sums.txt
29
+ rm -rfv vim-eof-comment
30
+ - name: Get Release
31
+ uses: joutvhu/get-release@v1.0.3
32
+ with:
33
+ latest: true
34
+ prerelease: true
35
+ pattern: '^.*'
36
+ debug: true
37
+ throwing: true
38
+ env:
39
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
40
+ - name: Build Release File
41
+ run: |
42
+ echo ${{ github.sha }} | tee Release.txt
43
+ - name: Release
44
+ uses: softprops/action-gh-release@v2.5.0
45
+ with:
46
+ files: |
47
+ Release.txt
48
+ vim-eof-comment.tar.xz
49
+ vim-eof-comment.tar.gz
50
+ vim-eof-comment.zip
51
+ md5sums.txt
52
+ sha512sums.txt
53
+ token: ${{ secrets.GITHUB_TOKEN }}
54
+ release-build:
55
+ permissions:
56
+ contents: read
57
+ needs:
58
+ - release
59
+ runs-on: ubuntu-latest
60
+ steps:
61
+ - name: Checkout
62
+ uses: actions/checkout@v6
63
+ - name: Setup Python
64
+ uses: actions/setup-python@v5
65
+ with:
66
+ python-version: "3.10"
67
+ - name: Build Release Distributions
68
+ run: |
69
+ # NOTE: put your own distribution build steps here.
70
+ python -m pip install -U setuptools argparse typing typing-extensions build
71
+ python -m build
72
+ - name: Upload Distributions
73
+ uses: actions/upload-artifact@v6
74
+ with:
75
+ name: release-dists
76
+ path: dist/
77
+ pypi-publish:
78
+ runs-on: ubuntu-latest
79
+ needs:
80
+ - release-build
81
+ permissions:
82
+ # IMPORTANT: this permission is mandatory for trusted publishing
83
+ id-token: write
84
+ # Dedicated environments with protections for publishing are strongly recommended.
85
+ # For more information, see: https://docs.github.com/en/actions/deployment/targeting-different-environments/using-environments-for-deployment#deployment-protection-rules
86
+ environment:
87
+ name: pypi
88
+ # OPTIONAL: uncomment and update to include your PyPI project URL in the deployment status:
89
+ # url: https://pypi.org/p/vim-eof-comment
90
+ #
91
+ # ALTERNATIVE: if your GitHub Release name is the PyPI project version string
92
+ # ALTERNATIVE: exactly, uncomment the following line instead:
93
+ url: https://pypi.org/p/vim-eof-comment/${{ github.event.release.name }}
94
+ steps:
95
+ - name: Retrieve Release Distributions
96
+ uses: actions/download-artifact@v7
97
+ with:
98
+ name: release-dists
99
+ path: dist/
100
+ - name: Publish release distributions to PyPI
101
+ uses: pypa/gh-action-pypi-publish@v1.13.0
102
+ with:
103
+ packages-dir: dist/
@@ -0,0 +1,40 @@
1
+ # GitHub Actions example
2
+ name: Run vim-eof-comment
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+ types:
9
+ - opened
10
+ branches:
11
+ - main
12
+ jobs:
13
+ vim_eof_comment:
14
+ name: vim-eof-comment
15
+ runs-on: ubuntu-latest
16
+ permissions:
17
+ contents: write
18
+ steps:
19
+ - name: Checkout
20
+ uses: actions/checkout@v6
21
+ - name: Set up Python
22
+ uses: actions/setup-python@v6.1.0
23
+ with:
24
+ python-version: '3.13'
25
+ - name: Install pipenv
26
+ run: |
27
+ python -m pip install -U pip
28
+ pip install pipenv
29
+ - name: Install vim-eof-comment
30
+ run: |
31
+ pipenv install --dev vim-eof-comment
32
+ - name: Run vim-eof-comment
33
+ run: |
34
+ pipenv run vim-eof-comment -e py,pyi,md,Makefile,yaml,toml -i py:4:Y,pyi:4:Y,md:2:Y -nv .
35
+ - name: Auto Commit Changes
36
+ uses: stefanzweifel/git-auto-commit-action@v7.1.0
37
+ with:
38
+ commit_message: "chore: format files with `vim-eof-comment`"
39
+ commit_options: "--signoff"
40
+ branch: ${{ github.head_ref }}
@@ -0,0 +1,36 @@
1
+ repos:
2
+ - repo: https://github.com/pycqa/isort
3
+ rev: 7.0.0
4
+ hooks:
5
+ - id: isort
6
+ verbose: true
7
+ - repo: https://github.com/pre-commit/pre-commit-hooks
8
+ rev: v6.0.0
9
+ hooks:
10
+ - id: end-of-file-fixer
11
+ verbose: true
12
+ - repo: https://github.com/Lucas-C/pre-commit-hooks
13
+ rev: v1.5.5
14
+ hooks:
15
+ - id: remove-crlf
16
+ verbose: true
17
+ - id: forbid-crlf # Forbid files containing CRLF end-lines to be committed
18
+ verbose: true
19
+ - repo: local
20
+ hooks:
21
+ - id: lint
22
+ name: Lint Script
23
+ language: system
24
+ types: [python]
25
+ files: ^(vim_eof_comment/.*\.pyi?|Makefile)$
26
+ entry: make lint
27
+ verbose: true
28
+ - id: run_script
29
+ name: Install and Run Script Locally
30
+ language: system
31
+ types: [python]
32
+ files: ^(vim_eof_comment/.*\.py|Makefile)$
33
+ entry: make run-script
34
+ verbose: true
35
+
36
+ # vim: set ts=2 sts=2 sw=2 et ai si sta:
@@ -0,0 +1,86 @@
1
+ .PHONY: all help lint build local-install upload clean sign run-script docs
2
+
3
+ all:
4
+ @$(MAKE) clean
5
+ @$(MAKE) local-install
6
+ @$(MAKE) run-script
7
+
8
+ clean:
9
+ @echo "Cleaning..."
10
+ @rm -rf build dist *.egg-info
11
+ @echo -e "\nDone!"
12
+
13
+ distclean: clean
14
+ @echo "Cleaning Everything..."
15
+ @rm -rf .mypy_cache .ropeproject .pytest_cache
16
+ @echo -e "\nDone!"
17
+
18
+ docs:
19
+ @echo -e "Generating docs...\n"
20
+ @$(MAKE) -C docs html
21
+ @echo -e "\nDone!"
22
+
23
+ help:
24
+ @echo -e "\nAvailable targets:"
25
+ @echo " build"
26
+ @echo " clean"
27
+ @echo " distclean"
28
+ @echo " docs"
29
+ @echo " help"
30
+ @echo " lint"
31
+ @echo " local-install"
32
+ @echo " run-script"
33
+ @echo " sign"
34
+ @echo " stubs"
35
+ @echo " upload"
36
+ @echo
37
+
38
+ lint:
39
+ @echo -e "Linting...\n"
40
+ @flake8 --statistics --show-source --color=always --max-line-length=100 --ignore=D401 \
41
+ --per-file-ignores=__init__.py:F401 \
42
+ --exclude .tox,.git,*staticfiles*,build,locale,docs,tools,venv,.venv,*migrations*,*.pyc,*.pyi,__pycache__,test_*.py \
43
+ vim_eof_comment
44
+ @pydocstyle --convention=numpy --match='.*\.py' vim_eof_comment
45
+ @autopep8 --aggressive --aggressive --aggressive --in-place --recursive vim_eof_comment
46
+ $(eval files := $(shell fd --full-path vim_eof_comment -e py))
47
+ @numpydoc lint $(files)
48
+ @echo -e "\nDone!"
49
+
50
+ stubs: lint
51
+ @echo -e "Generating stubs...\n"
52
+ @stubgen --include-docstrings --include-private -v -p vim_eof_comment -o .
53
+ @echo -e "\nDone!"
54
+ @echo -e "\nRunning isort...\n"
55
+ @isort vim_eof_comment
56
+ @echo -e "\nDone!"
57
+ @echo -e "\nLinting with mypy...\n"
58
+ @mypy vim_eof_comment
59
+ @echo -e "\nDone!"
60
+
61
+ build: stubs
62
+ @echo -e "Building...\n"
63
+ @python3 -m build
64
+ @echo -e "\nDone!"
65
+
66
+ sign: build
67
+ @echo -e "Signing build...\n"
68
+ @pypi-attestations sign dist/*
69
+ @echo -e "\nDone!"
70
+
71
+ local-install: build
72
+ @echo -e "Installing locally...\n"
73
+ @python3 -m pip install .
74
+ @echo -e "\nDone!"
75
+
76
+ run-script:
77
+ @echo -e "Running vim-eof-comment...\n"
78
+ @vim-eof-comment -e py,pyi,Makefile -n -v .
79
+ @echo -e "\nDone!"
80
+
81
+ upload: sign
82
+ @echo -e "Uploading to PyPI...\n"
83
+ @twine upload dist/*
84
+ @echo -e "\nDone!"
85
+
86
+ # vim: set ts=4 sts=4 sw=0 noet ai si sta:
@@ -0,0 +1,91 @@
1
+ Metadata-Version: 2.4
2
+ Name: vim-eof-comment
3
+ Version: 0.3.18
4
+ Summary: Adds Vim EOF modeline comments for given filetypes in given directories
5
+ Author-email: Guennadi Maximov C <g.maxc.fox@protonmail.com>
6
+ Maintainer-email: Guennadi Maximov C <g.maxc.fox@protonmail.com>
7
+ License-Expression: GPL-2.0-only
8
+ Project-URL: Download, https://github.com/DrKJeff16/vim-eof-comment/releases/latest
9
+ Project-URL: Issues, https://github.com/DrKJeff16/vim-eof-comment/issues
10
+ Project-URL: Repository, https://github.com/DrKJeff16/vim-eof-comment
11
+ Keywords: eof comments,eof,files,preprocessing,text,vim modeline,vim,vim-eof
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Environment :: Console
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Intended Audience :: End Users/Desktop
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3 :: Only
18
+ Classifier: Programming Language :: Python :: 3
19
+ Classifier: Programming Language :: Python :: 3.10
20
+ Classifier: Programming Language :: Python :: 3.11
21
+ Classifier: Programming Language :: Python :: 3.12
22
+ Classifier: Programming Language :: Python :: 3.13
23
+ Classifier: Programming Language :: Python
24
+ Classifier: Topic :: Text Processing :: Filters
25
+ Classifier: Topic :: Utilities
26
+ Classifier: Typing :: Typed
27
+ Requires-Python: >=3.10
28
+ Description-Content-Type: text/markdown
29
+ License-File: LICENSE
30
+ Requires-Dist: argcomplete
31
+ Requires-Dist: argparse
32
+ Requires-Dist: colorama
33
+ Requires-Dist: setuptools
34
+ Requires-Dist: wheel
35
+ Dynamic: license-file
36
+
37
+ # vim-eof-comment
38
+
39
+ ![GitHub Repo stars](https://img.shields.io/github/stars/DrKJeff16/vim-eof-comment?style=flat-square)![GitHub Release](https://img.shields.io/github/v/release/DrKJeff16/vim-eof-comment?include_prereleases&sort=semver&display_name=release&style=flat-square)
40
+
41
+ [PyPI Package][pypi] | [Source Code][source]
42
+
43
+ Ensure Vim EOF comments in given files.
44
+
45
+ ---
46
+
47
+ ## About
48
+
49
+ This tool adds a [Vim modeline comment](https://neovim.io/doc/user/options.html#_2.-automatically-setting-options) at the end of the target files.
50
+
51
+ ---
52
+
53
+ ## Install
54
+
55
+ ```bash
56
+ pip install vim-eof-comment
57
+ ```
58
+
59
+ ---
60
+
61
+ ## Usage
62
+
63
+ General usage is as follows:
64
+
65
+ ```bash
66
+ vim-eof-comment [-h] [-v] [-V] -e EXT1[,EXT2[,EXT3[,...]]] [-i EXT1:INDENT[:Y/N][,...]] [-n] dir1 [dir2 [...]]
67
+ ```
68
+
69
+ You can also call it as a module:
70
+
71
+ ```bash
72
+ python -m vim_eof_comment [-h] [-v] [-V] -e EXT1[,EXT2[,EXT3[,...]]] [-i EXT1:INDENT[:Y/N][,...]] [-n] dir1 [dir2 [...]]
73
+ ```
74
+
75
+ ### Example
76
+
77
+ ```bash
78
+ vim-eof-comment -e py,md,lua .
79
+ ```
80
+
81
+ ---
82
+
83
+ ## License
84
+
85
+ [GNU GPL-v2.0][license]
86
+
87
+ [license]: https://github.com/DrKJeff16/vim_eof_comment/blob/main/LICENSE
88
+ [pypi]: https://pypi.org/project/vim-eof-comment/
89
+ [source]: https://github.com/DrKJeff16/vim_eof_comment
90
+
91
+ <!-- vim: set ts=2 sts=2 sw=2 et ai si sta: -->
@@ -0,0 +1,44 @@
1
+ [[source]]
2
+ url = "https://pypi.org/simple"
3
+ verify_ssl = true
4
+ name = "pypi"
5
+
6
+ [packages]
7
+ setuptools = "*"
8
+ wheel = "*"
9
+ argparse = "*"
10
+ pyproject = "*"
11
+ colorama = "*"
12
+ argcomplete = "*"
13
+ pynvim = "*"
14
+
15
+ [dev-packages]
16
+ pynvim = "*"
17
+ build = "*"
18
+ pip = "*"
19
+ pyproject = "*"
20
+ twine = "*"
21
+ pypi-attestations = "*"
22
+ pre-commit = "*"
23
+ flake8 = "*"
24
+ flake8-pyi = "*"
25
+ mypy = "*"
26
+ mypy-extensions = "*"
27
+ furo = "*"
28
+ sphinx-rtd-theme = "*"
29
+ renku-sphinx-theme = "*"
30
+ sphinxawesome-theme = "*"
31
+ numpydoc = "*"
32
+ vim-eof-comment = "*"
33
+
34
+ [scripts]
35
+ lint = "flake8 --statistics --show-source --color always --max-line-length 100 --docstring-convention numpy --ignore=D401 ."
36
+ build = "python3 -m build"
37
+ upload = "twine upload dist/*"
38
+ sign = "pypi-attestations sign dist/*"
39
+ local-install = "python3 -m pip install ."
40
+ install = "python3 -m pip install"
41
+ stubs = "stubgen -p vim_eof_comment -o ."
42
+
43
+ [requires]
44
+ python_version = "3.13"
@@ -0,0 +1,55 @@
1
+ # vim-eof-comment
2
+
3
+ ![GitHub Repo stars](https://img.shields.io/github/stars/DrKJeff16/vim-eof-comment?style=flat-square)![GitHub Release](https://img.shields.io/github/v/release/DrKJeff16/vim-eof-comment?include_prereleases&sort=semver&display_name=release&style=flat-square)
4
+
5
+ [PyPI Package][pypi] | [Source Code][source]
6
+
7
+ Ensure Vim EOF comments in given files.
8
+
9
+ ---
10
+
11
+ ## About
12
+
13
+ This tool adds a [Vim modeline comment](https://neovim.io/doc/user/options.html#_2.-automatically-setting-options) at the end of the target files.
14
+
15
+ ---
16
+
17
+ ## Install
18
+
19
+ ```bash
20
+ pip install vim-eof-comment
21
+ ```
22
+
23
+ ---
24
+
25
+ ## Usage
26
+
27
+ General usage is as follows:
28
+
29
+ ```bash
30
+ vim-eof-comment [-h] [-v] [-V] -e EXT1[,EXT2[,EXT3[,...]]] [-i EXT1:INDENT[:Y/N][,...]] [-n] dir1 [dir2 [...]]
31
+ ```
32
+
33
+ You can also call it as a module:
34
+
35
+ ```bash
36
+ python -m vim_eof_comment [-h] [-v] [-V] -e EXT1[,EXT2[,EXT3[,...]]] [-i EXT1:INDENT[:Y/N][,...]] [-n] dir1 [dir2 [...]]
37
+ ```
38
+
39
+ ### Example
40
+
41
+ ```bash
42
+ vim-eof-comment -e py,md,lua .
43
+ ```
44
+
45
+ ---
46
+
47
+ ## License
48
+
49
+ [GNU GPL-v2.0][license]
50
+
51
+ [license]: https://github.com/DrKJeff16/vim_eof_comment/blob/main/LICENSE
52
+ [pypi]: https://pypi.org/project/vim-eof-comment/
53
+ [source]: https://github.com/DrKJeff16/vim_eof_comment
54
+
55
+ <!-- vim: set ts=2 sts=2 sw=2 et ai si sta: -->
@@ -0,0 +1,22 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR := source
9
+ BUILDDIR := build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Catch-all target: route all unknown targets to Sphinx using the new
18
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19
+ %: Makefile
20
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
21
+
22
+ # vim: set ts=4 sts=4 sw=0 noet ai si sta:
@@ -0,0 +1,35 @@
1
+ @ECHO OFF
2
+
3
+ pushd %~dp0
4
+
5
+ REM Command file for Sphinx documentation
6
+
7
+ if "%SPHINXBUILD%" == "" (
8
+ set SPHINXBUILD=sphinx-build
9
+ )
10
+ set SOURCEDIR=source
11
+ set BUILDDIR=build
12
+
13
+ %SPHINXBUILD% >NUL 2>NUL
14
+ if errorlevel 9009 (
15
+ echo.
16
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
17
+ echo.installed, then set the SPHINXBUILD environment variable to point
18
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
19
+ echo.may add the Sphinx directory to PATH.
20
+ echo.
21
+ echo.If you don't have Sphinx installed, grab it from
22
+ echo.https://www.sphinx-doc.org/
23
+ exit /b 1
24
+ )
25
+
26
+ if "%1" == "" goto help
27
+
28
+ %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
29
+ goto end
30
+
31
+ :help
32
+ %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
33
+
34
+ :end
35
+ popd
@@ -0,0 +1,56 @@
1
+ # Configuration file for the Sphinx documentation builder.
2
+ #
3
+ # For the full list of built-in configuration values, see the documentation:
4
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html
5
+ """Runs configuration for building Sphinx documentation."""
6
+
7
+ import sys
8
+ from pathlib import Path
9
+ from typing import List
10
+
11
+ sys.path.insert(0, str(Path('..', 'src').resolve()))
12
+
13
+ # -- Project information -----------------------------------------------------
14
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
15
+
16
+ project: str = 'vim-eof-comment'
17
+ copyright: str = '2025, Guennadi Maximov C'
18
+ author: str = 'Guennadi Maximov C'
19
+ release: str = '0.1.33'
20
+
21
+ # -- General configuration ---------------------------------------------------
22
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
23
+
24
+ extensions: List[str] = [
25
+ 'numpydoc',
26
+ 'sphinx.ext.autodoc',
27
+ 'sphinx.ext.autosectionlabel',
28
+ 'sphinx.ext.autosummary',
29
+ 'sphinx.ext.duration',
30
+ ]
31
+
32
+ templates_path: List[str] = ['_templates']
33
+ exclude_patterns: List[str] = []
34
+
35
+ # -- Options for HTML output -------------------------------------------------
36
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
37
+
38
+ html_theme: str = 'sphinx_rtd_theme'
39
+ html_static_path: List[str] = ['_static']
40
+
41
+ # -- Options for numpydoc ----------------------------------------------------
42
+ numpydoc_xref_param_type = True
43
+ numpydoc_validation_checks = {
44
+ "all", # report on all checks, except the below
45
+ "ES01",
46
+ "EX01",
47
+ "SA01",
48
+ }
49
+ numpydoc_xref_aliases = {
50
+ 'TextIO': 'typing.TextIO',
51
+ 'List': 'list',
52
+ 'Dict': 'dict',
53
+ 'Tuple': 'tuple',
54
+ }
55
+
56
+ # vim: set ts=4 sts=4 sw=4 et ai si sta:
@@ -0,0 +1,2 @@
1
+ Functions
2
+ =========