From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11310 invoked by alias); 3 Oct 2013 13:11:53 -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: 31777 Received: (qmail 19580 invoked from network); 3 Oct 2013 13:11:45 -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=-6.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI, SPF_HELO_PASS autolearn=ham version=3.3.2 X-AuditID: cbfec7f4-b7f0a6d000007b1b-32-524d6a6ae4d2 Date: Thu, 03 Oct 2013 14:00:25 +0100 From: Peter Stephenson To: Zsh Hackers' List Subject: Bug somewhere in verbose output for completion listing Message-id: <20131003140025.227f5bc1@pwslap01u.europe.root.pri> Organization: Samsung Cambridge Solution Centre X-Mailer: Claws Mail 3.7.9 (GTK+ 2.22.0; i386-redhat-linux-gnu) MIME-version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: quoted-printable X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrEJMWRmVeSWpSXmKPExsVy+t/xy7pZWb5BBlsOi1kcbH7I5MDoserg B6YAxigum5TUnMyy1CJ9uwSujONHTjMV/OKrWPzoGFsD4w2uLkZODgkBE4n5s/sYIWwxiQv3 1rN1MXJxCAksZZQ4+HEfE4SznEmiYe0eli5GDg4WAVWJt8edQRrYBAwlpm6azQgSFhHQlmj/ KAYSFhawl5j3dxMrSJgXyP4xuw4kzC+gL3H17ycmiFX2EjOvnAFbyysgKPFj8j0WEJtZQEti 87YmVghbW+LJuwusExj5ZiEpm4WkbBaSsgWMzKsYRVNLkwuKk9JzDfWKE3OLS/PS9ZLzczcx QsLpyw7GxcesDjEKcDAq8fB2qPgECbEmlhVX5h5ilOBgVhLhtY/xDRLiTUmsrEotyo8vKs1J LT7EyMTBKdXAWLV82uWf+TueZtiuTTnysWXOadUTFdu3FBY2sX8I+ahq5Cu5Kd2Ar5rvupld 6Z1O3aYfk36HM06XmcaUHqTiKDFp6ebDk5kbtHSNtVsKs4sMF19tzE5sYnIPb/0wLUp86ooz QsdDmcQ4a5MWTlIT0JswXfmJpJBox/nzyvOKGDYphtbzT/uvxFKckWioxVxUnAgABlOrUwUC AAA= I expect this to be greeted with something like the cough from the back of the room when Krusty the Clown tells a joke --- I can't reproduce this reliably at the moment --- but something determining output width in completion listings (I'm using the zsh/complist module) isn't being reset properly. After a while, the following: _wtf () { local stuff stuff=3D('SpoobleOne:2012/11/02 Description of SpoobleOne' 'SpoobleTwo:2013/02/13 Description of SpoobleTwo') _describe -t stuff 'Stuff to complete.' stuff } compdef _wtf wtf starts producing completion listings in verbose mode (the default) with zstyle ':completion:*' list-separator '#' (hence the "#" below) that look like Completing Stuff to complete. SpoobleOne = #=20 SpoobleTwo = #=20 =46rom that point on this happens every time. In case they get wrapped, there are only three lines there, the second and thrid long with lots of spaces between the completion and what should be the description, which is missing. This doesn't happen when I first start the shell; I get the expected Completing Stuff to complete. SpoobleOne # 2012/11/02 Description of SpoobleOne SpoobleTwo # 2013/02/13 Description of SpoobleTwo I think some extra long output from _describe or similar is causing it to go haywire thereafter. In my case that seems to be to do with long completions generated by _perforce, but it's unlikely to be specific to that. I suspect some static in complist isn't being reset: I have a memory the logic is a bit tortuous. If I find a moment I'll try to make it more reproducible (although simply attaching to a running shell might be good enough to track it down). pws