Commit graph

1713 commits

Author SHA1 Message Date
Federico Ferri
168a156e58 implement swap-selection-start-stop function
The swap-selection-start-stop function goes to the other end of the highlighted text, the equivalent of `o' for vim visual mode.

Add binding to the swap-selection-start-stop function, `o' when in visual
mode.

Document swap-selection-start-stop, begin-selection, end-selection, kill-selection.
2016-03-20 19:22:04 -07:00
Federico Ferri
879ee61a30 fix w, e (with a trick to cope with big-words) 2016-03-20 19:17:15 -07:00
Kurtis Rader
fb0921249f add \r equivalent binding
Add a binding that was overlooked by commit
d65c63322e.

Fixes #2834
2016-03-20 12:08:46 -07:00
Cody Frazer
1828def866 Add --no-index option completion for git diff 2016-03-20 10:10:51 -05:00
Fabian Homborg
dedc7f6f03 Fix acpi check in nim prompt 2016-03-20 12:20:39 +01:00
Fabian Homborg
de0349399c robbyrussell prompt: Check for git/hg existence
Fixes #2826
2016-03-20 12:17:00 +01:00
Owen Richardson
9f0417b587 make alt-L output respect multi-line prompts
Fixes #718
2016-03-18 15:53:29 -07:00
lordlycastle
540bdfcb02 date and uniq completions for OS X. 2016-03-12 13:57:37 +01:00
Fabian Homborg
6288f89bf9 Move code in etc/config.fish to share/config.fish
instead add a bit of information on how fish's configuration works for
the admin to etc/config.fish.

This means that fish is fully functional without /etc, which might be nice for "stateless" systems.
2016-03-09 13:07:04 +01:00
David Adam
f4c14b69a2 Update dpkg completions to complete commonly used options
Closes #2798.
2016-03-06 21:29:09 +08:00
ridiculousfish
e3968ba872 Remove "w/o Background Color" text from Set Theme button in fish_config
This is important information but the Set button is the wrong place to
put it.
2016-03-02 15:02:28 -08:00
Fabian Homborg
0e8a8a7c80 Migrate abbrs from =-separated to space-separated
We silently upgrade existing abbreviations and change the separator when
saving.

This does not yet warn when the user is using the old syntax.

Resolves #2051
2016-03-02 10:59:12 -08:00
Fabian Homborg
fbd53f2da1 Check ssh's KnownhostsFiles in print_hostnames
These are an additional source of information

Thanks to @sysbot (#2313) for the inspiration.

This also stringifies the ssh_config reading
2016-03-02 15:16:52 +01:00
Fabian Homborg
65aeaab054 print_hostname: Avoid matches in fstab comments harder 2016-03-02 15:16:52 +01:00
Fabian Homborg
94c12d84e2 Stringify reading nfs in print_hostnames 2016-03-02 15:16:52 +01:00
Fabian Homborg
a5f5e6c1ef Ignore zero-ips in print_hostnames
This would be a lot of useless options for those who block via hosts.
2016-03-02 15:16:42 +01:00
Jaime Marquínez Ferrándiz
61fd8b9861 history.fish: Fix input handling
Pass the input to 'string', it was accidentally removed in fcdc6a48c0.
2016-03-02 14:26:10 +01:00
Fabian Homborg
5446841069 Ditch __fish_sgrep in obnam completions 2016-02-28 18:07:57 +01:00
Fabian Homborg
fb5a8a089e Use command which in type
Turns out some shells will alias which to be something function-aware,
but doing this on fish would blow up because it would call type which
would then call which which would then call type....

Fixes #2775
2016-02-28 12:12:13 +01:00
Kevin Ballard
d8a497434f Rewrite __fish_urlencode to not encode valid characters
Much better to only encode the characters that are not URL-safe. This
also doesn't involve any forking, and it even handles newlines and NULs
in the input.
2016-02-27 00:14:52 -08:00
Kevin Ballard
2bb7c587f4 Skip over /etc/paths.d entries that don't exist
I had an old /etc/paths.d/TeX file that listed a path /usr/texbin that
doesn't exist anymore. This was causing the `set PATH` to print a
warning.
2016-02-26 20:26:24 -08:00
Kevin Ballard
2187c0a84b Standardize indentation in config.fish 2016-02-26 20:22:59 -08:00
Fabian Homborg
c1b384e5d3 Add functions and configuration snippets hierarchy
This allows "vendors" (i.e. third-party upstreams interested in
supporting fish) to add auto-loaded functions and eager-loaded
configuration "snippets", while still allowing both the user and the administrator to
fully override all of that.

This has been inspired by systemd's configuration hierarchy, and implements a similar scheme
whereby files with the same name in higher-ranking directories override files in lower-ranking ones.

Fixes #1956
2016-02-26 12:14:55 +01:00
Fabian Weisshaar
a805d401b8 add completions for diskutil (osx) 2016-02-23 13:54:46 +01:00
Aaron Gyes
613739ba07 Try to just see if grep is happy with --color=auto, or not, as the --help exit status varies in BSD vs. GNU. 2016-02-20 21:11:40 +01:00
Jak Wings
1767681f9a Fix the file URL for Terminal.app
* When using a UTF-8 locale, set locale to C temporarily in order to
  read one byte at a time.
* Use the builtin printf in a forward-compatible way. (GNU)
* Improve the readability of the code.
2016-02-16 21:49:58 -08:00
ridiculousfish
c184c1a81a Correctly handle --merge in the history.fish function
Previously --merge happened to work, but only because it was
smuggled in through the 'print' command
2016-02-16 11:34:36 -08:00
Aaron Gyes
31a617408f Fix typo 2016-02-16 05:14:33 -08:00
Aaron Gyes
a6565bbea8 Fix --merge hitting a case 2016-02-16 05:09:54 -08:00
Sunguk Lee
b72837a0f4 Improve __fish_print_users
Patch from `__make_users_completions` of killall command completion
2016-02-15 19:31:20 +09:00
Sunguk Lee
c4f702b7c4 Fix No command 'dscl' found error of killall command
`dscl` command have OSX system, to change `__fish_print_users`
2016-02-15 19:30:58 +09:00
Fabian Homborg
eb0d18add4 Rewrite abbr.fish to not call seq
This speeds up adding new abbrs by about 50 to 60% - from 2.3s to 1s for
100 abbrs.
2016-02-13 17:08:19 +01:00
Fabian Homborg
585bdf45c8 abbr: Bail early when the abbr already exists
This speeds up the common case of `abbr -a` calls in config.fish by
about 90% - from 900ms to 90ms for 100 calls.
2016-02-13 17:08:19 +01:00
Gordon Tyler
89206d8654 Fix user browser for help in Cygwin
Fixes the invocation of a user-specified browser by the `help` command on Cygwin.

- Use `cygstart` to launch the browser with escaped quotes to avoid problems with spaces in the path to the browser, (e.g. Program Files).
- Use `cygpath` to convert the base help dir to a Windows path before constructing the fie URL to pass to the browser.
2016-02-12 23:53:17 +01:00
Spittie
a00e26b109 Fix package listing for zypper
-E is only supported by BSD sed, switch to -r which is also supported
by GNU sed
2016-02-12 23:00:40 +01:00
Fabian Homborg
52f8707c3e Use string split in export.fish
It's a bit more explicit than replace.
2016-02-10 20:33:43 +01:00
Fabian Homborg
b6e058985b Fix "replacement string too large" error in pacman completion
Turns out we can skip using string altogether, thanks to the magic of
the cartesian product.
2016-02-10 15:35:01 +01:00
Fabian Homborg
57fcbecb41 Improve __fish_print_service_names
- Reuse systemd completion functions
- Remove a fork
- Fix #2715 - FreeBSD
- Comments
2016-02-07 14:53:12 +01:00
Fabian Homborg
adc3b0e122 eselect completion: Silence eselect php output
The version with the features we use isn't in gentoo stable yet and
older versions print a very ugly warning.
2016-02-04 23:31:32 +01:00
Elis Axelsson
29d06760bc Update eselect completions to work for the php-module
refs #1131
2016-02-04 23:30:06 +01:00
ridiculousfish
25ad8866c9 Merge change for lengthened and configurable escape key timeout 2016-02-04 13:56:49 -08:00
Kurtis Rader
2646d51a0b change default escape timeout
This changes the default escape timeout for the default keybindings (emacs
mode) to 300ms and the default for vi keybindings to 10ms.

I couldn't resist fixing a few nits in the fish_vi_key_bindings.fish file
since I was touching it to set the escape timeout.
2016-02-04 13:39:19 -08:00
Fabian Homborg
b908d0b89b Another stringification (__fish_complete_command) 2016-02-04 13:53:55 +01:00
Fabian Homborg
cadb5d51ea Replace tr invocations 2016-02-03 23:47:46 +01:00
Fabian Homborg
fcdc6a48c0 Stringify history.fish 2016-02-03 23:45:54 +01:00
Fabian Homborg
16aa0b93e9 Stringify __fish_complete_lpr_option 2016-02-03 23:26:41 +01:00
Fabian Homborg
158ea98189 Replace uses of expr with math/string 2016-02-03 23:23:59 +01:00
Fabian Homborg
962f9914c6 Stringify trap 2016-02-03 23:23:04 +01:00
Fabian Homborg
1688b2384f pacman: Stringify 2016-02-02 09:48:55 +01:00
Fabian Homborg
0c94c2b9e8 pacman: Remove outdated "$argument" hack
This doesn't seem to speed up anything.
2016-02-02 09:48:26 +01:00
Fabian Homborg
d3f6c8a694 pacman: Improve --files completion
Missed one option and the option-as-command-hack
2016-02-02 09:47:44 +01:00
Fabian Homborg
e086e27f98 Update pacman/makepkg completions for pacman 5
Some new options, one new operation - "--files".
2016-02-02 09:23:23 +01:00
Dan Martinez
c7ba446c23 Add support for brew's desc subcommand 2016-01-21 15:01:18 -08:00
Fabian Homborg
4b2495f28f Skip greeting on empty variable
It used to be that way and we recommend `set fish_greeting` (i.e. set to
empty) in the docs - possibly since we check if the variable is defined
on upgrade.
2016-01-18 21:56:59 +01:00
ridiculousfish
d7f38a0802 Tweak language and styling of background color text in fish_config 2016-01-14 23:16:34 -08:00
Kurtis Rader
a77ce393ba respond to feedback 2016-01-14 22:34:25 -08:00
Kurtis Rader
f8ed1d182e improve set_color and theme color documentation
This is meant to make it clear that fish cannot control the terminal
window background color. It also augments the set_color documentation to
describe how it decides which color the terminal can display.

Resolves #2421.
Resolves #2184.
2016-01-14 22:34:25 -08:00
Fabian Homborg
68fcb790b0 Add all boolean values to pacmd completion
PA accepts "0", "false" and "off" (among others) for false also for suspend-*.
2016-01-14 23:33:31 +01:00
Fabian Homborg
8db1a5fae7 Add completions for Pulseaudio's pacmd
To implement this mostly as a wrapper around pactl, we add the list of
commands for this to that. It's 90% the same anyway. (This means that
`pactl suspend ` will complete files instead of commands like `pactl
banana ` would, but neither is correct)
2016-01-14 23:31:17 +01:00
Fabian Homborg
6bf70c86d2 Only complete unloaded modules for pactl load-module
This now officially does more than the official bash completion!
2016-01-14 22:36:50 +01:00
Fabian Homborg
b7d98fa873 Add profiles and ports completion to pactl
This is now on par with the official bash completions.
2016-01-14 22:21:50 +01:00
Fabian Homborg
daafe4ef37 Add completion for pulseaudio's pactl 2016-01-14 21:21:54 +01:00
Fabian Homborg
ed1919b266 abbr: Ensure we don't split on "=" if the given separator is " "
This fails on e.g. an abbr that uses `env a=b`, like the included test demonstrates.

