user798719
user798719

Reputation: 9869

Clear steps to install pymacs with emacs 24?

I want autocompletion and refactoring in emacs with python.

I gather that I need rope to do this. To do this with emacs, I need ropemacs. Ropmacs depends on pymacs.

Pymacs is hard to install...or at least the instructions are not clear to me.

Do I need to do two things? Install pymacs and then install a file that tells emacs to talk to pymacs? I've already installed rope and ropemacs super easily, with

pip install rope ropemacs

Here's what I did:

pip install -e "git+https://github.com/pinard/Pymacs.git#egg=Pymacs"

This installs ok on mac os x mountain lion according to PIP.

But I have a feeling that I am not done--or am I?

How do I test to see if pymacs and rope and ropemacs are all working?

Upvotes: 5

Views: 4316

Answers (3)

d9k
d9k

Reputation: 2094

clone pymacs github, go to folder and proceed tutorial from author. http://pymacs.progiciels-bpi.ca/pymacs.html is now offline, if still so see tutorial at https://web.archive.org/web/20130627154513/http://pymacs.progiciels-bpi.ca/pymacs.html . Look at chapter "2.4) Install the Pymacs proper" and "2.5 Prepare your .emacs file". Chapters are small, have testing and recomendations for windows user.

Upvotes: 2

Mirzhan Irkegulov
Mirzhan Irkegulov

Reputation: 18075

Installation section of Pymacs manual is fairly straightforward — don't be afraid to refer to it if unsure. Below are the steps to install Pymacs in Emacs 24. First, in shell, run:

sudo pip install rope ropemacs

After that in Emacs install Elisp side of Pymacs by adding Marmalade repository and then running package-install pymacs. As of February 2014 you can't install Pymacs via pip, therefore:

git clone http://github.com/pinard/pymacs
cd pymacs
make check
sudo make install

make check ensures the prerequisites. sudo make install puts Pymacs module in Python local modules path, usually /usr/local/lib/python2.7/dist-packages/. People generally frown upon make install, because if you lose the Makefile, it can become hard to cleanly uninstall. But you shouldn't fear it, as pip uses the same directory, so pip uninstall pymacs will work.

In ~/.emacs.d/init.el put:

;; Pymacs
(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)
(autoload 'pymacs-autoload "pymacs")

Evaluate this with eval-region and try running Python expressions with pymacs-eval. You're good to go.

Upvotes: 7

tkf
tkf

Reputation: 3020

I think the easiest way to install ropemacs is to use el-get: M-x el-get-install ropemacs. It installs and build Pymacs, rope and ropemacs. I know that it works on Linux. See the el-get document for more information. (disclaimer: I wrote the installation recipe for el-get so obviously I am biased to my solution)

The difference from the solution using pip is that it setups the Emacs side of Pymacs correctly.

Upvotes: 7

Related Questions