2010-09-03 57 views
10

長期Eclipse用戶在這裏;我最近發現添加到Eclipse 3.5中的「塊選擇模式」(Alt-Shift-A)。我試過了,它很整潔 - 我可以在我的源代碼中選擇一個矩形的文本,而不是像我通常那樣在一次選擇一行。塊選擇模式有什麼好處?

顯然這個功能在其他編輯器中也很常見,像「列編輯模式」等其他名稱一樣。很多人似乎真的很喜歡它,但是我很久沒有看到它了。

所以我的問題是:這個功能有什麼用處?

我能想到的唯一一個插入註釋字符(如//或#)在大塊文本前面。另外,我想如果我有一堆變量名稱都排成一列,我想一次性更改所有變量的第一個字符。但肯定還有更多呢?我的意思是,在選擇編輯器時,這個功能顯然對某些人來說是一種破壞行爲!

+0

+1我將它用於您提到的可能用例,但現在您要求... – BoltClock 2010-09-03 21:13:48

回答

4

我發現它是非常有用使用固定位置的現場數據文件時,你只想選擇幾個字段進行搜索替換或複製粘貼。它也適用於這樣的事情:

call_foo('A',123); 
call_foo('B',143); 
call_foo('C',331); 
call_foo('A',113); 
call_foo('R',789); 

代碼是一樣的,除了某些字符在某些列。您可以選擇第二個參數周圍的塊並搜索包含113的行。這種格式的文本不僅僅包含幾行文字時非常有用。

+3

更不用說,選擇''_f'並在心跳中將其更改爲'F'。雖然通常我認爲它在Eclipse中比在純文本編輯器中更有用。在Eclipse中編寫Java代碼只需重構方法名稱即可。但是,當我用Perl編寫代碼時,我使用UltraEdit,列編輯節省了大量時間。 – 2010-09-03 21:23:15

+0

啊,是的好點。我在Eclipse中執行Java和Python,並且我可以看到你的意思 - 在Python中重構工具還沒有完全開發的時候會更加容易。 – Xanatos 2010-09-03 21:33:19

0

如果您正在查看具有固定寬度字段的文件,有時您只想選擇一列。

3

我的一位同事告訴我一個項目,他們寫JDBC代碼:

String query = 
    "select question, answer, accepted " + 
    "from so_answers     " + 
    "where poster = 'Jon Skeet'  " + 
    "order by upvotes     "; 

這樣他們可以阻止,選擇SQL,以便將其粘貼到一個數據庫工具,並運行它手。對我來說似乎有些卑鄙,但它顯然對他們有效。

+0

也許他們應該試試SquirrelSQL,它可以在語句中添加和刪除Java風格的引用。 – 2010-09-04 00:00:40

3

如果你每天至少要使用四次或五次塊切/複製/粘貼操作,那麼我建議你只是做了很多額外的輸入。