73 lines
1.8 KiB
EmacsLisp
73 lines
1.8 KiB
EmacsLisp
(mapc 'my/install-package
|
|
'(yaml-mode
|
|
jedi
|
|
python-mode
|
|
inf-ruby
|
|
ac-inf-ruby
|
|
rbenv
|
|
json-mode
|
|
))
|
|
|
|
(use-package yaml-mode :mode "\\.yaml\\'")
|
|
|
|
(use-package json-mode
|
|
:mode (("\\.json\\'" . json-mode)
|
|
("\\.jshintrc\\'" . json-mode)))
|
|
|
|
(use-package python
|
|
:mode ("\\.py\\'" . python-mode)
|
|
:interpreter ("python" . python-mode)
|
|
:config
|
|
(progn
|
|
(use-package jedi
|
|
:init
|
|
(if (not (file-directory-p "~/.emacs.d/.python-environments/default/"))
|
|
(jedi:install-server)))
|
|
|
|
;; Let autopair work with triple-quotes
|
|
(setq autopair-handle-action-fns
|
|
(list #'autopair-default-handle-action
|
|
#'autopair-python-triple-quote-action))
|
|
|
|
;; Don't remap backspace. Leave it to autopair, please.
|
|
(define-key python-mode-map [backspace] nil)
|
|
(nmap python-mode-map (kbd "s-r")
|
|
(lambda()
|
|
(interactive)
|
|
(shell-command-on-region (point-min) (point-max) "python")))
|
|
(vmap python-mode-map (kbd "s-r")
|
|
(lambda()
|
|
(interactive)
|
|
(shell-command-on-region (region-beginning) (region-end) "python")))
|
|
)
|
|
|
|
:init
|
|
(add-hook 'python-mode-hook 'jedi:ac-setup)
|
|
;; (evil-define-key 'insert ac-mode-map (kbd "C-SPC") 'jedi:complete)
|
|
)
|
|
|
|
(use-package ruby-mode
|
|
:mode (("\\.rb\\'" . ruby-mode)
|
|
("\\.rake\\'" . ruby-mode)
|
|
("Rakefile\\'" . ruby-mode))
|
|
:interpreter "ruby"
|
|
:config
|
|
(progn
|
|
(require 'ruby-mode-indent-fix)
|
|
(evil-set-initial-state 'inf-ruby-mode 'insert)
|
|
|
|
(setq ruby-indent-level 4)
|
|
(setq ruby-deep-indent-paren nil)
|
|
|
|
(use-package rbenv)
|
|
(use-package inf-ruby
|
|
:init
|
|
(add-to-list 'ac-modes 'inf-ruby-mode))
|
|
(use-package ac-inf-ruby
|
|
:init
|
|
(add-hook 'inf-ruby-mode-hook 'ac-inf-ruby-enable)))
|
|
)
|
|
|
|
|
|
;;
|
|
(provide 'mod-dev)
|