我想知道是否有像OmniCppComplete这样的工具用于C#(缩写中显示的方法签名是我最感兴趣的).我到处搜索都没用.
更新:我将主要从shell终端进行编辑,因此请不要建议使用GUI替代Vim.
vim + ctags 适用于C项目,因为C不允许函数重载,并且通常鼓励由于基本的范围设施而手动添加符号.
在C++中,函数经常被重载,并在子类中被重写.这使得vim总是跳到错误的类中的标签上"Ctrl + ]".有没有办法让它表现得更智能一点?我知道我可以带一个带有标签替代品的列表,但是总是不得不提出这个列表并且每当我想跳到定义时按编号找到所需的标签是非常烦人的.
使用旺盛的ctags 5.8 for gcc 4.4.3 c89
我刚刚开始使用exuberant-ctags,我只是想知道你添加了什么选项.
这是一个列表,我只是想知道添加太多可能是超过杀死.
$ ctags --list-kinds=c
c classes
d macro definitions
e enumerators (values inside an enumeration)
f function definitions
g enumeration names
l local variables [off]
m class, struct, and union members
n namespaces
p function prototypes [off]
s structure names
t typedefs
u union names
v variable definitions
x external and forward variable declarations [off]
Run Code Online (Sandbox Code Playgroud)
我打算使用以下内容:
ctags -e --c-kinds=+defgpstux -R
Run Code Online (Sandbox Code Playgroud)
我只是想知道:这有点矫枉过正吗?
c classes No -- I don't have any classes as this is …Run Code Online (Sandbox Code Playgroud) 我使用以下命令为Ruby on Rails项目生成emacs的标记文件:
ctags -f TAGS --extra=-f --languages=-javascript --exclude=.git --exclude=log -e -R . $(rvm gemdir)/gems/
Run Code Online (Sandbox Code Playgroud)
当我试图找到标签(使用M-.)时,一些标签工作正常,但是有很多其他标签我得到的错误如下:
tag-find-file-of-tag-noselect: File /Users/simao/Documents/sp/ofe/° ¡ not found
etags-goto-tag-location: Rerun etags: `^class Tools::FilteringSteps' not found in /Users/simao/Documents/sp/ofe/lib/geo_db.rb
Run Code Online (Sandbox Code Playgroud)
你是如何使用emacs为你的RoR项目生成标签的?你以前见过这个问题吗?
这是输出 ctags --version
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
Compiled: Mar 9 2012, 15:47:35
Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net
Optional compiled features: +wildcards, +regex
Run Code Online (Sandbox Code Playgroud)
我的emacs版本:
GNU Emacs 24.0.95.1 (x86_64-apple-darwin, NS apple-appkit-1038.36) of 2012-04-02
Run Code Online (Sandbox Code Playgroud) 有没有替代ctags和cscope与Objective-c支持.这确实与可可开发有关,因此我不可避免地会使用Xcode(可能应该).我只是想知道我的Vim选项是什么.
也许有一些类型的插件系统,如eclim,但对于xcode?
编辑
所以似乎除了更新ctags以支持objective-c之外,我运气不好.有谁知道cscope是否相同?
我最近放弃了鼠标驱动的,特定于平台的GUI编辑器,并完全致力于vim.迄今为止的体验非常棒,但是当涉及到Javascript时我就陷入了困境.
广受欢迎的taglist实用程序(使用Exuberant Ctags)除了Javascript外,一切都很棒.使用该语言过于自由的形式和结构,taglist只能在我打开它时获取一些功能 - 只有以下格式定义的那些:
function FUNCNAME (arg1, arg2) {
Run Code Online (Sandbox Code Playgroud)
但没有定义的变量或函数对象:
var myFunc = function (arg1, arg2) {
Run Code Online (Sandbox Code Playgroud)
所以我google了一下,找到了ctags的以下定义集,我把它放在〜/ .ctags文件中:
--langdef=js
--langmap=js:.js
--regex-js=/([A-Za-z0-9._$]+)[ \t]*[:=][ \t]*\{/\1/,object/
--regex-js=/([A-Za-z0-9._$()]+)[ \t]*[:=][ \t]*function[ \t]*\(/\1/,function/
--regex-js=/function[ \t]+([A-Za-z0-9._$]+)[ \t]*([^])])/\1/,function/
--regex-js=/([A-Za-z0-9._$]+)[ \t]*[:=][ \t]*\[/\1/,array/
--regex-js=/([^= ]+)[ \t]*=[ \t]*[^""]'[^'']*/\1/,string/
--regex-js=/([^= ]+)[ \t]*=[ \t]*[^'']"[^""]*/\1/,string/
Run Code Online (Sandbox Code Playgroud)
之后,从命令行运行ctags非常棒.它找到了我需要它找到的每个功能和对象.
问题是taglist.vim插件没有看到这些新结果.当我在vim中打开我的javascript文件并点击:TlistToggle时,我得到了与之前相同的少量功能.我点击'u'更新列表,没有任何效果.
深入taglist.vim,我发现了这个:
" java language
let s:tlist_def_java_settings = 'java;p:package;c:class;i:interface;' .
\ 'f:field;m:method'
" javascript language
let s:tlist_def_javascript_settings = 'javascript;f:function'
Run Code Online (Sandbox Code Playgroud)
...这意味着我们只是从jta的ctags实用程序中查看一种特定类型的输出.不幸的是,我对taglist或vim一般都不够精明(尚未)发现我可以做出哪些改变以使所有那些精彩的ctags命令行结果显示在vim中.
帮助赞赏!
今天早上,当我尝试在Vim中打开文件时,我开始收到该消息.Vim是配置文件,git提交消息等的首选编辑器,但不是我的日常代码编辑器.我明确地做了一些邀请这个消息,但我不知道是什么.我最近卸载了一个旧版本的XCode /Developer-3.2.6,但这是唯一让人想到的东西,甚至与切向相关.
我正在运行OSX Lion.兴奋的ctags是基础安装的一部分吗?我知道我没有故意安装它,但如果它不是原生的,那么它可能还带有别的东西吗?有关如何获取插件或删除对它的引用的任何想法,所以我没有收到警告消息?
谢谢.
我正在用vim编写一个c ++项目.
我想在运行make时运行一个ctagscommand(ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .)来生成引用.
我认为这样做的方法是使用,add_custom_command但我对如何将它集成到CMakeLists.txt感到困惑.
我正在寻找相当于Haskell的ctags.我试过hasktags,但它有一些问题:
在枚举器的源文件夹中,run hasktags .给出:
hasktags: tags: openFile: resource busy (file is locked)
Run Code Online (Sandbox Code Playgroud)
当我跑步时vim -t enumFile,会发生错误:
E431: Format error in tags file "tags"
Before byte 4085
E426: tag not found: enumFile
Run Code Online (Sandbox Code Playgroud)
我也试过气囊,但它不能在ghc-7.0.4上编译.
ctags ×10
vim ×6
c# ×1
c++ ×1
cmake ×1
cscope ×1
emacs ×1
haskell ×1
javascript ×1
objective-c ×1
omnicomplete ×1
ruby ×1
rvm ×1
taglist ×1
xcode ×1