Unfortunately it decreases the speed again (2s vs 2.2s vs 4s original),
but correctness is more important.
2016-01-14 16:58:29 +01:00
Fabian Homborg
ac545940de Optimize and modernize abbr
- Replace __fish_abbr_escape with `string escape`

- Don't double-parse the key

- Replace IFS magic with string

Together, this seems to speed it up by a factor of about 2.
2016-01-14 16:57:07 +01:00
Fabian Homborg
7a8cbcda06 Disable 24bit-color on neovim's terminal
Unfortunately, nvim will, even when running in a terminal that supports
it, swallow the sequences whole, rendering the displayed text _white_.

This means falling back to 256 colors is the lesser evil as at least a
blue-ish color will display as blue while a red-ish will be red, instead
of both showing white.

nvim's behavior does _not_ change depending on
$NVIM_TUI_ENABLE_TRUE_COLOR or any other option I could find and neovim-qt
exhibits the same behavior.

Fixes #2600.
2016-01-14 15:17:49 +01:00
Fabian Homborg
8e79da3b2d Fix typos
Fixes #2673.
2016-01-12 00:08:41 +01:00
Fabian Homborg
c56df11128 Add completions for kcmshell5
A tool to open KDE Plasma settings menus.
2016-01-09 18:58:03 +01:00
Fabian Homborg
6027eae1a1 Add completions for asp
A package information and build tool for archlinux, replacement for the
ageing "abs".
2016-01-09 18:58:03 +01:00
Fabian Homborg
bd482898d4 Simplify and stringify valgrind completions
These used _eval_ when a simple variable capturing would have sufficed.
2016-01-09 18:58:03 +01:00
Aurélien Deharbe
2a4f21cc92 Add completions for the haskell 'stack' build tool 2016-01-08 21:50:41 +01:00
Fabian Homborg
8cc213ed4f hg_prompt: Use string match -q instead of redirection 2016-01-08 14:10:03 +01:00
Fabian Homborg
4f519297dd Add new named colors to webconfig
The 'br' variants were added in 0a0acc8, but not to named_colors in
webconfig.py.

Fix this oversight.
2016-01-08 14:00:54 +01:00
Nathan Zadoks
92d0d98a24 Pass the full argv to the NixOS command-not-found handler
This patch is currently floated from the NixOS side as part of
https://github.com/NixOS/nixpkgs/pull/12000, but prior versions of the
hook ignore anything but the first argument anyway, so this is
backwards-compatible.
2016-01-03 14:32:12 +01:00
Fabian Homborg
8eca775977 hg prompt: Throw away string match input
This would print redundant characters
2015-12-31 14:21:37 +01:00
Fabian Homborg
c3971957ac hg prompt: Fix indentation 2015-12-31 14:21:37 +01:00
Fabian Homborg
9a7b2b190b hg prompt: Make display slightly nicer
The "/" between branch and bookmark might be mistaken for a path.

Parens (like the git prompt) make it look a bit more like a unit.
2015-12-31 14:21:37 +01:00
Fabian Homborg
6f2f0cfce2 Optimize hg prompt
Mainly replace hg calls since python is slow to start.
2015-12-31 14:21:37 +01:00
Fabian Homborg
3a249bb549 Include mount helpers in filesystem completion
Probably not a thing on OSX, but this should print nothing then.

On linux, it helps detect e.g. ntfs-3g.
2015-12-30 19:02:03 +01:00
Fabian Homborg
1a12071a48 Immediately define command-not-found handler
This skips the weird dance where we'd define a simple handler and then
later overwrite with a fancier one, once the first event came in.

It turns out that isn't necessary, as it doesn't actually improve
startup speed because the checks needed to define fancier handlers are fast.

In case we are non-interactive, still define the simple handler, and
keep the default handler for users to switch to.
2015-12-30 16:26:54 +01:00
Fabian Homborg
b7fb11cb7f git completion: Complete commits for all branches 2015-12-30 16:26:28 +01:00
Maxim Gonchar
95c30f7a23 Use \$ and \^ instead of their unicode codes 2015-12-30 12:49:44 +01:00
Maxim Gonchar
d5fe5c02a8 Update visual vi key bindings
* Add home/end, $/0 keys
* Add (c)hange key
* Add j/k keys for up/down
2015-12-30 12:49:44 +01:00
Fabian Homborg
759b45ad79 Remove temporary set_default function
This could potentially delete a user-defined set_default on first start.

It's also trivially done with set -q var; or set -U var val.
2015-12-30 12:49:44 +01:00
Fabian Homborg
834ebef53c Simplify greeting
We have already confirmed we're interactive, and `echo` is a builtin now.
2015-12-29 15:58:48 +01:00
Botond Erdos
bb932a0a0a adds dnf completions for package installs
Since dnf accepts the same arguments as yum, just inherit.
2015-12-29 14:48:09 +01:00
lordlycastle
f23c2beb61 Fixed kill-signals completion. Added completions for OS X kill command.
Don't generate killall completions when running on Solaris OS - `killall` there literally kills all processes.
2015-12-28 12:54:13 +01:00
Bogdan Sinitsyn
1a3bcf63bc Add database completion for pacman 2015-12-23 20:33:57 +01:00
Fabian Homborg
836b6bea73 git completions: Add commit hashes for show
That's probably the part where commit hashes are most used, we can add
the other subcommands later.

