2

我在 Linux Mint Maya 上使用 Emacs 24. 和 Octave 3.6.3

我已经设置了我的初始化文件,一切正常。Mx run-octave 给了我劣质的八度,.m 文件在八度模式下自动打开。

但我似乎无法让键绑定工作?当我处于八度模式时,我同时按“Ctrl”和“c”,然后按“i”,emacs 告诉我 Cc i 未定义?

有人可以帮忙吗?我只想轻松发送线路

4

3 回答 3

3

最好查看源文件。以下是为八度模式定义快捷键的方式:

(defvar octave-mode-map
  (let ((map (make-sparse-keymap)))
    (define-key map "`" 'octave-abbrev-start)
    (define-key map "\e\n" 'octave-indent-new-comment-line)
    (define-key map "\M-\C-q" 'octave-indent-defun)
    (define-key map "\C-c\C-b" 'octave-submit-bug-report)
    (define-key map "\C-c\C-p" 'octave-previous-code-line)
    (define-key map "\C-c\C-n" 'octave-next-code-line)
    (define-key map "\C-c\C-a" 'octave-beginning-of-line)
    (define-key map "\C-c\C-e" 'octave-end-of-line)
    (define-key map [remap down-list] 'smie-down-list)
    (define-key map "\C-c\M-\C-h" 'octave-mark-block)
    (define-key map "\C-c]" 'smie-close-block)
    (define-key map "\C-c/" 'smie-close-block)
    (define-key map "\C-c\C-f" 'octave-insert-defun)
    ;; FIXME: free C-h so it can do the describe-prefix-bindings.
    (define-key map "\C-c\C-h" 'info-lookup-symbol)
    (define-key map "\C-c\C-il" 'octave-send-line)
    (define-key map "\C-c\C-ib" 'octave-send-block)
    (define-key map "\C-c\C-if" 'octave-send-defun)
    (define-key map "\C-c\C-ir" 'octave-send-region)
    (define-key map "\C-c\C-is" 'octave-show-process-buffer)
    (define-key map "\C-c\C-ih" 'octave-hide-process-buffer)
    (define-key map "\C-c\C-ik" 'octave-kill-process)
    (define-key map "\C-c\C-i\C-l" 'octave-send-line)
    (define-key map "\C-c\C-i\C-b" 'octave-send-block)
    (define-key map "\C-c\C-i\C-f" 'octave-send-defun)
    (define-key map "\C-c\C-i\C-r" 'octave-send-region)
    (define-key map "\C-c\C-i\C-s" 'octave-show-process-buffer)
    ;; FIXME: free C-h so it can do the describe-prefix-bindings.
    (define-key map "\C-c\C-i\C-h" 'octave-hide-process-buffer)
    (define-key map "\C-c\C-i\C-k" 'octave-kill-process)
    map)
  "Keymap used in Octave mode.")

如您所见,您必须使用C-c C-i l发送一条线

于 2012-09-12T18:18:44.857 回答
1

我认为您阅读的文档octave-mode已经过时。您可能需要C-c C-i用作前缀而不是C-c i. 要获得完整的命令,您需要输入另一个字符,例如rC-r发送区域。

此更改很可能是为了符合 emacs 规范。Emacs为用户保留任何一个字符C-c <char>的键。<char>因此octave-mode,首先不应该使用这样的密钥。

于 2012-09-12T18:16:05.437 回答
0

禁用一些次要模式,也许有一些代码定义喜欢(define-key xx-map "\C-c i" nill)并受模式挂钩影响

于 2012-10-10T21:56:32.703 回答