{"id":13898301,"url":"https://github.com/LucHermitte/lh-style","last_synced_at":"2025-07-17T15:32:59.601Z","repository":{"id":147343340,"uuid":"107277166","full_name":"LucHermitte/lh-style","owner":"LucHermitte","description":"Vim Script library providing stylistic related functions","archived":false,"fork":false,"pushed_at":"2024-08-25T01:58:40.000Z","size":243,"stargazers_count":2,"open_issues_count":4,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-08-25T02:44:38.095Z","etag":null,"topics":["vim","viml-library","vimscript-library"],"latest_commit_sha":null,"homepage":null,"language":"Vim Script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LucHermitte.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"License.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-17T14:06:58.000Z","updated_at":"2024-08-25T02:44:41.801Z","dependencies_parsed_at":"2024-08-25T02:44:40.248Z","dependency_job_id":"1b9db195-d79c-4a09-acc6-2ed1e452822e","html_url":"https://github.com/LucHermitte/lh-style","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucHermitte%2Flh-style","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucHermitte%2Flh-style/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucHermitte%2Flh-style/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucHermitte%2Flh-style/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LucHermitte","download_url":"https://codeload.github.com/LucHermitte/lh-style/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226274768,"owners_count":17598860,"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":["vim","viml-library","vimscript-library"],"created_at":"2024-08-06T18:04:13.204Z","updated_at":"2024-11-25T04:31:11.259Z","avatar_url":"https://github.com/LucHermitte.png","language":"Vim Script","readme":"# lh-style [![Last release][Releases-badge]][Releases-url] [![Build Status][gh-action-badge]][gh-action-result] [![Documentation Status][rtd-badge]][rtd-url] [![Project Stats][openhub-badge]][openhub-url]\n\n[Releases-badge]:   https://img.shields.io/github/tag/LucHermitte/lh-style.svg\n[Releases-url]:     https://github.com/LucHermitte/lh-style/tags\n[gh-action-badge]:  ./../../actions/workflows/tests.yml/badge.svg?branch=master \"Test\"\n[gh-action-result]: ./../../actions/workflows/tests.yml?query=branch%3Amaster\n[openhub-badge]:    https://www.openhub.net/p/21020/widgets/project_thin_badge.gif\n[openhub-url]:      https://www.openhub.net/p/21020\n[rtd-badge]:        https://readthedocs.org/projects/lh-style/badge/?version=latest\n[rtd-url]:          http://lh-style.readthedocs.io/en/latest/?badge=latest\n\nDiscl. This page is currently under heavy reorganization!\n\nTODO:\n\n- Complete the documentation\n- reorganize the sections to:\n    -[X] Intro\n    -[ ] Features\n        -[ ] Code formatting\n            -[x] rationale\n            -[ ] end-user side\n                -[x] `.editorconfig`\n                -[x] `.clang-format` (to be implemented)\n                -[x] `:UseStyle`\n                -[x] `:AddStyle`\n            -[ ] extending the style families\n        -[x] Naming policies\n    -[ ] API\n    -[ ] Contributing\n    -[X] Installation\n\n## Introduction\n\nlh-style is a vim script library that defines vim functions and commands that permit to specify stylistic preferences\nlike naming conventions, bracket formatting, etc.\n\nIn itself the only feature end-users can directly exploit is name converting based on the style name (`snake_case`,\n`UpperCamelCase`...) like Abolish plugin does, or on a given identifier kind (function, type, class, attribute...).\nCheck `:NameConvert` and `ConvertNames` -- sorry I wasn't inspired.\n\nThe main, and unique, feature is this plugin is to offer core functionalities, related to code-style, other plugins can\nexploit. Typical client plugins would be code generating plugins: wizards/snippet/abbreviation plugins, and refactoring\nplugins.\n\nThe style can be tuned through options. The options are meant to be tuned by end-users, and indirectly used by plugin\nmaintainers.  See [API section](doc/API.md) to see how you could exploit these options from your plugins.\n\nSnippets from [lh-cpp](http://github.com/LucHermitte/lh-cpp) and\n[mu-template](http://github.com/LucHermitte/mu-template), and refactorings from\n[lh-refactor](http://github.com/LucHermitte/lh-refactor) exploit the options offered by lh-style for specifying code\nstyle.\n\n\n\u003e Note: The library has been extracted from [lh-dev](http://github.com/LucHermitte/lh-dev) v2.x.x. in order to remove dependencies to [lh-tags](http://github.com/LucHermitte/lh-tags) and other plugins from template/snippet expander plugins like [mu-template](http://github.com/LucHermitte/mu-template). Yet, I've decided to reset the version counter to 1.0.0.\n\n---\n\n## Features\n\nlh-style permits to adjust the style of the code you generate along two axis:\n\n- you can define a [naming policy](doc/naming.rst)\n- you can define a [formatting style](doc/code-formatting.rst) regarding the placement of brackets, spaces, newlines, and\n  so on.\n\n---\n\n## Contributing\nContributions are welcomed. I've yet to write a proper CONTRIBUTING.md guide regarding copyright, licence and so on.\n\n---\n## Installation\n  * Requirements:\n      * Vim 7.+,\n      * [lh-vim-lib](http://github.com/LucHermitte/lh-vim-lib) (v5.3.1),\n      * [editorconfig-vim](https://github.com/editorconfig/editorconfig-vim) (optional).\n  * Install with [vim-addon-manager](https://github.com/MarcWeber/vim-addon-manager) any plugin that requires lh-style should be enough.\n  * With [vim-addon-manager](https://github.com/MarcWeber/vim-addon-manager), install lh-style (this is the preferred method because of the [dependencies](http://github.com/LucHermitte/lh-style/blob/master/addon-info.txt)).\n\n    ```vim\n    ActivateAddons lh-style\n    \" will also install editorconfig-vim\n    ```\n\n  * [vim-flavor](http://github.com/kana/vim-flavor) (which also supports\n    dependencies)\n\n    ```\n    flavor 'LucHermitte/lh-style'\n    \" will also install editorconfig-vim\n    ```\n\n  * Vundle/NeoBundle:\n\n    ```vim\n    Bundle 'LucHermitte/lh-vim-lib'\n    Bundle 'LucHermitte/lh-style'\n    \" Optional\n    Bundle 'editorconfig/editorconfig-vim'\n    ```\n\n  * Clone from the git repositories\n\n    ```bash\n    git clone git@github.com:LucHermitte/lh-vim-lib.git\n    git clone git@github.com:LucHermitte/lh-style.git\n    \" Optional\n    git clone git@github.com:editorconfig/editorconfig-vim'\n    ```\n","funding_links":[],"categories":["Vim Script"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLucHermitte%2Flh-style","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FLucHermitte%2Flh-style","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLucHermitte%2Flh-style/lists"}