windows下的gvim和emmet 下载和安装 + "omnifunc is not set" solution?

821299-20170220153230366-395003389.png

821299-20170220153324820-1491120558.png

注意几个地方:

  1. 引导键是ctrl-y, 其他就是实际的操作键了, 如: n下一个插入点, N是上一个插入点(不是p),
  2. ctrl-y + i是自动为图片添加宽度和高度尺寸, 要点是要把光标移动到 img标签内

  3. 几个简写: 在特定的几个标签后, 可以用大于符号来表示子元素, 而不用特别指明,因为在这些标签下的子元素只能是那样的, 没有其他的可能, 包括这样几个: ul>(.list$)4. table>(#row$)3>.td*3等

  4. 文字, 关于文字, 不一定必须要在大括号前面加 标签元素, 可以直接 就是 文字内容。 但是这个其实是没有什么意义的!

  5. 几个比较有用的操作: ctrl-y+ k是删除光标所在的 标签块 // 这个也是很有用的

  6. ctrl-y / 是切换html注释的方法. ::: 这个是非常有用的

注意, 所有的操作都是在 "插入" 状态下进行的!!


原来 的是用的 zencoding.vim插件, 但是不支持 lipsum和lorem等features, 所以 更换为 emmet后, 功能更强.

方法是 从vim-script站点或 github上下载 emmet.vim下来后, 将对应的目录下的内容拷入到 vim/vimfies/ 对应的目录下即可, 自动载入使用!!!

文件已经下载到网盘上.... 这样 windows下 的gvim 编辑环境就比较 理想 完美了!!!


解决: option "omnifunc" is not set 导致 gvim卡的问题?

设置了下面的 autocmd... set omnifunc=...后, 果然不再提示: omnifunc is not set 这个错误了!! 而且 gvim用 起来也比较 流畅了!!

在_vimrc中加入如下代码:

filetype plugin indent on
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS 
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complete
if has("autocmd") && exists("+omnifunc")
     autocmd Filetype *
   \ if &omnifunc == "" |
   \   setlocal omnifunc=syntaxcomplete#Complete |
   \ endif
endif
let g:rubycomplete_buffer_loading = 1
let g:rubycomplete_classes_in_global = 1
"let g:rubycomplete_rails = 1

而像这个自动完成对功能: 本身就是 gvim自带的功能, --keyword completion, 其中的^N,^P是指可以通过ctrl-N 和 ctrl-P 进行上下选择备选选项.

821299-20170220232209507-1347358805.png

how to solute "error detected htmlcomplete#?
821299-20170221103347710-1464197776.png

出现这样的错误,只要找到htmlcomplete.vim这个文件
比如说我的在/usr/share/vim/vim73/autoload/htmlcomplete.vim这里,
然后在288行加上let classlines = [] 使之变成

for file in cssfiles
 let classlines = []
 if filereadable(file)
     let stylesheet = readfile(file)

"error detected while processing function htmlcomplete#completeTags: variable is not defined 'classLines'" 是因为在 vim/vim73/autoload 中有htmlcomplete.vim,主要是用来自动完成 html的标签的, 如class 的标签属性, 但是也带来很多问题, 而emmet已经很好, 不需要什么htmltags的自动补全了. 所以 不需要在vim启动的时候, 去自动载入htmlccomplete.vim, 把这个文件改成 bak备份文件就好了, 这样就能够屏蔽 它了.

同样的还有很多的自动完成对标签, 如果有问题的话 , 都可以进行bak 备份屏蔽
821299-20170221105101741-1492046575.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值