Commit graph

5679 commits

Author SHA1 Message Date
Fabian Homborg
410d92ed61 git completions: Ignore stderr everywhere
This allows us to run git commands outside of a git repo.

Fixes #3114.
2016-06-04 12:26:06 +02:00
Kurtis Rader
53e865b654 put curses/terminfo vars into the environment
We need to actually export the curses/terminfo env vars in order for
`setupterm()` to be able to use them. While fixing this I reworked the
fallback logic implemented by @zanchey in response to issue #1060 in
order to simplify the logic and clarify the error messages.

This does not allow someone to change the curses/terminfo env vars after
the first prompt is displayed (you can but it won't affect the current
fish process). It only makes it possible to set `TERM`, `TERMINFO`, and
`TERMINFO_DIRS` in *config.fish* or similar config file and have them be
honored by fish.
2016-06-03 17:16:41 -07:00
Fabian Homborg
57f289850c Don't insert prefix for non-prefix matches
The issue here is that when inserting a common prefix for e.g. a
substring match, we increase the amount of available candidates again to
things the user didn't want.

An example is in share/functions - a completion for "inter" would
previously expand to "__fish_" because it matched:

- __fish_config_interactive.fish
- __fish_print_interfaces.fish
- __fish_print_lpr_printers.fish

The completion afterwards would then show 189 possible matches, only
three of which (the above) actually matched the original "inter".

