{"id":14978937,"url":"https://github.com/vimjas/vint","last_synced_at":"2025-05-16T13:03:49.321Z","repository":{"id":43034923,"uuid":"20857415","full_name":"Vimjas/vint","owner":"Vimjas","description":"Fast and Highly Extensible Vim script Language Lint implemented in Python.","archived":false,"fork":false,"pushed_at":"2023-12-29T07:20:16.000Z","size":2561,"stargazers_count":705,"open_issues_count":86,"forks_count":32,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-05-06T13:21:30.359Z","etag":null,"topics":["lint","vim","vim-script"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Vimjas.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2014-06-15T14:38:32.000Z","updated_at":"2025-05-03T02:05:51.000Z","dependencies_parsed_at":"2024-01-07T12:19:02.374Z","dependency_job_id":"e21895c4-ed90-4765-9614-4c43c5c8b607","html_url":"https://github.com/Vimjas/vint","commit_stats":{"total_commits":567,"total_committers":28,"mean_commits":20.25,"dds":0.3580246913580247,"last_synced_commit":"e12091830f0ae7311066b9d1417951182fb32eb5"},"previous_names":["kuniwak/vint"],"tags_count":41,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vimjas%2Fvint","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vimjas%2Fvint/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vimjas%2Fvint/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vimjas%2Fvint/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Vimjas","download_url":"https://codeload.github.com/Vimjas/vint/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254535826,"owners_count":22087398,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lint","vim","vim-script"],"created_at":"2024-09-24T13:58:40.089Z","updated_at":"2025-05-16T13:03:49.262Z","avatar_url":"https://github.com/Vimjas.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":".. figure:: https://raw.githubusercontent.com/Kuniwak/vint/logo/logo.png\n   :alt: logo\n\n----\n\n|Development Status| |Latest Version| |Supported Python versions|\n|Supported Python implementations| |Build Status|\n\nVint is a Vim script Language Lint. The goal to reach for Vint is:\n\n-  Highly extensible\n-  Highly customizable\n-  High performance\n\n**But now, Vint is under development. We hope you develop a policy to\nhelp us.**\n\nQuick start\n-----------\n\nYou can install with `pip \u003chttps://pip.pypa.io/en/latest/\u003e`__.\n\n::\n\n    $ pip install vim-vint\n\nYou can use Vint with\n`vim-syntastic/syntastic \u003chttps://github.com/vim-syntastic/syntastic\u003e`__::\n\n    let g:syntastic_vim_checkers = ['vint']\n\nYou can install with `vim-plug \u003chttps://github.com/junegunn/vim-plug\u003e`__::\n\n    plug Vimjas/vint\n\nConfigure\n---------\n\nVint will read config files on the following priority order:\n\n-  `User config \u003c#user-config\u003e`__:\n-  e.g. ``~/.vintrc.yaml`` (the filename can be ``.vintrc.yml`` or ``.vintrc``)\n\n-  `Project config \u003c#project-config\u003e`__:\n-  e.g. ``path/to/proj/.vintrc.yaml`` (the filename can be ``.vintrc.yml`` or ``.vintrc``)\n\n-  `Command line config \u003c#command-line-config\u003e`__:\n-  e.g. ``$ vint --error``, ``$ vint --max-violations 10``\n\n-  `Comment config \u003c#comment-config\u003e`__ (highest priority):\n-  e.g. ``\" vint: -ProhibitAbbreviationOption +ProhibitSetNoCompatible``\n\nYou can see all options on `Wiki \u003chttps://github.com/Kuniwak/vint/wiki/Config\u003e`__.\n\nThe default configuration is defined in\n`default_config.yaml \u003cvint/asset/default_config.yaml\u003e`_.\n\n\nUser config\n~~~~~~~~~~~\n\nYou can configure global Vint config by ``~/.vintrc.yaml`` as following:\n\n.. code:: yaml\n\n    cmdargs:\n      # Checking more strictly\n      severity: style_problem\n\n      # Enable coloring\n      color: true\n\n      # Enable Neovim syntax\n      env:\n        neovim: true\n\n    policies:\n      # Disable a violation\n      ProhibitSomethingEvil:\n        enabled: false\n\n      # Enable a violation\n      ProhibitSomethingBad:\n        enabled: true\n\nYou can see all policy names on `Vint linting policy\nsummary \u003chttps://github.com/Kuniwak/vint/wiki/Vint-linting-policy-summary\u003e`__.\n\nProject config\n~~~~~~~~~~~~~~\n\nYou can configure project local Vint config by ``.vintrc.yaml`` as\nfollowing:\n\n.. code:: yaml\n\n    cmdargs:\n      # Checking more strictly\n      severity: style_problem\n\n      # Enable coloring\n      color: true\n\n      # Enable Neovim syntax\n      env:\n        neovim: true\n\n    policies:\n      # Disable a violation\n      ProhibitSomethingEvil:\n        enabled: false\n\n      # Enable a violation\n      ProhibitSomethingBad:\n        enabled: true\n\nYou can see all policy names on `Vint linting policy\nsummary \u003chttps://github.com/Kuniwak/vint/wiki/Vint-linting-policy-summary\u003e`__.\n\nCommand line config\n~~~~~~~~~~~~~~~~~~~\n\nYou can configure linting severity, max errors, ... as following:\n\n::\n\n    $ vint --color --style ~/.vimrc\n\nAnd you can see all available options by using `--help`:\n\n::\n\n    $ vint --help\n    usage: vint [-h] [-v] [-V] [-e] [-w] [-s] [-m MAX_VIOLATIONS] [-c]\n                [--no-color] [-j] [-t] [--enable-neovim] [-f FORMAT]\n                [--stdin-display-name STDIN_DISPLAY_NAME]\n                [files [files ...]]\n\n    Lint Vim script\n\n    positional arguments:\n      files                 file or directory path to lint\n\n    optional arguments:\n      -h, --help            show this help message and exit\n      -v, --version         show program's version number and exit\n      -V, --verbose         output verbose message\n      -e, --error           report only errors\n      -w, --warning         report errors and warnings\n      -s, --style-problem   report errors, warnings and style problems\n      -m MAX_VIOLATIONS, --max-violations MAX_VIOLATIONS\n                            limit max violations count\n      -c, --color           colorize output when possible\n      --no-color            do not colorize output\n      -j, --json            output json style\n      -t, --stat            output statistic info\n      --enable-neovim       enable Neovim syntax\n      -f FORMAT, --format FORMAT\n                            set output format\n      --stdin-display-name STDIN_DISPLAY_NAME\n                            specify a file path that is used for reporting when\n                            linting standard inputs\n\nComment config\n~~~~~~~~~~~~~~\n\nYou can enable/disable linting policies by a comment as following:\n\n.. code:: vim\n\n    \" vint: -ProhibitAbbreviationOption\n\n    let s:save_cpo = \u0026cpo\n    set cpo\u0026vim\n\n    \" vint: +ProhibitAbbreviationOption\n\n    \" do something...\n\n    \" vint: -ProhibitAbbreviationOption\n\n    let \u0026cpo = s:save_cpo\n    unlet s:save_cpo\n\nAnd you can use line config comments. It can enable/disable linting policies in only one line by the postfix comment:\n\n.. code:: vim\n\n    \" vint: next-line -ProhibitUnusedVariable\n    let s:foobar = 'x'\n    echo s:{'foo' . 'bar'}\n\nThis syntax is: `\" vint: [next-line] [+-]\u003cPolicyName\u003e [+-]\u003cPolicyName\u003e ...`.\nYou can see all policy names on `Vint linting policy summary \u003chttps://github.com/Kuniwak/vint/wiki/Vint-linting-policy-summary\u003e`__.\n\nCode health\n-----------\n\n|Coverage Status| |Code Health| |Dependency Status|\n\nLicense\n-------\n\n`MIT \u003chttp://orgachem.mit-license.org/\u003e`__\n\nAcknowledgement\n---------------\n\n-  `vim-jp/vim-vimlparser \u003chttps://github.com/vim-jp/vim-vimlparser\u003e`__\n-  `Google Vimscript Style\n   Guide \u003chttps://google.github.io/styleguide/vimscriptguide.xml\u003e`__\n-  `Anti-pattern of\n   vimrc \u003chttp://rbtnn.hateblo.jp/entry/2014/12/28/010913\u003e`__\n\n.. |Development Status| image:: https://img.shields.io/pypi/status/vim-vint.svg\n   :target: https://pypi.python.org/pypi/vim-vint/\n.. |Latest Version| image:: https://img.shields.io/pypi/v/vim-vint.svg\n   :target: https://pypi.python.org/pypi/vim-vint/\n.. |Supported Python versions| image:: https://img.shields.io/pypi/pyversions/vim-vint.svg\n   :target: https://pypi.python.org/pypi/vim-vint/\n.. |Supported Python implementations| image:: https://img.shields.io/pypi/implementation/vim-vint.svg\n   :target: https://pypi.python.org/pypi/vim-vint/\n.. |Build Status| image:: https://github.com/Vimjas/vint/actions/workflows/ci.yml/badge.svg\n   :target: https://github.com/Vimjas/vint/actions/workflows/ci.yml\n.. |Coverage Status| image:: https://codecov.io/gh/Vimjas/vint/branch/master/graph/badge.svg\n   :target: https://app.codecov.io/gh/Vimjas/vint\n.. |Code Health| image:: https://landscape.io/github/Kuniwak/vint/master/landscape.png\n   :target: https://landscape.io/github/Kuniwak/vint/master\n.. |Dependency Status| image:: https://gemnasium.com/Kuniwak/vint.svg\n   :target: https://gemnasium.com/Kuniwak/vint\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvimjas%2Fvint","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvimjas%2Fvint","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvimjas%2Fvint/lists"}