Clink

詳細情報

タイトル Clink
URL https://github.com/chrisant996/clink
バージョン ver 1.7.5
更新日 2024/11/11
追加日 2024/04/05
種別 フリーソフト
説明 cmd.exeの機能を拡張することができるユーティリティ。

レビュー

ClinkはWindowsのネイティブシェルであるcmd.exeに、保管、履歴、行編集機能などを追加するユーティリティ。

これらの機能はLinuxディストリビューションの標準シェル「Bash」でも使われているGNU Readlinによって提供されている。

以下のような機能を持つ:

  • 自動サジェスチョン: 履歴、ファイル、補完に基づき、入力中にサジェスチョンを表示する。
  • 補完: Tab または Ctrl-Space して単語を補完できる。
  • 永続的な履歴: セッション間で永続的な履歴を保存。
  • スクリプト可能なプロンプト: Lua スクリプトでプロンプトを動的にカスタマイズできる。
  • 入力行の色付け: 入力は文脈依存の補完スクリプトによって色付けされる。
  • コマンドライン編集の改善: 新しい入力編集コマンドと設定可能なキーバインディングでコマンドラインを強化。

スクリーンショット

更新グラフ

バージョン履歴

v1.7.5

Tip

The first update that crosses past v1.7.0 will report an error.
Just run clink update again to finish the update successfully.

  • Added new Lua API console.ellipsify() to truncate an input string in various ways.
  • Added new rl_buffer:setcommentrow() to let "luafunc:" commands immediately show text in the comment row.
  • Adjusted some character width measurements based on analysis from wcwidth-verifier on Win8.1, Win10 with conhost, Win10 with Windows Terminal 1.22, Win11 with conhost, and Win11 with Windows Terminal 1.22.
  • The Headline, Pure, and Bureau clinkprompt files now consider unpublished branches as being "ahead", even in cases where git doesn't report a specific "ahead by" count.
  • Internal changes to the right side
(省略されました)
v1.7.4

Tip

The first update that crosses past v1.7.0 will report an error.
Just run clink update again to finish the update successfully.

  • Changed searching for color themes and custom prompts to always include themes\ directories under the Clink program directory and Clink profile directory, even when the clink.path setting has been used to remove them from the list of script directories.
  • Improved emoji width measurements.
    • Unqualified emojis are counted as a single cell now. Windows Terminal intentionally renders these as a single cell for compatibility with the behavior of the first terminal programs on Linux that began to support emoji characters (an important compatibility detail for the Windows Subsystem for Linux, for example).
    • Country flag emoji character pairs are r
(省略されました)
v1.7.3

Tip

The first update that crosses past v1.7.0 will report an error.
Just run clink update again to finish the update successfully.

v1.7.3

  • Added the Tomorrow* color themes which were accidentally missing from v1.7.0.
  • Fixed #682; the clink config theme use and clink config prompt use commands had no effect if there is no clink_settings file yet.

v1.7.0

Clink now supports color theme files and custom prompt files. These enable packaging Clink color settings or Clink custom prompts into shareable files. This finally makes it easy to download and apply themes or prompts shared by other people, or copy them and modify them. The new clink-themes repo is a site where .clinktheme and .clinkp

(省略されました)
v1.7.2

v1.7.2

This maintenance patch should address the issue where the v1.7.0 update fails to install the new themes\ directory.

Important

The first update will report an error. Start a new session of Clink after the error, and it will finish the update successfully.

Sorry for the inconvenience and confusion!

v1.7.0

