From 47a56604069e5fc04a1dfa60ff6bf006b11539a4 Mon Sep 17 00:00:00 2001 From: JSDurand Date: Thu, 5 Aug 2021 15:45:46 +0800 Subject: new: man-conf.el * man-conf.el (durand-member): A helper declared in another configuration file. (Man-kill, durand-Man-kill): Overriding the default Man-kill to also kill the tab associated with the Manual page. --- man-conf.el | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 man-conf.el diff --git a/man-conf.el b/man-conf.el new file mode 100644 index 0000000..3958470 --- /dev/null +++ b/man-conf.el @@ -0,0 +1,48 @@ +;;; man-conf.el --- Manual pages configurations -*- lexical-binding: t; -*- + +;; Copyright (C) 2021 李俊緯 + +;; Author: 李俊緯 +;; Keywords: unix, help, maint + +;; 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 . + +;;; Commentary: + +;; Configurations for the Man-mode. + +;;; Code: + +(declare-function 'durand-member + (locate-user-emacs-file "common.el")) + +;;;###autoload +(defun durand-Man-kill () + "Kill the buffer and the tab." + (interactive) + (quit-window t) + (let* ((tabs (funcall tab-bar-tabs-function)) + (tab-names (mapcar (lambda (tab) + (cdr (assq 'name tab))) + tabs)) + (foundp (durand-member "man page" tab-names + #'string=))) + (cond + (foundp + (tab-bar-close-tab-by-name "man page"))))) + +(advice-add #'Man-kill :override #'durand-Man-kill) + +(provide 'man-conf) +;;; man-conf.el ends here -- cgit v1.2.3-18-g5258