2011-08-31 82 views
55

計數線我要計算一個範圍內的行,不管什麼樣的範圍,但希望這是,比如說,一個視覺塊。 最簡單的方法是什麼?所有這一切在我腦海中是一樣的東西:'<,'>s/.//n ,但我不相信這是最近的路。Vim的 - 在選定範圍

因此,有人可以給我一個提示?提前致謝。

回答

99

在視覺模式下,按C-克

典型輸出:

Selected 7 of 22 Lines; 8 of 32 Words; 201 of 491 Chars; 201 of 497 Bytes-- VISUAL LINE --


:he count-items發現爲::he標籤標籤 ...

+0

太好了!謝謝你的提示,只要10分鐘就會通過,我會將其標記爲答案)但是有趣的是,vim中有一個函數。我很確定應該有一個功能。 – shabunc

+0

@shabunc:你是什麼意思「vim中有一個函數」?你的意思是你可以「打電話」嗎?你的問題沒有提到。 –

+0

函數就像其他內置函數一樣(':h functions';) – shabunc

5

'<,'>s///n是一個字符短。 :-)

如果我只是想知道在視覺選擇我通常只是猛拉它的行數(命中y)。根據選擇的類型,它會顯示「5行被抽出」或「5行被抽出」。

+2

我也濫竽充數,通常用於這一目的。今天我突然意識到這是學習新東西的時候))) – shabunc

17

設置選項showcmd:h 'sc'),你將永遠需要輸入任何知道有多少行選擇 - 首先,因爲我忘了,我已經設置這個選項,我不明白你的問題點。 ^^」

否則,如果您希望以編程方式獲得了這個數字,這是簡單的:

:echo line("'>") - line("'<") + 1 

從一系列功能中,它也可以通過a:lastline-a:firstline+1獲得。 (:h function-range-example