Path to this page:
./
shells/yash,
POSIX-compliant command line shell
Branch: CURRENT,
Version: 2.58.1,
Package name: yash-2.58.1,
Maintainer: vinsYash, yet another shell, is a POSIX-compliant command line shell written
in C99 (ISO/IEC 9899:1999). Yash is intended to be the most POSIX -
compliant shell in the world while supporting features for daily
interactive and scripting use. Notable features are:
- Global aliases
- Arrays
- Socket redirection, pipeline redirection, and process redirection
- Brace expansion and extended globbing
- Fractional numbers in arithmetic expansion
- Prompt command and command-not-found handler
- Command line completion with predefined completion scripts for more
than 100 commands
- Command line prediction based on command history
Master sites:
Filesize: 766.422 KB
Version history: (Expand)
- (2025-02-13) Updated to version: yash-2.58.1
- (2024-08-22) Updated to version: yash-2.57
- (2024-06-09) Updated to version: yash-2.56.1
- (2023-08-25) Updated to version: yash-2.55nb1
- (2023-08-25) Updated to version: yash-2.55
- (2023-03-02) Updated to version: yash-2.54
CVS history: (Expand)
2025-02-13 14:45:20 by Paolo Vincenzo Olivo | Files touched by this commit (3) |  |
Log message:
shells/yash: update to 2.58.1
# upstream changes (since 2.57)
2.58.1
* tests/job-y.tst: Account for root PS1. by @pghvlaans in #106
Fixed a test case in tests/job-y.tst that was failing when run as root.
* Update NEWS & THANKS for fzy completion by @magicant in #107
Version 2.58 added completion for fzy, but the NEWS file did not mention it.
This has been fixed.
* Redefine Actions workflow by @magicant in #108
* share/initialization/common: create HISTFILE directory automatically
by @unrealapex in #109
Version 2.58 changed the default $HISTFILE location to
${XDG_STATE_HOME}/yash/history, but the initialization script was not
making the containing directory. This was causing the shell to fail to save
the history file. The initialization script now creates the directory if it
does not exist.
2.58
* The location of the initialization files can now be configured
using the XDG_CONFIG_HOME variable (except in POSIXly-correct
mode).
* [line-editing] Command line prediction now works in the vi command
mode.
* [line-editing] Added completion for fzy and git-restore.
* [line-editing] Added completion for git-merge's --continue option.
* [line-editing] The completion for the . built-in now suggests
directory names for the first operand even before the user enters
a slash.
* Improved POSIX.1-2024 support:
- Case command items now can be terminated by ;& instead of ;;
to force the shell to execute the next item.
The non-standard terminators ;| and ;;& are also supported
to resume pattern matching with the next item unless in the
POSIXly-correct mode.
- Dollar-single-quotes are now supported.
- Declaration utility semantics is now supported. Assignment-like
arguments to the export, local, readonly, and typeset
- built-ins are now expanded in the same way as assignments are
expanded.
- The printf built-in now supports position specifiers in format
strings as in printf '%2$s %1$s\n' foo bar.
- The cd and pushd built-ins now support the -e option, which
can be used to see if the $PWD variable is successfully updated.
- The exit status of the getopts built-in is now 2 on any error.
- After the bg built-in resumed a job, the ! special parameter
expands to the process ID of the job.
- An interactive shell no longer exits on an error in the exec
built-in, even if the POSIXly-correct mode is on.
- The shell's syntax now always allows esac as the first pattern
of a case branch as in case esac in (esac|case) echo ok; esac.
Previously, it was a syntax error in the POSIXly-correct mode.
* The exit statuses returned from the cd, pushd, and popd
built-ins have been updated to make it easier to distinguish the
reasons for failure.
* Fixed a potential crash caused by an expansion error in nested
parameter expansion.
* Updated the sample initialization script (yashrc):
The default $HISTFILE is now set to
${XDG_STATE_HOME}/yash/history unless ${HOME}/.yash_history
exists, in which case the latter is used and a warning is
printed. To suppress the warning and keep using the previous
location, you can set the $HISTFILE variable before the sample
initialization script is sourced.
Added aliases h='fc -l' and j='jobs'.
Added the wrapper function for doas in an attempt to remove the
misleadin
|
2024-08-22 20:02:29 by Paolo Vincenzo Olivo | Files touched by this commit (2) |  |
Log message:
shells/yash: update to 2.57
# Noteworthy changes
* Added support for the "$POST_PROMPT_COMMAND" variable, whose value
is executed after reading a command line in the interactive shell.
* If the shell exits because of a shell error during the EXIT trap,
the shell now returns the exit status of the error rather than that
of the last command before the EXIT trap.
* [line-editing] Fixed the spurious error message printed when
completing after git config alias. with the nounset shell option
enabled.
* [line-editing] Completion no longer inserts a redundant backslash
to escape a character included in the completed word
when the cursor follows another backslash.
Updated the sample initialization script (yashrc):
* Added setup for VS Code shell integration.
|
2024-06-09 09:44:54 by Paolo Vincenzo Olivo | Files touched by this commit (3) |  |
Log message:
shells/yash: update to 2.56.1
# changes
* Codebase moved from OSDN to github.
* The shell can now open more file descriptors on Cygwin.
* Fixed the bug where the "typeset -fp" built-in prints parameter
expansions of the form ${foo:/bar/baz} with a redundant # flag like
${foo:/#bar/baz}.
* Fixed the bug where the emacs-capitalize-word line-editing command
misbehaves and possibly crashes the shell if there is no word following
the cursor to be capitalized.
* Added the emacs-search-forward-current and emacs-search-backward-current
line-editing commands. (by @vext01 in #37)
* [line-editing] Added the completion script for doas. (by @DanisDGK in #45)
|
2023-08-26 21:05:31 by Paolo Vincenzo Olivo | Files touched by this commit (3) |
Log message:
shells/yash: do not require asciidoc
Fixes broken build.
|
2023-08-25 18:16:08 by Paolo Vincenzo Olivo | Files touched by this commit (1) |
Log message:
yash: add missing USE_PKGLOCALEDIR.
|
2023-08-25 17:52:52 by Paolo Vincenzo Olivo | Files touched by this commit (1) |
Log message:
yash: use FORCE_C_STD instead of CFLAGS.
|
2023-08-24 23:37:56 by Paolo Vincenzo Olivo | Files touched by this commit (4) |  |
Log message:
shells/yash: update to yash-2.55
# Changes
Yash 2.55 (2023-08-20)
+ [line-editing] The Enter/Send key ("\et") now has a default
binding to the command the Ctrl-M key ("\^M") is bound to in each
mode.
= [line-editing] The redraw-all and clear-and-redraw-all commands
now can be used with an argument to swap their behavior.
* Fixed mistranslation in the Japanese language support.
. Updated the sample initialization script (yashrc):
+ Code example for binding Ctrl-L to clear-and-redraw-all.
. Updated completion scripts:
+ Completion for git-switch and pass
|
2023-03-02 10:01:12 by Paolo Vincenzo Olivo | Files touched by this commit (2) |  |
Log message:
shells/yash update to 2.54.
# CHANGES
Yash 2.54 (2023-02-25)
+ Changing font style of command line predictions with $PS1P, etc.
+ The '--le-trim-right' option.
= When the POSIXly-correct mode is active, the shell now refuses to
execute built-ins POSIX XCU 2.9.1 lists as utilities that cause
unspecified results. To implement the new behavior, the previous
"semi-special" built-ins are now categorized in either of the new
categories "mandatory" and "elective". The \
"command" and "type"
built-ins now report the new categories of such built-ins.
= The shell now requires a corresponding external executable to
exist in $PATH when running a built-in that works like a standard
external utility even when the POSIXly-correct mode is inactive.
Such built-ins are now categorized as "substitutive" built-ins.
= The "array" built-in is now completely ignored in the POSIXly-
correct mode. The built-in, formerly a regular built-in, is now
categorized as an "extension" built-in.
= The xtrace option is now ignored while expanding the $PS4
variable to prevent possible infinite recursion.
* The allexport option was wrongly ignored in many assignment
contexts.
* The errexit and errreturn options now work for assignment error
in a for loop.
* The ">" redirection with the noclobber option no longer hangs
when the operand names a symbolic link to a non-existing file.
* The exported value of the $DIRSTACK variable was not being
updated correctly in the "pushd" and "popd" built-ins.
* The effect of "!" no longer applies to the exit status of the
"break", "continue", and "return" built-ins.
* An alias value ending with a blank followed by a line
continuation no longer subjects the next token to alias
substitution.
. Updated the sample initialization script (yashrc):
+ The "o" alias for WSL
|