2014-11-19 17 views
6

Tôi đang cố gắng thêm một nhóm các ràng buộc khóa tùy chỉnh vào Xcode 6. Tôi đã tra cứu các bài viết trước đây và phát hiện để làm điều này bạn cần chỉnh sửa tệp Default.idekeybindings trong Xcode của bạn -> UserData -> keybindings -> Default.ideakeybindingsThêm các ràng buộc khóa tùy chỉnh vào XCode

tôi đã chỉnh sửa này theo cách nó đã được thực hiện trong các phiên bản trước đó, nhưng khi tôi đi vào sở thích -> keybindings trong Xcode tôi không thể tìm thấy hành động tùy chỉnh mà tôi đã xác định. Tôi lý tưởng muốn tạo một "dòng sao chép" chính, "đường cắt", "dòng trùng lặp" và một số keybindings hữu ích khác mà tôi đã phát triển để thích trong khi sử dụng Sublime và Atom. Tôi đã bao gồm các tệp .ideakeybindings của tôi đã chỉnh sửa nội dung tệp bên dưới để tham chiếu đến những gì tôi đang cố gắng thực hiện.

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>My Custom Actions</key> 
    <dict> 
     <key>Delete Current Line/Selection</key> 
     <string>deleteToEndOfLine:, deleteToBeginningOfParagraph:</string> 
     <key>Duplicate Line</key> 
     <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:</string> 
    </dict> 
</dict> 
</plist> 

Trả lời

7

Tôi đã làm điều này trên Xcode 7:

  • Đóng Xcode
  • Mở tệp /Applications/Xcode-Beta.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist với quyền sudo (hãy chắc chắn sử dụng đúng thư mục ứng dụng cho phiên bản Xcode bạn đang sử dụng --- cho Xcode 6.3 beta Mine là Xcode-Beta.app)
  • Thêm lệnh tùy chỉnh của bạn, lưu và sau đó bắt đầu Xcode.
  • Đặt tổ hợp phím trong tùy chọn Xcode

tôi thêm phần này:

<key>My Custom Commands</key> 
<dict> 
    <key>Insert New Line Below</key> 
    <string>moveToEndOfLine:, insertNewline:</string> 
    <key>Insert New Line Above</key> 
    <string>moveUp:, moveToEndOfLine:, insertNewline:</string> 
    <key>Duplicate Current Line</key> 
    <string>moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, moveToBeginningOfLine:, yank:</string> 
    <key>Delete Current Line</key> 
    <string>selectLine:, delete:</string> 
    <key>Cut Current Line</key> 
    <string>selectLine:, cut:</string> 
    <key>Copy Current Line</key> 
    <string>setMark:, selectLine:, copy:, moveToEndOfLine:, swapWithMark:</string> 
    <key>Paste At Beginning Of Line</key> 
    <string>moveToBeginningOfLine:, paste:</string> 
</dict> 

Vì đây được ghi đè mỗi khi một phiên bản mới của Xcode được cài đặt, một địa điểm thiết lập người dùng cho các lệnh tùy chỉnh sẽ thực sự được đánh giá cao nếu ai đó biết nơi để thêm chúng vào thư mục người dùng.

+0

Công việc tuyệt vời, tôi sẽ xem xét điều này vào thứ ba tại nơi làm việc và liên hệ lại với bạn về cách hoạt động (Tôi sẽ chấp nhận hoặc nhận xét tùy thuộc vào những gì diễn ra. Cảm ơn sự giúp đỡ của bạn) – Unome

+0

Cảm ơn bạn rất nhiều! Điều này hoạt động hoàn hảo. Đối với những người mới hơn so với bản thân tôi, cd vào/để đến MacHD và sau đó đi vào các ứng dụng, nếu không bạn sẽ không nhận được tất cả các ứng dụng trong danh sách. – Unome

+0

Cảm ơn bạn! Tôi đoán tôi vẫn đang học cách của mình xung quanh một máy Mac - đối với những người cũng không thể tìm ra cách truy cập tập tin này thông qua Finder ("bạn không có quyền xem nội dung của nó"), tôi đã có thể truy cập thông qua Terminal bằng cách sử dụng: "cd /Applications/Xcode-Beta.app/Contents/Frameworks/IDEKit.framework/Resources" (đảm bảo bạn sử dụng đúng ứng dụng Xcode!), và sau đó mở tệp trong trình soạn thảo văn bản (ví dụ TextWrangler) bằng cách sử dụng: "open -a /Applications/TextWrangler.app IDETextKeyBindingSet.plist". –

3

Tôi đã sử dụng những điều sau trong nhiều năm vì tôi đến từ trại Eclipse và làm như "Nhân bản dòng hiện tại" và "Nhân bản dòng hiện tại" rất nhiều. Lưu ý "Xcode.app" có thể là "Xcode62.app" hoặc "Xcode63.app" tùy thuộc vào cách bạn đổi tên nó.

sudo vim /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist 

<key>Customized</key> 
<dict> 
    <key>Duplicate Current Line Up</key> 
    <string>moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, moveToBeginningOfLine:, yank:, moveUp:</string> 
    <key>Duplicate Current Line Down</key> 
    <string>moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, moveToBeginningOfLine:, yank:</string> 
    <key>Delete Current Line</key> 
    <string>deleteToBeginningOfLine:, moveToEndOfLine:, deleteToBeginningOfLine:, deleteBackward:, moveDown:, moveToBeginningOfLine:</string> 
</dict> 

Khởi động lại Xcode | Tùy chọn | Bindings chính | Tất cả

tìm kiếm "Duplicate"

tìm kiếm "hiện tại"

sau đó đầu vào của bạn tắt yêu thích tổ hợp phím.

Tôi đã học được mẹo này từ đâu đó trong SO - thx rất nhiều cho bản gốc. Nó hoạt động trên Xcode 6.3 phiên bản beta mới nhất, Xcode 6.2, 6.1 và các phiên bản Xcode trước đó.

Các vấn đề liên quan