vim-eof-comment 0.3.11__tar.gz → 0.3.13__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.
- vim_eof_comment-0.3.13/.github/workflows/vim-eof-comment.yml +40 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/Makefile +2 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/PKG-INFO +4 -1
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/Pipfile +1 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/docs/source/conf.py +17 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/docs/source/index.rst +1 -1
- vim_eof_comment-0.3.13/docs/source/installation.rst +14 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/pyproject.toml +5 -2
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/requirements.txt +4 -0
- vim_eof_comment-0.3.13/version.txt +1 -0
- vim_eof_comment-0.3.13/vim_eof_comment/args/completion.py +48 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/args/completion.pyi +1 -1
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/comments/generator.py +47 -5
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/eof.py +2 -2
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/regex.py +2 -2
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/regex.pyi +2 -2
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/types.py +80 -10
- vim_eof_comment-0.3.13/vim_eof_comment/types.pyi +157 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/util.py +1 -17
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/util.pyi +1 -14
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/version.py +18 -5
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/version.pyi +14 -3
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment.egg-info/PKG-INFO +4 -1
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment.egg-info/SOURCES.txt +3 -2
- vim_eof_comment-0.3.11/docs/source/usage.rst +0 -11
- vim_eof_comment-0.3.11/version.txt +0 -1
- vim_eof_comment-0.3.11/vim_eof_comment/args/completion.py +0 -30
- vim_eof_comment-0.3.11/vim_eof_comment/types.pyi +0 -87
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/.flake8 +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/.gitattributes +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/.github/CODEOWNERS +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/.github/workflows/flake8-lint.yml +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/.github/workflows/mypy-lint.yml +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/.github/workflows/release.yml +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/.pre-commit-config.yaml +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/LICENSE +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/README.md +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/docs/Makefile +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/docs/make.bat +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/docs/source/functions.rst +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/setup.cfg +0 -0
- /vim_eof_comment-0.3.11/.taplo.toml → /vim_eof_comment-0.3.13/taplo.toml +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/__init__.py +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/__init__.pyi +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/__main__.py +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/args/__init__.py +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/args/__init__.pyi +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/args/parsing.py +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/args/parsing.pyi +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/comments/__init__.py +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/comments/__init__.pyi +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/comments/filetypes.json +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/comments/generator.pyi +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/eof.pyi +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/file.py +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/file.pyi +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment/py.typed +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment.egg-info/dependency_links.txt +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment.egg-info/entry_points.txt +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment.egg-info/requires.txt +0 -0
- {vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment.egg-info/top_level.txt +0 -0
|
@@ -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.10'
|
|
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 lua,md,Makefile,yaml,toml -i lua:2:Y,md:2:Y -v .
|
|
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 }}
|
|
@@ -43,6 +43,8 @@ lint:
|
|
|
43
43
|
vim_eof_comment
|
|
44
44
|
@pydocstyle --convention=numpy --match='.*\.py' vim_eof_comment
|
|
45
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)
|
|
46
48
|
@echo -e "\nDone!"
|
|
47
49
|
|
|
48
50
|
stubs: lint
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vim-eof-comment
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.13
|
|
4
4
|
Summary: Adds Vim EOF comments for given filetypes in given directories
|
|
5
5
|
Author-email: Guennadi Maximov C <g.maxc.fox@protonmail.com>
|
|
6
6
|
Maintainer-email: Guennadi Maximov C <g.maxc.fox@protonmail.com>
|
|
7
7
|
License-Expression: GPL-2.0-only
|
|
8
8
|
Project-URL: Issues, https://github.com/DrKJeff16/vim-eof-comment/issues
|
|
9
9
|
Project-URL: Repository, https://github.com/DrKJeff16/vim-eof-comment
|
|
10
|
+
Project-URL: Download, https://github.com/DrKJeff16/vim-eof-comment/releases/latest
|
|
10
11
|
Keywords: eof comments,eof,files,preprocessing,text,vim modeline,vim,vim-eof
|
|
11
12
|
Classifier: Development Status :: 4 - Beta
|
|
12
13
|
Classifier: Environment :: Console
|
|
13
14
|
Classifier: Intended Audience :: Developers
|
|
14
15
|
Classifier: Intended Audience :: End Users/Desktop
|
|
15
16
|
Classifier: Operating System :: OS Independent
|
|
17
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
19
|
Classifier: Programming Language :: Python :: 3.10
|
|
17
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
18
21
|
Classifier: Programming Language :: Python :: 3.12
|
|
@@ -22,8 +22,10 @@ release: str = '0.1.33'
|
|
|
22
22
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
|
23
23
|
|
|
24
24
|
extensions: List[str] = [
|
|
25
|
+
'numpydoc',
|
|
25
26
|
'sphinx.ext.autodoc',
|
|
26
27
|
'sphinx.ext.autosectionlabel',
|
|
28
|
+
'sphinx.ext.autosummary',
|
|
27
29
|
'sphinx.ext.duration',
|
|
28
30
|
]
|
|
29
31
|
|
|
@@ -36,4 +38,19 @@ exclude_patterns: List[str] = []
|
|
|
36
38
|
html_theme: str = 'sphinx_rtd_theme'
|
|
37
39
|
html_static_path: List[str] = ['_static']
|
|
38
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
|
+
|
|
39
56
|
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Installation
|
|
2
|
+
============
|
|
3
|
+
|
|
4
|
+
To install *vim-eof-comment*, first install it using ``pip``:
|
|
5
|
+
|
|
6
|
+
.. code-block:: console
|
|
7
|
+
|
|
8
|
+
$ pip install -U vim-eof-comment
|
|
9
|
+
|
|
10
|
+
You may also use ``pipenv`` or any other virtual environment:
|
|
11
|
+
|
|
12
|
+
.. code-block:: console
|
|
13
|
+
|
|
14
|
+
$ pipenv install vim-eof-comment
|
|
@@ -10,6 +10,8 @@ classifiers = [
|
|
|
10
10
|
"Intended Audience :: Developers",
|
|
11
11
|
"Intended Audience :: End Users/Desktop",
|
|
12
12
|
"Operating System :: OS Independent",
|
|
13
|
+
"Programming Language :: Python :: 3 :: Only",
|
|
14
|
+
"Programming Language :: Python :: 3",
|
|
13
15
|
"Programming Language :: Python :: 3.10",
|
|
14
16
|
"Programming Language :: Python :: 3.11",
|
|
15
17
|
"Programming Language :: Python :: 3.12",
|
|
@@ -45,7 +47,7 @@ maintainers = [{ name = "Guennadi Maximov C", email = "g.maxc.fox@protonmail.com
|
|
|
45
47
|
name = "vim-eof-comment"
|
|
46
48
|
readme = "README.md"
|
|
47
49
|
requires-python = ">=3.10"
|
|
48
|
-
version = "0.3.
|
|
50
|
+
version = "0.3.13"
|
|
49
51
|
|
|
50
52
|
[project.scripts]
|
|
51
53
|
vim-eof-comment = "vim_eof_comment.eof:main"
|
|
@@ -53,13 +55,14 @@ version = "0.3.11"
|
|
|
53
55
|
[project.urls]
|
|
54
56
|
Issues = "https://github.com/DrKJeff16/vim-eof-comment/issues"
|
|
55
57
|
Repository = "https://github.com/DrKJeff16/vim-eof-comment"
|
|
58
|
+
Download = "https://github.com/DrKJeff16/vim-eof-comment/releases/latest"
|
|
56
59
|
|
|
57
60
|
[tool.numpydoc_validation]
|
|
58
61
|
checks = [
|
|
62
|
+
"all", # report on all checks, except the below
|
|
59
63
|
"ES01",
|
|
60
64
|
"EX01",
|
|
61
65
|
"SA01",
|
|
62
|
-
"all", # report on all checks, except the below
|
|
63
66
|
]
|
|
64
67
|
exclude = [
|
|
65
68
|
'\.undocumented_method$',
|
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
argcomplete==3.6.3; python_version >= '3.8'
|
|
3
3
|
argparse==1.4.0
|
|
4
4
|
colorama==0.4.6; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6'
|
|
5
|
+
greenlet==3.3.0; python_version >= '3.10'
|
|
6
|
+
msgpack==1.1.2; python_version >= '3.9'
|
|
7
|
+
pynvim==0.6.0; python_version >= '3.7'
|
|
5
8
|
pyproject==1!0.1.2; python_version >= '3.12'
|
|
9
|
+
python-magic==0.4.27; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
|
6
10
|
setuptools==80.9.0; python_version >= '3.9'
|
|
7
11
|
typing==3.7.4.3; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
|
8
12
|
typing-extensions==4.15.0; python_version >= '3.9'
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.3.13
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright (c) 2025 Guennadi Maximov C. All Rights Reserved.
|
|
3
|
+
"""
|
|
4
|
+
Argument parsing completion utilities for ``vim-eof-comment``.
|
|
5
|
+
|
|
6
|
+
Copyright (c) 2025 Guennadi Maximov C. All Rights Reserved.
|
|
7
|
+
"""
|
|
8
|
+
__all__ = ["complete_parser"]
|
|
9
|
+
|
|
10
|
+
from argparse import ArgumentParser
|
|
11
|
+
from typing import List, NoReturn
|
|
12
|
+
|
|
13
|
+
from argcomplete import autocomplete
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def complete_validator(completion_candidate: List[str], current_input: str) -> bool:
|
|
17
|
+
"""
|
|
18
|
+
Complete non-prefix substring matches.
|
|
19
|
+
|
|
20
|
+
Parameters
|
|
21
|
+
----------
|
|
22
|
+
completion_candidate : List[str]
|
|
23
|
+
All the completion candidates.
|
|
24
|
+
current_input : str
|
|
25
|
+
The current input string.
|
|
26
|
+
|
|
27
|
+
Returns
|
|
28
|
+
-------
|
|
29
|
+
bool
|
|
30
|
+
Whether the current input fits the completion candidates pool.
|
|
31
|
+
"""
|
|
32
|
+
return current_input in completion_candidate
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def complete_parser(parser: ArgumentParser, **kwargs) -> NoReturn:
|
|
36
|
+
"""
|
|
37
|
+
Complete the script argument parser.
|
|
38
|
+
|
|
39
|
+
Parameters
|
|
40
|
+
----------
|
|
41
|
+
parser : argparse.ArgumentParser
|
|
42
|
+
The ``ArgumentParser`` object.
|
|
43
|
+
**kwargs
|
|
44
|
+
Extra parameters to be passed to ``argcomplete.autocomplete()``.
|
|
45
|
+
"""
|
|
46
|
+
autocomplete(parser, validator=complete_validator, **kwargs)
|
|
47
|
+
|
|
48
|
+
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
@@ -12,7 +12,7 @@ def complete_parser(parser: ArgumentParser, **kwargs) -> NoReturn:
|
|
|
12
12
|
parser : argparse.ArgumentParser
|
|
13
13
|
The ``ArgumentParser`` object.
|
|
14
14
|
**kwargs
|
|
15
|
-
Extra parameters.
|
|
15
|
+
Extra parameters to be passed to ``argcomplete.autocomplete()``.
|
|
16
16
|
"""
|
|
17
17
|
|
|
18
18
|
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
@@ -13,11 +13,20 @@ from io import TextIOWrapper
|
|
|
13
13
|
from os.path import exists, isdir, realpath
|
|
14
14
|
from typing import Dict, Iterator, List, NoReturn, Tuple
|
|
15
15
|
|
|
16
|
+
from colorama import Fore, Style
|
|
17
|
+
from colorama import init as color_init
|
|
18
|
+
|
|
16
19
|
from ..types import IndentMap
|
|
17
20
|
from ..util import die
|
|
18
21
|
|
|
19
22
|
_JSON_FILE: str = realpath("./vim_eof_comment/comments/filetypes.json")
|
|
20
23
|
|
|
24
|
+
_BLUE: int = Fore.BLUE
|
|
25
|
+
_YELLOW: int = Fore.YELLOW
|
|
26
|
+
_CYAN: int = Fore.CYAN
|
|
27
|
+
_BRIGHT: int = Style.BRIGHT
|
|
28
|
+
_RESET: int = Style.RESET_ALL
|
|
29
|
+
|
|
21
30
|
|
|
22
31
|
def import_json() -> Tuple[Dict[str, str], Dict[str, IndentMap]]:
|
|
23
32
|
"""
|
|
@@ -195,15 +204,48 @@ class Comments():
|
|
|
195
204
|
return comments.get(ext, None)
|
|
196
205
|
|
|
197
206
|
|
|
207
|
+
def generate_list_items(ft: str, level: int, expandtab: str) -> str:
|
|
208
|
+
"""
|
|
209
|
+
Generate a colored string for filetypes listing.
|
|
210
|
+
|
|
211
|
+
Parameters
|
|
212
|
+
----------
|
|
213
|
+
ft : str
|
|
214
|
+
The filetype item in question.
|
|
215
|
+
level : int
|
|
216
|
+
Indent size.
|
|
217
|
+
expandtab : str
|
|
218
|
+
Either ``"Yes"`` or ``"No"``.
|
|
219
|
+
|
|
220
|
+
Returns
|
|
221
|
+
-------
|
|
222
|
+
str
|
|
223
|
+
The generated string.
|
|
224
|
+
"""
|
|
225
|
+
txt = f"{_RESET}{_BRIGHT}{_BLUE}{ft}\n"
|
|
226
|
+
txt += f" {_RESET}{_BRIGHT}indent size{_RESET}{_BRIGHT} ==> {_CYAN}{level}\n"
|
|
227
|
+
txt += f" {_RESET}{_BRIGHT}expandtab{_RESET}{_BRIGHT} ==> {_CYAN}{expandtab}"
|
|
228
|
+
|
|
229
|
+
return txt
|
|
230
|
+
|
|
231
|
+
|
|
198
232
|
def list_filetypes() -> NoReturn:
|
|
199
233
|
"""List all available filetypes."""
|
|
200
|
-
|
|
234
|
+
color_init()
|
|
235
|
+
|
|
236
|
+
defaults = Comments().get_defaults()
|
|
237
|
+
items: Dict[str, Tuple[int, str]] = dict()
|
|
238
|
+
for ft_ext, indents in defaults.items():
|
|
239
|
+
level: int = indents.get("level", 4)
|
|
240
|
+
et = "Yes" if indents.get("expandtab") else "No"
|
|
241
|
+
items[ft_ext] = (level, et)
|
|
242
|
+
|
|
243
|
+
keys: List[str] = list(items.keys())
|
|
244
|
+
keys.sort()
|
|
201
245
|
|
|
202
|
-
|
|
203
|
-
defaults: Dict[str, IndentMap] = c.get_defaults()
|
|
204
|
-
for ext, indents in defaults.items():
|
|
205
|
-
txt.append(f"- {ext}: {indents}")
|
|
246
|
+
sorted_items: Dict[str, Tuple[int, str]] = {i: items[i] for i in keys}
|
|
206
247
|
|
|
248
|
+
txt = [generate_list_items(k, v[0], v[1]) for k, v in sorted_items.items()]
|
|
207
249
|
die(*txt, code=0, sep="\n")
|
|
208
250
|
|
|
209
251
|
|
|
@@ -19,8 +19,8 @@ from .comments.generator import Comments, list_filetypes
|
|
|
19
19
|
from .file import bootstrap_paths, get_last_line, modify_file, open_batch_paths
|
|
20
20
|
from .regex import matches
|
|
21
21
|
from .types import BatchPathDict, EOFCommentSearch, IndentHandler, IOWrapperBool
|
|
22
|
-
from .util import die, gen_indent_maps, verbose_print
|
|
23
|
-
from .version import __version__, list_versions
|
|
22
|
+
from .util import die, gen_indent_maps, verbose_print
|
|
23
|
+
from .version import __version__, list_versions, version_print
|
|
24
24
|
|
|
25
25
|
_RED: int = Fore.LIGHTRED_EX
|
|
26
26
|
_GREEN: int = Fore.LIGHTGREEN_EX
|
|
@@ -11,7 +11,7 @@ from re import compile
|
|
|
11
11
|
from typing import Tuple
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
def matches(s: str, verbose: bool) -> bool:
|
|
14
|
+
def matches(s: str, verbose: bool = False) -> bool:
|
|
15
15
|
"""
|
|
16
16
|
Check if given string matches any of the given patterns.
|
|
17
17
|
|
|
@@ -19,7 +19,7 @@ def matches(s: str, verbose: bool) -> bool:
|
|
|
19
19
|
----------
|
|
20
20
|
s : str
|
|
21
21
|
The string to be matched.
|
|
22
|
-
verbose : bool
|
|
22
|
+
verbose : bool, optional, default=False
|
|
23
23
|
Enables verbose mode.
|
|
24
24
|
|
|
25
25
|
Returns
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
__all__ = ['matches']
|
|
2
2
|
|
|
3
|
-
def matches(s: str, verbose: bool) -> bool:
|
|
3
|
+
def matches(s: str, verbose: bool = False) -> bool:
|
|
4
4
|
"""
|
|
5
5
|
Check if given string matches any of the given patterns.
|
|
6
6
|
|
|
@@ -8,7 +8,7 @@ def matches(s: str, verbose: bool) -> bool:
|
|
|
8
8
|
----------
|
|
9
9
|
s : str
|
|
10
10
|
The string to be matched.
|
|
11
|
-
verbose : bool
|
|
11
|
+
verbose : bool, optional, default=False
|
|
12
12
|
Enables verbose mode.
|
|
13
13
|
|
|
14
14
|
Returns
|
|
@@ -32,15 +32,15 @@ class ParserSpec(TypedDict):
|
|
|
32
32
|
----------
|
|
33
33
|
opts : List[str]
|
|
34
34
|
A list containing all the relevant iterations of the same option.
|
|
35
|
-
kwargs : Dict[str,
|
|
35
|
+
kwargs : Dict[str, Any]
|
|
36
36
|
Extra arguments for ``argparse.ArgumentParser``.
|
|
37
|
-
completer : argcomplete.DirectoriesCompleter
|
|
38
|
-
An
|
|
37
|
+
completer : argcomplete.DirectoriesCompleter
|
|
38
|
+
An ``argcomplete`` completer object.
|
|
39
39
|
"""
|
|
40
40
|
|
|
41
41
|
opts: List[str]
|
|
42
42
|
kwargs: Dict[str, Any]
|
|
43
|
-
completer: DirectoriesCompleter
|
|
43
|
+
completer: DirectoriesCompleter
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
class CommentMap(TypedDict):
|
|
@@ -59,7 +59,18 @@ class CommentMap(TypedDict):
|
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
class IndentMap(TypedDict):
|
|
62
|
-
"""
|
|
62
|
+
"""
|
|
63
|
+
A dict containing ``level`` and ``expandtab`` as keys.
|
|
64
|
+
|
|
65
|
+
This is a ``TypedDict``-like object.
|
|
66
|
+
|
|
67
|
+
Attributes
|
|
68
|
+
----------
|
|
69
|
+
level : int
|
|
70
|
+
The indent level.
|
|
71
|
+
expandtab : bool
|
|
72
|
+
Whether to expand tabs or not.
|
|
73
|
+
"""
|
|
63
74
|
|
|
64
75
|
level: int
|
|
65
76
|
expandtab: bool
|
|
@@ -69,6 +80,8 @@ class IndentHandler(TypedDict):
|
|
|
69
80
|
"""
|
|
70
81
|
A dict containing ``ft_ext``, ``level`` and ``expandtab`` as keys.
|
|
71
82
|
|
|
83
|
+
This is a ``TypedDict``-like object.
|
|
84
|
+
|
|
72
85
|
Attributes
|
|
73
86
|
----------
|
|
74
87
|
ft_ext : str
|
|
@@ -85,35 +98,92 @@ class IndentHandler(TypedDict):
|
|
|
85
98
|
|
|
86
99
|
|
|
87
100
|
class IOWrapperBool(TypedDict):
|
|
88
|
-
"""
|
|
101
|
+
"""
|
|
102
|
+
A dict containing ``file`` and ``has_nwl`` as keys.
|
|
103
|
+
|
|
104
|
+
This is a ``TypedDict``-like object.
|
|
105
|
+
|
|
106
|
+
Attributes
|
|
107
|
+
----------
|
|
108
|
+
file : TextIO
|
|
109
|
+
The opened file as a ``TextIO`` wrapper.
|
|
110
|
+
has_nwl : bool
|
|
111
|
+
Whether the file has a newline or not.
|
|
112
|
+
"""
|
|
89
113
|
|
|
90
114
|
file: TextIO
|
|
91
115
|
has_nwl: bool
|
|
92
116
|
|
|
93
117
|
|
|
94
118
|
class LineBool(TypedDict):
|
|
95
|
-
"""
|
|
119
|
+
"""
|
|
120
|
+
A dict containing ``line`` and ``has_nwl`` as keys.
|
|
121
|
+
|
|
122
|
+
This is a ``TypedDict``-like object.
|
|
123
|
+
|
|
124
|
+
Attributes
|
|
125
|
+
----------
|
|
126
|
+
line : str
|
|
127
|
+
The last line of the target file.
|
|
128
|
+
has_nwl : bool
|
|
129
|
+
Whether the file has a newline or not.
|
|
130
|
+
"""
|
|
96
131
|
|
|
97
132
|
line: str
|
|
98
133
|
has_nwl: bool
|
|
99
134
|
|
|
100
135
|
|
|
101
136
|
class BatchPathDict(TypedDict):
|
|
102
|
-
"""
|
|
137
|
+
"""
|
|
138
|
+
A dict containing ``file`` and ``ft_ext`` as keys.
|
|
139
|
+
|
|
140
|
+
This is a ``TypedDict``-like object.
|
|
141
|
+
|
|
142
|
+
Attributes
|
|
143
|
+
----------
|
|
144
|
+
file : TextIO
|
|
145
|
+
The opened file as a ``TextIO`` wrapper.
|
|
146
|
+
ft_ext : str
|
|
147
|
+
The file-type/file-extension.
|
|
148
|
+
"""
|
|
103
149
|
|
|
104
150
|
file: TextIO
|
|
105
151
|
ft_ext: str
|
|
106
152
|
|
|
107
153
|
|
|
108
154
|
class BatchPairDict(TypedDict):
|
|
109
|
-
"""
|
|
155
|
+
"""
|
|
156
|
+
A dict containing ``fpath`` and ``ft_ext`` as keys.
|
|
157
|
+
|
|
158
|
+
This is a ``TypedDict``-like object.
|
|
159
|
+
|
|
160
|
+
Attributes
|
|
161
|
+
----------
|
|
162
|
+
fpath : str
|
|
163
|
+
The target file's path.
|
|
164
|
+
ft_ext : str
|
|
165
|
+
The file-type/file-extension.
|
|
166
|
+
"""
|
|
110
167
|
|
|
111
168
|
fpath: str
|
|
112
169
|
ft_ext: str
|
|
113
170
|
|
|
114
171
|
|
|
115
172
|
class EOFCommentSearch(TypedDict):
|
|
116
|
-
"""
|
|
173
|
+
"""
|
|
174
|
+
A dict containing ``state``, ``lang`` and ``match`` as keys.
|
|
175
|
+
|
|
176
|
+
This is a ``TypedDict``-like object.
|
|
177
|
+
|
|
178
|
+
Attributes
|
|
179
|
+
----------
|
|
180
|
+
state : IOWrapperBool
|
|
181
|
+
The target ``IOWrapperBool`` object.
|
|
182
|
+
lang : str
|
|
183
|
+
The file language.
|
|
184
|
+
match : bool
|
|
185
|
+
Whether it has a variation of an EOF comment at the end.
|
|
186
|
+
"""
|
|
117
187
|
|
|
118
188
|
state: IOWrapperBool
|
|
119
189
|
lang: str
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
from typing import Any, TextIO, TypedDict
|
|
2
|
+
|
|
3
|
+
from argcomplete.completers import DirectoriesCompleter
|
|
4
|
+
|
|
5
|
+
__all__ = ['BatchPairDict', 'BatchPathDict', 'CommentMap', 'EOFCommentSearch', 'IOWrapperBool', 'IndentHandler', 'IndentMap', 'LineBool', 'ParserSpec']
|
|
6
|
+
|
|
7
|
+
class ParserSpec(TypedDict):
|
|
8
|
+
"""
|
|
9
|
+
Stores the spec for ``argparse`` operations in a constant value.
|
|
10
|
+
|
|
11
|
+
This is a ``TypedDict``-like object.
|
|
12
|
+
|
|
13
|
+
Attributes
|
|
14
|
+
----------
|
|
15
|
+
opts : List[str]
|
|
16
|
+
A list containing all the relevant iterations of the same option.
|
|
17
|
+
kwargs : Dict[str, Any]
|
|
18
|
+
Extra arguments for ``argparse.ArgumentParser``.
|
|
19
|
+
completer : argcomplete.DirectoriesCompleter
|
|
20
|
+
An ``argcomplete`` completer object.
|
|
21
|
+
"""
|
|
22
|
+
opts: list[str]
|
|
23
|
+
kwargs: dict[str, Any]
|
|
24
|
+
completer: DirectoriesCompleter
|
|
25
|
+
|
|
26
|
+
class CommentMap(TypedDict):
|
|
27
|
+
"""
|
|
28
|
+
Stores a dict with a ``level`` key.
|
|
29
|
+
|
|
30
|
+
This is a ``TypedDict``-like object.
|
|
31
|
+
|
|
32
|
+
Attributes
|
|
33
|
+
----------
|
|
34
|
+
level : int
|
|
35
|
+
The indentation level.
|
|
36
|
+
"""
|
|
37
|
+
level: int
|
|
38
|
+
|
|
39
|
+
class IndentMap(TypedDict):
|
|
40
|
+
"""
|
|
41
|
+
A dict containing ``level`` and ``expandtab`` as keys.
|
|
42
|
+
|
|
43
|
+
This is a ``TypedDict``-like object.
|
|
44
|
+
|
|
45
|
+
Attributes
|
|
46
|
+
----------
|
|
47
|
+
level : int
|
|
48
|
+
The indent level.
|
|
49
|
+
expandtab : bool
|
|
50
|
+
Whether to expand tabs or not.
|
|
51
|
+
"""
|
|
52
|
+
level: int
|
|
53
|
+
expandtab: bool
|
|
54
|
+
|
|
55
|
+
class IndentHandler(TypedDict):
|
|
56
|
+
"""
|
|
57
|
+
A dict containing ``ft_ext``, ``level`` and ``expandtab`` as keys.
|
|
58
|
+
|
|
59
|
+
This is a ``TypedDict``-like object.
|
|
60
|
+
|
|
61
|
+
Attributes
|
|
62
|
+
----------
|
|
63
|
+
ft_ext : str
|
|
64
|
+
The file-extension/file-type.
|
|
65
|
+
level : str
|
|
66
|
+
The string representation of the indent level.
|
|
67
|
+
expandtab : bool
|
|
68
|
+
Whether to expand tabs or not.
|
|
69
|
+
"""
|
|
70
|
+
ft_ext: str
|
|
71
|
+
level: str
|
|
72
|
+
expandtab: bool
|
|
73
|
+
|
|
74
|
+
class IOWrapperBool(TypedDict):
|
|
75
|
+
"""
|
|
76
|
+
A dict containing ``file`` and ``has_nwl`` as keys.
|
|
77
|
+
|
|
78
|
+
This is a ``TypedDict``-like object.
|
|
79
|
+
|
|
80
|
+
Attributes
|
|
81
|
+
----------
|
|
82
|
+
file : TextIO
|
|
83
|
+
The opened file as a ``TextIO`` wrapper.
|
|
84
|
+
has_nwl : bool
|
|
85
|
+
Whether the file has a newline or not.
|
|
86
|
+
"""
|
|
87
|
+
file: TextIO
|
|
88
|
+
has_nwl: bool
|
|
89
|
+
|
|
90
|
+
class LineBool(TypedDict):
|
|
91
|
+
"""
|
|
92
|
+
A dict containing ``line`` and ``has_nwl`` as keys.
|
|
93
|
+
|
|
94
|
+
This is a ``TypedDict``-like object.
|
|
95
|
+
|
|
96
|
+
Attributes
|
|
97
|
+
----------
|
|
98
|
+
line : str
|
|
99
|
+
The last line of the target file.
|
|
100
|
+
has_nwl : bool
|
|
101
|
+
Whether the file has a newline or not.
|
|
102
|
+
"""
|
|
103
|
+
line: str
|
|
104
|
+
has_nwl: bool
|
|
105
|
+
|
|
106
|
+
class BatchPathDict(TypedDict):
|
|
107
|
+
"""
|
|
108
|
+
A dict containing ``file`` and ``ft_ext`` as keys.
|
|
109
|
+
|
|
110
|
+
This is a ``TypedDict``-like object.
|
|
111
|
+
|
|
112
|
+
Attributes
|
|
113
|
+
----------
|
|
114
|
+
file : TextIO
|
|
115
|
+
The opened file as a ``TextIO`` wrapper.
|
|
116
|
+
ft_ext : str
|
|
117
|
+
The file-type/file-extension.
|
|
118
|
+
"""
|
|
119
|
+
file: TextIO
|
|
120
|
+
ft_ext: str
|
|
121
|
+
|
|
122
|
+
class BatchPairDict(TypedDict):
|
|
123
|
+
"""
|
|
124
|
+
A dict containing ``fpath`` and ``ft_ext`` as keys.
|
|
125
|
+
|
|
126
|
+
This is a ``TypedDict``-like object.
|
|
127
|
+
|
|
128
|
+
Attributes
|
|
129
|
+
----------
|
|
130
|
+
fpath : str
|
|
131
|
+
The target file's path.
|
|
132
|
+
ft_ext : str
|
|
133
|
+
The file-type/file-extension.
|
|
134
|
+
"""
|
|
135
|
+
fpath: str
|
|
136
|
+
ft_ext: str
|
|
137
|
+
|
|
138
|
+
class EOFCommentSearch(TypedDict):
|
|
139
|
+
"""
|
|
140
|
+
A dict containing ``state``, ``lang`` and ``match`` as keys.
|
|
141
|
+
|
|
142
|
+
This is a ``TypedDict``-like object.
|
|
143
|
+
|
|
144
|
+
Attributes
|
|
145
|
+
----------
|
|
146
|
+
state : IOWrapperBool
|
|
147
|
+
The target ``IOWrapperBool`` object.
|
|
148
|
+
lang : str
|
|
149
|
+
The file language.
|
|
150
|
+
match : bool
|
|
151
|
+
Whether it has a variation of an EOF comment at the end.
|
|
152
|
+
"""
|
|
153
|
+
state: IOWrapperBool
|
|
154
|
+
lang: str
|
|
155
|
+
match: bool
|
|
156
|
+
|
|
157
|
+
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
@@ -5,7 +5,7 @@ EOF comments checker utilities.
|
|
|
5
5
|
|
|
6
6
|
Copyright (c) 2025 Guennadi Maximov C. All Rights Reserved.
|
|
7
7
|
"""
|
|
8
|
-
__all__ = ["die", "error", "gen_indent_maps", "verbose_print"
|
|
8
|
+
__all__ = ["die", "error", "gen_indent_maps", "verbose_print"]
|
|
9
9
|
|
|
10
10
|
from sys import exit as Exit
|
|
11
11
|
from sys import stderr, stdout
|
|
@@ -117,22 +117,6 @@ def verbose_print(*msg, verbose: bool | None = None, **kwargs) -> NoReturn:
|
|
|
117
117
|
print(*msg, end=end, sep=sep, flush=flush)
|
|
118
118
|
|
|
119
119
|
|
|
120
|
-
def version_print(version: str) -> NoReturn:
|
|
121
|
-
"""
|
|
122
|
-
Print project version, then exit.
|
|
123
|
-
|
|
124
|
-
Parameters
|
|
125
|
-
----------
|
|
126
|
-
version : str
|
|
127
|
-
The version string.
|
|
128
|
-
|
|
129
|
-
See Also
|
|
130
|
-
--------
|
|
131
|
-
vim_eof_comment.util.die : The function used for this function.
|
|
132
|
-
"""
|
|
133
|
-
die(f"vim-eof-comment-{version}", code=0)
|
|
134
|
-
|
|
135
|
-
|
|
136
120
|
def gen_indent_maps(maps: List[IndentHandler]) -> Dict[str, IndentMap] | None:
|
|
137
121
|
"""
|
|
138
122
|
Generate a dictionary from the custom indent maps.
|
|
@@ -2,7 +2,7 @@ from typing import Callable, NoReturn, TextIO
|
|
|
2
2
|
|
|
3
3
|
from .types import IndentHandler, IndentMap
|
|
4
4
|
|
|
5
|
-
__all__ = ['die', 'error', 'gen_indent_maps', 'verbose_print'
|
|
5
|
+
__all__ = ['die', 'error', 'gen_indent_maps', 'verbose_print']
|
|
6
6
|
|
|
7
7
|
def error(*msg, **kwargs) -> NoReturn:
|
|
8
8
|
"""
|
|
@@ -77,19 +77,6 @@ def verbose_print(*msg, verbose: bool | None = None, **kwargs) -> NoReturn:
|
|
|
77
77
|
--------
|
|
78
78
|
print : This function is essentially being wrapped around here.
|
|
79
79
|
"""
|
|
80
|
-
def version_print(version: str) -> NoReturn:
|
|
81
|
-
"""
|
|
82
|
-
Print project version, then exit.
|
|
83
|
-
|
|
84
|
-
Parameters
|
|
85
|
-
----------
|
|
86
|
-
version : str
|
|
87
|
-
The version string.
|
|
88
|
-
|
|
89
|
-
See Also
|
|
90
|
-
--------
|
|
91
|
-
vim_eof_comment.util.die : The function used for this function.
|
|
92
|
-
"""
|
|
93
80
|
def gen_indent_maps(maps: list[IndentHandler]) -> dict[str, IndentMap] | None:
|
|
94
81
|
"""
|
|
95
82
|
Generate a dictionary from the custom indent maps.
|
|
@@ -5,7 +5,7 @@ Custom vim-eof-comment versioning objects.
|
|
|
5
5
|
|
|
6
6
|
Copyright (c) 2025 Guennadi Maximov C. All Rights Reserved.
|
|
7
7
|
"""
|
|
8
|
-
__all__ = ["VersionInfo", "list_versions", "version_info", "__version__"]
|
|
8
|
+
__all__ = ["VersionInfo", "list_versions", "version_info", "version_print", "__version__"]
|
|
9
9
|
|
|
10
10
|
from typing import List, NoReturn, Tuple
|
|
11
11
|
|
|
@@ -103,7 +103,7 @@ class VersionInfo():
|
|
|
103
103
|
Only one definition in constructor.
|
|
104
104
|
|
|
105
105
|
>>> from vim_eof_comment.version import VersionInfo
|
|
106
|
-
>>> print(VersionInfo([(0, 0, 1)]))
|
|
106
|
+
>>> print(repr(VersionInfo([(0, 0, 1)])))
|
|
107
107
|
0.0.1
|
|
108
108
|
|
|
109
109
|
Multiple definitions in constructor.
|
|
@@ -163,7 +163,7 @@ class VersionInfo():
|
|
|
163
163
|
return result
|
|
164
164
|
|
|
165
165
|
|
|
166
|
-
version_info
|
|
166
|
+
version_info = VersionInfo([
|
|
167
167
|
(0, 1, 1),
|
|
168
168
|
(0, 1, 2),
|
|
169
169
|
(0, 1, 3),
|
|
@@ -218,6 +218,8 @@ version_info: VersionInfo = VersionInfo([
|
|
|
218
218
|
(0, 3, 9),
|
|
219
219
|
(0, 3, 10),
|
|
220
220
|
(0, 3, 11),
|
|
221
|
+
(0, 3, 12),
|
|
222
|
+
(0, 3, 13),
|
|
221
223
|
])
|
|
222
224
|
|
|
223
225
|
__version__: str = str(version_info)
|
|
@@ -225,7 +227,18 @@ __version__: str = str(version_info)
|
|
|
225
227
|
|
|
226
228
|
def list_versions() -> NoReturn:
|
|
227
229
|
"""List all versions."""
|
|
228
|
-
|
|
229
|
-
|
|
230
|
+
die(version_info.get_all_versions(), code=0)
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
def version_print(version: str) -> NoReturn:
|
|
234
|
+
"""
|
|
235
|
+
Print project version, then exit.
|
|
236
|
+
|
|
237
|
+
Parameters
|
|
238
|
+
----------
|
|
239
|
+
version : str
|
|
240
|
+
The version string.
|
|
241
|
+
"""
|
|
242
|
+
die(f"vim-eof-comment-{version}", code=0)
|
|
230
243
|
|
|
231
244
|
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
from typing import NoReturn
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
from _typeshed import Incomplete
|
|
4
|
+
|
|
5
|
+
__all__ = ['VersionInfo', 'list_versions', 'version_info', 'version_print', '__version__']
|
|
4
6
|
|
|
5
7
|
class VersionInfo:
|
|
6
8
|
"""
|
|
@@ -82,7 +84,7 @@ class VersionInfo:
|
|
|
82
84
|
Only one definition in constructor.
|
|
83
85
|
|
|
84
86
|
>>> from vim_eof_comment.version import VersionInfo
|
|
85
|
-
>>> print(VersionInfo([(0, 0, 1)]))
|
|
87
|
+
>>> print(repr(VersionInfo([(0, 0, 1)])))
|
|
86
88
|
0.0.1
|
|
87
89
|
|
|
88
90
|
Multiple definitions in constructor.
|
|
@@ -124,10 +126,19 @@ class VersionInfo:
|
|
|
124
126
|
0.0.3 (latest)
|
|
125
127
|
"""
|
|
126
128
|
|
|
127
|
-
version_info:
|
|
129
|
+
version_info: Incomplete
|
|
128
130
|
__version__: str
|
|
129
131
|
|
|
130
132
|
def list_versions() -> NoReturn:
|
|
131
133
|
"""List all versions."""
|
|
134
|
+
def version_print(version: str) -> NoReturn:
|
|
135
|
+
"""
|
|
136
|
+
Print project version, then exit.
|
|
137
|
+
|
|
138
|
+
Parameters
|
|
139
|
+
----------
|
|
140
|
+
version : str
|
|
141
|
+
The version string.
|
|
142
|
+
"""
|
|
132
143
|
|
|
133
144
|
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vim-eof-comment
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.13
|
|
4
4
|
Summary: Adds Vim EOF comments for given filetypes in given directories
|
|
5
5
|
Author-email: Guennadi Maximov C <g.maxc.fox@protonmail.com>
|
|
6
6
|
Maintainer-email: Guennadi Maximov C <g.maxc.fox@protonmail.com>
|
|
7
7
|
License-Expression: GPL-2.0-only
|
|
8
8
|
Project-URL: Issues, https://github.com/DrKJeff16/vim-eof-comment/issues
|
|
9
9
|
Project-URL: Repository, https://github.com/DrKJeff16/vim-eof-comment
|
|
10
|
+
Project-URL: Download, https://github.com/DrKJeff16/vim-eof-comment/releases/latest
|
|
10
11
|
Keywords: eof comments,eof,files,preprocessing,text,vim modeline,vim,vim-eof
|
|
11
12
|
Classifier: Development Status :: 4 - Beta
|
|
12
13
|
Classifier: Environment :: Console
|
|
13
14
|
Classifier: Intended Audience :: Developers
|
|
14
15
|
Classifier: Intended Audience :: End Users/Desktop
|
|
15
16
|
Classifier: Operating System :: OS Independent
|
|
17
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
19
|
Classifier: Programming Language :: Python :: 3.10
|
|
17
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
18
21
|
Classifier: Programming Language :: Python :: 3.12
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
.flake8
|
|
2
2
|
.gitattributes
|
|
3
3
|
.pre-commit-config.yaml
|
|
4
|
-
.taplo.toml
|
|
5
4
|
LICENSE
|
|
6
5
|
Makefile
|
|
7
6
|
Pipfile
|
|
8
7
|
README.md
|
|
9
8
|
pyproject.toml
|
|
10
9
|
requirements.txt
|
|
10
|
+
taplo.toml
|
|
11
11
|
version.txt
|
|
12
12
|
.github/CODEOWNERS
|
|
13
13
|
.github/workflows/flake8-lint.yml
|
|
14
14
|
.github/workflows/mypy-lint.yml
|
|
15
15
|
.github/workflows/release.yml
|
|
16
|
+
.github/workflows/vim-eof-comment.yml
|
|
16
17
|
docs/Makefile
|
|
17
18
|
docs/make.bat
|
|
18
19
|
docs/source/conf.py
|
|
19
20
|
docs/source/functions.rst
|
|
20
21
|
docs/source/index.rst
|
|
21
|
-
docs/source/
|
|
22
|
+
docs/source/installation.rst
|
|
22
23
|
vim_eof_comment/__init__.py
|
|
23
24
|
vim_eof_comment/__init__.pyi
|
|
24
25
|
vim_eof_comment/__main__.py
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0.3.11
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
# Copyright (c) 2025 Guennadi Maximov C. All Rights Reserved.
|
|
3
|
-
"""
|
|
4
|
-
Argument parsing completion utilities for ``vim-eof-comment``.
|
|
5
|
-
|
|
6
|
-
Copyright (c) 2025 Guennadi Maximov C. All Rights Reserved.
|
|
7
|
-
"""
|
|
8
|
-
__all__ = ["complete_parser"]
|
|
9
|
-
|
|
10
|
-
from argparse import ArgumentParser
|
|
11
|
-
from typing import NoReturn
|
|
12
|
-
|
|
13
|
-
from argcomplete import autocomplete
|
|
14
|
-
from argcomplete.finders import default_validator
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
def complete_parser(parser: ArgumentParser, **kwargs) -> NoReturn:
|
|
18
|
-
"""
|
|
19
|
-
Complete the script argument parser.
|
|
20
|
-
|
|
21
|
-
Parameters
|
|
22
|
-
----------
|
|
23
|
-
parser : argparse.ArgumentParser
|
|
24
|
-
The ``ArgumentParser`` object.
|
|
25
|
-
**kwargs
|
|
26
|
-
Extra parameters.
|
|
27
|
-
"""
|
|
28
|
-
autocomplete(parser, validator=default_validator, **kwargs)
|
|
29
|
-
|
|
30
|
-
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
from typing import Any, TextIO, TypedDict
|
|
2
|
-
|
|
3
|
-
from argcomplete.completers import DirectoriesCompleter
|
|
4
|
-
|
|
5
|
-
__all__ = ['BatchPairDict', 'BatchPathDict', 'CommentMap', 'EOFCommentSearch', 'IOWrapperBool', 'IndentHandler', 'IndentMap', 'LineBool', 'ParserSpec']
|
|
6
|
-
|
|
7
|
-
class ParserSpec(TypedDict):
|
|
8
|
-
"""
|
|
9
|
-
Stores the spec for ``argparse`` operations in a constant value.
|
|
10
|
-
|
|
11
|
-
This is a ``TypedDict``-like object.
|
|
12
|
-
|
|
13
|
-
Attributes
|
|
14
|
-
----------
|
|
15
|
-
opts : List[str]
|
|
16
|
-
A list containing all the relevant iterations of the same option.
|
|
17
|
-
kwargs : Dict[str, str]
|
|
18
|
-
Extra arguments for ``argparse.ArgumentParser``.
|
|
19
|
-
completer : argcomplete.DirectoriesCompleter, optional, default=None
|
|
20
|
-
An optional ``argcomplete`` completer object.
|
|
21
|
-
"""
|
|
22
|
-
opts: list[str]
|
|
23
|
-
kwargs: dict[str, Any]
|
|
24
|
-
completer: DirectoriesCompleter | None
|
|
25
|
-
|
|
26
|
-
class CommentMap(TypedDict):
|
|
27
|
-
"""
|
|
28
|
-
Stores a dict with a ``level`` key.
|
|
29
|
-
|
|
30
|
-
This is a ``TypedDict``-like object.
|
|
31
|
-
|
|
32
|
-
Attributes
|
|
33
|
-
----------
|
|
34
|
-
level : int
|
|
35
|
-
The indentation level.
|
|
36
|
-
"""
|
|
37
|
-
level: int
|
|
38
|
-
|
|
39
|
-
class IndentMap(TypedDict):
|
|
40
|
-
"""A ``TypedDict`` container."""
|
|
41
|
-
level: int
|
|
42
|
-
expandtab: bool
|
|
43
|
-
|
|
44
|
-
class IndentHandler(TypedDict):
|
|
45
|
-
"""
|
|
46
|
-
A dict containing ``ft_ext``, ``level`` and ``expandtab`` as keys.
|
|
47
|
-
|
|
48
|
-
Attributes
|
|
49
|
-
----------
|
|
50
|
-
ft_ext : str
|
|
51
|
-
The file-extension/file-type.
|
|
52
|
-
level : str
|
|
53
|
-
The string representation of the indent level.
|
|
54
|
-
expandtab : bool
|
|
55
|
-
Whether to expand tabs or not.
|
|
56
|
-
"""
|
|
57
|
-
ft_ext: str
|
|
58
|
-
level: str
|
|
59
|
-
expandtab: bool
|
|
60
|
-
|
|
61
|
-
class IOWrapperBool(TypedDict):
|
|
62
|
-
"""A ``TypedDict`` container."""
|
|
63
|
-
file: TextIO
|
|
64
|
-
has_nwl: bool
|
|
65
|
-
|
|
66
|
-
class LineBool(TypedDict):
|
|
67
|
-
"""A ``TypedDict`` container."""
|
|
68
|
-
line: str
|
|
69
|
-
has_nwl: bool
|
|
70
|
-
|
|
71
|
-
class BatchPathDict(TypedDict):
|
|
72
|
-
"""A ``TypedDict`` container."""
|
|
73
|
-
file: TextIO
|
|
74
|
-
ft_ext: str
|
|
75
|
-
|
|
76
|
-
class BatchPairDict(TypedDict):
|
|
77
|
-
"""A ``TypedDict`` container."""
|
|
78
|
-
fpath: str
|
|
79
|
-
ft_ext: str
|
|
80
|
-
|
|
81
|
-
class EOFCommentSearch(TypedDict):
|
|
82
|
-
"""A ``TypedDict`` container."""
|
|
83
|
-
state: IOWrapperBool
|
|
84
|
-
lang: str
|
|
85
|
-
match: bool
|
|
86
|
-
|
|
87
|
-
# vim: set ts=4 sts=4 sw=4 et ai si sta:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{vim_eof_comment-0.3.11 → vim_eof_comment-0.3.13}/vim_eof_comment.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|