diff options
Diffstat (limited to 'Test')
-rw-r--r-- | Test/X03zlebindkey.ztst | 45 | ||||
-rw-r--r-- | Test/comptest | 2 |
2 files changed, 46 insertions, 1 deletions
diff --git a/Test/X03zlebindkey.ztst b/Test/X03zlebindkey.ztst new file mode 100644 index 000000000..70c42f9c2 --- /dev/null +++ b/Test/X03zlebindkey.ztst @@ -0,0 +1,45 @@ +# Tests of the vi mode of ZLE + +%prep + mb_ok= + langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8 + $(locale -a 2>/dev/null | egrep 'utf8|UTF-8')) + for LANG in $langs; do + if [[ é = ? ]]; then + ZSH_TEST_LANG=$LANG + mb_ok=1 + break; + fi + done + if [[ $OSTYPE = cygwin ]]; then + ZTST_unimplemented="the zsh/zpty module does not work on Cygwin" + elif ( zmodload zsh/zpty 2>/dev/null ); then + . $ZTST_srcdir/comptest + comptestinit -z $ZTST_testdir/../Src/zsh + else + ZTST_unimplemented="the zsh/zpty module is not available" + fi + +%test + + zpty_run 'bindkey -s "\C-xy" foo' + zletest $'\C-xy' + zpty_run 'bindkey -r "\C-xy"' +0:bindkey -s +>BUFFER: foo +>CURSOR: 3 + + if [[ -z $mb_ok ]]; then + ZTST_skip="bindkey multibyte test skipped" + else + zpty_run 'alias unbind="bindkey -r ホ"' + zpty_run 'bindkey -s ホ bar' + zletest 'ホ' + zpty_run unbind + zletest 'ホ' + fi +0:bindkey -s multibyte characters +>BUFFER: bar +>CURSOR: 3 +>BUFFER: ホ +>CURSOR: 1 diff --git a/Test/comptest b/Test/comptest index f10739abe..166d0b404 100644 --- a/Test/comptest +++ b/Test/comptest @@ -27,7 +27,7 @@ comptestinit () { } comptesteval \ -"export LC_ALL=C" \ +"export LC_ALL=${ZSH_TEST_LANG:-C}" \ "emulate -R zsh" \ "export ZDOTDIR=$ZTST_testdir" \ "module_path=( $module_path )" \ |