Add command ffap-other-tab (Bug#41410)

* lisp/ffap.el (ffap-other-tab): New command, opens files at point in
another tab.
(ffap-bindings): Bind it to find-file-other-tab's binding.
This commit is contained in:
ej32u@protonmail.com 2020-05-19 21:43:13 +00:00 committed by Noam Postavsky
parent b9b8c5e3fa
commit 0cdedf612b

View file

@ -54,6 +54,8 @@
;; C-x 5 r ffap-read-only-other-frame
;; C-x 5 d ffap-dired-other-frame
;;
;; C-x t f ffap-other-tab
;;
;; S-mouse-3 ffap-at-mouse
;; C-S-mouse-3 ffap-menu
;;
@ -1758,6 +1760,14 @@ Only intended for interactive use."
(set-window-dedicated-p win wdp))
value))
(defun ffap-other-tab (filename)
"Like `ffap', but put buffer in another tab.
Only intended for interactive use."
(interactive (list (ffap-prompter nil " other tab")))
(pcase (save-window-excursion (find-file-at-point filename))
((or (and (pred bufferp) b) `(,(and (pred bufferp) b) . ,_))
(switch-to-buffer-other-tab b))))
(defun ffap--toggle-read-only (buffer-or-list)
(dolist (buffer (if (listp buffer-or-list)
buffer-or-list
@ -2013,6 +2023,7 @@ This hook is intended to be put in `file-name-at-point-functions'."
(global-set-key [remap find-file-other-window] 'ffap-other-window)
(global-set-key [remap find-file-other-frame] 'ffap-other-frame)
(global-set-key [remap find-file-other-tab] 'ffap-other-tab)
(global-set-key [remap find-file-read-only-other-window] 'ffap-read-only-other-window)
(global-set-key [remap find-file-read-only-other-frame] 'ffap-read-only-other-frame)