Next | Query returned 62 messages, browsing 11 to 20 | Previous

History of commit frequency

CVS Commit History:


   2023-05-16 19:04:56 by Thomas Klausner | Files touched by this commit (2)
Log message:
fish: add upstream pull request URL in comment
   2023-05-16 18:54:50 by Thomas Klausner | Files touched by this commit (2)
Log message:
fish: fix build on NetBSD-current

fish uses symbols from libterminfo, so it needs to link against it.
   2023-05-10 01:23:37 by David A. Holland | Files touched by this commit (1)
Log message:
shells/fish: fix ncurses linkage, from Chavdar Ivanov and RVP in PR 57365

Only add -lterminfo when using base curses on NetBSD, not ncurses.
Also put it in LIBS, not LDFLAGS :-)

The previous behavior gives a bad build, but only with non-default
settings, so I'm not bumping the revision.

XXX: the magic to add -lterminfo probably belongs in curses.bl3.mk
   2023-03-29 11:39:02 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
fish: update to 3.6.1.

fish 3.6.1 (released March 25, 2022)
====================================

This release of fish contains a number of fixes for problems identified in fish \ 
3.6.1, as well as some enhancements.

Notable improvements and fixes
------------------------------
- ``abbr --erase`` now also erases the universal variables used by the old abbr \ 
function. That means::
    abbr --erase (abbr --list)

  can now be used to clean out all old abbreviations (:issue:`9468`).
- ``abbr --add --universal`` now warns about ``--universal`` being \ 
non-functional, to make it easier to detect old-style ``abbr`` calls \ 
(:issue:`9475`).

Deprecations and removed features
---------------------------------
- The Web-based configuration for abbreviations has been removed, as it was not \ 
functional with the changes abbreviations introduced in 3.6.0 (:issue:`9460`).

Scripting improvements
----------------------
- ``abbr --list`` no longer escapes the abbr name, which is necessary to be able \ 
to pass it to ``abbr --erase`` (:issue:`9470`).
- ``read`` will now print an error if told to set a read-only variable, instead \ 
of silently doing nothing (:issue:`9346`).
- ``set_color -v`` no longer crashes fish (:issue:`9640`).

