155 lines
4.3 KiB
EmacsLisp
155 lines
4.3 KiB
EmacsLisp
;; for the most part, we want to use tabs for indentation
|
|
(add-hook 'prog-mode-hook 'gered/enable-tabs)
|
|
(add-hook 'text-mode-hook 'gered/enable-tabs)
|
|
(add-hook 'conf-mode-hook 'gered/enable-tabs)
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; fix / adjust some file extension mappings
|
|
|
|
;; otherwise ".include" gets mapped to fundamental-mode, which is very useless
|
|
;; (.include is often used for various config files which allowing including)
|
|
(require 'files)
|
|
(add-to-list 'auto-mode-alist '("\\.include\\'" . conf-mode-maybe))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package treesit-auto
|
|
:ensure t
|
|
:custom
|
|
(treesit-auto-install t)
|
|
:config
|
|
(treesit-auto-add-to-auto-mode-alist 'all)
|
|
(global-treesit-auto-mode))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(defun gered/on-lispy-mode ()
|
|
(gered/disable-tabs 2))
|
|
|
|
(add-hook 'emacs-lisp-mode-hook 'gered/on-lispy-mode)
|
|
(add-hook 'lisp-mode-hook 'gered/on-lispy-mode)
|
|
|
|
(use-package lisp-extra-font-lock
|
|
:ensure t
|
|
:config
|
|
(add-hook 'emacs-lisp-mode-hook
|
|
(lambda ()
|
|
(lisp-extra-font-lock-mode t))))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package yaml-mode
|
|
:ensure t
|
|
:config
|
|
(setq yaml-indent-offset 2))
|
|
|
|
(defun gered/on-yaml-mode ()
|
|
(gered/disable-tabs yaml-indent-offset))
|
|
|
|
(add-hook 'yaml-mode-hook 'gered/on-yaml-mode)
|
|
(add-hook 'yaml-ts-mode-hook 'gered/on-yaml-mode)
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package json-mode
|
|
:ensure t)
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package markdown-mode
|
|
:ensure t
|
|
:hook ((markdown-mode . visual-line-mode)))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package jinja2-mode
|
|
:ensure t)
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package poly-ansible
|
|
:ensure t
|
|
:after (yaml-mode jinja2-mode)
|
|
:config
|
|
(add-to-list 'auto-mode-alist
|
|
'("/.*ansible.*/.*\\.ya?ml\\'" . poly-ansible-mode)))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package hcl-mode
|
|
:ensure t
|
|
:config
|
|
(setq hcl-indent-level my-preferred-tab-width))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package terraform-mode
|
|
:ensure t
|
|
:config
|
|
(setq terraform-indent-level my-preferred-tab-width))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package php-mode
|
|
:ensure t)
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package js
|
|
:config
|
|
(setq js-indent-level my-preferred-tab-width))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package lua-mode
|
|
:ensure t
|
|
:config
|
|
(setq lua-indent-level my-preferred-tab-width))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package c-ts-mode
|
|
:config
|
|
(setq-default c-ts-mode-indent-style 'linux)
|
|
(setq-default c-ts-mode-indent-offset my-preferred-tab-width))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package rust-mode
|
|
:ensure t
|
|
:bind
|
|
(("C-c C-r C-r" . 'lsp-rust-analyzer-run)
|
|
("C-c C-r C-e" . 'lsp-rust-analyzer-rerun)
|
|
("C-c C-r C-d" . 'lsp-rust-analyzer-debug)
|
|
("C-c C-r C-t" . 'lsp-rust-analyzer-related-tests))
|
|
:init
|
|
(setq rust-mode-treesitter-derive t))
|
|
|
|
(use-package rustic
|
|
:ensure t
|
|
:after rust-mode)
|
|
|
|
(use-package cargo
|
|
:ensure t
|
|
:after rustic
|
|
:init
|
|
(add-hook 'rust-mode-hook 'cargo-minor-mode)
|
|
(add-hook 'rust-ts-mode-hook 'cargo-minor-mode))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package sgml-mode
|
|
:config
|
|
(setq sgml-basic-offset my-preferred-tab-width))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package nxml-mode
|
|
:config
|
|
(setq nxml-child-indent my-preferred-tab-width)
|
|
(setq nxml-attribute-indent my-preferred-tab-width)
|
|
(setq nxml-slash-auto-complete-flag t))
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|