EMACS: автоустановка пакетов и хоткеи в русской раскладке
dunmaksim
09:32
авто
,
пакет
,
раскладка
,
установка
,
auto
,
EMACS
,
hotkeys
,
install
,
packages
Комментариев нет
Введение
Наткнулся совершенно случайно на две отличных статьи про EMACS.
Если лень читать, то ниже приводятся готовые коды для включения в .emacs
Автоустановка пакетов
Автоустановка пакетов
(require 'cl)
(require 'package)
;; Список пакетов для установки, на самом деле у меня их под 50 штук, но смысл
;; публиковать их здесь?
(defvar cfg-var:packages '(
anaconda-mode
company
company-anaconda
company-quickhelp
company-tern
company-web
emmet-mode
ergoemacs-mode
flycheck
powerline
py-autopep8
py-isort
web-mode
yafolding
yasnippet
))
(defun cfg:install-packages ()
(let ((pkgs (remove-if #'package-installed-p cfg-var:packages)))
(when pkgs
(message "%s" "Emacs refresh packages database...")
(package-refresh-contents)
(message "%s" " done.")
(dolist (p cfg-var:packages)
(package-install p)))))
(add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/") t)
(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
(add-to-list 'package-archives '("melpa-stable" . "http://stable.melpa.org/packages/") t)
(add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t)
(package-initialize)
(cfg:install-packages)
Рабочее решение, которое гораздо лучше тех, что предложены на StackOverflow.
Хоткеи в русской раскладке
Хоткеи в русской раскладке
;; Это надо добавить ближе к началу .emacs
(defun cfg:reverse-input-method (input-method)
"Build the reverse mapping of single letters from INPUT-METHOD."
(interactive
(list (read-input-method-name "Use input method (default current): ")))
(if (and input-method (symbolp input-method))
(setq input-method (symbol-name input-method)))
(let ((current current-input-method)
(modifiers '(nil (control) (meta) (control meta))))
(when input-method
(activate-input-method input-method))
(when (and current-input-method quail-keyboard-layout)
(dolist (map (cdr (quail-map)))
(let* ((to (car map))
(from (quail-get-translation
(cadr map) (char-to-string to) 1)))
(when (and (characterp from) (characterp to))
(dolist (mod modifiers)
(define-key local-function-key-map
(vector (append mod (list from)))
(vector (append mod (list to)))))))))
(when input-method
(activate-input-method current))))
;; А вот эта строка должна быть в самом конце
(cfg:reverse-input-method 'russian-computer)
Подписаться на:
Комментарии к сообщению
(
Atom
)
Комментариев нет :
Отправить комментарий