我想問定期的ESS/R用戶他們經常使用哪些鍵綁定以及使用ESS/R的提示。ESS/R的有用鍵盤快捷鍵和提示
25
A
回答
17
我已經設置一些快捷鍵R控制檯源文件跳我的.emacs文件。最有用的是:
C-標籤到R命令行和文件之間進行切換(類似於JOSH答案,但要快得多):
(global-set-key [C-tab] 'other-window)
控制和上/下箭頭鍵來搜索記錄與之搭配你已經鍵入:
(define-key comint-mode-map [C-up] 'comint-previous-matching-input-from-input)
(define-key comint-mode-map [C-down] 'comint-next-matching-input-from-input)
註釋,取消註釋選定區域的CD或C-少校-d
(defun uncomment-region (beg end)
"Like `comment-region' invoked with a C-u prefix arg."
(interactive "r")
(comment-region beg end -1))
(define-key ess-mode-map (kbd "C-d") 'comment-region)
(define-key ess-mode-map (kbd "C-S-d") 'uncomment-region)
而且我也啓用CUA模式(從選項菜單),並重新配置了不少的快捷方式到僅需要兩個按鍵(而不是四個在標準模式下):
;; Delete selection when pressing [delete] key
(delete-selection-mode t)
;; ESS Mode (.R file)
(define-key ess-mode-map "\C-l" 'ess-eval-line-and-step)
(define-key ess-mode-map "\C-p" 'ess-eval-function-or-paragraph-and-step)
(define-key ess-mode-map "\C-r" 'ess-eval-region)
;; iESS Mode (R console)
(define-key inferior-ess-mode-map "\C-u" 'comint-kill-input)
(define-key inferior-ess-mode-map "\C-w" 'backward-kill-word)
(define-key inferior-ess-mode-map "\C-a" 'comint-bol)
(define-key inferior-ess-mode-map [home] 'comint-bol)
;; Comint Mode (R console as well)
(define-key comint-mode-map "\C-e" 'comint-show-maximum-output)
(define-key comint-mode-map "\C-r" 'comint-show-output)
(define-key comint-mode-map "\C-o" 'comint-kill-output)
;; Search with C-f/C-F (control-maj-F for backware search)
(global-set-key "\C-f" 'isearch-forward)
(global-set-key (kbd "C-S-f") 'isearch-backward)
(define-key isearch-mode-map "\C-f" 'isearch-repeat-forward)
(define-key isearch-mode-map (kbd "C-S-f") 'isearch-repeat-backward)
;; Save with C-s/C-S
(global-set-key (kbd "C-s") 'save-buffer)
(global-set-key (kbd "C-S-s") 'write-file)
;; need to redefine them for isearch mode (don't know why)
(define-key isearch-mode-map (kbd "C-s") 'save-buffer)
(define-key isearch-mode-map (kbd "C-S-s") 'write-file)
;; Pause = dedicate window.
(defun toggle-current-window-dedication()
(interactive)
(let* ((window (selected-window))
(dedicated (window-dedicated-p window)))
(set-window-dedicated-p window (not dedicated))
(message "Window %sdedicated to %s"
(if dedicated "no longer " "")
(buffer-name))))
(global-set-key [pause] 'toggle-current-window-dedication)
;; delete = delete
(global-set-key [delete] 'delete-char)
;; C-b = list buffers
(global-set-key (kbd "C-b") 'bs-show)
你會發現更多有用的快捷鍵在ESS documentation。
5
抄送鋯石ESS-交換機到結束ESS
是很好的,你正在編輯foo.R到
2
我發現此鏈接非常有幫助。它提供了elisp代碼,使Shift + Enter以上下文相關的方式執行許多常見任務。
http://kieranhealy.org/blog/archives/2009/10/12/make-shift-enter-do-a-lot-in-ess/
2
偉大的東西,一直在使用它的年齡。不幸的是截至2013年11月15日,取消註釋鍵綁定可能無法工作,因爲EMACS的變化(我認爲,至少它是在我加載最新版本之前工作)。這是因爲默認的取消註釋函數有3個參數,但是上面定義的取值有2個。解決這個問題的最好方法是簡單地從代碼中刪除取消註釋功能並保留鍵綁定,因此它使用默認的取消註釋功能。或者換句話說,只要使用此:
- (定義鍵ESS模式地圖(KBD「CD」)「評論區)
- (定義鍵ESS模式地圖(KBD「CSD 「)'uncomment-region)
0
Mn和Mp在ESS R控制檯中用於下一個/上一個命令。
相關問題
- 1. 鍵盤快捷鍵
- 2. 鍵盤快捷鍵
- 3. Netbeans有用的鍵盤快捷鍵
- 4. 使用鍵盤快捷鍵
- 5. 禁用鍵盤快捷鍵
- 6. 禁用鍵盤快捷鍵
- 7. Xcode 6鍵盤快捷鍵的提示和技巧
- 8. TextMate的鍵盤快捷鍵?
- 9. SQL Server Management Studio中執行快捷鍵和鍵盤快捷鍵
- 10. Visual Studio鍵盤快捷鍵顯示intellisense
- 11. JButton鍵盤快捷鍵
- 12. Ember鍵盤快捷鍵
- 13. AutoHotKey鍵盤快捷鍵
- 14. 鍵盤快捷鍵表格
- 15. Emacs多鍵盤快捷鍵
- 16. 運行鍵盤快捷鍵
- 17. 鍵盤快捷鍵在MDI
- 18. 聽鍵盤快捷鍵(c#)
- 19. WebBrowser鍵盤快捷鍵
- 20. iPhone/iPad鍵盤快捷鍵?
- 21. Python鍵盤快捷鍵
- 22. 實現鍵盤快捷鍵
- 23. 調用鍵盤快捷鍵,一鍵
- 24. VS2010鍵盤快捷鍵 - 顯示工具提示
- 25. Windows鍵盤快捷鍵和子窗口
- 26. 捕獲鍵盤快捷鍵和轉發
- 27. WPF Richtextbox和鍵盤快捷鍵
- 28. Error Insight是否有鍵盤快捷鍵?
- 29. Visual Studio/Resharper工具提示的鍵盤快捷鍵?
- 30. 啓動/提高通過使用AppleScript和鍵盤快捷鍵
我可以在沒有選擇代碼的情況下將Ctrl r修改爲ess-eval-line-and-step,並且在選擇代碼時可以修改ess-eval-region?這將使它更像Rgui.exe。 – ggg 2010-05-27 07:45:48
最近有沒有更改上述代碼?當我嘗試使用這些鍵綁定(在窗口上)時,comint-mode映射和ess-mode-map設置出現錯誤。 – Anusha 2013-06-16 02:18:59
在emacs 24(osx 10.10)上,取消註釋區域函數報告錯誤:錯誤的參數數目。 – qed 2014-11-01 22:29:48