如何在 opengrok 的注释部分更改电子邮件 link

how to change the email link in the annotate section of opengrok

有一个我想不通的问题。

在 opengrok 中,当您查看文件并打开注释功能时/link,您会看到变更集历史记录列,搜索此变更列表,以及提交者的用户 ID 或电子邮件地址。我的问题是关于最后一部分,用户 ID 或电子邮件地址。

现在 hyperlink 指向 ...

http://www.myserver.org/viewProfile.jspa?username=jsmith%40acme.com

如何定制它?

这也适用于带有 mercurial 的 opengrok。

提前致谢。

看起来是硬编码的 ;(

https://github.com/OpenGrok/OpenGrok/blob/master/src/org/opensolaris/opengrok/configuration/Configuration.java#L227

因此,执行此操作的正确方法可能是提供您自己的配置实现。

另一种可能的解决方法是禁用 'wrong' 链接——它们在任何情况下都不是很有用.. source/default/style.css 中的类似内容:

.blame .a { /* author name "column" (annotation) */
    text-align: center;
    pointer-events: none;
    cursor: default;
}

#revisions td:nth-child(4) {
    pointer-events: none;
    cursor: default;
}

可以通过 -B 标志配置该值。 https://github.com/OpenGrok/OpenGrok/blob/master/src/org/opensolaris/opengrok/index/CommandLineOptions.java#L77

如果您使用 'OpenGrok' 脚本文件(开始编制索引时 运行 的文件)进行索引,您可以编辑它并在 CommonInvocation()函数。

这是我的更改的一个差异示例:

--- opengrok-0.12.1.5/bin/OpenGrok.orig    2016-02-18 19:16:31.504272867 +0200
+++ opengrok-0.12.1.5/bin/OpenGrok     2016-02-18 19:17:29.167968433 +0200
@@ -148,6 +148,7 @@
     # operating systems, if you have any reasonably generic
     # improvements please feel free to submit a patch.

+    MY_BASE_URL="http://myCompanyUrl.com?q="

     OPENGROK_INSTANCE_BASE="${OPENGROK_INSTANCE_BASE:-/var/opengrok}"

@@ -808,6 +809,7 @@
         ${CTAGS_OPTIONS_FILE:+-o} ${CTAGS_OPTIONS_FILE}                \
         ${OPENGROK_FLUSH_RAM_BUFFER_SIZE} ${SKIN} ${LEADING_WILDCARD}  \
         ${READ_XML_CONF}                                               \
+        -B ${MY_BASE_URL}                                              \
         "${@}"
 }