标签: ctags

是否可以在没有 root 权限的情况下安装 ctags?

我有用户访问 Ubuntu 实例的权限,我想使用 CTags。错误说:

The program 'ctags' can be found in the following packages:
 * exuberant-ctags
 * emacs22-bin-common
 * emacs21-bin-common
 * elvis-tools
 * emacs-snapshot-bin-common
Ask your administrator to install one of them
-bash: ctags: command not found
Run Code Online (Sandbox Code Playgroud)

这和所有在线说明都表明我需要成为 root。有没有办法以用户身份安装它?

linux vim ctags ubuntu

8
推荐指数
2
解决办法
1万
查看次数

gVim - 什么是 ctags,我该如何使用它?

我是Windows 上的常规gVim用户,但除了安装它、设置我的小_vimrc文件然后继续使用之外,别做太多。

现在我试图理解 gVim Omni 完成并让它工作(我通过haXe发现了它)。

看书:help new-omni-completion,我看到了一些关于ctags

但是去ctags 网站,他们的网站让我很困惑。

有什么作用ctags,我为什么要它?

最重要的部分:我如何安装它?

我下载的源代码 + 二进制存档随附的页面和文档对安装感到困惑(并且似乎主要关注 Linux,尽管我使用的是 Windows)。他们中的大多数人谈论从源代码编译,并没有说明如何处理生成的二进制文件(我下载的存档已经包含,预编译)。

windows gvim ctags

8
推荐指数
1
解决办法
1万
查看次数

如何使用ctags和vim跳转到java方法

在我升级我的 Ubuntu 系统之前,这曾经有效:

ctags *.java
vim -t fooFunc
Run Code Online (Sandbox Code Playgroud)

这会带我去例如 Foo.fooFunc()

但是现在,vim 转到标准的“未找到标签”页面。

我现在必须这样做:

vim -t Foo.fooFunc()
Run Code Online (Sandbox Code Playgroud)

让它做正确的事。

更重要的是,^]根本不再起作用。

查看生成的标签文件,我看到如下条目:

Foo.fooFunc Foo.java  /^    private void fooFunc() {$/
Run Code Online (Sandbox Code Playgroud)

虽然旧版本的 ctags 生成的标签文件看起来像

fooFunc Foo.java  /^    private void fooFunc() {$/
Run Code Online (Sandbox Code Playgroud)

所以看起来 ctags 现在坏了。

有没有办法恢复到旧的行为?或者让 vim 尊重新格式?

java vim ctags

8
推荐指数
1
解决办法
5207
查看次数

让 VIM 跳转到现有选项卡中的 ctag

我的 vim 安装配置了 ctags。我的习惯是通常在 vim 的选项卡中一次性打开我正在处理的所有相关文件。“问题”是,如果我使用 Ctrl+] 跳转到我正在编辑的文件中的 ctag,它将替换该选项卡中的缓冲区,即使我已经打开了另一个包含该符号的选项卡。如果它只是切换到该选项卡并跳转到那里的符号会好得多。这样,我将始终拥有 1 比 1 的选项卡与文件的比率。

我注意到在taglist.vim插件(我也使用)的Changenotes 中有一个条目说

1. 添加了对跳转到新标签或现有标签中的标签/文件的支持 
   从 taglist 窗口(仅适用于 Vim7 及更高版本)。 

但是,我在 Taglist(或 Ctags)的文档中找不到关于如何实际执行此操作的任何内容。

任何vim大师可以填写我吗?谢谢!

vim ctags

6
推荐指数
1
解决办法
1598
查看次数

在 vim 中,为什么 :tselect 会显示错误的列表?

我在vim中打开了这段代码:

$this->mockEvolve(...);
Run Code Online (Sandbox Code Playgroud)

当我将Ctrl + ]光标放在 上时m,它让我看到了它的定义。

但是,当我:ts在光标位于 上时运行时m,vim 会向我显示以下标签列表:

  # pri kind tag               file
> 1 F   f    mockGet           <filename>
               public function mockGet(...)
Run Code Online (Sandbox Code Playgroud)

我经常遇到这个问题(不仅仅是这个功能)。任何想法发生了什么?

vim ctags

5
推荐指数
1
解决办法
637
查看次数

如何在 ubuntu 的终端中记住多个选项卡的会话?

我在 vim 中打开了许多文件,在那里我正在使用 ctags 编辑和跟踪程序流程,我不想在下次重新启动时丢失所有这些信息,我无法让系统保持运行几周或几个月。

有没有办法保存当前的终端状态或/和 vim 堆栈状态?

这是类似的问题

vim linux-terminal ctags

5
推荐指数
1
解决办法
1636
查看次数

当多个标签匹配时如何跳转到正确的方法定义?

我尝试通过以下方式生成标签文件:

ctags -R * ??java?kinds=+mc
Run Code Online (Sandbox Code Playgroud)

但是当有多个匹配项时,ctrl+] 总是跳转到另一个类中错误的方法定义。

我知道我可以使用 :tjump 来选择是否有多个选项。但我希望有更好的解决方案(如果有的话)?

vim ctags

4
推荐指数
1
解决办法
2747
查看次数

如何在vim中的新拆分或下一个拆分中打开引用

当我移动一个关键字然后点击 时^],它将跳转到当前活动拆分中的定义。如何保持当前拆分相同,而是在另一个拆分窗口(垂直或水平)中打开定义?

vim split-window c ctags

4
推荐指数
1
解决办法
2149
查看次数

在 Vim 中跳转到函数

我有 ctags,我会通过将光标放在一个函数上并按 ctrl ] 来跳转到函数。但是,我发现这有时很不方便。

例如,如果我的光标离我想跳转到的函数很远,那么它会令人沮丧。

ctags 或 vim 中是否有命令可以通过键入函数名称并按下按钮来自动跳转到函数?如果它是模糊的并为您预测功能会更好。因此,例如,如果我想转到一个名为 的函数process_input(),那么我会输入该函数并按g什么。

vim ctags

0
推荐指数
1
解决办法
649
查看次数

标签 统计

ctags ×9

vim ×8

c ×1

gvim ×1

java ×1

linux ×1

linux-terminal ×1

split-window ×1

ubuntu ×1

windows ×1