Xcode 4.5 key binding (delete current line)

最近剛拿到了mba, 開始在進行ios & mac的study!
所以一定要用到xcode!
xcode真的是蠻強大的,像是analysis memory leak的工具!
但一直用習慣eclipse的我,還是有點點小小不習慣,
例如在eclispe可以刪除目前遊標所在的一整行或者是複製一整行!
在eclispe可以透過hot key去操作!很方便! 在Eclipse裡面就有這些選項可以讓開發者設定!

但是在Xcode沒有預設的hot key可以“直接”做到!
得透過一連串的hot key去做到,例如先按下cmd+d -> cmd+x (隨便舉例的)
簡單的說無法透過一個步驟就去做到(例如cmd+d)

但好險我們可以自行設定一個combine的組合鍵來完成上述的動作!

首先先開啓terminal!
然後切換到下面的目錄
1 cd /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/

然後可以下ls -al看一下該目錄底下的目錄結構,
你會看到如下圖的結構!
你會發現有兩個Link指向Versions這個資料夾!
你的資料夾的權限應該是r--r--r--x!
只有讀的權限!
但我們等等要修改該目錄底下的檔案,所以先把權限設777吧!

指令如下:
1 chmod 777 Versions

改變以後我們在進到裡面的目錄!
如下:
1 cd ./Current/Resources

然後Xcode的預設key binding設定檔就在該目錄底下
接著就用vim去修改設定檔案吧!
1 sudo vim ./IDETextKeyBindingSet.plist

打開以後會看到一大串的xml格式,基本上只要在下面dist中間加入入即可!
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3 <plist version="1.0">
4 <dict>
5  
6 </dict>
7 </plist>

所以加入以後,就會變成下面的樣子!
01 <?xml version="1.0" encoding="UTF-8"?>
02 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
03 <plist version="1.0">
04 <dict>
05         <dict>
06                 <key>DeleteCurrentLine</key>
07                 <string>moveToBeginningOfLine:, deleteToEndOfLine:</string>
08         </dict>
09  
10 </dict>
11 </plist>


這個例子是刪除目前遊標行,
裡面就是這個指令的名稱 (別亂取,待會 要在Xcode裡面進行這個指令的快捷鍵)
裡面就是這個指令的一連串指令,我們可以看到有下面兩個

  • moveToBeginningOfLine(意思是移到這行的最前面)
  • deleteToEndOfLine(意思是從遊標位置開始刪除,刪除到這行的最後面)


透過上述的指令就可以進行刪除一整行,
接著就打開Xcode吧!
1) 先進到Preferences裡面!
2) 選擇Key Binding!
3) 然後在搜尋筐中輸入你剛剛上面xml檔案中填入的key名稱
4) 基本上你就可以找到你剛剛設定的檔案!就可以修改他的快捷鍵了!像下圖的案例就是以cmd+d來進行刪除一整行

-----------from http://blog.kenyang.net/2012/10/xcode-45-key-binding-delete-current-line.html
發佈了11 篇原創文章 · 獲贊 0 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章