每次打开vim时,它都会生成各种日志文件。
bt_regexp_debug.log
bt_regexp_log.log
nfa_regexp_debug.log
nfa_regexp_dump.log
nfa_regexp_run.log
为什么要创建它们,我怎样才能阅读它们?
答案 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
找到了答案。学会爱grep
。 grep
是你的朋友。 ; - )