{"id":13898579,"url":"https://github.com/hrsh7th/vim-compete","last_synced_at":"2025-07-17T15:34:03.028Z","repository":{"id":142229014,"uuid":"245939735","full_name":"hrsh7th/vim-compete","owner":"hrsh7th","description":"Auto completion plugin for vim/nvim that supports fuzzy match.","archived":true,"fork":false,"pushed_at":"2020-06-02T13:47:02.000Z","size":95,"stargazers_count":9,"open_issues_count":4,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-25T04:37:05.054Z","etag":null,"topics":["vim","vim-plugin"],"latest_commit_sha":null,"homepage":"","language":"Vim script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hrsh7th.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2020-03-09T03:57:03.000Z","updated_at":"2024-07-19T15:25:28.000Z","dependencies_parsed_at":"2023-07-25T15:30:41.443Z","dependency_job_id":null,"html_url":"https://github.com/hrsh7th/vim-compete","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hrsh7th/vim-compete","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrsh7th%2Fvim-compete","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrsh7th%2Fvim-compete/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrsh7th%2Fvim-compete/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrsh7th%2Fvim-compete/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hrsh7th","download_url":"https://codeload.github.com/hrsh7th/vim-compete/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrsh7th%2Fvim-compete/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265622937,"owners_count":23800068,"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","vim-plugin"],"created_at":"2024-08-06T18:04:21.533Z","updated_at":"2025-07-17T15:34:02.763Z","avatar_url":"https://github.com/hrsh7th.png","language":"Vim script","funding_links":[],"categories":["Vim Script"],"sub_categories":[],"readme":"# vim-compete\n\nauto completion engine.\n\n\n# status\n\nWorks but not documented.\n\n\n# install\n\n### vim-plug\n```viml\nPlug 'hrsh7th/vim-compete'\n```\n\n# mapping\n\n#### `\u003cPlug\u003e(compete-force-refresh)`\n\nInvoke completion ignoring `g: compete_min_length`.\n\nYou can mapping as following to confirm or cancel completion with `\u003cCR\u003e`/`\u003cEsc\u003e`.\n\n```viml\nimap \u003cexpr\u003e\u003cCR\u003e  pumvisible() ? compete#close({ 'confirm': v:true })  : \"\\\u003cCR\u003e\"\nimap \u003cexpr\u003e\u003cEsc\u003e pumvisible() ? compete#close({ 'confirm': v:false }) : \"\\\u003cEsc\u003e\"\n\n\" or\n\nimap \u003cexpr\u003e\u003cCR\u003e  complete_info(['selected']).selected != -1 ? compete#close({ 'confirm': v:true })  : \"\\\u003cCR\u003e\"\nimap \u003cexpr\u003e\u003cEsc\u003e complete_info(['selected']).selected != -1 ? compete#close({ 'confirm': v:false }) : \"\\\u003cEsc\u003e\"\n```\n\nIf you using pear-tree or lexima.vim, You should care about it.\n\n```viml\n\" For lexima.vim\nimap \u003cexpr\u003e\u003cCR\u003e pumvisible() ? compete#close({ 'confirm': v:true }) : lexima#expand('\u003cLT\u003eCR\u003e', 'i')\n\n\" For pear-tree\nimap \u003cexpr\u003e\u003cCR\u003e pumvisible() ? compete#close({ 'confirm': v:true }) : \"\u003cPlug\u003e(PearTreeExpand)\"\n```\n\n\n# config\n\n### `g:compete_enable = v:true`\n\nType: boolean\n\nYou can disable compete via this value.\n\n\n### `g:compete_completeopt= 'menu,menuone,noinsert'`\n\nType: string\n\nYou can choose `completeopt` option value\n\n\n### `g:compete_throttle_time = 200`\n\nType: number\n\nYou can specify delay time to filter items.\n\n\n### `g:compete_source_wait_time = 200`\n\nType: number\n\nYou can specify delay time to wait incomplete sources.\n\n\n### `g:compete_linewise_chars = [',', '{']`\n\nType: string[]\n\nYou can specify trigger chars thats will be searched in the current or above lines.\n\n\n### `g:compete_fuzzy = v:true`\n\nType: boolean\n\nYou can disable fuzzy matching via this value.\n\n\n### `g:compete_patterns = { ... }`\n\nType: dict\n\nYou can specify keyword patterns per filetype.\nThe key is filetype and value is vim-regex.\n\n\n### `g:compete_min_length = 1`\n\nType: number\n\nYou can specify the length to starting auto-completion.\n\n\n# built-in source\n\n### buffer\n\nPriority: -1\n\nKeyword completion.\n\n\n##### `g:compete_source_buffer_cache_range = 1000`\n\nType: number\n\nYou can specify range to cache keywordss.\nIf you specify 100, `compete` will cache lines thats in the range of `line('.') - 100` ~ `line('.') + 100`.\n\n\n### file\n\nPriority: 100\n\nFilepath completion.\n\n\n# feature\n\n### Well handling multi start position\n- Multi sources support is easy but does not easy to support multi start positions\n    - `compete` supports `complete start position` `word pattern position` and `trigger character position`.\n\n### Simple fuzzy matching\n- `abcde` -\u003e `^\\Va\\m.\\{-}\\Vb\\m.\\{-}\\Vc\\m.\\{-}\\Vd\\m.\\{-}\\Ve`\n\n### Simple frequency sorting\n- Sort frequently selected items.\n\n\n# TODO\n- Use golang for filter/sort.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrsh7th%2Fvim-compete","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhrsh7th%2Fvim-compete","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrsh7th%2Fvim-compete/lists"}