diff options
author | Yuchen Pei <id@ypei.org> | 2023-10-03 22:41:30 +1100 |
---|---|---|
committer | Yuchen Pei <id@ypei.org> | 2023-10-03 22:41:30 +1100 |
commit | cc87261421ebcb1dc87c8380347e9260a69c998d (patch) | |
tree | a43b80df9342a52654de35b1c3fcc49324da9b60 /emacs/.emacs.d/lisp | |
parent | a696cbe0f1d96e2ac6a3454d716326f20312a4a8 (diff) |
[emacs] [gdb] Some small changes
- my-mark-backward-up-list: like backward-up-list, but also mark the sexp
- my-kill-sexp-or-comment: kill the next sexp or comment, replacing kill-sexp
- my-mark-sexp-or-comment: mark the next sexp or comment, replacing
mark-sexp
- my-magit-ignore-other-worktrees: a filter-args advice to add
--ignore-other-worktrees to magit-checkout
Diffstat (limited to 'emacs/.emacs.d/lisp')
-rw-r--r-- | emacs/.emacs.d/lisp/my/my-editing.el | 27 | ||||
-rw-r--r-- | emacs/.emacs.d/lisp/my/my-magit.el | 8 |
2 files changed, 35 insertions, 0 deletions
diff --git a/emacs/.emacs.d/lisp/my/my-editing.el b/emacs/.emacs.d/lisp/my/my-editing.el index f8e405e..b24103f 100644 --- a/emacs/.emacs.d/lisp/my/my-editing.el +++ b/emacs/.emacs.d/lisp/my/my-editing.el @@ -481,5 +481,32 @@ With an prefix-arg, copy the file name relative to project root." (goto-char (point-min)) (forward-line (1- line-number)))))) +(defun my-mark-backward-up-list () + "Mark the sexp containing the current one." + (interactive) + (backward-up-list) + (activate-mark) + (set-mark (point)) + (forward-sexp) + (exchange-point-and-mark)) + +(defun my-kill-sexp-or-comment (&optional n) + "Kill the next n sexp. On failure, call `comment-kill' instead." + (interactive) + (condition-case _ + (kill-sexp n) + (scan-error (comment-kill (or n 1))))) + +(defun my-mark-sexp-or-comment () + "Mark the next sexp or comment." + (interactive) + (condition-case _ + (mark-sexp) + (user-error + (set-mark + (save-excursion + (forward-comment 1) + (point)))))) + (provide 'my-editing) ;;; my-editing.el ends here diff --git a/emacs/.emacs.d/lisp/my/my-magit.el b/emacs/.emacs.d/lisp/my/my-magit.el index c6fc0f6..efb3c84 100644 --- a/emacs/.emacs.d/lisp/my/my-magit.el +++ b/emacs/.emacs.d/lisp/my/my-magit.el @@ -67,5 +67,13 @@ (replace-regexp-in-string "/build\\>.*" "/src" default-directory)))) +(defun my-magit-ignore-other-worktrees (rev-and-args) + "Add --ignore-other-worktrees to the second element of REV-AND-ARGS. + +For use as a :filter-args advice" + (pcase-let ((`(,revision ,args) rev-and-args)) + (list revision + (cons "--ignore-other-worktrees" args)))) + (provide 'my-magit) ;;; my-magit.el ends here |