summary refs log tree commit diff
path: root/bin/dash (follow)
Commit message (Collapse)AuthorAge
* Update dash generated autoconf filesJune McEnroe2022-01-04
| | | | Hate this.
* Call CHECK_DECL on stat64Herbert Xu2022-01-02
| | | | | | | | | On macOS it is possible to find stat64 at link-time but not at compile-time. To make the build process more robust we should check for the header file as well as the library. Reported-by: Saagar Jha <saagar@saagarjha.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* Just zero mailsize on changemailJune McEnroe2021-10-02
| | | | | So that on start (and any time MAIL/MAILPATH change), any non-empty mailboxes will be reported.
* Fix chkmail loop break conditionJune McEnroe2021-10-02
| | | | | padvance_magic() returns -1 when there are no more paths left, not zero.
* Check sizes of mailboxes, not timesJune McEnroe2021-10-02
| | | | | | This fixes "you have mail" showing right after checking and deleting mail, resulting in a modified but empty mailbox. Also somehow fixes "you have mail" always showing 3(!) times.
* Update dash autoconf/automake filesJune McEnroe2021-09-27
| | | | No idea why it made me do this...
* Merge dash v0.5.11.4June McEnroe2021-06-20
|
* Check in dash autogen files for realJune McEnroe2021-04-25
|
* Copy automake filesJune McEnroe2021-04-25
|
* Revert "Check in dash autogen files"June McEnroe2021-04-25
| | | | | | This reverts commit d7c361a6cb66a919b19648a8780423a0c73e1a59. Well apparently this just created symlinks to system files. Stupid.
* Check in dash autogen filesJune McEnroe2021-04-04
| | | | So that I don't need to install autoconf/automake to build it.
* Warn twice about stopped jobsJune McEnroe2021-02-04
| | | | | | Not really sure why this previously set job_warning to 2 rather than 1. Anyway I often just press ^D again after the warning without really thinking, so do it twice.
* Set H_SETUNIQUEJune McEnroe2020-12-28
|
* Fix dash Makefile compatibility with BSD makeJune McEnroe2020-12-23
|
* Fix multi-line prompts when right prompts are usedJune McEnroe2020-12-23
| | | | | | editline does not render a multi-line PS1 correctly when RPS1 is also set. To work around this, return only the last line of the cached prompt to editline, and print the leading lines separately inside setprompt.
* Add RPS1 and RPS2 right prompt variablesJune McEnroe2020-12-23
|
* Cache the expanded prompt for editlineJune McEnroe2020-12-23
| | | | | | | | | | | | | | | | | | | Previously, the prompt would be expanded every time editline called the getprompt callback. I think the code may have been written assuming that editline only calls getprompt once per prompt, but it may actually call it many times, for instance every time you type backspace. This results not only in slower editing from expanding complex prompts repeatedly, it also consumes more and more stack memory each time getprompt is called. This can be seen by setting PS1 to some command substitution, typing many characters at the prompt, then holding backspace and observing memory usage. Thankfully all this stack memory is freed between prompts by the stackmark calls around el_gets. This change causes prompt expansion to always happen in the setprompt call, as it would when editline is disabled, and a cached copy of the prompt is saved for getprompt to return every time editline calls it. Since getprompt is no longer doing expansion, the stackmark calls surrounding el_gets can be removed.
* Bind libedit's secret filename completion functionJune McEnroe2020-12-22
| | | | | | | | | | Check if the FreeBSD (and by extension macOS) _el_fn_sh_complete version of the function exists, which does shell escaping of completed filenames before _el_fn_complete learned to. Tab is bound after calling el_set() and el_source() since the default bindings set tab to something else, and it should always be filename completion in the shell.
* Build with libedit by defaultJune McEnroe2020-12-22
|
* Fail if building --with-libedit and can't find libeditJune McEnroe2020-12-22
| | | | | Previously, configure --with-libedit would only fail in the case where libedit is available but its header file histedit.h is not.
* Merge commit '71c7cbab2b50436db940721a10d6ea1ca5d75f89' as 'bin/dash'June McEnroe2020-12-22
From tag 'v0.5.11.2'.