VIM的omni补全问题
-
- 帖子: 147
- 注册时间: 2008-02-20 9:43
- 来自: Wuhan
VIM的omni补全问题
VIM的omni全能补全装了,
也 set tags+=tags了
CTRL+P 可以调出补全,
但 CTRL+X,CTRL+O 总是提示 pattern not found,找不到模式,
1.请问是什么原因?
2.还有, 补全的颜色 红色background很刺眼,
在哪里修改?
3. 想自己写verilog的snippet, 有没有script写法的介绍?
也 set tags+=tags了
CTRL+P 可以调出补全,
但 CTRL+X,CTRL+O 总是提示 pattern not found,找不到模式,
1.请问是什么原因?
2.还有, 补全的颜色 红色background很刺眼,
在哪里修改?
3. 想自己写verilog的snippet, 有没有script写法的介绍?
-
- 帖子: 147
- 注册时间: 2008-02-20 9:43
- 来自: Wuhan
Re: VIM的omni补全问题
还没有高手出来啊?
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
- kofshower
- 帖子: 1343
- 注册时间: 2007-03-13 11:23
- 联系:
Re: VIM的omni补全问题
红色background很刺眼,莫非你抄了别人的.vimrc;
pattern not found,莫有tag文件;
想自己写verilog的snippet, 有没有script写法的介绍?自带帮助
pattern not found,莫有tag文件;
想自己写verilog的snippet, 有没有script写法的介绍?自带帮助
"We are all in the mud, but some of us are looking at the stars." (Oscar Wilde)
We are not born for ourselves.
人生天地间,并非为自己
Homepage:http://sites.google.com/site/polarisnotme/
We are not born for ourselves.
人生天地间,并非为自己
Homepage:http://sites.google.com/site/polarisnotme/
-
- 帖子: 147
- 注册时间: 2008-02-20 9:43
- 来自: Wuhan
Re: VIM的omni补全问题
eexpress 写了:/usr/share/vim/vim71/syntax/verilog.vim -----这是语法高亮,不是snippet啊
/usr/share/vim/vim71/colors/
-
- 帖子: 147
- 注册时间: 2008-02-20 9:43
- 来自: Wuhan
Re: VIM的omni补全问题
----谢谢,正看kofshower 写了:红色background很刺眼,莫非你抄了别人的.vimrc; -------正是。qmenu可以改了
pattern not found,莫有tag文件; --------tags文件已经设置了, :set+=tags (将所有远程序生成了~/tags)想自己写verilog的snippet, 有没有script写法的介绍?自带帮助
- kofshower
- 帖子: 1343
- 注册时间: 2007-03-13 11:23
- 联系:
Re: VIM的omni补全问题
pattern not found,莫有tag文件; --------tags文件已经设置了, :set+=tags (将所有远程序生成了~/tags)还是不能补全的话:
检查ctags生成的tags对么?原因是源里面其实有两个tags,需要的是etags,其实看看生成的文件就行了。然后看看相应的.vimrc设置,例如
"""""""""""""""""""""""""""""""""""
"ctags设置
"""""""""""""""""""""""""""""""""""
set tags=/home/hunch/.vim/cpp
set tags+=./tags,tags,../tags,../../tags
"set tags+=/home/hunch/.vim/ctags
"set tags+=/home/hunch/.vim/glibctag
"智能补全ctags -R --c++-kinds=+p --fields=+iaS --extra=+q
let OmniCpp_DefaultNamespaces = ["std"]
let OmniCpp_GlobalScopeSearch = 1 " 0 or 1
let OmniCpp_NamespaceSearch = 1 " 0 , 1 or 2
let OmniCpp_DisplayMode = 1
let OmniCpp_ShowScopeInAbbr = 0
let OmniCpp_ShowPrototypeInAbbr = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_MayCompleteDot = 1
let OmniCpp_MayCompleteArrow = 1
let OmniCpp_MayCompleteScope = 1
最后注意如果是c++的注意用ctags -R --c++-kinds=+p --fields=+iaS --extra=+q
检查ctags生成的tags对么?原因是源里面其实有两个tags,需要的是etags,其实看看生成的文件就行了。然后看看相应的.vimrc设置,例如
"""""""""""""""""""""""""""""""""""
"ctags设置
"""""""""""""""""""""""""""""""""""
set tags=/home/hunch/.vim/cpp
set tags+=./tags,tags,../tags,../../tags
"set tags+=/home/hunch/.vim/ctags
"set tags+=/home/hunch/.vim/glibctag
"智能补全ctags -R --c++-kinds=+p --fields=+iaS --extra=+q
let OmniCpp_DefaultNamespaces = ["std"]
let OmniCpp_GlobalScopeSearch = 1 " 0 or 1
let OmniCpp_NamespaceSearch = 1 " 0 , 1 or 2
let OmniCpp_DisplayMode = 1
let OmniCpp_ShowScopeInAbbr = 0
let OmniCpp_ShowPrototypeInAbbr = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_MayCompleteDot = 1
let OmniCpp_MayCompleteArrow = 1
let OmniCpp_MayCompleteScope = 1
最后注意如果是c++的注意用ctags -R --c++-kinds=+p --fields=+iaS --extra=+q
"We are all in the mud, but some of us are looking at the stars." (Oscar Wilde)
We are not born for ourselves.
人生天地间,并非为自己
Homepage:http://sites.google.com/site/polarisnotme/
We are not born for ourselves.
人生天地间,并非为自己
Homepage:http://sites.google.com/site/polarisnotme/
- kofshower
- 帖子: 1343
- 注册时间: 2007-03-13 11:23
- 联系:
Re: VIM的omni补全问题
哦,我是自己设置了柔和的颜色:
if !exists("g:vimrc_loaded")
" color scheme
if has("gui_running")
set guioptions-=T "隐藏工具栏
set guioptions-=m
set guioptions-=L
set guioptions-=r
colorscheme inkpot
highlight PmenuSel ctermbg=7 guibg=DarkBlue guifg=White
highlight PmenuSbar ctermbg=7 guibg=DarkGray
highlight PmenuThumb guibg=Black
highlight Pmenu guifg=#333333 guibg=lightblue ctermbg=13
"hi PmenuSel guibg=#555555 guifg=#ffffff
" 状态行颜色
highlight StatusLine guifg=lightblue guibg=#333333
highlight StatusLineNC guifg=Gray guibg=White
set keywordprg=dictygui
"colorscheme professional
"set guifont=YaHeiConsolasHybrid\ 13
set guifont=Monaco\ 13
"中文字体
set guifo
if !exists("g:vimrc_loaded")
" color scheme
if has("gui_running")
set guioptions-=T "隐藏工具栏
set guioptions-=m
set guioptions-=L
set guioptions-=r
colorscheme inkpot
highlight PmenuSel ctermbg=7 guibg=DarkBlue guifg=White
highlight PmenuSbar ctermbg=7 guibg=DarkGray
highlight PmenuThumb guibg=Black
highlight Pmenu guifg=#333333 guibg=lightblue ctermbg=13
"hi PmenuSel guibg=#555555 guifg=#ffffff
" 状态行颜色
highlight StatusLine guifg=lightblue guibg=#333333
highlight StatusLineNC guifg=Gray guibg=White
set keywordprg=dictygui
"colorscheme professional
"set guifont=YaHeiConsolasHybrid\ 13
set guifont=Monaco\ 13
"中文字体
set guifo
"We are all in the mud, but some of us are looking at the stars." (Oscar Wilde)
We are not born for ourselves.
人生天地间,并非为自己
Homepage:http://sites.google.com/site/polarisnotme/
We are not born for ourselves.
人生天地间,并非为自己
Homepage:http://sites.google.com/site/polarisnotme/
-
- 帖子: 147
- 注册时间: 2008-02-20 9:43
- 来自: Wuhan
Re: VIM的omni补全问题
kofshower 写了:pattern not found,莫有tag文件; --------tags文件已经设置了, :set+=tags (将所有远程序生成了~/tags)还是不能补全的话:
检查ctags生成的tags对么?原因是源里面其实有两个tags,需要的是etags,其实看看生成的文件就行了。然后看看相应的.vimrc设置,例如
"""""""""""""""""""""""""""""""""""
"ctags设置
"""""""""""""""""""""""""""""""""""
set tags=/home/hunch/.vim/cpp
set tags+=./tags,tags,../tags,../../tags
"set tags+=/home/hunch/.vim/ctags
"set tags+=/home/hunch/.vim/glibctag
"智能补全ctags -R --c++-kinds=+p --fields=+iaS --extra=+q
let OmniCpp_DefaultNamespaces = ["std"]
let OmniCpp_GlobalScopeSearch = 1 " 0 or 1
let OmniCpp_NamespaceSearch = 1 " 0 , 1 or 2
let OmniCpp_DisplayMode = 1
let OmniCpp_ShowScopeInAbbr = 0
let OmniCpp_ShowPrototypeInAbbr = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_MayCompleteDot = 1
let OmniCpp_MayCompleteArrow = 1
let OmniCpp_MayCompleteScope = 1
最后注意如果是c++的注意用ctags -R --c++-kinds=+p --fields=+iaS --extra=+q
我用的是Win的版本 :)
ctags 5.7
可能是.vimrc的设置问题,
谢谢!
-
- 帖子: 147
- 注册时间: 2008-02-20 9:43
- 来自: Wuhan
Re: VIM的omni补全问题
确实是 TAGS文件的问题,
现在可以自动补全了,
不过有个新问题:
补全只在一级补全,
就是说只补全 class 的成员函数和变量,
而 class中嵌套的class的成员不能补全,
是不是还需要设置补全级别?
现在可以自动补全了,
不过有个新问题:
补全只在一级补全,
就是说只补全 class 的成员函数和变量,
而 class中嵌套的class的成员不能补全,
是不是还需要设置补全级别?