Using emacs in daemon mode is fine, because you only pay startup time once. But after a while the buffer and file list is getting filled. So is there a way to see only files which belong to the actual task (or project) I am working on?
Example:
I do some coding and I'm using Gnus to check mails.
When switching from one source code file to another source code file, I do not want to see Gnus buffers when having the buffer list.
Another example:
I'm working on a big Tex document consisting of foo-1.tex
to foo-5.tex
stored in directory blah
. A coworker gave me a copy of his documents foo-1.tex
to foo-5.tex
stored in directory moo
, which I consult for ideas. When I switch through document of moo
I do not want to get bothered with files from blah
and vice versa.
A last example:
Three students gave me their homework, where they implemented their part of a source code cloze (fill-in-the-blank-source-code). I check and comprehend their coding (which is not easily done by diff
) so I have three times the same filenames (with different content) from different directories. When switching in one students work from file to file, I do not want to get it mixed up with the work of any of the other students.
Edit: I have to visit lots of work from students coding, approx. 400 small projects each year. This comes in clusters, checking approx. 200 works in 4 weeks, something like this. I open those files just 1 to 3 times per file, give a mark, do some tests and compare to other works, afterwards this stuff goes to an archive. (It would be of no use to store permanent bookmarks or create projects on this.)
Question:
For this work in those examples, the daemon mode is more a pain than a help.
My solution now is to start for every task (or project) a standalone emacs process.
But I would like to use the emacs server.
Is there some sort of namespacing, where I can just see the buffers and files which belong together, and suppress the buffers (and files) not belonging to this?
If It works together with ido, the better.
It would be ok to tell emacs manually to which namespace a file belongs.
(A completely different solution would also be welcome.)
Edit:
As it seems it is not clear from my question: I want to reduce the choice of buffers. Ideally a different filter setting
(namespace
) per frame (having multiple emacs frames open at a time).
Thanks to basils comment I had a look at ibuffer
and Gnus-style grouping
from emacs-wiki
. This helps getting the correct buffer, but its not quite what I'm searching.
After knowing ibuffer I would say in this question I used namespace
in the meaning of filter
.
ibuffer
, as well as the third-party packageprojectile
. The former presents a Dired-like interactive buffer list with custom filters, operations and foldable groups, and the latter supports project-specific file navigation, search, etc.ibuffer
with filters is very near to do what I want, maybe my question is not clear enough. (I will rephrase my question soon)