Skip to content

Releases: chrisant996/clink

v1.1.10

17 Dec 19:06
Compare
Choose a tag to compare
v1.1.10 Pre-release
Pre-release

This is a release candidate build.
An official release build is likely to arrive before Christmas this year.

All of the features planned for the first official release from this fork have been completed, and backward compatibility with v0.4.8 seems to be working well.

This is a release candidate build, and seems to be working very well for me, even when copied into an existing Cmder\vendor\clink directory. Be sure to make a backup copy of your Cmder installation before copying v1.1.10 into an existing Cmder installation!

Highlights for v1.1.10:

  • Fixed #32 hooking ReadConsoleW on Windows 7.

v1.1.9

17 Dec 12:45
Compare
Choose a tag to compare
v1.1.9 Pre-release
Pre-release

This is a release candidate build.
An official release build is likely to arrive before Christmas this year.

All of the features planned for the first official release from this fork have been completed, and backward compatibility with v0.4.8 seems to be working well.

This is a release candidate build, and seems to be working very well for me, even when copied into an existing Cmder\vendor\clink directory. Be sure to make a backup copy of your Cmder installation before copying v1.1.9 into an existing Cmder installation!

Highlights for v1.1.9:

  • Added backward compatibility for clink.match_display_filter. The clink-completions/git.lua script uses it a lot, and that should all be working now.
  • settings.add adds a color setting when the type is string and the name starts with "color.".
  • settings.get now has an extra parameter to request the user friendly color name when getting a color setting.
  • Added clink.version_encoded variable with the Clink version number as MMmmmpppp (e.g. v1.1.9 is 10010009) to make it easy for scripts to check for feature availability.
  • The clink info command now shows Lua script paths as well.
  • Fixed backward compatibility for loading scripts from the profile directory (if clink.path isn't set, then load scripts from the DLL directory and the profile directory).
  • Fixed some color.input bleed through to other things (introduced in v1.1.5).
  • Fixed scroll commands (regression introduced by input line color in v1.1.5).
  • Fixed horizontally sorted match display and re-enabled the performance fix from v1.1.4.
  • Fixed wildcard evaluation with non-file and non-directory matches (e.g. a branch name origin/master accidentally didn't match or or *ma because of the /).
  • Fixed sort order of foo\ vs foo.bar\ when displaying matches or using the menu-complete family of commands.
  • Fixed potentially-missing trailing path separator when menu-complete completes a directory match (regression introduced by wildcard matching in v1.1.5).
  • Other obscure minor fixes.

v1.1.8

12 Dec 05:11
Compare
Choose a tag to compare
v1.1.8 Pre-release
Pre-release

This is a release candidate build.
An official release build is likely to arrive before Christmas this year.

All of the features planned for the first official release from this fork have been completed, and backward compatibility with v0.4.8 seems to be working well.

This is a release candidate build, and seems to be working very well for me, even when copied into an existing Cmder\vendor\clink directory. Be sure to make a backup copy of your Cmder installation before copying v1.1.8 into an existing Cmder installation!

Highlights for v1.1.8:

  • Fixed file match completions when an argmatcher only generates flag matches.
  • Fixed automatic inferring whether Readline should use filename completion and/or display rules.
  • Fixed backward compatibility for clink.find_files() and clink.find_dirs().
    • Ignore extra arguments after the first one (the performance improvement in v1.1.7 revealed that some scripts call clink.find_files() with extra invalid arguments; e.g. clink-completions/modules/matchers.lua).
    • Don't append a trailing path separator on directory names returned by these functions (the new os.globfiles() and os.globdirs() functions do, but the old clink.find_files() and clink.find_dirs() functions should not).
  • Fixed backward compatibility for coloring matches.

v1.1.7

09 Dec 23:07
Compare
Choose a tag to compare
v1.1.7 Pre-release
Pre-release

This should be a pretty solid Beta build.
An official release build is likely to arrive before Christmas this year.

All of the features planned for the first official release from this fork have been completed, and backward compatibility with v0.4.8 seems to be working well.

This is a Beta build, and seems to be working very well for me, even when copied into an existing Cmder\vendor\clink directory. Be sure to make a backup copy of your Cmder installation before copying v1.1.7 into an existing Cmder installation!

Highlights for v1.1.7:

  • Performance improvement when displaying matches: When enumerating files and dirs, the os.globfiles and os.globdirs functions have all the info about each file. Now they can return that info in a table. This frees the match display function from needing to do any further file system IO. The performance boost is noticeable.
  • Rewrote the color settings: the .fg and .bg sub-settings are gone, and the main setting now uses a more natural syntax (e.g. clink set color.input bright yellow or clink set color.modmark bright cyan on blue).
  • Added "cmd" match type for shell (CMD.EXE) command completions.
  • Added VT emulation for the reverse video SGR parameters.
  • Fixed tab completion for clink set <setting>, and also handle the new color setting syntax.
  • Fixed confusing behavior if multiple scripts try to add settings with the same name (now the first one succeeds and the rest report errors).

v1.1.6

08 Dec 00:16
Compare
Choose a tag to compare
v1.1.6 Pre-release
Pre-release

This should be a pretty solid Beta build.
An official release build is likely to arrive before Christmas this year.

All of the features planned for the first official release from this fork have been completed, and backward compatibility with v0.4.8 seems to be working well.

This is a Beta build, and seems to be working very well for me, even when copied into an existing Cmder\vendor\clink directory. Be sure to make a backup copy of your Cmder installation before copying v1.1.6 into an existing Cmder installation!

Highlights for v1.1.6:

  • Hooked up tilde completion in the cd, md, and rd command argmatchers.
  • Hooked up tilde completion with the exec.enable setting ("~\pro" matches "C:\Users\<myusername>\program.exe").

v1.1.5

05 Dec 13:04
Compare
Choose a tag to compare
v1.1.5 Pre-release
Pre-release

This should be a pretty solid Beta build.
An official release build is likely to arrive before Christmas this year.

All of the features planned for the first official release from this fork have been completed, and backward compatibility with v0.4.8 seems to be working well.

This is a Beta build, and seems to be working very well for me, even when copied into an existing Cmder\vendor\clink directory. Be sure to make a backup copy of your Cmder installation before copying v1.1.5 into an existing Cmder installation!

Highlights for v1.1.5:

  • The menu-complete family of commands now support matching ? and * wildcards when the match.wild setting is enabled.
  • Added colour.input and colour.modmark settings for coloring Readline's input line.
  • Added clink.upper() Lua function, and both clink.lower() and clink.upper() are properly UTF8 aware now.
  • Added clink-copy-word command that copies the word at the cursor to the clipboard.
  • Added clink.promptfilter setting to control whether to filter the prompt with Lua scripts.
  • Renamed terminal.emulate setting to terminal.emulation.
  • Improved executable file extension logic to consistently use %PATHEXT% (and efficiently).
  • Changed colour.hidden setting to not be set by default.
  • Fixed #28 Tab completion for "~" does not work.
  • Fixed #25 Unicode surrogate pairs (and emoji) input isn't working -- Microsoft Terminal renders the text correctly, but ConEmu and the default conhost still don't (and that isn't a Clink issue).
  • Fixed screen size bug in Readline on Windows.
  • Fixed the backwards values in the terminal.emulation setting.
  • Fixed .... so it works properly again.
  • Fixed case sensitive sorting of matches.
  • Fixed the exec.cwd Clink setting to default to true, so that the default behavior is consistent with how v0.4.x behaved.
  • Various other fixes; see CHANGES for more info.

v1.1.4

23 Nov 13:04
Compare
Choose a tag to compare
v1.1.4 Pre-release
Pre-release

Highlights:

  • v1.1.4 has broad backward compatibility for v0.4.x scripts.
  • Automatically detects when running inside ConEmu and disables Clink's Virtual Terminal emulation so that ConEmu gets to handle ANSI escape codes.
  • Suppresses adding a space after completing a flag match that ends with : or = (e.g. msbuild -maxCpuCount:).
  • Reports any errors while loading Lua scripts (previously it reported errors while running scripts, but not while loading them).
  • Fixed slow printing of possible matches.
  • Various other fixes; see CHANGES for more info.

This is a Beta build, and seems to be working very well for me, even when copied into an existing Cmder\vendor\clink directory. Be sure to make a backup copy of your Cmder installation before copying v1.1.4 into an existing Cmder installation!

v1.1.3 Alpha

14 Nov 13:45
Compare
Choose a tag to compare
v1.1.3 Alpha Pre-release
Pre-release
  • Fixed argmatcher lookup to be more strict, like in Clink 0.4.9 (match exact names, or name plus an extension from %PATHEXT%).
  • Backward compatibility:
    • Most things should work now.
    • Dropping the new Clink on top of the vendor\clink directory in Cmder seems to work -- but make a backup before you try this at home!
  • API changes:
    • Added log.info() function.
    • Added Clink version numbers in clink.version_major, etc.
    • Added _argmatcher:getwordbreakinfo() callback; removed _argmatcher:setprefixincluded() (it was a mess, and it was new to v1.x, so there's no compatibility concern with removing it).
    • Deprecated _argmatcher:setflagprefix(); now it happens automagically when using _argmatcher:addflags().
    • Introduced several deprecated functions to support backward compatibility.
  • Improvements to Lua debugger:
    • Added lua.traceback_on_error, lua.break_on_error, and lua.break_on_traceback settings to make debugging script errors easier.
    • Made pause() consistent about pausing in the caller (rather than sometimes inside the pause command itself).
    • The debugger automatically shows the stack trace when entering debug mode, and on every pause.
    • Show 3 lines of source context by default.
    • The help list is sorted now.
    • Fixed the set command in the debugger to behave as documented.

v1.1.2 Alpha

07 Nov 03:14
Compare
Choose a tag to compare
v1.1.2 Alpha Pre-release
Pre-release

This is the second alpha test version of clink from the chrisant996 fork.

I use it full time now. It should work well, with some caveats:

  • Don't use it to replace cmder's vendor clink. Lua script changes aren't fully compatible between v0.4.9 included with cmder versus this v1.1.2 version.
  • Lua scripts from v0.4.8 may or may not fully work with v1.1.2.
    • Prompt filtering and some simple argmatchers should work.
    • More sophisticated match generators won't be compatible; you'll need to edit them by hand.
    • Fortunately it's pretty easy to do! Unfortunately the related documentation is still not done.
  • This is an alpha version and likely has bugs.
  • See the issues page to view or report issues.

See the CHANGES file for more information about what's in this release.
The documentation is here, and is mostly updated.

v1.1.1 Alpha

27 Oct 11:20
Compare
Choose a tag to compare
v1.1.1 Alpha Pre-release
Pre-release

This is the first alpha test version of clink from the chrisant996 fork.

I use it full time now. It should work well, with some caveats:

  • Don't use it to replace cmder's vendor clink. Lua script changes aren't fully compatible between v0.4.9 included with cmder versus this v1.1.1 version.
  • The v1.0.0a1 alpha release from the mridgers original repo changed the match generator lua API and isn't compatible with v0.4.9 lua scripts. Unfortunately there is no documentation about the breaking changes to the lua API, and I'm still working on reverse engineering them to be able to document them accurately.
  • This is an alpha version and likely has bugs.
  • See the issues page to view or report issues.

See the CHANGES file for more information about what's in this release.
The documentation is here, but it's still very much a work in progress.