@@ -304,6 +304,15 @@ we can prevent that behaviour."
304
304
:type 'list
305
305
:group 'git-link )
306
306
307
+ ; ; https://support.atlassian.com/bitbucket-cloud/docs/readme-content/#Extensions-and-Languages
308
+ (defcustom git-link-extensions-rendered-via-bitbucket-annotate '(" org" " md" " mkd" " mkdn" " mdown"
309
+ " markdown" " text" " rst" " textile"
310
+ " asciidoc" )
311
+ " List of extensions that should be rendered via annotate else
312
+ they will actually be rendered. We can prevent that behaviour."
313
+ :type 'list
314
+ :group 'git-link )
315
+
307
316
(defun git-link--exec (&rest args )
308
317
(ignore-errors
309
318
(with-temp-buffer
@@ -678,9 +687,10 @@ return (FILENAME . REVISION) otherwise nil."
678
687
679
688
(defun git-link-bitbucket (hostname dirname filename _branch commit start end )
680
689
; ; ?at=branch-name
681
- (format " https://%s /%s /src /%s /%s "
690
+ (format " https://%s /%s /%s /%s /%s "
682
691
hostname
683
692
dirname
693
+ (git-link--should-render-via-bitbucket-annotate filename)
684
694
commit
685
695
(if (string= " " (file-name-nondirectory filename))
686
696
filename
@@ -800,6 +810,15 @@ shown as a plain file"
800
810
(let ((extension (or (file-name-extension filename) " " )))
801
811
(member (downcase extension) git-link-extensions-rendered-plain)))
802
812
813
+ (defun git-link--should-render-via-bitbucket-annotate (filename )
814
+ " Check if the extension of the given filename belongs
815
+ to the list of extensions which generated link should be
816
+ shown via annotate in bitbucket."
817
+ (let ((extension (or (file-name-extension filename) " " )))
818
+ (if (member (downcase extension) git-link-extensions-rendered-via-bitbucket-annotate)
819
+ " annotate"
820
+ " src" )))
821
+
803
822
;;;### autoload
804
823
(defun git-link (remote start end )
805
824
" Create a URL representing the current buffer's location in its
0 commit comments