2009-11-13 88 views
4

快樂星期五 - 有誰知道日食是否有像Textmate這樣的智能報價的概念。它的工作方式是選擇一些單詞和簡單地擊中鍵引用他們我是一個新手在這裏,所以要溫柔FWIW? - 我使用的PyDev Eclipse中Eclipse智能報價 - 就像在Textmate

感謝

改編

我在找什麼是我在屏幕上選擇了一個單詞或短語,我只想打'''鍵,並有引號括住整個單詞或短語。這同樣適用於不同的鑰匙 - 。像([{「'`

所以說,我有以下代碼

a = {} 
a[keyword] = 1 

現在(在python)的關鍵字應該是在引號我應該能夠雙擊(選擇)關鍵字,只需鍵入然後中提琴整個單詞被引用。現在發生的事情是關鍵字由一個單引號...唉..代替

感謝

+0

這確實不錯。 – 2009-11-14 14:06:58

+1

這在日食中是不可能的。但是Eclipse支持自動報價關閉。 – Secko 2009-11-18 00:46:45

回答

1

在最新的PyDev中,它應該像你想要的一樣工作(在PyDev 2.2.3中測試過 - 實際上已經有一段時間了)。

0

我想我知道你是什麼樣的人王,是不是......

如果你按下X鍵,它會選擇光標所在的當前單詞嗎?

如果這是問題,那麼我不這麼認爲。 在eclipse中沒有設置很多可能的鍵綁定。請參閱窗口>首選項>常規>鍵

更新:

對不起,我不認爲這是一個動作在Eclipse中做到這一點。 插件可能存在,您可以附加到一個鍵綁定,但我不知道一個。

+0

不是我真正想要的 - 我會試着重新說明我的問題。謝謝 – rh0dium 2009-11-14 13:45:44

2

對於Java和XML文件,您可以在Window/Preferences/Java/Editor/Templates中創建一個新模板。模板文本可以是這個樣子:

"${word_selection}${}"${cursor} 

然後你可以應用此模板使用標準的Ctrl-Space鍵啓動代碼完成(可能需要打2〜3次才能到模板選擇器),然後選擇你的報價模板。

0

您可以查看其中一條評論命令是如何工作的。例如,如果我選擇說4行代碼,並且想要將所有行註釋掉,我可以簡單地選擇它們,然後按Ctrl + /和所有選定的代碼行將被註釋。

我是一個很長時間的textmate用戶,我很想念它。我強迫自己遠離我的Mac硬盤。隨着時間的許可,我會進行調查,但目前我無法保持小幅調整。

-Matt

0

下面是一個寫在AutoHotkey的:

#NoEnv 
SetWorkingDir %A_ScriptDir% 
SendMode Input 
#InstallKeybdHook 
#UseHook On 

(:: 
    if GetKeyState("ScrollLock","T") 
    { 
     sel := GetSelection(1) 
     if sel 
      PasteText("(" sel ")") 
     else 
      Send (
     sel := "" 
    } 
    else 
     Send (
Return 

":: 
    if GetKeyState("ScrollLock","T") 
    { 
     sel := GetSelection(1) 
     if sel 
      PasteText("""" sel """") 
     else 
      Send " 
     sel := "" 
    } 
    else 
     Send " 
Return 

':: 
    if GetKeyState("ScrollLock","T") 
    { 
     sel := GetSelection(1) 
     if sel 
      PasteText("'" sel "'") 
     else 
      Send ' 
     sel := "" 
    } 
    else 
     Send ' 
Return 

{:: 
    if GetKeyState("ScrollLock","T") 
    { 
     sel := GetSelection(1) 
     if sel 
      PasteText("{" sel "}") 
     else 
      Send {{}} 
     sel := "" 
    } 
    else 
     SendRaw { 
Return 

[:: 
    if GetKeyState("ScrollLock","T") 
    { 
     sel := GetSelection(1) 
     if sel 
      PasteText("[" sel "]") 
     else 
      Send [ 
     sel := "" 
    } 
    else 
     Send [ 
Return 

<:: 
    if GetKeyState("ScrollLock","T") 
    { 
     sel := GetSelection(1) 
     if sel 
      PasteText("<" sel ">") 
     else 
      Send < 
     sel := "" 
    } 
    else 
     Send < 
Return 


GetSelection(wait = "") 
{ 
    ClipBack := ClipboardAll 
    Clipboard := "" 
    Send ^c 
    if wait 
     ClipWait 0.05 
    Selection := Clipboard 
    Clipboard := ClipBack 
    Return Selection 
} 

AutoHotkey的安裝後,這段代碼保存到一個文本文件,重命名擴展.ahk並運行它。它需要打開Scroll Lock才能使代碼正常工作。

該代碼從http://www.autohotkey.net/~Vifon/修改爲:

  1. 包含 '和<
  2. 寫入',」 <,{[(而不是 '', 「」,<>,{} ,當沒有文本被選中時,[],()
相關問題