Commit Graph

18697 Commits

Author SHA1 Message Date
Henrik Hørlück Berg
d6a9ad66a7
Allow CancelChecker to be FnMut 2023-09-15 14:44:58 +02:00
Henrik Hørlück Berg
d277a50564
Combine previous attempt into this
*singing it's the best of both worlds*
2023-09-15 14:44:58 +02:00
Henrik Hørlück Berg
e0bbf3eee9
Port wilcard.{cpp,h} to Rust
- This is untested and unused, string ownership is very much subject to change
- Ports the minimally necessary parts of complete.rs as well
- This should fix an infinite loop in `create_directory` in `path.rs`, the first
  `wstat` loop only breaks if it fails with an error that's different from
  EAGAIN
2023-09-15 14:44:58 +02:00
Henrik Hørlück Berg
80d92dcc6d
Port the easy part of wildcard.{h,cpp}
- wildcard_match is now closer to the original that is linked in a comment, as
  pointer-arithmetic translates very poorly. The act of calling wildcard
  patterns wc or wildcard is kinda confusing when wc elsewhere is widechar.
2023-09-15 14:38:30 +02:00
Johannes Altmanninger
e1f5751ba0 fixup! builtin status: use program name constant again 2023-09-14 20:46:42 +02:00
Johannes Altmanninger
61d506afd0 builtin status: use program name constant again 2023-09-14 20:42:25 +02:00
Johannes Altmanninger
e2ee8a0beb isolated-tmux: fix quoting error 2023-09-14 20:42:25 +02:00
Fabian Boehm
ebb8368464 docs/read: Some reorganization
This just had *all the options* in one gigantic list, and some very
stuffy wording - "prompt-str" sounded like it was discouraged for some reason?
2023-09-13 17:18:19 +02:00
Fabian Boehm
ad54f07328 docs/set: Correct some errors 2023-09-13 17:08:52 +02:00
Fabian Boehm
778f4e6732 docs: Improve quoting variables section
This now specifically explains quoting with `set`, and the contrast to bash.
2023-09-11 17:31:00 +02:00
Fabian Boehm
136dc6ce28 Test for mktemp completion
Turns out fish isn't in $PATH on the CI systems
2023-09-11 16:52:38 +02:00
Fabian Boehm
110de8e0df Harden test
Turns out the order wasn't the same on CI as it was on my system. Just
match it.
2023-09-10 20:56:58 +02:00
Fabian Boehm
b03327f5d2 __fish_complete_command: Fix --foo= logic
This was already supposed to handle `--foo=bar<TAB>` cases, except it
printed the `--foo=` again, causing fish to take that as part of the
token.

See #9538 for a similar thing with __fish_complete_directories.

Fixes #10011
2023-09-10 18:16:41 +02:00
Fabian Boehm
fc95eca257 share/config.fish: Skip __fish_set_locale if $LANG is already set
This is the most common and sensible env var, we check it outside,
so we can skip loading the function at all if we already know it's not
gonna do anything.

This is done on every startup of every single fish, and it saves ~0.2ms.
2023-09-09 15:53:20 +02:00
Fabian Boehm
7c8b309d79 completions/git: Escape custom command names
This can be triggered by having a custom git command in e.g.
`/mnt/c/Program Files (x86)/foo/`.

Fixes #9738

(cherry picked from commit db5c9badad)
2023-09-09 09:28:33 +02:00
Jan Tojnar
8727a7f9e3 Fix composer require completion
When no development dependencies are installed, the completion would crash with:

    KeyError: 'require-dev'

(cherry picked from commit 9e223577aa)
2023-09-09 09:28:33 +02:00
Paweł Piątkowski
4e731123b5 Ansible completion: fix typo in --limit-hosts
(cherry picked from commit bda9d57417)
2023-09-09 09:28:33 +02:00
Eric N. Vander Weele
43c87e13c9 completions/git: Allow switch to complete remote branches
While it is true that `git switch <remote-branch>` errors to disallow a detached
head without the `-d` option, it is valid to use any starting point (commit or
reference) in conjunction with the `-c` option. Additionally, the starting point
can occur before any option.

This enables the following completions:

* `git switch -c <local-name> <any-branch>`
* `git switch <any-branch> -c <local-name>`
* `git switch -d <any-starting-point>`
* `git switch <any-branch> -d`

