现在我正在使用:
newEvent.value = 1;
newEvent.station = 0;
newEvent.evtTime = nextTime;
但如果搜索匹配被Event
命令删除,这将导致颜色伪影。
Silversearcher在文档中有这个:
ag sessions --color|cut -b1-130
我可以将 2k 更改为其他内容吗? (对我来说120,因为老实说从来没有使用任何代码我使用真正的代码比这更长)。
答案 0 :(得分:11)
非常奇怪的是,记录在案的--print-long-lines
实际上什么也没做,但是有一个工作开关:-W NUM / --width NUM
根本没有记录。见https://github.com/ggreer/the_silver_searcher/pull/720
答案 1 :(得分:1)
我可以想到三个选择:
只需使用-o选项打印搜索结果而不是整行:ag --color -o
使用less而不是cut,使用-S选项(切断长行)和-R选项(处理颜色转义序列)在屏幕大小的宽度上很好地切断长行: ag --color <pattern> | less -R -S
使用像sed或awk这样的内容而不是剪切:ag --color <pattern> |sed -E "s/(.{$COLUMNS}).*$/\1/"
这将在屏幕大小的限制下剪切返回的行。当然,如果你决定在120列进行切割,你可以:ag --color <pattern> |sed -E "s/(.{120}).*$/\1/"
这最后一个选项并不能防止在颜色转义序列中间切断的可能性。如果您真的很擅长,可以修改sed搜索模式以忽略颜色转义序列 - 已在SO上回答。也就是说,考虑到上面选项1的简单性和正确性,我没有看到这样做的目的。
答案 2 :(得分:0)
ag --width 400 string dir/
# In .bash_aliases (s is for short)
alias ags='ag --width 400'
忽略超过400个字符的行。