summaryrefslogtreecommitdiffstats
path: root/.emacs.d/lisp/bandali-ibuffer.el
diff options
context:
space:
mode:
Diffstat (limited to '.emacs.d/lisp/bandali-ibuffer.el')
-rw-r--r--.emacs.d/lisp/bandali-ibuffer.el110
1 files changed, 0 insertions, 110 deletions
diff --git a/.emacs.d/lisp/bandali-ibuffer.el b/.emacs.d/lisp/bandali-ibuffer.el
deleted file mode 100644
index a706dc6..0000000
--- a/.emacs.d/lisp/bandali-ibuffer.el
+++ /dev/null
@@ -1,110 +0,0 @@
-;;; bandali-ibuffer.el --- bandali's Ibuffer setup -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2018-2022 Amin Bandali
-
-;; Author: Amin Bandali <bandali@gnu.org>
-;; Keywords: tools
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;; My Ibuffer setup.
-
-;;; Code:
-
-(setq
- ibuffer-saved-filter-groups
- '(("default"
- ("dired" (mode . dired-mode))
- ("org" (mode . org-mode))
- ("gnus"
- (or
- (mode . gnus-group-mode)
- (mode . gnus-summary-mode)
- (mode . gnus-article-mode)
- (mode . message-mode)))
- ("web"
- (or
- (mode . mhtml-mode)
- (mode . css-mode)
- (mode . scss-mode)
- (mode . js2-mode)))
- ("shell"
- (or
- (mode . eshell-mode)
- (mode . shell-mode)
- (mode . term-mode)))
- ("programming"
- (or
- (mode . python-mode)
- (mode . c-mode)
- (mode . c++-mode)
- (mode . java-mode)
- (mode . emacs-lisp-mode)
- (mode . scheme-mode)
- (mode . haskell-mode)
- (mode . lean-mode)
- ;; (mode . go-mode)
- (mode . alloy-mode)))
- ("tex"
- (or
- (mode . bibtex-mode)
- (mode . latex-mode)))
- ("emacs"
- (or
- (name . "^\\*scratch\\*$")
- (name . "^\\*Messages\\*$")))
- ("exwm" (mode . exwm-mode))
- ("erc" (mode . erc-mode))))
- ibuffer-formats
- '((mark modified read-only locked " "
- (name 72 72 :left :elide)
- " "
- (size-h 9 -1 :right)
- " "
- (mode 16 16 :left :elide)
- " " filename-and-process)
- (mark " "
- (name 16 -1)
- " " filename)))
-(with-eval-after-load 'ibuffer
- ;; Use human readable Size column instead of original one
- (define-ibuffer-column size-h
- (:name "Size" :inline t)
- (cond
- ((> (buffer-size) 1000000) (format "%7.1fM" (/ (buffer-size) 1000000.0)))
- ((> (buffer-size) 100000) (format "%7.0fk" (/ (buffer-size) 1000.0)))
- ((> (buffer-size) 1000) (format "%7.1fk" (/ (buffer-size) 1000.0)))
- (t (format "%8d" (buffer-size)))))
-
- ;; local key bindings
- (define-key ibuffer-mode-map (kbd "P")
- #'ibuffer-backward-filter-group)
- (define-key ibuffer-mode-map (kbd "N")
- #'ibuffer-forward-filter-group)
- (define-key ibuffer-mode-map (kbd "M-p")
- #'ibuffer-do-print)
- (define-key ibuffer-mode-map (kbd "M-n")
- #'ibuffer-do-shell-command-pipe-replace))
-;; global key bindings
-(global-set-key (kbd "C-x C-b") #'ibuffer)
-;; hooks
-(declare-function ibuffer-switch-to-saved-filter-groups "ibuf-ext"
- (name))
-(add-hook 'ibuffer-hook
- (lambda () (ibuffer-switch-to-saved-filter-groups "default")))
-
-(provide 'bandali-ibuffer)
-;;; bandali-ibuffer.el ends here