Commit graph

106 commits

Author SHA1 Message Date
ridiculousfish
43505f7077 Allow ** glob segments to match zero directories
Prior to this change, a glob like `**/file.txt` would only match
`file.txt` in subdirectories; the `**` must match at least one directory.
This is historical behavior.

With this change we move a little closer to bash's implementation by
allowing a literal `**` segment to match in the current directory. That
is, `**/foo` will match both `foo` and `bar/foo`, while `b**/foo` will
only match `bar/foo`.

Fixes #7222.
2020-12-28 23:51:18 -08:00
Ilan Cosman
94d18c1ac5 CHANGELOG: Add missing --query 2020-12-26 23:18:14 +01:00
ridiculousfish
315f8f8a83 Relnote ldapsearch completions
[ci skip]
2020-12-26 12:16:46 -08:00
Fabian Homborg
a6674483c1 CHANGELOG: Add more issues to 3.2
Importantly I had added some of the `math` things to 3.1 by accident,
this movs them to 3.2
2020-12-26 19:36:24 +01:00
Johannes Altmanninger
bae75c96d9 __fish_complete_suffix: complete all files, but sort files with matching suffix first
See #7040 and others.
2020-12-23 19:14:10 +01:00
Shun Sakai
58d9fa3820 Add completions for .NET 2020-12-19 16:55:24 -08:00
ridiculousfish
f61f45748e Document insert-line-under and insert-line-over bindings 2020-12-19 14:32:17 -08:00
Fabian Homborg
39263fc92d Some refinemens to the CHANGELOG
Remove some bits from the significant changes, add some others, expand
on some points.

[ci skip]
2020-12-16 17:38:26 +01:00
ridiculousfish
36766ea3d7 Correct $status for certain pipeline-aborting failures
If we refused to launch a job because of a "pipeline aborting" error,
then it's the caller's responsibility to set $status.

Fixes #7540
2020-12-13 17:33:34 -08:00
ridiculousfish
a2e486966a Always become pgroup leader in interactive mode
Prior to this change, if fish were launched connected to a tty but not as
pgroup leader, it would attempt to become pgroup leader only if
--interactive is explicitly passed. But bash will unconditionally attempt
to become pgroup leader if launched interactively. This can result in
scenarios where fish is running interactively but in another pgroup. The
most obvious impact is that control-C will result in the pgroup leader
(not fish) exiting and make fish orphaned.

Switch to matching the bash behavior here - we will always try to become
pgroup leader if interactive.

Fixes #7060.
2020-12-06 13:42:35 -08:00
Fabian Homborg
3d0200a115 CHANGELOG: string is now a reserved word
and can't be used for functions.
2020-12-06 15:40:46 +01:00
ridiculousfish
8a29fa6778 Relnote fix for expansion limits 2020-12-05 13:23:23 -08:00
Fabian Homborg
f6da895df4 CHANGELOG: Webconfig theme 2020-12-04 17:08:45 +01:00
Fabian Homborg
44eadd8bed CHANGELOG: Add some of the recent work 2020-12-04 17:02:59 +01:00
ridiculousfish
2b8d2deb0c Introduces "smartcase" completions
"smartcase" performs case-insensitive matching if the input string is all
lowercase, and case-sensitive matching otherwise. When completing e.g.
files, we will now show both case sensitive and insensitive completions if
the input string does not contain uppercase characters.

This is a delicate fix in an interactive component with low test coverage.
It's likely something will regress here.

Fixes #3978
2020-11-29 12:40:01 -08:00
ridiculousfish
639cd66ba1 Conditionally make autosuggestions case sensitive
When fish presents an autosuggestion, there is some logic around whether
to retain it or discard it as the user types "into" it. Prior to this
change, we would retain the autosuggestion if the user's input text is a
case-insensitive prefix of the autosuggestion. This is reasonable for
certain case-insensitive autosuggestions like files, but it is confusing
especially for history items, e.g. `git branch -d ...` and `git branch -D
...` should not be considered a match.

With this change, when we compute the autosuggestion we record whether it
is "icase", and that controls whether the autosuggestion permits a
case-insensitive extension.

This addresses part of #3978.
2020-11-29 12:35:18 -08:00
Fabian Homborg
9bcfa851c1 CHANGELOG math --base
[ci skip]
2020-11-27 19:50:04 +01:00
Fabian Homborg
7e9b1f871b CHANGELOG: Use :issue: role
[ci skip]
2020-11-27 19:48:58 +01:00
Mahmoud Al-Qudsi
962ff26b92 Add named capture groups to changelog 2020-11-26 14:41:31 -06:00
ridiculousfish
1d2dd3975a Add fix for #7483 to changelog 2020-11-23 19:38:03 -08:00
Fabian Homborg
9b3f4faa5a CHANGELOG: Use :issue: role 2020-11-22 16:47:44 +01:00
Shun Sakai
36337fc45d Add completions for julia 2020-11-09 00:41:38 +09:00
Fabian Homborg
638cf61407 CHANGELOG cancel-undo 2020-10-30 19:37:44 +01:00
Fabian Homborg
6aa4f6b5ca CHANGELOG: Reorganize a bit
The builtin-buffering thing is huge and should be early in the big
ticket items, the performance improvement to completion of commands is
cool but not all that important.

