Skip to content

Releases: akinomyoga/ble.sh

Devel 0.4.0-devel3

03 Apr 14:21
Compare
Choose a tag to compare

ble-0.4.0-devel3 (2023-04-03)

2020-12-02...2023-04-03 (#D1427...#D2030) 276baf2...1a5c451

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.4.0-devel3.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.4.0-devel3/ble-0.4.0-devel3.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.4.0-devel3/ble-0.4.0-devel3.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.4.0-devel3/ble-0.4.0-devel3.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.4.0-devel3.tar.xz
source ble-0.4.0-devel3/ble.sh

# INSTALL (quick)
tar xJf ble-0.4.0-devel3.tar.xz -C ~/.local/share/blesh
echo 'source ~/.local/share/blesh' >> ~/.bashrc

# INSTALL (more robust)
tar xJf ble-0.4.0-devel3.tar.xz -C ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --attach=none
# Add the following line at the end of ~/.bashrc
[[ ${BLE_VERSION-} ]] && ble-attach

New features

  • decode (ble-decode-kbd): support various specifications of key sequences #D1439 0f01cab
  • edit: support new options bleopt edit_line_type={logical,graphical} (motivated by 3ximus) #D1442 40ae242
  • complete: support new options bleopt complete_limit{,_auto} (contributed by timjrd) #D1445 b13f114 5504bbc
    • complete: update the default value of bleopt complete_limit{,auto} #D1500 aae553c
    • complete: inject user interruption and complete limits into bash-completion through read (motivated by timjrd) #D1504 856cec2 #D1507 4fc51ae
  • edit (kill/copy): combine multiple kills and copies (suggested by 3ximus) #D1443 66564e1
    • edit ({kill,copy}-region-or): fix unconditionally combined kills/copies (reported by 3ximus) #D1447 1631751
  • canvas: update emoji database and support bleopt emoji_version (motivated by endorfina) #D1454 d1f8c27
    • emoji: unify emoji tables of different versions #D1671 af82662
  • canvas, edit: support bleopt info_display (suggested by 0neGuyDev) #D1458 69228fa
    • canvas (panel): always call panel::render to update height #D1472 51d2c05
    • util (visible-bell): work around coordinate mismatches in subshells #D1495 01cfb10
    • canvas: work around kitty's quirk not recognizing DECSTBM (CSI ; r) #D1503 eca2976
  • prompt: support bleopt prompt_status_{line,align} and face prompt_status_line #D1462 cca1cbc
    • prompt: fix missing height allocation for status line #D1487 b424fa5
    • prompt: support bleopt prompt_status_align=justify #D1494 c30a0db
  • syntax: properly support case patterns #D1474 #D1475 #D1476 64b55b7
  • keymap/vi: add ble/keymap:vi/script/get-mode for user-defined mode strings #D1488 f25a6e8 462918d
  • prompt: support multiline prompt_rps1 #D1502 4fa139a
    • canvas: fix wrong coordinate calculation on linefolding (reported by telometto) #D1602 9badb5f
    • prompt: fix coordinates after prompt_rps1 #D1972 e128801
    • prompt: clear remaining SGR after prompt_rps1 (reported by linwaytin) #D2003 ea99d94
  • syntax: support tilde expansions in parameter expansions #D1513 0506df2
  • decode: support ble-bind -m KEYMAP --cursor DECSCUSR (motivated by jmederosalvarado) #D1514 #D1515 #D1516 79d671d
    • decode: reflect changes after ble-bind --cursor #D1873 39efcf9
  • edit: support nsearch options (motivated by Alyetama, rashil2000, carv-silva) #D1517 9125795
    • edit: support nsearch opts empty=emulate-readline (motivated by jainpratik163) #D1661 d68ba61
    • edit: support bash-5.2 binding of prior/next to history-search-{for,back}ward #D1661 d26a6e1
  • syntax: support the deprecated redirection >& file #D1539 b9b0de4
  • complete: complete file descriptors and heredoc words after redirections #D1539 b9b0de4
  • main: support blehook ATTACH DETACH, BLE_ONLOAD, BLE_ATTACHED #D1543 750ca38
  • main: support ble #D1544 750ca38
  • main (ble-update): support package updates and sudo updates (motivated by huresche, oc1024) #D1548 0bc2660
    • main (ble-update): fix help message (contributed by NoahGorny) 50288bf
  • syntax: support undocumented ${a~} and ${a~~} #D1561 4df29a6
  • lib: support lib/vim-airline (motivated by huresche) #D1565 da1d0ff
    • util (ble/gdict): refactor #D1569 7732eed
    • vim-airline: support bleopt vim_airline_theme #D1589 73b037f
    • prompt: track dependencies and detect changes #D1590 #D1591 cf8d949
    • prompt: preserve LINES and COLUMNS for custom sequences #D1592 040016d
    • color: fix the face initialiation order for uses in prompts (motivated by jmederosalvarado) #D1593 321371f
    • prompt (contrib/prompt-git): support dirty checking #D1601 b2713d9
    • prompt (contrib/prompt-git): do not use ble/util/idle in Bash 3 #D1606 959cf27
    • util (bleopt): add new option -I to reinitialize user settings on reload #D1607 959cf27
    • vi (vi_cmap): fix wrong prompt calculations by the outdated initial values #D1653 2710b23
    • vim-airline: measure separator widths and fix layout of status line #D1999 1ce0d1a 478c9a1
  • util, color: refactor configuration interfaces (bleopt, blehook, ble-face) #D1568 c94d292
    • color: support new face setting function ble-face
    • util (bleopt): support option -r and -u and wildcards in option names
    • util (blehook): hide internal hooks by default and support option -a
    • util, color: fix argument analysis of bleopt, blehook, and ble-face (fixup c94d292) #D1571 bb53271
    • util (blehook): show explicitly specified internal hooks #D1594 f4312df
    • util (bleopt): do no select obsoleted options by wildcards #D1595 f4312df
    • util (bleopt): fix error messages for unknown options #D1610 66df3e2
    • util (bleopt, bind): fix error message and exit status, respectively #D1640 b663cee
    • util (blehook): support wildcards #D1861 480b7b3
  • progcomp: support quoted commands and better progcomp_alias #D1581 #D1583 dbe87c3
    • progcomp: fix a bug that command names may stray into completer function names #D1611 1f2d45f
  • syntax: highlight quotes of the \? form #D1584 5076a03
    • syntax: recognize escape " in double-quoted strings #D1641 4b71449
  • prompt: support a new backslash sequence \g{...} #D1609 be31391
    • prompt: accept more general [TYPE:]SPEC in \g{...} like ble-face #D1963 81b3b0e
    • prompt: fix non-working 24-bit color in \g{...} #D1977 881ec25
  • complete: add a new option bleopt complete_limit_auto_menu #D1618 1829d80
  • canvas: support grapheme clusters (motivated by huresche) #D1619 c0d997b
    • canvas (ble/util/c2w): use EastAsianWidth and GeneralCategory to mimic wcwidth #D1645 9a132b7
    • canvas (c2w:auto): work around combining chars applied to the previous line #D1649 1cbbecb
    • canvas (c2w:auto): avoid duplicate requests #D1649 1cbbecb a3047f5
    • canvas (c2w:auto): send DSR(6) in the internal state #D1664 a3047f5
    • canvas (c2w): support bleopt char_width_mode=musl #D1668 05b258f #D1672 af82662
    • canvas (c2w:auto): detect emacs and musl #D1668 05b258f
  • rlfunc: support vi word operations in emacs keymap (requested by SolarAquarion) #D1624 21d636a
  • edit: support TMOUT for the session timeout #D1631 0e16dbd
  • edit: support bash-5.2 READLINE_ARGUMENT #D1638 d347fb3
  • complete: support complete [-DI] in old versions of Bash through _DefaultCmD_ and _InitialWorD_ #D1639 925b2cd
  • rlfunc: support nsearch widgets in vi_nmap keymap (requested by cornfeedhobo) #D1651 9a7c8b1
  • prompt: support bleopt prompt_ruler (motivated by Barbarossa93) #D1666 05cf638
    • prompt: fix hanging by a zero-width prompt_ruler #D1673 9033f29
  • edit: support bleopt canvas_winch_action (requested by Johann-Goncalves-Pereira, guptapriyanshu7) #D1679 2243e91
    • blerc: fix the name of the option bleopt canvas_winch_action (reported by Knusper) b1be640
    • edit: go back to the previous lines with redraw-here more aggressively #D1966 a125187
  • menu (menu-style:desc): improve descriptions (motivated by Shahabaz-Bagwan) #D1685 4de1b45
  • menu (menu-style:desc): support multicolumns (motivated by Shahabaz-Bagwan) #D1686 231dc39
    • menu (menu-style:desc): fix not working bleopt menu_desc_multicolumn_width= #D1727 2140d1e
  • term: let DECSCUSR pass through terminal multiplexers (motivated by cmplstofB) #D1697 a3349e4
    • util: refactor _ble_term_TERM #D1746 63fba6b
  • complete: requote for more compact representations on full completions #D1700 a1859b6
    • complete (requote): requote from optarg/rhs starting point #D1786 93c2786
  • complete: improve support for declare and [[ ... ]] #D1701 da38404
    • syntax: fix completion and highlighting of declare with assignment arguments #D1704 #D1705 e12bae4
    • cmdspec: refactor {mandb => cmdspec}_opts #D1706 #D1707 0786e92
  • complete (menu-style:align): refactor complete_menu_align => menu_align_{min,max} (motivated by banoris) #D1717 22a2449
  • prompt: support bleopt prompt_command_changes_layout #D1750 e199bee
  • exec: measure execution times #D1756 2b28bec
    • edit: work around a bash-4.4..5.1 bug of exit outputting time to stderr of exit context #D1765 3de751e e61dbaa
    • edit (exec_elapsed_mark): show hours and days #D1793 699dabb
  • util: preserve original traps and restore them on unload #D1775 #D1776 #D1777 398e404
    • util (trap): fix a bug of restoring original traps #D1850 8d918b6
  • progcomp: support compopt -o ble/no-default to suppress default completions #D1789 7b70a0e
  • sabbrev: support options -r and --reset to remove entries #D1790 29b8be3
  • util (blehook): ...
Read more

Patch 0.3.4

03 Apr 14:07
Compare
Choose a tag to compare

ble-0.3.4 (2023-04-03)

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.3.4.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.3.4/ble-0.3.4.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.3.4/ble-0.3.4.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.3.4/ble-0.3.4.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.3.4.tar.xz
source ble-0.3.4/ble.sh

# INSTALL
tar xJf ble-0.3.4.tar.xz -C ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --attach=none
# Add the following line at the end of ~/.bashrc
[[ ${BLE_VERSION-} ]] && ble-attach

blesh-0.3 Fixes

  • decode: fix bind emulation in .bashrc (v0.3) 742777e
  • global: pick fixes and changes from ble-0.1..0.2 backports 78bbc5e
  • bump 0.3.4 9da6774

Fixes

  • complete: fix a problem that candidates are not updated after menu-filter (reported by 3ximus) #D1428 1c7786e (master: 98fbc1c)
  • edit: work around the wrong job information of Bash in trap handlers (reported by 3ximus) #D1435 #D1436 d40847f (master: bc4735e)
  • edit (command-help): work around the Bash bug that tempenv vanishes with builtin eval #D1438 cc8ca96 (master: 8379d4a)
  • global: suppress missing locale errors (reported by 3ximus) #D1440 b52a798 (master: 4d3c595)
  • edit (sword): fix definition of sword (shell words) #D1441 2370bce (master: f923388)
  • edit (kill-forward-logical-line): fix a bug not deleting newline at the end of the line #D1443 2a8a7f6 (master: 09cf7f1)
  • global: work around bash-4.2 bug of declare -gA (reported by 0xC0ncord) #D1470 2f85ed3 (master: 8856a04)
  • global: fix declaration of associative arrays for ble-reload (reported by 0xC0ncord) #D1471 422de69 (master: 3cae6e4)
  • util (ble/util/msleep): fix hang in Cygwin by swithing from /dev/udp/0.0.0.0/80 to /dev/zero #D1452 5ace564 (master: d4d718a)
  • syntax: fix broken AST with [[ keyword #D1454 1d48e79 (master: 69658ef)
  • benchmark (ble-measure): work around a locale-dependent decimal point of EPOCHREALTIME (reported by 3ximus) #D1460 f3833ad (master: 1aa471b)
  • util (ble/util/msleep): work around the bash-4.3 bug of read -t (reported by 3ximus) #D1468 #D1469 70797cf (master: 4ca9b2e)
  • bind: work around broken cmd_xmap after switching the editing mode #D1478 909f461 (master: 8d354c1)
  • edit: clear graphic rendition on newlines and external commands #D1479 59ede5c (master: 18bb2d5)
  • decode (rlfunc): work around incomplete bytes in keyseq (reported by onelittlehope) #D1483 948a38d (master: 3559658) beb0383 37363be
  • canvas: fix a glitch that SGR at the end of command line is applied to new lines #D1498 6871634 (master: 4bdfdbf)
  • syntax: fix a bug that eval() { :; }, declare() { :; } are not treated as function definition #D1529 6c1d295 (master: b429095)
  • decode: fix a hang on attach failure by cache corruption #D1531 d4b0700 (master: 24ea379)
  • progcomp: fix non-working complete -C prog (reported by Archehandoro) #D1535 47b3ade (master: 026432d)
  • bind: fix a problem that bind '"seq":"key"' causes a loop macro bind -s key key (reported by thanosz) #D1536 e2a502d (master: ea05fc5)
  • main: work around . ble.sh --{test,update,clear-cache} in intereactive sessions #D1555 500915f (master: bbc2a90)
  • main: fix reloading after ble-update (fixup 500915f (master: bbc2a90)) (fixed by oc1024) #D1558 9372670
  • main: fix exit status for bash ble.sh --test (fixup 500915f (master: bbc2a90)) #D1558 641238a
  • main: work around sourcing ble.sh inside subshells #D1554 500915f (master: bbc2a90)
  • global: use a better workaround of bash-4.2 declare -gA by separating assignment #D1567 40827ef (master: 2408a20)
  • util: work around bash-3.0 bug "${scal[@]/xxx}" #D1570 7e10cf4 (master: 24f79da)
  • syntax: fix a bug that argument completion is attempted in nested commands (reported by huresche) #D1579 6987ae8 (master: 301d40f)
  • edit (brackated-paste): fix incomplete CR => LF conversion (reported by alborotogarcia) #D1587 2651c8e (master: 8d6da16)
  • main (adjust-bash-options): adjust LC_COLLATE=C #D1588 94cc9d2 (master: e87ac21)
  • highlight (layer:region): fix blocked lower-layer changes without selection changes #D1596 d40d42a (master: 5ede3c6)
  • complete (auto-menu): fix sleep loops by clock/sclock difference #D1597 0abc15b (master: 53dd018)
  • util: work around the Bash 3 bug of array assignments with ^A and ^? in Bash 3.2 #D1614 0eac4df (master: b9f7611)
  • benchmark (ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup bbc2a90) #D1615 bc3cdab (master: a034c91)
  • decode, canvas, etc.: explicitly treat CSI arguments as decimal numbers (reported by GorrillaRibs) #D1625 97bce68 (master: c6473b7) 2ea48d7
  • edit: fix a bug that command-help doesn't work #D1635 c375fbb (master: 0f6a083)
  • complete: fix a task scheduling bug of referencing two different clocks (reported by rashil2000) #D1636 df9f932 (master: fea5f5b)
  • canvas: update prompt trace on char_width_mode change (reported by Barbarossa93) #D1642 00f9ce8 (master: 68ee111)
  • decode: fix a bug that the characters input while initialization are delayed #D1670 734bd50 (master: 430f449)
  • util (ble/util/readfile): fix a bug of always exiting with 1 in bash <= 3.2 (reported by laoshaw) #D1678 51d244a (master: 61705bf)
  • trace: fix wrong positioning of the ellipses on overflow #D1684 dea87c7 (master: b90ac78)
  • mandb: generate completions of options also for the empty word #D1689 dea87c7 (master: b90ac78)
  • complete: do not generate keywords for quoted command names #D1691 5b1e5be (master: 60d244f)
  • menu (menu-style:align): fix the failure of delaying ble/canvas/trace on items (motivated by banoris) #D1710 3d56593 (master: acc9661)
  • complete: fix empty completions with FIGNORE (reported by seanfarley) #D1711 49e75ee (master: 144ea5d)
  • main: fix the message of owner errors of cache directories (reported by zim0369) #D1712 02aeb4a (master: b547a41)
  • util (ble/string#escape-for-bash-specialchars): fix escaping of TAB #D1713 accf8f3 (master: 7db3d2b)
  • util (visible-bell): erase visible-bell before running external commands #D1723 72a11ae (master: 0da0c1c)
  • util (ble/function): work around shopt -u extglob #D1725 3819e83 (master: 952c388)
  • syntax: fix uninitialized syntax-highlighting in bash-3.2 #D1731 7bd03a5 (master: e3f5bf7)
  • main: fix the workaround for set -eu and refactor #D1743 a949af0 (master: 6a946f0)
  • progcomp: retry completions on $? == 124 also for non-default completions (reported by SuperSandro2000) #D1759 e217932 (master: 82b9c01)
  • util (ble/util/import): work around filenames with bash special characters #D1763 4179e3d (master: b27f758)
  • edit: fix the restore failure of PS1 and PROMPT_COMMAND on ble-detach #D1784 4f4c924 (master: b9fdaab)
  • complete: do not attempt an independent rhs completion for arguments (reported by rsteube) #D1787 7bf32ca (master: f8bbe2c)
  • history: work around possible dirty prefix * in the history output #D1808 84184ce (master: 64a740d)
  • util(ble/util/eval-pathname-expansion): fix restoring shopt options in bash-4.0 #D1825 d3b3f7b (master: 736f4da)
  • decode: fix the workaround for set -e with --prompt=attach #D1832 51cb735 (master: 5111323)
  • decode (encoding:C): fix initialization for isolated ESC #D1839 aaa74b5 (master: c3bba5b)
  • main. util: fix problems of readlink etc. found by test in macOS (reported by aiotter) #D1849 a1adc7f (master: fa955c1) #D1855 a22e145
  • progcomp: fix a bug that COMP_WORDBREAKS is ignored #D1872 b338066 (master: 4d2dd35)
  • global: quote return $? #D1884 4f14f7a (master: 801d14a)
  • main: fix adjustments of bash options (reported by rashil2000) #D1895 7bd25c9 (master: 138c476)
  • decode: fix a bug that the tab completion do not work with bash-4.4 and lower #D1928 6351e7f (master: 7da9bce)
  • bind: fix M-C-@, C-x C-@, and M-C-x (bash-4.2 -o emacs) #D1920 02f45f3 (master: a410b03)
  • complete: fix non-working ambiguous path completion with .. and . in the path #D1930 fdb76e9 (master: 632e90a)
  • main (ble-reload): fix failure by non-existent rcfile #D1931 58de996 (master: b7ae2fa)
  • util: fix ble/util/clock in bash-4.2 [main: fix the timestamp in the session ID in bash-4.2] #D1954 9a24b1e (master: 651c70c)
  • edit (ble/textarea#render): fix interleaving outputs to _ble_util_buffer and DRAW_BUFF #D1987 62519a7 (master: 6d61388)
  • keymap/vi (operator:filter): do not append newline at the end of line #D1994 8207d4f (master: bce2033)
  • keymap/vi (expand-range-for-linewise-operator): fix the end point being not extended #D1994 8207d4f (master: bce2033)
  • syntax: fix unrecognized asignment echo arr[i]+=rhs [sabbrev: apply sabbrev to right-hand sides of variable assignments] #D2007 948f50f (master: 41faa49)

Changes

  • syntax: exclude \ + LF at the word beginning from words (motivated by cmplstofB) #D1431 1b00fd2 (master: 67e62d6)
  • edit: preserve the state of READLINE_{LINE,POINT,MARK} #D1437 cc8ca96 (master: 8379d4a)
  • edit: change default behavior of C-w and M-w to operate on backward words #D1448 b1fd84a (master: 47a3301)
  • edit (ble/builtin/read): cancel by C-d on an empty line #D1473 4fae77a (master: ecb8888)
  • syntax: change syntax context after time ; and ! ; for Bash 4.4 #D1477 e55e3df (master: 4628370)
  • decode (rlfunc): update mapping vi-replace in imap and vi-editing-mode in nmap (reported by onelittlehope) #D1484 3a2d0fe (master: f2ca811)
  • prompt: invali...
Read more

Patch 0.2.7

03 Apr 14:05
Compare
Choose a tag to compare

ble-0.2.7 (2023-04-03)

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.2.7.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.2.7/ble-0.2.7.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.2.7/ble-0.2.7.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.2.7/ble-0.2.7.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.2.7.tar.xz
source ble-0.2.7/ble.sh

# INSTALL
tar xJf ble-0.2.7.tar.xz -C ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --noattach
# Add the following line at the end of ~/.bashrc
((_ble_bash)) && ble-attach

blesh-0.2 fixes

Fixes

  • edit: work around the wrong job information of Bash in trap handlers (reported by 3ximus) #D1435 #D1436 795a647 (master: bc4735e)
  • edit (sword): fix definition of sword (shell words) #D1441 5e73cf6 (master: f923388)
  • edit (kill-forward-logical-line): fix a bug not deleting newline at the end of the line #D1443 03787a2 (master: 09cf7f1)
  • global: work around bash-4.2 bug of declare -gA (reported by 0xC0ncord) #D1470 a2ace44 (master: 8856a04)
  • global: fix declaration of associative arrays for ble-reload (reported by 0xC0ncord) #D1471 533eba7 (master: 3cae6e4)
  • util (ble/util/msleep): fix hang in Cygwin by swithing from /dev/udp/0.0.0.0/80 to /dev/zero #D1452 46992e7 (master: d4d718a)
  • syntax: fix broken AST with [[ keyword #D1454 0482bf6 (master: 69658ef)
  • util (ble/util/msleep): work around the bash-4.3 bug of read -t (reported by 3ximus) #D1468 #D1469 fad78ea (master: 4ca9b2e)
  • bind: work around broken cmd_xmap after switching the editing mode #D1478 97ca117 (master: 8d354c1)
  • edit: clear graphic rendition on newlines and external commands #D1479 759b96d (master: 18bb2d5)
  • canvas: fix a glitch that SGR at the end of command line is applied to new lines #D1498 a6ac121 (master: 4bdfdbf)
  • syntax: fix a bug that eval() { :; }, declare() { :; } are not treated as function definition #D1529 a4cda9c (master: b429095)
  • decode: fix a hang on attach failure by cache corruption #D1531 a4c13ab (master: 24ea379)
  • benchmark (ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup 8eb493a (master: bbc2a90)) #D1615 a034c91
  • main: work around . ble.sh --{test,update,clear-cache} in intereactive sessions #D1555 8eb493a (master: bbc2a90)
  • main: fix reloading after ble-update (fixup 8eb493a (master: bbc2a90)) (fixed by oc1024) #D1558 9372670
  • main: fix exit status for bash ble.sh --test (fixup 8eb493a (master: bbc2a90)) #D1558 641238a
  • main: work around sourcing ble.sh inside subshells #D1554 8eb493a (master: bbc2a90)
  • global: use a better workaround of bash-4.2 declare -gA by separating assignment #D1567 0b7de99 (master: 2408a20)
  • edit (brackated-paste): fix incomplete CR => LF conversion (reported by alborotogarcia) #D1587 ac738bb (master: 8d6da16)
  • highlight (layer:region): fix blocked lower-layer changes without selection changes #D1596 650140f (master: 5ede3c6)
  • util: work around the Bash 3 bug of array assignments with ^A and ^? in Bash 3.2 #D1614 0ed7f6d (master: b9f7611)
  • benchmark (ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup bbc2a90) #D1615 28e8dfe (master: a034c91)
  • decode, canvas, etc.: explicitly treat CSI arguments as decimal numbers (reported by GorrillaRibs) #D1625 c9e4198 (master: c6473b7) 2ea48d7
  • edit: fix a bug that command-help doesn't work #D1635 b992bb5 (master: 0f6a083)
  • canvas: update prompt trace on char_width_mode change (reported by Barbarossa93) #D1642 56b77a8 (master: 68ee111)
  • util (ble/util/readfile): fix a bug of always exiting with 1 in bash <= 3.2 (reported by laoshaw) #D1678 5b843bb (master: 61705bf)
  • complete: do not generate keywords for quoted command names #D1691 7211b1e (master: 60d244f)
  • complete: fix empty completions with FIGNORE (reported by seanfarley) #D1711 90f388a (master: 144ea5d)
  • main: fix the message of owner errors of cache directories (reported by zim0369) #D1712 d2bf86c (master: b547a41)
  • syntax: fix uninitialized syntax-highlighting in bash-3.2 #D1731 6aa12c8 (master: e3f5bf7)
  • progcomp: retry completions on $? == 124 also for non-default completions (reported by SuperSandro2000) #D1759 c641fb1 (master: 82b9c01)
  • util (ble/util/import): work around filenames with bash special characters #D1763 7da5f04 (master: b27f758)
  • edit: fix the restore failure of PS1 and PROMPT_COMMAND on ble-detach #D1784 47dfdd9 (master: b9fdaab)
  • history: work around possible dirty prefix * in the history output #D1808 cc14f59 (master: 64a740d)
  • decode: fix the workaround for set -e with --prompt=attach #D1832 958aae6 (master: 5111323)
  • main. util: fix problems of readlink etc. found by test in macOS (reported by aiotter) #D1849 8f0acf3 (master: fa955c1) #D1855 a22e145
  • global: quote return $? #D1884 9e10b54 (master: 801d14a)
  • bind: fix M-C-@, C-x C-@, and M-C-x (bash-4.2 -o emacs) #D1920 342826f (master: a410b03)
  • keymap/vi (operator:filter): do not append newline at the end of line #D1994 2a8e746 (master: bce2033)
  • keymap/vi (expand-range-for-linewise-operator): fix the end point being not extended #D1994 2a8e746 (master: bce2033)
  • syntax: fix unrecognized asignment echo arr[i]+=rhs [sabbrev: apply sabbrev to right-hand sides of variable assignments] #D2006 4ed4fd4 (master: 41faa49)
  • syntax: fix unrecognized variable assignment of the form echo arr[i]+=rhs #D2007 4ed4fd4 (master: 41faa49)

Changes

  • syntax: exclude \ + LF at the word beginning from words (motivated by cmplstofB) #D1431 6044a48 (master: 67e62d6)
  • edit: change default behavior of C-w and M-w to operate on backward words #D1448 787ff57 (master: 47a3301)
  • edit: the widgets {kill,copy,delete}-region-or now receives widgets as arguments #D1021 8f48aff (master: bbbd155)
  • edit (ble/builtin/read): cancel by C-d on an empty line #D1473 551bde3 (master: ecb8888)
  • syntax: change syntax context after time ; and ! ; for Bash 4.4 #D1477 0b66cf4 (master: 4628370)
  • prompt: invalidate prompt and textarea on prompt setting changes #D1492 54d310d (master: 1f55913)
  • prompt: adjust behavior of LINENO and prompt sequence \# (reported by tycho-kirchner) #D1542 4b63b16 (master: 8b0257e)
  • main: show notifications against debug versions of Bash #D1612 608ac2a (master: 8f974aa)
  • prompt: do not evaluate PROMPT_COMMAND for subprompts #D1654 5c0cfde (master: 08e903e)
  • main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo) #D1676 2587bb0 (master: 0525528) 88e2df5
  • main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo) #D1676 0525528 5f63856 (master: 88e2df5)
  • util (ble/util/buffer): hide cursor in rendering #D1758 4ecbbdc (master: e332dc5)
  • edit (ble-detach): prepend a space to stty sane for HISTIGNORE=' *' #D1796 bd90371 (master: 26b532e)
  • history: disable the history file when HISTFILE is empty #D1836 d97ca10 (master: 9549e83)
  • keymap/vi (decompose-meta): translate S-a to A #D1988 eaf66c7 (master: 600e845)
  • term (_ble_term_TERM): detect konsole #D1988 eaf66c7 (master: 600e845) ed53858
  • complete (source:argument): fallback to rhs completion also for name+=rhs #D2006 4ed4fd4 (master: 41faa49)

Compatibility

  • highlight: fix a problem that the attribute of the last character is applied till EOL #D1393 36f9d80 (master: 2ddb1ba) #D1395 ef09932
  • highlight: fix a problem that the attribute of the last character is applied till EOL #D1393 2ddb1ba #D1395 6bcb405 (master: ef09932)
  • global: work around empty vi_imap cache by tmux-resurrect #D1562 d7130d5 (master: 560160b)
  • main: work around set -B and set -k #D1628 3c97ae8 (master: a860769)
  • cmap: add st-specific escape sequences for cursor keys #D1633 bf46e34 (master: acfb879)
  • cmap: distinguish find/select from home/end for openSUSE inputrc.keys (reported by cornfeedhobo) #D1648 ad67555 (master: c4d28f4)
  • cmap: freeze the internal codes of find/select and kitty special keys #D1674 f41b800 (master: fdfe62a)
  • decode: work around the overwritten builtin set (reported by eadmaster) #D1680 93ae08d (master: a6b4e2c)
  • complete: work around the variable leaks by virsh completion from libvirt (reported by telometto) #D1682 ee2ac07 (master: f985b9a)
  • stty: do not remove keydefs for C-u, C-v, C-w, and C-? (reported by laoshaw) #D1683 c01487b (master: 82f74f0)
  • main: work around XDG_RUNTIME_DIR of a different user by su (reported by zim0369) #D1712 e5501a3 (master: 8d37048)
  • main (ble/util/readlink): work around non-standard or missing readlink (motivated by peterzky) #D1720 d785f5d (master: a41279e)
  • global: work around the arithmetic syntax error of 10# in Bash-5.1 #D1734 2b55aa1 (master: 7545ea3)
  • global: adjust implementations for Bash 5.2 patsub_replacement #D1738 359a389 (master: 4590997)
  • main: check /dev/tty on startup (reported by andychu) #D1749 ...
Read more

Patch 0.1.15

03 Apr 14:03
Compare
Choose a tag to compare

ble-0.1.15 (2023-04-03)

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.1.15.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.1.15/ble-0.1.15.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.1.15/ble-0.1.15.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.1.15/ble-0.1.15.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.1.15.tar.xz
source ble-0.1.15/ble.sh

# INSTALL
tar xJf ble-0.1.15.tar.xz -C ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --noattach
# Add the following line at the end of ~/.bashrc
((_ble_bash)) && ble-attach

blesh-0.1 fixes

  • edit,highlight: backport changes in rebased commits dfac242
  • bump 0.1.15 3f4d866

Fixes

  • edit (sword): fix definition of sword (shell words) #D1441 03980f1 (master: f923388)
  • bind: work around broken cmd_xmap after switching the editing mode #D1478 847e602 (master: 8d354c1)
  • benchmark (ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup 4759768 (master: bbc2a90)) #D1615 a034c91
  • main: work around . ble.sh --{test,update,clear-cache} in intereactive sessions #D1555 4759768 (master: bbc2a90)
  • main: fix reloading after ble-update (fixup 4759768 (master: bbc2a90)) (fixed by oc1024) #D1558 9372670
  • main: fix exit status for bash ble.sh --test (fixup 4759768 (master: bbc2a90)) #D1558 641238a
  • main: work around sourcing ble.sh inside subshells #D1554 4759768 (master: bbc2a90)
  • util: work around the Bash 3 bug of array assignments with ^A and ^? in Bash 3.2 #D1614 9648bd4 (master: b9f7611)
  • decode, canvas, etc.: explicitly treat CSI arguments as decimal numbers (reported by GorrillaRibs) #D1625 40a0ec9 (master: c6473b7) 2ea48d7
  • edit: fix a bug that command-help doesn't work #D1635 c99e2f1 (master: 0f6a083)
  • canvas: update prompt trace on char_width_mode change (reported by Barbarossa93) #D1642 5b22cd6 (master: 68ee111)
  • complete: do not generate keywords for quoted command names #D1691 cd75f39 (master: 60d244f)
  • progcomp: retry completions on $? == 124 also for non-default completions (reported by SuperSandro2000) #D1759 a66b547 (master: 82b9c01)
  • edit: fix the restore failure of PS1 and PROMPT_COMMAND on ble-detach #D1784 a0f6594 (master: b9fdaab)
  • history: work around possible dirty prefix * in the history output #D1808 0ed2ffb (master: 64a740d)
  • main. util: fix problems of readlink etc. found by test in macOS (reported by aiotter) #D1849 1dc5938 (master: fa955c1) #D1855 a22e145
  • global: quote return $? #D1884 c2ba90b (master: 801d14a)
  • bind: fix M-C-@, C-x C-@, and M-C-x (bash-4.2 -o emacs) #D1920 de577dc (master: a410b03)

Changes

  • syntax: exclude \ + LF at the word beginning from words (motivated by cmplstofB) #D1431 69156f1 (master: 67e62d6)
  • edit: change default behavior of C-w and M-w to operate on backward words #D1448 0a07c13 (master: 47a3301)
  • edit: the widgets {kill,copy,delete}-region-or now receives widgets as arguments #D1021 ec16708 (master: bbbd155)
  • main: show notifications against debug versions of Bash #D1612 8f989e4 (master: 8f974aa)
  • main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo) #D1676 2a045d8 (master: 0525528) 88e2df5
  • main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo) #D1676 0525528 4ef844e (master: 88e2df5)
  • util (ble/util/buffer): hide cursor in rendering #D1758 444abff (master: e332dc5)
  • edit (ble-detach): prepend a space to stty sane for HISTIGNORE=' *' #D1796 acb7c08 (master: 26b532e)
  • history: disable the history file when HISTFILE is empty #D1836 a79095a (master: 9549e83)

Compatibility

  • global: work around empty vi_imap cache by tmux-resurrect #D1562 b0cc0a3 (master: 560160b)
  • cmap: add st-specific escape sequences for cursor keys #D1633 ae298f1 (master: acfb879)
  • cmap: distinguish find/select from home/end for openSUSE inputrc.keys (reported by cornfeedhobo) #D1648 603cf41 (master: c4d28f4)
  • cmap: freeze the internal codes of find/select and kitty special keys #D1674 66263c4 (master: fdfe62a)
  • decode: work around the overwritten builtin set (reported by eadmaster) #D1680 43dcb66 (master: a6b4e2c)
  • complete: work around the variable leaks by virsh completion from libvirt (reported by telometto) #D1682 d13ce5b (master: f985b9a)
  • stty: do not remove keydefs for C-u, C-v, C-w, and C-? (reported by laoshaw) #D1683 6335dc2 (master: 82f74f0)
  • main (ble/util/readlink): work around non-standard or missing readlink (motivated by peterzky) #D1720 94137b7 (master: a41279e)
  • global: work around the arithmetic syntax error of 10# in Bash-5.1 #D1734 7c2463e (master: 7545ea3)
  • global: adjust implementations for Bash 5.2 patsub_replacement #D1738 f1599ee (master: 4590997)
  • main: check /dev/tty on startup (reported by andychu) #D1749 28e9c44 (master: 711c69f)
  • global: work around shopt -s compat42 #D1754 59075cc (master: a75bb25)
  • global: identify bash-4.2 bug that internal quoting of ${v/%$empty/"$rep"} remains #D1753 59075cc (master: a75bb25)
  • prompt: fix a bug of ble/prompt/print redundantly quoting $ #D1752 59075cc (master: a75bb25)
  • global: work around compat42 quoting of "${v/pat/"$rep"}" #D1751 59075cc (master: a75bb25)
  • util: add identification of Windows Terminal wt #D1758 444abff (master: e332dc5)
  • global: work around bash-3.0 bug that single quotes remains for "${v-$''}" #D1774 d0dc13e (master: 9b96578)
  • highlight: fix a problem that the attribute of the last character is applied till EOL #D1393 2ddb1ba #D1395 8c33557 (master: ef09932)
  • main: resolve empty HOSTNAME [add histdb] #D1925 e6cc6c3 (master: 44d9e10)
  • main: warn empty LANG [main: support an option --inputrc={diff,all,user,none}] #D1926 2bd1544 (master: 92f2006)
  • term (terminology): work around terminal glitches #D1946 c5c3bc9 (master: 9a1b4f9)
  • edit: restore PS1 while processing bind -x (reported by adoyle-h) #D2024 94db09b (master: 2eadcd5)

Optimization

  • prompt: fix not properly set $? in ${PS1@P} evaluation (reported by nihilismus) #D1644 a7b5c4b (master: 521aff9)

Internal changes and fixes

  • main: include hostname in local runtime directory #D1444 1a5e90a (master: 6494836)
  • global: fix status check for read timeout #D1467 b56d638 (master: e886883)
  • util, etc: ensure each function to work with arbitrary IFS #D1490 #D1491 7228fd0 (master: 5f9adfe)
  • util: fix leak variables buff, trap, {x,y}{1,2} #D1572 de71ada (master: 5967d6c)
  • make: add fallback Makefile for BSD make #D1805 2cb758f (master: e5d8d00)
  • util, decode, vi: fix leak variables #D1933 a2197a6 (master: 8d5cab8)
  • syntax: fix code formatting [histdb: support auto-complete source histdb-word] #D1938 492349f (master: 00cae74)

Test

  • util (ble/util/s2bytes): clear locale cache #D1881 a8d7fd7 (master: 2e1a7c1)
  • util (ble/util/s2c): work around intermediate mbstate of bash <= 5.2 #D1881 a8d7fd7 (master: 2e1a7c1)
  • util (ble/encoding:UTF-8/b2c): fix interpretation of leading byte #D1881 a8d7fd7 (master: 2e1a7c1)

nightly

16 Jun 08:29
a3082a0
Compare
Choose a tag to compare
nightly Pre-release
Pre-release

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-nightly.tar.xz

Link kept updated for every nightly build:

https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly.tar.xz

Permalink to the current nightly build:

https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly-20240602+365101c.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly.tar.xz

# DOWNLOAD with wget (this specific nightly build)
wget https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly-20240602+365101c.tar.xz

# DOWNLOAD with curl (this specific nightly build)
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly-20240602+365101c.tar.xz

Trial & Install

# TRIAL
tar xJf ble-nightly.tar.xz
source ble-nightly/ble.sh

# INSTALL (quick)
tar xJf ble-nightly.tar.xz
bash ble-nightly/ble.sh --install ~/.local/share
echo 'source ~/.local/share/blesh' >> ~/.bashrc
# Note: After installation, directory ble-nightly-20240602+365101c can be removed.

# INSTALL (more robust)
tar xJf ble-nightly.tar.xz
bash ble-nightly/ble.sh --install ~/.local/share
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --attach=none
# Add the following line at the end of ~/.bashrc
[[ ${BLE_VERSION-} ]] && ble-attach
# Note: After installation, directory ble-nightly-20240602+365101c can be removed.

Release 0.4.0-devel2 (2020-12-02)

02 Dec 14:29
Compare
Choose a tag to compare
Pre-release

2020-01-12...2020-12-02 (#D1215...#D1426) c74abc5...276baf2

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.4.0-devel2.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.4.0-devel2/ble-0.4.0-devel2.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.4.0-devel2/ble-0.4.0-devel2.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.4.0-devel2/ble-0.4.0-devel2.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.4.0-devel2.tar.xz
source ble-0.4.0-devel2/ble.sh

# INSTALL (quick)
tar xJf ble-0.4.0-devel2.tar.xz
mkdir -p ~/.local/share/blesh
cp -fR ble-0.4.0-devel2/* ~/.local/share/blesh
echo 'source ~/.local/share/blesh' >> ~/.bashrc

# INSTALL (more robust)
tar xJf ble-0.4.0-devel2.tar.xz
mkdir -p ~/.local/share/blesh
cp -fR ble-0.4.0-devel2/* ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --attach=none
# Add the following line at the end of ~/.bashrc
[[ ${BLE_VERSION-} ]] && ble-attach

New features

  • complete: support bleopt complete_auto_wordbreaks (suggestion by dylankb) #D1219 c294e31
  • main: check ~/.config/blesh/init.sh #D1224 a82f961
  • progcolor: support programmable highlighting #D1218 0770234 #D1244 9cb3583 #D1245 8e8a296 #D1247 154f638 #D1269 fa0036c
  • decode/kbd: support U+XXXX, @ESC and @NUL for keynames #D1251 441117c ef23ad1
  • syntax: support coproc #D1252 7ff68d2
  • vi/nmap: support readline widgets for M-left, M-right, C-delete, # and & #D1258 846e0be
  • complete: add compopt -o quote/default for fzf (motivated by dylankb) #D1275 58e1be4
  • util (ble-import): support an option -d (--delay) #D1285 9673e4e
  • syntax: support parameter expansion of the form ${var/#pat}, ${var/%pat} #D1286 e2f4809
  • edit: support bleopt editor line_limit_{type,length} history_limit_length #D1295 2f9a000
  • edit: support widgets {vi,emacs}-editing-mode #D1301 0c6c76e
  • syntax: allow unquoted [! and [^ in simple-word (reported by cmplstofB) #D1303 1efe833
  • util (ble/util/print-global-definitions): support arrays and unset variables (test-util) 6e85f1c
  • util (ble/util/cat): support NUL and multiple files (test-util) d19a9af
  • edit: support Bash 5.1 READLINE_MARK and PROMPT_COMMANDS #D1328 e97a858 #D1338 657bea5
    • edit, main: support array PROMPT_COMMAND in bash-5.1 #D1380 b852a4f
  • syntax: support confusing parameter expansions like ${#@}, etc. #D1330 b7b42eb
  • contrib: add contrib for user settings #D1335 f290115
  • syntax: support ${var@UuLK} in Bash 5.1 #D1336 04da4dd
  • main: add an option --test #D1340 1410c72
  • util (ble/builtin/trap): support return in INT/EXIT/WINCH #D1347 #D1348 3865488
  • history: support timestamp (reported by rux616) #D1351 4bcbd71 #D1356 350bb15 #D1364 1d8adf9
  • edit: support Bash 4.4 PS0 #D1357 23a1ac5
  • vi: support bleopt keymap_vi_mode_{update_prompt,show,name_*} (suggested by Dave-Elec) #D1365 76be6f1
  • prompt: support prompt sequence \q{...} #D1365 76be6f1
  • edit: support bind 'set show-mode-in-prompt' #D1365 76be6f1
    • prompt: fix a bug that mode string is not shown in auto_complete and other sub-modes (reported by tigger04) #D1371 f6fc7ff
    • prompt: redraw prompts on the prompt content change (reported by tigger04) #D1371 1954a1e
  • prompt: support bleopt prompt_{{ps1,rps1}{_final,_transient}} (suggested by Dave-Elec) #D1366 06381c9
    • prompt: fix a bug that prompt are always re-insntiated for every rendering #D1374 0770cda
    • prompt: fix a bug that rprompt is not cleared when bleopt prompt_rps1 is reset #D1377 1904b1d
    • prompt: fix a bug that prompts updated by PROMPT_COMMAND are not reflected immediately #D1426 bbda197
  • edit: support Bash 5.1 widgets #D1368 e747ee3
  • color: support TERM=*-direct #D1369 0d38897 #D1370 f7dc477
  • complete: support bleopt complete_auto_menu #D1373 77bfabd
    • complete: fix a problem of frequent bells with auto-menu activated #D1381 3b1d8ac
  • complete: support bleopt complete_menu_maxlines #D1375 8e81cd7
  • prompt: support _ble_prompt_update #D1376 0fa8739
  • prompt: support bleopt prompt_{xterm_title,screen_title,status_line} #D1378 5c3f6fe
    • prompt: check TERM for prompt window titles when _ble_term_TERM is unavailable #D1388 3c88869
  • syntax: support options bleopt highlight_{syntax,filename,vartype} to turn off highlighting (requested by pjmp) #D1379 0116f8b
  • complete: support shopt progcomp_alias #D1397 d68afa5
  • complete: generate completions of options based on man pages #D1405 8183455
    • complete (mandb): fix a bug that bleopt complete_menu_style is globally changed #D1412 b91fd10
  • highlight: support colon separated lists of paths #D1409 2f40422
    • highlight: fix a bug that non-simple words are always highlighted as syntax_error (reported by cmplstofB) #D1411 46e2ac6
    • highlight: fix a bug that words are sometimes unhighlighted #D1418 4395484
    • highlight: fix a bug that non-existent directories are not highlighted in the command name context #D1419 4395484
  • highlight: support options #D1410 2f40422
    • highlight: support highlighting of declare command options #D1420 f0df481
    • highlight: fix unhighlighted tilde expansions ~+ (reported by cmplstofB) #D1424 a32962e

Changes

  • highlight: highlight symlink directories as symlinks #D1249 25e8a72
  • auto-complete: bind insert-on-end to C-e #D1250 90b45eb
  • edit (widget/shell-expand-line): not quote expanded results by default #D1255 a9b7810
  • decode: refactor
    • decode: delay bind until keymap initialization #D1258 0beac33
    • decode: read user settings from bind -Xsp #D1259 eef14d0
    • decode: fix a bug of ble-bind with uninitialized cmap #D1260 5d98210
    • decode: fix error messages of BSD sed rejecting unencoded bytes from bind -p (reported by dylankb) #D1277 0cc9160
  • edit: provide proper $BASH_COMMAND and $_ for PS1, PROMPT_COMMAND, PRECMD, etc. #D1276 7db48dc
  • edit (quoted-insert): insert literal key sequence #D1291 420c933
  • decode: support decode_abort_char for modifyOtherKeys #D1293 ad98416
  • edit (edit-and-execute): disable highlighting of old command line content #D1295 2f9a000
  • util (bleopt): fail when a specified bleopt variable does not exist (test-util) 5966f22
  • builtin: let redefined builtins return 2 for --help #D1323 731896c
  • edit: preserve PS1 when internal_suppress_bash_output is set #D1344 6ede0c7
  • complete: complete param expan in additional contexts #D1358 3683305
  • main: reload on ble-update when ble.sh is already updated #D1359 a441d4d
  • main (ble-update): clone github repository if the original repository is not found #D1363 6e3b3b5
  • util (bleopt): change output format d4b12cd
  • syntax: allow time -- command for Bash 5.1 #D1367 00d0e93
  • menu: preserve columns with {forward,backward}-line #D1396 3d5a341
  • syntax: rename ble_debug to bleopt syntax_debug #D1398 3cda58b
  • syntax: change a style of buffer contents in bleopt syntax_debug #D1399 3cda58b
  • complete: change to generate filenames starting from . by default #D1425 987436d

Fix

  • util (ble/builtin/trap): fix argument analysis for the form trap INT (reported by dylankb) #D1221 db8b0c2
  • main: fix an error message on ristricted shells #D1220 b726225
  • edit: fix a bug that the shell hangs with source ble.sh --noattach && ble-attach (reported by dylankb) #D1223 59c1ce4 3031007
  • edit: fix a bug that the textarea state is not properly saved (reported by cmplstofB) #D1227 06ae2b1
  • syntax: support hexadecimal literals for arithmetic expression (reported by cmplstofB) #D1228 90e4f35
  • history: fix a bug that history append does not work with set -C (reported by cmplstofB) #D1229 604bb8b
  • decode (ble/builtin/bind): fix widget mapping for default_keymap=safe #D1234 750a9f5
  • main (ble-update): fix a bug that the check of make does not work in Bash 3.2 #D1236 08ced81
  • syntax: fix a infinite loop for variable assignments and parameter expansions #D1239 327661f
  • complete: clear menu on history move #D1248 06cc7de
  • syntax: fix a bug that arguments of eval are not highlighted #D1254 5046d14
  • decode: fix error message command=${[key]-} for mouse input #D1263 09bb274
  • [ble-0.3] reload: fix a bug that the state is broken by ble-reload #D1266 f2f30d1
  • decode (ble/builtin/bind): remove comment from bind argument #D1267 880bb2c
  • decode: use BRE instead of ERE for POSIX sed (reported by dylankb) #D1283 2184739
  • decode: fix strange behaviors after fzf (convert DEL to C-?) #D1281 744c8e8
  • edit: work around Bash rebinding on TERM change #D1287 ac7ab55 7a99bf3
  • term: work around terminfo/termcap entry collisions in tput (reported by killermoehre) #D1289 f8c54ef
  • complete: clear menu on discard-line (reported by animecyc) #D1290 fb794b3 #D1315 99880ef
  • vi (vi-command/nth-column): fix a bug in arithmetic expansion (reported by andychu) #D1292 da6cc47
  • complete: fix a bug that insert-word does not for with ambiguous candidates #D1295 2f9a000
  • complete: fix a bug that menu-filter is only partially turned off by complete_menu_filter #D1298 b3654e2
  • decode: fix error messages for unsupported readline functions #D1301 91bdb64
  • global: work around shopt -s assoc_expand_once #D1305 31908e1
  • global: work around TMOUT for builtin read #D1306 1c22a9d
  • syntax: fix failglob errors of heredoc...
Read more

Patch 0.3.3 (2020-12-02)

02 Dec 14:21
Compare
Choose a tag to compare

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.3.3.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.3.3/ble-0.3.3.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.3.3/ble-0.3.3.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.3.3/ble-0.3.3.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.3.3.tar.xz
source ble-0.3.3/ble.sh

# INSTALL
tar xJf ble-0.3.3.tar.xz
mkdir -p ~/.local/share/blesh
cp -fR ble-0.3.3/* ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --attach=none
# Add the following line at the end of ~/.bashrc
[[ ${BLE_VERSION-} ]] && ble-attach

New features

  • syntax: allow unquoted [! and [^ in simple-word (reported by cmplstofB) #D1303 4bf8b86 (master: 1efe833)

Changes

  • auto-complete: bind insert-on-end to C-e #D1250 1070aba (master: 90b45eb)
  • util (bleopt): fail when a specified bleopt variable does not exist (test-util) 0a51044 (master: 5966f22)
  • edit: preserve PS1 when internal_suppress_bash_output is set #D1344 537acf2 (master: 6ede0c7)
  • complete: change to generate filenames starting from . by default #D1425 e26867d (master: 987436d)

Fix

  • [ble-0.3] reload: fix a bug that the state is broken by ble-reload #D1266 f2f30d1 (master: N/A)
  • decode (ble/builtin/bind): remove comment from bind argument #D1267 82f4aaa (master: 880bb2c)
  • complete: clear menu on history move #D1248 04fddd6 (master: 06cc7de)
  • syntax: fix a bug that arguments of eval are not highlighted #D1254 38a7fc7 (master: 5046d14)
  • decode: use BRE instead of ERE for POSIX sed (reported by dylankb) #D1283 a577ec4 (master: 2184739)
  • vi (vi-command/nth-column): fix a bug in arithmetic expansion (reported by andychu) #D1292 ea2fa8e (master: da6cc47)
  • complete: fix a bug that menu-filter is only partially turned off by complete_menu_filter #D1298 7278e27 (master: b3654e2)
  • syntax: fix failglob errors of heredocs of the form <<$(echo A) #D1308 5ba9400 (master: 3212fd2)
  • util (bleopt): fix a bug that a new setting is not defined with name:= (test-util) #D1312 f2dbad0 (master: c757b92)
  • util (ble/util/{save,restore}-vars): fix a bug that name and prefix cannot be saved/restored (test-util) f91f7ed (master: 5f2480c)
  • util (ble/path#remove{,-glob}): fix corner cases (test-util) 2ba1d42 (master: ccbc9f8)
  • util (ble/variable#get-attr): fix an error message with special variable names such as ? and * #D1321 b58f006 (master: 557b774)
  • edit: fix a bug that set +H is cancelled on command execution #D1332 bc454a2 (master: 02bdf4e)
  • syntax (ble/syntax/parse/shift): fix a bug of shift skip in nested words #D1333 78e2170 (master: 65fbba0)
  • util (ble-stackdump): fix a shift of line numbers #D1337 1505a5b (master: a14b72f)
  • edit (ble-bind -x): check range of READLINE_{POINT,MARK} #D1339 1bc1ff6 (master: efe1e81)
  • main: fix a bug that ~/.config/blesh/init.sh is not detected (GitHub #53 by rux616) 9f74da6 (master: 61f9e10)
  • util (ble/string#to{upper,lower}): work around LC_COLLATE=en_US.utf8 (test-util) #D1341 5d9aa64 (master: 1f6b44e) #D1355 4e67719 (master: 4da6103)
  • util (encoding, keyseq): fix miscelleneous encoding bugs (test-util) 6d72d2a (master: 435bd16)
  • edit: work around WINCH not updating COLUMNS/LINES after ble-reload #D1345 e2d54a2 (master: a190455)
  • complete: initialize bleopt complete_menu_style options before complete_load hook (reported by rux616) #D1352 15ba24f (master: 8a9a386)
  • main: fix problems caused by multiple source ble.sh in bashrc #D1354 983e8a9 (master: 5476933)
  • syntax: allow single-character variable name in named redirections {a}<> #D1360 52de342 (master: 4760409)
  • decode (bind): work around shopt -s nocasematch (reported by tigger04) #D1372 b34ad58 (master: 855cacf)
  • prompt: fix a bug that rprompt is not cleared when bleopt prompt_rps1 is reset #D1377 c736bd5 (master: 1904b1d)
  • complete: fix a bug of duplicated completions of filenames with spaces #D1390 048f17e (master: 98576c7)
  • complete: fix bugs that quotation disappears on ambiguous completion #D1387 048f17e (master: 98576c7)
  • complete: fix a bug that progcomp retry by 124 caused the default completion again #D1386 048f17e (master: 98576c7)
  • syntax (tree-enumerate): fix unmodified wtype of reconstructed words at the end #D1385 048f17e (master: 98576c7)
  • complete: fix superlinear performace of ambiguous matching globpat #D1389 bd4657a (master: 71afaba)
  • prompt: fix a bug that lonig rps1 is not correctly turned off #D1401 9266961 (master: d84bcd8)
  • prompt: fix extra spaces on line folding before double width character #D1400 9266961 (master: d84bcd8)
  • syntax (glob bracket expression): fix a bug of unsupported POSIX brackets #D1402 e1eca65 (master: 6fd9e22)
  • syntax (ble/syntax:bash/simple-word/evaluate-path-spec): fix a bug of unrecognized [!...] and [^...] #D1403 50fcd03 (master: 0b842f5)
  • highlight: fix remaininig highlighting of vanishing words #D1421 #D1422 0f85719 (master: 1066653)
  • highlight: fix unhighlighted tilde expansions ~+ (reported by cmplstofB) #D1424 1f9abf6 (master: a32962e)
  • complete: fix a problem that the user setting dotglob is changed #D1425 e26867d (master: 987436d)
  • complete: fix a problem of redundant unmatched ambiguous part with tilde expansions in the common prefix #D1417 20cb6af (master: 5777d7f)
  • complete (source:file): fix a bug that tilde expansion candidates are always filtered out #D1416 20cb6af (master: 5777d7f)
  • complete (cd): fix duplicate candidates by CDPATH (reported by Lennart00 at oh-my-bash) #D1415 20cb6af (master: 5777d7f)

Compatibility

  • msys2: support2 MSYS (motivated by SUCHMOKUO) #D1264 500e051 (master: 47e2863)
  • edit (ble/widget/bracketed-paste): fix error messages on paste_end in older version of Bash (test-util) 1631069 (master: b2c7d1c)
  • decode: work around Bash-3.1 bug of declare -f rejecting special characters in function names (test-util) 1631069 (master: b2c7d1c)
  • util (ble/variable#get-attr): fix a bug that attributes are not obtained in Bash <= 4.3 (test-util) 1631069 (master: b2c7d1c)
  • decode: work around Bash-4.1 bug that locale not applied with LC_CTYPE=C eval command (test-util) 1631069 (master: b2c7d1c)
  • complete: follow Bash-5.1 change of arithmetic literal 10# #D1322 b58f006 (master: 557b774)
  • decode: work around Bash-4.1 arithmetic bug of array subscripts evaluated in discarded branches #D1320 b58f006 (master: 557b774)
  • decode: fix a bug of broken cmap cache found in ble-0.3 #D1327 4b15993 (master: 16b56bf)
  • util (strftime): fix a bug not working with -v var option in Bash <= 4.1 (test-util) 360211c (master: f1a2818)
  • complete: work around slow compgen -c in Cygwin #D1329 185a443 (master: 5327f5d)
  • edit: work around problems with mc (reported by onelittlehope) #D1392 4d534b4 (master: e97aa07)
    • highlight: fix a problem that the attribute of the last character is applied till EOL #D1393 f47a5b8 (master: 2ddb1ba) #D1395 8c1e17c (master: ef09932)

Internal

Patch 0.2.6 (2020-12-02)

02 Dec 14:19
Compare
Choose a tag to compare

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.2.6.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.2.6/ble-0.2.6.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.2.6/ble-0.2.6.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.2.6/ble-0.2.6.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.2.6.tar.xz
source ble-0.2.6/ble.sh

# INSTALL
tar xJf ble-0.2.6.tar.xz -C ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --noattach
# Add the following line at the end of ~/.bashrc
((_ble_bash)) && ble-attach

New features

  • syntax: allow unquoted [! and [^ in simple-word (reported by cmplstofB) #D1303 5cff40f (master: 1efe833)

Changes

  • edit: preserve PS1 when internal_suppress_bash_output is set #D1344 72ae9c6 (master: 6ede0c7)

Fixes

  • decode: use BRE instead of ERE for POSIX sed (reported by dylankb) #D1283 bca4598 (master: 2184739)
  • vi (vi-command/nth-column): fix a bug in arithmetic expansion (reported by andychu) #D1292 4260bc2 (master: da6cc47)
  • syntax: fix failglob errors of heredocs of the form <<$(echo A) #D1308 1f874ba (master: 3212fd2)
  • util (bleopt): fix a bug that a new setting is not defined with name:= (test-util) #D1312 a9eb0e9 (master: c757b92)
  • util (ble/util/{save,restore}-vars): fix a bug that name and prefix cannot be saved/restored (test-util) 49841db (master: 5f2480c)
  • edit: fix a bug that set +H is cancelled on command execution #D1332 2ff6d06 (master: 02bdf4e)
  • syntax (ble/syntax/parse/shift): fix a bug of shift skip in nested words #D1333 bc935bd (master: 65fbba0)
  • util (ble-stackdump): fix a shift of line numbers #D1337 b597e90 (master: a14b72f)
  • edit (ble-bind -x): check range of READLINE_{POINT,MARK} #D1339 47a93e8 (master: efe1e81)
  • util (ble/string#to{upper,lower}): work around LC_COLLATE=en_US.utf8 (test-util) #D1341 5b32621 (master: 1f6b44e) #D1355 b38ef10 (master: 4da6103)
  • util (encoding, keyseq): fix miscelleneous encoding bugs (test-util) 03c0b44 (master: 435bd16)
  • edit: work around WINCH not updating COLUMNS/LINES after ble-reload #D1345 50af6a5 (master: a190455)
  • syntax: allow single-character variable name in named redirections {a}<> #D1360 f81734f (master: 4760409)
  • syntax (glob bracket expression): fix a bug of unsupported POSIX brackets #D1402 b7ea892 (master: 6fd9e22)
  • highlight: fix remaininig highlighting of vanishing words #D1421 #D1422 cc5e4d1 (master: 1066653)
  • highlight: fix unhighlighted tilde expansions ~+ (reported by cmplstofB) #D1424 3f7f044 (master: a32962e)

Compatibility

  • msys2: support2 MSYS (motivated by SUCHMOKUO) #D1264 7cf81c0 (master: 47e2863)
    • edit: support \$ in PS1 for MSYS2 #D1265 8f44624 (master: f6f8956)
    • msys2: work around MSYS2 Bash bug of missing CR #D1270 bbe1b61 (master: 71f3498)
  • edit (ble/widget/bracketed-paste): fix error messages on paste_end in older version of Bash (test-util) a80f1d1 (master: b2c7d1c)
  • decode: work around Bash-3.1 bug of declare -f rejecting special characters in function names (test-util) a80f1d1 (master: b2c7d1c)
  • util (ble/variable#get-attr): fix a bug that attributes are not obtained in Bash <= 4.3 (test-util) a80f1d1 (master: b2c7d1c)
  • decode: work around Bash-4.1 bug that locale not applied with LC_CTYPE=C eval command (test-util) a80f1d1 (master: b2c7d1c)
  • decode: fix a bug of broken cmap cache found in ble-0.3 #D1327 366e8c1 (master: 16b56bf)
  • util (strftime): fix a bug not working with -v var option in Bash <= 4.1 (test-util) 4f11463 (master: f1a2818)
  • complete: work around slow compgen -c in Cygwin #D1329 887be6e (master: 5327f5d)
  • edit: work around problems with mc (reported by onelittlehope) #D1392 a2d6099 (master: e97aa07)

Internal

  • global: check isolated identifiers and leak variables #D1246 146c98b (master: 19cc99d)

Patch 0.1.14 (2020-12-02)

02 Dec 14:17
Compare
Choose a tag to compare

Usage

Prerequisites

Bash 3.0+ and basic POSIX utilities are required.

Download ble-0.1.14.tar.xz

https://github.com/akinomyoga/ble.sh/releases/download/v0.1.14/ble-0.1.14.tar.xz

# DOWNLOAD with wget
wget https://github.com/akinomyoga/ble.sh/releases/download/v0.1.14/ble-0.1.14.tar.xz

# DOWNLOAD with curl
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/v0.1.14/ble-0.1.14.tar.xz

Trial & Install

# TRIAL
tar xJf ble-0.1.14.tar.xz
source ble-0.1.14/ble.sh

# INSTALL
tar xJf ble-0.1.14.tar.xz -C ~/.local/share/blesh
# Add the following line near the top of ~/.bashrc
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --noattach
# Add the following line at the end of ~/.bashrc
((_ble_bash)) && ble-attach

Changes

  • edit: preserve PS1 when internal_suppress_bash_output is set #D1344 549f8f5 (master: 6ede0c7)

Fixes

  • fixup ab01ceb 8129816 (v0.2: 51bde60)
  • decode: use BRE instead of ERE for POSIX sed (reported by dylankb) #D1283 1244d86 (master: 2184739)
  • edit: fix a bug that set +H is cancelled on command execution #D1332 ba3687a (master: 02bdf4e)
  • syntax (ble/syntax/parse/shift): fix a bug of shift skip in nested words #D1333 16fb351 (master: 65fbba0)
  • util (ble-stackdump): fix a shift of line numbers #D1337 5d5b86b (master: a14b72f)
  • edit (ble-bind -x): check range of READLINE_{POINT,MARK} #D1339 6909cc0 (master: efe1e81)
  • util (ble/string#to{upper,lower}): work around LC_COLLATE=en_US.utf8 (test-util) #D1341 31476cc (master: 1f6b44e) #D1355 65cab5c (master: 4da6103)
  • util (encoding, keyseq): fix miscelleneous encoding bugs (test-util) 11d8db7 (master: 435bd16)
  • edit: work around WINCH not updating COLUMNS/LINES after ble-reload #D1345 e15c5a6 (master: a190455)
  • syntax: allow single-character variable name in named redirections {a}<> #D1360 6bbed24 (master: 4760409)
  • highlight: fix remaininig highlighting of vanishing words #D1421 #D1422 bf8fdc8 (master: 1066653)

Compatibility

  • global: work around Bash 3.2 bug of array initialization with SOH/DEL #D1238 566f53e (master: defdbd4) #D1241
  • msys2: support2 MSYS (motivated by SUCHMOKUO) #D1264 19a36ea (master: 47e2863)
    • edit: support \$ in PS1 for MSYS2 #D1265 8658738 (master: f6f8956)
    • msys2: work around MSYS2 Bash bug of missing CR #D1270 b72c063 (master: 71f3498)
  • decode: fix a bug of broken cmap cache found in ble-0.3 #D1327 fc6ded3 (master: 16b56bf)
  • util (strftime): fix a bug not working with -v var option in Bash <= 4.1 (test-util) cb2389c (master: f1a2818)
  • complete: work around slow compgen -c in Cygwin #D1329 d6d49cc (master: 5327f5d)
  • edit: work around problems with mc (reported by onelittlehope) #D1392 15111cf (master: e97aa07)

Internal

Release 0.3.2 (2020-01-26) Hotfix

26 Jan 13:42
Compare
Choose a tag to compare

Fixes

  • edit: fix a bug that the shell hangs with source ble.sh --noattach && ble-attach (reported by dylankb) #D1223 ce93c08 896fa3b (master: 59c1ce4 3031007)
  • main: check ~/.config/blesh/init.sh #D1224 8e1ae73 (master: a82f961)
  • main: workaround cygwin uninitialized environment #D1225 #D1226 6aa1732 (master: b9278bc)
  • vi_test: fix a bug that test fails to restore the original state #D1232 d912e69 (master: 4b882fb)
  • decode (ble/builtin/bind): skip checking stdin in parsing the keyseq #D1235 057183c (master: 5f949e8)
  • main (ble-update): fix a bug that the check of make does not work in Bash 3.2 #D1236 840d6d6 (master: 08ced81)
  • global: workaround Bash 3.2 bug of array initialization with SOH/DEL #D1238 #D1241 1f4e2bb (master: defdbd4 1720ec0)