Unclaimed project
Are you a maintainer of ble.sh ? Claim this project to take control of your public changelog and roadmap.
Claim this project Changelog
ble.sh Bash Line Editor―a line editor written in pure Bash with syntax highlighting, auto suggestions, vim modes, etc. for Bash interactive sessions.
© 2026 AnnounceHQ. All rights reserved.
Patch 0.1.15 - ble.sh Release Notes | AnnounceHQ
Back to changelogNew April 3, 2023
Patch 0.1.15 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) 03980f1 (master: f923388)
#D1441
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)