簡體   English   中英

vim查找報告並將出現的次數存儲在緩沖區中

[英]vim find report AND store number of occurrences in buffer

我得到這部分:s / pattern // gn使用vim報告“模式”的出現次數。

但是有什么方法可以將報告的號碼存儲在緩沖區中以備后用?

首先,我想您的意思是“緩沖區”是“寄存器/變量”。

有多種方法可以實現:

  • 外部命令是最直接的方式,IMO

     let a=system('grep -c "yourPattern" '.expand("%:p")) 

    因此,變量a包含計數。 但是您需要有grep可用,並且vim緩沖區應該是一個文件。

  • 使用searchpos()函數並循環。 從col1第1行,調用searchpos()函數,累積匹配項,直到文件/緩沖區結束。 您需要實現循環。

  • 使用redirect( :redir )將消息重定向到注冊,然后進行進一步處理。 因此,您可以在寄存器x matches in y lines消息中有x matches in y lines然后稍后再選擇x個。

我更喜歡第一種方式。

:h item會向您顯示該項目的幫助文檔(功能用法/選項/命令等),如果您不了解某些命令/功能,請執行此操作。

但是首先您應該執行:h window ,以了解什么是vim中的緩沖區/窗口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM