【问题标题】:How can I document the number of lines of code I have edited or written when using Vim?如何记录我在使用 Vim 时编辑或编写的代码行数?
【发布时间】:2019-01-11 16:16:16
【问题描述】:

我知道用代码行数来衡量生产力基本上没有意义,但我很好奇。 我使用 Vim,我的目标是:

有一个 number_of_lines_code.txt 文件在我编码时自动更新,它记录了代码的行数,以便我可以查看我在一周、一个月、一年内写了多少。

【问题讨论】:

  • 我可以想象一个围绕 vi(m) 命令的包装器来检查目标文件是否存在。如果文件不存在,则将 :start" 变量设置为 0。否则将其设置为 wc -l targetFile 的结果。fork vim 以编辑 targetFile。vim 返回后对目标文件执行另一个 wc -l 并从结束值并将结果与​​日期时间戳一起存储在您的跟踪文件中。
  • 这不是 vim/editor 的任务,您可以从版本控制系统中获取该信息,例如混帐
  • 我不认为 Vim 是您问题的答案。也许尝试使用一些脚本和别名的组合,在编辑之前和编辑之后保存文件中的行数并将它们相互减去,然后将其添加到某种计数器?
  • 参见Git: How to estimate a contribution of a person to my project in terms of added/changed lines of code?,该答案给出了一个专门计算一个人在给定时间间隔内的贡献(以 LoC 为单位)的 sn-p。

标签: vim vi


【解决方案1】:

正如其他人在 cmets 中提到的,跟踪已编辑的 loc 不是编辑的工作(您应该使用 git 或其他 vcs)。恕我直言,尝试使用编辑器完成此任务的一个明显弱点是,编辑器通常不知道同一编辑器之前或之后的会话。

但是,一种手动的、简单的方式来做你想做的事情可能是以下

  • 保存文件
  • 撤消所有更改(如果您使用Gundo plugin,这很容易做到,但我敢打赌还有其他方法可以做到这一点)
  • 用其他名称保存文件
  • 退出vim
  • diff 这两个文件和/或做任何你需要转换数字差异的事情

【讨论】:

    猜你喜欢
    • 2017-06-17
    • 2014-10-12
    • 1970-01-01
    • 2018-05-05
    • 2017-10-25
    • 2021-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多