Изменения в интерпретаторе Emacs Python - PullRequest
2 голосов
/ 23 июля 2011

Незначительные проблемы при настройке emacs.Я пытаюсь переназначить привязку клавиши M-Tab для любого завершения кода, так как оно уже связано с Ubuntu Unity "Просмотр вкладок / страниц".

(require 'anything)
(require 'anything-ipython)
(when (require 'anything-show-completion nil t)
  (use-anything-show-completion 'anything-ipython-complete
                            '(length initial-pattern)))

Это попытки, которые мне пришлось повторно привязать,не особенно хочу, но я знаю, что это не принято ничем другим.

;;; (define-key anything-mode-map (kbd "<F9>") 'anything)
;;; (define-key anything-show-completion-mode-map (kbd "<F9>") 'anything)
;;; (define-key anything-show-completion-map (kbd "<F9>") 'anything)

Просто не могу понять это правильно.

1 Ответ

2 голосов
/ 23 июля 2011

Я думаю, вы обнаружите, что хотите использовать строчную букву "f9": (kbd "<f9>") вместо (kbd "<F9>").

Вы можете проверить с помощью Ch k F9 , чтобы увидеть, что Emacs сообщает об этом ключе, и использовать эту же строку в качестве аргумента для (kbd).

Также обратите внимание, что вы используете ESC вместо Meta - Emacs переведет его.Так что ESC TAB будет работать так же, как M-TAB .А в случае TAB вы также можете сгенерировать этот код символа с помощью Ci , поэтому MCi - это еще одна существующая привязка.

Я посмотрел упомянутые вами файлы,и что-нибудь-ipython.el, кажется, единственный, который связывает M-TAB , и на основании его инструкций по установке у вас уже должен быть следующий код:

;;  Install: 
;;  =======
;;
;; Setup anything python:
;; Put this file in your load path.
;; Add to .emacs:
;;
;; (require 'anything-ipython)
;; (add-hook 'python-mode-hook #'(lambda ()
;;                                 (define-key py-mode-map (kbd "M-<tab>") 'anything-ipython-complete)))
;; (add-hook 'ipython-shell-hook #'(lambda ()
;;                                   (define-key py-mode-map (kbd "M-<tab>") 'anything-ipython-complete)))
;;

Итак, я 'Я думаю, это то, что вы хотите изменить.

...