0

例如,考虑我有一个具有两个功能的简单程序。因此,如果我确实设置了 nu 命令,它将给出输出为

1 #include <stdio.h>
2
3 int main ()
4 {
5      printf ("main");
6      return 0;
7 }
8 int func_a()
9 {
10     printf("func_a");
11     return 0;
12 }
13 int func_b()
14 {
15     printf("func_b");
16     return 0;
17 }

VI中是否有任何命令使我得到以下显示,即显示总行数+每个函数的行数。

  1 #include <stdio.h>
  2
  3  int main ()
  4 1 {
  5 2     printf("main");
  6 3     return 0;
  7 4 }
  8  int func_a()
  9 1 {
 10 2     printf("func_a");
 11 3     return 0;
 12 4 }
 13  int func_b()
 14 1 {
 15 2     printf("func_b");
 16 3     return 0;
 17 4 }
4

4 回答 4

0

你应该考虑折叠。

:help folds

您的示例使用折叠将如下所示:

vim 折叠示例

于 2013-02-16T18:53:07.373 回答
0

不,没有。但是你可能会误用符号列来得到这样的东西。Dr. Chip 的RltvNmbr 插件重新实现了'relativenumber'带有符号的功能。您也许可以利用他的一些实施,但这仍然是一项主要的实施工作。

于 2013-02-08T11:07:59.630 回答
0

我认为没有本地方法可以做到这一点。

如果它适合您的用例,您可以尝试:set rnu(或以长形式)。:set relativenumber

于 2013-02-08T10:48:25.143 回答
0

不,这是不可能的。另外,如果可能的话,我怀疑它会计算大括号。

这样的功能有什么意义?

于 2013-02-08T10:48:36.107 回答