Skip to content

v1.1.20

Pre-release
Pre-release
Compare
Choose a tag to compare
@chrisant996 chrisant996 released this 11 Jan 18:28
· 4464 commits to master since this release

This is a release candidate build.

This release candidate build 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 Clink into an existing Cmder installation!

Highlights for v1.1.20:

  • Now you can bind Lua functions to keys! Added new rl_buffer type that gets passed to the Lua function.
  • Added a group of console Lua APIs intended mainly for use by Lua function key bindings (e.g. console.scroll()).
  • Added string.equalsi() function that performs a case insensitive UTF8 comparison of two strings.
  • Added string.matchlen() function that compares two UTF8 strings and returns how many characters match at the beginning, or -1 if the entire strings match. It respects the match.ignore_case and match.ignore_accents settings.
  • Added path.toparent() function that adjust the input string by moving up one directory level.
  • Added clink.onendedit() so scripts can register a callback function to run when editing finishes (e.g. Enter is pressed). If desired, the function can even change the input text. This is very powerful, and should be used carefully.
  • Changed os.getbatterystatus() to return a table with the battery status details, rather than four separate return values.
  • Fixed the doskey.enhanced setting to not expand doskey aliases when preceded by a space. However, a doskey alias after a & or | command separator needs to be preceded by two spaces to avoid expanding it. That's so alias & alias expands both, and alias & alias expands neither; while the rules are more complicated to explain, they make more sense visually.
  • Fixed environment variable completion (regression introduced in v1.1.19).
  • Fixed Cmder startup (regression introduced in v1.1.17). Cmder expects to be able to replace Clink v0.4.9's clink.lua file, but there is no such thing anymore in newer versions of Clink. To be properly backwardly compatible with Clink v0.4.9 requires loading clink.lua (if it exists) from the first script directory listed by clink info, and ignoring clink.lua files in all other script directories.