[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Soo many buffers
From: |
Tassilo Horn |
Subject: |
Re: Soo many buffers |
Date: |
Thu, 05 Aug 2010 18:19:52 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Andrea Crotti <andrea.crotti.0@gmail.com> writes:
Hi Andrea,
> The only concern now is about the org-agenda-files (around 200 maybe).
WTF?!? How do you structure your projects, i.e. how do you decide to
create a new agenda file? I only have 4...
> I would like to have them everywhere, so I should add to the
> "no-clear" list. But in this way I lose the advantage of desktop mode
> and I'm still full of buffers.
>
> One thing that would be nice I think would be one command to toggle
> the visibility of the org buffers on and off.
At least with `ibuffer' (an advanced alternative to the normal
`list-buffers') you can group buffers, so that you get something looking
like Gnus group buffers with topics. I also put org-related buffers in
one group. Here's my definition:
--8<---------------cut here---------------start------------->8---
(setq ibuffer-saved-filter-groups
'(("default"
("Chat" (or
(mode . garak-mode)
(name . "^\\*Garak\\*$")
(mode . rcirc-mode)))
("Organization" (or
(mode . diary-mode)
(mode . org-mode)
(mode . org-agenda-mode)))
("Gnus & News" (or
(mode . message-mode)
(mode . bbdb-mode)
(mode . mail-mode)
(mode . gnus-group-mode)
(mode . gnus-summary-mode)
(mode . gnus-article-mode)
(name . "^\\(\\.bbdb\\|dot-bbdb\\)$")
(name . "^\\.newsrc-dribble$")
(mode . newsticker-mode)))
("Files" (filename . ".*"))
("File Management" (or
(mode . dired-mode)
(mode . shell-mode)))
("Documentation" (or
(mode . Info-mode)
(mode . apropos-mode)
(mode . woman-mode)
(mode . help-mode)
(mode . Man-mode))))))
--8<---------------cut here---------------end--------------->8---
If you want to get git of org-mode buffers for all buffer completion
(C-x b), you could rename all such buffers, so that they start with a
space. Those are ignored by completion (unless you type a space
literally).
Here's a (only very briefly tested) snippet:
--8<---------------cut here---------------start------------->8---
(defun th-hide-org-buffers (arg)
"Hide org-mode buffers from completion by prepending a space at the buffer
name.
When called with prefix arg (`C-u'), then remove this space again."
(interactive "P")
(dolist (b (buffer-list))
(set-buffer b)
(when (eq major-mode 'org-mode)
(rename-buffer
(if arg
(replace-regexp-in-string "^[[:space:]]+" "" (buffer-name))
(concat " " (buffer-name)))))))
--8<---------------cut here---------------end--------------->8---
HTH,
Tassilo
- Soo many buffers, Andrea Crotti, 2010/08/05
- Re: Soo many buffers, suvayu ali, 2010/08/05
- Re: Soo many buffers, Dan Davison, 2010/08/08
- Re: Soo many buffers, Andrea Crotti, 2010/08/09
- Re: Soo many buffers, Richard Riley, 2010/08/09
- Re: Soo many buffers, Andrea Crotti, 2010/08/10
- Re: Soo many buffers, Andrea Crotti, 2010/08/13
- Re: Soo many buffers, Chris Newton, 2010/08/19
Re: Soo many buffers,
Tassilo Horn <=