用于添加外部链接的Vim插件

时间:2012-04-02 23:48:25

标签: vim markdown

现在,这可能是显而易见的,已经解决并为每个人所知,但我只是想到了,所以请怜悯......

是否有一个Vim插件(当写下降记文本时),使您能够以这里的 Ctrl - L (StackOverflow)的方式插入链接。或类似的东西。

例如,我在链接http://www.google.com中写入,按 Ctrl - L ,然后将该链接移动到页面底部替换它[描述] [28]其中28是当前(从最后一个增加)标识符。

任何?有类似的吗?

4 个答案:

答案 0 :(得分:5)

我使用自定义宏从系统剪贴板插入链接(在OS X和Windows上使用Vim 7.3测试,也可以在Linux上使用)并使用formd将生成的内联样式链接转换为引用我觉得合适的时候。

我在.vimrc

中获得了这些宏
" Create a Markdown-link structure for the current word or visual selection with
" leader 3. Paste in the URL later. Or use leader 4 to insert the current
" system clipboard as an URL.
nnoremap <Leader>3 ciw[<C-r>"]()<Esc>
vnoremap <Leader>3 c[<C-r>"]()<Esc>
nnoremap <Leader>4 ciw[<C-r>"](<Esc>"*pli)<Esc>
vnoremap <Leader>4 c[<C-r>"](<Esc>"*pli)<Esc>

并使用这些来调用formd文件夹中的~/bin/

" Use formd to transfer markdown from inline to reference links and vice versa
" see: http://drbunsen.github.com/formd/
nmap <leader>fr :%! ~/bin/formd -r<CR>
nmap <leader>fi :%! ~/bin/formd -i<CR>

因此,我只需复制所需的链接,导航到单词(或使用可视模式选择更多单词)转换为链接并点击,4。如果我知道我将链接一个单词或选项但还没有URL,我点击,3并且宏将所需的括号插入为空。

点击,fr会产生参考样式。如果需要,,fi将返回内联样式链接。

答案 1 :(得分:1)

我没有完全匹配的解决方案,但我的vim-googurl插件可以完成部分工作。

答案 2 :(得分:0)

虽然这不是您所描述的确切工作流程this plugin,但它似乎是为了使脚注更易于使用而设计的。

答案 3 :(得分:0)

:help autocmd可用于列出可能的选项。

它可能无法完全满足您的要求,但您可以根据需要进行更改。

autocmd Filetype markdown,rmd noremap ,1 i[][]<Esc>bplla1<esc>m1Go[1]:<Space><esc>p'1f1wa<Space>
autocmd Filetype markdown,rmd noremap ,2 i[][]<Esc>bplla2<esc>m2Go[2]:<Space><esc>p'2f2wa<Space>

其中1是第一个链接,2是第二个链接...

将您的链接放入主要选择。
将光标置于普通模式下,然后按,1开始。