Clink

詳細情報

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

レビュー

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

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

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

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

スクリーンショット

更新グラフ

バージョン履歴

v1.9.11
  • Added new Lua API console.getoriginaltitle() which gets what the OS considers to be the original console title.
  • Fixed a potential crash if the terminal title is an empty string; an OS API is not behaving as documented (regression introduced in v1.9.10).
v1.9.10
  • Changed the default binding for F7 to clink-popup-history instead of win-history-list.
  • Fixed potential for incorrect input line coloring after using clink-popup-history to choose a history line.
  • Fixed win-history-list with typed input (regression introduced in v1.6.13).
  • Fixed rare issues with the cmd.admin_title_prefix setting.
  • Internal logging improvements.
v1.9.9
  • Fixed #829; attempt to compare nil with number (regression introduced in v1.9.8).
v1.9.8
  • Changed os.sleep() so it yields when called in a coroutine.
  • Fixed the "Display all...?" prompt in clink-select-complete to show up at the right times.
  • Fixed several obscure problems with queued input, e.g. from doskey aliases that include $T and from pasting multiline text via the clink-paste bindable command.
  • Fixed title bar flicker in Windows Terminal caused by the cmd.get_errorlevel setting.
  • Internal improvements for unit tests.
v1.9.7
  • Fixed #825; multiline pasting via the Clink paste command with clink.paste_crlf set to crlf could report an unexpected and confusing message (regression introduced in v1.9.6).
v1.9.6
  • Fixed multiline pasting via Clink's paste command when the clink.paste_crlf setting is crlf and the pasted input causes the "More?" prompt to appear.
  • Fixed #824; multiline pasting via the conhost or Windows Terminal paste command could miss a character, and end up processing the character out of order (regression introduced in v1.8.7).
v1.9.5

v1.9.5

  • Fixed git.getbranch() failure cases in a git repo using reftable storage.

v1.9.4

  • Changed git.getbranch() to accept an additional argument to compensate for a breaking change in git for reftable storage.
  • Changed the built-in custom prompts to compensate for the reftable storage breaking change in git.
  • Improve palette entry matching in the built-in terminal emulator.
  • Fixed some inefficiencies in the Headline clinkprompt.
v1.9.4
  • Changed git.getbranch() to accept an additional argument to compensate for a breaking change in git.
  • Changed the built-in custom prompts to compensate for the reftables breaking change in git.
  • Improve palette entry matching in the built-in terminal emulator.
  • Fixed some inefficiencies in the Headline clinkprompt.
v1.9.3

v1.9.3

  • Added new CLINK_ANSI_HOST environment variable to control Clink's terminal support in a session without needing to change the terminal.emulation setting in the profile.
  • Added new terminal.shell_integration setting to control sending shell integration codes to the terminal.
  • Optimized detection of Windows Terminal and resolved all known misdetection cases (tested more than 20 different specific cases).
  • Fixed incorrect width measurement of U+3030, U+303D, U+3297, and U+3299.
  • Fixed edge cases in parsing invalid UTF16.
  • Fixed #821; workaround for an issue occurring in WezTerm (Nightly builds of WezTerm worked, but the current WezTerm release is from February 2024 and contains an old version of ConPTY that lacks a specific fix).
(省略されました)
v1.9.2

v1.9.2

  • Added workaround for JetBrains terminal bug (#819).

v1.9.1

  • Fixed #817; error reporting was not graceful if the updater encountered a failure trying to access the github URLs (e.g. if a firewall blocks outgoing network calls).

v1.9.0

  • Added new Lua API http.request() which invokes an http request (and yields when used in a coroutine) and returns the result.
  • Change the updater to no longer use Powershell; now it uses native OS APIs for http requests and zip file extraction.
  • Fixed detection of Windows Terminal when the OS automatically launched WT (regression introduced in v1.8.5).
  • Fixed match display filtering sometimes running match generators twice.
  • Fixed the out
(省略されました)
v1.9.1

v1.9.1

  • Fixed #817; error reporting was not graceful if the updater encountered a failure trying to access the github URLs (e.g. if a firewall blocks outgoing network calls).

v1.9.0

  • Added new Lua API http.request() which invokes an http request (and yields when used in a coroutine) and returns the result.
  • Change the updater to no longer use Powershell; now it uses native OS APIs for http requests and zip file extraction.
  • Fixed detection of Windows Terminal when the OS automatically launched WT (regression introduced in v1.8.5).
  • Fixed match display filtering sometimes running match generators twice.
  • Fixed the out command in the Lua debugger.
  • Fixed the suggestion list to not intercept keys while a multikey input cho
(省略されました)