aboutsummaryrefslogtreecommitdiff
path: root/.emacs.d/rul-init.d/ibuffer.el
diff options
context:
space:
mode:
authorRaúl Benencia <id@rbenencia.name>2023-07-20 07:53:35 -0700
committerRaúl Benencia <id@rbenencia.name>2023-07-22 10:45:18 -0700
commit5860445da55ac3abc3935c6ffd5e9bb4539225c9 (patch)
tree2de3124b4c0577245a0b7e1dec30732af7fcc191 /.emacs.d/rul-init.d/ibuffer.el
parentfd0754be08f4b2f9ef58625c17544a238afefade (diff)
emacs: move everything to ~/.emacs.d
Diffstat (limited to '.emacs.d/rul-init.d/ibuffer.el')
-rw-r--r--.emacs.d/rul-init.d/ibuffer.el35
1 files changed, 35 insertions, 0 deletions
diff --git a/.emacs.d/rul-init.d/ibuffer.el b/.emacs.d/rul-init.d/ibuffer.el
new file mode 100644
index 0000000..d5198d8
--- /dev/null
+++ b/.emacs.d/rul-init.d/ibuffer.el
@@ -0,0 +1,35 @@
+;; Debian packages: elpa-ibuffer-vc
+
+(use-package ibuffer ; Better buffer list
+ :bind (([remap list-buffers] . ibuffer))
+ ;; Show VC Status in ibuffer
+ :config (setq ibuffer-formats
+ '((mark modified read-only vc-status-mini " "
+ (name 18 18 :left :elide)
+ " "
+ (size 9 -1 :right)
+ " "
+ (mode 16 16 :left :elide)
+ " "
+ (vc-status 16 16 :left)
+ " "
+ filename-and-process)
+ (mark modified read-only " "
+ (name 18 18 :left :elide)
+ " "
+ (size 9 -1 :right)
+ " "
+ (mode 16 16 :left :elide)
+ " " filename-and-process)
+ (mark " "
+ (name 16 -1)
+ " " filename))))
+
+(use-package ibuffer-vc ; Group buffers by VC project and status
+ :ensure t
+ :defer t
+ :init (add-hook 'ibuffer-hook
+ (lambda ()
+ (ibuffer-vc-set-filter-groups-by-vc-root)
+ (unless (eq ibuffer-sorting-mode 'alphabetic)
+ (ibuffer-do-sort-by-alphabetic)))))
nihil fit ex nihilo