打开vim后如何读取日志文件

时间:2016-03-16 01:47:43

标签: vim

每次打开vim时,它都会生成各种日志文件。

bt_regexp_debug.log
bt_regexp_log.log
nfa_regexp_debug.log
nfa_regexp_dump.log
nfa_regexp_run.log

为什么要创建它们,我怎样才能阅读它们?

1 个答案:

答案 0 :(得分:3)

来自regexp_nfa.c

#ifdef ENABLE_LOG
    log_fd = fopen(NFA_REGEXP_RUN_LOG, "a");

[...]

#ifdef ENABLE_LOG
    { 
        FILE *f = fopen(NFA_REGEXP_RUN_LOG, "a");

regexp.c

#ifdef BT_REGEXP_LOG
    f = fopen("bt_regexp_log.log", "a");

所有对此的调用似乎都包含在#ifdef ENABLE_LOG#ifdef BT_REGEXP_LOG中。换句话说:他们是编译时开关。

查看这两个文件的顶部,我看到:

#ifdef DEBUG
# define NFA_REGEXP_ERROR_LOG   "nfa_regexp_error.log"

#ifdef DEBUG
/* show/save debugging data when BT engine is used */
# define BT_REGEXP_DUMP

结论:您的Vim编译时定义了DEBUG

您可以使用vim --version验证这一点,它应在底部显示DEBUG BUILD。我没有看到任何方法在运行时禁用创建这些文件;你需要重新编译Vim。

启用/禁用此功能似乎不是configure开关。它应该默认禁用。在feature.h我看到:

/*
 * DEBUG                Output a lot of debugging garbage.
 */
/* #define DEBUG */

Makefile我看到了:

#CFLAGS = -g -DDEBUG -Wall -Wshadow -Wmissing-prototypes

请注意,两者都已注释掉。

您也可以使用make CFLAGS="-DDEBUG"手动运行make。

P.S。我也不知道这些,但很快就在Vim源代码树上使用grep找到了答案。学会爱grepgrep是你的朋友。 ; - )