From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7621 invoked by alias); 17 Nov 2014 00:30:40 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 33699 Received: (qmail 29512 invoked from network); 17 Nov 2014 00:30:28 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s2048; t=1416183900; bh=sDJQAYiF+yOc+2ZJpCRIpqrPhHk4NxhqGWjXpKonasU=; h=In-reply-to:From:References:To:Subject:Date:From:Subject; b=IMLfGqEBmj30fYL/8vEjSbSH3rKwzxC2wFJdh+aw3dLD1CWbFEefrTEmgoYPXFtkBObYTKZIzPQ5tqxKP/w6esAW8kUxXrdN9JQ46g4LBACjSPXoUSe4Z6QcV5aea19DE8GflZvGVLNf6KQfZZvDXPsiwmIykkVD/oQleuUjQagVKjFz1HUFaTYRNVv5yfoBzr1C8VhHUW7wwvoPSpAlRVk4UGX97yUIzAVah+J71bvKcsk8OhRqLJOsBL33YDVHC9XfOdLXjEox7Es6myyaBuTEWjnmKmbyWZZtGhFVpaQaygndAQeJ+6sH3rbkmnr9/FYJNu7dWufxmdzd0hLJqQ== DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s2048; d=yahoo.co.uk; b=pkKf6EQp2pwmNtreLFU2++PhFgG37RkZ0/Qvfm4MovNeNuRmEWAzgLOZImH9xsB3oQQlc1zdinBBdZMX0IVRF3pyz9Xa27xnEt/ppePAN9U/ItHrfuEhfikVR38SDzvZ50nx9BP6L+tAZYjHDUsmJ3eRv4Cz0Ff8Ap9xRBdzx9yfhcwLPBBGyycug7hYAKpExnvGQwLYiR3g9ygm4w5wJdUeWbEVT1jT2+FQt0nNiM6bosDruC2u/Jvm69Khh5Phx81nXEIVGosd1fmq4mPAB6hUWb/KzP+9mcsfELJieEPP6E1dYGvh63LC3+rjx555k6+NU1ht7cMkyBMMKI+daQ==; X-Yahoo-Newman-Id: 945099.4261.bm@smtp104.mail.ir2.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: pUTOBEQVM1kYYvI5I2J29KfyKZKCdsHKrOeJmGBJGDpLEWr 98NtnEAr.vMn4.AYkmbJ0wbSARlxkJe3fFLVvRDhoE7s8J2_CA.nx8wOhOyo qGVce8VP9ZHZE4dBEXN3Vh8D_vCIpgXd.giL1PY04nMKyUut2YryzS7LNH0B YWApuQ_CQD26iK2ENnNjWJzrrg4JKrF_c8nYlsauWdV7ofQi1Y2rix8aZml4 UmO0Ge0bsacrWWB5CV19ddm8axGOM.L2kiJRqeU6nUXSX0gjna8RXZeVKOiH 4XLN2zGpkzIZBG0ogF_R7tUs_FTt83yv5pMguVCPuq3rEVHIw1nbS_JMh1wR Hw2nt_wxWSKPe9zuMjYi19N8z8V6cF_XLXRw5TT78LbM1WJFBH5hl9_I2dIP EKyfUrrHTqwaYWxM2kWUVvvbRbv5BLU_ww0Qlc48HMNzXYqXjXhNV7ZVbSR7 BgAwMCepOAByI9KRAiURO2sDDQhizDrgcT6lpgdWAj5FAmv8PCWeVIpG17Yl 9_LDSBl9MXNue2YB37OBEEfD3L_9z X-Yahoo-SMTP: opAkk_CswBAce_kJ3nIPlH80cJI- In-reply-to: <4968.1416034252@thecus.kiddle.eu> From: Oliver Kiddle References: <4968.1416034252@thecus.kiddle.eu> To: Zsh workers Subject: PATCH: key delays in zle tests (was fix vi-indent and vi-swap-case) MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <28828.1416183899.1@thecus.kiddle.eu> Date: Mon, 17 Nov 2014 01:24:59 +0100 Message-ID: <28829.1416183899@thecus.kiddle.eu> I wrote: > No test for vi-swap-case because _bash_completions is getting in > the way to do username completion on \e~. Any idea how we can get > zletest to sleep for a $KEYTIMEOUT delay? This allows zletest to take multiple arguments and it puts a delay between each argument. I set KEYTIMEOUT to 1 to avoid slowing the tests needlessly. We can always increase it if necessary. For the delay, I've had to use read because sleep with a fraction argument is not portable. Maybe we should make it a loadable builtin. On the subject of KEYTIMEOUT, any thoughts on perhaps adding a separate ESCTIMEOUT to set a different timeout specifically for an Escape (or some other variable name)? Do you emacs mode users type Escape then Key or is it mostly Alt/Meta? We could perhaps use different defaults for vi and emacs mode. Oliver diff --git a/Test/X02zlevi.ztst b/Test/X02zlevi.ztst index 4210a72..297fb9ae 100644 --- a/Test/X02zlevi.ztst +++ b/Test/X02zlevi.ztst @@ -37,6 +37,12 @@ >3 >CURSOR: 5 + zletest $'\e' $'~aI\e' $'~o\e' \~ +0:swap case on a blank line +>BUFFER: i +> +>CURSOR: 2 + zletest $' four\eO\C-v\tthree\eO two\eOone\e3J' 0:join lines with line count >BUFFER: one two three diff --git a/Test/comptest b/Test/comptest index 96072fd..654c0f1 100644 --- a/Test/comptest +++ b/Test/comptest @@ -36,6 +36,7 @@ comptestinit () { 'LISTMAX=10000000 stty 38400 columns 80 rows 24 werase undef TERM=vt100 +KEYTIMEOUT=1 setopt zle autoload -U compinit compinit -u @@ -159,9 +160,14 @@ comptest () { } zletest () { - input="$*" - # zpty_flush Before zletest - zpty -n -w zsh "$input"$'\C-X' + local first=0 + for input; do + # sleep for $KEYTIMEOUT + (( first++ )) && read -t 0.011 -k 1 < /dev/null + # zpty_flush Before zletest + zpty -n -w zsh "$input" + done + zpty -n -w zsh $'\C-X' zpty -r -m zsh log "***" || { print "failed to invoke finish widget." return 1