Emacs で python を使う(第一回)

いろいろググって調べました。

プロキシの設定
プロキシ内の人は設定が必要です。

;; proxy
(setq load-path (append '("~/.emacs.d/private-conf") load-path))
(load "myproxy" t)

.emacs.el などに設定を書いて

(setq url-proxy-services
      '(("http" . "proxy.example.com:8080")
        ("https" . "proxy.example.com:8080")))

(setq url-http-proxy-basic-auth-storage
      '(("proxy.example.com:8080" ("Proxy" . "BASE64エンコード文字列"))))

これを ~/.emacs.d/private-conf/myproxy に書きます。

BASE64エンコード文字列」には、

(base64-encode-string "username:password")

これをスクラッチで評価して生成される文字列を設定します。

Package の設定

(require 'package)
(add-to-list 'package-archives '("melpa-stable" . "http://stable.melpa.org/packages/"))
(package-initialize)
(package-refresh-contents)

emacsyum みたいなやつです(たぶん。

以上でほぼ準備はできました。一応 Emacs を再起動して

M-x package-install elpy

とすると python でコードを書くための elisp 一式がインストールされます。

python に入門する
入門者なので python2 は使わないしコードの遺産も無いので

$ cd /usr/bin
$ rm python
$ ln -s python3.6m.exe python

として python3 に切り替えてしまいます。

hello.py を作って

#!/usr/bin/python

print('こんにちはpython')

こんな感じで保存。
C-c C-c で編集中のコードを実行してくれますが最初だけ

M-x run-python

が必要です。(C-c C-p でも可)

Python 3.6.9 (default, Jul 21 2019, 14:33:59) 
[GCC 7.4.0] on cygwin
Type "help", "copyright", "credits" or "license" for more information.
>>> python.el: native completion setup loaded
>>> こんにちはpython
>>> 

正しく動作しました。

C-c C-c したときにバッファ分割して Python バッファを表示して欲しいけど、
emacs lisp はさっぱりわからないのでわかりません(爆