From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/84773 Path: news.gmane.org!not-for-mail From: Rainer M Krug Newsgroups: gmane.emacs.gnus.general Subject: SOLVED: unquoted group names from dovecot not shown in GNUS WAS: One folder in local imap not seen Date: Wed, 13 Aug 2014 14:29:06 +0200 Message-ID: References: <87mwb9wb4o.fsf@ericabrahamsen.net> <87vbpwvjj0.fsf@ericabrahamsen.net> <87a978vfdl.fsf@ericabrahamsen.net> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" X-Trace: ger.gmane.org 1407933027 14154 80.91.229.3 (13 Aug 2014 12:30:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 13 Aug 2014 12:30:27 +0000 (UTC) Cc: ding@gnus.org To: Eric Abrahamsen Original-X-From: ding-owner+M33016@lists.math.uh.edu Wed Aug 13 14:30:20 2014 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XHXh0-0001nM-DV for ding-account@gmane.org; Wed, 13 Aug 2014 14:30:14 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1XHXgN-0001FC-8N; Wed, 13 Aug 2014 07:29:35 -0500 Original-Received: from mx1.math.uh.edu ([129.7.128.32]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1XHXgL-0001F2-SJ for ding@lists.math.uh.edu; Wed, 13 Aug 2014 07:29:33 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx1.math.uh.edu with esmtps (TLSv1:AES128-SHA:128) (Exim 4.76) (envelope-from ) id 1XHXgA-0000Se-W4 for ding@lists.math.uh.edu; Wed, 13 Aug 2014 07:29:33 -0500 Original-Received: from mail-we0-f176.google.com ([74.125.82.176]) by quimby.gnus.org with esmtp (Exim 4.80) (envelope-from ) id 1XHXg9-00088j-7A for ding@gnus.org; Wed, 13 Aug 2014 14:29:21 +0200 Original-Received: by mail-we0-f176.google.com with SMTP id q58so11190075wes.35 for ; Wed, 13 Aug 2014 05:29:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-type; bh=WNaTzMKFDd1H5cvDUA5hzs7t6813WCMFCC8NWBeaRi8=; b=hfYqZkkTPRvMIJ3uoy3ThrsiBIFhz1zGNj1i0NtcBOjNBKGF4TB1jl7oAZnWt62T3u AZCUNeM5FJ0epe8jgcocmwSueNvwKcrUN5KuiweQxWp/nmHlz3rE3wQHDKHCk+njT9ew pbnPjV0RB9cPRw4dv2kdAdxvtw96JqVQgUqeCVnpApbWuh8Fo62LNatEml/CKpoD2Zyn W6rjHXGiSeQZ771Ht9xj0Wko677XQlOe0enxYAHNjhh3s9+Ic2JioaBkZucjyoJFgmHT qWoOUs9trUoLIrOx8b0Gj3H/oOhjGj77C9ekEJXcVXxEkeM4EoqI6vj5dmRPAC3R9By7 AM/A== X-Received: by 10.180.210.163 with SMTP id mv3mr4811440wic.15.1407932955752; Wed, 13 Aug 2014 05:29:15 -0700 (PDT) Original-Received: from Rainers-MacBook-Pro-3.local (arn78-1-88-186-171-7.fbx.proxad.net. [88.186.171.7]) by mx.google.com with ESMTPSA id do6sm7945714wib.22.2014.08.13.05.29.13 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Aug 2014 05:29:14 -0700 (PDT) In-Reply-To: <87a978vfdl.fsf@ericabrahamsen.net> (Eric Abrahamsen's message of "Wed, 13 Aug 2014 18:43:50 +0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (darwin) X-Spam-Score: -2.9 (--) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:84773 Archived-At: --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Eric Abrahamsen writes: > Rainer M Krug writes: > >> Eric Abrahamsen writes: >> >>> Rainer M Krug writes: >>> >>>> <#secure method=3Dpgpmime mode=3Dsign> >>>> Eric Abrahamsen writes: >>>> >>>>> Rainer M Krug writes: >>>>> >>>>>> I am posting this here now, as I did not get any reponse on the >>>>>> gnus.user list. >>>>>> >>>>>> I have one folder in my local imap, which I see when I telnet into t= he >>>>>> local imap server, which is seen by e.g. Mail (OSX), but not seen by >>>>>> gnus. I have added the local imap server again as an additional serv= er, >>>>>> but I also couldn't see it there. It is not killed as far as I can s= ee. >>>>> >>>>> One good way of seeing where things are going wrong is to edebug >>>>> `nnimap-get-groups'. When you go into the *Server* buffer and list the >>>>> groups in your local imap server, you'll be able to see the results of >>>>> the LIST command, and then see how Gnus parses those results. That >>>>> should get you closer to the source of the problem. >>>> >>>> OK - yes, it does. But it does not help me. When I cycle through the >>>> 'nnimap-get-groups' function, I can't make any sense out of the result= s, >>>> but I realized that in the (while ...) loop (see the code for referenc= e below), the folder >>>> ...[Mailbox].Later does not occur. As I can't make any sense out of the >>>> previous results. >>>> >>>> Any further tips how I can debug this?=20 >>> >>> The early part of the function is just issuing the LIST command to imap, >>> and inserting the results into a buffer. Just to make sure that the LIST >>> command *isn't* returning your folder, step through `nnimap-get-groups' >>> again, and when you get to the second (goto-char (point-min)), hit "e" >>> to eval, and tell it (switch-to-buffer (current-buffer)). That should >>> make visible a buffer with a name like "#>> *nntpd**-44898>". You can see the results of the LIST command there. >>> >>> If the folder really isn't in that list, then I don't know what to tell >>> you -- Gnus should be getting exactly the same results as your local >>> telnet experiments.=20 >> >> OK - they are in the result from the LIST output: >> >> ,---- >> | ... >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Gmail].All Mail". >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.[Gmail].Bin. >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.[Gmail].Drafts. >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.[Gmail].Important. >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.[Gmail].Sent. >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Gmail].Sent Mail". >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.[Gmail].Spam. >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.[Gmail].Starred. >> | * LIST (%HasChildren) "." RMKrugGMAIL.[Mailbox]. >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.[Mailbox].Later. >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Mailbox].To Buy". >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Mailbox].To Download". >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Mailbox].To Follow". >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Mailbox].To Read". >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Mailbox].To Watch". >> | * LIST (%HasNoChildren) "." "RMKrugGMAIL.[Mailbox].Wait For Feedback". >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.Emacs-macosx. >> | * LIST (%HasNoChildren) "." RMKrugGMAIL.INBOX. >> | ... >> `---- >> >> But the line with the '.Later' folder is not iterated through in the >> while loop. > > In Gnus, do you see any of the groups above that are *not* quoted? Ie, > Important, or Emacs-macosx? I see all groups which are not quoted except the ones which have "[...]" in their name / path. So I do not see RMKrugGMAIL.[Gmail].Important, but I see e.g. RMKrugGMAIL.INBOX > > A problem I've run into in the past is that Gnus parses the mailbox name > using (read (current-buffer)). That's supposed to chomp the whole name > in one go, which it does if the mailbox is quoted. But if it isn't > quoted, the read just chomps forward until it hits a slash, or a period, > or some other character that it considers to delimit a Lisp object. That explains. > > Right now, browsing the group list for any of my Gmail imap accounts, I > see this in the list: > > U 0: [Gmail] > U 0: [Gmail] > U 0: [Gmail] > U 0: [Gmail] Interestingly, when stepping through the code, I see several Gmail. occurring, but I do not see them in the listing.=20 > > Actually, those are my Spam, Trash, and Drafts groups, plus the one > "HasChildren" [Gmail] mailbox. They just show up broken in the browse > list, I think because of the problem I outlined above. > > Mind you, I'm actually able to access those groups in the *Group* > buffer, I assume because the groups were already entered into my newsrc > file. Same here - and I think I saw them in an earlier version of gnus, but I am not sure. > > It would be nice if there was a dovecot option to say "quote mailbox > names no matter what," but I don't know if there is. I think the spec > says the names must be quoted if there's a space in them, but if not > it's up to the server. Agreed. AS I am using offlineimap, I could use name translation rules, but I kind of don't like the idea here. > > Just to confirm this, would you mind eval'ling this version of > nnimap-get-groups, and seeing if it helps? It's an ugly hack from ages > ago, that I used when I was having this problem, but then I stopped > using it, I don't remember why. It's possible I used it for a while, the > groups were entered correctly into my newsrc, and then when I stopped > using it it didn't break anything, so I let it go. > > One manual edit you'll have to make is to add a ^M control character > where I've indicated below -- I think it wouldn't survive the email > trip. OK - this is working. Thanks a lot. I will add it to my .gnus.el file until a release of gnus which includes a fix is released. If there is anything else I should test, please let ma know. Thanks a million, Rainer > > (defun nnimap-get-groups () > (erase-buffer) > (let ((sequence (nnimap-send-command "LIST \"\" \"*\"")) > groups) > (nnimap-wait-for-response sequence) > (subst-char-in-region (point-min) (point-max) > ?\\ ?% t) > (goto-char (point-min)) > (nnimap-unfold-quoted-lines) > (goto-char (point-min)) > (while (search-forward "* LIST " nil t) > (let ((flags (read (current-buffer))) > (separator (read (current-buffer))) > (group (buffer-substring-no-properties > (progn (skip-chars-forward " \"") > (point)) > (progn (move-end-of-line 1) > (skip-chars-backward " \"") ; add a C-q C-m inside this string > (point))))) > (unless (member '%NoSelect flags) > (push (utf7-decode (if (stringp group) > group > (format "%s" group)) t) > groups)))) > (nreverse groups))) > > > =2D-=20 Rainer M. Krug email: Rainerkrugsde PGP: 0x0F52F982 --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) iQEcBAEBAgAGBQJT61oWAAoJENvXNx4PUvmCx0YIAIAUt6hhq+Zt71kCnhD15Hiv l9aKqTPDxMbhtvDQtKOHcNPvuyiCzb8OmD4cugSYwYcnisPrY7T8cX0XZ2wozdhk asrqyaYdmSdKpTqU3ILVh0uRUx08qNhaYL6vr7DyF0wjcqsIlVrTVHdDgNokYgr4 iF8rQWvfgroYa5d455MHzalKI6nbPlX0FUjStLMqs8nMaarMIdEl2Wapv4HjNtCY wK/nr9jixO5AwVS0EV2QLz0KuqBvG3q+QkmG8rywi5LIIsKqhIMHcIQu2nRj3Rza 0L4jnjcx1Hbzbzg44OEuglyuALfyAcItESw1cyvQKn7gul9jnnOtGsGmOij4rzY= =77h7 -----END PGP SIGNATURE----- --=-=-=--