Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
jnoortheen committed Dec 8, 2024
1 parent c28f9b0 commit c911506
Show file tree
Hide file tree
Showing 10 changed files with 188 additions and 16 deletions.
64 changes: 63 additions & 1 deletion dev/_modules/xonsh/commands_cache.html
Original file line number Diff line number Diff line change
Expand Up @@ -435,8 +435,70 @@ <h1>Source code for xonsh.commands_cache</h1><div class="highlight"><pre>
<span class="n">is_executable_in_windows</span><span class="p">,</span>
<span class="p">)</span>


<div class="viewcode-block" id="CaseInsensitiveDict">
<a class="viewcode-back" href="../../api/_autosummary/helpers/xonsh.commands_cache.html#xonsh.commands_cache.CaseInsensitiveDict">[docs]</a>
<span class="k">class</span> <span class="nc">CaseInsensitiveDict</span><span class="p">(</span><span class="nb">dict</span><span class="p">[</span><span class="n">tp</span><span class="o">.</span><span class="n">Any</span><span class="p">,</span> <span class="n">tp</span><span class="o">.</span><span class="n">Any</span><span class="p">]):</span>
<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_store</span> <span class="o">=</span> <span class="p">{}</span>
<span class="bp">self</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>

<span class="k">def</span> <span class="fm">__setitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
<span class="c1"># Store the key in lowercase but preserve the original case for display</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_store</span><span class="p">[</span><span class="n">key</span><span class="o">.</span><span class="n">casefold</span><span class="p">()]</span> <span class="o">=</span> <span class="n">key</span>
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__setitem__</span><span class="p">(</span><span class="n">key</span><span class="o">.</span><span class="n">casefold</span><span class="p">(),</span> <span class="n">value</span><span class="p">)</span>

<span class="k">def</span> <span class="fm">__getitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">):</span>
<span class="k">return</span> <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__getitem__</span><span class="p">(</span><span class="n">key</span><span class="o">.</span><span class="n">casefold</span><span class="p">())</span>

<span class="k">def</span> <span class="fm">__delitem__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">):</span>
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">_store</span><span class="p">[</span><span class="n">key</span><span class="o">.</span><span class="n">casefold</span><span class="p">()]</span>
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__delitem__</span><span class="p">(</span><span class="n">key</span><span class="o">.</span><span class="n">casefold</span><span class="p">())</span>

<span class="k">def</span> <span class="fm">__contains__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">):</span>
<span class="k">return</span> <span class="n">key</span><span class="o">.</span><span class="n">casefold</span><span class="p">()</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_store</span>

<div class="viewcode-block" id="CaseInsensitiveDict.get">
<a class="viewcode-back" href="../../api/_autosummary/helpers/xonsh.commands_cache.html#xonsh.commands_cache.CaseInsensitiveDict.get">[docs]</a>
<span class="k">def</span> <span class="nf">get</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">key</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="k">return</span> <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">key</span><span class="o">.</span><span class="n">casefold</span><span class="p">(),</span> <span class="n">default</span><span class="p">)</span></div>


<div class="viewcode-block" id="CaseInsensitiveDict.update">
<a class="viewcode-back" href="../../api/_autosummary/helpers/xonsh.commands_cache.html#xonsh.commands_cache.CaseInsensitiveDict.update">[docs]</a>
<span class="k">def</span> <span class="nf">update</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="k">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="ow">in</span> <span class="nb">dict</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
<span class="bp">self</span><span class="p">[</span><span class="n">k</span><span class="p">]</span> <span class="o">=</span> <span class="n">v</span></div>


<div class="viewcode-block" id="CaseInsensitiveDict.keys">
<a class="viewcode-back" href="../../api/_autosummary/helpers/xonsh.commands_cache.html#xonsh.commands_cache.CaseInsensitiveDict.keys">[docs]</a>
<span class="k">def</span> <span class="nf">keys</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="c1"># Return the original keys with their original casing</span>
<span class="k">return</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_store</span><span class="p">[</span><span class="n">k</span><span class="p">]</span> <span class="k">for</span> <span class="n">k</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_store</span><span class="p">)</span></div>


<div class="viewcode-block" id="CaseInsensitiveDict.items">
<a class="viewcode-back" href="../../api/_autosummary/helpers/xonsh.commands_cache.html#xonsh.commands_cache.CaseInsensitiveDict.items">[docs]</a>
<span class="k">def</span> <span class="nf">items</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">return</span> <span class="p">((</span><span class="bp">self</span><span class="o">.</span><span class="n">_store</span><span class="p">[</span><span class="n">k</span><span class="p">],</span> <span class="bp">self</span><span class="p">[</span><span class="n">k</span><span class="p">])</span> <span class="k">for</span> <span class="n">k</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_store</span><span class="p">)</span></div>


<span class="k">def</span> <span class="fm">__repr__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">return</span> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="vm">__class__</span><span class="o">.</span><span class="vm">__name__</span><span class="si">}</span><span class="s2">(</span><span class="si">{</span><span class="nb">dict</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">items</span><span class="p">())</span><span class="si">}</span><span class="s2">)&quot;</span>

