Yuriy Al. Shirokov (yushi) wrote in ru_emacs,
Yuriy Al. Shirokov
yushi
ru_emacs

Автодополнение для Python: как подружить Rope и Auto Complete Mode?

Здравствуйте.

Наверное, многим здесь знакомо расширение Auto Complete Mode, рисующее всплывающее меню для автодополнения кода с удобной клавиатурной навигацией (M-p/M-n). К сожалению, Auto Complete Mode сам по себе код не парсит, для анализа исходников ему нужны внешние бэкэнды.

Несколько раз здесь также упоминали про Ropemacs, плагин, позволяющий подключить Rope (библиотеку для рефакторинга питоньего кода) к Emacs. Rope как раз, естественно, Питон разбирает хорошо.

Столкнувшись с проектом на Питоне, я попробовал использовать Rope и понял, что стиль, в котором он предлагает возможные дополнения, мне не нравится. Чтобы выбрать нужное, надо либо снимать руки с клавиатуры и тянуть к мышке, либо переключаться в окно с вариантами дополнений, либо продолжать набирать; все три варианта мне не слишком удобны.

Естественно, возникло желание подружить Rope и Auto Complete Mode, тем более что в коде последнего даже вроде как содержатся следы попыток использовать Rope в качестве бэкэнда.

Ничего не вышло.

Единственное (вроде как) готовое решение нашлось здесь: http://www.enigmacurry.com/2009/01/21/autocompleteel-python-code-completion-in-emacs/.

Оно у меня не работает: меню AC показывает "тупые" продолжения, а Ropemacs для своих вариантов дополнения открывает отдельное окно.

У кого-нибудь работает Ropemacs в связке с Auto Complete Mode? Если нет, то есть ли у кого-нибудь идеи, как добиться одновременно "умного" и "красивого" автодополнения для Питона (не обязательно этими средствами)?

(Вопросы в этом сообществе у меня получаются какие-то однообразные, да; но что же делать, если практически во всём, кроме "умного" автодополнения, Emacs меня практически полностью устраивает?)
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

  • 14 comments