在过去的几天里,我一直在强制自己从 Textmate 切换到 Vim。
在大多数情况下,经过一些繁重的 Vim 配置后,我的效率几乎相同。
我还没有找到替代工作流程的一个方面是将文件拖放到 Textmate,其中图像将转换为 img 标签,文件将转换为 require 调用。
如何动态构建图像标记和包含/要求语句?
最佳答案
我一直在想那个自动 <img>
自切换以来的建筑。
Vim 有一个内置的解决方案可以解决一部分问题:omni-completion 引擎允许你完成你想要包含的文件的路径。
如果你开始输入一个“类似路径”的字符串——比如 <img src="images/
— 点击 <C-x><C-f>
可能的完成的小 list 。再加上像 ACP 和 snipMate 这样的自动完成插件,这个过程真的很快。
但这对 width
一点帮助都没有。和 height
.
一个可能的解决方案是将 snipMate 用于 <img>
片段,使用 <C-x><C-f>
对于图像的路径,捕获路径并将其提供给一些命令行实用程序,填写 width
和 height
属性及其输出。
编辑
原来其他人已经探索过类似的道路,this script很有趣,但对于包含空格的文件路径,它不能正常工作。 Here is a slightly modified version效果相当好。 This other one看起来很酷,但它缺少一个关键的部分。
结束编辑
另一个编辑
我已将此代码段添加到 ~/.vim/bundle/snipMate/snippets/html.snippets
(注意 $
之前的缩进是 <Tab>
):
snippet img custom
${1:`HTML_insertImg()`}
效果很好,但前面加上了
HTML_insertImg()
的输出与 0
像这样:0<img src="future_timeline.png" width="612" height="6370" alt="" />
此
0
不过有点问题。系统显然并不完美,但一旦我摆脱这种唠叨0
它将非常适合我的其余基于 snipMate 的过程。顺便说一下here is a second modified version我使用的脚本。
结束另一个编辑
加长版 12"重新编辑版
和:
identify
~/.vim/plugins/
~/.vim/nerdtree_plugin
你可以:
b
拥有一个几乎完整的 <img src="imagename.jpg" width="128" height="256" alt="" />
标签粘贴在上一个窗口中的光标位置 :IMG<CR>
打开 native 文件选择对话框,选择一个图像并获得几乎完整的 <img src="imagename.jpg" width="128" height="256" alt="" />
当前窗口中光标所在位置粘贴的标签:IMG path/to/file.jpg
拥有一个几乎完整的 <img src="imagename.jpg" width="128" height="256" alt="" />
当前窗口中光标所在位置粘贴的标签snipMate 解决方案现在还没有真正成熟。
感谢 Petr Mach 和 @Matteo Riva因为实际上做了大部分工作。
是的,我显然不是 Vim 专家。
结束加长 12"重新编辑版本
关于image - vim 图像放置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5707925/