2012-03-08 28 views
26

Tôi là người dùng vim đang chuyển sang văn bản Cao cấp và sử dụng chế độ Cổ điển. Trong .vimrc của tôi, tôi có dòng sau:Làm cách nào để tôi thoát chế độ thoát khi ở chế độ cổ điển Sublime Text?

imap jk <Esc> 

trong vim, điều này cho phép tôi để thoát ra khỏi chế độ chèn mà không cần phải dùng đến nút phím thoát và giữ ngón tay của tôi trên hàng nhà. Làm thế nào để làm điều tương tự với chế độ Sublime Text Vintage?

Trả lời

42

"Chế độ cổ điển được triển khai hoàn toàn thông qua các ràng buộc chính và API plugin - vui lòng duyệt qua gói Cổ điển và xem cách nó được đặt cùng nhau. Ví dụ: nếu bạn muốn ràng buộc" jj "để thoát chèn , bạn có thể thêm ràng buộc khóa này: "

{ "keys": ["j", "j"], "command": "exit_insert_mode", 
    "context": 
    [ 
     { "key": "setting.command_mode", "operand": false }, 
     { "key": "setting.is_widget", "operand": false } 
    ] 
} 

Chỉ cần sửa đổi dòng đầu tiên thành jk nếu bạn thích điều đó.
Source

+1

Cảm ơn, mà làm việc tuyệt vời! Tôi đã thêm mảnh đó vào Default.sublime-keymap nhưng bây giờ tôi tự hỏi nếu có một nơi tốt hơn để ghi đè lên các giá trị mặc định. – gerryster

+1

Yup, có lẽ tốt hơn để làm điều này trong các tệp sơ đồ bàn phím dành riêng cho người dùng của bạn nếu bạn không muốn gây rối với các giá trị mặc định. Bạn có thể đến đó bằng cách điều hướng đến 'Preferences -> Key Bindings-User'. – Jon

2

Ngoài ra, Ctrl+[ công trình và là dễ dàng hơn để tiếp cận với hơn phím esc. Đây là trong OSX ít nhất.

+0

Điều quan trọng cần lưu ý là 'Ctrl + [' đã được dùng để bỏ thụt lề dòng. 'Ctrl +]' indents. –

+0

Bạn phải nói về một cái gì đó khác với OSX. – Scott

+0

Vâng, tôi nên xác định. Tôi đang sử dụng Sublime Text 2 trong Windows. –

8

Nếu bạn đang sử dụng các plugin Vintageous, sử dụng the following key binding:

{ 
    "keys": ["j", "k"], 
    "command": "_enter_normal_mode", 
    "args": {"mode": "mode_insert"}, 
    "context": [{"key": "vi_insert_mode_aware"}] 
} 
+1

Tuyệt, tôi không biết về Vintageous. Cảm ơn vì tiền hỗ trợ! – gerryster

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