aboutsummaryrefslogtreecommitdiff
path: root/.config/emacs/lisp/evil-collection/modes/proced
diff options
context:
space:
mode:
authorJack Jamison <jackqjamison@gmail.com>2026-07-05 01:19:30 -0400
committerJack Jamison <jackqjamison@gmail.com>2026-07-05 01:19:30 -0400
commitbdf9a71ab7baa2b1de9abcfd5df1a9107a55d141 (patch)
treec4524e6c41aa5107211103401dabfaefc81aa882 /.config/emacs/lisp/evil-collection/modes/proced
parentfe3984f541bd32bdfa418afb305b614176b55ca0 (diff)
add a bunch of emacs packages HELP
Diffstat (limited to '.config/emacs/lisp/evil-collection/modes/proced')
-rw-r--r--.config/emacs/lisp/evil-collection/modes/proced/README.org33
-rw-r--r--.config/emacs/lisp/evil-collection/modes/proced/evil-collection-proced.el88
2 files changed, 121 insertions, 0 deletions
diff --git a/.config/emacs/lisp/evil-collection/modes/proced/README.org b/.config/emacs/lisp/evil-collection/modes/proced/README.org
new file mode 100644
index 0000000..5789230
--- /dev/null
+++ b/.config/emacs/lisp/evil-collection/modes/proced/README.org
@@ -0,0 +1,33 @@
+* proced
+
+ Evil bindings for [[https://www.gnu.org/software/emacs/manual/html_node/emacs/Processes.html][proced]].
+
+** Key bindings
+
+ | Command | Original | Evil |
+ |-----------------------------+----------+----------|
+ | =proced-refine= | =RET= | =RET= |
+ | =proced-mark= | =m=, =d= | =m= |
+ | =proced-mark-all= | =M= | =*=, =M= |
+ | =proced-unmark-all= | =U= | =U= |
+ | =proced-toggle-marks= | =t= | =~= |
+ | =proced-mark-children= | =C= | =c=, =C= |
+ | =proced-mark-parents= | =P= | =p=, =P= |
+ | =proced-unmark-backward= | =DEL= | =DEL= |
+ | =evil-scroll-down= | n/a | =SPC= |
+ | =evil-scroll-up= | n/a | =S-SPC= |
+ | =proced-toggle-tree= | =T= | =zt= |
+ | =proced-undo= | n/a | =u= |
+ | =proced-omit-processes= | =o= | =O= |
+ | =proced-send-signal= | =k=, =x= | =x= |
+ | =proced-filter-interactive= | =f= | =s= |
+ | =proced-format-interactive= | =F= | =S= |
+ | =proced-sort-start= | =s s= | =oo= |
+ | =proced-sort-interactive= | =s S= | =oO= |
+ | =proced-sort-pcpu= | =s c= | =oc= |
+ | =proced-sort-pmem= | =s m= | =om= |
+ | =proced-sort-pid= | =s p= | =op= |
+ | =proced-sort-time= | =s t= | =ot= |
+ | =proced-sort-user= | =s u= | =ou= |
+ | =proced-renice= | =r= | =r= |
+ | =revert-buffer= | n/a | =gr= |
diff --git a/.config/emacs/lisp/evil-collection/modes/proced/evil-collection-proced.el b/.config/emacs/lisp/evil-collection/modes/proced/evil-collection-proced.el
new file mode 100644
index 0000000..8723cd8
--- /dev/null
+++ b/.config/emacs/lisp/evil-collection/modes/proced/evil-collection-proced.el
@@ -0,0 +1,88 @@
+;;; evil-collection-proced.el --- Evil bindings for proced -*- lexical-binding: t -*-
+
+;; Copyright (C) 2017 Pierre Neidhardt
+
+;; Author: Pierre Neidhardt <mail@ambrevar.xyz>
+;; Maintainer: James Nguyen <james@jojojames.com>
+;; Pierre Neidhardt <mail@ambrevar.xyz>
+;; URL: https://github.com/emacs-evil/evil-collection
+;; Version: 0.0.1
+;; Package-Requires: ((emacs "26.3"))
+;; Keywords: evil, proced, tools
+
+;; This file 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, or (at your
+;; option) any later version.
+;;
+;; This file 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.
+;;
+;; For a full copy of the GNU General Public License
+;; see <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+;; Evil bindings for proced.
+
+;;; Code:
+(require 'evil-collection)
+(require 'proced)
+
+(defconst evil-collection-proced-maps '(proced-mode-map))
+
+;;;###autoload
+(defun evil-collection-proced-setup ()
+ "Set up `evil' bindings for `proced'."
+ (evil-collection-set-readonly-bindings 'proced-mode-map)
+ (evil-set-initial-state 'proced-mode 'normal)
+ (evil-collection-define-key 'normal 'proced-mode-map
+ (kbd "RET") 'proced-refine
+
+ ;; mark
+ ;; TODO: Implement a proced-toggle-mark?
+ "m" 'proced-mark ; Mentioned in documentation, should be followed.
+ "*" 'proced-mark-all
+ "M" 'proced-mark-all
+ "U" 'proced-unmark-all
+ "~" 'proced-toggle-marks
+ "c" 'proced-mark-children
+ "C" 'proced-mark-children ; Emacs has "C"
+ "p" 'proced-mark-parents
+ "P" 'proced-mark-parents ; Emacs has "P"
+ (kbd "<delete>") 'proced-unmark-backward
+
+ ;; motion
+ ;; TODO: Implement beginning-of-buffer / end-of-buffer.
+ (kbd "SPC") 'evil-scroll-down
+ (kbd "S-SPC") 'evil-scroll-up
+
+ "zt" 'proced-toggle-tree
+
+ "u" 'proced-undo
+
+ "O" 'proced-omit-processes ; TODO: Change default binding?
+
+ "x" 'proced-send-signal ; Emacs has "k" and "x", "k" is mentioned in documentation
+
+ ;; filter
+ "s" 'proced-filter-interactive ; Refers to "[s]elect", Emacs has "f" mentioned in documentation.
+ "S" 'proced-format-interactive
+
+ ;; sort
+ "oo" 'proced-sort-start ; Refers to "[o]rder", Emacs has "s" mentioned in documentation.
+ "oO" 'proced-sort-interactive
+ "oc" 'proced-sort-pcpu
+ "om" 'proced-sort-pmem
+ "op" 'proced-sort-pid
+ "ot" 'proced-sort-time
+ "ou" 'proced-sort-user
+
+ "r" 'proced-renice
+
+ ;; refresh
+ "gr" 'revert-buffer))
+
+(provide 'evil-collection-proced)
+;;; evil-collection-proced.el ends here