doomemacs/init/mod-dev.el
2014-08-07 18:35:22 -04:00

74 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)