Interactive improvements
------------------------
- Using ``fish_vi_key_bindings`` in combination with fish's ``--no-config`` mode \ 
works without locking up the shell (:issue:`9443`).
- The history pager now uses more screen space, usually half the screen \ 
(:issue:`9458`)
- Variables that were set while the locale was C (the default ASCII-only locale) \ 
will now properly be encoded if the locale is switched (:issue:`2613`, \ 
:issue:`9473`).
- Escape during history search restores the original command line again (fixing \ 
a regression in 3.6.0).
- Using ``--help`` on builtins now respects the ``$MANPAGER`` variable, in \ 
preference to ``$PAGER`` (:issue:`9488`).
- :kbd:`Control-G` closes the history pager, like other shells (:issue:`9484`).
- The documentation for the ``:``, ``[`` and ``.`` builtin commands can now be \ 
looked up with ``man`` (:issue:`9552`).
- fish no longer crashes when searching history for non-ASCII codepoints \ 
case-insensitively (:issue:`9628`).
- The :kbd:`Alt-S` binding will now also use ``please`` if available (:issue:`9635`).
- Themes that don't specify every color option can be installed correctly in the \ 
Web-based configuration (:issue:`9590`).
- Compatibility with Midnight Commander's prompt integration has been improved \ 
(:issue:`9540`).
- A spurious error, noted when using fish in Google Drive directories under WSL \ 
2, has been silenced (:issue:`9550`).
- Using ``read`` in ``fish_greeting`` or similar functions will not trigger an \ 
infinite loop (:issue:`9564`).
- Compatibility when upgrading from old versions of fish (before 3.4.0) has been \ 
improved (:issue:`9569`).

Improved prompts
^^^^^^^^^^^^^^^^
- The git prompt will compute the stash count to be used independently of the \ 
informative status (:issue:`9572`).

Completions
^^^^^^^^^^^
- Added completions for:
  - ``apkanalyzer`` (:issue:`9558`)
  - ``neovim`` (:issue:`9543`)
  - ``otool``
  - ``pre-commit`` (:issue:`9521`)
  - ``proxychains`` (:issue:`9486`)
  - ``scrypt`` (:issue:`9583`)
  - ``stow`` (:issue:`9571`)
  - ``trash`` and helper utilities ``trash-empty``, ``trash-list``, \ 
``trash-put``, ``trash-restore`` (:issue:`9560`)
  - ``ssh-copy-id`` (:issue:`9675`)
- Improvements to many completions, including the speed of completing \ 
directories in WSL 2 (:issue:`9574`).
- Completions using ``__fish_complete_suffix`` are now offered in the correct \ 
order, fixing a regression in 3.6.0 (:issue:`8924`).
- ``git`` completions for ``git-foo``-style commands was restored, fixing a \ 
regression in 3.6.0 (:issue:`9457`).
- File completion now offers ``../`` and ``./`` again, fixing a regression in \ 
3.6.0 (:issue:`9477`).
- The behaviour of completions using ``__fish_complete_path`` matches standard \ 
path completions (:issue:`9285`).

Other improvements
------------------
- Improvements and corrections to the documentation.

For distributors
----------------
- fish 3.6.1 builds correctly on Cygwin (:issue:`9502`).
   2023-01-24 19:36:36 by Thomas Klausner | Files touched by this commit (103)
Log message:
*: convert to cmake/build.mk
   2023-01-18 23:02:02 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
fish: update to 3.6.0.

fish 3.6.0 (released January 7, 2023)
=====================================

Notable improvements and fixes
------------------------------
- By default, :kbd:`Control-R` now opens the command history in the pager \ 
(:issue:`602`). This is fully searchable and syntax-highlighted, as an \ 
alternative to the incremental search seen in other shells. The new special \ 
input function ``history-pager`` has been added for custom bindings.
- Abbrevations are more flexible (:issue:`9313`, :issue:`5003`, :issue:`2287`):

  - They may optionally replace tokens anywhere on the command line, instead of \ 
only commands
  - Matching tokens may be described using a regular expression instead of a \ 
literal word
  - The replacement text may be produced by a fish function, instead of a \ 
literal word
  - They may position the cursor anywhere in the expansion, instead of at the end

  For example::

    function multicd
        echo cd (string repeat -n (math (string length -- $argv[1]) - 1) ../)
    end

    abbr --add dotdot --regex '^\.\.+$' --function multicd

  This expands ``..`` to ``cd ../``, ``...`` to ``cd ../../`` and ``....`` to \ 
``cd ../../../`` and so on.

  Or::

    function last_history_item; echo $history[1]; end
    abbr -a !! --position anywhere --function last_history_item

  which expands ``!!`` to the last history item, anywhere on the command line, \ 
mimicking other shells' history expansion.

  See :ref:`the documentation <cmd-abbr>` for more.
- ``path`` gained a new ``mtime`` subcommand to print the modification time \ 
stamp for files. For example, this can be used to handle cache file ages \ 
(:issue:`9057`)::

    > touch foo
    > sleep 10
    > path mtime --relative foo
    10

- ``string`` gained a new ``shorten`` subcommand to shorten strings to a given \ 
visible width (:issue:`9156`)::

    > string shorten --max 10 "Hello this is a long string"
    Hello thiā€¦

- ``test`` (aka ``[``) gained ``-ot`` (older than) and ``-nt`` (newer than) \ 
operators to compare file modification times, and ``-ef`` to compare whether the \ 
arguments are the same file (:issue:`3589`).
- fish will now mark the extent of many errors with a squiggly line, instead of \ 
just a caret (``^``) at the beginning (:issue:`9130`). For example::

    checks/set.fish (line 471): for: a,b: invalid variable name. See `help \ 
identifiers`
    for a,b in y 1 z 3
        ^~^
- A new function, ``fish_delta``, shows changes that have been made in fish's \ 
configuration from the defaults (:issue:`9255`).
- ``set --erase`` can now be used with multiple scopes at once, like ``set \ 
-efglU foo`` (:issue:`7711`, :issue:`9280`).
- ``status`` gained a new subcommand, ``current-commandline``, which retrieves \ 
the entirety of the currently-executing command line when called from a function \ 
during execution. This allows easier job introspection (:issue:`8905`, \ 
:issue:`9296`).

Deprecations and removed features
---------------------------------
- The ``\x`` and ``\X`` escape syntax is now equivalent. ``\xAB`` previously \ 
behaved the same as ``\XAB``, except that it would error if the value \ 
"AB" was larger than "7f" (127 in decimal, the highest ASCII \ 
value) (:issue:`9247`, :issue:`9245`, :issue:`1352`).
- The ``fish_git_prompt`` will now only turn on features if the appropriate \ 
variable has been set to a true value (of "1", "yes" or \ 
"true") instead of just checking if it is defined. This allows \ 
specifically turning features *off* without having to erase variables, such as \ 
via universal variables. If you have defined a variable to a different value and \ 
expect it to count as true, you need to change it (:issue:`9274`).
  For example, ``set -g __fish_git_prompt_show_informative_status 0`` previously \ 
would have enabled informative status (because any value would have done so), \ 
but now it turns it off.
- Abbreviations are no longer stored in universal variables. Existing universal \ 
abbreviations are still imported, but new abbreviations should be added to \ 
``config.fish``.
- The short option ``-r`` for abbreviations has changed from ``rename`` to \ 
``regex``, for consistency with ``string``.

Scripting improvements
----------------------
- ``argparse`` can now be used without option specifications, to allow using \ 
``--min-args``, ``--max-args`` or for commands that take no options (but might \ 
in future) (:issue:`9006`)::

    function my_copy
        argparse --min-args 2 -- $argv
        or return

        cp $argv
    end

- ``set --show`` now shows when a variable was inherited from fish's parent \ 
process, which should help with debugging (:issue:`9029`)::

    > set --show XDG_DATA_DIRS
    $XDG_DATA_DIRS: set in global scope, exported, a path variable with 4 elements
    $XDG_DATA_DIRS[1]: |/home/alfa/.local/share/flatpak/exports/share|
    $XDG_DATA_DIRS[2]: |/var/lib/flatpak/exports/share|
    $XDG_DATA_DIRS[3]: |/usr/local/share|
    $XDG_DATA_DIRS[4]: |/usr/share|
    $XDG_DATA_DIRS: originally inherited as \ 
|/home/alfa/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/u \ 
sr/local/share/:/usr/share/|

- The read limit is now restored to the default when :envvar:`fish_read_limit` \ 
is unset (:issue:`9129`).
- ``math`` produces an error for division-by-zero, as well as augmenting some \ 
errors with their extent (:issue:`9190`). This changes behavior in some limited \ 
cases, such as::

    math min 1 / 0, 5

  which would previously print "5" (because in floating point division \ 
"1 / 0" yields infinite, and 5 is smaller than infinite) but will now \ 
return an error.
- ``fish_clipboard_copy`` and ``fish_clipboard_paste`` can now be used in pipes \ 
(:issue:`9271`)::

    git rev-list 3.5.1 | fish_clipboard_copy

    fish_clipboard_paste | string join + | math

- ``status fish-path`` returns a fully-normalised path, particularly noticeable \ 
on NetBSD (:issue:`9085`).

Interactive improvements
------------------------
- If the terminal definition for :envvar:`TERM` can't be found, fish now tries \ 
using the "xterm-256color" and "xterm" definitions before \ 
"ansi" and "dumb". As the majority of terminal emulators in \ 
common use are now more or less xterm-compatible (often even explicitly claiming \ 
the xterm-256color entry), this should often result in a fully or almost fully \ 
usable terminal (:issue:`9026`).
- A new variable, :envvar:`fish_cursor_selection_mode`, can be used to configure \ 
whether the command line selection includes the character under the cursor \ 
(``inclusive``) or not (``exclusive``). The new default is ``exclusive``; use \ 
``set fish_cursor_selection_mode inclusive`` to get the previous behavior back \ 
(:issue:`7762`).
- fish's completion pager now fills half the terminal on first tab press instead \ 
of only 4 rows, which should make results visible more often and save key \ 
presses, without constantly snapping fish to the top of the terminal \ 
(:issue:`9105`, :issue:`2698`).
- The ``complete-and-search`` binding, used with :kbd:`Shift-Tab` by default, \ 
selects the first item in the results immediately (:issue:`9080`).
- ``bind`` output is now syntax-highlighted when used interacively.
- :kbd:`Alt-H` (the default ``__fish_man_page`` binding) does a better job of \ 
showing the manual page of the command under cursor (:issue:`9020`).
- If :envvar:`fish_color_valid_path` contains an actual color instead of just \ 
modifiers, those will be used for valid paths even if the underlying color isn't \ 
"normal" (:issue:`9159`).
- The key combination for the QUIT terminal sequence, often \ 
:kbd:`Control-Backslash` (``\x1c``), can now be sused as a binding \ 
(:issue:`9234`).
- fish's vi mode uses normal xterm-style sequences to signal cursor change, \ 
instead of using the iTerm's proprietary escape sequences. This allows for a \ 
blinking cursor and makes it work in complicated scenarios with nested \ 
terminals. (:issue:`3741`, :issue:`9172`)
- When running fish on a remote system (such as inside SSH or a container), \ 
:kbd:`Control-X` now copies to the local client system's clipboard if the \ 
terminal supports OSC 52.
- ``commandline`` gained two new options, ``--selection-start`` and \ 
``--selection-end``, to set the start/end of the current selection \ 
(:issue:`9197`, :issue:`9215`).
- fish's builtins now handle keyboard interrupts (:kbd:`Control-C`) correctly \ 
(:issue:`9266`).

Completions
^^^^^^^^^^^
- Added completions for:

  - ``ark``
  - ``asciinema`` (:issue:`9257`)
  - ``clojure`` (:issue:`9272`)
  - ``csh``
  - ``direnv`` (:issue:`9268`)
  - ``dive`` (:issue:`9082`)
  - ``dolphin``
  - ``dua`` (:issue:`9277`)
  - ``efivar`` (:issue:`9318`)
  - ``eg``
  - ``es`` (:issue:`9388`)
  - ``firefox-developer-edition`` and ``firefox`` (:issue:`9090`)
  - ``fortune`` (:issue:`9177`)
  - ``kb``
  - ``kind`` (:issue:`9110`)
  - ``konsole``
  - ``ksh``
  - ``loadkeys`` (:issue:`9312`)
  - ``okular``
  - ``op`` (:issue:`9300`)
  - ``ouch`` (:issue:`9405`)
  - ``pix``
  - ``readelf`` (:issue:`8746`, :issue:`9386`)
  - ``qshell``
  - ``rc``
  - ``sad`` (:issue:`9145`)
  - ``tcsh``
  - ``toot``
  - ``tox`` (:issue:`9078`)
  - ``wish``
  - ``xed``
  - ``xonsh`` (:issue:`9389`)
  - ``xplayer``
  - ``xreader``
  - ``xviewer``
  - ``yash`` (:issue:`9391`)
  - ``zig`` (:issue:`9083`)

- Improvements to many completions, including making ``cd`` completion much \ 
faster (:issue:`9220`).
- Completion of tilde (``~``) works properly even when the file name contains an \ 
escaped character (:issue:`9073`).
- fish no longer loads completions if the command is used via a relative path \ 
and is not in :envvar:`PATH` (:issue:`9133`).
- fish no longer completes inside of comments (:issue:`9320`).

Improved terminal support
^^^^^^^^^^^^^^^^^^^^^^^^^
- Opening ``help`` on WSL now uses PowerShell to open the browser if available, \ 
removing some awkward UNC path errors (:issue:`9119`).

Other improvements
------------------
- The Web-based configuration tool now works on systems with IPv6 disabled \ 
(:issue:`3857`).
- Aliases can ignore arguments by ending them with ``#`` (:issue:`9199`).
-  ``string`` is now faster when reading large strings from stdin (:issue:`9139`).
- ``string repeat`` uses less memory and is faster. (:issue:`9124`)
- Builtins are much faster when writing to a pipe or file. (:issue:`9229`).
- Performance improvements to highlighting (:issue:`9180`) should make using \ 
fish more pleasant on slow systems.
- On 32-bit systems, globs like ``*`` will no longer fail to return some files, \ 
as large file support has been enabled.

Fixed bugs
----------
- The history search text for a token search is now highlighted correctly if the \ 
line contains multiple instances of that text (:issue:`9066`).
- ``process-exit`` and ``job-exit`` events are now generated for all background \ 
jobs, including those launched from event handlers (:issue:`9096`).
- A crash when completing a token that contained both a potential glob and a \ 
quoted variable expansion was fixed (:issue:`9137`).
- ``prompt_pwd`` no longer accidentally overwrites a global or universal \ 
``$fish_prompt_pwd_full_dirs`` when called with the ``-d`` or \ 
``--full-length-dirs`` option (:issue:`9123`).
- A bug which caused fish to freeze or exit after running a command which does \ 
not preserve the foreground process group was fixed (:issue:`9181`).
- The "Disco" sample prompt no longer prints an error in some working \ 
directories (:issue:`9164`). If you saved this prompt, you should run \ 
``fish_config prompt save disco`` again.
- fish launches external commands via the given path again, rather than always \ 
using an absolute path. This behaviour was inadvertently changed in 3.5.0 and is \ 
visible, for example, when launching a bash script which checks ``$0`` \ 
(:issue:`9143`).
- ``printf`` no longer tries to interpret the first argument as an option \ 
(:issue:`9132`).
- Interactive ``read`` in scripts will now have the correct keybindings again \ 
(:issue:`9227`).
- A possible stack overflow when recursively evaluating substitutions has been \ 
fixed (:issue:`9302`).
- A crash with relative $CDPATH has been fixed (:issue:`9407`).
- ``printf`` now properly fills extra ``%d`` specifiers with 0 even on macOS and \ 
BSD (:issue:`9321`).
- ``fish_key_reader`` now correctly exits when receiving a SIGHUP (like after \ 
closing the terminal) (:issue:`9309`).
- ``fish_config theme save`` now works as documented instead of erroring out \ 
(:issue:`9088`, :issue:`9273`).
- fish no longer triggers prompts to install command line tools when first run \ 
on macOS (:issue:`9343`).
- ``fish_git_prompt`` now quietly fails on macOS if the xcrun cache is not yet \ 
populated (:issue:`6625`), working around a potential hang.

For distributors
----------------
- The vendored PCRE2 sources have been removed. It is recommended to declare \ 
PCRE2 as a dependency when packaging fish. If the CMake variable \ 
FISH_USE_SYSTEM_PCRE2 is false, fish will now download and build PCRE2 from the \ 
official repo (:issue:`8355`, :issue:`8363`). Note this variable defaults to \ 
true if PCRE2 is found installed on the system.
   2023-01-04 08:42:05 by Thomas Klausner | Files touched by this commit (1)
Log message:
fish: link against terminfo

For now, only on NetBSD - probably needed on all platforms?

Needed by binutils 2.39.
   2022-08-22 21:15:17 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
fish: update to 3.5.1.

fish 3.5.1 (released July 20, 2022)
===================================

This release of fish introduces the following small enhancements:

- Cursor shaping for Vi mode is enabled by default in tmux, and will be used if \ 
the outer terminal is capable (:issue:`8981`).
- ``printf`` returns a better error when used with arguments interpreted as \ 
octal numbers (:issue:`9035`).
- ``history merge`` when in private mode is now an error, rather than wiping out \ 
other sessions' history (:issue:`9050`).
- The error message when launching a command that is built for the wrong \ 
architecture on macOS is more helpful (:issue:`9052`).
- Added completions for:

  - ``choose`` (:issue:`9065`)
  - ``expect`` (:issue:`9060`)
  - ``navi`` (:issue:`9064`)
  - ``qdbus`` (:issue:`9031`)
  - ``reflector`` (:issue:`9027`)

- Improvements to some completions.

This release also fixes a number of problems identified in fish 3.5.0.

- Completing ``git blame`` or ``git -C`` works correctly (:issue:`9053`).
- On terminals that emit a ``CSI u`` sequence for :kbd:`Shift-Space`, fish \ 
inserts a space instead of printing an error. (:issue:`9054`).
- ``status fish-path`` on Linux-based platforms could print the path with a \ 
" (deleted)" suffix (such as ``/usr/bin/fish (deleted)``), which is \ 
now removed (:issue:`9019`).
- Cancelling an initial command (from fish's ``--init-command`` option) with \ 
:kbd:`Control-C` no longer prevents configuration scripts from running \ 
(:issue:`9024`).
- The job summary contained extra blank lines if the prompt used multiple lines, \ 
which is now fixed (:issue:`9044`).
- Using special input functions in bindings, in combination with ``and``/``or`` \ 
conditionals, no longer crashes (:issue:`9051`).
   2022-08-18 20:11:51 by Thomas Klausner | Files touched by this commit (4) | Package updated
Log message:
fish: update to 3.5.0.

fish 3.5.0 (released June 16, 2022)
===================================

Notable improvements and fixes
------------------------------
- A new ``path`` builtin command to filter and transform paths (:issue:`7659`, \ 
:issue:`8958`). For example, to list all the separate extensions used on files \ 
in /usr/share/man (after removing one extension, commonly a ".gz")::

    path filter -f /usr/share/man/** | path change-extension '' | path extension \ 
| path sort -u
- Tab (or any key bound to ``complete``) now expands wildcards instead of \ 
invoking completions, if there is a wildcard in the path component under the \ 
cursor (:issue:`954`, :issue:`8593`).
- Scripts can now catch and handle the SIGINT and SIGTERM signals, either via \ 
``function --on-signal`` or with ``trap`` (:issue:`6649`).

Deprecations and removed features
---------------------------------
- The ``stderr-nocaret`` feature flag, introduced in fish 3.0 and enabled by \ 
default in fish 3.1, has been made read-only.
  That means it is no longer possible to disable it, and code supporting the \ 
``^`` redirection has been removed (:issue:`8857`, :issue:`8865`).

  To recap: fish used to support ``^`` to redirect stderr, so you could use \ 
commands like::

    test "$foo" -gt 8 ^/dev/null

  to ignore error messages. This made the ``^`` symbol require escaping and \ 
quoting, and was a bit of a weird shortcut considering ``2>`` already worked, \ 
which is only one character longer.

  So the above can simply become::

    test "$foo" -gt 8 2>/dev/null

- The following feature flags have been enabled by default:

  - ``regex-easyesc``, which makes ``string replace -r`` not do a superfluous \ 
round of unescaping in the replacement expression.
    That means e.g. to escape any "a" or "b" in an argument \ 
you can use ``string replace -ra '([ab])' '\\\\$1' foobar`` instead of needing 8 \ 
backslashes.

    This only affects the *replacement* expression, not the *match* expression \ 
(the ``'([ab])'`` part in the example).
    A survey of plugins on GitHub did not turn up any affected code, so we do \ 
not expect this to affect many users.

    This flag was introduced in fish 3.1.
  - ``ampersand-nobg-in-token``, which means that ``&`` will not create a \ 
background job if it occurs in the middle of a word. For example, ``echo \ 
foo&bar`` will print "foo&bar" instead of running ``echo foo`` \ 
in the background and then starting ``bar`` as a second job.

    Reformatting with ``fish_indent`` would already introduce spaces, turning \ 
``echo foo&bar`` into ``echo foo & bar``.

    This flag was introduced in fish 3.4.

  To turn off these flags, add ``no-regex-easyesc`` or \ 
``no-ampersand-nobg-in-token`` to :envvar:`fish_features`` and restart fish::

    set -Ua fish_features no-regex-easyesc

  Like ``stderr-nocaret``, they will eventually be made read-only.
- Most ``string`` subcommands no longer append a newline to their input if the \ 
input didn't have one (:issue:`8473`, :issue:`3847`)
- Fish's escape sequence removal (like for ``string length --visible`` or to \ 
figure out how wide the prompt is) no longer has special support for \ 
non-standard color sequences like from Data General terminals, e.g. the Data \ 
General Dasher D220 from 1984. This removes a bunch of work in the common case, \ 
allowing ``string length --visible`` to be much faster with unknown escape \ 
sequences. We don't expect anyone to have ever used fish with such a terminal \ 
(:issue:`8769`).
- Code to upgrade universal variables from fish before 3.0 has been removed. \ 
Users who upgrade directly from fish versions 2.7.1 or before will have to set \ 
their universal variables & abbreviations again. (:issue:`8781`)
- The meaning of an empty color variable has changed (:issue:`8793`). \ 
Previously, when a variable was set but empty, it would be interpreted as the \ 
"normal" color. Now, empty color variables cause the same effect as \ 
unset variables - the general highlighting variable for that type is used \ 
instead. For example::

    set -g fish_color_command blue
    set -g fish_color_keyword

  would previously make keywords "normal" (usually white in a dark \ 
terminal). Now it'll make them blue. To achieve the previous behavior, use the \ 
normal color explicitly: ``set -g fish_color_keyword normal``.

  This makes it easier to make self-contained color schemes that don't \ 
accidentally use color that was set before.
  ``fish_config`` has been adjusted to set known color variables that a theme \ 
doesn't explicitly set to empty.
- ``eval`` is now a reserved keyword, so it can't be used as a function name. \ 
This follows ``set`` and ``read``, and is necessary because it can't be cleanly \ 
shadowed by a function - at the very least ``eval set -l argv foo`` breaks. Fish \ 
will ignore autoload files for it, so left over ``eval.fish`` from previous fish \ 
versions won't be loaded.
- The git prompt in informative mode now defaults to skipping counting untracked \ 
files, as this was extremely slow. To turn it on, set \ 
:envvar:`__fish_git_prompt_showuntrackedfiles` or set the git config value \ 
"bash.showuntrackedfiles" to ``true`` explicitly (which can be done \ 
for individual repositories). The "informative+vcs" sample prompt \ 
already skipped display of untracked files, but didn't do so in a way that \ 
skipped the computation, so it should be quite a bit faster in many cases \ 
(:issue:`8980`).
- The ``__terlar_git_prompt`` function, used by the "Terlar" sample \ 
prompt, has been rebuilt as a configuration of the normal ``fish_git_prompt`` to \ 
ease maintenance, improve performance and add features (like reading per-repo \ 
git configuration). Some slight changes remain; users who absolutely must have \ 
the same behavior are encouraged to copy the old function (:issue:`9011`, \ 
:issue:`7918`, :issue:`8979`).

Scripting improvements
----------------------
- Quoted command substitution that directly follow a variable expansion (like \ 
``echo "$var$(echo x)"``) no longer affect the variable expansion \ 
(:issue:`8849`).
- Fish now correctly expands command substitutions that are preceded by an \ 
escaped dollar (like ``echo \$(echo)``). This regressed in version 3.4.0.
- ``math`` can now handle underscores (``_``) as visual separators in numbers \ 
(:issue:`8611`, :issue:`8496`)::

    math 5 + 2_123_252

- ``math``'s ``min`` and ``max`` functions now take a variable number of \ 
arguments instead of always requiring 2 (:issue:`8644`, :issue:`8646`)::

    > math min 8,2,4
    2

- ``read`` is now faster as the last process in a pipeline (:issue:`8552`).
- ``string join`` gained a new ``--no-empty`` flag to skip empty arguments \ 
(:issue:`8774`, :issue:`8351`).
- ``read`` now only triggers the ``fish_read`` event, not the ``fish_prompt`` \ 
event (:issue:`8797`). It was supposed to work this way in fish 3.2.0 and later, \ 
but both events were emitted.
- The TTY modes are no longer restored when non-interactive shells exit. This \ 
fixes wrong tty modes in pipelines with interactive commands. (:issue:`8705`).
- Some functions shipped with fish printed error messages to standard output, \ 
but they now they rightly go to standard error (:issue:`8855`).
- ``jobs`` now correctly reports CPU usage as a percentage, instead of as a \ 
number of clock ticks (:issue:`8919`).
- ``process-exit`` events now fire when the process exits even if the job has \ 
not yet exited, fixing a regression in 3.4.1 (:issue:`8914`).

Interactive improvements
------------------------
- Fish now reports a special error if a command wasn't found and there is a \ 
non-executable file by that name in :envvar:`PATH` (:issue:`8804`).
- ``less`` and other interactive commands would occasionally be stopped when run \ 
in a pipeline with fish functions; this has been fixed (:issue:`8699`).
- Case-changing autosuggestions generated mid-token now correctly append only \ 
the suffix, instead of duplicating the token (:issue:`8820`).
- ``ulimit`` learned a number of new options for the resource limits available \ 
on Linux, FreeBSD ande NetBSD, and returns a specific warning if the limit \ 
specified is not available on the active operating system (:issue:`8823`, \ 
:issue:`8786`).
- The ``vared`` command can now successfully edit variables named \ 
"tmp" or "prompt" (:issue:`8836`, :issue:`8837`).
- ``time`` now emits an error if used after the first command in a pipeline \ 
(:issue:`8841`).
- ``fish_add_path`` now prints a message for skipped non-existent paths when \ 
using the ``-v`` flag (:issue:`8884`).
- Since fish 3.2.0, pressing :kbd:`Control-D` while a command is running would \ 
end up inserting a space into the next commandline, which has been fixed \ 
(:issue:`8871`).
- A bug that caused multi-line prompts to be moved down a line when pasting or \ 
switching modes has been fixed (:issue:`3481`).
- The Web-based configuration system no longer strips too many quotes in the \ 
abbreviation display (:issue:`8917`, :issue:`8918`).
- Fish started with ``--no-config`` will now use the default keybindings \ 
(:issue:`8493`)
- When fish inherits a :envvar:`USER` environment variable value that doesn't \ 
correspond to the current effective user ID, it will now correct it in all cases \ 
(:issue:`8879`, :issue:`8583`).
- Fish sets a new :envvar:`EUID`` variable containing the current effective user \ 
id (:issue:`8866`).
- ``history search`` no longer interprets the search term as an option \ 
(:issue:`8853`)
- The status message when a job terminates should no longer be erased by a \ 
multiline prompt (:issue:`8817`)

New or improved bindings
^^^^^^^^^^^^^^^^^^^^^^^^
- The :kbd:`Alt-S` binding will now insert ``doas`` instead of ``sudo`` if \ 
necessary (:issue:`8942`).
- The ``kill-whole-line`` special input function now kills the newline \ 
preceeding the last line. This makes ``dd`` in vi-mode clear the last line \ 
properly.
- The new ``kill-inner-line`` special input function kills the line without any \ 
newlines, allowing ``cc`` in vi-mode to clear the line while preserving newlines \ 
(:issue:`8983`).
- On terminals that emit special sequences for these combinations, \ 
:kbd:`Shift-Space` is bound like :kbd:`Space`, and :kbd:`Ctrl-Return` is bound \ 
like :kbd:`Return` (:issue:`8874`).

Improved prompts
^^^^^^^^^^^^^^^^
- A new ``Astronaut`` prompt (:issue:`8775`), a multi-line prompt using plain \ 
text reminiscent of the Starship.rs prompt.

Completions
^^^^^^^^^^^
- Added completions for:

  - ``archlinux-java`` (:issue:`8911`)
  - ``apk`` (:issue:`8951`)
  - ``brightnessctl`` (:issue:`8758`)
  - ``efibootmgr`` (:issue:`9010`)
  - ``fastboot`` (:issue:`8904`)
  - ``optimus-manager`` (:issue:`8913`)
  - ``rclone`` (:issue:`8819`)
  - ``sops`` (:issue:`8821`)
  - ``tuned-adm`` (:issue:`8760`)
  - ``wg-quick`` (:issue:`8687`)

- ``complete`` can now be given multiple ``--condition`` options. They will be \ 
attempted in the order they were given, and only if all succeed will the \ 
completion be made available (as if they were connected with ``&&``). \ 
This helps with caching - fish's complete system stores the return value of each \ 
condition as long as the commandline doesn't change, so this can reduce the \ 
number of conditions that need to be evaluated (:issue:`8536`, :issue:`8967`).

Improved terminal support
^^^^^^^^^^^^^^^^^^^^^^^^^
- Working directory reporting is enabled for kitty (:issue:`8806`).
- Changing the cursor shape is now enabled by default in iTerm2 (:issue:`3696`).

For distributors
----------------
- libatomic is now correctly detected as necessary when building on RISC-V \ 
(:issue:`8850`, :issue:`8851`).
- In some cases, the build process found the wrong libintl on macOS. This has \ 
been corrected (:issue:`5244`).
- The paths for completions, functions, and configuration snippets now include
  subdirectories ``fish/vendor_completions.d``, ``fish/vendor_functions.d``, and
  ``fish/vendor_conf.d`` (respectively) within ``XDG_DATA_HOME`` (or \ 
``~/.local/share``
  if not defined) (:issue:`8887`, :issue:`7816`).
   2022-08-09 14:08:36 by Jonathan Perkin | Files touched by this commit (72)
Log message:
*: Remove hardcoded -liconv / -lintl on SunOS.

This is now handled centrally via OPSYS_EXPLICIT_LIBDEPS support in libiconv
and gettext-lib.

Next | Query returned 62 messages, browsing 11 to 20 | Previous