пособие по использованию - PullRequest
78 голосов
/ 18 мая 2010

Существует много сайтов с инструкциями по установке ropemacs, но до сих пор я не смог найти ни одного с инструкциями о том, как использовать после его установки. Я установил его, или, по крайней мере, так кажется, в верхней строке меню Emacs есть меню «Веревка». Что теперь? До сих пор я мог использовать только «Показать документацию» (C-c d по умолчанию). Попытка использовать помощник по коду (который, как я полагаю, является автозаполнением) заставляет Emacs спрашивать о «корневой папке проекта Rope» (что это?) В минибуфере, а затем ничего не показывает.

Итак, как только программа Romamacs установлена, каковы шаги, чтобы увидеть ее в действии на некоторых простых скриптах Python? Что-то вроде «если у вас есть этот скрипт в вашем emacs, и вы поместите мигающий квадрат здесь и нажмите this , это будет , что » будет ответом.

(я думал, стоит ли мне спросить об этом в течение некоторого времени, потому что, похоже, ни у кого больше нет такой же проблемы)

Ответы [ 4 ]

63 голосов
/ 18 мая 2010

Ну, сначала вам нужно выбрать корневую папку вашего проекта. Проще говоря, это папка на верхнем уровне вашего проекта или текущая папка, если вы работаете с одним файлом. После того, как вы выбрали корневую папку, будут работать другие параметры, такие как помощь по коду, показ документации, переход к другим символам и т. Д.

Для получения полной выгоды от romamacs я предлагаю получить autocomplete.el , поместить его в ~ / .emacs.d, а затем добавить его в свой .emacs

(add-to-list 'load-path "~/.emacs.d/")
(add-to-list 'load-path "~/.emacs.d/auto-complete-1.2")
(autoload 'python-mode "python-mode" "Python Mode." t)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))
(add-to-list 'interpreter-mode-alist '("python" . python-mode))
(require 'python-mode)
(autoload 'pymacs-apply "pymacs")
(autoload 'pymacs-call "pymacs")
(autoload 'pymacs-eval "pymacs" nil t)
(autoload 'pymacs-exec "pymacs" nil t)
(autoload 'pymacs-load "pymacs" nil t)
(pymacs-load "ropemacs" "rope-")
(setq ropemacs-enable-autoimport t)

(require 'auto-complete)
(global-auto-complete-mode t)

Предполагается, что вы устанавливаете автозаполнение в ~ / .emacs.d / auto-complete-1.2. После этого вы получите автозаполнение автоматически после ввода нескольких символов слова или символа.

Вы можете изменить свой файл ROOT / .ropeproject / config.py, чтобы добавить дополнительные каталоги в путь поиска по веревке, чтобы обеспечить лучшее автозаполнение.

РЕДАКТИРОВАТЬ: две из наиболее важных для меня функций - поиск документации и переход непосредственно к определению функции. Это зависит от правильной настройки пути поиска веревки для вашего проекта, как указано выше.

Документация : поместите курсор на символ (имя функции, имя класса и т. Д.) И выполните:

C-c d

Это покажет вам строку документации для рассматриваемого символа.

Переход к определению : наведите курсор на символ (имя функции, имя класса и т. Д.) И выполните:

C-c g

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

Поиск вхождений :

C-c f

Интеллектуальный поиск во всем проекте символа для курсора.

Код помощника :

M-/

Просто введите первые символы функции, класса и т. Д., И это покажет список возможных дополнений. Обратите внимание, что из-за природы питона, это не всегда будет полный список.

Рефакторинг : Под Rope-> Refactor довольно много вариантов. Это для того, чтобы лучше организовать ваш код. Как их использовать, должно быть в основном понятно; В общем, выберите область кода, которую вы хотите изменить, а затем выберите команду.

Редактировать : В ответ на комментарий ниже, вот как именно добавить другие пути к вашему пути в Python, чтобы при автозаполнении эти символы также были найдены.

prefs.add('python_path', '~/path/to/virtualenv/lib/python2.6/site-packages')

Это идет в .ropeproject/config.py

13 голосов
/ 05 октября 2010

Лучшая информация об использовании, которую я нашел, - это readme в источнике romamacs здесь:

https://github.com/python-rope/ropemacs

10 голосов
/ 18 мая 2010

Вы можете установить корневую папку с помощью rope-open-project. После того, как вы установили корневой проект, будет создан каталог .ropeproject.

Внутри файла config.py есть хуки, с помощью которых вы можете запускать (python) код после установки проекта. Функция project_opened(project): является хорошим местом для запуска кода. Я обычно активирую виртуальную среду imp.load_source('/path-to-env/activate_this.py'), чтобы я мог получить исходное покрытие для других библиотек в виртуальной среде.

3 голосов
/ 15 июня 2011

Для общего использования библиотеки веревок, от которой зависит веревка, затем проверьте:

Обзор каната

* +1007 *

В нем подробно описаны действия каждого из рефакторингов, такие как метод извлечения . Обратите внимание, что, по словам автора, этот документ немного устарел. Тем не менее, он должен предоставить достаточно вводной информации о возможностях веревок, чтобы начать работу.

Чтобы выполнить команды ropemacs в Emacs, вы можете попробовать одно или несколько из следующих действий:

  1. Используйте раздел «Связывание клавиш» в README docs link из ответ Фрейли в качестве руководства для изучения сопоставления.
  2. Если вы не можете вспомнить сочетания клавиш, выполните M-x rope-<specific command name> и заполните родственное имя рефакторинга. За Например, метод извлечения будет M-x rope-extract-method.
  3. Выберите в Emacs <menu-bar> -> Rope. Например, для метода извлечения выберите <menu-bar> -> Rope -> Refactorings -> Extract Method. Он также покажет вам связанные сочетания клавиш (например, C-c r m)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...