I'm migrating to Gnus, and I'm in need for non-ASCII folder names. I've found them not supported (they just didn't appear in *Gnus Browse Server*) so I made a copy of nnimap.el and discovered that though some support for UTF-7 was in place, it was not working as expected (particularly, double-encoded UTF-7 strings happened). Investigating which `utf7-encode' or `utf7-decode' were missing and which superfluous went difficult, so I made a redesing: everything in nnimap deals with multibyte, except for two functions most close to the IMAP stream. I almost succeeded: the only `utf7-encode' found it's place in `nnimap-send-command' and `utf7-decode' — in `nnimap-parse-response', *Gnus Browse Server* displays all of the folders with correct message count (with a hack from http://www.emacswiki.org/emacs/GnusNiftyTricks). However I still can't enter non-ASCII folders, and if I subscribe to them, neither can I enter nor can I see message count. This has something to do with UTF-8 unibyte strings which spring at me when I try to enter or when I subscribe. I assume this has something to do with Gnus<+>nnimap interaction, though I don't know what. Here goes the patch to be applied explicitly to `nnimap.el' (generated with `diff -u' against gnus in emacs tree of 2010-11-22), which is mostly clean, no debugging `message' calls left, except for the function `nnimap-possibly-change-group' still trying unsuccessfully to deal with UTF-8 unibyte input (`decode-coding-string' works, but debugged `nnimap-send-command' reports that it receives unibyte nonetheless).