* Indenting Emacs Lisp only with tabs? @ 2009-09-02 10:38 Elena 2009-09-02 12:56 ` Peter Dyballa [not found] ` <mailman.5848.1251896183.2239.help-gnu-emacs@gnu.org> 0 siblings, 2 replies; 19+ messages in thread From: Elena @ 2009-09-02 10:38 UTC (permalink / raw) To: help-gnu-emacs Hello, can you indent Emacs Lisp code only using tabs? I'd like to use a proportional font, but that messes up indentation. Thanks ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 10:38 Indenting Emacs Lisp only with tabs? Elena @ 2009-09-02 12:56 ` Peter Dyballa [not found] ` <mailman.5848.1251896183.2239.help-gnu-emacs@gnu.org> 1 sibling, 0 replies; 19+ messages in thread From: Peter Dyballa @ 2009-09-02 12:56 UTC (permalink / raw) To: Elena; +Cc: help-gnu-emacs Am 02.09.2009 um 12:38 schrieb Elena: > I'd like to use a proportional font, but that messes up indentation. That's the trouble with proportional fonts... -- Greetings Pete Increase the size of your bike by at least *five* inches! ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <mailman.5848.1251896183.2239.help-gnu-emacs@gnu.org>]
* Re: Indenting Emacs Lisp only with tabs? [not found] ` <mailman.5848.1251896183.2239.help-gnu-emacs@gnu.org> @ 2009-09-02 13:11 ` Elena 2009-09-02 13:35 ` Helmut Eller ` (2 more replies) 0 siblings, 3 replies; 19+ messages in thread From: Elena @ 2009-09-02 13:11 UTC (permalink / raw) To: help-gnu-emacs On 2 Set, 12:56, Peter Dyballa <Peter_Dyba...@Web.DE> wrote: > Am 02.09.2009 um 12:38 schrieb Elena: > > > I'd like to use a proportional font, but that messes up indentation. > > That's the trouble with proportional fonts... Well, that's a trouble with editors - like Emacs - where you can't move characters with pixel precision. However, if the indenting function does not try to overcome editor's limitations by adding spaces to line things up, tabs work quite well. IMO, proportional fonts are way more readable, and they save space. ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 13:11 ` Elena @ 2009-09-02 13:35 ` Helmut Eller 2009-09-02 13:54 ` Elena 2009-09-02 17:19 ` Oliver Scholz 2009-09-02 14:06 ` Peter Dyballa [not found] ` <mailman.5856.1251900422.2239.help-gnu-emacs@gnu.org> 2 siblings, 2 replies; 19+ messages in thread From: Helmut Eller @ 2009-09-02 13:35 UTC (permalink / raw) To: help-gnu-emacs * Elena [2009-09-02 15:11+0200] writes: > On 2 Set, 12:56, Peter Dyballa <Peter_Dyba...@Web.DE> wrote: >> Am 02.09.2009 um 12:38 schrieb Elena: >> >> > I'd like to use a proportional font, but that messes up indentation. >> >> That's the trouble with proportional fonts... > > Well, that's a trouble with editors - like Emacs - where you can't > move characters with pixel precision. To me it seems more like a limitation of text files. > However, if the indenting function does not try to overcome editor's > limitations by adding spaces to line things up, tabs work quite well. You can set tab-width to 1 and the indent function will only insert tabs. It's more common though, to not use tabs at all by disabling indent-tab-mode. However, the indent function doesn't control how existing files are displayed and that's the trouble with proportional fonts: code that uses tabs and spaces looks messed up. Helmut ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 13:35 ` Helmut Eller @ 2009-09-02 13:54 ` Elena 2009-09-02 17:19 ` Oliver Scholz 1 sibling, 0 replies; 19+ messages in thread From: Elena @ 2009-09-02 13:54 UTC (permalink / raw) To: help-gnu-emacs On 2 Set, 13:35, Helmut Eller <eller.hel...@gmail.com> wrote: > * Elena [2009-09-02 15:11+0200] writes: > > > On 2 Set, 12:56, Peter Dyballa <Peter_Dyba...@Web.DE> wrote: > >> Am 02.09.2009 um 12:38 schrieb Elena: > > >> > I'd like to use a proportional font, but that messes up indentation. > > >> That's the trouble with proportional fonts... > > > Well, that's a trouble with editors - like Emacs - where you can't > > move characters with pixel precision. > > To me it seems more like a limitation of text files. > > > However, if the indenting function does not try to overcome editor's > > limitations by adding spaces to line things up, tabs work quite well. > > You can set tab-width to 1 and the indent function will only insert > tabs. It's more common though, to not use tabs at all by disabling > indent-tab-mode. That works, thanks. Besides tab-width, I've set every variable in "Lisp indent" group to 4, 'lisp-indent-offset' and 'lisp-body-indent' to 4 too, and code now gets indented as I wished. ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 13:35 ` Helmut Eller 2009-09-02 13:54 ` Elena @ 2009-09-02 17:19 ` Oliver Scholz 2009-09-04 5:51 ` Oliver Scholz 1 sibling, 1 reply; 19+ messages in thread From: Oliver Scholz @ 2009-09-02 17:19 UTC (permalink / raw) To: help-gnu-emacs Helmut Eller <eller.helmut@gmail.com> writes: > * Elena [2009-09-02 15:11+0200] writes: > >> On 2 Set, 12:56, Peter Dyballa <Peter_Dyba...@Web.DE> wrote: >>> Am 02.09.2009 um 12:38 schrieb Elena: >>> >>> > I'd like to use a proportional font, but that messes up indentation. >>> >>> That's the trouble with proportional fonts... >> >> Well, that's a trouble with editors - like Emacs - where you can't >> move characters with pixel precision. > > To me it seems more like a limitation of text files. > >> However, if the indenting function does not try to overcome editor's >> limitations by adding spaces to line things up, tabs work quite well. > > You can set tab-width to 1 and the indent function will only insert > tabs. It's more common though, to not use tabs at all by disabling > indent-tab-mode. Not a good idea, though, if anybody else (including a future self which uses a different editor) is ever supposed to read that code. > However, the indent function doesn't control how existing files are > displayed and that's the trouble with proportional fonts: code that uses > tabs and spaces looks messed up. I actually thought about this some time ago. I believe it would be possible, not really complicated even, to fix this. Emacs could simply put a display property with the value `(space :align-to <number of whitespace chars from line beginning to first non-whitespace>) on the leading space or tab characters on each line. And there you go: proportional fonts with flawless indentation. The only complication would be that font-lock does not naturally handle the `display' property; but if my memory serves well, all the necessary mechanics are in place and this would only be a minor obstacle. Oliver -- 16 Fructidor an 217 de la Révolution Liberté, Egalité, Fraternité! ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 17:19 ` Oliver Scholz @ 2009-09-04 5:51 ` Oliver Scholz 2009-09-04 7:37 ` Elena 0 siblings, 1 reply; 19+ messages in thread From: Oliver Scholz @ 2009-09-04 5:51 UTC (permalink / raw) To: help-gnu-emacs Following up on myself ... I don't follow the discussion on 'elastic tabstops'. Whatever makes one happy, I guess. However with regard to using proportional fonts for programming modes in Emacs, I wrote: [...] > I actually thought about this some time ago. I believe it would be > possible, not really complicated even, to fix this. Emacs could simply > put a display property with the value > > `(space :align-to <number of whitespace chars from line beginning to first non-whitespace>) > > on the leading space or tab characters on each line. And there you go: > proportional fonts with flawless indentation. > > The only complication would be that font-lock does not naturally handle > the `display' property; but if my memory serves well, all the necessary > mechanics are in place and this would only be a minor obstacle. The proof-of-concept turns out to be quite trivial. I am putting it here, in case anybody actually wants to play with it. The following assumes that indentation consists only of space characters. (defconst propindent-font-lock-keywords `(("^ +" (0 (progn (propindent-fix-whitespace (match-beginning 0) (match-end 0)) nil))))) (defun propindent-fix-whitespace (from to) (put-text-property from to 'display `(space :align-to ,(- to from)))) (defun propindent-spice-up-font-lock () (add-to-list 'font-lock-extra-managed-props 'display) (font-lock-add-keywords nil propindent-font-lock-keywords)) One Problem is, that this fixes indentation only relative to the *beginning* of the previous line. So, if you have for instance a typical `let' expression in Lisp, the clauses starting from the second one would be lined up vertically, but the first one on line with the "let" would not. To fix this, the function would have to check for the pixel position of the corresponding character on the previous line and fix the visible indentation accordingly. It seems that the :align-to property may take a pixel value; unfortunately I am not aware of any way to check for the pixel position of a character position in a window. There are drawbacks, anyways: since proportional fonts in general take considerably less horizontal space, fixing this would actually reduce visible indentation. Oliver -- 18 Fructidor an 217 de la Révolution Liberté, Egalité, Fraternité! ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-04 5:51 ` Oliver Scholz @ 2009-09-04 7:37 ` Elena 2009-09-04 10:14 ` Oliver Scholz 0 siblings, 1 reply; 19+ messages in thread From: Elena @ 2009-09-04 7:37 UTC (permalink / raw) To: help-gnu-emacs On 4 Set, 05:51, Oliver Scholz <alkibia...@gmx.de> wrote: > There are > drawbacks, anyways: since proportional fonts in general take > considerably less horizontal space, fixing this would actually reduce > visible indentation. I've just incremented indentation width to work around that (from 4 to 8). ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-04 7:37 ` Elena @ 2009-09-04 10:14 ` Oliver Scholz 0 siblings, 0 replies; 19+ messages in thread From: Oliver Scholz @ 2009-09-04 10:14 UTC (permalink / raw) To: help-gnu-emacs Elena <egarrulo@gmail.com> writes: > On 4 Set, 05:51, Oliver Scholz <alkibia...@gmx.de> wrote: >> There are >> drawbacks, anyways: since proportional fonts in general take >> considerably less horizontal space, fixing this would actually reduce >> visible indentation. > > I've just incremented indentation width to work around that (from 4 to > 8). Actually, I was just talking about the case of context-sensitive aligning to the exact pixel position of a character on a previous line. Such as the variable clauses in a `let' form in Lisp, or aligning arguments to a function that are on different lines. Incrementing indentation won't change anything there. Whether it matters or not, I don't know. I'd like to have a function to determin the pixel position of a character just so I could test whether I like it or not. Oliver -- 18 Fructidor an 217 de la Révolution Liberté, Egalité, Fraternité! ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 13:11 ` Elena 2009-09-02 13:35 ` Helmut Eller @ 2009-09-02 14:06 ` Peter Dyballa [not found] ` <mailman.5856.1251900422.2239.help-gnu-emacs@gnu.org> 2 siblings, 0 replies; 19+ messages in thread From: Peter Dyballa @ 2009-09-02 14:06 UTC (permalink / raw) To: Elena; +Cc: help-gnu-emacs Am 02.09.2009 um 15:11 schrieb Elena: > Well, that's a trouble with editors - like Emacs - where you can't > move characters with pixel precision. You'd prefer to work in FontForge, xv, or GIMP? -- Greetings Pete "Evolution" o __o _o _ °\___o /0~ -\<, ^\___ /=\\_/-% oo~_______ /\ /\______/ \_________O/ O_______________o===>-->O--o____ ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <mailman.5856.1251900422.2239.help-gnu-emacs@gnu.org>]
* Re: Indenting Emacs Lisp only with tabs? [not found] ` <mailman.5856.1251900422.2239.help-gnu-emacs@gnu.org> @ 2009-09-02 14:25 ` Elena 2009-09-02 15:15 ` Peter Dyballa ` (3 more replies) 0 siblings, 4 replies; 19+ messages in thread From: Elena @ 2009-09-02 14:25 UTC (permalink / raw) To: help-gnu-emacs On 2 Set, 14:06, Peter Dyballa <Peter_Dyba...@Web.DE> wrote: > Am 02.09.2009 um 15:11 schrieb Elena: > > > Well, that's a trouble with editors - like Emacs - where you can't > > move characters with pixel precision. > > You'd prefer to work in FontForge, xv, or GIMP? Oh no! It's just that Emacs was born as a console editor, and therefore shares console's limitations. For a glimpse of indentation with pixel precision, look here (Java plugin required): http://nickgravgaard.com/elastictabstops/ ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 14:25 ` Elena @ 2009-09-02 15:15 ` Peter Dyballa [not found] ` <mailman.5867.1251904529.2239.help-gnu-emacs@gnu.org> ` (2 subsequent siblings) 3 siblings, 0 replies; 19+ messages in thread From: Peter Dyballa @ 2009-09-02 15:15 UTC (permalink / raw) To: Elena; +Cc: help-gnu-emacs Am 02.09.2009 um 16:25 schrieb Elena: > For a glimpse of indentation with pixel precision, look here (Java > plugin required): > > http://nickgravgaard.com/elastictabstops/ Well, I can't see it! My browser shows non-proportional fonts and a precision of positioning around ten or more pixels horizontally. At least for me, this vast spacing is nothing precise. -- Greetings Pete One cannot live by television, video games, top ten CDs, and dumb movies alone. – Amiri Baraka, 1999 ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <mailman.5867.1251904529.2239.help-gnu-emacs@gnu.org>]
* Re: Indenting Emacs Lisp only with tabs? [not found] ` <mailman.5867.1251904529.2239.help-gnu-emacs@gnu.org> @ 2009-09-02 15:31 ` Elena 0 siblings, 0 replies; 19+ messages in thread From: Elena @ 2009-09-02 15:31 UTC (permalink / raw) To: help-gnu-emacs On 2 Set, 15:15, Peter Dyballa <Peter_Dyba...@Web.DE> wrote: > Am 02.09.2009 um 16:25 schrieb Elena: > > > For a glimpse of indentation with pixel precision, look here (Java > > plugin required): > > >http://nickgravgaard.com/elastictabstops/ > > Well, I can't see it! My browser shows non-proportional fonts and a > precision of positioning around ten or more pixels horizontally. At > least for me, this vast spacing is nothing precise. Maybe something is not working with your Java plugin. Well, here, into the applet, this demo code: struct ipc_perm { key_t key; ushort uid; /* owner euid and egid */ ushort gid; /* group id */ ushort cuid; /* creator euid and egid */ cell-missing /* for test purposes */ ushort mode; /* access modes */ ushort seq; /* sequence number */ }; shows with a proportional font and comments are _perfectly_ aligned. If you add characters to a variable name, all comments move to the right to keep themselves _perfectly_ aligned. That would be achievable in Emacs only with a monospaced font. ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 14:25 ` Elena 2009-09-02 15:15 ` Peter Dyballa [not found] ` <mailman.5867.1251904529.2239.help-gnu-emacs@gnu.org> @ 2009-09-02 17:15 ` Helmut Eller 2009-09-03 8:11 ` Joost Kremers 3 siblings, 0 replies; 19+ messages in thread From: Helmut Eller @ 2009-09-02 17:15 UTC (permalink / raw) To: help-gnu-emacs * Elena [2009-09-02 16:25+0200] writes: > For a glimpse of indentation with pixel precision, look here (Java > plugin required): > > http://nickgravgaard.com/elastictabstops/ The function prototype requires a tab after the opening paren: int someDemoCode( int fred, int wilma) { that looks ugly or is a severe restriction. Helmut ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-02 14:25 ` Elena ` (2 preceding siblings ...) 2009-09-02 17:15 ` Helmut Eller @ 2009-09-03 8:11 ` Joost Kremers 2009-09-03 12:17 ` B Smith-Mannschott [not found] ` <mailman.5938.1251980288.2239.help-gnu-emacs@gnu.org> 3 siblings, 2 replies; 19+ messages in thread From: Joost Kremers @ 2009-09-03 8:11 UTC (permalink / raw) To: help-gnu-emacs Elena wrote: > For a glimpse of indentation with pixel precision, look here (Java > plugin required): > > http://nickgravgaard.com/elastictabstops/ huh? when i remove or insert a TAB, the text is jumping all over the place! how could anyone *want* this? -- Joost Kremers joostkremers@yahoo.com Selbst in die Unterwelt dringt durch Spalten Licht EN:SiS(9) ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-03 8:11 ` Joost Kremers @ 2009-09-03 12:17 ` B Smith-Mannschott [not found] ` <mailman.5938.1251980288.2239.help-gnu-emacs@gnu.org> 1 sibling, 0 replies; 19+ messages in thread From: B Smith-Mannschott @ 2009-09-03 12:17 UTC (permalink / raw) To: Joost Kremers; +Cc: help-gnu-emacs On Thu, Sep 3, 2009 at 10:11, Joost Kremers<joostkremers@yahoo.com> wrote: > Elena wrote: >> For a glimpse of indentation with pixel precision, look here (Java >> plugin required): >> >> http://nickgravgaard.com/elastictabstops/ > > huh? when i remove or insert a TAB, the text is jumping all over the place! how > could anyone *want* this? Of course it works differently than you are used to! That doesn't automatically make it unusable. One of the reasons we stick with monospaced fonts in programming is because we like to play all sorts of clever tricks with vertical alignment to visually group related things. (These tricks, incidentally, are also why mixing tabs and spaces causes so much pain much of the time.) What's interesting about the elastic tab stops proposal is that it allows for arbitrary fonts without killing the ability to communicate by aligning related things vertically. But, *of course* it requires different habits when laying out code. Of course, an editor that supports it as well as emacs does mono-spaced layout would include logic to insert hard tabs at the right places to produce a pleasing layout, just as emacs inserts spaces to vertically align the arguments of a mult-line procedure call. I think it's a clever idea, and I do think I could learn to take advantage of what it offers while minimizing the impact of its downsides, just as I do now when I code in emacs. // Ben ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <mailman.5938.1251980288.2239.help-gnu-emacs@gnu.org>]
* Re: Indenting Emacs Lisp only with tabs? [not found] ` <mailman.5938.1251980288.2239.help-gnu-emacs@gnu.org> @ 2009-09-03 14:02 ` Elena 2009-09-03 18:46 ` Joost Kremers 1 sibling, 0 replies; 19+ messages in thread From: Elena @ 2009-09-03 14:02 UTC (permalink / raw) To: help-gnu-emacs On 3 Set, 12:17, B Smith-Mannschott <bsmith.o...@gmail.com> wrote: > One of the reasons we stick with monospaced fonts in programming is > because we like to play all sorts of clever tricks with vertical > alignment to visually group related things. (These tricks, > incidentally, are also why mixing tabs and spaces causes so much pain > much of the time.) Indeed, what a mode means when it indents a line with N spaces is: move this text under (N+1)th character of previous line. That could be accomplished with proportional fonts, too. Modes use spaces for what they do, not what they mean. That's why I don't think we will anything like elastic tabstops in Emacs in the near future. Too much indenting code depends on this low level assumption. > But, *of course* it requires different habits when laying out code. Of > course, an editor that supports it as well as emacs does mono-spaced > layout would include logic to insert hard tabs at the right places to > produce a pleasing layout, just as emacs inserts spaces to vertically > align the arguments of a mult-line procedure call. I think that could be eased by making tabs (that is: vertical alignment) visible, just as I think modes for makefiles already do (albeit not for alignment purposes). > I think it's a clever idea, and I do think I could learn to take > advantage of what it offers while minimizing the impact of its > downsides, just as I do now when I code in emacs. I agree. ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? [not found] ` <mailman.5938.1251980288.2239.help-gnu-emacs@gnu.org> 2009-09-03 14:02 ` Elena @ 2009-09-03 18:46 ` Joost Kremers 2009-09-03 19:05 ` Elena 1 sibling, 1 reply; 19+ messages in thread From: Joost Kremers @ 2009-09-03 18:46 UTC (permalink / raw) To: help-gnu-emacs B Smith-Mannschott wrote: > On Thu, Sep 3, 2009 at 10:11, Joost Kremers<joostkremers@yahoo.com> wrote: >> Elena wrote: >>> For a glimpse of indentation with pixel precision, look here (Java >>> plugin required): >>> >>> http://nickgravgaard.com/elastictabstops/ >> >> huh? when i remove or insert a TAB, the text is jumping all over the place! how >> could anyone *want* this? > > Of course it works differently than you are used to! That doesn't > automatically make it unusable. well, the thing that i don't like about it is that when i insert or delete a tab or some text, not only text on the line i'm on moves, but text on other lines moves as well. that's insanely annoying... > What's interesting about the elastic tab stops proposal is that it > allows for arbitrary fonts without killing the ability to communicate > by aligning related things vertically. until someone who prefers monospaced fonts wants to look at your code... -- Joost Kremers joostkremers@yahoo.com Selbst in die Unterwelt dringt durch Spalten Licht EN:SiS(9) ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Indenting Emacs Lisp only with tabs? 2009-09-03 18:46 ` Joost Kremers @ 2009-09-03 19:05 ` Elena 0 siblings, 0 replies; 19+ messages in thread From: Elena @ 2009-09-03 19:05 UTC (permalink / raw) To: help-gnu-emacs On 3 Set, 20:46, Joost Kremers > well, the thing that i don't like about it is that when i insert or delete a tab > or some text, not only text on the line i'm on moves, but text on other lines > moves as well. that's insanely annoying... That's just a demo. It just shows that you don't need monospaced fonts to keeps things aligned. > until someone who prefers monospaced fonts wants to look at your code... Well, better him than me ;-) ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2009-09-04 10:14 UTC | newest] Thread overview: 19+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-09-02 10:38 Indenting Emacs Lisp only with tabs? Elena 2009-09-02 12:56 ` Peter Dyballa [not found] ` <mailman.5848.1251896183.2239.help-gnu-emacs@gnu.org> 2009-09-02 13:11 ` Elena 2009-09-02 13:35 ` Helmut Eller 2009-09-02 13:54 ` Elena 2009-09-02 17:19 ` Oliver Scholz 2009-09-04 5:51 ` Oliver Scholz 2009-09-04 7:37 ` Elena 2009-09-04 10:14 ` Oliver Scholz 2009-09-02 14:06 ` Peter Dyballa [not found] ` <mailman.5856.1251900422.2239.help-gnu-emacs@gnu.org> 2009-09-02 14:25 ` Elena 2009-09-02 15:15 ` Peter Dyballa [not found] ` <mailman.5867.1251904529.2239.help-gnu-emacs@gnu.org> 2009-09-02 15:31 ` Elena 2009-09-02 17:15 ` Helmut Eller 2009-09-03 8:11 ` Joost Kremers 2009-09-03 12:17 ` B Smith-Mannschott [not found] ` <mailman.5938.1251980288.2239.help-gnu-emacs@gnu.org> 2009-09-03 14:02 ` Elena 2009-09-03 18:46 ` Joost Kremers 2009-09-03 19:05 ` Elena
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).