Commit graph

2320 commits

Author SHA1 Message Date
ridiculousfish
6e56637cf0 Remove support for the ? wildcard
Fixes #4520
2018-03-31 16:54:50 -07:00
ridiculousfish
c0f832a743 Invoke path_helper on macOS on all sessions, not just login
fish reads paths out of /etc/paths.d. Prior to adbaddf it did
this on every shell invocation; with adbaddf it does so on only login
shells. This change wasn't justified so let's revert this behavior.
2018-03-31 12:01:29 -07:00
Frederick Akalin
adbaddfaf4 Fix reading of /etc/paths on OS X
(and /etc/paths.d/*)

Do so by emulating the behavior of /usr/libexec/path_helper for login
shells, matching the behavior in /etc/profile.

Also add a path_helper command to reproduce the behavior of
/usr/libexec/path_helper for fish.

This also handles setting MANPATH if necessary.

Fixes issue #4336
2018-03-27 23:38:15 -07:00
Luc J. Bourhis
c116843611 Completion for conda, the package manager (#4837)
* Completion for conda, the package manager

* Make the list of platforms a private variable

* Add commands activate and deactivate

* Avoid clobbering a user-defined function __

* Use Use __fish_seen_subcommand_from to identify subcommand

And treat the case of the first argument as a special case
with function __fish_conda_fist_arg

* Factor out create from loop for option --name

* Fix typo (missing parenthesis in description)

* Start from a blank state by removing completions from conda configuration script
2018-03-26 17:07:23 +02:00
Mahmoud Al-Qudsi
6d80ab8d74 Rename $pid (née %self) to $fish_pid 2018-03-24 11:54:27 -05:00
Daniel Beckwith
7583d57b63 Add Makefile --file detection to completion 2018-03-23 22:45:40 -07:00
Wilke Schwiedop
44e2c28255 revisit gentoo-related completions (#4758)
* revisit gentoo-related completions

- add completion for emaint
- improve completion for emerge
  still incomplete, but an impovement regardless
- improve completion for equery
- add gentoo/portage-related auxiliary functions

* fix spelling

* remove trailing '.'

* remove old '_' invocation and capitalize descriptions

* add number-completion

* remove trailing '.'

* shorter descriptions

* replace sed with fish-builtin and drop deduplication

* batch change capitalization (lower case)

* indent equery descriptions

* batch change capitalization (upper case)
2018-03-23 19:42:30 +01:00
Fabian Homborg
316303d777 [subl completions] Take files with new-window
Fixes #4831.

Thanks @luc-j-bourhis.
2018-03-17 21:06:44 +01:00
Mahmoud Al-Qudsi
5a561bcfce Source : function without any C++ hacks
Thanks, @faho
2018-03-15 18:19:08 -05:00
Laurent Pireyn
5732aeac9a Create completion for JBake 2018-03-15 21:59:23 +08:00
Mahmoud Al-Qudsi
007ae0b15e Add colon.fish for : compatibility with sh and bash
no-op function for compatibility with sh, bash, and others.
Often used to insert a comment into a chain of commands without having
it eat up the remainder of the line, handy in Makefiles.
2018-03-14 17:41:09 -05:00
Fabian Homborg
228c5c1319 [git completions] Filter unreplaced $PWD
Otherwise this'd let the full filename through if it isn't in $PWD.
2018-03-14 10:56:59 +01:00
Lee Dohm
3ec1fab7aa Update to handle latest Atom options (#4801)
* Update to handle latest Atom options

* Fix typo and wording
2018-03-13 14:12:35 +01:00
Fabian Homborg
b2d887860a [git completions] Speed up __fish_git_files with lots of files
- Cache translations instead of calling `gettext` once per file

- Only do the ":/" thing if the file isn't in $PWD/**

For a git repo created like

```fish
git init
touch a(seq 0 1000)b
```

this changes the time from about 2s to 0.3s.
2018-03-13 13:47:17 +01:00
Fabian Homborg
4057cfdce5 [git completions] Minor cleanup 2018-03-13 13:45:37 +01:00
Fabian Homborg
bc976a913c [git completions] Use staged files for rm --cached 2018-03-13 13:45:03 +01:00
Fabian Homborg
8b4ac66349 [git completions] Reremove stray "[" 2018-03-13 13:44:36 +01:00
Mahmoud Al-Qudsi
c24739d3bd Use git ls-files instead of local files for git rm --cached
`git rm --cached` is often used to delete a file that no longer exists
in the working tree but remains in git's index. `git ls-files` will list
files that are in the HEAD, which is exactly what we want. Local files
not in `HEAD` can't be deleted from git anyway.
2018-03-12 19:22:41 -05:00
Mahmoud Al-Qudsi
c51abd04ff Clean up $__fish_*dir variable names
Closes #4429
2018-03-12 08:34:20 -05:00
Mahmoud Al-Qudsi
b42b562d06 Revert prompt_hostname to short hostname only
Hat-tip: @zx8. Closes #4804.
2018-03-12 08:24:42 -05:00
Giovanni Bajo
3b7d759d11 Update completions for go
The tool subcommand had a "-f" flag to disallow file completions which is wrong: most of the tools there require a file/directory argument.

Since we're here, also limit "go tool compile" to only match Go source files.
2018-03-12 20:34:35 +08:00
Daniel Apolinario
cc80951e79 Completions for bb-wrapper and powerpill
Completions for bb-wrapper (bauerbill) and powerpill
2018-03-10 18:31:29 +01:00
George Christou
4ae6843b6b completions: [git] Fix rogue bracket typo (#4799) 2018-03-10 18:30:43 +01:00
Mahmoud Al-Qudsi
18a9aa58cd Add binding for MSFT/WSL paste escape sequence 2018-03-10 10:57:32 -06:00
Mahmoud Al-Qudsi
b3ec069401 Add missing $argv injection in fish_default_key_bindings.fish
These have to be present in all the default rules so that any errors can
be silenced at startup (and so additional arguments can be passed in).
2018-03-10 10:54:29 -06:00
ridiculousfish
9a5afe3913 Clean up and document functions --handlers 2018-03-10 02:27:25 -08:00
Mahmoud Al-Qudsi
410f6fbd44 Switch prompt_hostname over to $hostname 2018-03-09 15:05:43 -06:00
Mahmoud Al-Qudsi
eaa5958b77 Update completions for read builtin
Change short option for `--shell` to `-S` per #4490 and add description for -s/--silent
2018-03-09 11:59:50 -06:00
Mahmoud Al-Qudsi
2a266c4d48 Update fish's only usage of read -s to use read --shell instead 2018-03-09 11:55:12 -06:00
Mahmoud Al-Qudsi
a6f79dcca8 Implement -s for fish_vi_key_bindings
In similar vein to how fish_default_key_bindings works, parameters
passed to the function are automatically passed to bind upstream.
Additionally, -s is automatically added if no parameters had been
specified to prevent startup error messages. See 46d1334.

Closes #4494
2018-03-09 09:29:25 -06:00
Mahmoud Al-Qudsi
0866653a87 Merge branch 'no_percent'
Drops the % notation for process expansion. The existing notation was a
mess and expanded jobs, process ids, and process names via dark magic.
With this change, % is no longer a special character and can be used
unescaped with impunity.

The variables %self and %last, referring to fish's own pid and the pid
of the last backgrounded job respectively, have been replaced with $pid
and $last_pid. These are read-only variables, protected against being
redefined by the user.

Author's note: I would have personally preferred $fish_pid instead of
$pid but since we debated changing $version to $fish_version and then
reverted that change (with much acrimony), it makes no sense to break
with that precedent here. Additionally, $fish_last_pid is quite wordy.

Closes #4230. Closes #1202.
2018-03-09 09:16:31 -06:00
Mahmoud Al-Qudsi
b236ab6e5d Update %self references with $pid instead 2018-03-09 03:56:19 -06:00
George Christou
73f2b444ef completions: [git] Do not decorate reflog 2018-03-07 22:01:23 +01:00
Mahmoud Al-Qudsi
b50541c655 Add comment about checking if jq exists in a future update to yarn completions 2018-03-06 17:03:15 -06:00
Fabian Homborg
88cf7e16c6 [git completions] Sort tags newest-first
This has the nice effect of sorting "2.7.0" before "2.7b1".
2018-03-06 22:06:39 +01:00
Fabian Homborg
5cb3918c1c [git completions] Remove unnecessary helper function 2018-03-06 22:06:39 +01:00
Fabian Homborg
f3c864a9e2 [git completions] Offer unmerged files for add
These occur e.g. when resolving a conflict, which then needs `git add`.
2018-03-06 22:06:39 +01:00
Fabian Homborg
b24971dc9e [git completions] Only offer files for log --
After a "--" separator, `git log` only takes files.
2018-03-06 22:06:39 +01:00
Fabian Homborg
754b52bb26 [git completions] Make branches work on git 2.7.0 again
This used the "--format" option, which was only added in git 2.13.0.
2018-03-06 22:06:39 +01:00
Cesar Andreu
3792fb086a Fix man autocomplete when a section is set 2018-03-06 20:50:20 +01:00
Fabian Homborg
93209ab053 Fix termux path
This is "/data/data/com.termux/files/usr/etc", not just ".../files/etc".
2018-03-06 17:55:25 +01:00
Fabian Homborg
e7f8e58be9 Add more ssh known_hosts paths
Fixes #4759.
2018-03-06 15:27:34 +01:00
Mahmoud Al-Qudsi
a85d2bf27a Add intelligent package completion to yarn
Now parses package.json and uses results to provide a list of possible
completions to `yarn remove`. There may be other subcommands that could
benefit from this.

Could have parsed yarn output, but yarn is slow and packages.json format
is generally standard since it's machine-generated json.
2018-03-05 08:28:19 -06:00
Mahmoud Al-Qudsi
225f748f79 Add __fish_parent_directories helper function for completions
Can be used to retrieve a list of parent paths, useful for searching
ancestors recursively via their absolute paths. Paths are returned from
deepest to shallowest, starting from the path passed in. Paths are not
validated for performance reasons. (Usually the input to
__fish_parent_directories would be (pwd) or (dir $file).)
2018-03-05 08:25:25 -06:00
George Christou
6f1ae79a13 alias: Fix string args being parsed as options 2018-02-28 11:17:00 +01:00
ridiculousfish
973533e374 Teach alias about wrap argument injection
Update the alias function to pass arguments to 'wraps'. For example
alias gco='git checkout' now works like it ought to.
2018-02-27 14:12:44 -08:00
Xavier Lepaul
5648322993 Add required argument to history delete (#4740) 2018-02-25 16:46:25 +01:00
Kevin Konrad
8536a6825f add completion for MacPorts 2018-02-24 23:32:25 +08:00
Jordi Burguet-Castell
0cd934ea63 apt.fish: add completions for "depends" and "rdepends" 2018-02-20 22:38:48 +11:00
Fabian Homborg
f7adaeb97b Use the new fish_exit event 2018-02-19 20:21:02 +01:00
Benoit Hamon
54c9d57e42 Ansible completions (#4697)
* 🚀

* prepare to merge into fish-shell

* split into different files

* remove deprecated option

* captitalize descriptions

* make shorter description for ansible

* update ansible-playbook (and ansible for consistency)

* update version on vault and galaxy
2018-02-06 17:53:23 +01:00
Fabian Homborg
7d60d1db6d [git completions] Remove unique-remote-branches
This never worked properly (since a branch that only exists locally
would also be offered) and is dog-slow.

When we come up with a better way to do it we can readd it.
2018-01-31 21:55:22 +01:00
Fabian Homborg
18e21a0992 [git completions] Complete branches faster
This saves one `git branch` invocation and improves the descriptions.
2018-01-31 21:55:18 +01:00
Fabian Homborg
0ab437be26 [git completions] Make paths not in $PWD relative to the root again
When git prints a path like "share/completions/git.fish", that's
relative to the root of the repo. So we need to either remove
everything from the $PWD (if the path is inside the $PWD), or prepend
a ":/", which is git-speak for "relative to the root".

This was removed by mistake in the recent switch to `git status`.

Fixes #4688.
2018-01-31 11:25:13 +01:00
Fabian Homborg
4fac2f98c2 [git completions] Use status v1 output
Apparently the v2 format is too new (released Nov 2016), and the v1
format has everything we need.
2018-01-31 11:25:13 +01:00
ridiculousfish
c4a12f90c1 Bind pager-toggle-search to control-s by default. 2018-01-30 09:58:08 -08:00
Fabian Homborg
e3a2eadb49 Remove obsolete "--gui" option from gradle completions
Fixes #4691.

[ci skip]
2018-01-29 19:31:12 +01:00
Benoit Hamon
c92bb703dc add few bindings for vi mode 2018-01-26 18:32:03 +01:00
Mahmoud Al-Qudsi
d11f9f7148 Fix git push REMOTE :BRANCH completion
The `string match` was limiting it to `git push REMOTE :<TAB>` and would
fail for `git push REMOTE :x<TAB>`. Now working as expected.
2018-01-25 20:32:20 -06:00
Fabian Homborg
ea897fcc0f
git completions: Parse git status --porcelain (#4673)
* git completions: Parse git status --porcelain

This is much faster on large repositories, as it allows us to do a lot
more with a single git call.

It also makes it easy to add descriptions to distinguish modified
files from untracked ones.

TBD is if all commands now have the right kinds of files.

[ci skip]
2018-01-25 13:35:00 +01:00
Birger J. Nordølum
2ba76a7115 diskutil.fish: added apfs completions, and tweaks to old ones 2018-01-23 19:25:12 +01:00
Yurizal Susanto
a6536db502 Update Eopkg support (#4662)
Update Eopkg support

Improve Eopkg completions
2018-01-22 14:25:34 -08:00
Ivan Trubach
6066e243e0 Fixed suspend --force conditions 2018-01-19 11:23:55 +01:00
Birger J. Nordølum
fde647214d brew.fish: added cask completion & tweaks 2018-01-18 18:05:14 +01:00
Thom Chiovoloni
7b88187310 Add ability to autosave functions at the end of funced 2018-01-18 18:03:52 +01:00
Thom Chiovoloni
42fa841573 Fix #4480 by using a temporary file with a redirect to the correct location. 2018-01-16 18:38:20 +01:00
Thom Chiovoloni
7dae40a240 Revert "Work around OS X issue with dropped #fragment in launched URLs"
This reverts commit 80b658e247.
2018-01-16 18:38:20 +01:00
David Adam
85131452fa apt: add completions for policy
Closes #4652.
2018-01-13 11:03:36 +08:00
MindTooth
721df61f4b brew.fish: add the leaves option (#4645) 2018-01-06 12:39:15 +01:00
pinage404
1af4acbd0e Add: ngrok completions (#4642)
Completions are based on the help messages of [ngrok](https://ngrok.com/)
2018-01-05 15:30:58 +01:00
emiliano
3cabed88e2 Add --no-color to more git invocations (#4636)
This breaks when git has been set to always print in color.
2018-01-03 14:35:27 +01:00
Fabian Homborg
3650712ff2 python completions: Disable file completion
Otherwise the prior commit was pointless.
2018-01-01 13:18:55 +01:00
Fabian Homborg
66f181499b Strip quotes in __fish_complete_suffix
Fixes #4481.
2018-01-01 13:18:40 +01:00
Mahmoud Al-Qudsi
0aa4c4a483 Add git completions for git push REMOTE :BRANCH
`git push REMOTE :BRANCH` deletes remote branch BRANCH from remote
REMOTE. Should only kick in when the pattern matches, hopefully didn't
break anything else!
2017-12-28 14:26:40 -06:00
Fabian Homborg
4096a7fda9 Revert "Fix "Unknown argument -s" error in fish_vi_key_bindings"
Unfortunately this made tests on travis fail - for some reason I still need to figure out.

This reverts commit 5acbd32c2e.
2017-12-22 00:44:18 +01:00
Yurizal Susanto
94ff789c4b Add eopkg completion support (#4600)
* Add eopkg support

Add support for eopkg in __fish_print_packages function, and
add new completion eopkg.fish in share/completions

* Sorry for the empty file

* Sorry for the empty file again

* Use builtin function for checking subcommand and options

* Fix description

* Use string function to replace grep and cut

* Add completion for search command
2017-12-21 16:43:21 +01:00
David Guyot
dcf9ce6fc5 Added completions/translations for zfs and zpool 2017-12-21 16:39:06 +01:00
Fabian Homborg
5acbd32c2e Fix "Unknown argument -s" error in fish_vi_key_bindings
This was caused by it prepending "-s" to argv always,
and later checking $argv[1].

As it turns out, that is kinda superfluous, so we can just add "-s" to
the `bind` calls.

Also adjust the tests so the vi-bindings are enabled via the function,
which would have caught this.

Fixes #4494.
2017-12-21 16:17:21 +01:00
Fabian Homborg
edcf9ebc12 [git completions] Remove staged_files function
Turns out "__fish_git_staged_files" does the same thing as "__fish_git_modified_files --staged".

Also use "--staged" instead of "--cached", which is a more
understandable synonym.

Many thanks to @thomcc on gitter.
2017-12-18 20:05:56 +01:00
Niraj Thapaliya
0c2d939e02 yarn run tab completion
completes #4597
2017-12-14 22:58:08 -06:00
Niraj Thapaliya
7cd9c3b2bf Clean trailing whitespace 2017-12-14 22:09:53 -06:00
Fabian Homborg
4ca9953114 Skip unusable paths in __fish_print_hostnames
See
https://github.com/fish-shell/fish-shell/issues/4511#issuecomment-343022740.

This would try to `cd` to ~/.ssh even if it didn't exist. That's
clearly bogus.
2017-12-13 13:18:25 +01:00
PenegalECI
0f587320ed Added translations for mdadm completions (#4587) 2017-12-12 22:24:02 +01:00
Ron Gebauer
7aaf897a72 Add modified completion for git diff (#4592)
* Add modified completion for git diff

* Add modified completion for git diff
2017-12-12 22:16:43 +01:00
Aaron Bieber
75e17e007d add signify completions for OpenBSD 2017-12-12 19:19:09 +01:00
Aaron Bieber
37c7950a3f add vmctl completions for OpenBSD 2017-12-12 19:19:05 +01:00
Aaron Bieber
eec47a173d add rcctl completions for OpenBSD 2017-12-12 19:19:01 +01:00
Aaron Bieber
e135024cc4 add pkg_info completions for OpenBSD 2017-12-12 19:19:01 +01:00
Aaron Bieber
e57f5cc99b add pkg_delete completions for OpenBSD 2017-12-12 19:19:01 +01:00
Aaron Bieber
8bfd3fa144 add pkg_add completions for OpenBSD 2017-12-12 19:19:01 +01:00
Aaron Bieber
53e08cd0d6 add OpenBSD pfctl completion 2017-12-12 19:18:57 +01:00
Aaron Bieber
bfd2885279 add package parsing for OpenBSD 2017-12-12 19:18:53 +01:00
Aaron Bieber
440df37b41 parse *BSD interface names 2017-12-12 19:18:53 +01:00
Aaron Bieber
db0ff0bcde Add generic parser for /etc/man.conf
- Also rename get_paths_from_manpath() to get_paths_from_man_locations()
2017-12-12 19:18:47 +01:00
Aaron Bieber
277cd30520 add ffs to known filesystems 2017-12-12 19:18:47 +01:00
Mohammad Ali Alfarra
ba04c2af3d Add exercism completion 2017-12-11 10:44:06 +01:00
Johan Walles
0e9d52bc41 [Informative VCS Prompt] Print failing exit codes
Before this change, if a command failed, this was indicated by the "$"
at the end of the prompt turning red.

With this change in place, if a command fails, the exit code of the
failing command is displayed in [square brackets].
2017-12-11 10:35:21 +01:00
Aleksey Filippov
4bcd0413f8 do not execute external command in pkill completions (#4586)
Running "cut" multiple times in a loop has an adverse performance
impact on first use, especially on slow systems. Using builtin "read"
for the same purpose is faster and cleaner.
2017-12-10 21:56:29 -08:00
Mahmoud Al-Qudsi
ae700c8707
Merge pull request #4581 from mqudsi/help_section_workaround
Work around OS X issue with dropped #fragment in launched URLs
2017-12-07 18:59:16 -06:00
ArkBriar
5faa425df1 fix #4521 (#4575) 2017-12-04 22:51:20 -08:00