如何在 Dropbox.com 上设置私人 vimwiki

如何在 Dropbox.com 上设置私人 vimwiki

我认为阅读此页面的人知道 vimwiki 和 dropbox.com 是什么以及它们的用途,所以我可能会直接陷入我的困惑。

在 Dropbox 上设置 PRIVATE vimwiki 的常用方法是简单地让您的 vimwiki 目录位于 Dropbox 文件夹下(但不是 Dropbox/Public/,因为它是 PUBLIC)。Dropbox 允许直接使用 dropbox.com/*** url 查看 html:例如,可以index.html通过 url 访问https://dl-web.dropbox.com/get/Wiki/html/index.html?w=bfead71a,在文件名后添加指定的字符串?w=bfead71a

因此,如果 index.html 中引用了 A.html,而 A.html 又位于 index.html 所在的文件夹中,则必须使用类似 的 URL 来访问它https://dl-web.dropbox.com/get/Wiki/html/index.html?w=SPECIFIED_STRING。但似乎不可能破解 vimwiki 以使转换后的 html 中的 href 以这种方式得到纠正。

有没有什么方法可以解决这个问题?

答案1

只需在 '.vim/autoload/vimwiki_html.vim' 中搜索“href”,然后在适当的地方添加指定的字符串。

例如改变这个:

  let link = '<a href="'.vimwiki#safe_link(a:src).
        \ '.html">'.a:caption.'</a>'

更改为:

  let link = '<a href="'.vimwiki#safe_link(a:src).
        \ '.html?w=SPECIFIED_STRING">'.a:caption.'</a>'

当然,为了使其不那么容易被黑客入侵并且能够发布到不同的目标,您需要使其具有条件和可配置性;-)

使其可配置的一种方法是引入一个新的全局变量,例如g:vimwiki_internal_link。使其成为将插入 wikiname 的模式:

let g:vimwiki_internal_link=textbefore__textafter

默认情况下,该值为__.html,您可以将其更改为__.html?w=SPECIFIED_STRING。然后您必须将代码添加到 '.vim/autoload/vimwiki_html.vim' 以进行替换。

相关内容