2009-07-09 47 views
170

如何將Vim中的所有文本轉換爲小寫?它甚至有可能嗎?如何在Vim中將所有文本轉換爲小寫

+0

我們有很多的html頁面以大寫的所有字符。這節省了我用小寫重新輸入所有內容的時間。 – ksuralta 2009-07-13 05:30:16

+2

在編輯問題之前,它是如何將vim中的所有文本轉換爲小型大寫字母。顯然,有一個將文本轉換爲小寫的用例。 – lemonad 2009-08-08 13:00:36

+5

VIM網站有答案:http://vim.wikia.com/wiki/Switching_case_of_characters謝謝。 – fnds 2012-11-09 16:43:30

回答

106
  1. 如果你真的是small caps,則沒有,那是不可能的 - 只是因爲它是不可能的文本轉換爲粗體或斜體在任何text editor(相對於word processor)。如果要將文本轉換爲小寫,請創建一個可視塊並按u(或U將轉換爲大寫)。 Tilde(~)在命令模式下反轉光標下方字符的大小寫。

  2. 如果您想查看Vim中的所有文本,可能需要查看guifont選項,或者如果您的Vim flavor支持GUI字體選擇器,請輸入:set guifont=*

+26

我認爲值得一提的是,您不一定必須創建一個可視塊來小寫一段文字。 `guu`將小寫一行,`gu [motion]`將小寫該動作的文本值。同樣,`gUU`和`gU [motion]`也是一樣的,只能用於大寫。 – 2009-07-09 10:28:45

+1

實際上,對於大多數字母,使用ᴀʙcᴅᴇꜰɢʜıᴊᴋʟᴍɴoᴘʀsᴛᴜvwxʏz也可能使用小帽子。 – gerrit 2015-08-18 12:52:53

+0

雖然這只是一個黑客。這些並不意味着被用作常規的小型大寫字體,並且不被字體支持。 (在我的臺式機上,F奇怪地渲染,在我的手機上根本不渲染,舉個例子。)無論如何,Unicode的有趣部分,謝謝! – zoul 2015-08-21 05:30:35

337

我假設你想要小寫的文字。解決方法很簡單:

ggVGu 

說明:

  1. GG - 去首行文字
  2. V - 打開可視的選擇,符合模式
  3. g^ - 轉至文件結尾(此時您已選擇全文)
  4. ü - 小寫所選區域
+76

或ggguG,如果你想做沒有視覺選擇。 :help gu – DrAl 2009-07-09 11:00:38

+24

這應該是被接受的答案 – marcosdsanchez 2013-02-22 01:40:55

7

如果你是在Unix的味道運行

:0,$!tr "[A-Z]" "[a-z]" 
22

的方法很多皮膚貓......這裏的路上,我只是posted約:


:%s/[A-Z]/\L&/g 

同樣適用於大寫:


:%s/[a-z]/\U&/g 

我更喜歡這種方式,因爲我一直在使用這個構造(:%s/[pattern]/replace/g),所以它更自然。

32

相剋〜然後移動類似mangledorf的解決方案,但更短的和外行友好

:%s/.*/\L&/g

2

我也有類似的問題,我想用":%s/old/new/g",但最終使用兩個命令:

:0 
gu:$ 
28

使用本命令模式選項

ggguG 


gg - Goto the first line 
g - start to converting from current line  
u - Convert into lower case for all characters 
G - To end of the file. 
2

通常Vù(或Vü爲大寫)是足以把整個行成小寫作爲V已經選擇整個行來應用針對該操作。

蒂爾達()改變個別信的情況下,導致駱駝情況下或類似的。

它是真正偉大的Vim的有很多很多不同的模式,以應付各種場合和這些模式如何井井有條。

例如,v - 真正的可視化模式,以及相關的V - 視線,並按Ctrl + Q - 視覺塊模式(是什麼讓你選擇塊,一個很大的特點有些其他高級編輯還通過按住Alt鍵關鍵並選擇文本)的報價通常。

-1

使用ggguG

GG:進入到第一線。 區:改變爲小寫。 G:進入到最後一行。

相關問題