diff --git a/GNUmakefile b/GNUmakefile
index b2607ea6..5cdf6cb0 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -148,12 +148,12 @@ endif
install: \
$(outfiles:$(OUTDIR)/%=$(INSDIR)/%) \
$(outfiles-doc:$(OUTDIR)/doc/%=$(INSDIR_DOC)/%) \
- $(INSDIR)/cache.d $(INSDIR)/tmp
+ $(INSDIR)/cache.d $(INSDIR)/run
$(INSDIR)/%: $(OUTDIR)/%
bash make_command.sh install "$<" "$@"
$(INSDIR_DOC)/%: $(OUTDIR)/doc/%
bash make_command.sh install "$<" "$@"
-$(INSDIR)/cache.d $(INSDIR)/tmp:
+$(INSDIR)/cache.d $(INSDIR)/run:
mkdir -p $@ && chmod a+rwxt $@
.PHONY: install
diff --git a/README.md b/README.md
index 5e2239da..790d27f3 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
Recipes ]
-*Bash Line Editor* (`ble.sh`) is a command line editor written in pure Bash scripts which replaces the default GNU Readline.
+*Bash Line Editor* (`ble.sh`) is a command line editor written in pure Bash which replaces the default GNU Readline.
Current devel version is 0.4.
This script supports Bash 3.0 or higher although we recommend to use `ble.sh` with Bash 4.0 or higher.
@@ -17,7 +17,7 @@ This script is provided under the [**BSD License**](LICENSE.md) (3-clause BSD li
Disclaimer: The core part of the line editor is written in **pure Bash**, but
`ble.sh` relies on POSIX `stty` to set up TTY states before and after the execution of user commands.
-It also use other POSIX utilities for acceleration
+It also uses other POSIX utilities for acceleration
in some part of initialization and cleanup code,
processing of large data in completions, paste of large data, etc.
diff --git a/blerc b/blerc
index ae3375bb..5e8c2cc6 100644
--- a/blerc
+++ b/blerc
@@ -611,7 +611,7 @@
##-----------------------------------------------------------------------------
-## Key bindings
+## Keybindings
## The default mapping of is magic-space which performs history and
@@ -627,6 +627,7 @@
#ble-bind -f up 'history-search-backward'
#ble-bind -f down 'history-search-forward'
+
## If you want to immediately run the matched command by RET, you can specify
## the option "immediate-accept" to nsearch widgets:
@@ -634,6 +635,13 @@
#ble-bind -f down 'history-search-forward immediate-accept'
+## If you want to kill/copy words including the spaces preceding them, you can
+## use the following keybindings:
+
+#ble-bind -f C-w 'kill-region-or kill-uword'
+#ble-bind -f M-w 'copy-region-or copy-uword'
+
+
##-----------------------------------------------------------------------------
## Settings for vim-mode
diff --git a/memo/ChangeLog.md b/memo/ChangeLog.md
index 0454a5a4..a19f22e8 100644
--- a/memo/ChangeLog.md
+++ b/memo/ChangeLog.md
@@ -100,8 +100,9 @@
- progcomp: fix non-working `complete -C prog` (reported by Archehandoro) `#D1535` 026432d
- bind: fix a problem that `bind '"seq":"key"'` causes a loop macro `bind -s key key` (reported by thanosz) `#D1536` ea05fc5
- bind: fix errors on readline macros (reported by RakibFiha) `#D1537` c257299
-- main: work around sourcing `ble.sh` inside subshells `#D1554` 0000000
-- main: work around `. ble.sh --{test,update,clear-cache}` in intereactive sessions `#D1555` 0000000
+- main: work around sourcing `ble.sh` inside subshells `#D1554` bbc2a90
+- main: work around `. ble.sh --{test,update,clear-cache}` in intereactive sessions `#D1555` bbc2a90
+- Makefile: create `run` directory instead of `tmp` 0000000
## Compatibility
diff --git a/note.txt b/note.txt
index b64ee4cf..e9887aa0 100644
--- a/note.txt
+++ b/note.txt
@@ -704,7 +704,8 @@ bash_features
2021-02-10 #D1470 どうも bash-4.2 の declare -g にはバグがある。declare -gA
とすると属性は global まで適用されるが、代入された値は関数を抜けると共に消
- 滅する。
+ 滅する。2021-05-20 追記。declare -gA a=() とすると関数を抜けると共に値が消
+ 滅するが、declare -gA a; a=() とすると特に問題は生じない。
* 連想配列 declare -A は bash-4.0 から
@@ -1379,10 +1380,25 @@ bash_tips
0.5 ControlPanel/TUI Framework
0.4 progcolor
+2021-05-20
+
+ * syntax: ${a~} に対応していない
+
+ 何れ消えると思っていたがどうも未だ消える気配はない様だ。取り敢えず使える環
+ 境ではちゃんと着色した方が良い様に思われる。
+
+ 後気付いたのだが実は ${a^^} や ${a,,} も bash-4.0 から使えた様だ。tolower,
+ toupper の実装に使えるのでは。と思って確認した所、既に 4.0 以上ではこれらを
+ 使う様になっていた。
+
2021-05-19
* sabbrev: 単語でなくても任意の文脈で発動する sabbrev が欲しい。\ 等で前置す
- れば特に問題ないのではないか?
+ れば特に問題ないのではないか? 然し、その為には全ての場合について一致するか
+ どうか確認する必要がある。
+
+ * complete: [TAB] 補完の場合には、ユーザー入力があった時に即座にキャンセルす
+ るのではなくて timeout があっても良いのかもしれない。
2021-05-17
diff --git a/src/canvas.sh b/src/canvas.sh
index df80193e..c1142d90 100644
--- a/src/canvas.sh
+++ b/src/canvas.sh
@@ -1742,7 +1742,7 @@ function ble/canvas/trace-text {
[[ ! $flag_overflow ]]
}
# Note: suppress LC_COLLATE errors #D1205 #D1262 #1341 #D1440
-ble/function#suppress-stderr ble/canvas/trace-text {
+ble/function#suppress-stderr ble/canvas/trace-text
#------------------------------------------------------------------------------
# ble/textmap
diff --git a/src/util.sh b/src/util.sh
index fc1aee74..ad66c2aa 100644
--- a/src/util.sh
+++ b/src/util.sh
@@ -2557,7 +2557,7 @@ function ble/util/expand-alias {
ret=$1
local type; ble/util/type type "$ret"
if [[ $type == alias ]]; then
- local data; ble/util/assign data 'LANG=C alias "$ret"' &>/dev/null
+ local data; ble/util/assign data 'LC_ALL=C alias "$ret"' &>/dev/null
[[ $data == 'alias '*=* ]] && builtin eval "ret=${data#alias *=}"
fi
}