{"id":18109308,"url":"https://github.com/jessepav/vim-camelcomplete","last_synced_at":"2025-03-29T15:30:48.587Z","repository":{"id":65636306,"uuid":"587926663","full_name":"jessepav/vim-camelcomplete","owner":"jessepav","description":"Vim 9 plugin to complete CamelCase, snake_case and dash-words identifier abbreviations.","archived":false,"fork":false,"pushed_at":"2024-06-24T05:49:10.000Z","size":32,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-23T23:39:05.992Z","etag":null,"topics":["completion","vim","vim-plugin","vim9","vim9-plugin","vim9script"],"latest_commit_sha":null,"homepage":"","language":"Vim Script","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/jessepav.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-01-11T22:58:32.000Z","updated_at":"2024-06-24T05:49:13.000Z","dependencies_parsed_at":"2024-06-24T06:47:39.042Z","dependency_job_id":"eeacf2e9-407f-4913-aeba-2dee66ea530e","html_url":"https://github.com/jessepav/vim-camelcomplete","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jessepav%2Fvim-camelcomplete","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jessepav%2Fvim-camelcomplete/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jessepav%2Fvim-camelcomplete/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jessepav%2Fvim-camelcomplete/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jessepav","download_url":"https://codeload.github.com/jessepav/vim-camelcomplete/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246204523,"owners_count":20740326,"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":["completion","vim","vim-plugin","vim9","vim9-plugin","vim9script"],"created_at":"2024-11-01T00:01:41.864Z","updated_at":"2025-03-29T15:30:48.277Z","avatar_url":"https://github.com/jessepav.png","language":"Vim Script","funding_links":[],"categories":["Completion"],"sub_categories":[],"readme":"# vim-camelcomplete\n\nVim 9 plugin to complete `CamelCase`, `snake_case`, and `dash-words` identifier\nabbreviations.\n\n## Introduction\n\nThis plugin provides a lightweight insert-mode completion function that allows you to\nexpand `CamelCase`, `snake_case`, and `dash-words` abbreviations into their full\nidentifiers. It is purely textual, and doesn't require setting up language servers or\ndefining a project structure; rather, it operates like `\u003cC-P\u003e/\u003cC-N\u003e`, but on identifier\nabbreviations rather than prefixes.\n\nFor instance,\n\n| Identifier       | Abbreviation |\n| :--------------- | :----------- |\n| `setForwardMark` | `sFM`        |\n| `open_last_file` | `olf`        |\n| `channel34Types` | `c3T`        |\n| `margin-top`     | `mt`         |\n\nAs an example (with \\* representing the cursor position),\n\n```\n  obj.sFM* --\u003e (invoke camelcomplete) --\u003e obj.setForwardMark*\n```\n\n**Note**: for performance, this plugin is written in `vim9script` using the\n`matchbufline()` and `matchstrlist()` functions introduced in Vim `v9.1.0009`, and thus\nyou'll need a sufficiently new version of Vim to use it.\n\n## Installation\n\nUse your favorite plugin manager.\n\nFor instace, with [vim-plug](https://github.com/junegunn/vim-plug):\n\n```vim\nPlug 'jessepav/vim-camelcomplete'\n```\n\n## Usage\n\nQuick Start:\n\nIn your `.vimrc`, add these lines\n\n```\nCamelCompleteInstall\ninoremap \u003cC-X\u003e\u003cC-A\u003e    \u003cCmd\u003eCamelCompleteRefreshBuffers 3\u003cCR\u003e\u003cC-X\u003e\u003cC-U\u003e\n```\n\nThis will set `'completefunc'` to a script‑local completion function in\n`camelcomplete.vim`, and set up `\u003cC‑X\u003e\u003cC‑A\u003e` to scan all listed buffers and complete the\nabbreviation before the cursor. You can, of course, use any `{lhs}` mapping you'd like. I\nprefer `\u003cM‑/\u003e`, since it's only one keystroke, but some terminals won't register `\u003cM‑/\u003e`\nproperly.\n\n## More Information\n\nSee [`doc/camelcomplete.txt`](https://github.com/jessepav/vim-camelcomplete/blob/master/doc/camelcomplete.txt)\nfor more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjessepav%2Fvim-camelcomplete","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjessepav%2Fvim-camelcomplete","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjessepav%2Fvim-camelcomplete/lists"}