-
-
Notifications
You must be signed in to change notification settings - Fork 59
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2690 from carapace-sh/sea-change
doc: added v1.2
- Loading branch information
Showing
11 changed files
with
348 additions
and
41 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
# v1.2 - Sea Change | ||
|
||
![](./v1.2/banner.png) | ||
|
||
Moby has grown a little too big. | ||
|
||
## Docker | ||
|
||
Split the `carapace` container into [several smaller ones](https://github.com/carapace-sh/docker). | ||
|
||
## Compose | ||
|
||
Updated compose services with the new docker containers. | ||
Also added services for specific tools. | ||
|
||
![](./v1.2/compose.cast) | ||
|
||
## Zsh | ||
|
||
Reworked the handling of quoted values. | ||
|
||
![](./v1.2/zsh.cast) | ||
|
||
## VHS | ||
|
||
Added [VHS] tapes to [verify](https://carapace-sh.github.io/carapace/development/vhs/word.html) the shell integration. | ||
|
||
![](./v1.2/word.elvish.gif) | ||
|
||
## Variable | ||
|
||
Extracted the `set-env <NAME> <VALUE>` completion as generic action. | ||
|
||
![](./v1.2/env.cast) | ||
|
||
> Completions use the **local** environment so there are some limitations. | ||
### Spec | ||
|
||
In specs it can be used as **attached** (default) or **positional** completion. | ||
|
||
```yaml | ||
# yaml-language-server: $schema=https://carapace.sh/schemas/command.json | ||
name: variable | ||
completion: | ||
positional: | ||
- ["$carapace.env.NameValues"] # attached (NAME[=VALUE]) | ||
- ["$carapace.env.NameValues(true) ||| $shift(1)"] # positional (NAME) | ||
- ["$carapace.env.NameValues(true) ||| $shift(1)"] # positional (VALUE) | ||
``` | ||
![](./v1.2/env-spec.cast) | ||
> - Use [`shift`] to skip previous arguments during **positional** completion. | ||
> - Renamed `env.KnownEnvironmentVariables` to `env.Names`. | ||
> - Renamed `env.EnvironmentVariableValues` to `env.Values`. | ||
|
||
|
||
## Unfiltered | ||
|
||
Added `CARAPACE_UNFILTERED` environment variable to skip the final filtering step. | ||
|
||
![](./v1.2/unfiltered.cast) | ||
|
||
> This enables fuzzy completion in [fish] (to a degree), but is limited to mostly static values. | ||
|
||
[fish]:https://fishshell.com/ | ||
[`shift`]:https://carapace-sh.github.io/carapace-spec/carapace-spec/macros/modifier.html#shift | ||
[VHS]:https://github.com/charmbracelet/vhs |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Large diffs are not rendered by default.
Oops, something went wrong.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,126 @@ | ||
{"version": 2, "width": 108, "height": 24, "timestamp": 1737475196, "env": {"SHELL": "elvish", "TERM": "tmux-256color"}} | ||
[0.106194, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] | ||
[0.137459, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\r\n\u001b[1;36m~\u001b[0m \r\n\u001b[1;37mzsh\u001b[0m \u001b[1;32m❯\u001b[0m \u001b[K\u001b[?2004h"] | ||
[0.665659, "o", "e"] | ||
[0.927524, "o", "\bex"] | ||
[1.052229, "o", "a"] | ||
[1.161092, "o", "m"] | ||
[1.217614, "o", "p"] | ||
[1.340109, "o", "l"] | ||
[1.396919, "o", "e"] | ||
[1.466403, "o", " "] | ||
[1.6256, "o", "\u0007\r\r\n"] | ||
[1.625822, "o", "\u001b[0m\u001b[34maction\u001b[0m \u001b[34malias\u001b[0m \u001b[2m-- action example \u001b[0m\r\n\u001b[34mflag\u001b[0m \u001b[2m-- flag example \u001b[0m\r\n\u001b[0m\u001b[33mmodifier\u001b[0m\u001b[2m -- modifier example\u001b[0m\r\n\u001b[0m\u001b[mchain\u001b[0m\u001b[2m -- shorthand chain\u001b[0m\r\n\u001b[mcompletion\u001b[0m\u001b[2m -- Generate the autocompletion script for the specified shell\u001b[0m\r\n\u001b[mgroup\u001b[0m\u001b[2m -- group example\u001b[0m\r\n\u001b[mhelp\u001b[0m\u001b[2m -- Help about any command\u001b[0m\r\n\u001b[minterspersed\u001b[0m\u001b[2m -- interspersed example\u001b[0m\r\n\u001b[mmultiparts\u001b[0m\u001b[2m -- multiparts example\u001b[0m\r\n\u001b[msubcommand\u001b[0m\u001b[2m -- subcommand example\u001b[0m\r\n\u001b[mcompat\u001b[0m \u001b[mspecial\u001b[0m \r\n\u001b[J\u001b[0m\u001b[35mplugin\u001b[0m\u001b[2m -- dynamic plugin command\u001b[0m\u001b[J\u001b[12A\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample\u001b[K\u001b[1C"] | ||
[2.224184, "o", "action \r\r\n"] | ||
[2.224567, "o", "\u001b[7maction\u001b[0m \u001b[34malias\u001b[0m \u001b[2m-- action example \u001b[0m\u001b[K\r\n\u001b[34mflag\u001b[0m \u001b[2m-- flag example \u001b[0m\u001b[K\r\n\u001b[0m\u001b[33mmodifier\u001b[0m\u001b[2m -- modifier example\u001b[0m\u001b[K\u001b[K\r\n\u001b[0m\u001b[mchain\u001b[0m\u001b[2m -- shorthand chain\u001b[0m\u001b[K\u001b[K\r\n\u001b[mcompletion\u001b[0m\u001b[2m -- Generate the autocompletion script for the specified shell\u001b[0m\u001b[K\u001b[K\r\n\u001b[mgroup\u001b[0m\u001b[2m -- group example\u001b[0m\u001b[K\u001b[K\r\n\u001b[mhelp\u001b[0m\u001b[2m -- Help about any command\u001b[0m\u001b[K\u001b[K\r\n\u001b[minterspersed\u001b[0m\u001b[2m -- interspersed example\u001b[0m\u001b[K\u001b[K\r\n\u001b[mmultiparts\u001b[0m\u001b[2m -- multiparts example\u001b[0m\u001b[K\u001b[K\r\n\u001b[msubcommand\u001b[0m\u001b[2m -- subcommand example\u001b[0m\u001b[K\u001b[K\r\n\u001b[mcompat\u001b[0m \u001b[mspecial\u001b[0m \u001b[K\r\n\u001b[J\u001b[0m\u001b[35mplugin\u001b[0m\u001b[2m -- dynamic plugin command\u001b[0m\u001b[K\u001b[J\u001b[12A\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action\u001b[K\u001b[1C"] | ||
[2.652252, "o", "\r\r\n\u001b[7maction\u001b[0m \r\u001b[7maction\u001b[0m \r\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action\u001b[K\u001b[1C\r\r\n\u001b[J\u001bM\u001b[21C"] | ||
[3.225503, "o", "embeddedP"] | ||
[3.774746, "o", "\u0007\r\r\n\u001b[J\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\r\n\u001b[J\u001b[0m\u001b[membeddedP1\u001b[0m \u001b[J\u001b[membeddedPositional1\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP\u001b[K"] | ||
[4.31971, "o", "1 \r\r\n\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\u001b[K\u001b[K\r\n\u001b[J\u001b[7membeddedP1 \u001b[0m \u001b[J\u001b[membeddedPositional1\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1\u001b[K\u001b[1C"] | ||
[4.750609, "o", "\r\r\n\u001b[1B\u001b[7membeddedP1 \u001b[0m \r\u001b[7membeddedP1 \u001b[0m \r\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1\u001b[K\u001b[1C\r\r\n\u001b[J\u001bM\u001b[32C"] | ||
[4.839928, "o", "embeddedP"] | ||
[5.28059, "o", "\u0007\r\r\n\u001b[J\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\r\n\u001b[J\u001b[0m\u001b[membeddedP2 with space\u001b[0m \u001b[J\u001b[membeddedPositional2 with space\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 embeddedP\u001b[K"] | ||
[5.771745, "o", "2\\ with\\ space \r\r\n\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\u001b[K\u001b[K\r\n\u001b[J\u001b[7membeddedP2 with space \u001b[0m \u001b[J\u001b[membeddedPositional2 with space\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 embeddedP2\\ with\\ space\u001b[K\u001b[1C"] | ||
[6.40181, "o", "\r\r\n\u001b[1B\u001b[7membeddedP2 with space \u001b[0m \r\u001b[7membeddedP2 with space \u001b[0m \r\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 embeddedP2\\ with\\ space\u001b[K\u001b[1C\r\r\n\u001b[J\u001bM\u001b[56C"] | ||
[6.757115, "o", "\b"] | ||
[6.930476, "o", "\b \b"] | ||
[7.077179, "o", "\b \b"] | ||
[7.325839, "o", "ce "] | ||
[7.57097, "o", "\b"] | ||
[7.871556, "o", "\b \b"] | ||
[7.896186, "o", "\b \b"] | ||
[7.920999, "o", "\b \b"] | ||
[7.946102, "o", "\b \b"] | ||
[7.971257, "o", "\b \b"] | ||
[7.995697, "o", "\b"] | ||
[8.020389, "o", "\b \b"] | ||
[8.047047, "o", "\b \b"] | ||
[8.070529, "o", "\b \b"] | ||
[8.095663, "o", "\b \b"] | ||
[8.120529, "o", "\b \b"] | ||
[8.145433, "o", "\b"] | ||
[8.171051, "o", "\b \b"] | ||
[8.195518, "o", "\b \b"] | ||
[8.220367, "o", "\b \b"] | ||
[8.246366, "o", "\b \b"] | ||
[8.270878, "o", "\b \b"] | ||
[8.295502, "o", "\b \b"] | ||
[8.322068, "o", "\b \b"] | ||
[8.345574, "o", "\b \b"] | ||
[8.450129, "o", "\b \b"] | ||
[8.616201, "o", "\b \b"] | ||
[8.786125, "o", "\b \b"] | ||
[9.023529, "o", "\""] | ||
[9.247984, "o", "embeddedP"] | ||
[9.745361, "o", "\u0007\r\r\n\u001b[J\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\r\n\u001b[J\u001b[0m\u001b[membeddedP2 with space\u001b[0m \u001b[J\u001b[membeddedPositional2 with space\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 \"embeddedP\u001b[K"] | ||
[10.370428, "o", "2 with space\" \r\r\n\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\u001b[K\u001b[K\r\n\u001b[J\u001b[7membeddedP2 with space \u001b[0m \u001b[J\u001b[membeddedPositional2 with space\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 \"embeddedP2 with space\"\u001b[K\u001b[1C"] | ||
[10.678481, "o", "\r\r\n\u001b[1B\u001b[7membeddedP2 with space \u001b[0m \r\u001b[7membeddedP2 with space \u001b[0m \r\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 \"embeddedP2 with space\"\u001b[K\u001b[1C\r\r\n\u001b[J\u001bM\u001b[56C"] | ||
[11.067129, "o", "\b"] | ||
[11.366837, "o", "\b \b"] | ||
[11.39205, "o", "\b \b"] | ||
[11.417956, "o", "\b \b"] | ||
[11.442093, "o", "\b \b"] | ||
[11.781547, "o", "\b \b"] | ||
[12.026449, "o", "\""] | ||
[12.474983, "o", "\bpace\""] | ||
[13.079455, "o", "\b \b"] | ||
[13.229952, "o", "\b \b"] | ||
[13.408514, "o", "\b \b"] | ||
[13.543505, "o", "\b \b"] | ||
[13.697497, "o", "\b \b"] | ||
[14.026309, "o", "2"] | ||
[14.336798, "o", "\b \b"] | ||
[14.529488, "o", "\""] | ||
[14.75604, "o", "p"] | ||
[15.064806, "o", "\b\bpace\" "] | ||
[15.596256, "o", "\b"] | ||
[15.896384, "o", "\b \b"] | ||
[15.921316, "o", "\b \b"] | ||
[15.946782, "o", "\b \b"] | ||
[15.971789, "o", "\b \b"] | ||
[15.996582, "o", "\b \b"] | ||
[16.021546, "o", "\b \b"] | ||
[16.046919, "o", "\b"] | ||
[16.071538, "o", "\b \b"] | ||
[16.096933, "o", "\b \b"] | ||
[16.121526, "o", "\b \b"] | ||
[16.147204, "o", "\b \b"] | ||
[16.171528, "o", "\b"] | ||
[16.196388, "o", "\b \b"] | ||
[16.222582, "o", "\b \b"] | ||
[16.246864, "o", "\b \b"] | ||
[16.271181, "o", "\b \b"] | ||
[16.296477, "o", "\b \b"] | ||
[16.321745, "o", "\b \b"] | ||
[16.450993, "o", "\b \b"] | ||
[16.603815, "o", "\b \b"] | ||
[16.752509, "o", "\b \b"] | ||
[16.904717, "o", "\b \b"] | ||
[17.06751, "o", "\b \b"] | ||
[17.267339, "o", "'"] | ||
[17.612324, "o", "embeddedP"] | ||
[18.0856, "o", "\u0007\r\r\n\u001b[J\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\r\n\u001b[J\u001b[0m\u001b[membeddedP2 with space\u001b[0m \u001b[J\u001b[membeddedPositional2 with space\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 'embeddedP\u001b[K"] | ||
[18.547202, "o", "2 with space' \r\r\n\u001b[2maction [pos1] [pos2] [--] [dashAny]...\u001b[m\u001b[K\u001b[K\r\n\u001b[J\u001b[7membeddedP2 with space \u001b[0m \u001b[J\u001b[membeddedPositional2 with space\u001b[0m\u001b[J\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 'embeddedP2 with space'\u001b[K\u001b[1C"] | ||
[18.84931, "o", "\r\r\n\u001b[1B\u001b[7membeddedP2 with space \u001b[0m \r\u001b[7membeddedP2 with space \u001b[0m \r\u001bM\u001bM\u001b[0m\u001b[27m\u001b[24m\r\u001b[6Cexample action embeddedP1 'embeddedP2 with space'\u001b[K\u001b[1C\r\r\n\u001b[J\u001bM\u001b[56C"] | ||
[19.068383, "o", "\b"] | ||
[19.368879, "o", "\b \b"] | ||
[19.393846, "o", "\b \b"] | ||
[19.418976, "o", "\b \b"] | ||
[19.443747, "o", "\b \b"] | ||
[19.547657, "o", "ace' "] | ||
[19.832658, "o", "\b"] | ||
[20.133294, "o", "\b \b"] | ||
[20.157846, "o", "\b \b"] | ||
[20.182997, "o", "\b \b"] | ||
[20.207703, "o", "\b \b"] | ||
[20.499715, "o", "\b \b"] | ||
[20.765974, "o", "'"] | ||
[21.243264, "o", "p"] | ||
[21.599286, "o", "\b\bpace' "] | ||
[22.594754, "o", "\u001b[?2004l\r\r\n\u001b[J\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] | ||
[22.625946, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\r\n\u001b[1;36m~\u001b[0m \r\n\u001b[1;37mzsh\u001b[0m \u001b[1;32m❯\u001b[0m \u001b[K\u001b[?2004h"] | ||
[22.849295, "o", "e"] | ||
[23.035086, "o", "\bex"] | ||
[23.159362, "o", "i"] | ||
[23.260621, "o", "t"] | ||
[23.348548, "o", "\u001b[?2004l\r\r\n"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters