emacs 初期設定(パッケージとプロクシ)

他の方のWeb記事にもいろいろとお世話になっているemacsの初期設定、私のところの設定内容なども載せておこうと。まずはパッケージアーカイブサイトの設定と、環境変数 HTTP_PROXY / HTTPS_PROXY を参照して認証プロクシを通すための仕掛けなど。

 


;; Proxy setting

(cond ((getenv "HTTP_PROXY")
       (let* ((url_ (url-generic-parse-url (getenv "HTTP_PROXY")))
              (auth_ (if (and (url-user url_) (url-password url_) )
                         (base64-encode-string
                          (format "%s:%s" (url-user url_) (url-password url_)))
                       nil))
              (host_ (format "%s:%s" (url-host url_) (url-portspec url_))))

         (defvar url-proxy-services
               (list (cons "no_proxy"  "^\\(localhost\\|10.*\\)")
                     (cons "http" host_)))
         (if auth_
             (defvar url-http-proxy-basic-auth-storage
               (list (list host_ (cons "Proxy" auth_)))))
         )))

;; Package arcives

(package-initialize)
(setq package-archives
      '(("gnu" . "https://elpa.gnu.org/packages/")
        ("melpa" . "https://melpa.org/packages/")
        ("org" . "https://orgmode.org/elpa/")))