<div class="viewcode-block" id="CaseInsensitiveDict.copy">
<a class="viewcode-back" href="../../api/_autosummary/helpers/xonsh.commands_cache.html#xonsh.commands_cache.CaseInsensitiveDict.copy">[docs]</a>
<span class="k">def</span> <span class="nf">copy</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">return</span> <span class="n">CaseInsensitiveDict</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">items</span><span class="p">())</span></div>
</div>



<span class="n">CacheDict</span><span class="p">:</span> <span class="n">tp</span><span class="o">.</span><span class="n">Union</span><span class="p">[</span><span class="nb">type</span><span class="p">[</span><span class="n">CaseInsensitiveDict</span><span class="p">],</span> <span class="nb">type</span><span class="p">[</span><span class="nb">dict</span><span class="p">]]</span>
<span class="k">if</span> <span class="n">ON_WINDOWS</span><span class="p">:</span>
<span class="kn">from</span> <span class="nn">case_insensitive_dict</span> <span class="kn">import</span> <span class="n">CaseInsensitiveDict</span> <span class="k">as</span> <span class="n">CacheDict</span>
<span class="n">CacheDict</span> <span class="o">=</span> <span class="n">CaseInsensitiveDict</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">CacheDict</span> <span class="o">=</span> <span class="nb">dict</span>

Expand Down
2 changes: 1 addition & 1 deletion dev/api/_autosummary/cmd/xonsh.completers.completer.html
Original file line number Diff line number Diff line change
Expand Up @@ -441,7 +441,7 @@

<dl class="py function">
<dt class="sig sig-object py" id="xonsh.completers.completer.remove_completer">
<span class="sig-prename descclassname"><span class="pre">xonsh.completers.completer.</span></span><span class="sig-name descname"><span class="pre">remove_completer</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">name:</span> <span class="pre">~typing.Annotated[str,</span> <span class="pre">((),</span> <span class="pre">(('completer',</span> <span class="pre">&lt;function</span> <span class="pre">complete_completer_names</span> <span class="pre">at</span> <span class="pre">0x7f6f12a7af80&gt;),))]</span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../_modules/xonsh/completers/completer.html#remove_completer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#xonsh.completers.completer.remove_completer" title="Link to this definition"></a></dt>
<span class="sig-prename descclassname"><span class="pre">xonsh.completers.completer.</span></span><span class="sig-name descname"><span class="pre">remove_completer</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">name:</span> <span class="pre">~typing.Annotated[str,</span> <span class="pre">((),</span> <span class="pre">(('completer',</span> <span class="pre">&lt;function</span> <span class="pre">complete_completer_names</span> <span class="pre">at</span> <span class="pre">0x7fe9e2fe35b0&gt;),))]</span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../_modules/xonsh/completers/completer.html#remove_completer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#xonsh.completers.completer.remove_completer" title="Link to this definition"></a></dt>
<dd><p>Removes a completer from xonsh</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
Expand Down
2 changes: 1 addition & 1 deletion dev/api/_autosummary/cmd/xonsh.procs.jobs.html
Original file line number Diff line number Diff line change
Expand Up @@ -448,7 +448,7 @@

<dl class="py function">
<dt class="sig sig-object py" id="xonsh.procs.jobs.disown_fn">
<span class="sig-prename descclassname"><span class="pre">xonsh.procs.jobs.</span></span><span class="sig-name descname"><span class="pre">disown_fn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">job_ids:</span> <span class="pre">~typing.Annotated[~typing.Sequence[int],</span> <span class="pre">((),</span> <span class="pre">(('type',</span> <span class="pre">&lt;class</span> <span class="pre">'int'&gt;),</span> <span class="pre">('nargs',</span> <span class="pre">'*'),</span> <span class="pre">('completer',</span> <span class="pre">&lt;function</span> <span class="pre">job_id_completer</span> <span class="pre">at</span> <span class="pre">0x7f6f1b0b8700&gt;)))],</span> <span class="pre">force_auto_continue=False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../_modules/xonsh/procs/jobs.html#disown_fn"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#xonsh.procs.jobs.disown_fn" title="Link to this definition"></a></dt>
<span class="sig-prename descclassname"><span class="pre">xonsh.procs.jobs.</span></span><span class="sig-name descname"><span class="pre">disown_fn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">job_ids:</span> <span class="pre">~typing.Annotated[~typing.Sequence[int],</span> <span class="pre">((),</span> <span class="pre">(('type',</span> <span class="pre">&lt;class</span> <span class="pre">'int'&gt;),</span> <span class="pre">('nargs',</span> <span class="pre">'*'),</span> <span class="pre">('completer',</span> <span class="pre">&lt;function</span> <span class="pre">job_id_completer</span> <span class="pre">at</span> <span class="pre">0x7fe9eb4c0700&gt;)))],</span> <span class="pre">force_auto_continue=False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../../../_modules/xonsh/procs/jobs.html#disown_fn"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#xonsh.procs.jobs.disown_fn" title="Link to this definition"></a></dt>
<dd><p>Remove the specified jobs from the job table; the shell will no longer
report their status, and will not complain if you try to exit an
interactive shell with them running or stopped.</p>
Expand Down
Loading

0 comments on commit c911506

Please sign in to comment.