Skip to content

Releases: chrisant996/clink

v1.5.15

19 Nov 01:20
Compare
Choose a tag to compare
  • Added localized descriptions for flag completions in cmd, cd, and rd.
  • Added partial ability to detect light/dark console color themes:
    • Added console.getcolortable() which returns a table with the console's current 16 predefined colors. When possible, the table includes a field indicating whether the current console color theme is a light or dark theme.
    • At this time, the colors can be accurately retrieved only when using the legacy conhost terminal. When using Windows Terminal, ConEmu, or other ConPty-based terminals there is currently no way to accurately retrieve the colors. Once the Terminal#10639 issue is fixed then Clink will also detect the background color in these terminal programs.
    • Changed the default for color.suggestion so that it attempts to detect light themes (bright background colors) when possible, and it attempts automatically choose a default color for suggestions that is faint but has sufficient contrast to be readable.
  • Fixed the onlink callback function in :addflags() so that the arg_index parameter is correctly 0 instead of 1.
  • Fixed the upper bound line number for Lua console line API functions.
  • Fixed console.getlinetext() when emoji are present.

v1.5.14

15 Nov 03:15
Compare
Choose a tag to compare
  • Added a visible usage hint for Auto-Suggestions to help make the feature more discoverable and usable. The usage hint can be hidden by turning off the autosuggest.hint setting.
  • Added a callback function that can be assigned to an argument position by including onadvance=your_callback_function in the table given to :addarg() (see Responding to Arguments in Argmatchers for more information).
  • Fixed displaying match descriptions containing embedded color codes.
  • Fixed finding argmatchers for doskey alias names containing quotes.
  • Fixed parsing the input line when a doskey alias references a command with an argmatcher that uses the :chaincommand() function (e.g. an alias foo=sudo dir $* with an argmatcher like clink.argmatcher("sudo"):chaincommand() so that completions and input line coloring work properly for the rest of the input line).
  • Fixed the exec.commands setting with an argmatcher that uses the :chaincommand() function.
  • Fixed _argmatcher:setclassifier() so the custom classifier is called for flags as well as for arguments.

v1.5.13

06 Nov 02:14
Compare
Choose a tag to compare
  • Added clink.onhistory() to register a function to be called when the input line has been accepted and is about to be added to history (and optionally cancel adding it).
  • Fixed history delete with a negative number so it indexes backwards from the end, as advertised.
  • Fixed calling clink.refilterprompt() from a coroutine, and related fixes to ensure various Lua functions coexist properly with coroutines.
  • Fixed #520; add a link to the Releases page in the updater dialog box.

v1.5.12

28 Oct 21:09
Compare
Choose a tag to compare
  • Fixed updating the input line display after using clink-popup-history or win-popup-history (regression introduced in v1.5.3; the fix in v1.5.4 was incomplete).
  • Fixed console.checkinput() so it doesn't eat whatever pending input it detects.
  • Fixed the updater to be more specific about what PowerShell cmdlet it invokes, in case a module replaces the built-in Expand-Archive cmdlet.

v1.5.11

19 Oct 03:35
Compare
Choose a tag to compare
  • Fixed prompt filters and other Lua coroutines when color.executable and color.unrecognized are both empty (regression introduced in v1.5.10).

v1.5.10

16 Oct 07:07
Compare
Choose a tag to compare
  • Changed clink update to consider "up-to-date" as a successful case.
  • Fixed a case where the completion auto-suggest strategy could be temporarily prevented from providing a suggestion (regression introduced in v1.4.22).
  • Fixed leaked memory when showing history expansion previews.
  • Fixed #511; ! doesn't need to be treated as a word break character.
  • Internal changes.

v1.5.9

09 Oct 16:12
Compare
Choose a tag to compare
  • Added default key binding Alt-Ctrl-Up for clink-popup-history.
  • Fixed the match.max_rows setting to control the number of rows of items (instead of the total number of rows including description rows).
  • Fixed #509; crash when using clink-popup-history if history.time_stamp is off (regression introduced in v1.5.7).

v1.5.8

03 Oct 01:54
Compare
Choose a tag to compare
  • Fixed #504; the clink.autoupdate setting behaves like auto even when it's set to check (regression introduced in v1.5.5).
  • Fixed #503; the updater could hang if any additional CMD instances were started while the "Clink Update" prompt window was open (regression introduced in v1.5.5).

v1.5.7

01 Oct 08:47
Compare
Choose a tag to compare
  • Added vertical scrollbars in clink-select-complete and in popup lists.
  • Added terminal.scrollbars setting which can disable the vertical scrollbars (e.g. according to preference, or if a terminal or font is incompatible with extended Unicode box drawing characters).
  • Added clink set --info flag.
  • Added language-related diagnostic info in clink info.
  • Added minor optimization when displaying prompt text.
  • Added enhancements in the pager used when displaying help or matches; Tab or Space or Y print the next page, D prints the next half-page, Enter prints the next line, N or Q stop printing, and ? shows the available keys in the -- More -- pager prompt (the enhancements were accidentally lost in v1.1.1-alpha).
  • Horizontal scrolling in popup lists works for all columns, if text doesn't fit in the column.
  • Fixed crash in rl.getmatchcolor(match, type); when the optional type parameter was passed in, the API could crash.
  • Fixed #498; when autosuggest.enable is False, cycling or searching through history and then pressing Right does nothing (regression introduced in v1.5.4).
  • Internal improvements.

v1.5.6

21 Sep 05:45
Compare
Choose a tag to compare
  • Added os.getpushddepth(), which works when %PROMPT% contains exactly one $+.
  • The clink-popup-history and win-history-list commands show timestamps when history.time_stamp is set to show.
  • Fixed os.geterrorlevel() when cmd /u was used.
  • Fixed word break parsing in the input line when certain Unicode characters are present.
  • Fixed Unicode string conversions to disallow translating to "similar" characters (which could be problematic in filenames).
  • Fixed a crash in rl.getkeybindings() if it's called by a Lua script running inside clink set.
  • Fixed Lua debugger input if a script error occurs inside clink set.
  • Fixed a width quirk in clink-select-complete where typing to narrow the list to a single item accidentally made the column width at least 3 characters, even if the item was only 1 or 2 characters width.
  • Fixed clink history to handle escape codes embedded in the history.time_format setting.
  • Fixed a potential crash after using remove-history at the beginning of the history list.
  • Fixed #494; Lua error when using unicode.fromcodepage() (reported and fixed before the bug was published).
  • Fixed #493; clink-select-complete displays the selected item incorrectly if both colored-stats and colored-completion-prefix are off (regression introduced in v1.5.5).