Commit Graph

32 Commits

Author SHA1 Message Date
ridiculousfish
81f9f51bcb Incorporate widecharwidth changes for narrow emoji
This pulls in widechar_width.h from commit 7e9dfdaf05059b3f. The big change
here is that some characters which were previously marked as widened in 9
are now marked as unconditionally narrow; this includes some randoms like
hot pepper (U+1F336) but more importantly all of the regional indicators,
which affects how flags are rendered.

If you put two regional indicators together, you get a flag emoji. It's
unclear what the width of this flag emoji should be; Terminal and iTerm2
renders it as width 1, while kitty renders it as width 2. This is
unaffected by fish_emoji_width because the flag does not have an assigned
codepoint, it is a pair of codepoints.

The regional indicators are marked as "neutral" in EastAsianWidth.txt which
means they conceptually have width 1. So two of them have width 2. So now
we assume that flags are rendered as width 2.

This fixes #7237, for terminals that render flags as width 2 (but not 1,
unfortunately, which includes iTerm2 and Terminal.app).
2020-08-04 12:40:46 -07:00
ridiculousfish
f94a6a74f0 Remove fish_color_match support
fish_color_match is a variable which controls syntax highlighting for
matching quotes and parens, but only with interactive `read` with shell
highlighting disabled. It seems unlikely that anybody cares about this.
2020-08-03 13:36:47 -07:00
Johannes Altmanninger
844c075e83 Update changelog for the new forward-single-char readline command 2020-08-01 12:17:15 +02:00
David Adam
b990bb1f7a CHANGELOG: work on 3.2.0 and a formatting fix
[ci skip]
2020-08-01 07:35:22 +08:00
ridiculousfish
bcfc54fdaa Do not buffer builtin output if avoidable
builtins output to stdout and stderr via io_streams_t. Prior to this fix, it
contained an output_stream_t which just wraps a buffer. So all builtin output
went to this buffer (except for eval).

Switch output_stream_t to become a new abstract class which can output to a
buffer, file descriptor, or nowhere. This allows for example `string` to stream
its output as it is produced, instead of buffering it.
2020-07-30 22:45:44 -07:00
David Adam
caf64fd0ce CHANGELOG: preliminary work on 3.2.0
[ci skip]
2020-07-30 23:02:41 +08:00
Shun Sakai
25e9a758ad Add completions for p7zip 2020-07-24 17:42:44 +02:00
Charles Gould
8fe5570ab7 CHANGELOG: fix formatting for 3.1.1 notes 2020-07-16 17:10:36 +02:00
Charles Gould
4f8a675161 CHANGELOG: fix formatting for 3.1.0 notes 2020-07-16 17:10:36 +02:00
Gokul Soumya
0c72e65071 Update changelog regarding _whatis_current_token binding 2020-07-12 00:15:25 +02:00
Gokul Soumya
7e2a067f53
Add completions for mpc (#7169) 2020-07-04 19:46:19 +02:00
Johannes Altmanninger
8b961a0ca8 Bind undo to Control-Z in addition to Control-/
See #7152
2020-07-01 00:40:32 +02:00
Gokul Soumya
3f210acdff
Add completions for yadm (#7100) 2020-07-01 00:34:00 +02:00
Daniel Bengtsson
e2f03fa8a7 Add a function to check if the user is root.
Add a helper function to check if the user is root. This function can be
useful for the prompts for example. Modify the prompts made root checked
to use the function instead. Add also the support of Administrator like
a root user.

Fixes: #7031
2020-06-26 21:25:13 +02:00
Gokul Soumya
2fd78fd5c2
Uncomment most recent comment if commandline is empty when using toggle comment binding (#7137)
* functions/__fish_toggle_comment_commandline: Uncomment most recent comment if commandline is empty

* Refactor variable setting in functions/__fish_toggle_comment_commandline.fish

* Update changelog regarding toggle comment binding
2020-06-24 18:35:36 +02:00
Fabian Homborg
3d2dc856ab Disable the SUSP character
This makes binding \cz possible.

We already ignore the SIGTSTP signal it sends, so until now it was useless.

(also STOP and START for good measure, but since we disable flow
control in fish anyway these already shouldn't have been sent)

Fixes #7152
2020-06-24 18:26:17 +02:00
wayou
424e658d16 Add completions for deno 2020-06-20 18:31:57 +02:00
Gokul
dde7ee9c7d Add completions for github's gh tool 2020-06-17 20:27:20 +08:00
Fabian Homborg
c88e66199d CHANGELOG: Document pexpect dependency
[ci skip]
2020-06-14 19:30:03 +02:00
Shun Sakai
ffaf969e6e Add completions for apk-tools
Completion of options for each subcommand is not implemented.
2020-06-14 19:23:49 +02:00
Shun Sakai
991389603c Add completions for xxHash 2020-06-14 19:22:01 +02:00
Gokul
413a6aec98 Add completions for create_ap 2020-06-08 16:57:57 +02:00
ridiculousfish
d5a239e59e Bravely stop attempting to modify the terminal size
Prior to this fix, fish would attempt to resize the terminal via
TIOCSWINSZ, which was added as part of #3740. In practice this probably
never did anything useful since generally only the tty master can use
this. Remove the support and note it in the changelog.
2020-06-07 20:00:42 -07:00
Fabian Homborg
37e9a3067f CHANGELOG 2020-06-07 16:28:23 +02:00
Awal Garg
cb5eb72c6b Skip pre/post exec events for empty commands (#4829) 2020-06-06 16:31:33 -07:00
Fabian Homborg
a8d1eb83da CHANGELOG
[ci skip]
2020-06-04 18:29:31 +02:00
Fabian Homborg
1af1e7b69b CHANGELOG: Fix formatting 2020-06-02 17:39:36 +02:00
Fabian Homborg
4e16310940 Some more CHANGELOG 2020-06-01 15:51:45 +02:00
Fabian Homborg
4eb906c8d8 CHANGELOG Work towards 3.2
[ci skip]
2020-06-01 11:52:47 +02:00
ridiculousfish
a2ae2d6c36 Attempt to truncate prompts that are too wide
Prior to this change, if the user's prompt was wider than the terminal, we
would reduce it to just `> `. With this change, attempt to truncate the
prompt.

For each line of the prompt, calculate its width. If the width exceeds
COLUMNS, prepend ellipsis to that line, and start removing characters
until it fits. Escape sequences are skipped.

Fixes #904
2020-05-31 09:58:47 -07:00
Fabian Homborg
3518432531 CHANGELOG: Fix some rst conversion leftovers
Apparently pandoc likes using `~~~` for sections, but sphinx does not.
2020-05-30 10:07:21 +02:00
Fabian Homborg
e6f5c78d39 Convert Markdown files to RST
We use sphinx with rst for our documentation, and github supports rst
here, so it seems weird to have markdown just for these.

It also allows us e.g. to include the CHANGELOG in the docs without
requiring another build dependency.
2020-05-30 10:07:21 +02:00