This generates a _lot_ of options, so hooking it up everywhere would be
unwise, though our pager helps quite nicely with filtering - typing
"Branch" will filter out the commits, and typing other things will
filter the subjects, which is quite cool.
2015-12-18 17:07:43 +01:00
Fabian Homborg
8a6f26ff9b Document prompt_pwd
Fixes #253
2015-12-17 15:25:13 +01:00
Fabian Homborg
5306fce16e mount completions: Support spaces in mountpoints
This turns '\040' into a space. /etc/mtab also supports other
escapes ("\\" for backslash, "\011" for tab), but I can't find
documentation for those in fstab.
2015-12-17 12:35:16 +01:00
Fabian Homborg
fb1a7d9d73 Port linux __fish_print_mounted to string
This adds a few escape sequences, but two out of the three are
theoretical and will fail a bit later.
2015-12-17 12:14:03 +01:00
Fabian Homborg
482cfca84f Make informative_git prompt use vcs_prompt -> Rename it to "Informative Vcs" 2015-12-16 19:05:28 +01:00
Fabian Homborg
e29d200ba5 Switch classic + git prompt to all vcsen -> Rename it to Classic + Vcs
Keep the variable names for now.
2015-12-16 19:05:28 +01:00
Fabian Homborg
43c7ababf9 Make lonetwin prompt use __fish_vcs_prompt 2015-12-16 19:05:28 +01:00
Fabian Homborg
baa6971a46 Add __fish_vcs_prompt helper function
This is supposed to be used by prompts so they'll get all known vcsen
integrated.

For now, there's no distinction between the different vcsen.
2015-12-16 19:05:28 +01:00
Fabian Homborg
f045d9b143 Improve mount completion (now with blockdevices!)
This adds blockdevices (and directories) and fixes the regexes to no
longer include comments but include UUID= and LABEL=, which at least
util-linux mount understands.

It also shouldn't fail on systems without fstab any longer (like default OSX).