The trade-off is this does allow for `git switch <remote-branch>` to be
completed with an error.

Note that this logically reverts 7e3d3cc30f.

(cherry picked from commit fdd4bcf718)
2023-09-09 09:28:33 +02:00
AsukaMinato
480e9809f2 add qjs completion
(cherry picked from commit 8a0510a2f2)
2023-09-09 09:28:33 +02:00
AsukaMinato
afd1d2a527 add completion for ar (#9720)
* add completion for ar

* clean the function

* update CHANGELOG

(cherry picked from commit 36e4b0ff30)
2023-09-09 09:28:28 +02:00
Fabian Boehm
045173968e cirrus: Remove jammy-armv7-32bit
Gives an "exec format error"???
2023-09-09 09:15:13 +02:00
Fabian Boehm
c7d5fafc4e Prune Cirrus CI tasks
It's simply too many, especially given we have some tests that need interactivity.
2023-09-09 08:42:55 +02:00
Marcelo Mendes Spessoto Junior
7534572d99 Shortening node.fish completions
Signed-off-by: Marcelo Mendes Spessoto Junior <marcelospe@shinji.linux.ime.usp.br>
2023-09-09 08:31:19 +02:00
Jason Nader
d6e234c60c
completions: add ibmcloud (#10004)
* completions: add ibmcloud

* Update ibmcloud.fish
2023-09-09 08:30:16 +02:00
Asuka Minato
3bf80b2374
add gcc completion for link lib (#10007)
* add completion for lib

* use path basename && use -a
2023-09-09 08:29:39 +02:00
Fabian Boehm
5b44c26a19 reader: Use existing search string when opening the history pager
I sometimes find myself doing something like this:

- Look for a commandline that includes "echo" (as an example)
- Type echo, press up a few times
- I can't immediately find what I'm looking for
- Press ctrl-r to open up the history pager
- It uses the current commandline as the search string,
  so now I'm looking for "echo foobar"

This makes it so if the search string already is in use, that's what
the history-pager picks as the initial search string.
2023-09-09 08:29:24 +02:00
abp
a2bc5709eb completions: Shortened descriptions
- Mainly work is done on gcc
- Some duplicated removed elsewhere

(cherry picked from commit bbe2a2ba9b)
2023-09-08 19:59:34 +02:00
Eric N. Vander Weele
5df36130b7 reader: Apply fish_color_selection fg color and options in vi visual mode
Vi visual mode selection highlighting behaves unexpectedly when the selection
foreground and background in the highlight spec don't match. The following
unexpected behaviors are:

*  The foreground color is not being applied when defined by the
   `fish_color_selection` variable.
* `set_color` options (e.g., `--bold`) would not be applied under the cursor
  when selection begins in the middle of the command line or when the cursor
  moves forward after visually selecting text backward.

With this change, visual selection respects the foreground color and any
`set_color` options are applied consistently regardless of where visual
selection begins and the position of the cursor during selection.

(cherry picked from commit 4ed53d4e3f)
2023-09-08 19:57:56 +02:00
Andy Hall
cf535f0f76 Fix typo in set docs
(cherry picked from commit 6ff971e4c2)
2023-09-08 19:57:56 +02:00
Eric N. Vander Weele
d49072eb0f docs/interactive: Document fish_color_history_current variable
All *.theme files set variables documented in the "Syntax highlighting
variables" section, and fish_color_history_current was missing.

(cherry picked from commit a6e16a11c2)
2023-09-08 19:57:56 +02:00
Miha Filej
e643bd645c completions/mix: Add options for phx.new in 1.7.2 (#9706)
(cherry picked from commit b5bfff9cac)
2023-09-08 19:57:56 +02:00
Marcin Wojnarowski
bb11800d53 Fix adb path completion (#9707)
Support paths with spaces.

(cherry picked from commit 0f1ef34736)
2023-09-08 19:57:56 +02:00
Fabian Boehm
2c460cd664 completions/zfs: Check for zpool
This is an additional tool, and this function is executed on source
time so we'd spew errors.

(also remove an ineffective line - it's probably *nicer* with the
read, but that's not what's currently effectively doing anything)

(cherry picked from commit 85504ca694)
2023-09-08 19:57:56 +02:00
Fabian Boehm
495f6fecbd docs: Chapter on combining redirections
Fixes #5319

(cherry picked from commit d671710656)
2023-09-08 19:57:56 +02:00
ridiculousfish
47587ee05a Revert "Speed up executable command completions"
This reverts commit 0b55f08de2.

This was found to have caused regressions in completions in #9699

(cherry picked from commit c67d77fc18)
2023-09-08 19:57:56 +02:00
Robert Szulist
de5bd624d8 Add Zabbix completions (#9647)
Add Zabbix completions

(cherry picked from commit 9bd1dc14e5)
2023-09-08 19:57:56 +02:00
Fabian Boehm
b4fccb114c __fish_cursor_xterm: Ignore unknown cursor settings
This prevents leaking the escape sequence by printing nonsense, and it
also allows disabling cursor setting by just setting the variable to
e.g. empty.

And if we ever added any shapes, it would allow them to be used on new
fish and ignored on old

Fixes #9698

(cherry picked from commit e45bddcbb1)
2023-09-08 19:57:56 +02:00
Fabian Boehm
3e638517cd completions/git: Don't take options for --{force-,}create
We do the same for checkout -b.

Fixes #9692

(cherry picked from commit bc04abe3ec)
2023-09-08 19:57:56 +02:00
Fabian Boehm
f1a6e77b72 completions/git: Complete branches for --set-upstream-to
See #9538

(cherry picked from commit 563b4d2372)
2023-09-08 19:57:56 +02:00
Fabian Boehm
037f4b9eea __fish_complete_directories: Remove --foo= from token
Otherwise this would complete

`git --exec-path=foo`, by running `complete -C"'' --exec-path=foo"`,

which would print "--exec-path=foo", and so it would end as

`git --exec-path=--exec-path=foo` because the "replaces token" bit was
lost.

I'm not sure how to solve it cleanly - maybe an additional option to
`complete`?

Anyway, for now this
Fixes #9538.

(cherry picked from commit c39780fefb)
2023-09-08 19:57:56 +02:00
Emily Grace Seville
3e6f5999f5 Add md-to-clip completion
- https://github.com/command-line-interface-pages/v2-tooling/tree/main/md-to-clip

(cherry picked from commit ba7785856e)
2023-09-08 19:57:56 +02:00
Chris Wendt
d6bd3d8dc8 Use stack's dynamic completions (#9681)
* Use dynamic completions for stack

* Pass the plain command

(cherry picked from commit 3a72d098e2)
2023-09-08 19:57:56 +02:00
Fabian Boehm
252f521e95 docs: Prevent overflow for narrow screens
Regression from #9003, this is visible on mobile mainly.

Fixes #9690

(cherry picked from commit ca02e88ef1)
2023-09-08 19:57:56 +02:00
Fabian Boehm
3bef75fb79 builtins: Don't crash for negative return values
Another from the "why are we asserting instead of doing something
sensible" department.

The alternative is to make exit() and return() compute their own exit
code, but tbh I don't want any *other* builtin to hit this either?

Fixes #9659

(cherry picked from commit a16abf22d9)
2023-09-08 19:57:41 +02:00
Fabian Boehm
024fae7983 Disable bracketed paste for read
It's not of much use (read will only read a single line anyway) and
breaks things

Fixes #8285

(cherry picked from commit af49b4d0f8)
2023-09-08 19:54:53 +02:00
nat-418
da601d4d69 feat: add support for fossil-scm in prompt (#9500)
* feat: add support for fossil-scm in prompt

* fix: change directory testing and string matching

(cherry picked from commit cf67709931)
2023-09-08 19:54:53 +02:00
Fabian Boehm
0e81d25b36 docs/commandline: Add more on the -oc/-ct thing
This was the remaining immediately actionable part of #7375.

It's not definitely the last word, but a change here would require a
bigger plan.

Fixes #7375
2023-09-08 18:27:34 +02:00
Fabian Boehm
180692fb29 completion: Set up wrapping for gw/gradlew
These were set up as commands in the actual gradle completions, but
they would never be loaded.
2023-09-07 08:06:55 +02:00
Fabian Boehm
46de22561a README: Link via matrix, not gitter
Gitter is now just another matrix server, so it's pretty useless and
not as well-known as a service.
2023-09-06 15:48:12 +02:00
Fabian Boehm
5e775d1607 Upgrade actions/checkout to v4
Otherwise it's gonna start throwing node warnings soon.

Isn't software great?
2023-09-06 10:13:04 +02:00