diff --git a/tools/emacs.d/init.el b/tools/emacs.d/init.el index 30284e8..9e71371 100644 --- a/tools/emacs.d/init.el +++ b/tools/emacs.d/init.el @@ -31,18 +31,24 @@ ;; Load each modules (require 'init-package) ; package manager should be loaded first (require 'init-basic) -(require 'init-appearance) ; package manager should be loaded first +(require 'init-appearance) (require 'init-keymaps) (require 'init-evil) (require 'init-file) (require 'init-edit) (require 'init-org) -;; (require 'init-lsp) ; FIXME: See .emacs.d/lisp/init-lsp.el +(require 'init-lang) +(require 'init-treesitter) ;; Load `custom` file (when (file-exists-p custom-file) (load custom-file)) +(when (file-exists-p (expand-file-name "local.el" user-emacs-directory)) + (load (expand-file-name "local.el" user-emacs-directory))) + + + ;;; init.el end diff --git a/tools/emacs.d/lisp/init-lang.el b/tools/emacs.d/lisp/init-lang.el new file mode 100644 index 0000000..2542cfd --- /dev/null +++ b/tools/emacs.d/lisp/init-lang.el @@ -0,0 +1,12 @@ +;;; init-lang.el + +;; (use-package lsp-mode +;; :commands (lsp lsp-deferred) +;; :hook (prog-mode . lsp-deferred)) + + + +;; (setq package-check-signature t) + +(provide 'init-lang) +;;; init-lang.el ends diff --git a/tools/emacs.d/lisp/init-lsp.el b/tools/emacs.d/lisp/init-lsp.el deleted file mode 100644 index 07431b2..0000000 --- a/tools/emacs.d/lisp/init-lsp.el +++ /dev/null @@ -1,13 +0,0 @@ -;;; init-lsp.el -;;; First edit on 2025/01/29 -;;; Stores Language Server Protocol Configs -;;; FIXME: Cannot install `lsp-mode` plugin, this file will not be loaded by Emacs for now - -(use-package lsp-mode - :commands (lsp lsp-deferred) - :hook (prog-mode . lsp-deferred)) - - -;; (setq package-check-signature t) -(provide 'init-lsp) -;;; init-lsp.el ends diff --git a/tools/emacs.d/lisp/init-treesitter.el b/tools/emacs.d/lisp/init-treesitter.el new file mode 100644 index 0000000..335c22f --- /dev/null +++ b/tools/emacs.d/lisp/init-treesitter.el @@ -0,0 +1,20 @@ +;;; init-treesitter.el tree-sitter integration for emacs +;;; Reference: https://emacs.liujiacai.net/post/038-hello-treesitter/ +;;; Download: https://github.com/emacs-tree-sitter/tree-sitter-langs/releases/tag/0.12.268 + + +(add-to-list 'treesit-extra-load-path (expand-file-name "tree-sitter" user-emacs-data)) + +(setq major-mode-remap-alist + '((yaml-mode . yaml-ts-mode) + (sh-mode . bash-ts-mode) + (js-mode . js-ts-mode) + (css-mode . css-ts-mode) + (c-mode . c-ts-mode) + (c++-mode . c++-ts-mode) + (c-or-c++-mode . c-or-c++-ts-mode) + (python-mode . python-ts-mode) + (js-json-mode . json-ts-mode))) + + +(provide 'init-treesitter)