是否有人知道Vim的插件允许我在Github上打开当前文件(或理想情况下,即使是在可视模式下的当前选择)?
我之前有Sublime Text的插件,现在我正在使用Vim,想要有同样的东西。
编辑:我正在寻找一个插件,它会将我的网络浏览器打开到github.com上与我正在编辑的文件对应的页面。例如,如果我在Vim中的foo/bar.js
repo的本地克隆中编辑quux
,则使用此插件将打开https://github.com/dtb/Quux/blob/master/foo/bar.js
。这相当于ST2-Githubinator。
答案 0 :(得分:8)
fugitive.vim插件有:help fugitive-:Gbrowse
可以执行您想要的操作。一般来说它也很棒。
*fugitive-:Gbrowse*
:[range]Gbrowse If the remote for the current branch is on GitHub,
open the current file, blob, tree, commit, or tag
(with git-web--browse) on GitHub. Otherwise, open the
current file, blob, tree, commit, or tag in
git-instaweb (if you have issues, verify you can run
"git instaweb" from a terminal). If a range is given,
it is appropriately appended to the URL as an anchor.
To use with GitHub FI, point g:fugitive_github_domains
at a list of domains:
let g:fugitive_github_domains = ['git.example.com']
:[range]Gbrowse! Like :Gbrowse, but put the URL on the clipboard rather
than opening it.
答案 1 :(得分:1)
一个补充:如果您的遥控器不在github上或者您正在使用mercurial,我的aurum具有类似的功能(它将永远不会运行git instaweb
)::AuHyperlink
。可以找到支持的git遥控器列表here(搜索s:hyp.git
,链接指向最新版本的链接)。除了复制HTML格式文件的链接外,:AuHyperlink
还可以复制带有注释版本文件的URL,当前或给定版本的URL,包含文件历史记录或存储库日志的页面的URL,推送和克隆URL 。虽然使用git测试不是很好:我几乎只使用mercurial(支持python的版本),并且没有其他用户参与开发。
为了不将URL复制到系统剪贴板,但要打开浏览器,您必须使用类似
的内容AuHyperlink cmd call\ system('xdg-open\ '.shellescape(%s))
(如果它不能正常工作,请用你最喜欢的浏览器替换xdg-open
。)