Releases: akinomyoga/ble.sh
Release list
Devel 0.4.0-devel3
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.xzTrial & 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-attachNew features
- decode (
ble-decode-kbd): support various specifications of key sequences#D14390f01cab - edit: support new options
bleopt edit_line_type={logical,graphical}(motivated by 3ximus)#D144240ae242 - complete: support new options
bleopt complete_limit{,_auto}(contributed by timjrd)#D1445b13f114 5504bbc - edit (kill/copy): combine multiple kills and copies (suggested by 3ximus)
#D144366564e1- edit (
{kill,copy}-region-or): fix unconditionally combined kills/copies (reported by 3ximus)#D14471631751
- edit (
- canvas: update emoji database and support
bleopt emoji_version(motivated by endorfina)#D1454d1f8c27- emoji: unify emoji tables of different versions
#D1671af82662
- emoji: unify emoji tables of different versions
- canvas, edit: support
bleopt info_display(suggested by 0neGuyDev)#D145869228fa - prompt: support
bleopt prompt_status_{line,align}andface prompt_status_line#D1462cca1cbc - syntax: properly support case patterns
#D1474#D1475#D147664b55b7 - keymap/vi: add
ble/keymap:vi/script/get-modefor user-defined mode strings#D1488f25a6e8 462918d - prompt: support multiline
prompt_rps1#D15024fa139a - syntax: support tilde expansions in parameter expansions
#D15130506df2 - decode: support
ble-bind -m KEYMAP --cursor DECSCUSR(motivated by jmederosalvarado)#D1514#D1515#D151679d671d- decode: reflect changes after
ble-bind --cursor#D187339efcf9
- decode: reflect changes after
- edit: support
nsearchoptions (motivated by Alyetama, rashil2000, carv-silva)#D15179125795 - syntax: support the deprecated redirection
>& file#D1539b9b0de4 - complete: complete file descriptors and heredoc words after redirections
#D1539b9b0de4 - main: support
blehook ATTACH DETACH,BLE_ONLOAD,BLE_ATTACHED#D1543750ca38 - main: support
ble#D1544750ca38 - main (
ble-update): support package updates andsudoupdates (motivated by huresche, oc1024)#D15480bc2660- main (
ble-update): fix help message (contributed by NoahGorny) 50288bf
- main (
- syntax: support undocumented
${a~}and${a~~}#D15614df29a6 - lib: support
lib/vim-airline(motivated by huresche)#D1565da1d0ff- util (
ble/gdict): refactor#D15697732eed - vim-airline: support
bleopt vim_airline_theme#D158973b037f - prompt: track dependencies and detect changes
#D1590#D1591cf8d949 - prompt: preserve
LINESandCOLUMNSfor custom sequences#D1592040016d - color: fix the face initialiation order for uses in prompts (motivated by jmederosalvarado)
#D1593321371f - prompt (
contrib/prompt-git): support dirty checking#D1601b2713d9 - prompt (
contrib/prompt-git): do not useble/util/idlein Bash 3#D1606959cf27 - util (
bleopt): add new option-Ito reinitialize user settings on reload#D1607959cf27 - vi (vi_cmap): fix wrong prompt calculations by the outdated initial values
#D16532710b23 - vim-airline: measure separator widths and fix layout of status line
#D19991ce0d1a 478c9a1
- util (
- util, color: refactor configuration interfaces (
bleopt,blehook,ble-face)#D1568c94d292- color: support new face setting function
ble-face - util (
bleopt): support option-rand-uand wildcards in option names - util (
blehook): hide internal hooks by default and support option-a - util, color: fix argument analysis of
bleopt,blehook, andble-face(fixup c94d292)#D1571bb53271 - util (
blehook): show explicitly specified internal hooks#D1594f4312df - util (
bleopt): do no select obsoleted options by wildcards#D1595f4312df - util (
bleopt): fix error messages for unknown options#D161066df3e2 - util (
bleopt,bind): fix error message and exit status, respectively#D1640b663cee - util (
blehook): support wildcards#D1861480b7b3
- color: support new face setting function
- progcomp: support quoted commands and better
progcomp_alias#D1581#D1583dbe87c3- progcomp: fix a bug that command names may stray into completer function names
#D16111f2d45f
- progcomp: fix a bug that command names may stray into completer function names
- syntax: highlight quotes of the
\?form#D15845076a03- syntax: recognize escape " in double-quoted strings
#D16414b71449
- syntax: recognize escape " in double-quoted strings
- prompt: support a new backslash sequence
\g{...}#D1609be31391 - complete: add a new option
bleopt complete_limit_auto_menu#D16181829d80 - canvas: support grapheme clusters (motivated by huresche)
#D1619c0d997b- canvas (
ble/util/c2w): useEastAsianWidthandGeneralCategoryto mimicwcwidth#D16459a132b7 - canvas (c2w:auto): work around combining chars applied to the previous line
#D16491cbbecb - canvas (c2w:auto): avoid duplicate requests
#D16491cbbecb a3047f5 - canvas (c2w:auto): send DSR(6) in the internal state
#D1664a3047f5 - canvas (c2w): support
bleopt char_width_mode=musl#D166805b258f#D1672af82662 - canvas (c2w:auto): detect
emacsandmusl#D166805b258f
- canvas (
- rlfunc: support vi word operations in
emacskeymap (requested by SolarAquarion)#D162421d636a - edit: support
TMOUTfor the session timeout#D16310e16dbd - edit: support bash-5.2
READLINE_ARGUMENT#D1638d347fb3 - complete: support
complete [-DI]in old versions of Bash through_DefaultCmD_and_InitialWorD_#D1639925b2cd - rlfunc: support nsearch widgets in
vi_nmapkeymap (requested by cornfeedhobo)#D16519a7c8b1 - prompt: support
bleopt prompt_ruler(motivated by Barbarossa93)#D166605cf638- prompt: fix hanging by a zero-width
prompt_ruler#D16739033f29
- prompt: fix hanging by a zero-width
- edit: support
bleopt canvas_winch_action(requested by Johann-Goncalves-Pereira, guptapriyanshu7)#D16792243e91 - menu (menu-style:desc): improve descriptions (motivated by Shahabaz-Bagwan)
#D16854de1b45 - menu (menu-style:desc): support multicolumns (motivated by Shahabaz-Bagwan)
#D1686231dc39- menu (menu-style:desc): fix not working
bleopt menu_desc_multicolumn_width=#D17272140d1e
- menu (menu-style:desc): fix not working
- term: let DECSCUSR pass through terminal multiplexers (motivated by cmplstofB)
#D1697a3349e4- util: refactor
_ble_term_TERM#D174663fba6b
- util: refactor
- complete: requote for more compact representations on full completions
#D1700a1859b6- complete (requote): requote from optarg/rhs starting point
#D178693c2786
- complete (requote): requote from optarg/rhs starting point
- complete: improve support for
declareand[[ ... ]]#D1701da38404 - complete (menu-style:align): refactor
complete_menu_align => menu_align_{min,max}(motivated by banoris)#D171722a2449 - prompt: support
bleopt prompt_command_changes_layout#D1750e199bee - exec: measure execution times
#D17562b28bec - util: preserve original traps and restore them on unload
#D1775#D1776#D1777398e404- util (trap): fix a bug of restoring original traps
#D18508d918b6
- util (trap): fix a bug of restoring original traps
- progcomp: support
compopt -o ble/no-defaultto suppress default completions#D17897b70a0e - sabbrev: support options
-rand--resetto remove entries#D179029b8be3 - util (blehook): ...
Patch 0.3.4
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.xzTrial & 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-attachblesh-0.3 Fixes
- decode: fix
bindemulation 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)
#D14281c7786e (master: 98fbc1c) - edit: work around the wrong job information of Bash in trap handlers (reported by 3ximus)
#D1435#D1436d40847f (master: bc4735e) - edit (command-help): work around the Bash bug that tempenv vanishes with
builtin eval#D1438cc8ca96 (master: 8379d4a) - global: suppress missing locale errors (reported by 3ximus)
#D1440b52a798 (master: 4d3c595) - edit (sword): fix definition of
sword(shell words)#D14412370bce (master: f923388) - edit (
kill-forward-logical-line): fix a bug not deleting newline at the end of the line#D14432a8a7f6 (master: 09cf7f1) - global: work around bash-4.2 bug of
declare -gA(reported by 0xC0ncord)#D14702f85ed3 (master: 8856a04) - global: fix declaration of associative arrays for
ble-reload(reported by 0xC0ncord)#D1471422de69 (master: 3cae6e4) - util (
ble/util/msleep): fix hang in Cygwin by swithing from/dev/udp/0.0.0.0/80to/dev/zero#D14525ace564 (master: d4d718a) - syntax: fix broken AST with
[[keyword#D14541d48e79 (master: 69658ef) - benchmark (
ble-measure): work around a locale-dependent decimal point ofEPOCHREALTIME(reported by 3ximus)#D1460f3833ad (master: 1aa471b) - util (
ble/util/msleep): work around the bash-4.3 bug ofread -t(reported by 3ximus)#D1468#D146970797cf (master: 4ca9b2e) - bind: work around broken
cmd_xmapafter switching the editing mode#D1478909f461 (master: 8d354c1) - edit: clear graphic rendition on newlines and external commands
#D147959ede5c (master: 18bb2d5) - decode (rlfunc): work around incomplete bytes in keyseq (reported by onelittlehope)
#D1483948a38d (master: 3559658) beb0383 37363be - canvas: fix a glitch that SGR at the end of command line is applied to new lines
#D14986871634 (master: 4bdfdbf) - syntax: fix a bug that
eval() { :; },declare() { :; }are not treated as function definition#D15296c1d295 (master: b429095) - decode: fix a hang on attach failure by cache corruption
#D1531d4b0700 (master: 24ea379) - progcomp: fix non-working
complete -C prog(reported by Archehandoro)#D153547b3ade (master: 026432d) - bind: fix a problem that
bind '"seq":"key"'causes a loop macrobind -s key key(reported by thanosz)#D1536e2a502d (master: ea05fc5) - main: work around
. ble.sh --{test,update,clear-cache}in intereactive sessions#D1555500915f (master: bbc2a90) - main: fix reloading after ble-update (fixup 500915f (master: bbc2a90)) (fixed by oc1024)
#D15589372670 - main: fix exit status for
bash ble.sh --test(fixup 500915f (master: bbc2a90))#D1558641238a - main: work around sourcing
ble.shinside subshells#D1554500915f (master: bbc2a90) - global: use a better workaround of bash-4.2
declare -gAby separating assignment#D156740827ef (master: 2408a20) - util: work around bash-3.0 bug
"${scal[@]/xxx}"#D15707e10cf4 (master: 24f79da) - syntax: fix a bug that argument completion is attempted in nested commands (reported by huresche)
#D15796987ae8 (master: 301d40f) - edit (brackated-paste): fix incomplete
CR => LFconversion (reported by alborotogarcia)#D15872651c8e (master: 8d6da16) - main (adjust-bash-options): adjust
LC_COLLATE=C#D158894cc9d2 (master: e87ac21) - highlight (
layer:region): fix blocked lower-layer changes without selection changes#D1596d40d42a (master: 5ede3c6) - complete (
auto-menu): fix sleep loops by clock/sclock difference#D15970abc15b (master: 53dd018) - util: work around the Bash 3 bug of array assignments with
^Aand^?in Bash 3.2#D16140eac4df (master: b9f7611) - benchmark (
ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup bbc2a90)#D1615bc3cdab (master: a034c91) - decode, canvas, etc.: explicitly treat CSI arguments as decimal numbers (reported by GorrillaRibs)
#D162597bce68 (master: c6473b7) 2ea48d7 - edit: fix a bug that
command-helpdoesn't work#D1635c375fbb (master: 0f6a083) - complete: fix a task scheduling bug of referencing two different clocks (reported by rashil2000)
#D1636df9f932 (master: fea5f5b) - canvas: update prompt trace on
char_width_modechange (reported by Barbarossa93)#D164200f9ce8 (master: 68ee111) - decode: fix a bug that the characters input while initialization are delayed
#D1670734bd50 (master: 430f449) - util (
ble/util/readfile): fix a bug of always exiting with 1 inbash <= 3.2(reported by laoshaw)#D167851d244a (master: 61705bf) - trace: fix wrong positioning of the ellipses on overflow
#D1684dea87c7 (master: b90ac78) - mandb: generate completions of options also for the empty word
#D1689dea87c7 (master: b90ac78) - complete: do not generate keywords for quoted command names
#D16915b1e5be (master: 60d244f) - menu (menu-style:align): fix the failure of delaying
ble/canvas/traceon items (motivated by banoris)#D17103d56593 (master: acc9661) - complete: fix empty completions with
FIGNORE(reported by seanfarley)#D171149e75ee (master: 144ea5d) - main: fix the message of owner errors of cache directories (reported by zim0369)
#D171202aeb4a (master: b547a41) - util (
ble/string#escape-for-bash-specialchars): fix escaping of TAB#D1713accf8f3 (master: 7db3d2b) - util (visible-bell): erase visible-bell before running external commands
#D172372a11ae (master: 0da0c1c) - util (
ble/function): work aroundshopt -u extglob#D17253819e83 (master: 952c388) - syntax: fix uninitialized syntax-highlighting in bash-3.2
#D17317bd03a5 (master: e3f5bf7) - main: fix the workaround for
set -euand refactor#D1743a949af0 (master: 6a946f0) - progcomp: retry completions on
$? == 124also for non-default completions (reported by SuperSandro2000)#D1759e217932 (master: 82b9c01) - util (
ble/util/import): work around filenames with bash special characters#D17634179e3d (master: b27f758) - edit: fix the restore failure of
PS1andPROMPT_COMMANDonble-detach#D17844f4c924 (master: b9fdaab) - complete: do not attempt an independent rhs completion for arguments (reported by rsteube)
#D17877bf32ca (master: f8bbe2c) - history: work around possible dirty prefix
*in the history output#D180884184ce (master: 64a740d) - util(
ble/util/eval-pathname-expansion): fix restoring shopt options in bash-4.0#D1825d3b3f7b (master: 736f4da) - decode: fix the workaround for
set -ewith--prompt=attach#D183251cb735 (master: 5111323) - decode (
encoding:C): fix initialization for isolated ESC#D1839aaa74b5 (master: c3bba5b) - main. util: fix problems of readlink etc. found by test in macOS (reported by aiotter)
#D1849a1adc7f (master: fa955c1)#D1855a22e145 - progcomp: fix a bug that
COMP_WORDBREAKSis ignored#D1872b338066 (master: 4d2dd35) - global: quote
return $?#D18844f14f7a (master: 801d14a) - main: fix adjustments of bash options (reported by rashil2000)
#D18957bd25c9 (master: 138c476) - decode: fix a bug that the tab completion do not work with bash-4.4 and lower
#D19286351e7f (master: 7da9bce) - bind: fix M-C-@, C-x C-@, and M-C-x (
bash-4.2 -o emacs)#D192002f45f3 (master: a410b03) - complete: fix non-working ambiguous path completion with
..and.in the path#D1930fdb76e9 (master: 632e90a) - main (ble-reload): fix failure by non-existent rcfile
#D193158de996 (master: b7ae2fa) - util: fix ble/util/clock in bash-4.2 [main: fix the timestamp in the session ID in bash-4.2]
#D19549a24b1e (master: 651c70c) - edit (
ble/textarea#render): fix interleaving outputs to_ble_util_bufferandDRAW_BUFF#D198762519a7 (master: 6d61388) - keymap/vi (
operator:filter): do not append newline at the end of line#D19948207d4f (master: bce2033) - keymap/vi (
expand-range-for-linewise-operator): fix the end point being not extended#D19948207d4f (master: bce2033) - syntax: fix unrecognized asignment
echo arr[i]+=rhs[sabbrev: apply sabbrev to right-hand sides of variable assignments]#D2007948f50f (master: 41faa49)
Changes
- syntax: exclude
\ + LFat the word beginning from words (motivated by cmplstofB)#D14311b00fd2 (master: 67e62d6) - edit: preserve the state of
READLINE_{LINE,POINT,MARK}#D1437cc8ca96 (master: 8379d4a) - edit: change default behavior of C-w and M-w to operate on backward words
#D1448b1fd84a (master: 47a3301) - edit (
ble/builtin/read): cancel by C-d on an empty line#D14734fae77a (master: ecb8888) - syntax: change syntax context after
time ;and! ;for Bash 4.4#D1477e55e3df (master: 4628370) - decode (rlfunc): update mapping
vi-replaceinimapandvi-editing-modeinnmap(reported by onelittlehope)#D14843a2d0fe (master: f2ca811) - prompt: invali...
Patch 0.2.7
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.xzTrial & 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-attachblesh-0.2 fixes
- global: fix
ble/{is- => util/is}function5e82ca7 - global: pick fixes and changes from ble-0.1 backports 013eb1c
- complete: fix up 4df15e1 f02bd2a
- bump 0.2.7 1118c80
Fixes
- edit: work around the wrong job information of Bash in trap handlers (reported by 3ximus)
#D1435#D1436795a647 (master: bc4735e) - edit (sword): fix definition of
sword(shell words)#D14415e73cf6 (master: f923388) - edit (
kill-forward-logical-line): fix a bug not deleting newline at the end of the line#D144303787a2 (master: 09cf7f1) - global: work around bash-4.2 bug of
declare -gA(reported by 0xC0ncord)#D1470a2ace44 (master: 8856a04) - global: fix declaration of associative arrays for
ble-reload(reported by 0xC0ncord)#D1471533eba7 (master: 3cae6e4) - util (
ble/util/msleep): fix hang in Cygwin by swithing from/dev/udp/0.0.0.0/80to/dev/zero#D145246992e7 (master: d4d718a) - syntax: fix broken AST with
[[keyword#D14540482bf6 (master: 69658ef) - util (
ble/util/msleep): work around the bash-4.3 bug ofread -t(reported by 3ximus)#D1468#D1469fad78ea (master: 4ca9b2e) - bind: work around broken
cmd_xmapafter switching the editing mode#D147897ca117 (master: 8d354c1) - edit: clear graphic rendition on newlines and external commands
#D1479759b96d (master: 18bb2d5) - canvas: fix a glitch that SGR at the end of command line is applied to new lines
#D1498a6ac121 (master: 4bdfdbf) - syntax: fix a bug that
eval() { :; },declare() { :; }are not treated as function definition#D1529a4cda9c (master: b429095) - decode: fix a hang on attach failure by cache corruption
#D1531a4c13ab (master: 24ea379) - benchmark (
ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup 8eb493a (master: bbc2a90))#D1615a034c91 - main: work around
. ble.sh --{test,update,clear-cache}in intereactive sessions#D15558eb493a (master: bbc2a90) - main: fix reloading after ble-update (fixup 8eb493a (master: bbc2a90)) (fixed by oc1024)
#D15589372670 - main: fix exit status for
bash ble.sh --test(fixup 8eb493a (master: bbc2a90))#D1558641238a - main: work around sourcing
ble.shinside subshells#D15548eb493a (master: bbc2a90) - global: use a better workaround of bash-4.2
declare -gAby separating assignment#D15670b7de99 (master: 2408a20) - edit (brackated-paste): fix incomplete
CR => LFconversion (reported by alborotogarcia)#D1587ac738bb (master: 8d6da16) - highlight (
layer:region): fix blocked lower-layer changes without selection changes#D1596650140f (master: 5ede3c6) - util: work around the Bash 3 bug of array assignments with
^Aand^?in Bash 3.2#D16140ed7f6d (master: b9f7611) - benchmark (
ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup bbc2a90)#D161528e8dfe (master: a034c91) - decode, canvas, etc.: explicitly treat CSI arguments as decimal numbers (reported by GorrillaRibs)
#D1625c9e4198 (master: c6473b7) 2ea48d7 - edit: fix a bug that
command-helpdoesn't work#D1635b992bb5 (master: 0f6a083) - canvas: update prompt trace on
char_width_modechange (reported by Barbarossa93)#D164256b77a8 (master: 68ee111) - util (
ble/util/readfile): fix a bug of always exiting with 1 inbash <= 3.2(reported by laoshaw)#D16785b843bb (master: 61705bf) - complete: do not generate keywords for quoted command names
#D16917211b1e (master: 60d244f) - complete: fix empty completions with
FIGNORE(reported by seanfarley)#D171190f388a (master: 144ea5d) - main: fix the message of owner errors of cache directories (reported by zim0369)
#D1712d2bf86c (master: b547a41) - syntax: fix uninitialized syntax-highlighting in bash-3.2
#D17316aa12c8 (master: e3f5bf7) - progcomp: retry completions on
$? == 124also for non-default completions (reported by SuperSandro2000)#D1759c641fb1 (master: 82b9c01) - util (
ble/util/import): work around filenames with bash special characters#D17637da5f04 (master: b27f758) - edit: fix the restore failure of
PS1andPROMPT_COMMANDonble-detach#D178447dfdd9 (master: b9fdaab) - history: work around possible dirty prefix
*in the history output#D1808cc14f59 (master: 64a740d) - decode: fix the workaround for
set -ewith--prompt=attach#D1832958aae6 (master: 5111323) - main. util: fix problems of readlink etc. found by test in macOS (reported by aiotter)
#D18498f0acf3 (master: fa955c1)#D1855a22e145 - global: quote
return $?#D18849e10b54 (master: 801d14a) - bind: fix M-C-@, C-x C-@, and M-C-x (
bash-4.2 -o emacs)#D1920342826f (master: a410b03) - keymap/vi (
operator:filter): do not append newline at the end of line#D19942a8e746 (master: bce2033) - keymap/vi (
expand-range-for-linewise-operator): fix the end point being not extended#D19942a8e746 (master: bce2033) - syntax: fix unrecognized asignment
echo arr[i]+=rhs[sabbrev: apply sabbrev to right-hand sides of variable assignments]#D20064ed4fd4 (master: 41faa49) - syntax: fix unrecognized variable assignment of the form
echo arr[i]+=rhs#D20074ed4fd4 (master: 41faa49)
Changes
- syntax: exclude
\ + LFat the word beginning from words (motivated by cmplstofB)#D14316044a48 (master: 67e62d6) - edit: change default behavior of C-w and M-w to operate on backward words
#D1448787ff57 (master: 47a3301) - edit: the widgets
{kill,copy,delete}-region-ornow receives widgets as arguments#D10218f48aff (master: bbbd155) - edit (
ble/builtin/read): cancel by C-d on an empty line#D1473551bde3 (master: ecb8888) - syntax: change syntax context after
time ;and! ;for Bash 4.4#D14770b66cf4 (master: 4628370) - prompt: invalidate prompt and textarea on prompt setting changes
#D149254d310d (master: 1f55913) - prompt: adjust behavior of
LINENOand prompt sequence\#(reported by tycho-kirchner)#D15424b63b16 (master: 8b0257e) - main: show notifications against debug versions of Bash
#D1612608ac2a (master: 8f974aa) - prompt: do not evaluate
PROMPT_COMMANDfor subprompts#D16545c0cfde (master: 08e903e) - main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo)
#D16762587bb0 (master: 0525528) 88e2df5 - main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo)
#D16760525528 5f63856 (master: 88e2df5) - util (
ble/util/buffer): hide cursor in rendering#D17584ecbbdc (master: e332dc5) - edit (
ble-detach): prepend a space tostty saneforHISTIGNORE=' *'#D1796bd90371 (master: 26b532e) - history: disable the history file when
HISTFILEis empty#D1836d97ca10 (master: 9549e83) - keymap/vi (
decompose-meta): translate S-a to A#D1988eaf66c7 (master: 600e845) - term (
_ble_term_TERM): detect konsole#D1988eaf66c7 (master: 600e845) ed53858 - complete (
source:argument): fallback to rhs completion also forname+=rhs#D20064ed4fd4 (master: 41faa49)
Compatibility
- highlight: fix a problem that the attribute of the last character is applied till EOL
#D139336f9d80 (master: 2ddb1ba)#D1395ef09932 - highlight: fix a problem that the attribute of the last character is applied till EOL
#D13932ddb1ba#D13956bcb405 (master: ef09932) - global: work around empty
vi_imapcache bytmux-resurrect#D1562d7130d5 (master: 560160b) - main: work around
set -Bandset -k#D16283c97ae8 (master: a860769) - cmap: add
st-specific escape sequences for cursor keys#D1633bf46e34 (master: acfb879) - cmap: distinguish find/select from home/end for openSUSE
inputrc.keys(reported by cornfeedhobo)#D1648ad67555 (master: c4d28f4) - cmap: freeze the internal codes of find/select and kitty special keys
#D1674f41b800 (master: fdfe62a) - decode: work around the overwritten builtin
set(reported by eadmaster)#D168093ae08d (master: a6b4e2c) - complete: work around the variable leaks by
virshcompletion fromlibvirt(reported by telometto)#D1682ee2ac07 (master: f985b9a) - stty: do not remove keydefs for C-u, C-v, C-w, and C-? (reported by laoshaw)
#D1683c01487b (master: 82f74f0) - main: work around
XDG_RUNTIME_DIRof a different user bysu(reported by zim0369)#D1712e5501a3 (master: 8d37048) - main (
ble/util/readlink): work around non-standard or missingreadlink(motivated by peterzky)#D1720d785f5d (master: a41279e) - global: work around the arithmetic syntax error of
10#in Bash-5.1#D17342b55aa1 (master: 7545ea3) - global: adjust implementations for Bash 5.2
patsub_replacement#D1738359a389 (master: 4590997) - main: check
/dev/ttyon startup (reported by andychu)#D1749...
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.xzTrial & 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-attachblesh-0.1 fixes
Fixes
- edit (sword): fix definition of
sword(shell words)#D144103980f1 (master: f923388) - bind: work around broken
cmd_xmapafter switching the editing mode#D1478847e602 (master: 8d354c1) - benchmark (
ble-measure): fix a bug that the result is always 0 in Bash 3 and 4 (fixup 4759768 (master: bbc2a90))#D1615a034c91 - main: work around
. ble.sh --{test,update,clear-cache}in intereactive sessions#D15554759768 (master: bbc2a90) - main: fix reloading after ble-update (fixup 4759768 (master: bbc2a90)) (fixed by oc1024)
#D15589372670 - main: fix exit status for
bash ble.sh --test(fixup 4759768 (master: bbc2a90))#D1558641238a - main: work around sourcing
ble.shinside subshells#D15544759768 (master: bbc2a90) - util: work around the Bash 3 bug of array assignments with
^Aand^?in Bash 3.2#D16149648bd4 (master: b9f7611) - decode, canvas, etc.: explicitly treat CSI arguments as decimal numbers (reported by GorrillaRibs)
#D162540a0ec9 (master: c6473b7) 2ea48d7 - edit: fix a bug that
command-helpdoesn't work#D1635c99e2f1 (master: 0f6a083) - canvas: update prompt trace on
char_width_modechange (reported by Barbarossa93)#D16425b22cd6 (master: 68ee111) - complete: do not generate keywords for quoted command names
#D1691cd75f39 (master: 60d244f) - progcomp: retry completions on
$? == 124also for non-default completions (reported by SuperSandro2000)#D1759a66b547 (master: 82b9c01) - edit: fix the restore failure of
PS1andPROMPT_COMMANDonble-detach#D1784a0f6594 (master: b9fdaab) - history: work around possible dirty prefix
*in the history output#D18080ed2ffb (master: 64a740d) - main. util: fix problems of readlink etc. found by test in macOS (reported by aiotter)
#D18491dc5938 (master: fa955c1)#D1855a22e145 - global: quote
return $?#D1884c2ba90b (master: 801d14a) - bind: fix M-C-@, C-x C-@, and M-C-x (
bash-4.2 -o emacs)#D1920de577dc (master: a410b03)
Changes
- syntax: exclude
\ + LFat the word beginning from words (motivated by cmplstofB)#D143169156f1 (master: 67e62d6) - edit: change default behavior of C-w and M-w to operate on backward words
#D14480a07c13 (master: 47a3301) - edit: the widgets
{kill,copy,delete}-region-ornow receives widgets as arguments#D1021ec16708 (master: bbbd155) - main: show notifications against debug versions of Bash
#D16128f989e4 (master: 8f974aa) - main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo)
#D16762a045d8 (master: 0525528) 88e2df5 - main: suppress non-interactive warnings from manually sourced startup files (reported by andreclerigo)
#D16760525528 4ef844e (master: 88e2df5) - util (
ble/util/buffer): hide cursor in rendering#D1758444abff (master: e332dc5) - edit (
ble-detach): prepend a space tostty saneforHISTIGNORE=' *'#D1796acb7c08 (master: 26b532e) - history: disable the history file when
HISTFILEis empty#D1836a79095a (master: 9549e83)
Compatibility
- global: work around empty
vi_imapcache bytmux-resurrect#D1562b0cc0a3 (master: 560160b) - cmap: add
st-specific escape sequences for cursor keys#D1633ae298f1 (master: acfb879) - cmap: distinguish find/select from home/end for openSUSE
inputrc.keys(reported by cornfeedhobo)#D1648603cf41 (master: c4d28f4) - cmap: freeze the internal codes of find/select and kitty special keys
#D167466263c4 (master: fdfe62a) - decode: work around the overwritten builtin
set(reported by eadmaster)#D168043dcb66 (master: a6b4e2c) - complete: work around the variable leaks by
virshcompletion fromlibvirt(reported by telometto)#D1682d13ce5b (master: f985b9a) - stty: do not remove keydefs for C-u, C-v, C-w, and C-? (reported by laoshaw)
#D16836335dc2 (master: 82f74f0) - main (
ble/util/readlink): work around non-standard or missingreadlink(motivated by peterzky)#D172094137b7 (master: a41279e) - global: work around the arithmetic syntax error of
10#in Bash-5.1#D17347c2463e (master: 7545ea3) - global: adjust implementations for Bash 5.2
patsub_replacement#D1738f1599ee (master: 4590997) - main: check
/dev/ttyon startup (reported by andychu)#D174928e9c44 (master: 711c69f) - global: work around
shopt -s compat42#D175459075cc (master: a75bb25) - global: identify bash-4.2 bug that internal quoting of
${v/%$empty/"$rep"}remains#D175359075cc (master: a75bb25) - prompt: fix a bug of
ble/prompt/printredundantly quoting$#D175259075cc (master: a75bb25) - global: work around
compat42quoting of"${v/pat/"$rep"}"#D175159075cc (master: a75bb25) - util: add identification of Windows Terminal
wt#D1758444abff (master: e332dc5) - global: work around bash-3.0 bug that single quotes remains for
"${v-$''}"#D1774d0dc13e (master: 9b96578) - highlight: fix a problem that the attribute of the last character is applied till EOL
#D13932ddb1ba#D13958c33557 (master: ef09932) - main: resolve empty
HOSTNAME[addhistdb]#D1925e6cc6c3 (master: 44d9e10) - main: warn empty
LANG[main: support an option--inputrc={diff,all,user,none}]#D19262bd1544 (master: 92f2006) - term (
terminology): work around terminal glitches#D1946c5c3bc9 (master: 9a1b4f9) - edit: restore
PS1while processingbind -x(reported by adoyle-h)#D202494db09b (master: 2eadcd5)
Optimization
- prompt: fix not properly set
$?in${PS1@P}evaluation (reported by nihilismus)#D1644a7b5c4b (master: 521aff9)
Internal changes and fixes
- main: include hostname in local runtime directory
#D14441a5e90a (master: 6494836) - global: fix status check for read timeout
#D1467b56d638 (master: e886883) - util, etc: ensure each function to work with arbitrary
IFS#D1490#D14917228fd0 (master: 5f9adfe) - util: fix leak variables
buff,trap,{x,y}{1,2}#D1572de71ada (master: 5967d6c) - make: add fallback Makefile for BSD make
#D18052cb758f (master: e5d8d00) - util, decode, vi: fix leak variables
#D1933a2197a6 (master: 8d5cab8) - syntax: fix code formatting [histdb: support auto-complete source
histdb-word]#D1938492349f (master: 00cae74)
Test
nightly 2026-08-18 20:15:40
Usage
Prerequisites
Bash 3.0+ and basic POSIX utilities are required.
Download ble-nightly.tar.xz (2026-08-18 20:15:40)
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-20260818+63c23e9.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-20260818+63c23e9.tar.xz
# DOWNLOAD with curl (this specific nightly build)
curl -LO https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly-20260818+63c23e9.tar.xzTrial & 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 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 can be removed.Note
Old versions: If you try to install ble-nightly-20240223+8f0dfe9 or an older version, please directly copy or rename the extracted directory to ~/.local/share/blesh. The option --install is not implemented.
Release 0.4.0-devel2 (2020-12-02)
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.xzTrial & 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-attachNew features
- complete: support
bleopt complete_auto_wordbreaks(suggestion by dylankb)#D1219c294e31 - main: check
~/.config/blesh/init.sh#D1224a82f961 - progcolor: support programmable highlighting
#D12180770234#D12449cb3583#D12458e8a296#D1247154f638#D1269fa0036c - decode/kbd: support U+XXXX, @ESC and @NUL for keynames
#D1251441117c ef23ad1 - syntax: support
coproc#D12527ff68d2 - vi/nmap: support readline widgets for M-left, M-right, C-delete, # and &
#D1258846e0be - complete: add
compopt -o quote/defaultforfzf(motivated by dylankb)#D127558e1be4 - util (
ble-import): support an option-d(--delay)#D12859673e4e - syntax: support parameter expansion of the form
${var/#pat},${var/%pat}#D1286e2f4809 - edit: support
bleopt editor line_limit_{type,length} history_limit_length#D12952f9a000 - edit: support widgets
{vi,emacs}-editing-mode#D13010c6c76e - syntax: allow unquoted
[!and[^insimple-word(reported by cmplstofB)#D13031efe833 - 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_MARKandPROMPT_COMMANDS#D1328e97a858#D1338657bea5- edit, main: support array PROMPT_COMMAND in bash-5.1
#D1380b852a4f
- edit, main: support array PROMPT_COMMAND in bash-5.1
- syntax: support confusing parameter expansions like
${#@}, etc.#D1330b7b42eb - contrib: add contrib for user settings
#D1335f290115 - syntax: support
${var@UuLK}in Bash 5.1#D133604da4dd - main: add an option
--test#D13401410c72 - util (
ble/builtin/trap): supportreturninINT/EXIT/WINCH#D1347#D13483865488 - history: support timestamp (reported by rux616)
#D13514bcbd71#D1356350bb15#D13641d8adf9 - edit: support Bash 4.4
PS0#D135723a1ac5 - vi: support
bleopt keymap_vi_mode_{update_prompt,show,name_*}(suggested by Dave-Elec)#D136576be6f1 - prompt: support prompt sequence
\q{...}#D136576be6f1 - edit: support
bind 'set show-mode-in-prompt'#D136576be6f1 - prompt: support
bleopt prompt_{{ps1,rps1}{_final,_transient}}(suggested by Dave-Elec)#D136606381c9 - edit: support Bash 5.1 widgets
#D1368e747ee3 - color: support
TERM=*-direct#D13690d38897#D1370f7dc477 - complete: support
bleopt complete_auto_menu#D137377bfabd- complete: fix a problem of frequent bells with auto-menu activated
#D13813b1d8ac
- complete: fix a problem of frequent bells with auto-menu activated
- complete: support
bleopt complete_menu_maxlines#D13758e81cd7 - prompt: support
_ble_prompt_update#D13760fa8739 - prompt: support
bleopt prompt_{xterm_title,screen_title,status_line}#D13785c3f6fe- prompt: check
TERMfor prompt window titles when_ble_term_TERMis unavailable#D13883c88869
- prompt: check
- syntax: support options
bleopt highlight_{syntax,filename,vartype}to turn off highlighting (requested by pjmp)#D13790116f8b - complete: support
shopt progcomp_alias#D1397d68afa5 - complete: generate completions of options based on man pages
#D14058183455- complete (mandb): fix a bug that
bleopt complete_menu_styleis globally changed#D1412b91fd10
- complete (mandb): fix a bug that
- highlight: support colon separated lists of paths
#D14092f40422- highlight: fix a bug that non-simple words are always highlighted as
syntax_error(reported by cmplstofB)#D141146e2ac6 - highlight: fix a bug that words are sometimes unhighlighted
#D14184395484 - highlight: fix a bug that non-existent directories are not highlighted in the command name context
#D14194395484
- highlight: fix a bug that non-simple words are always highlighted as
- highlight: support options
#D14102f40422
Changes
- highlight: highlight symlink directories as symlinks
#D124925e8a72 - auto-complete: bind
insert-on-endtoC-e#D125090b45eb - edit (
widget/shell-expand-line): not quote expanded results by default#D1255a9b7810 - decode: refactor
- decode: delay bind until keymap initialization
#D12580beac33 - decode: read user settings from
bind -Xsp#D1259eef14d0 - decode: fix a bug of
ble-bindwith uninitialized cmap#D12605d98210 - decode: fix error messages of BSD
sedrejecting unencoded bytes frombind -p(reported by dylankb)#D12770cc9160
- decode: delay bind until keymap initialization
- edit: provide proper
$BASH_COMMANDand$_for PS1, PROMPT_COMMAND, PRECMD, etc.#D12767db48dc - edit (quoted-insert): insert literal key sequence
#D1291420c933 - decode: support
decode_abort_charformodifyOtherKeys#D1293ad98416 - edit (edit-and-execute): disable highlighting of old command line content
#D12952f9a000 - util (
bleopt): fail when a specified bleopt variable does not exist (test-util) 5966f22 - builtin: let redefined builtins return 2 for
--help#D1323731896c - edit: preserve
PS1wheninternal_suppress_bash_outputis set#D13446ede0c7 - complete: complete param expan in additional contexts
#D13583683305 - main: reload on ble-update when ble.sh is already updated
#D1359a441d4d - main (
ble-update): clone github repository if the original repository is not found#D13636e3b3b5 - util (bleopt): change output format d4b12cd
- syntax: allow
time -- commandfor Bash 5.1#D136700d0e93 - menu: preserve columns with
{forward,backward}-line#D13963d5a341 - syntax: rename
ble_debugtobleopt syntax_debug#D13983cda58b - syntax: change a style of buffer contents in
bleopt syntax_debug#D13993cda58b - complete: change to generate filenames starting from
.by default#D1425987436d
Fix
- util (ble/builtin/trap): fix argument analysis for the form
trap INT(reported by dylankb)#D1221db8b0c2 - main: fix an error message on ristricted shells
#D1220b726225 - edit: fix a bug that the shell hangs with
source ble.sh --noattach && ble-attach(reported by dylankb)#D122359c1ce4 3031007 - edit: fix a bug that the textarea state is not properly saved (reported by cmplstofB)
#D122706ae2b1 - syntax: support hexadecimal literals for arithmetic expression (reported by cmplstofB)
#D122890e4f35 - history: fix a bug that history append does not work with
set -C(reported by cmplstofB)#D1229604bb8b - decode (
ble/builtin/bind): fix widget mapping fordefault_keymap=safe#D1234750a9f5 - main (ble-update): fix a bug that the check of
makedoes not work in Bash 3.2#D123608ced81 - syntax: fix a infinite loop for variable assignments and parameter expansions
#D1239327661f - complete: clear menu on history move
#D124806cc7de - syntax: fix a bug that arguments of
evalare not highlighted#D12545046d14 - decode: fix error message
command=${[key]-}for mouse input#D126309bb274 - [ble-0.3] reload: fix a bug that the state is broken by
ble-reload#D1266f2f30d1 - decode (
ble/builtin/bind): remove comment from bind argument#D1267880bb2c - decode: use
BREinstead ofEREforPOSIX sed(reported by dylankb)#D12832184739 - decode: fix strange behaviors after
fzf(convert DEL to C-?)#D1281744c8e8 - edit: work around Bash rebinding on
TERMchange#D1287ac7ab55 7a99bf3 - term: work around terminfo/termcap entry collisions in
tput(reported by killermoehre)#D1289f8c54ef - complete: clear menu on discard-line (reported by animecyc)
#D1290fb794b3#D131599880ef - vi (vi-command/nth-column): fix a bug in arithmetic expansion (reported by andychu)
#D1292da6cc47 - complete: fix a bug that insert-word does not for with ambiguous candidates
#D12952f9a000 - complete: fix a bug that menu-filter is only partially turned off by
complete_menu_filter#D1298b3654e2 - decode: fix error messages for unsupported readline functions
#D130191bdb64 - global: work around
shopt -s assoc_expand_once#D130531908e1 - global: work around
TMOUTforbuiltin read#D13061c22a9d - syntax: fix failglob errors of heredoc...
Patch 0.3.3 (2020-12-02)
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.xzTrial & 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-attachNew features
- syntax: allow unquoted
[!and[^insimple-word(reported by cmplstofB)#D13034bf8b86 (master: 1efe833)
Changes
- auto-complete: bind
insert-on-endtoC-e#D12501070aba (master: 90b45eb) - util (
bleopt): fail when a specified bleopt variable does not exist (test-util) 0a51044 (master: 5966f22) - edit: preserve
PS1wheninternal_suppress_bash_outputis set#D1344537acf2 (master: 6ede0c7) - complete: change to generate filenames starting from
.by default#D1425e26867d (master: 987436d)
Fix
- [ble-0.3] reload: fix a bug that the state is broken by
ble-reload#D1266f2f30d1 (master: N/A) - decode (
ble/builtin/bind): remove comment from bind argument#D126782f4aaa (master: 880bb2c) - complete: clear menu on history move
#D124804fddd6 (master: 06cc7de) - syntax: fix a bug that arguments of
evalare not highlighted#D125438a7fc7 (master: 5046d14) - decode: use
BREinstead ofEREforPOSIX sed(reported by dylankb)#D1283a577ec4 (master: 2184739) - vi (vi-command/nth-column): fix a bug in arithmetic expansion (reported by andychu)
#D1292ea2fa8e (master: da6cc47) - complete: fix a bug that menu-filter is only partially turned off by
complete_menu_filter#D12987278e27 (master: b3654e2) - syntax: fix failglob errors of heredocs of the form
<<$(echo A)#D13085ba9400 (master: 3212fd2) - util (
bleopt): fix a bug that a new setting is not defined withname:=(test-util)#D1312f2dbad0 (master: c757b92) - util (
ble/util/{save,restore}-vars): fix a bug thatnameandprefixcannot 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*#D1321b58f006 (master: 557b774) - edit: fix a bug that
set +His cancelled on command execution#D1332bc454a2 (master: 02bdf4e) - syntax (
ble/syntax/parse/shift): fix a bug of shift skip in nested words#D133378e2170 (master: 65fbba0) - util (
ble-stackdump): fix a shift of line numbers#D13371505a5b (master: a14b72f) - edit (
ble-bind -x): check range ofREADLINE_{POINT,MARK}#D13391bc1ff6 (master: efe1e81) - main: fix a bug that
~/.config/blesh/init.shis not detected (GitHub #53 by rux616) 9f74da6 (master: 61f9e10) - util (
ble/string#to{upper,lower}): work aroundLC_COLLATE=en_US.utf8(test-util)#D13415d9aa64 (master: 1f6b44e)#D13554e67719 (master: 4da6103) - util (encoding, keyseq): fix miscelleneous encoding bugs (test-util) 6d72d2a (master: 435bd16)
- edit: work around
WINCHnot updatingCOLUMNS/LINESafterble-reload#D1345e2d54a2 (master: a190455) - complete: initialize
bleopt complete_menu_styleoptions beforecomplete_loadhook (reported by rux616)#D135215ba24f (master: 8a9a386) - main: fix problems caused by multiple
source ble.shin bashrc#D1354983e8a9 (master: 5476933) - syntax: allow single-character variable name in named redirections
{a}<>#D136052de342 (master: 4760409) - decode (
bind): work aroundshopt -s nocasematch(reported by tigger04)#D1372b34ad58 (master: 855cacf) - prompt: fix a bug that rprompt is not cleared when
bleopt prompt_rps1is reset#D1377c736bd5 (master: 1904b1d) - complete: fix a bug of duplicated completions of filenames with spaces
#D1390048f17e (master: 98576c7) - complete: fix bugs that quotation disappears on ambiguous completion
#D1387048f17e (master: 98576c7) - complete: fix a bug that progcomp retry by 124 caused the default completion again
#D1386048f17e (master: 98576c7) - syntax (tree-enumerate): fix unmodified
wtypeof reconstructed words at the end#D1385048f17e (master: 98576c7) - complete: fix superlinear performace of ambiguous matching globpat
#D1389bd4657a (master: 71afaba) - prompt: fix a bug that lonig rps1 is not correctly turned off
#D14019266961 (master: d84bcd8) - prompt: fix extra spaces on line folding before double width character
#D14009266961 (master: d84bcd8) - syntax (glob bracket expression): fix a bug of unsupported POSIX brackets
#D1402e1eca65 (master: 6fd9e22) - syntax (
ble/syntax:bash/simple-word/evaluate-path-spec): fix a bug of unrecognized[!...]and[^...]#D140350fcd03 (master: 0b842f5) - highlight: fix remaininig highlighting of vanishing words
#D1421#D14220f85719 (master: 1066653) - highlight: fix unhighlighted tilde expansions
~+(reported by cmplstofB)#D14241f9abf6 (master: a32962e) - complete: fix a problem that the user setting
dotglobis changed#D1425e26867d (master: 987436d) - complete: fix a problem of redundant unmatched ambiguous part with tilde expansions in the common prefix
#D141720cb6af (master: 5777d7f) - complete (
source:file): fix a bug that tilde expansion candidates are always filtered out#D141620cb6af (master: 5777d7f) - complete (
cd): fix duplicate candidates byCDPATH(reported by Lennart00 atoh-my-bash)#D141520cb6af (master: 5777d7f)
Compatibility
- msys2: support2 MSYS (motivated by SUCHMOKUO)
#D1264500e051 (master: 47e2863) - edit (
ble/widget/bracketed-paste): fix error messages onpaste_endin older version of Bash (test-util) 1631069 (master: b2c7d1c) - decode: work around Bash-3.1 bug of
declare -frejecting 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##D1322b58f006 (master: 557b774) - decode: work around Bash-4.1 arithmetic bug of array subscripts evaluated in discarded branches
#D1320b58f006 (master: 557b774) - decode: fix a bug of broken cmap cache found in ble-0.3
#D13274b15993 (master: 16b56bf) - util (strftime): fix a bug not working with
-v varoption in Bash <= 4.1 (test-util) 360211c (master: f1a2818) - complete: work around slow
compgen -cin Cygwin#D1329185a443 (master: 5327f5d) - edit: work around problems with
mc(reported by onelittlehope)#D13924d534b4 (master: e97aa07)
Internal
Patch 0.2.6 (2020-12-02)
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.xzTrial & 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-attachNew features
- syntax: allow unquoted
[!and[^insimple-word(reported by cmplstofB)#D13035cff40f (master: 1efe833)
Changes
Fixes
- decode: use
BREinstead ofEREforPOSIX sed(reported by dylankb)#D1283bca4598 (master: 2184739) - vi (vi-command/nth-column): fix a bug in arithmetic expansion (reported by andychu)
#D12924260bc2 (master: da6cc47) - syntax: fix failglob errors of heredocs of the form
<<$(echo A)#D13081f874ba (master: 3212fd2) - util (
bleopt): fix a bug that a new setting is not defined withname:=(test-util)#D1312a9eb0e9 (master: c757b92) - util (
ble/util/{save,restore}-vars): fix a bug thatnameandprefixcannot be saved/restored (test-util) 49841db (master: 5f2480c) - edit: fix a bug that
set +His cancelled on command execution#D13322ff6d06 (master: 02bdf4e) - syntax (
ble/syntax/parse/shift): fix a bug of shift skip in nested words#D1333bc935bd (master: 65fbba0) - util (
ble-stackdump): fix a shift of line numbers#D1337b597e90 (master: a14b72f) - edit (
ble-bind -x): check range ofREADLINE_{POINT,MARK}#D133947a93e8 (master: efe1e81) - util (
ble/string#to{upper,lower}): work aroundLC_COLLATE=en_US.utf8(test-util)#D13415b32621 (master: 1f6b44e)#D1355b38ef10 (master: 4da6103) - util (encoding, keyseq): fix miscelleneous encoding bugs (test-util) 03c0b44 (master: 435bd16)
- edit: work around
WINCHnot updatingCOLUMNS/LINESafterble-reload#D134550af6a5 (master: a190455) - syntax: allow single-character variable name in named redirections
{a}<>#D1360f81734f (master: 4760409) - syntax (glob bracket expression): fix a bug of unsupported POSIX brackets
#D1402b7ea892 (master: 6fd9e22) - highlight: fix remaininig highlighting of vanishing words
#D1421#D1422cc5e4d1 (master: 1066653) - highlight: fix unhighlighted tilde expansions
~+(reported by cmplstofB)#D14243f7f044 (master: a32962e)
Compatibility
- msys2: support2 MSYS (motivated by SUCHMOKUO)
#D12647cf81c0 (master: 47e2863) - edit (
ble/widget/bracketed-paste): fix error messages onpaste_endin older version of Bash (test-util) a80f1d1 (master: b2c7d1c) - decode: work around Bash-3.1 bug of
declare -frejecting 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
#D1327366e8c1 (master: 16b56bf) - util (strftime): fix a bug not working with
-v varoption in Bash <= 4.1 (test-util) 4f11463 (master: f1a2818) - complete: work around slow
compgen -cin Cygwin#D1329887be6e (master: 5327f5d) - edit: work around problems with
mc(reported by onelittlehope)#D1392a2d6099 (master: e97aa07)
Internal
Patch 0.1.14 (2020-12-02)
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.xzTrial & 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-attachChanges
Fixes
- fixup ab01ceb 8129816 (v0.2: 51bde60)
- decode: use
BREinstead ofEREforPOSIX sed(reported by dylankb)#D12831244d86 (master: 2184739) - edit: fix a bug that
set +His cancelled on command execution#D1332ba3687a (master: 02bdf4e) - syntax (
ble/syntax/parse/shift): fix a bug of shift skip in nested words#D133316fb351 (master: 65fbba0) - util (
ble-stackdump): fix a shift of line numbers#D13375d5b86b (master: a14b72f) - edit (
ble-bind -x): check range ofREADLINE_{POINT,MARK}#D13396909cc0 (master: efe1e81) - util (
ble/string#to{upper,lower}): work aroundLC_COLLATE=en_US.utf8(test-util)#D134131476cc (master: 1f6b44e)#D135565cab5c (master: 4da6103) - util (encoding, keyseq): fix miscelleneous encoding bugs (test-util) 11d8db7 (master: 435bd16)
- edit: work around
WINCHnot updatingCOLUMNS/LINESafterble-reload#D1345e15c5a6 (master: a190455) - syntax: allow single-character variable name in named redirections
{a}<>#D13606bbed24 (master: 4760409) - highlight: fix remaininig highlighting of vanishing words
#D1421#D1422bf8fdc8 (master: 1066653)
Compatibility
- global: work around Bash 3.2 bug of array initialization with SOH/DEL
#D1238566f53e (master: defdbd4)#D1241 - msys2: support2 MSYS (motivated by SUCHMOKUO)
#D126419a36ea (master: 47e2863) - decode: fix a bug of broken cmap cache found in ble-0.3
#D1327fc6ded3 (master: 16b56bf) - util (strftime): fix a bug not working with
-v varoption in Bash <= 4.1 (test-util) cb2389c (master: f1a2818) - complete: work around slow
compgen -cin Cygwin#D1329d6d49cc (master: 5327f5d) - edit: work around problems with
mc(reported by onelittlehope)#D139215111cf (master: e97aa07)
Internal
Release 0.3.2 (2020-01-26) Hotfix
Fixes
- edit: fix a bug that the shell hangs with
source ble.sh --noattach && ble-attach(reported by dylankb)#D1223ce93c08 896fa3b (master: 59c1ce4 3031007) - main: check
~/.config/blesh/init.sh#D12248e1ae73 (master: a82f961) - main: workaround cygwin uninitialized environment
#D1225#D12266aa1732 (master: b9278bc) - vi_test: fix a bug that test fails to restore the original state
#D1232d912e69 (master: 4b882fb) - decode (ble/builtin/bind): skip checking stdin in parsing the keyseq
#D1235057183c (master: 5f949e8) - main (ble-update): fix a bug that the check of
makedoes not work in Bash 3.2#D1236840d6d6 (master: 08ced81) - global: workaround Bash 3.2 bug of array initialization with SOH/DEL
#D1238#D12411f4e2bb (master: defdbd4 1720ec0)