[ci skip]
2020-10-28 20:13:58 +01:00
Johannes Altmanninger
943cf03d8e Only send the PID of the last process in a job to builtin fg
jobs -p %1 prints all processes in the first job.
fg is special because it only takes one argument.  Using the last process
in the pipeline works for the cases I can think of.

Fixes #7406
2020-10-18 19:36:48 +02:00
Johannes Altmanninger
863b4700f8 Use builtin command in spago completions, add to changelog 2020-10-10 13:11:53 +02:00
Johannes Altmanninger
f20e8e5860 alias: don't add --wraps for wrappers with the same name
These aliases seem to be common, see #7389 and others.  This prevents
recursion on that example, so `alias ssh "env TERM=screen ssh"` will just
have the same completions as ssh.

Checking the last token is a heuristic which hopefully works for most
cases. Users are encouraged to use functions instead of aliases.
2020-10-10 09:24:49 +02:00
David Adam
9292e2fd56 CHANGELOG: work on 3.2.0
[ci skip]
2020-10-07 21:23:44 +08:00
David Adam
04cb23a038 CHANGELOG: work on 3.2.0
[ci skip]
2020-10-06 22:53:58 +08:00
David Adam
3a59958f98 CHANGELOG: work on 3.2.0
[ci skip]
2020-10-05 22:38:31 +08:00
David Adam
68455f2d46 CHANGELOG: note that stderr-nocaret will be default in future
Work on #7105.
2020-10-05 21:12:51 +08:00
Fabian Homborg
52926fb576 More CHANGELOG work for 3.2.0 2020-10-04 14:47:17 +02:00
Fabian Homborg
83b6098827 CHANGELOG
A better example for the builtin buffering and a plurality
thinko ("the docs are", "the documentation is").

[ci skip]
2020-10-04 14:23:57 +02:00
Fabian Homborg
68fb1d9883 CHANGELOG New doc theme
[ci skip]
2020-10-04 11:07:30 +02:00
Fabian Homborg
bbdfe126a7 Flash if history search found nothing
This makes it clearer that we're at the end.

Fixes #7362.
2020-09-30 18:02:22 +02:00
David Adam
b1818270f9 CHANGELOG: work on 3.2.0
[ci skip]
2020-09-28 22:48:21 +08:00
Johannes Altmanninger
f758d39535 string pad: handle padding characters of width > 1
If the padding is not divisible by the char's width without remainder,
we pad the remainder with spaces, so the total width of the output is correct.

Also add completions, changelog entry, adjust documentation, add examples
with emoji and some tests.  Apply some minor style nitpicks and avoid extra
allocations of the input strings.
2020-09-27 21:59:15 +02:00
David Adam
9f1fc6d040 CHANGELOG: work on 3.2.0
[ci skip]
2020-09-27 22:37:18 +08:00
David Adam
73173dce7a CHANGELOG: work on 3.2.0
[ci skip]
2020-09-27 10:54:15 +08:00
Fabian Homborg
d636918795 Fix warnings in CHANGELOG
../CHANGELOG.rst:30: WARNING: Bullet list ends without a blank line; unexpected unindent.
../CHANGELOG.rst:117: WARNING: Inline literal start-string without end-string.

[ci skip]
2020-09-24 21:03:47 +02:00
David Adam
4cb9f3224c CHANGELOG: work on 3.2.0
[ci skip]
2020-09-24 22:50:57 +08:00
Fabian Homborg
1da56f9937 Make history search smartcase
This makes history searches case-insensitive, unless the search string
contains an uppercase character.

This is what vim calls "smartcase".

Fixes #7273.
2020-09-22 16:13:24 +02:00
Fabian Homborg
c7b51b360d CHANGELOG
[ci skip]
2020-09-21 21:01:44 +02:00
Fabian Homborg
21077c0c9a CHANGELOG A few rewordings
[ci skip]
2020-09-18 22:18:03 +02:00
David Adam
f9505996e7 README/CHANGELOG: make Python requirements consistent
[ci skip]
2020-09-16 15:57:36 +08:00
David Adam
465c2d06aa CHANGELOG: work on 3.2.0
[ci skip]
2020-09-16 15:57:27 +08:00
Fabian Homborg
68ab016267 CHANGELOG/README python 3-ification
Fixes #6537.

[ci skip]
2020-09-11 21:21:04 +02:00
Fabian Homborg
624d0b7e42 CHANGELOG complete 2020-09-09 20:24:23 +02:00
Fabian Homborg
58d549e058 CHANGELOG fish_command_not_found
[ci skip]
2020-09-06 11:18:31 +02:00
V
fc13dd362c
Colourise diff(1) output, if supported (#7308) 2020-09-04 18:43:09 +02:00