Fixes #3089.
2016-06-02 21:25:50 -07:00
Beni Cherniavsky-Paskin
63a851cfd6 mention nullglob exceptions in failglob error msg 2016-06-02 19:51:19 -07:00
Hunsu
24d6f6d066 Add completions for git blame command (#3094) 2016-06-02 12:49:01 +02:00
Kurtis Rader
db1ec847f9 fix lint error in wgettext()
Cppcheck was complaining about the `return val.c_str()` at the end of the
`wgettext()` function. That would normally a bug since the lifetime of
`val` ends when the function returns. In this particular case that's not
true because the string is interned in a cache. Nonetheless, rather than
suppress the lint warning I decided to modify the API to be more idiomatic.

In the process of fixing the aforementioned lint warning I fixed several other
lint errors in that module.

This required making our copy of `wgetopt()` compatible with the rest of
the fish code. Specifically, by removing its local definitions of the
"_" macro so it uses the same macro used everywhere else in the fish
code. The sooner we kill the use of wide chars the better.
2016-06-01 22:19:03 -07:00
Jorge Bucaran
aee9d2c9d7 Do not hardcode RGB values in color definitions. 2016-06-01 21:50:19 -07:00
David Adam
22e0702e8d travis: disable clang build
Clang repositories currently offline, causing build errors.

Can be reverted once https://github.com/travis-ci/travis-ci/issues/6120
is fixed.
2016-06-02 08:19:26 +08:00
Jens Fredskov
29c38d73a2 correct __fish_contains_opts to __fish_contains_opt (#3102)
Completion throws and error about the command `__fish_contains_opts` beings unknown. It seems to be a simple typo, as all other completions use `__fish_contains_opt`
2016-06-01 23:58:38 +02:00
Fahri Cihan Demirci
8d11bb9f86 Add Purge Subcommand Completion for Apt (#3097) 2016-06-01 00:56:22 +02:00
Fabian Homborg
8d6735cb41 Make string match -rnv work
Fixes #3098.
2016-05-31 23:24:08 +02:00
Kurtis Rader
3d74b160b3 simplify some fish_tests code
This came to my attention because cppcheck was warning about possibly
dereferncing a NULL pointer.
2016-05-30 17:31:41 -07:00
Fabian Homborg
2768d2ea06 Style fixes for fish_vi_cursor
"$fcn"

[ci skip]
2016-05-30 16:40:49 +02:00
David Adam
bb11999bf7 license.hdr: remove strlcat license information
Function and code removed in 5bf1b0e5f

[ci skip]
2016-05-30 16:00:23 +08:00
Kurtis Rader
5bf1b0e5f5 fix random lint issues
This only eliminates errors reported by `make lint`. It shouldn't cause any
functional changes.

This change does remove several functions that are unused. It also removes the
`desc_arr` variable which is both unused and out of date with reality.
2016-05-29 22:24:29 -07:00
Andreas Wagner
3d19b549c8 Fix utf-8 decoding error in file_is_overwritable of create_manpage_completions.py 2016-05-29 14:12:32 -07:00
Fabian Homborg
bfb5fec330 Remove stray "0" output from man completions 2016-05-29 14:34:20 +02:00
Fabian Homborg
0d257fd651 Man completions: Don't show sections when completing pages 2016-05-29 14:31:42 +02:00
Fabian Homborg
ebde55f704 Man completions: Show all pages for a section
If one is given, of course.
2016-05-29 14:31:12 +02:00
Fabian Homborg
f23464001f Indent __fish_git_prompt 2016-05-29 14:10:10 +02:00
Fabian Homborg
0882e0cb95 Git prompt: Remove legacy option
Git has supported `rev-list --count` for years, so this shouldn't be
needed anymore.
2016-05-29 14:07:15 +02:00
Fabian Homborg
763c620d0b Stringify git prompt 2016-05-29 14:06:12 +02:00
Fabian Homborg
2871096f9c git completions: Add general options
These are the options between `git` and the subcommand.

Fixes #3087.
2016-05-29 13:59:22 +02:00
Wieland Hoffmann
a918397da2 It's status --is-interactive (#3086) 2016-05-29 12:24:24 +02:00
Fabian Homborg
8e88b29eeb Git prompt: Shorten the sha ourselves
Possibly fixes #3083.
2016-05-28 19:30:29 +02:00
Fabian Homborg
aaaea44714 Git prompt: Only shorten sha if needed
This speeds up the common case when IO is slow, e.g. when used with
sshfs.

We only use the short sha for figuring out whether the state is
valid (for which a long sha should also work) and for display when HEAD
is detached (I think that's the correct git-ism).

Working towards #3083.
2016-05-28 17:58:29 +02:00
Fabian Homborg
ffe5736abb History docs: Move descriptions to the corresponding options
This should clarify `--delete`s behavior without `--prefix` or
`--contains` a bit.

Fixes #3054.
2016-05-28 14:22:16 +02:00
Fabian Homborg
d79a5a3152 Funced: Make removal safer, take two
Now we try to remove the file and then the directory, without forcing
anything, showing any (quite unexpected) error to the user, once.
2016-05-28 12:34:04 +02:00
Fabian Homborg
ffcfe73299 Allow suggestion when selecting in pager
Also mentioned in #3016.
2016-05-27 15:02:56 -07:00
Fabian Homborg
2885c085d8 Allow autosuggestion after completion
It seems kinda silly to not directly do it, but it was explicitly
stopped in the code.

I'm quite good at deleting that, aren't I?

Fixes #3016.
2016-05-27 15:02:56 -07:00
Frederik “Freso” S. Olesen
7af9e1f5c5 Split off __fish_complete_blockdevice from mount.fish.
The __fish_complete_blockdevice function can be useful to other
completions than mount.fish, so it should live on its own so its
available to those.
2016-05-27 14:56:47 -07:00
Frederik “Freso” S. Olesen
980fb59232 Remove executable flag from pacaur completion. 2016-05-27 14:48:41 -07:00
Kurtis Rader
9ad3488b5d fix some style bogosities that crept in 2016-05-27 14:44:30 -07:00
Kurtis Rader
8f420b9272 Fix wide char related tests on Cygwin
This makes the wide char tests run by `./fish_tests` pass on systems where
sizeof wchar_t is two (e.g., Cygwin). In doing so it corrects several
problems with the underlying code in module *utf8.cpp* such as allowing
five and six byte UTF-8 sequences. They were allowed by the original
Unicode proposal but are not allowed by the adopted standard.
2016-05-26 20:24:03 -07:00
Fabian Homborg
d55b226f19 Document the rest of the electric/ro vars
Fixes #3072.
2016-05-26 18:27:39 +02:00
Fabian Homborg
95635a5982 Remove $version
It's too generic a name - which both does not communicate what it is and
prevents someone else from using it.
2016-05-26 18:27:37 +02:00
David Adam
91962d8aa2 configure: move an errant space
Introduced in 6b92fdd18d.
2016-05-25 21:39:57 +00:00
Kurtis Rader
d1208386d2 tty driver ignore lnext (\cV) and werase (\cW)
Configure the tty driver to ignore the lnext (\cV) and werase (\cW) characters
so they can be bound to fish functions.

Correct the `fish_key_bindings` program to initialize the tty in the same
manner as the `fish` program.

Fixes #3064
2016-05-25 12:05:39 -07:00
David Adam
d7a4838a54 make_pkg: allow output to an environment-controlled path 2016-05-25 17:21:05 +00:00
David Adam
6d6f67ee67 make_pkg: use a temporary directory rather than just /tmp 2016-05-25 17:11:02 +00:00
David Adam
987f7cafd3 make_tarball: use a temporary directory rather than just /tmp 2016-05-25 16:56:00 +00:00
David Adam
b883e59ee9 make_tarball: search for a tar that supports the options we need 2016-05-25 16:56:00 +00:00
David Adam
79fa4d5c4a make_tarball: allow output to an environment-controlled path 2016-05-25 16:56:00 +00:00
David Adam
23de5908cf make_tarball: minor cleanup 2016-05-25 16:56:00 +00:00
Fabian Homborg
0d5ef3f43e CONTRIBUTING.md: Describe emacs fish-mode setup 2016-05-25 16:42:42 +02:00
Fabian Homborg
2a8309458d Update changelog with clipboard change 2016-05-25 16:26:07 +02:00
Fabian Homborg
2418daebf3 Add git hooks information and example
This might be useful to contributors.
2016-05-25 16:19:20 +02:00
Fabian Homborg
53c506f109 Run fish_indent on default_key_bindings 2016-05-25 16:10:16 +02:00
Fabian Homborg
7d1f45e25f Add clipboard helper functions and bind them
\cy copies, \cv pastes.
2016-05-25 16:10:16 +02:00
Fabian Homborg
1bad956633 docs: Remove section about clipboard integration 2016-05-25 16:10:16 +02:00