vc-ignore-dir-regexp is configured to ignore TRAMP buffers to speedup projectile. browse-at-remote uses vc-git-root to find git root project and it will fail to find project root for remote buffers. Temporary return vc-ignore-dir-regexp to default value. Fix: #5660
48 lines
1.7 KiB
EmacsLisp
48 lines
1.7 KiB
EmacsLisp
;;; emacs/vc/autoload/vc.el -*- lexical-binding: t; -*-
|
|
|
|
(defun +vc--remote-homepage ()
|
|
(require 'browse-at-remote)
|
|
(or (let ((url (browse-at-remote--remote-ref)))
|
|
(cdr (browse-at-remote--get-url-from-remote (car url))))
|
|
(user-error "Can't find homepage for current project")))
|
|
|
|
(defvar browse-at-remote-prefer-symbolic)
|
|
;;;###autoload
|
|
(defun +vc/browse-at-remote (&optional arg)
|
|
"Open URL to current file (and line if selection is active) in browser.
|
|
If prefix ARG, negate the default value of `browse-at-remote-prefer-symbolic'."
|
|
(interactive "P")
|
|
(require 'browse-at-remote)
|
|
(let ((vc-ignore-dir-regexp locate-dominating-stop-dir-regexp)
|
|
(browse-at-remote-prefer-symbolic
|
|
(if arg
|
|
(not browse-at-remote-prefer-symbolic)
|
|
browse-at-remote-prefer-symbolic)))
|
|
(browse-at-remote)))
|
|
|
|
;;;###autoload
|
|
(defun +vc/browse-at-remote-kill (&optional arg)
|
|
"Copy URL to current file (and line if selection is active) to clipboard.
|
|
If prefix ARG, negate the default value of `browse-at-remote-prefer-symbolic'."
|
|
(interactive "P")
|
|
(require 'browse-at-remote)
|
|
(let ((vc-ignore-dir-regexp locate-dominating-stop-dir-regexp)
|
|
(browse-at-remote-prefer-symbolic
|
|
(if arg
|
|
(not browse-at-remote-prefer-symbolic)
|
|
browse-at-remote-prefer-symbolic)))
|
|
(browse-at-remote-kill)))
|
|
|
|
;;;###autoload
|
|
(defun +vc/browse-at-remote-homepage ()
|
|
"Open homepage for current project in browser."
|
|
(interactive)
|
|
(browse-url (+vc--remote-homepage)))
|
|
|
|
;;;###autoload
|
|
(defun +vc/browse-at-remote-kill-homepage ()
|
|
"Copy homepage URL of current project to clipboard."
|
|
(interactive)
|
|
(let ((url (+vc--remote-homepage)))
|
|
(kill-new url)
|
|
(message "Copied to clipboard: %S" url)))
|