Skip to content

Commit

Permalink
Update for v1.6.10
Browse files Browse the repository at this point in the history
  • Loading branch information
chrisant996 committed Mar 23, 2024
1 parent 60d5619 commit 8186627
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 11 deletions.
6 changes: 3 additions & 3 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
theme: jekyll-theme-cayman
title: Clink
github:
version: v1.6.8
download_url: https://github.com/chrisant996/clink/releases/download/v1.6.8/clink.1.6.8.d61056.zip
install_url: https://github.com/chrisant996/clink/releases/download/v1.6.8/clink.1.6.8.d61056_setup.exe
version: v1.6.10
download_url: https://github.com/chrisant996/clink/releases/download/v1.6.10/clink.1.6.10.d5dce0.zip
install_url: https://github.com/chrisant996/clink/releases/download/v1.6.10/clink.1.6.10.d5dce0_setup.exe
30 changes: 22 additions & 8 deletions clink.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

<!-- ----------------------------------------------------- -->
<head>
<title>Clink v1.6.8</title>
<title>Clink v1.6.10</title>
<style>
@import url('https://fonts.googleapis.com/css2?family=Rambla:wght@400;700&family=Roboto&family=Fira+Mono&display=swap');
html {
Expand Down Expand Up @@ -942,7 +942,7 @@
</td>
<td style="text-align:right">
<div id="header">
<div id="title">Clink v1.6.8</div>
<div id="title">Clink v1.6.10</div>
<div id="url">
<a href="https://github.com/chrisant996/clink">
https://github.com/chrisant996/clink
Expand All @@ -960,7 +960,7 @@
<div id="content">
<div class="section" id="documentation">
<h1 id="what-is-clink"><a class="wlink" href="#what-is-clink"><svg width=16 height=16><use href="#wicon"/></svg><span class="wfix">.</span></a>What is Clink? <span class="uplinks"><a href="#toc">top</a></span></h1>
<p>Clink combines the native Windows shell cmd.exe with the powerful command line editing features of the GNU Readline library, which provides rich completion, history, and line-editing capabilities. Readline is best known for its use in the Unix shell Bash, the standard shell for Mac OS X and many Linux distributions.</p>
<p>Clink combines the native Windows shell cmd.exe with the powerful command line editing features of the GNU Readline library, which provides rich completion, history, and line-editing capabilities. Readline is best known for its use in the Unix shell Bash, the standard shell for many Linux distributions.</p>
<p><a name="features"></a></p>
<h3 id="feature-highlights"><a class="wlink" href="#features"><svg width=16 height=16><use href="#wicon"/></svg><span class="wfix">.</span></a>Feature Highlights <span class="uplinks"><a href="#what-is-clink">up</a> <a href="#toc">top</a></span></h3>
<div class="promo_box">
Expand Down Expand Up @@ -4414,7 +4414,7 @@ <h4 id="responding-to-arguments-in-argmatchers"><a class="wlink" href="#responsi
<li>An &quot;<a href="#the-on-arg-function">on arg</a>&quot; function is called <em>when</em> parsing a word. It can examine the word and do custom processing.</li>
<li>An &quot;<a href="#the-on-link-function">on link</a>&quot; function is called <em>after</em> parsing a word. It can examine the word and override what argmatcher it links to (see <a href="#argmatcher_linking">Linking Parsers</a>).</li>
</ul>
<p>All of these callback functions receive a <code>user_data</code> table. When parsing begins, the <code>user_data</code> is an empty table. Each time a flag or argument links to another argmatcher, the new argmatcher gets a separate new empty <code>user_data</code> table. Your &quot;on advance&quot; and &quot;on arg&quot; and &quot;on link&quot; functions can set data into the table, and functions called later during parsing can get the data that was set by earlier functions (for example to keep track of what flags were specified earlier in the command line).</p>
<p>All of these callback functions receive a <code>user_data</code> table. Your &quot;on advance&quot; and &quot;on arg&quot; and &quot;on link&quot; functions can set data into the table, and functions called later during parsing can get the data that was set by earlier functions (for example to keep track of what flags were specified earlier in the command line). When parsing begins for a command, the <code>user_data</code> is an empty table. Each time a flag or argument links to another argmatcher, the new argmatcher gets a separate new empty <code>user_data</code> table. In Clink v1.6.10 and higher, each <code>user_data</code> table contains a <code>shared_user_data</code> field which is a reference to another table. The <code>user_data.shared_user_data</code> enables linked argmatchers to share data with each other while parsing a command.</p>
<blockquote>
<p><strong>Note:</strong> These callback functions are called very often, so they need to be very fast or they can cause responsiveness problems while typing.</p>
</blockquote>
Expand All @@ -4427,7 +4427,7 @@ <h5 id="the-on-advance-function"><a class="wlink" href="#the-on-advance-function
<li><code>word</code> is a partial string for the word under the cursor, corresponding to the argument being parsed: it is an empty string, or if a filename is being entered then it will be the path portion (e.g. for &quot;dir1\dir2\pre&quot; <code>word</code> will be &quot;dir1\dir2&quot;).</li>
<li><code>word_index</code> is the word index in <code>line_state</code>, corresponding to the argument being parsed.</li>
<li><code>line_state</code> is a <a href="#line_state">line_state</a> object that contains the words for the associated command line.</li>
<li><code>user_data</code> is a table that the argmatcher can use to help it parse the input line.</li>
<li><code>user_data</code> is a table that the argmatcher can use to help it parse the input line (see <a href="#responsive-argmatchers">Responding to Arguments in Argmatchers</a> for details).</li>
</ul>
<p>The function may return any of the following values:</p>
<ul>
Expand Down Expand Up @@ -4492,7 +4492,7 @@ <h5 id="the-on-arg-function"><a class="wlink" href="#chainnextexample"><svg widt
<li><code>word</code> is a partial string for the word under the cursor, corresponding to the argument being parsed: it is an empty string, or if a filename is being entered then it will be the path portion (e.g. for &quot;dir1\dir2\pre&quot; <code>word</code> will be &quot;dir1\dir2&quot;).</li>
<li><code>word_index</code> is the word index in <code>line_state</code>, corresponding to the argument being parsed.</li>
<li><code>line_state</code> is a <a href="#line_state">line_state</a> object that contains the words for the associated command line.</li>
<li><code>user_data</code> is a table that the argmatcher can use to help it parse the input line.</li>
<li><code>user_data</code> is a table that the argmatcher can use to help it parse the input line (see <a href="#responsive-argmatchers">Responding to Arguments in Argmatchers</a> for details).</li>
</ul>
<p>The function doesn&#39;t return anything.</p>
<p>An &quot;on arg&quot; function can even use <a href="#os.chdir">os.chdir()</a> to set the current directory. Generating match completions saves and restores the current directory when finished, so argmatcher &quot;on arg&quot; functions can set the current directory and thus cause match completion later in the input line to complete file names relative to the change directory. For example, the built-in <code>cd</code> and <code>pushd</code> argmatches use an &quot;on arg&quot; function so that <code>pushd \other_dir &amp; program </code><kbd>Tab</kbd> can complete file names from <code>\other_dir</code> instead of the (real) current directory.</p>
Expand Down Expand Up @@ -4520,7 +4520,7 @@ <h5 id="the-on-link-function"><a class="wlink" href="#the-on-link-function"><svg
<li><code>word</code> is a partial string for the word under the cursor, corresponding to the argument being parsed: it is an empty string, or if a filename is being entered then it will be the path portion (e.g. for &quot;dir1\dir2\pre&quot; <code>word</code> will be &quot;dir1\dir2&quot;).</li>
<li><code>word_index</code> is the word index in <code>line_state</code>, corresponding to the argument being parsed.</li>
<li><code>line_state</code> is a <a href="#line_state">line_state</a> object that contains the words for the associated command line.</li>
<li><code>user_data</code> is a table that the argmatcher can use to help it parse the input line.</li>
<li><code>user_data</code> is a table that the argmatcher can use to help it parse the input line (see <a href="#responsive-argmatchers">Responding to Arguments in Argmatchers</a> for details).</li>
</ul>
<p>The function may return any of the following:</p>
<ul>
Expand Down Expand Up @@ -4939,7 +4939,7 @@ <h4 id="setting-a-classifier-function-in-an-argmatcher"><a class="wlink" href="#
<li><code>word_index</code> is the word index in <code>line_state</code>, corresponding to the argument for which matches are being generated.</li>
<li><code>line_state</code> is a <a href="#line_state">line_state</a> object that contains the words for the associated command line.</li>
<li><code>classifications</code> is a <a href="#word_classifications">word_classifications</a> object which can be used to apply colors.</li>
<li>In Clink v1.5.17 and higher, <code>user_data</code> is a table that the argmatcher can use to help it parse the input line. See <a href="#responsive-argmatchers">Responding to Arguments in Argmatchers</a> for more information about the <code>user_data</code> table.</li>
<li>In Clink v1.5.17 and higher, <code>user_data</code> is a table that the argmatcher can use to help it parse the input line (see <a href="#responsive-argmatchers">Responding to Arguments in Argmatchers</a> for details).</li>
</ul>
<p>Words are colored by classifying the words, and each classification has an associated color. See <a href="#word_classifications:classifyword">word_classifications:classifyword()</a> for the available classification codes.</p>
<p>The <code>clink set</code> command has different syntax depending on the setting type, so the argmatcher for <code>clink</code> needs help in order to get everything right. A custom generator function parses the input text to provide appropriate matches, and a custom classifier function applies appropriate coloring.</p>
Expand Down Expand Up @@ -8010,6 +8010,20 @@ <h5 id="Deprecated" class="group_name"><a class="wlink" href="#Deprecated"><svg
<div class="section" id="changes">
<h1 id="changes"><a class="wlink" href="#changes"><svg width=16 height=16><use href="#wicon"/></svg><span class="wfix">.</span></a>Changes <span class="uplinks"><a href="#toc">top</a></span></h1>
<h3 id="releases-from-chrisant996clink-fork"><a class="wlink" href="#releases-from-chrisant996clink-fork"><svg width=16 height=16><use href="#wicon"/></svg><span class="wfix">.</span></a>Releases from <a href="https://github.com/chrisant996/clink">chrisant996/clink</a> fork <span class="uplinks"><a href="#changes">up</a> <a href="#toc">top</a></span></h3>
<h4 id="v1610"><a class="wlink" href="#v1610"><svg width=16 height=16><use href="#wicon"/></svg><span class="wfix">.</span></a>v1.6.10 <span class="uplinks"><a href="#releases-from-chrisant996clink-fork">up</a> <a href="#toc">top</a></span></h4>
<ul>
<li>Added an optimization to further reduce flicker when re-drawing the prompt.</li>
<li>Added a <code>user_data.shared_user_data</code> table to allow linked argmatchers to share data with each other while an input line is being parsed (see <a href="https://chrisant996.github.io/clink/clink.html#responsive-argmatchers">Responding to Arguments in Argmatchers</a> for details).</li>
<li>Fixed <a href="https://github.com/chrisant996/clink/issues/579">#579</a>; popup lists could accidentally truncate text in the first column when there&#39;s only one column.</li>
<li>Fixed <a href="https://github.com/chrisant996/clink/issues/576">#576</a>; setup exe doesn&#39;t remove old uninstall exe files.</li>
<li>Fixed <a href="https://github.com/chrisant996/clink/issues/575">#575</a>; error when <code>color.executable</code> is set and <code>color.unrecognized</code> is not (regression introduced in v1.6.2).</li>
</ul>
<h4 id="v169"><a class="wlink" href="#v169"><svg width=16 height=16><use href="#wicon"/></svg><span class="wfix">.</span></a>v1.6.9 <span class="uplinks"><a href="#releases-from-chrisant996clink-fork">up</a> <a href="#toc">top</a></span></h4>
<ul>
<li>Fixed <a href="https://github.com/chrisant996/clink/issues/574">#574</a>; <code>prompt.spacing</code> &quot;eats&quot; lines containing Unicode Surrogate Pairs such as for some <a href="https://nerdfonts.com">nerdfont</a> icons (Windows Terminal accidentally returns that such lines are empty).</li>
<li>Fixed <a href="https://github.com/chrisant996/clink/issues/573">#573</a>; C# was unable to read Clink&#39;s version resource.</li>
<li>Fixed <a href="https://github.com/chrisant996/clink/issues/555">#555</a>; security advisory <a href="https://github.com/advisories/GHSA-gfr4-c37g-mm3v">CVE-2020-24370</a> for a Lua bug.</li>
</ul>
<h4 id="v168"><a class="wlink" href="#v168"><svg width=16 height=16><use href="#wicon"/></svg><span class="wfix">.</span></a>v1.6.8 <span class="uplinks"><a href="#releases-from-chrisant996clink-fork">up</a> <a href="#toc">top</a></span></h4>
<ul>
<li>Fixed <a href="https://github.com/chrisant996/clink/issues/571">#571</a>; error in clink.bat under some circumstances (regression introduced in v1.6.7).</li>
Expand Down

0 comments on commit 8186627

Please sign in to comment.