Fixes #2606.
2015-12-13 20:38:38 +01:00
Fabian Homborg
6c8518dd10 Update vte cwd on launch
Fixes #2418
2015-12-12 12:22:08 +01:00
Fabian Homborg
346d918555 Delete upstreamed docker completions
A better version of these has been in an upstream release, so there's no
need to keep this around.
2015-12-12 12:13:05 +01:00
Fabian Homborg
8104854d5d Update makepkg completion
A few options were missing and --asroot has been removed
2015-12-11 12:19:30 +01:00
David Adam
a0eef2663a git completions: add missing description flags
Fixes syntax error introduced in 4280df3aa2.
2015-12-11 10:42:19 +08:00
Samantha Marshall
f5dfebb6a3 Add __fish_svn_prompt function
This refactors __fish_print_svn_rev to not depend on english locale
2015-12-10 18:17:40 +01:00
Fabian Homborg
2b7ffca414 Merge pull request #2595 from lordlycastle/master
Added OS X completions for open, and seq.
2015-12-10 15:32:18 +01:00
lordlycastle
96b3e1ce1b Added OS X completions for open, and seq. Added missing stdout redirection to /dev/null when checking command's version. 2015-12-10 14:20:46 +00:00
mr.Shu
4280df3aa2 git: Add missing options to git clone
* Add missing options to `git clone` in order to make the suggestions as
  similar to the manual (https://git-scm.com/docs/git-clone) as
  possible.

Signed-off-by: mr.Shu <mr@shu.io>
2015-12-10 12:54:45 +01:00
Fabian Homborg
b73bf53bd3 Enable 24-bit mode for selected terminals
Unfortunately, there's no standard way to detect support (importantly,
terminfo doesn't encode it), but there's a variety of terminals that
support it that we can detect.

It's better than letting this functionality go to waste.

Check KONSOLE_PROFILE_NAME instead of DBUS_SESSION because Konsole can be compiled without dbus support.

Check ITERM_SESSION_ID's format for 24bit support

This has changed since the last release, just like 24bit support. So if
we check one, we get the other.
2015-12-10 12:47:45 +01:00
Fabian Homborg
0212314479 Merge pull request #2586 from mrshu/mrshu/add-git-cherry-pick-options
git: Add more options to `git cherry-pick`
2015-12-09 16:41:34 +01:00
Kurtis Rader
d65c63322e allow \cJ (\n) to be bound separate from \cM (\r)
This makes it possible (on UNIX systems, don't know about MS Windows)
to bind \cJ (\n) independently of \cM (\r, aka [enter]).

Resolves #217
2015-12-08 21:01:31 -08:00
mr.Shu
a8837f537f git: Add more options to git cherry-pick
* Add more options to `git cherry-pick` so that the suggested options
  mimic the man page (https://www.git-scm.com/docs/git-cherry-pick/).

Signed-off-by: mr.Shu <mr@shu.io>
2015-12-08 23:51:29 +01:00
David Adam
ef67fc7ba0 __fish_complete_man: rework AWK script
Adds support for the man-db alias format used in CentOS/RHEL 5
Adds basic support for the output of apropos on Solaris

Work on #2087.
2015-12-04 16:23:57 +08:00
Fabian Homborg
d325b4bf39 Add completion for pkg-config 2015-12-03 13:11:53 +01:00
Fabian Homborg
1d64c480c4 Add completion for systemd-nspawn 2015-12-03 12:53:10 +01:00
Fabian Homborg
9f7334deef Add completion for systemd-analyze 2015-12-03 12:52:59 +01:00
mr.Shu
1a5d0fc47f git: Improve completion for git remote
* Make sure that the `git remote` subcommands are not repeatedly
  suggested (that is do not suggest a subcommand if there already is one).

* Add both long and short options to `git remote` subcommands where
  appropriate.

Signed-off-by: mr.Shu <mr@shu.io>
2015-11-29 22:14:11 +01:00
Fabian Homborg
17b6936f53 Merge pull request #2573 from mrshu/mrshu/add-missing-git-remote-subcommands
git: Add missing remote subcommands completion
2015-11-28 14:41:37 +01:00
Fabian Homborg
c5bcc4567e Merge pull request #2572 from lordlycastle/master
Added completions for cat, cp, mktemp, stat, touch for OS X.
2015-11-28 14:41:03 +01:00
mr.Shu
7b3d93f4a1 git: Add missing remote subcommands completion
* Add completion for missing `git remote` subcommands.

* Should fix #2567

Signed-off-by: mr.Shu <mr@shu.io>
2015-11-28 03:24:59 +01:00
lordlycastle
3868203c76 Added completions for cat, cp, mktemp, stat, touch for OS X. 2015-11-28 00:35:26 +00:00
Daniel Matz
b7f13b4685 Complete bg and fg with job PIDs. 2015-11-27 16:07:16 -08:00
Daniel Matz
c2c4fbf206 Add a function to complete job PIDs. 2015-11-27 16:07:16 -08:00
Fabian Homborg
53fc9a4002 Remove circular dependency in fallback seq
This was subtle because `type` invoked seq.

Fixes #2570
2015-11-27 19:34:27 +01:00
Fabian Homborg
a8a9ac0dae Add completion for OSX rm
As always, this not only doesn't support longopts, but also has some
options that GNU rm doesn't - in this case, an undelete function.
2015-11-27 11:28:41 +01:00
Daniel Matz
3b53abecd0 Update hg completion
This does a number of things:
- Removing trailing space from suggested repos for hg.
- Use the string builtin for hg completions.
- Add more internal merge tools to hg completion.
- Enable completions for abbreviated hg commands.
- Stop completing a deprecated hg branches option.
- Properly match the hg subcommand when preceeded by global switches.
- Stop completing deprecated hg glog.
- Complete hg config instead of showconfig.
- Properly complete when global switches are before the hg command.
- Properly handle the repository switch for hg completions.
- Properly handle the hg global switch cwd.
2015-11-23 19:39:58 +01:00
Fabian Homborg
3f12f75853 Add completions for OSX which 2015-11-23 13:37:53 +01:00
Fabian Homborg
917c727619 Add more sudo options 2015-11-23 13:32:29 +01:00
Fabian Homborg
6336288da1 Support the OSX versions of head/tail
See #2537.

These were written from the online versions of the manpages.
2015-11-19 21:32:21 +01:00
Fabian Homborg
3e0ff6db2a math: Join lines manually
This is an issue with 15-year old versions of bc that don't support BC_LINE_LENGTH.

Closes #2548
2015-11-19 12:04:21 +01:00
Eugene Sharygin
5db811253e psub: add -s, --suffix 2015-11-14 13:15:30 +01:00
Fabian Homborg
e31a93040e Add completion for string
A bit simplistic since we can't complete e.g. regexes properly, but it
does the job.

Fixes #2543
2015-11-12 15:08:47 +01:00
ridiculousfish
e50d104399 Remove duplicate \cw binding in default key bindings 2015-11-08 23:52:59 -08:00
Alexander Hedges
32d54e37f7 Use unused cleanup_autogenerated_file 2015-11-08 12:19:15 -08:00
Alexander Hedges
2bbad22248 Remove autogenerated files before generating the new ones
Currently if there is a conflict with two manpages having the same
name, one completion will override the other. But if one can be parsed
and the other can't the one with parsed results will always have a
higher priority.
2015-11-08 12:19:15 -08:00
Alexander Hedges
22493c9df8 Guard against files that don't end in .[1...9]
It seems smart to only let files be parsed that are clearly
manpage files. Other files wouldn't be openend by man so
I think it is safe to guess that only these files are man
pages.
2015-11-08 12:19:15 -08:00
Alexander Hedges
8d97a85834 Ignore references to builtin on the mac
On my system (OS-X 10.11) references to builtin are denoted by:
".so man1/builtin.1". So you also need to check against that.
2015-11-08 12:19:15 -08:00
Fabian Homborg
c9577394eb vi-mode: Inherit \cf and \cb bindings as well
This makes them {forward,backward}-char instead of -word, which means
they accept suggestions _fully_.

Fixes #2255
2015-11-06 10:25:27 +01:00
maxried
0918ad6cee Improve apt-get completion
Added apt-get changelog sub-command completion.
2015-11-01 12:30:17 +01:00
maxried
1055864438 Update fish_default_key_bindings.fish
fish_default_key_bindings.fish comments were wrong. Corrected comment about pagination.
2015-10-29 07:51:17 +01:00
Fabian Homborg
be0d9d093c vi-mode: Make \cb do backward-word again
This is mentioned in the documentation, so keep it for now.
2015-10-28 13:20:23 +01:00
Fabian Homborg
bb491742ea vi: Bind \cx to end-of-line in insert mode
This will also accept any autosuggestion completely.
2015-10-28 13:18:27 +01:00
Bheesham Persaud
46fbfaaa83 Add cargo and rustc completion.
rustc.fish makes heavy use of the `string` commands.
2015-10-26 21:39:16 -04:00
Gary Peck
09bd938e25 Add ability to customize the amount of path shortening in prompt_pwd
Allows the length of each shortened path component to be customized by setting the `fish_prompt_pwd_dir_length` variable to the number of characters to include (plus a leading dot because that's special). Maintains the default behavior of shortening path components to just one character. You can also set `fish_prompt_pwd_dir_length` to an empty or invalid value or 0 to disable shortening completely.
2015-10-26 13:11:13 +01:00
Fabian Homborg
3e7dfd7f5e Switch useradd and chsh to string 2015-10-21 12:38:45 +02:00
David Adam
f21d826850 fish_complete_subcommand: shadow scope to inherit e.g. $PATH
Closes: #2141.
2015-10-21 15:38:20 +08:00
Jan Ernsting
8e3e286577 Update mix completion
Among others `mix escriptize` has not been supported since July 2014:
https://github.com/elixir-lang/elixir/issues/2468

Also explain what mix is.
2015-10-20 17:10:41 +02:00
Fabian Homborg
f4b4e5b41f git: Complete subcommands for git submodule foreach 2015-10-20 15:49:45 +02:00
Fabian Homborg
4a05d56337 git: Disable submodule subcommand completion if one is already given 2015-10-20 15:49:22 +02:00
Fabian Homborg
73708061fc Fix git submodule completions
Fixes #2494
2015-10-20 15:42:48 +02:00
Fabian Homborg
df3da55602 git completion: Allow branches with "/" in them as unique remote branches 2015-10-16 17:15:37 +02:00
David Adam
b776327b9d Revert "prompts: more concise way of getting the hostname."
This reverts commit 233c443694.

See discussion in https://github.com/fish-shell/fish-shell/pull/2489
2015-10-16 07:01:12 +08:00
Michael Fogleman
233c443694 prompts: more concise way of getting the hostname. 2015-10-15 11:59:39 +08:00
Fabian Homborg
35bbc1d7b7 vi: Make \cf do forward-word again in insert mode 2015-10-14 18:34:58 +02:00
Fabian Homborg
4e5e04bfda vi: Readd \cx binding 2015-10-14 18:31:45 +02:00
Fabian Homborg
c0e8ad6f1f Make vi bindings inherit the defaults
This reduces code duplication and adds some previously unavailable
bindings that don't quite _violate_ the vi-principle (like
prevd-or-backward-word on alt-left) and matches other "impure" bindings
like \cf for forward-word (a quite emacs-ish binding) we already have.

Fixes #2412
Fixes #2472
Fixes #2255
2015-10-13 21:08:55 +02:00
buo
3472a39d07 Add BSD specific arguments for tr command completion 2015-10-13 15:52:14 +02:00
Fabian Homborg
9865a8c807 Also send konsole cursor sequence for iTerm2
Fixes #1403
2015-10-13 15:36:55 +02:00
Matt Steedman
35e769d494 Make fish_vi_cursor check $TERM or use argument
Fixes #2475
2015-10-13 15:33:45 +02:00
Fabian Homborg
54f215294f export: Fix replacing
Also run it through fish_indent
2015-10-12 11:35:45 +02:00
Fabian Homborg
98b33d7b6b Fix pushd completions in the -n case 2015-10-09 20:02:28 +02:00
Fabian Homborg
86471ac21f Remove OSX/Cygwin special cases from prompt_pwd
For cygwin, you can't `cd C:`, so a prompt of "C:/Something" is
misleading.

For OSX, we dereference symlinks elsewhere

This also simplifies prompt_pwd quite a bit.
2015-10-09 17:45:45 +02:00
David Adam
57e22e87c2 functions/man.fish: add fish into MANPATH even if it is already set
Closes #2443.
2015-10-09 21:01:59 +08:00
ridiculousfish
434eabb787 Remove errant slash from the end of cd completions
Fixes #2465
2015-10-07 13:39:42 -07:00
Fabian Homborg
0a99772572 Rewrite __fish_complete_cd
This no longer uses "eval" (which is scary), and is a bit shorter (which
is nice).

Fixes #2299
Fixes #952

Improves #2300
Improves #562
2015-10-07 10:41:05 +02:00
Fabian Homborg
2ffb47eba2 Add missing \n to pushd completions 2015-10-07 10:26:27 +02:00
Fabian Homborg
b208d752e2 git completion: Complete files relative to repo-root
Not for _everything_ because that causes too many options to be
generated (which is an issue for git as it is), but for modified, staged
and added files - which is where it is most useful.

Fixes #901 as far as I'm concerned.
2015-10-06 14:05:08 +02:00
Fabian Homborg
ec74479d44 Add pushd -n to completions, use string
Also indent with fish_indent
2015-10-05 15:23:05 +02:00
Derek Harland
e75108fc4c Improve pushd completions
Add completions for rotating and swapping the stack.
2015-10-05 15:12:38 +02:00
Fabian Homborg
176e34cf73 Remove ls|__fish_sgrep from apt-proxy-import 2015-10-04 15:45:02 +02:00
Fabian Homborg
65415cb761 Move make completion to string
This also removes a hack that's not needed anymore
2015-10-04 15:41:20 +02:00
Fabian Homborg
45bf843b03 Move python comp away from eval and sed
I have no clue why this used eval.
2015-10-04 15:41:20 +02:00
Fabian Homborg
610a5926a8 Move apt-show-versions away from ls|__fish_sgrep
This is almost trivial to do with builtins.
2015-10-04 15:41:20 +02:00
Fabian Homborg
3b0f9911e2 Move setfacl completions to string 2015-10-04 15:41:20 +02:00
Fabian Homborg
55a2945449 Bring aura completions in line with pacman
Eliminates a bit of __fish_sgrep
2015-10-04 15:41:20 +02:00
Ian Ray
16061d06a9 prompt_pwd: zero fork prompt in general case
Now only one fork (uname) occurs on first load.
2015-10-04 12:36:49 +02:00
Fabian Homborg
5f2feee680 git completion: Bring needs_command in line with git
git has options that can appear before commands, but not all of
them, and some of them need an argument. This means
`__fish_seen_subcommand_from`  will give too many false-positives, while
`[ (count $cmd) -eq 2 ]` will give too many false-negatives.

Instead go through all arguments and check if they are in that list of
options that can be before a command and skip the argument for them, if
any.
2015-09-30 15:14:09 +02:00
Fabian Homborg
b9b39f7c31 Replace sed -E with string replace
This is to the benefit of systems with ancient GNU sed, which does not
recognize "-E", but only "-r".

Fixes #2305 - even if it doesn't replace all `sed -E` invocations in the
codebase, the others are unlikely to occur on CentOS and other similarly
crusty systems.
2015-09-28 20:06:20 +02:00
Dan Underwood
37f4cbe3d7 Fix of multiple synonyms for apm command
`__fish_apm_using_command` was incorrectly taking lists of commands, new function added to support multiple a command having synonyms.

Simplify switch statement

Also remove superfluous function.

Allow for multiple completions after a command

Useful for removing packages, will complete for more than one.

Code improvements
2015-09-28 18:30:08 +01:00
Fabian Homborg
126c8c14b8 machinectl: Add "shell" subcommand 2015-09-28 16:22:29 +02:00
Fabian Homborg
3992315505 Normalize cabal* completion 2015-09-28 16:08:01 +02:00
Fabian Homborg
eb4e4fa7ad Normalize aura completions
Also fixes bug related to repo listings
2015-09-28 15:39:51 +02:00
Fabian Homborg
aa37b40d93 __fish_hg_prompt: Clean up a bit
`sort -u | uniq` is completely redundant, calling grep for every
status-pair is unnecessary, `contains` doesn't take the word "in" as
special.

None of these are critical and there's basically no performance benefit
since this function is utterly dominated by hg calls.
2015-09-27 16:30:37 +02:00
Fabian Homborg
8eccf8a6f7 __fish_hg_prompt: Remove explicit root check again
This doesn't add anything except slowing the function down by about
33%. Checking for a branch is just as good and that is displayed in the
prompt anyway.
2015-09-27 16:23:11 +02:00
Jan Ernsting
7376639789 Fix completion for totem 2015-09-27 14:36:16 +02:00
Fabian Homborg
2334374fd6 math: Avoid calling env 2015-09-27 12:51:24 +02:00
Fabian Homborg
95908aa2bc __fish_hg_prompt: Only show current bookmark 2015-09-26 21:52:20 +02:00
Fabian Homborg
a19f4dd4c8 __fish_hg_prompt: Add bookmark support 2015-09-26 20:41:18 +02:00
Fabian Homborg
eadd4d9b71 __fish_hg_prompt: Bail early if not in a hg repo 2015-09-26 20:40:48 +02:00
Wonicon
4f3ff3d77f Correct the comment on the default path
According to the newer code below:
    xdg_data_home = os.getenv('XDG_DATA_HOME', '~/.local/share')
the actual default path is ~/.local/share/fish/generated_completions/
2015-09-26 15:23:45 +02:00
Fabian Homborg
5bb81461f6 Normalize ls completions and bring them up-to-date
This adds the --group-directories-first option for GNU ls and fixes a
typo in --block-size (not --blocksize).

Fixes #2425.
2015-09-26 11:40:04 +02:00
Fabian Homborg
d591cebf44 Introduce __fish_print_pacman_repos helper
This is used in at least 4 places, all of which have a bug in that they
print "options" as a valid repo. It seems better to fix it once,
especially given that there are tons of AUR helpers and pacman wrappers,
all of which might need this info.
2015-09-25 13:37:39 +02:00
Fabian Homborg
f24d5cb5f0 __fish_print_{addresses,interaces}: Better OSX/BSD 2015-09-24 15:32:15 +02:00
Fabian Homborg
79c22c76bf __fish_print_{addresses,interfaces}: Add alternative to net_tools
net_tools, which provides `ifconfig` and `netstat`, among other things,
has last been updated in 2013. This means `ifconfig` on linux is
basically dead.

Instead of ifconfig, use `ip` (from iproute2), which is much more powerful and
provides a much more annoying commandline syntax.

Instead of netstat, just look at /sys/class/net.
2015-09-24 15:32:15 +02:00
Fabian Homborg
20e96df85d export: Enable values with "=" in them
Only split on the first "=" to achieve this.

Closes #2403
2015-09-24 15:28:58 +02:00
Fabian Homborg
be51fe944d Fix vi* completions
I forgot a "-c".
2015-09-23 19:01:34 +02:00
Fabian Homborg
54d1d98e39 Fix aliases with whitespace
And document how that stuff works.

Fixes #2220

Also, the string stuff is cool.
2015-09-23 13:28:32 +02:00
Fabian Homborg
6f92781992 Refactor *vi* completions, add nvim wrapper
This assumes `vim` is always vim (or close enough, nvim should also
work), while `vi` could be either.

Fixes #2416
2015-09-23 12:59:05 +02:00
Fabian Homborg
fb615843b3 git completion: Describe aliases with their definitions
I could have sworn we had this already.
2015-09-22 20:25:14 +02:00
Fabian Homborg
c6d808a0d8 git completions: Switch more to string 2015-09-22 20:24:54 +02:00
Fabian Homborg
4f12821ca8 git completion: Rewrite __fish_git_ranges with the string stuff
Cuts down on perl.

Also complete heads (i.e. tags and branches) always.
2015-09-22 18:21:09 +02:00
Fabian Homborg
4fcda28d9b git completions: Add remote branches with only one remote
Fixes #675
2015-09-22 16:46:43 +02:00
Johannes Schneider
054fb22854 Maven completion added 2015-09-19 22:27:04 +02:00
Fabian Homborg
be70ea7d49 Add completion for Arch's mkinitcpio 2015-09-17 18:23:37 +02:00
Fabian Homborg
1ef178c5e6 Add alsactl completions 2015-09-17 18:20:23 +02:00
Fabian Homborg
56399b9aa3 systemctl completions: Show instanced services
This unfortunately requires us to do two systemctl calls, but it's still
pretty fast.
2015-09-17 18:16:56 +02:00
Fabian Homborg
a79c7495c8 busctl completions: Fix usermode
Block-scope strikes again!
2015-09-17 18:12:00 +02:00
Fabian Homborg
f86ee20579 systemctl completions: Support systemd in /lib
Debian has not merged /usr/lib and /lib, so they install the `systemd`
binary at /lib/systemd/systemd.

See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=790671
2015-09-16 23:18:04 +02:00
Dan Underwood
18a116394d Complete atom package manager or apmd
Completions for `apm` now support both the Advanced Power Management client and the Atom text editor.
2015-09-16 15:54:42 +01:00
Konrad Borowski
094948db51 Fix issue with pkg --jail=value completion 2015-09-16 13:58:48 +02:00
Konrad Borowski
18c7e97ecc Add pkgng command completions
Fixes #1054.
2015-09-16 13:57:36 +02:00
Fabian Homborg
c8ac48ff9a Informative git prompt: Handle root/toor users
Fixes #961

This should probably be in a helper function
2015-09-15 21:14:49 +02:00
Fabian Homborg
7fe8a63f53 Webconfig: It's abbr --erase, not abbr --remove
This was renamed in c0cf25cf0b but never
in webconfig.
2015-09-13 22:35:32 +02:00
Fabian Homborg
48874294d6 Webconfig: abbr doesn't support "--"
Fixes #2276
2015-09-13 22:35:32 +02:00
Stefan Maric
527c932e93 Fix npm run completion executing only on completions load, also:
* Better handling of `npm run` output
2015-09-12 12:12:21 +02:00
Stefan Maric
cba3db6205 Remove redundant completions that lack descriptions for npm 2015-09-12 12:12:21 +02:00
Stefan Maric
3b798b1733 Make use of npm completion 2015-09-12 12:12:21 +02:00
Stefan Maric
f898d82536 Add script values as descriptions to npm run/run-script completion 2015-09-12 12:12:21 +02:00
Stefan Maric
3b5aab6edb Complete list of available scripts for npm run/run-script command 2015-09-12 12:12:21 +02:00
Fabian Homborg
31d1e04301 git completion: Don't check $cmd[1]
Before we do anything else, remove this senseless piece of code
2015-09-10 16:17:14 +02:00
Fabian Homborg
a828f90d38 git: Add more options for format-patch and submodule
Not all of them and only those that don't accept arguments for now

Fixes #1996
2015-09-10 15:22:16 +02:00
Fabian Homborg
00556734bc git completion: Ignore stderr for all commands
Might print unrelated crap if we try to complete while not in a git repository
2015-09-10 15:22:16 +02:00
Fabian Homborg
b231ab7238 Allow set_color options in general for linux VTs 2015-09-10 15:12:02 +02:00
Fabian Homborg
2587bbc4a7 rbenv completion: Remove trailing spaces 2015-09-10 15:10:25 +02:00
Fabian Homborg
40df11b162 Also allow bold, underline and printing colors in linux kernel VTs
bold works, printing colors doesn't change anything and underline
doesn't _break_.
2015-09-10 12:27:09 +02:00
Fabian Homborg
e9fcbb334e rbenv completion: Support ruby-build as plugin
Fixes #1028
2015-09-10 02:04:40 +02:00
Fabian Homborg
bffeb664cc Add __fish_sgrep
Missed in b85a8bb because of `git commit -a`.

Fixes #2372
2015-09-09 21:52:18 +02:00
Fabian Homborg
b85a8bbbfe Rename sgrep to __fish_sgrep
Makes it harder to cause issues with aliases, see fish-shell#2245
2015-09-09 20:55:04 +02:00
Fabian Homborg
925f451773 Add descriptions to dd completions
Fixes #752.
2015-09-09 19:40:58 +02:00
Jan Ernsting
7f28acc5ed Complete tags for git-tag only 2015-09-07 13:35:50 +02:00
Jan Ernsting
f36d2ff55f Ensure display of modified files for git commit 2015-09-07 13:35:34 +02:00
Jan Ernsting
396e01a0e0 Add missing description
git reset allows for files and branches as completion results
2015-09-07 11:05:47 +02:00
Jan Ernsting
787c1304c6 Add file completion for git-reset
Staged files are now offered for completion
2015-09-07 11:05:47 +02:00
Jan Ernsting
d92c08c9bb Add completion for git-commit
Modified files are provided for completion
2015-09-07 11:05:47 +02:00
Fabian Homborg
cb5511c8db Vcs prompt: Break if vcs isn't installed
Prevents an annoying error message.
Fixes #2363.
2015-09-06 14:58:09 +02:00
James
5e1c71b059 Added completions for entr 2015-09-02 13:59:25 +02:00
Fabian Homborg
f3695b95fc Use $VISUAL before $EDITOR in funced
Closes #2268
2015-09-02 13:55:59 +02:00
Fabian Homborg
5f080fcfc9 Load fish_user_key_bindings for any binding (including vi)
fish_user_key_bindings is the user's, and they should know if they want
vi-ish bindings or emacs-ish (or nano-ish). If they want to define
multiple, they can also do that (e.g. via checking what
$fish_key_bindings is set to).

Fixes #2254

CC @kballard
2015-09-01 11:50:50 +02:00
Fabian Homborg
a21e44c155 Add escape sequences for arrows in some linux VTs
Why this is only in some, I don't know, but these don't seem to
interfere with anything.

Fixes #2309
2015-09-01 11:46:54 +02:00
Fabian Homborg
60089f9750 Remove setup outside of fish_prompt from sample prompts
This doesn't work with fish_config.

For terlar and pythonista, remove unnecessary color setting.

For informative+git and pythonista, move variable setup into fish_prompt

Fixes #1141
2015-08-31 21:27:44 +02:00
Fabian Homborg
5043b9d06e Revert "Fix missing variable expansion $ in psub"
That change was a bit too eager as the mkfifo route doesn't currently work.

See #1040 and #2052.

This reverts commit a17b9fdaba.
2015-08-31 19:32:28 +02:00
Fabian Homborg
a17b9fdaba Fix missing variable expansion $ in psub 2015-08-31 19:24:48 +02:00
Fabian Homborg
2f3123e175 Make overriding cnf-handler work
See #1925: This allows users to disable the cnf-logic which can be quite
slow on small hardware (like a raspberry pi).

Squashed commit of the following:

commit 742a59e30d8db24b6bb5067d4204d4b5cc01c1c3
Author: Fabian Homborg <FHomborg@gmail.com>
Date:   Sun Aug 30 18:23:41 2015 +0200

    Erase startup cnf-handler early

    Simplifies the code a bit - in particular it removes the special-casing
    from the startup handler.

commit 638a97e7f31f302b65e044c93c638c03a69e31f5
Author: Fabian Homborg <FHomborg@gmail.com>
Date:   Mon Aug 24 20:14:46 2015 +0200

    Make overriding cnf-handler work

    Do this by renaming the __fish_command_not_found_handler used during
    startup to __fish_startup_command_not_found_handler. That allows us to
    check if __fish_command_not_found_handler has been defined and skip the
    setup of the normal one.

    Now disabling cnf-handling can be done via defining an empty
    __fish_command_not_found_handler in config.fish
2015-08-31 18:39:15 +02:00
Fabian Homborg
17c756971a Add a shell suspend function
Squashed commit of the following:

commit ede9e510751497d61ff0e78fd948e901171cf6f9
Merge: 938da30 239d2a2
Author: Fabian Homborg <FHomborg@gmail.com>
Date:   Thu Aug 6 18:47:43 2015 +0200

    Merge branch 'suspend' of https://github.com/mwm/fish-shell into suspend

commit 239d2a28e1
Author: Mike Meyer <mwm@mired.org>
Date:   Thu Aug 6 11:24:32 2015 -0500

    Handle interactive & login shells, SHLVL checks, and better message.

commit 6334047ebd
Author: Mike Meyer <mwm@mired.org>
Date:   Tue Aug 4 08:53:10 2015 -0500

    Add a description to suspend

commit 080458b31c
Author: Mike Meyer <mwm@mired.org>
Date:   Tue Aug 4 07:05:17 2015 -0500

    Add a shell suspend function
2015-08-30 18:42:35 +02:00
Fabian Homborg
f71e877f18 Improve situation for linux in-kernel VTs (TERM = "linux")
This adds a special colorscheme and prompt function guaranteed to work
on a VT and activates them automatically if $TERM = "linux".

set_color is overridden to only allow the 8 colors VTs have (under the
assumption those are always the same) and the color variables are
shadowed with global ones so they don't pollute our nice capable terms.
2015-08-30 18:30:03 +02:00
Annika Backstrom
d6c97a6a13 Fix spelling 2015-08-30 00:33:04 -04:00
Fabian Homborg
47b9993469 {prev,next}d-or-*-word: Fix for multiple lines
Fixes #2333
2015-08-26 21:30:04 +02:00
Fabian Homborg
7bfad18ec7 Make alt-arrow in iTerm2 do the same thing as elsewhere
nextd-or-forward-word and such

Fixes #1836
2015-08-25 13:49:40 +02:00
Fabian Homborg
67ed58b0ba gpg: Complete files for --import 2015-08-24 12:38:24 +02:00
Fabian Homborg
a815e6ca14 Fix ping -I completion 2015-08-21 19:16:04 +02:00
ridiculousfish
2b87705a46 Remove vi mode indicator from classic_git prompt
It is duplicative of the fish_mode_prompt function

Fixes #2228
2015-08-18 10:52:53 -07:00
Fabian Homborg
5e555fc1cf Completions: Don't check $cmd[1]
This is already done by fish before calling the completion.

It breaks completion with combiners (#2025) and also with wrappers.

(This does not include git because that's better solved in #2145)
2015-08-17 12:29:03 +02:00
Fabian Homborg
cb5d36d89f Add completions for systemd's localectl 2015-08-17 12:02:50 +02:00
Fabian Homborg
b615534d8d Fix sorin prompt, remove fallback
Closes #2243
2015-08-16 22:51:49 +02:00
faho
81696c16d2 Merge pull request #2283 from treeman/prompt_pwd
Match the whole real home directory in prompt_pwd.
2015-08-14 21:40:21 +02:00
Benjamin Pollack
5a2287c52f Clean up completions for Fossil
There are two main problems in the existing Fossil autocompletion that this
patch solves:

  * Because Fossil lacks an alias system similar to those in Hg and Git,
    wrapper scripts are common, and aliasing them to `fossil` is also fairly
    common. The lack of the `command fossil` pattern in the completions script
    meant that the actual fossil command might not be called, but rather the
    alias. This problem has been fixed by introducing a __fish_fossil command,
    similar to the __fish_hg and __fish_git commands in those completion shells,
    that does this, and converting all explicit fossil calls in the completion
    script to use __fish_fossil instead
  * Because there's now a centralized location for calling Fossil, I also moved
    all of the repetitive stderr redirects that function.

This results in more robust and cleaner code.
2015-08-14 10:36:37 -04:00
faho
a65a288eca Merge pull request #2256 from jcelliott/python-completion
Improve completion for python -m flag
2015-08-14 12:32:52 +02:00
Fabian Homborg
6157a9a858 Fix wesnoth completion 2015-08-10 19:01:50 +02:00
Fabian Homborg
6b92c4867d Fix source completion by making "..fish" symlink regular file
Also fixes #2286 by removing the only symlink.
2015-08-09 23:10:17 +02:00
Jonas Hietala
5238ed309f Match the whole real home directory in prompt_pwd. 2015-08-08 23:19:01 +02:00
Nicholas Maccharoli
f6ab0b4d07 Making spacing of .fish files uniform. 2015-08-08 11:22:44 -07:00
Fabian Homborg
db5c02fbfc abbr completions: Describe abbreviations with what they abbreviate
i.e. "abbr -e <TAB>" will list
	 am (alsamixer)
2015-08-06 20:15:36 +02:00
Mike Meyer
938da3039d Fix extra redirection. 2015-08-06 18:43:26 +02:00
faho
cfeae48b83 Merge pull request #2267 from mwm/fossil-completions
Various fossil completions fixes
2015-08-06 14:04:53 +02:00
Fabian Homborg
50f18ddaad Cower: Enable description and ignore errors when search string is too short 2015-08-06 12:57:40 +02:00
Fabian Homborg
2874650802 gpg: Fix key/user id completion
This was too simplistic, among other things it completed things that
looked like key ids but weren't, didn't turn "\x3a" back into
colons (which made the argument invalid)....

gpg is weird.

Might fix #2150
2015-08-05 22:38:42 +02:00
Fabian Homborg
1271de321e gpg: send-keys takes a key id, not a user id 2015-08-05 22:36:12 +02:00
Fabian Homborg
a265ee6f6f gpg completion: Add "-k", don't append "," so much 2015-08-05 21:59:58 +02:00
Fabian Homborg
e196203320 Add completion for systemd's timedatectl 2015-08-05 17:45:36 +02:00
Fabian Homborg
33d062cb60 pacman completion: Offer "command-options" first 2015-08-05 17:43:15 +02:00
Fabian Homborg
53bcd4b1ab Add iptables completion
This is far from perfect, but I need to gather more feedback.
2015-08-05 17:41:14 +02:00
Fabian Homborg
385f961b29 systemctl: Add new options from 220 2015-08-05 17:38:58 +02:00
Fabian Homborg
eada714a0a Complete machines in systemd tools 2015-08-05 17:38:17 +02:00
Fabian Homborg
66f11e9bd3 vi-mode: Make \cc go to normal from insert mode
Keep the behavior for normal mode

Fixes #2228
2015-08-04 14:22:55 +02:00
Mike Meyer
158d3cc743 Many small fixes, and done big one.
Bit one: Make all the fossil command invocations throw away stderr so we don't
get annoying messages when not in a repository.

Also:
- Move checkout into alphabetical order.
- Fix ls to complete against tags for -r option, not no option.
- Add missing option to delete command.
- Make commit complete against modified files.
- Make add only complete against extra files.
- Remove now ununused function to list extra & modified files.
- Add -f option in a number of places where it seemd appropriate.
2015-08-04 06:51:51 -05:00
Mike Meyer
618a4b42ad Fix type, add tag completion to checkout. 2015-08-03 17:16:44 -05:00
Mike Meyer
e2c81e54e2 Add completions for fossil checkout. 2015-08-03 16:11:26 -05:00
Fabian Homborg
546ba888ae Complete commands in pacman again
"noopt" was mistakenly turned around by missing a "not".
2015-07-31 22:36:00 -07:00
David Adam
9b2a17eb1e functions/history.fish: whitespace only change
Run through fish_indent, mismatching indents actually confusing.

[skip ci]
2015-07-31 17:12:16 +08:00
David Adam
a7ecc0db1f functions/history.fish: validate command line arguments in wrapper
Closes #2055.

Implements the standard `--` option for delimiting options from
arguments; to search for "--", use `history --search -- --`.
2015-07-31 17:07:27 +08:00
Joshua Elliott
bc7eb39781 Improve completion for python -m flag 2015-07-30 16:04:39 -06:00
Lars Grefer
b1ed15a07a Tab-Completition for atom 2015-07-29 09:58:19 +08:00
Lars Grefer
9dc6ef6771 Tab-Completition for sass 2015-07-29 03:43:31 +02:00
David Adam
d3a0372e89 grep completions: remove trailing end statement 2015-07-26 00:16:48 +08:00
David Adam
d1d36cc9af Merge branch 'death_of_mimedb' 2015-07-25 13:04:28 +08:00
PythEch
b32f770a69 Fix Unknown Signal 'winch'
Fixes an annoying error that affects machines with Turkish locales
2015-07-24 08:56:14 -07:00
David Adam
78d4f22ce4 __fish_print_mounted: expand scope on non-Linux platforms 2015-07-24 18:35:10 +08:00
Fabian Homborg
3925929979 Fix mountpoints with spaces on linux
Signed-off-by: David Adam <zanchey@ucc.gu.uwa.edu.au>
2015-07-24 18:33:35 +08:00
David Adam
60fdd71f74 read: update completions
--right-prompt added in fe9cf673a2 but missed from the
completions.

With thanks to nafg@github.
2015-07-24 18:18:10 +08:00
Lars Grefer
821e8ec59a Completion support for the main commands of the travis command line tool 2015-07-24 02:29:53 +02:00
David Adam
6c668868e9 death of mimedb: remove mimedb from the tree 2015-07-23 14:35:35 +08:00
David Adam
6add8a7df9 open: drop mimedb dependency 2015-07-23 14:26:38 +08:00
David Adam
7fa69ef8be __fish_complete_suffix: don't provide file description by default
Drops dependency on the mimedb tool and reflects the changes made to the
default chooser for files in #279.
2015-07-23 14:26:38 +08:00
David Adam
f77f71c17e __fish_{filter,complete}_mime: drop from tree
These are undocumented and unused, and rely on mimedb which is being removed
from the tree.
2015-07-23 14:26:38 +08:00
Fabian Homborg
3b0805f4d7 Normalize *diff completions 2015-07-20 15:19:03 -07:00
Fabian Homborg
0c1485c325 Normalize *grep completions 2015-07-20 15:19:03 -07:00
Fabian Homborg
86554d66d0 Indent svn completion
Seems emacs' fish-mode sometimes breaks
2015-07-20 15:19:03 -07:00
Fabian Homborg
6475d763d0 Remove function and descriptions from rc-service completion
The descriptions are "Start: Start the service"
				 	 "Stop : Stop the service"
					 "Restart: Restart the service"
2015-07-20 15:19:03 -07:00
Fabian Homborg
7add4d5782 Normalize *tex completions 2015-07-20 15:19:03 -07:00
Fabian Homborg
f70b1ffbbf Normalize python* completion 2015-07-20 15:19:03 -07:00
Fabian Homborg
8a9b7dc63a Normalize *sum (md5sum et al) completions 2015-07-20 15:19:03 -07:00
Fabian Homborg
3f30096727 Normalize svn completion 2015-07-20 15:19:02 -07:00
Fabian Homborg
52ff997bf0 Normalize atool completions
Remove function, use wrapping.
2015-07-20 15:19:02 -07:00
ridiculousfish
2109af0987 Implement lowercase-r replace in fish_vi_mode
Fixes #1595
2015-07-20 00:29:08 -07:00
Fabian Homborg
b1a0498ff9 Update emacs completion with all options, remove silly mime-hack
__fish_complete_mime used in that way is a no-op on current fish anyway,
and emacs is by no means useful for just text files (it can also view
PDFs, images, ...).

Otherwise this completion currently only offers options, not arguments.

For most these are pretty much incompletable (lisp code, for example),
and for others it's just not all that useful.

Signed-off-by: David Adam <zanchey@ucc.gu.uwa.edu.au>
2015-07-20 09:05:37 +08:00
Fabian Homborg
882f4714ac pacman completion: Turn into regular completion
This used to be a function because we didn't have complete -w

Use that and it becomes a bit simpler.

This also simplifies the code in a few other ways (like removing a
useless-use-of-cat)
and adds comments about a few edgecases.
2015-07-19 18:03:01 -07:00
Fabian Homborg
f359ded336 sysctl completions: Add OSX support 2015-07-19 17:52:25 -07:00
Fabian Homborg
ff4b1104a2 Add sysctl completion
See fish-shell/fish-shell#1375
2015-07-19 17:52:25 -07:00
Fabian Homborg
e35a2450d9 Apropos completion: Ignore stderr
Fixes fish-shell/fish-shell#1171
2015-07-19 17:32:03 -07:00
Fabian Homborg
616d848fac Add .fish suffix to funced's tempfile name
This allows editors (like emacs) to pick up on the fact that it's a fish script.
2015-07-19 17:22:09 -07:00
Jesse Nazario
466806fb11 ctrl-p as up-or-search and ctrl-n as down-or-search 2015-07-19 17:13:44 -07:00
Fabian Homborg
97edc96afd Improve journalctl completion
- Complete fields and (more importantly) values
- Add all options
- Complete boots

Signed-off-by: David Adam <zanchey@ucc.gu.uwa.edu.au>
2015-07-16 16:29:53 +08:00
ridiculousfish
9cf2bb18c2 pngquant delete.png, saving ~1.4 KB 2015-07-12 15:09:24 -07:00
Jonathan Chan
4b8febd44e Add favicon for web config 2015-07-12 15:06:56 -07:00
Vladimir Rudnyh
d49f6e1b29 __fish_git_prompt: fix stateseparator color in informative_status
In informative_status mode stateseparator did not use
fish_git_prompt_color settings.
2015-07-12 14:53:52 -07:00
Fernando Manfredi
1e32f9431d 👍 New sample prompt from Acidhub
New sample prompt from Acidhub (github.com/acidhub)
This prompt show user|path (full), and a small symbol to
show last command status.

If in a git repository, it's show after the path several
symbols to indicate the branch status and the branch name.

Very handy to me so far.

Signed-off-by: Fernando Manfredi <contact@acidhub.click>
2015-07-12 14:22:18 -07:00
David Woods
4a3cda1495 update function parameter for EXIT signal
changed `function __trap_handler_EXIT --on-exit %self` to `function __trap_handler_EXIT --on-process-exit %self`

I'm guessing the on-exit syntax was from an older version? Trapping EXIT with that syntax caused errors.
2015-07-12 14:21:05 -07:00
Derek Harland
05daedf7c6 Improve dirs output and add -c option
Adds behaviour similar to bash:
- shorten dirs output by representing $HOME as ~;
- provide a '-c' option to clear the stack
2015-07-12 12:20:44 -07:00
Derek Harland
f07d59c55d Alter pushd to add more bash-like behaviour
The following behaviour is added:
- an empty pushd exchanges the top two directories in the stack;
- pushd +<n> rotates the stack so that the n-th directory (counting from the left of the list shown by dirs, starting with zero) is at the top;
- pushd -<n> rotates the stack so that the nth directory (counting from the right of the list shown by dirs, starting with zero) is at the top.
2015-07-12 11:57:14 -07:00
Fabian Homborg
0f3306870b machinectl: Fix fatal errors in __fish_systemd_has_machine_image 2015-07-02 14:36:48 +08:00
Fabian Homborg
a1b86749cf machinectl completions: Add --no-ask-password 2015-07-02 14:36:48 +08:00
Fabian Homborg
25d19f7d63 Add completions for systemd's machinectl 2015-07-02 14:36:48 +08:00
David Adam
976ce1e8fd Add completions for Debian's Apache tools, a2{en,dis}{mod,conf,site}
Work on #2141.
2015-06-26 16:14:01 +08:00
Fabian Homborg
ad237136e7 Add completion for systemd's busctl 2015-06-23 16:02:59 -07:00
ridiculousfish
a4d6a104a6 Correct name and author fields to be lowercase in sorin prompt
fish_config requires that these fields be lowercase, otherwise
they won't show up in the prompt list.
2015-06-23 15:58:56 -07:00
Ivan Tham
a150ae76ac Add sorin theme 2015-06-23 15:46:16 -07:00
David Adam
7d94b7fd1b __fish_print_hostnames: ignore errors from getent
Closes #2137.
2015-06-19 16:42:48 +08:00
ridiculousfish
4115a2f2d1 Tweak and add tests for abbr
1. When run with no arguments, make abbr do the equivalent
   of `abbr --show`
2. Enable "implicit add", e.g. `abbr gco git checkout`
3. Teach `abbr --show` to not use quotes for simple cases
4. Teach abbr to output -- when the abbreviation has
   leading dashes

Add some basic tests to abbr too.
2015-06-14 14:12:29 -07:00
ridiculousfish
767742c7e7 Rework how the mode is reported in fish_vi_mode
Add a new function fish_mode_prompt which (if it is defined) has its output
prepended to the left prompt. Rather than replacing the prompt wholesale, make
fish_vi_mode enable this function by setting a variable __fish_vi_mode. This
enables vi mode to interoperate nicely with custom prompts. Users who want
to change how the mode is reported can either redefine this function or
erase it entirely. Fixes #1988.
2015-06-14 11:36:11 -07:00
ridiculousfish
0ddd0ed4fb fish_config to select the proper tab when run with a tab name
`fish_config abbr` should show "abbreviations" selected
in the tab list.
2015-06-14 00:10:11 -07:00
ridiculousfish
2d1331e104 Tweak the styling of the abbreviation editor
Removes the big white block of the input fields.
2015-06-13 22:56:45 -07:00
ridiculousfish
9223b643b6 Use --remove instead of -e when erasing abbreviations from fish_config
Updates fish_config to use the correct argument to abbr
2015-06-13 22:56:01 -07:00
David Adam
18d7465592 Merge branch 'Integration_2.2.0' 2015-06-05 14:02:25 +08:00
David Adam
b6b6de3304 vi bindings: clear commandline with Ctrl-C
Closes #2077.
2015-06-05 14:01:43 +08:00
Michael Steed
cb984cf761 Add 'bigword' vi key bindings
- Add four new functions: forward-bigword, backward-bigword,
  kill-bigword, backward-kill-bigword
- Add new enum move_word_style_whitespace and related state machine
  method
- Change vi key bindings to operate on bigwords: B, gE, W, E, dW, diW,
  daW, dE, dB, dgE, cW, ciW, caW, cE, cB, cgE, yW, yiW, yaW, yE, yB,
  ygE
2015-06-04 12:09:02 -07:00
ridiculousfish
3a190bbe49 Revert "Notify vte-based terminals when a command completes."
Backing out fix for #2096 until we know how to avoid
spamming other terminals (#2102)

This reverts commit 5c4acc8ee1.
2015-05-30 11:57:31 -07:00
Ben Liblit
5c4acc8ee1 Notify vte-based terminals when a command completes.
Notification is sent using an OSC 777 escape sequence as described at
http://known.phyks.me/2014/local-notifications-for-weechat-and-urxvt.
The specific notification is crafted to match that emitted by bash
when running under Fedora 22 with the "vte-profile" RPM installed.
See the code for "__vte_prompt_command" starting at
http://pkgs.fedoraproject.org/cgit/vte291.git/tree/vte291-command-notify.patch#n307
to see exactly what bash produces.  My approach is, however, a bit
more paranoid about control characters embedded in commands.

Gnome-terminal 3.16 responds to this escape sequence by posting a
desktop notification if the containing terminal window does not have
focus.  This lets the user know that a long-running background command
has completed.  Job notification is promoted as a Fedora 22 feature
(http://fedoramagazine.org/terminal-job-notifications-in-fedora-22-workstation/),
so it would be good for fish users to be benefit from it.

Conversely, anyone who does not want this feature can use "functions
--erase __notify_vte_command_completed" to turn it off.
2015-05-28 03:10:56 -05:00
David Adam
013d91d4ee Revert "Add completions for pass"
This reverts commit bfbeca8b6c which was
submitted in #2089.

`pass` ships its own completions and duplication is likely to cause
problems.

See https://github.com/fish-shell/fish-shell/pull/1843 for the
rationale.
2015-05-25 12:02:05 +08:00
John Pham
8e0c1c70ce Add completions for git-filter-branch 2015-05-23 11:43:54 +02:00
Rico Sta. Cruz
bfbeca8b6c Add completions for pass 2015-05-23 06:07:57 +08:00
David Adam
c0cf25cf0b abbr: rename --remove to --erase
for consistency with other fish commands

Closes #2071.
2015-05-22 09:48:39 +08:00
ridiculousfish
386d6a77f2 Make fish_config work correctly when IPv6 is disabled in the kernel
Fixes #1754
2015-05-17 19:18:27 -07:00
ridiculousfish
a83323705d Make fish_config work correctly when IPv6 is disabled in the kernel
Fixes #1754
2015-05-17 19:13:50 -07:00
Brendan Whitfield
9b5026f7e5 added cursor:pointer to master_element in web_config css 2015-05-03 17:33:25 +08:00
ridiculousfish
879d03d0fe Reset the color after printing the CWD in classic+git prompt
Fixes #2034
2015-04-23 17:53:40 -07:00
ridiculousfish
7a1fc028e3 Only pass the command name to command-not-found
With the fix for #365, fish_command_not_found event handlers
receive the command and all of its arguments. But commands
like /usr/lib/command-not-found expect only the command name.
So when invoking an external command, just pass the command
name, not all of the arguments.
2015-04-20 02:22:54 -07:00
Roman Hargrave
9dc53f7c1b Added completions for apt command 2015-04-16 10:47:36 +08:00
ridiculousfish
6faac2d2c8 Revert "Source files /etc/profile.d/*.fish at startup"
Per discussion in #1956, back this out until we have consensus.

This reverts commit 20a6b65b25.
2015-04-14 10:08:40 -07:00
ridiculousfish
97aa1c033b Switch back to insert mode after executing a command in vi mode
Fixes #1933
2015-04-08 10:31:48 -07:00
Nathan L Smith
34296dd440 add completions for test kitchen 2015-04-07 13:49:54 +08:00
ridiculousfish
87428672d8 Fix funcsave to not delete the function it just created
In 73f344f41b, we allowed autoloaded functions to be deleted.
For some reason, funcsave immediately deletes the function it
creates. This previously did very little, since the function would
immediately be re-autoloaded, but with the fix for 73f344f41b
the function gets tombstoned. So the effect is that funcsave
makes the function disappear! This simply removes the erase call,
which dates back to fish 1.x.
2015-04-06 22:40:13 -07:00
Sanne Wouda
cad1dc5293 Fix #1978:"ul: unknown escape sequence" when asking for help
It seems that `ul` can't handle the escape sequences for bold text that `nroff` generates on my system.  Fixed by either removing `| ul`, or adding `-c` to the `nroff` command.

Needs testing for old (OSX?) versions of nroff.
2015-04-04 12:03:58 -07:00
David Adam
900a8a1408 __fish_complete_python: fix regex to be POSIX-compatible
Closes #2004.
2015-03-30 15:13:04 +08:00
David Adam
384cb2d735 Revert "__fish_config_interactive: warn users that fishd is going away"
This reverts commit ad61c3f0d6.

Work on #1730.
2015-03-30 13:42:59 +08:00