5.11.1 IBuffer Install

In your initialization file, bind the Transinent casual-ibuffer-tmenu to your key binding of preference.

(keymap-set ibuffer-mode-map "C-o" #'casual-ibuffer-tmenu)

Like with Casual Dired, it is convenient to have the menus for filtering and sorting bound as well. Listed below shows an example of binding casual-ibuffer-filter-tmenu and casual-ibuffer-sortby-tmenu to F and s respectively.

(keymap-set ibuffer-mode-map "F" #'casual-ibuffer-filter-tmenu)
(keymap-set ibuffer-mode-map "s" #'casual-ibuffer-sortby-tmenu)

Use these keybindings to configure IBuffer to be consistent with keybindings used by Casual IBuffer.

(keymap-set ibuffer-mode-map "{" #'ibuffer-backwards-next-marked)
(keymap-set ibuffer-mode-map "}" #'ibuffer-forward-next-marked)
(keymap-set ibuffer-mode-map "[" #'ibuffer-backward-filter-group)
(keymap-set ibuffer-mode-map "]" #'ibuffer-forward-filter-group)
(keymap-set ibuffer-mode-map "$" #'ibuffer-toggle-filter-group)  

While not necessary for Casual IBuffer, enabling hl-line-mode and binding mouse clicks in IBuffer adds to a more comfortable IBuffer experience. Also, adding ibuffer-auto-mode to ibuffer-mode-hook will enable auto-updating.

(require 'hl-line)
(require 'mouse)
(add-hook 'ibuffer-mode-hook #'hl-line-mode)
(add-hook 'ibuffer-mode-hook #'ibuffer-auto-mode)
(keymap-set ibuffer-mode-map "<double-mouse-1>" #'ibuffer-visit-buffer)
(keymap-set ibuffer-mode-map "M-<double-mouse-1>" #'ibuffer-visit-buffer-other-window)