about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2021-09-09 17:28:29 -0700
committerFranck Cuny <franck@fcuny.net>2021-09-09 17:28:29 -0700
commit375855ac251b905f19d9597766138e37051a9da6 (patch)
treefe30f1df2640ae9fbdbed3865966559bee7f8c94
parentstatic: add profile picture (diff)
downloadfcuny.net-375855ac251b905f19d9597766138e37051a9da6.tar.gz
blog: update elisp for git/sourcegraph
-rw-r--r--content/blog/git-link-and-sourcegraph.org15
1 files changed, 12 insertions, 3 deletions
diff --git a/content/blog/git-link-and-sourcegraph.org b/content/blog/git-link-and-sourcegraph.org
index 034f8da..3ab5f4b 100644
--- a/content/blog/git-link-and-sourcegraph.org
+++ b/content/blog/git-link-and-sourcegraph.org
@@ -15,13 +15,22 @@ The next time you run =M-x git-link= in a buffer, it will use the URL associated
 #+begin_src elisp
 (use-package git-link
   :ensure t
+  :after magit
+  :bind (("C-c g l" . git-link)
+         ("C-c g a" . git-link-commit))
   :config
   (defun fcuny/get-sg-remote-from-hostname (hostname)
     (format "sourcegraph.<$domain>.<$tld>/%s" hostname))
 
-  (defun fcuny/git-link-work-sourcegraph (hostname dirname filename branch commit start end)
-    (let ((sg-base-url (fcuny/get-sg-remote-from-hostname hostname)))
-      (git-link-sourcegraph sg-base-url dirname filename branch commit start end)))
+  (defun fcuny/git-link-work-sourcegraph (hostname dirname filename _branch commit start end)
+    ;;; For a given repository, build the proper link for sourcegraph.
+    ;;; Use the default branch of the repository instead of the
+    ;;; current one (we might be on a feature branch that is not
+    ;;; available on the remote).
+    (require 'magit-branch)
+    (let ((sg-base-url (fcuny/get-sg-remote-from-hostname hostname))
+          (main-branch (magit-main-branch)))
+      (git-link-sourcegraph sg-base-url dirname filename main-branch commit start end)))
 
   (defun fcuny/git-link-commit-work-sourcegraph (hostname dirname commit)
     (let ((sg-base-url (fcuny/get-sg-remote-from-hostname hostname)))