2013-03-18 27 views
3

在vim中使用tabularize真的很好,但是我不喜歡的一件事是當我在一個特別長的集合中有一列時,它會混淆所有其他列。一般來說,我希望我的文字寬度爲80個字符或更少。否則,當你垂直分割時,你會看到一些可讀性。考慮以下幾點:如何讓Vim tabularize自動破解給定的列寬?

mlog->_ofile << "INS="  << string((char *) ins_asm) << delimiter << 
    " in Img: " << (img_name!=0 ? string((char*) img_name) : "INVALID") << 
    delimiter << " at IP=" << setbase(16) << insPointer << delimiter << 
    " Time: " << setbase(10) << time << delimiter; 

你通常會用一個簡單的可視化選擇,那麼這種對齊:製表/ < <。但是,以(img_name!= ......)開頭的長列將所有其他列都強制爲很長,如果tabularize有一個變量,那麼它可以自動找到最佳的間距和排列令牌使最短法律聲明,但這是更爲艱鉅的每種語言做,最好是能夠迅速通過文字寬度分割。

:set tw=80 doesn't do the job either just to note. 

怎麼能一個都與tabularize迅速地調整本聲明,並在適當的地方插入換行符?

回答

1

結果不好看:)但是試試

:Tab /<< 
Select range 
type gq 

看起來像下面這樣。

enter image description here

有一個非可視化方法

:%s/\(.\{78}\)/\1\r/g 

但它看起來更糟

enter image description here