Commit graph

16965 commits

Author SHA1 Message Date
Mahmoud Al-Qudsi
b7b20e9fac Always source file after funced (#10318)
... even if the file hasn't changed. This addresses an oddity in the following
case:

* Shell is started,
* function `foo` is sourced from foo.fish
* foo.fish is *externally* edited and saved
* <Loaded definition of `foo` is now stale, but fish is unaware>
* `funced foo` loads `type -p foo` showing changed definition, user exits
  $EDITOR saving no changes (or with $status 0, more generally).
* Stale definition of `foo` remains

(cherry picked from commit 2c2ab0c1fa)
2024-03-13 18:16:34 +01:00
Jason Nader
fada4f2e01 completions: add ssh -D option
(cherry picked from commit fc58b9c68f)
2024-03-13 18:15:24 +01:00
Paul Gier
2655d9a3fa functions: handle hostname starting with dash
If a hostname starts with a dash `-` character, the prompt_hostname function
fails because the `string` function interprets it as an option instead
of an argument.

(cherry picked from commit 6c9c033126)
2024-03-13 18:15:24 +01:00
Jason Nader
c3aefc581f completions: update 'echo'
(cherry picked from commit 2f332f0019)
2024-03-13 18:15:24 +01:00
Fabian Boehm
36c8746870 docs/argparse: Add some more examples, something on -x
Fixes #10284

(cherry picked from commit 94d3307469)
2024-03-13 18:15:24 +01:00
Paul Ouellette
6cd1b23502 Remove share/completions/highlight.fish
Highlight ships its own completion script:
https://gitlab.com/saalen/highlight/-/blob/master/sh-completion/highlight.fish

(cherry picked from commit 2cb60bed10)
2024-03-13 18:15:24 +01:00
Peter Collingbourne
1f9226aaa4 completions/fastboot: declare -s as taking an argument, add argument completions
(cherry picked from commit 0b3e9609f1)
2024-03-13 18:15:24 +01:00
Nethum Lamahewage
6da36f4ae5 history: fix deleting last entry
(cherry picked from commit a36ff7d143)
2024-03-13 18:15:24 +01:00
zuisong
8ed052079f Add --url-query completion for curl (#10332)
Add missing completion for curl's `--url-query` option

(cherry picked from commit a1e46a94f6)
2024-03-13 18:15:24 +01:00
Fabian Boehm
95f6803241 docs/completions: Remove duplicated content
Fixes #fish-site/121
2024-02-14 21:54:02 +01:00
Johannes Altmanninger
47bb07eda3 __fish_anypager: prefer less over other pagers
This is our traditional behavior; "man" and "git" do the same.

(cherry picked from commit b83f3b0e98)

Proposing this for 3.7.1 because I think see this as regression in 3.7.0 -
a user might have installed bat for syntax highlighting only.
2024-01-21 17:31:24 +01:00
Fabian Boehm
c31e194120 Revert "wildcard: Remove useless access() call for trailing slash"
This reverts commit 6823f5e337.

Fixes #10205
2024-01-09 18:59:32 +01:00
ksyx
001f797f80 fix: crash when running ELF w/ interpreter missing
The function `stat` as defined in `include/x86_64-linux-gnu/sys/stat.h`
marks its arguments as nonnull as in below. This UB causes crash in
release builds with variable `interpreter` assumed to be nonnull. Along
with failing stat returning nonzero value, this ultimately causes
`strlen` to be called with NULL as argument.

Definition of `stat`:
```
extern int stat (const char *__restrict __file,
		 struct stat *__restrict __buf) __THROW __nonnull ((1, 2));
```
Reproduce:
```
> # interp.c is any vaild single file C source
> gcc ./interp.c -Wl,--dynamic-linker=/bad -o interp
> echo './interp' > in.txt
> ./fish < in.txt
'./fish < in.txt' terminated by signal SIGSEGV (Address boundary error)
```

Co-authored-by: Moody Liu <mooodyhunter@outlook.com>
2024-01-09 13:23:52 +01:00
Asger Hautop Drewsen
b91723dab6 Log original exit code used when a builtin returns a negative exit code 2024-01-04 16:13:41 +01:00
David Adam
0e4d088b11 Release 3.7.0 2024-01-01 23:15:17 +08:00
Fabian Boehm
20d36cd9a2 set: Remove a broken array read
Hardcode "--erase" as a hack, because "argv[-1]" is *not* a thing.

Introduced in aacc71e585.

Fixed in master by no longer being C++.
2024-01-01 15:13:23 +01:00
David Adam
be0ea9862c CHANGELOG: work on 3.7.0 2024-01-01 22:01:45 +08:00
Fabian Boehm
d6833edf54 CHANGELOG 2024-01-01 00:14:26 +01:00
Fabian Boehm
5c532ace5a CHANGELOG umask fix 2023-12-31 19:40:18 +01:00
Fabian Boehm
3b9b84101a umask: Correctly handle empty symbolic value
Simple return/echo confusion.

Fixes #10177

(cherry picked from commit b895cf49ca)
2023-12-31 19:39:38 +01:00
jydeng
4c616c56b2 add more subcommands for apt (#10100)
(cherry picked from commit b9b850f286)
2023-12-31 23:01:03 +08:00
David Adam
8a447355a2 CHANGELOG: work on 3.7.0 2023-12-31 22:37:18 +08:00
Johannes Stölp
58d1467fb7 [doc]: fix --path description of set cmd
(cherry picked from commit 1cba28c120)
2023-12-31 13:30:10 +08:00
David Adam
8508cc50b0 CHANGELOG: work on 3.7.0 2023-12-31 13:07:02 +08:00
David Adam
1b3f7cf2e5 themes/Nord: include license tag
(cherry picked from commit 31eb429add)
2023-12-31 13:03:01 +08:00
David Adam
6d9c32728e docs/license: note Nord theme license
(cherry picked from commit ea34f71e1c)
2023-12-31 13:03:00 +08:00
David Adam
e0282d0174 docs/license: remove duplication 2023-12-31 12:58:39 +08:00
Johannes Altmanninger
dc90093f8b completions: use POSIX character classes with sed
\s and \S are not supported BSD sed.

Fixes #10163

(cherry picked from commit 81c8cd1b61)
2023-12-31 12:32:52 +08:00
Rudolf Lovrenčić
bfe47e5979 Add object files to ninja completions
When working on a C or C++ projects, it is often handy to compile a
single file (e.g. large refactoring where many files fail to compile so
compiling a single file results in less compiler errors making the compiler
output significantly easier to read and navigate). Current completion offers
only ninja targets which are usually just top level binaries. This commit makes
object files and library files to be offered in the ninja completion.

The change is inspired by the zsh ninja completion [1], but aims to reduce noise
by only matching for entries ending in ".o", ".so" or ".a".

[1] c828f06e08/src/zsh/_ninja (L30)

(cherry picked from commit 2e89e0c205)
2023-12-31 12:32:02 +08:00
Damien Picard
99254d74fe completions: improve Blender completions
- Replace short options with old-style options: even though they are
  single-letter, Blender's options cannot be combined.
- Add comments to separate blocks of options, mirroring Blender's help message.
- Add missing options: render-frame, python-use-system-env, register-allusers,
  unregister, unregister-allusers.
- Remove options: debug-gpu-disable-ssbo, debug-gpu-renderdoc, -R.
- Fix typos:
  - debug-depsgraph-eval (was -evel)
  - debug-depsgraph-pretty (was -time)
  - app-template (was open-last)
- Update output formats:
  - Add descriptions.
  - Add HDR, TIFF, OpenEXR, OpenEXR Multilayer, FFmpeg, Cineon, DPX, JPEG 2000,
    and WebP, which are optional but generally available.
  - Remove IRIZ, which is no longer available.
- Fix arguments for --use-extension: they should be 0 or 1, not true or false.
- Make env-system-* options require a parameter.
- Improve --add-ons by querying the list of add-ons inside Blender rather than a
  hardcoded path. This is because Blender's add-on modules may come from many
  different paths which depend on platform.
- Fix __blender_echo_input_file_name, by relying on extension.
- Fix listing of scene datablocks inside Blend file.
- Add listing of Python text datablocks to execute inside Blend file.

Closes #10150

(cherry picked from commit 9132684617)
2023-12-31 12:30:54 +08:00
Fabian Boehm
0af930d992 Add doctl completion
Just calling a generation thing

(cherry picked from commit e682ffaf11)
2023-12-31 12:21:25 +08:00
sigmaSd
7c20fe8cc6 use a better method
(cherry picked from commit df3c5ab402)
2023-12-31 12:18:48 +08:00
sigmaSd
25f16f0bfd fix deno task completion for jsonc
(cherry picked from commit f924f06df7)
2023-12-31 12:18:48 +08:00
Fabian Boehm
1562a6b99e completions/git: Disable log signatures
Fixes #10144

(cherry picked from commit a2d0016cc1)
2023-12-31 11:36:49 +08:00
Fabian Boehm
1af5fb64b7 vi-bindings: Make "/" open pager and go to insert mode
Fixes #10141

(cherry picked from commit dbdef5d267)
2023-12-31 11:36:01 +08:00
Amy Grace
e2ab7397ac completions: add BSD calendar
(cherry picked from commit d1a906026a)
2023-12-31 11:33:45 +08:00
Amy Grace
e613adda69 completions: add rename (#10136)
* completions: add rename

* add completions for other versions of `rename`

(cherry picked from commit 00ffc397b4)
2023-12-31 11:32:11 +08:00
Amy Grace
80cb735cbe completions: add smerge (Sublime Merge CLI tool) (#10135)
* completions: add smerge (Sublime Merge CLI tool)

* completions: add `-o` (and file completion) to `smerge mergetool`

(cherry picked from commit b7a85fe172)
2023-12-31 11:30:36 +08:00
Ivan Kovnatsky
c0cc78cb54 Add git branch --[no-,contains] completions (#10133)
* Add `git branch --[no-,contains]` completions

* Add __fish_git_commits as an argument

(cherry picked from commit 8c36c21e2e)
2023-12-31 11:29:49 +08:00
SanskritFritz
5b1b466f97 Tab completions for ncdu completed
(cherry picked from commit 684f44bca3)
2023-12-31 11:28:48 +08:00
Fabian Boehm
4d858b3f88 completion: Set up wrapping for gw/gradlew
These were set up as commands in the actual gradle completions, but
they would never be loaded.

(cherry picked from commit 180692fb29)
2023-12-31 11:15:21 +08:00
ridiculousfish
b28eae8be9 Allow custom completions to have leading dots
By default, fish does not complete files that have leading dots, unless the
wildcard itself has a leading dot. However this also affected completions;
for example `git add` would not offer `.gitlab-ci.yml` because it has a
leading dot.

Relax this for custom completions. Default file expansion still
suppresses leading dots, but now custom completions can create
leading-dot completions and they will be offered.

Fixes #3707.

(cherry picked from commit b7de768c73)
2023-12-31 09:55:09 +08:00
David Adam
f6676350a7 CHANGELOG: work on 3.7.0 2023-12-31 09:53:20 +08:00
Nater0214
b10611091f completions: add airmon-ng
(cherry picked from commit ca705fcbb5)
2023-12-31 09:47:58 +08:00
NextAlone
c1f1a92b99 completion(usbip): support ipv6 (#10113)
* completion(usbip): support ipv6

Signed-off-by: Next Alone <12210746+NextAlone@users.noreply.github.com>

* completion(usbip): use fish string match

Signed-off-by: Next Alone <12210746+NextAlone@users.noreply.github.com>

* fix: support --remote and -r both

Signed-off-by: Next Alone <12210746+NextAlone@users.noreply.github.com>

---------

Signed-off-by: Next Alone <12210746+NextAlone@users.noreply.github.com>
(cherry picked from commit 382005c33e)
2023-12-31 09:46:39 +08:00
Nater0214
25ae69dac1 completions: add checkinstall
(cherry picked from commit 1a42c97f75)
2023-12-30 23:27:04 +08:00
Dmitriy Shishkov
963166c7ed Replaced double quotation marks with single in dnf.fish completions
(cherry picked from commit bd4adf86f4)
2023-12-30 23:23:06 +08:00
exploide
0acf05eca0 completions: improved netcat completions
- enhanced ncat completions

(cherry picked from commit a390e36e9d)
2023-12-30 23:21:38 +08:00
Asuka Minato
a307ca3680 Update tar.fish (#10079)
* Update tar.fish

* add more long options

* add more options

(cherry picked from commit 9f9accf203)
2023-12-30 23:16:23 +08:00
Fabian Boehm
3ac531785e Add __fish_anypager helper
This makes it easier to get *any pager* in the number of places we do.

Unfortunately:

1. It can't just execute the pager because that might block
2. We can't really set the necessary options for less here
   so they still need to be set outside.

This

Fixes #10074

by falling back to `cat` in that case. We could also decide to abort
instead of using a non-pager, but for history that's probably fine.

(cherry picked from commit ed489d0d52)
2023-12-30 23:15:40 +08:00