Clink now supports color theme files and custom prompt files. These enable packaging Clink color settings or Clink custom prompts into shareable files. This finally makes it easy to download and apply themes or prompts shared by other people, or copy them and modify them. The new clink-themes repo is a site where .clinktheme and .clinkprompt files can be shared (see Contributing for det

(省略されました)
v1.7.0

Clink now supports color theme files and custom prompt files. These enable packaging Clink color settings or Clink custom prompts into shareable files. This finally makes it easy to download and apply themes or prompts shared by other people, or copy them and modify them. The new clink-themes repo is a site where .clinktheme and .clinkprompt files can be shared (see Contributing for details on how to contribute your own themes and prompts).

  • Added support for *.clinktheme color theme files; see Color Themes for more information.
    • Added several clink config theme commands for color themes (run clink config theme --help).
    • The famous Dracula, Solarized (light and dark), and Tomorrow (1 light, 4 dark) themes are included.
(省略されました)
v1.6.21
  • Reduced the performance overhead of hooked APIs from about 20 microseconds to about 2 microseconds.
  • Enhanced the executable recognition to avoid flickering red (or color.unrecognized) for an executable name that was already recognized in a recent previous input line.
  • Enhanced the srcmap command in the Lua debugger so that srcmap dir automatically sets up source mappings for Clink's built in scripts using dir as the repo root.
  • Fixed when history.expand_mode is off; it didn't fully turn off all of the history expansion syntax forms (for example the ^ syntax).
  • Fixed input line coloring when the first word is a device name (e.g. nul or com1:); it should use color.unrecognized for the color.
  • Fix
(省略されました)
v1.6.20

v1.6.19 has been deleted because it accidentally broke the updater -- if you already updated to v1.6.19, then a one-time manual update to v1.6.20 or newer is necessary to restore the updater.

  • Fixed truncated descriptions with clink set exec. and then clink-select-complete (Ctrl-Space) (regression introduced in v1.6.11).
  • Fixed fully qualified paths from a different local drive accidentally being colored with color.unrecognized.
  • Fixed #648; on Windows 8.1 the title bar can get changed to "Windows PowerShell" for the rest of the CMD session.
  • Fixed #652; error when trying to update again after updating to v1.6.20 (regression introduced in v1.6.19).
v1.6.19
  • Fixed truncated descriptions with clink set exec. and then clink-select-complete (Ctrl-Space).
  • Fixed fully qualified paths from a different local drive accidentally being colored with color.unrecognized.
  • Fixed #648; on Windows 8.1 the title bar can get changed to "Windows PowerShell" for the rest of the CMD session.
v1.6.18
  • Added a new callback function that can be assigned to an argument position in the table given to :addarg() via onalias= (see Responding to Arguments in Argmatchers for more information). The git argmatcher in the clink-completions repo uses this to support git aliases.
  • When a doskey alias doesn't include any $ tokens then CMD is guaranteed to ignore the rest of the command line after the alias, so now argmatcher parsing also ignores the rest of the command line and colors it using color.unexpected.
  • Suppress the ANSICON warning in the log file and diagnostics output on Windows 8.1. The performance problem in ANSICON exists, but apparently there isn't a better alternative before Windows 10.
v1.6.17
  • Added warning in the log file and in clink-diagnostics (Ctrl-X,Ctrl-Z) when ANSICON is detected on Windows 8.1 or greater (it's unnecessary, less functional, and greatly degrades performance).
  • Added language info in clink-diagnostics when the code page is not 1252 (for easier troubleshooting).
  • Fixed finding argmatchers registered with exact names (typing foo couldn't find an argmatcher registered as c:\dir\foo.exe because it accidentally looked for c:\dir\foo.EXE).
  • Fixed #631; script error after cmd when the current language is German.
v1.6.16
  • Added a workaround for how scoop tries to control app versions and updates (#615; scoop causes clink autorun install to use a wrong path).
  • Added an auto mode for the match.translate_slashes setting. This mode makes completion translate all slashes in the completed word to match whichever kind occurs first in the word, or to the system path separator if there are no slashes yet (e.g. when completing a directory name).
  • Changed the default to auto for the match.translate_slashes setting.
  • Updated the clink.slash_translation() function.
  • UNC share name completion works with forward slashes now (e.g. //localhost/).
  • Added a clink-toggle-slashes bindable command, bound by default to Ctrl
(省略されました)