diff --git a/CHANGELOG.md b/CHANGELOG.md index 6dda2029..ff1a7092 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,108 @@ +## [0.8.0](https://github.com/Saghen/blink.cmp/compare/v0.7.6...v0.8.0) (2024-12-20) + +> [!IMPORTANT] +> `sources.completion.enabled_providers` has been moved to `sources.default` + +### Highlights + +* Cmdline completions! ([#323](https://github.com/Saghen/blink.cmp/issues/323)) +* Sorting now respects LSP hints more directly and doesn't sort alphabetically or by kind by default +* Sources v2 ([#465](https://github.com/Saghen/blink.cmp/issues/465)), adds support for async sources, timeouts, smarter fallbacks, adding sources at runtime and more! + +### Features + +* `extra_curl_args` option for prebuilt binaries download ([4c2e9e7](https://github.com/Saghen/blink.cmp/commit/4c2e9e74905502e3662fbd4af7b0d1b680971a04)), closes [#481](https://github.com/Saghen/blink.cmp/issues/481) +* add [ to show_on_x_blocked_trigger_characters ([#632](https://github.com/Saghen/blink.cmp/issues/632)) ([046a2af](https://github.com/Saghen/blink.cmp/commit/046a2af7580ba90cda9ffebbab3f1fe68ca1fa59)) +* add `{` to `show_on_x_blocked_trigger_characters` ([712bd30](https://github.com/Saghen/blink.cmp/commit/712bd301fc2158e6443144ff9c8ce01b8bf5a77b)), closes [#597](https://github.com/Saghen/blink.cmp/issues/597) +* add global transform_items and min_keyword_length ([e07cb27](https://github.com/Saghen/blink.cmp/commit/e07cb2756d5cc339dfa4bf4d9bc91b3779dbb743)), closes [#502](https://github.com/Saghen/blink.cmp/issues/502) [#504](https://github.com/Saghen/blink.cmp/issues/504) +* allow providers customize documentation rendering ([#650](https://github.com/Saghen/blink.cmp/issues/650)) ([bc94c75](https://github.com/Saghen/blink.cmp/commit/bc94c7508379b4828206759562162ce10af82b68)) +* cmdline completions ([#323](https://github.com/Saghen/blink.cmp/issues/323)) ([414d615](https://github.com/Saghen/blink.cmp/commit/414d615afcd9268522160dca5855fef8132f6e9e)) +* **cmdline:** allow configuring separate cmdline preset ([#532](https://github.com/Saghen/blink.cmp/issues/532)) ([13b3e57](https://github.com/Saghen/blink.cmp/commit/13b3e572e863bafe8fad3a97473271a2c9c700ce)) +* **config:** add partial types for each config option ([#549](https://github.com/Saghen/blink.cmp/issues/549)) ([c3bba64](https://github.com/Saghen/blink.cmp/commit/c3bba64d6c32adf4156e9d1273b14494838a3058)), closes [#427](https://github.com/Saghen/blink.cmp/issues/427) +* **config:** allow plugins to disable blink for some buffers ([#556](https://github.com/Saghen/blink.cmp/issues/556)) ([c8e86a3](https://github.com/Saghen/blink.cmp/commit/c8e86a3ed1eff07e2c1108779a720d3b4c6b86a7)) +* demote snippets from LSP explicitly ([b7c84ac](https://github.com/Saghen/blink.cmp/commit/b7c84ac4e17f3e160a626a9a89b609e02151a135)) +* disable keymaps when no cmdline sources are defined ([88ec601](https://github.com/Saghen/blink.cmp/commit/88ec6010ddbb249257d22265b8a96842f10c7142)) +* enable auto-brackets by default ([4d099ee](https://github.com/Saghen/blink.cmp/commit/4d099eeb72cfbd6496376fbb3265a1887a7c85fe)) +* enable treesiter highlight in menu per source ([#526](https://github.com/Saghen/blink.cmp/issues/526)) ([f99b03c](https://github.com/Saghen/blink.cmp/commit/f99b03c756b32680eea28e89f95e3c6987cc6c80)), closes [#438](https://github.com/Saghen/blink.cmp/issues/438) +* ensure nvim 0.10+ on startup ([30a4a52](https://github.com/Saghen/blink.cmp/commit/30a4a52d2362e3a272ae1cf28552852ae09b38a9)) +* expose `cmp.is_visible()` api ([2c826d9](https://github.com/Saghen/blink.cmp/commit/2c826d9167c7236f6079790bc35bcb024021e683)), closes [#535](https://github.com/Saghen/blink.cmp/issues/535) +* filter out LSP text items by default ([814392a](https://github.com/Saghen/blink.cmp/commit/814392a7164336fe5fbd6d4b97a69dce9eb6e4ef)) +* honor extended luasnip filetypes and cache each ([#625](https://github.com/Saghen/blink.cmp/issues/625)) ([c3ef922](https://github.com/Saghen/blink.cmp/commit/c3ef9223a69ededed611b3ef617bac5651b87833)) +* ignore when source defining trigger character returns no items ([684950d](https://github.com/Saghen/blink.cmp/commit/684950d3c4027e10a46f4bd478182839760b8fde)), closes [#597](https://github.com/Saghen/blink.cmp/issues/597) +* include ghost text in is_visible ([1006662](https://github.com/Saghen/blink.cmp/commit/1006662ad53c92adf9ae6f2d05cee38f613d08ff)) +* increase max length of buffer entry to 512 characters ([4ab0860](https://github.com/Saghen/blink.cmp/commit/4ab0860d361234e714d3beac2828d215f3f481e1)), closes [#478](https://github.com/Saghen/blink.cmp/issues/478) +* merge resolved item with item ([7a83acf](https://github.com/Saghen/blink.cmp/commit/7a83acf5b3cba829b07a05009866548c8e948ac0)), closes [#553](https://github.com/Saghen/blink.cmp/issues/553) +* reset whole luasnip cache on snippets added ([bff6c0f](https://github.com/Saghen/blink.cmp/commit/bff6c0f06bdc1114c5816b0f6b19ad6a7e15a638)) +* resolve help tags ourselves in cmdline ([02051bf](https://github.com/Saghen/blink.cmp/commit/02051bf2d9c8f116680659f091b510598a4aea38)), closes [#631](https://github.com/Saghen/blink.cmp/issues/631) +* rework cmdline source ([8f718cc](https://github.com/Saghen/blink.cmp/commit/8f718cc0d845348fd19c964aa6a82b06ea49c210)) +* rework download logic with checksums ([#629](https://github.com/Saghen/blink.cmp/issues/629)) ([53d22cb](https://github.com/Saghen/blink.cmp/commit/53d22cbac470b5ed8bfa2c3c195b82e03b501629)) +* set cursor position for additional text edits ([f0ab5e5](https://github.com/Saghen/blink.cmp/commit/f0ab5e504b160d4bc60f52a02e8d2453052420d3)), closes [#223](https://github.com/Saghen/blink.cmp/issues/223) +* set path to fallback to buffer by default ([c9594d5](https://github.com/Saghen/blink.cmp/commit/c9594d5682ca421ee1bcb4284329f2d7dde71b50)) +* sort on score and sort_text only by default, disable frecency and proximity on no keyword ([76230d5](https://github.com/Saghen/blink.cmp/commit/76230d5a4a02cd1db8dec33b6eed0b4bc2dcbc53)), closes [#570](https://github.com/Saghen/blink.cmp/issues/570) +* sources v2 ([#465](https://github.com/Saghen/blink.cmp/issues/465)) ([533608f](https://github.com/Saghen/blink.cmp/commit/533608f56b912aba98250a3c1501ee687d7cf5eb)), closes [#386](https://github.com/Saghen/blink.cmp/issues/386) [#219](https://github.com/Saghen/blink.cmp/issues/219) [#328](https://github.com/Saghen/blink.cmp/issues/328) [#331](https://github.com/Saghen/blink.cmp/issues/331) [#312](https://github.com/Saghen/blink.cmp/issues/312) [#454](https://github.com/Saghen/blink.cmp/issues/454) [#444](https://github.com/Saghen/blink.cmp/issues/444) [#372](https://github.com/Saghen/blink.cmp/issues/372) [#475](https://github.com/Saghen/blink.cmp/issues/475) +* support callback on `cmp.accept()` ([be3e9cf](https://github.com/Saghen/blink.cmp/commit/be3e9cf435588b3ff4de7abcb04ec90c812f1871)) +* support configuring prefetch_on_insert, disable by default ([9d4286f](https://github.com/Saghen/blink.cmp/commit/9d4286f9a410af788ee8406ec45e268aa4b23c9f)) +* **trigger:** prefetch on InsertEnter ([#507](https://github.com/Saghen/blink.cmp/issues/507)) ([7e98665](https://github.com/Saghen/blink.cmp/commit/7e9866529768065e0e191e436fc60220bef5185e)) +* use block icon for tailwind items ([#544](https://github.com/Saghen/blink.cmp/issues/544)) ([1502c75](https://github.com/Saghen/blink.cmp/commit/1502c754b9c241eecab1393d74a4eb6ccdfe0e64)) +* use number[] for ui_cmdline_pos ([80a5198](https://github.com/Saghen/blink.cmp/commit/80a5198a357ddcee97d94ac2be9a3590cd5a63f5)) +* validate config doesn't have erroneous fields ([834163e](https://github.com/Saghen/blink.cmp/commit/834163eebdfdb1ca2a4a54b1e8d4c8d2c8184c12)), closes [#501](https://github.com/Saghen/blink.cmp/issues/501) +* **window:** add `filetype` configuration ([#499](https://github.com/Saghen/blink.cmp/issues/499)) ([eb6213b](https://github.com/Saghen/blink.cmp/commit/eb6213b974e604f9ef8560e6c2379d757e81954d)) + +### Bug Fixes + +* **accept:** schecule `fuzzy.access` using uv.new_work ([#522](https://github.com/Saghen/blink.cmp/issues/522)) ([f66f19c](https://github.com/Saghen/blink.cmp/commit/f66f19c864e68ee5e2fb452648b7f6995ddadaa3)) +* account for cmdheight in cmdline_position (thanks [@lnrds](https://github.com/lnrds)!) ([6b67d16](https://github.com/Saghen/blink.cmp/commit/6b67d16036b780f49e44d3f5de207d3c7301f3e4)), closes [#538](https://github.com/Saghen/blink.cmp/issues/538) +* add '=' to cmdline trigger characters ([fb03ca7](https://github.com/Saghen/blink.cmp/commit/fb03ca7dd41fc5c234bf5ec089568f4eae584efb)), closes [#541](https://github.com/Saghen/blink.cmp/issues/541) +* add back, skip undo point for snippet kinds ([1563079](https://github.com/Saghen/blink.cmp/commit/15630796fc8c3c45c345d2fe73de6b3a1dc9bb11)) +* add gcc to flake.nix ([380bccf](https://github.com/Saghen/blink.cmp/commit/380bccf6eb1e3135fbab986f54aabd9147ff5977)), closes [#581](https://github.com/Saghen/blink.cmp/issues/581) +* add icon gap on ellipsis, remove references to renderer ([793b6ac](https://github.com/Saghen/blink.cmp/commit/793b6ac94efe754d31299b7de2e953244fe0d4ab)) +* add mode to context type ([f1afb8c](https://github.com/Saghen/blink.cmp/commit/f1afb8c77686ba6f5159dcb7591bf21efcc5f410)) +* allow 'none' preset for keymaps in validation ([bf1fd6a](https://github.com/Saghen/blink.cmp/commit/bf1fd6a690882a9bf5e07ded70fb3bba5d8a5bdf)) +* always get latest keyword ([13853d5](https://github.com/Saghen/blink.cmp/commit/13853d5c9cf827fc051fa7adebe701cce2ecd22f)), closes [#539](https://github.com/Saghen/blink.cmp/issues/539) +* check raw key for space in cmdline_events ([7be970e](https://github.com/Saghen/blink.cmp/commit/7be970e278334482710e1f37936c8480b522a751)) +* check that scrollbar is not nil ([790369b](https://github.com/Saghen/blink.cmp/commit/790369bb9998d1f9a01f67378e407622b492cf69)), closes [#525](https://github.com/Saghen/blink.cmp/issues/525) +* clear LuaSnip cache on snippet updates ([#664](https://github.com/Saghen/blink.cmp/issues/664)) ([b1b58e7](https://github.com/Saghen/blink.cmp/commit/b1b58e7b9895f43e64891346f76238d697aaadb9)) +* cmdline event suppression and scrollbar rendering ([e3b3fde](https://github.com/Saghen/blink.cmp/commit/e3b3fdedbc14afe7361228f7d2c8ce84cee272a6)), closes [#523](https://github.com/Saghen/blink.cmp/issues/523) +* cmdline events firing cursor moved when changed ([97989c8](https://github.com/Saghen/blink.cmp/commit/97989c8ee257239566c4d08264b080703ccc923b)), closes [#520](https://github.com/Saghen/blink.cmp/issues/520) +* cmdline including current arg prefix ([49bff2b](https://github.com/Saghen/blink.cmp/commit/49bff2bf23f15ae31a245e9ffd1b79a9f95bed61)), closes [#609](https://github.com/Saghen/blink.cmp/issues/609) +* **cmdline:** not delete buf when hide scrollbar cause it seems not necessary ([#591](https://github.com/Saghen/blink.cmp/issues/591)) ([0046d0c](https://github.com/Saghen/blink.cmp/commit/0046d0cc3e9bdd2dc36c2ec7a79aee32e76afa73)) +* completion auto_insert replace incorrect range ([#621](https://github.com/Saghen/blink.cmp/issues/621)) ([5926869](https://github.com/Saghen/blink.cmp/commit/59268691492bc1abfb0ed91a1cb3ac9fcc01650c)), closes [#460](https://github.com/Saghen/blink.cmp/issues/460) +* **completion:** disable in prompt buffers ([#574](https://github.com/Saghen/blink.cmp/issues/574)) ([1097d4e](https://github.com/Saghen/blink.cmp/commit/1097d4e24909c5b1a15b1ac6907ec26f78f5d22c)) +* consider functions as snippet commands ([d065c87](https://github.com/Saghen/blink.cmp/commit/d065c87b59a301065f863134d3a8271bdff6f630)) +* disable ghost text in command mode ([ad17735](https://github.com/Saghen/blink.cmp/commit/ad17735a6ddb4255cad6f0af574150761baf5ee4)), closes [#524](https://github.com/Saghen/blink.cmp/issues/524) +* don't block trigger characters in command mode ([0a729ae](https://github.com/Saghen/blink.cmp/commit/0a729ae1c4ab48695fb327161768720a82ed698f)), closes [#541](https://github.com/Saghen/blink.cmp/issues/541) +* don't create undo point when kind equals snippet ([343e89d](https://github.com/Saghen/blink.cmp/commit/343e89d39deb14b5cc6de844ce069ae3d98d7403)) +* don't duplicate `.` when completing hidden files in path source ([#557](https://github.com/Saghen/blink.cmp/issues/557)) ([714e2b5](https://github.com/Saghen/blink.cmp/commit/714e2b5f3fdcabd6ad31f98c71f930b260644c72)) +* don't show when moving on trigger character, hide on no items after trigger ([7a04612](https://github.com/Saghen/blink.cmp/commit/7a046122de512db8194dae130d691526b5031456)), closes [#545](https://github.com/Saghen/blink.cmp/issues/545) +* duplicate snippets in luasnip when autosnippets are enabled ([12ffc10](https://github.com/Saghen/blink.cmp/commit/12ffc10c6283ac148a89d72b5540d819fc80e2ff)) +* fire cursor moved when jumping between tab stops in a snippet ([1e4808e](https://github.com/Saghen/blink.cmp/commit/1e4808e3429bc060fa538728115edcaebbfc5c35)), closes [#545](https://github.com/Saghen/blink.cmp/issues/545) +* **fuzzy:** initialize db only once ([7868d47](https://github.com/Saghen/blink.cmp/commit/7868d477018f73bff6ca60757c1171223084bd12)) +* **ghost_text:** correctly disable on cmdline ([54d1a98](https://github.com/Saghen/blink.cmp/commit/54d1a980595e056e7be45a10d1cc8c34159f6d74)) +* ignore snippets that only contain text ([284dd37](https://github.com/Saghen/blink.cmp/commit/284dd37f9bbc632f8281d6361e877db5b45e6ff0)), closes [#624](https://github.com/Saghen/blink.cmp/issues/624) +* ignore sort_text if either are nil ([3ba583c](https://github.com/Saghen/blink.cmp/commit/3ba583cedb321291f3145b6e85039ed315b06b17)), closes [#595](https://github.com/Saghen/blink.cmp/issues/595) +* include space for cmdline events ([38b9c4f](https://github.com/Saghen/blink.cmp/commit/38b9c4f36a815fd3d9094e6d5c236a83dbb68ff9)) +* incorrect bounds when removing word under cursor in buffer sources ([d682165](https://github.com/Saghen/blink.cmp/commit/d6821651b145c730ca59faee638947a067243b24)), closes [#560](https://github.com/Saghen/blink.cmp/issues/560) +* **keymap:** incorrect merging strategy ([f88bd66](https://github.com/Saghen/blink.cmp/commit/f88bd66d88e9248276996c0f5b5c2b7fa5aa851f)), closes [#599](https://github.com/Saghen/blink.cmp/issues/599) +* **keymap:** normalize mapping capitalization ([#599](https://github.com/Saghen/blink.cmp/issues/599)) ([596a7ab](https://github.com/Saghen/blink.cmp/commit/596a7ab89cca7cdcddc0422e8f5a449042b7ff80)) +* **luasnip:** add global_snippets with ft="all" ([#546](https://github.com/Saghen/blink.cmp/issues/546)) ([9f1fb75](https://github.com/Saghen/blink.cmp/commit/9f1fb75b3ec282253ce6392360a584d0234904d0)) +* on_key for cmdline events ([89479f3](https://github.com/Saghen/blink.cmp/commit/89479f3f4c9096330a321a6cc438f5bc3f1e596b)), closes [#534](https://github.com/Saghen/blink.cmp/issues/534) +* prefetch first item when selection == 'manual' | 'auto_insert' ([a8222cf](https://github.com/Saghen/blink.cmp/commit/a8222cf1ccbf24818ae926f94779267659809ab0)), closes [#627](https://github.com/Saghen/blink.cmp/issues/627) +* **provider:** add missing validations ([#516](https://github.com/Saghen/blink.cmp/issues/516)) ([1eda2b9](https://github.com/Saghen/blink.cmp/commit/1eda2b989213b54a66589b44236bfcb427c9a5fe)) +* **provider:** restore path completion source ([#506](https://github.com/Saghen/blink.cmp/issues/506)) ([b2d13ba](https://github.com/Saghen/blink.cmp/commit/b2d13ba7a0aa6f53d3b0db2cd5ede7827ec72f5b)), closes [#465](https://github.com/Saghen/blink.cmp/issues/465) +* re-enable scrollbar on menu ([d48bb17](https://github.com/Saghen/blink.cmp/commit/d48bb176ae3a8d2f3fa4240f9098b94f1f0947ca)), closes [#519](https://github.com/Saghen/blink.cmp/issues/519) +* remove vim.notify on snippet only containing text ([59ef8a4](https://github.com/Saghen/blink.cmp/commit/59ef8a45eeafef35d8196473d86acbe515116027)) +* respect opts.index when checking if cmp.accept can be run ([ea12c51](https://github.com/Saghen/blink.cmp/commit/ea12c516ef43f14683903064bad7612d6e6a6a02)), closes [#633](https://github.com/Saghen/blink.cmp/issues/633) +* revert enabled logic or ([cfd1b7f](https://github.com/Saghen/blink.cmp/commit/cfd1b7f1b24ed77049d978c0a8813097a6e3acc7)), closes [#574](https://github.com/Saghen/blink.cmp/issues/574) [#577](https://github.com/Saghen/blink.cmp/issues/577) +* run callback when LSP client returns nil ([f9b72e3](https://github.com/Saghen/blink.cmp/commit/f9b72e3c1a1b61984b9128fb3e024fdf8a3d07fa)), closes [#543](https://github.com/Saghen/blink.cmp/issues/543) +* schedule get_bufnrs for buffer source ([342c5ed](https://github.com/Saghen/blink.cmp/commit/342c5ed6336d2850c59937747daccb4e880319e0)) +* signature help window documentation rendering ([264aea4](https://github.com/Saghen/blink.cmp/commit/264aea42fb2de42a377ae573141cfb61ab849f47)) +* sort by sortText/label again ([30705ab](https://github.com/Saghen/blink.cmp/commit/30705aba472b5c67b3a34d84f40d36add75b4c44)), closes [#444](https://github.com/Saghen/blink.cmp/issues/444) +* **sources:** set default item kind to `Property` ([#505](https://github.com/Saghen/blink.cmp/issues/505)) ([08ff824](https://github.com/Saghen/blink.cmp/commit/08ff824de4b76d314f7871e0345f7990b3faccb4)) +* **tailwind:** color rendering ([#601](https://github.com/Saghen/blink.cmp/issues/601)) ([02528e8](https://github.com/Saghen/blink.cmp/commit/02528e8ccbe4d0cef5e1df52eda419c5ed557ad3)) +* uncomment event emitter autocmd ([e1cf25f](https://github.com/Saghen/blink.cmp/commit/e1cf25fea50593993777865b3cca1db556a4a90b)) +* use luasnip get_snippet_filetypes, remove global_snippets option ([c0b5ae9](https://github.com/Saghen/blink.cmp/commit/c0b5ae940d7516eb07ca499f5a46445f216c46d3)), closes [#603](https://github.com/Saghen/blink.cmp/issues/603) +* use transform_items on resolve ([85176f7](https://github.com/Saghen/blink.cmp/commit/85176f7e3264b8ac3b571db12191416a4dce0303)), closes [#614](https://github.com/Saghen/blink.cmp/issues/614) + ## [0.7.5](https://github.com/Saghen/blink.cmp/compare/v0.7.4...v0.7.5) (2024-12-10) ### Features diff --git a/README.md b/README.md index 7f3f9082..8c20ae37 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ > The configuration was recently reworked, please read the [configuration section](#configuration) for the new schema > [!NOTE] -> If you're on a release tag, ensure you're viewing the README for [the latest release](https://github.com/Saghen/blink.cmp/tree/v0.7.5) +> If you're on a release tag, ensure you're viewing the README for [the latest release](https://github.com/Saghen/blink.cmp/tree/v0.8.0) # Blink Completion (blink.cmp)