@@ -64,10 +64,10 @@ This configuration file contains setup my config of emacs
6464#+end_src
6565**** Java Constant
6666#+begin_src emacs-lisp
67- (defconst ctm-java-home-path "/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home/" )
67+ (defconst ctm-java-home-path (getenv "JAVA_HOME") )
6868 (defconst ctm-lsp-java-server-install-dir (expand-file-name "lsp-server/jdtls/" user-emacs-directory))
6969 (defconst ctm-dap-java-test-runner (expand-file-name "eclipse.jdt.ls/test-runner/junit-platform-console-standalone.jar" ctm-lsp-java-server-install-dir))
70- (defconst ctm-lombok-jar-path (expand-file-name "~/.m2/repository/org/projectlombok/lombok/1.18.26 /lombok-1.18.26 .jar"))
70+ (defconst ctm-lombok-jar-path (expand-file-name "~/.m2/repository/org/projectlombok/lombok/1.18.30 /lombok-1.18.30 .jar"))
7171 (defconst ctm-lsp-java-configuration-maven-user-settings (expand-file-name "~/.m2/settings.xml"))
7272 (defconst ctm-lsp-java-import-gradle-user-home "~/.m2/repository/")
7373#+end_src
@@ -112,6 +112,8 @@ donot backup file
112112 :ensure t
113113 ;; :config (setq exec-path (append exec-path '("/usr/local/bin")))
114114 )
115+ (dolist (var '("JAVA_HOME" "GRADLE_USER_HOME"))
116+ (add-to-list 'exec-path-from-shell-variables var))
115117 (when (memq window-system '(mac ns x))
116118 (exec-path-from-shell-initialize))
117119 (setq exec-path-from-shell-check-startup-files nil)
@@ -244,7 +246,7 @@ window auto Zoom,current window Larger display
244246 )
245247 (doom-modeline-def-modeline 'ownml
246248 '(bar matches buffer-info remote-host buffer-position misc-info major-mode)
247- '(input-method buffer-encoding process vcs check))
249+ '(input-method buffer-encoding process check))
248250 ;; Add to `doom-modeline-mode-hook` or other hooks
249251 (defun setup-custom-doom-modeline ()
250252 (doom-modeline-set-modeline 'ownml 'default))
@@ -967,12 +969,32 @@ jumping to visible text using a char-based decision tree
967969 :ensure t
968970 :config (treemacs-set-scope-type 'Tabs))
969971#+end_src
970- ** Company Setup
972+ ** Code Completion Setup
973+ *** Corfu
974+ #+begin_src emacs-lisp
975+ ;; Auto completion example
976+ (use-package corfu
977+ :custom
978+ (corfu-auto t) ;; Enable auto completion
979+ ;; (corfu-separator ?_) ;; Set to orderless separator, if not using space
980+ :bind
981+ ;; Another key binding can be used, such as S-SPC.
982+ ;; (:map corfu-map ("M-SPC" . corfu-insert-separator))
983+ :init
984+ (global-corfu-mode))
985+ #+end_src
986+ *** Corfu English Helper
987+ #+begin_src emacs-lisp
988+ (use-package corfu-english-helper
989+ :vc (:fetcher github :repo manateelazycat/corfu-english-helper)
990+ )
991+ #+end_src
992+ *** COMMENT Company
971993#+begin_src emacs-lisp
972994 (use-package company
973995 :ensure t
974996 :init
975- (global-company-mode)
997+ ;; (global-company-mode)
976998 :bind (
977999 ("s-/" . company-complete)
9781000 :map company-active-map
@@ -988,17 +1010,84 @@ jumping to visible text using a char-based decision tree
9881010 ;; :hook (company-mode . company-box-mode))
9891011
9901012#+end_src
991- *** Company english helper
1013+ *** COMMENT Company english helper
9921014#+begin_src emacs-lisp
9931015 (use-package company-english-helper
9941016 :vc (:fetcher github :repo manateelazycat/company-english-helper)
9951017 )
9961018#+end_src
1019+ ** Treesit
1020+ #+begin_src emacs-lisp
1021+ (setq treesit-language-source-alist
1022+ '((bash . ("https://github.com/tree-sitter/tree-sitter-bash"))
1023+ (c . ("https://github.com/tree-sitter/tree-sitter-c"))
1024+ (cpp . ("https://github.com/tree-sitter/tree-sitter-cpp"))
1025+ (css . ("https://github.com/tree-sitter/tree-sitter-css"))
1026+ (cmake . ("https://github.com/uyha/tree-sitter-cmake"))
1027+ (csharp . ("https://github.com/tree-sitter/tree-sitter-c-sharp.git"))
1028+ (dockerfile . ("https://github.com/camdencheek/tree-sitter-dockerfile"))
1029+ (elisp . ("https://github.com/Wilfred/tree-sitter-elisp"))
1030+ (go . ("https://github.com/tree-sitter/tree-sitter-go"))
1031+ (gomod . ("https://github.com/camdencheek/tree-sitter-go-mod.git"))
1032+ (html . ("https://github.com/tree-sitter/tree-sitter-html"))
1033+ (java . ("https://github.com/tree-sitter/tree-sitter-java.git"))
1034+ (javascript . ("https://github.com/tree-sitter/tree-sitter-javascript"))
1035+ (json . ("https://github.com/tree-sitter/tree-sitter-json"))
1036+ (lua . ("https://github.com/Azganoth/tree-sitter-lua"))
1037+ (make . ("https://github.com/alemuller/tree-sitter-make"))
1038+ (markdown . ("https://github.com/MDeiml/tree-sitter-markdown" nil "tree-sitter-markdown/src"))
1039+ (ocaml . ("https://github.com/tree-sitter/tree-sitter-ocaml" nil "ocaml/src"))
1040+ (org . ("https://github.com/milisims/tree-sitter-org"))
1041+ (python . ("https://github.com/tree-sitter/tree-sitter-python"))
1042+ (php . ("https://github.com/tree-sitter/tree-sitter-php"))
1043+ (typescript . ("https://github.com/tree-sitter/tree-sitter-typescript" nil "typescript/src"))
1044+ (tsx . ("https://github.com/tree-sitter/tree-sitter-typescript" nil "tsx/src"))
1045+ (ruby . ("https://github.com/tree-sitter/tree-sitter-ruby"))
1046+ (rust . ("https://github.com/tree-sitter/tree-sitter-rust"))
1047+ (sql . ("https://github.com/m-novikov/tree-sitter-sql"))
1048+ (vue . ("https://github.com/merico-dev/tree-sitter-vue"))
1049+ (yaml . ("https://github.com/ikatyang/tree-sitter-yaml"))
1050+ (toml . ("https://github.com/tree-sitter/tree-sitter-toml"))
1051+ (zig . ("https://github.com/GrayJack/tree-sitter-zig"))))
1052+
1053+ (add-to-list 'major-mode-remap-alist '(sh-mode . bash-ts-mode))
1054+ (add-to-list 'major-mode-remap-alist '(c-mode . c-ts-mode))
1055+ (add-to-list 'major-mode-remap-alist '(c++-mode . c++-ts-mode))
1056+ (add-to-list 'major-mode-remap-alist '(c-or-c++-mode . c-or-c++-ts-mode))
1057+ (add-to-list 'major-mode-remap-alist '(css-mode . css-ts-mode))
1058+ (add-to-list 'major-mode-remap-alist '(js-mode . js-ts-mode))
1059+ ;; (add-to-list 'major-mode-remap-alist '(java-mode . java-ts-mode))
1060+ (add-to-list 'major-mode-remap-alist '(js-json-mode . json-ts-mode))
1061+ (add-to-list 'major-mode-remap-alist '(makefile-mode . cmake-ts-mode))
1062+ (add-to-list 'major-mode-remap-alist '(python-mode . python-ts-mode))
1063+ (add-to-list 'major-mode-remap-alist '(ruby-mode . ruby-ts-mode))
1064+ (add-to-list 'major-mode-remap-alist '(conf-toml-mode . toml-ts-mode))
1065+ (add-to-list 'auto-mode-alist '("\\(?:Dockerfile\\(?:\\..*\\)?\\|\\.[Dd]ockerfile\\)\\'" . dockerfile-ts-mode))
1066+ (add-to-list 'auto-mode-alist '("\\.go\\'" . go-ts-mode))
1067+ (add-to-list 'auto-mode-alist '("/go\\.mod\\'" . go-mod-ts-mode))
1068+ (add-to-list 'auto-mode-alist '("\\.rs\\'" . rust-ts-mode))
1069+ (add-to-list 'auto-mode-alist '("\\.ts\\'" . typescript-ts-mode))
1070+ (add-to-list 'auto-mode-alist '("\\.y[a]?ml\\'" . yaml-ts-mode))
1071+ #+end_src
9971072** Language Setup
9981073*** Eglot Setup
9991074#+begin_src emacs-lisp
10001075 (use-package eglot
1001- :hook (prog-mode . eglot-ensure))
1076+ :ensure nil
1077+ :hook (prog-mode . eglot-ensure)
1078+ :custom
1079+ (eglot-autoshutdown t)
1080+ (eglot-events-buffer-size 0)
1081+ (eglot-extend-to-xref nil)
1082+ (eglot-ignored-server-capabilities
1083+ '(:hoverProvider
1084+ :documentHighlightProvider
1085+ :documentFormattingProvider
1086+ :documentRangeFormattingProvider
1087+ :documentOnTypeFormattingProvider
1088+ :colorProvider
1089+ :foldingRangeProvider))
1090+ )
10021091#+end_src
10031092*** COMMENT LSP-Mode Setup
10041093#+begin_src emacs-lisp
@@ -1102,8 +1191,24 @@ jumping to visible text using a char-based decision tree
11021191***** find the class/method in third library by keyword
11031192(lsp-ivy-workspace-symbol)
11041193*** JAVA Setup
1194+ **** Eglot-java
1195+ #+begin_src emacs-lisp
1196+ (with-eval-after-load 'eglot
1197+ (add-to-list 'eglot-server-programs
1198+ `(java-mode ,(concat ctm-lsp-java-server-install-dir "bin/jdtls")
1199+ "-configuration" ,(concat ctm-lsp-java-server-install-dir "config_mac")
1200+ "-data" ,(expand-file-name ".cache/workspace" user-emacs-directory)
1201+ ,(concat "--jvm-arg=-javaagent:" ctm-lombok-jar-path)))
1202+ )
1203+
1204+ (use-package jarchive
1205+ :ensure t
1206+ :after eglot
1207+ :config
1208+ (jarchive-setup))
1209+ #+end_src
1210+ **** COMMENT Lsp-java
11051211#+begin_src emacs-lisp
1106- (setenv "JAVA_HOME" ctm-java-home-path)
11071212 (setq my-java-path (concat ctm-java-home-path "bin/java"))
11081213 (use-package lsp-java
11091214 :init
@@ -1145,7 +1250,7 @@ jumping to visible text using a char-based decision tree
11451250 (setq lsp-java-trace-server t)
11461251 (setq lsp-java-configuration-check-project-settings-exclusions t)
11471252 (setq lsp-java-completion-guess-method-arguments t)
1148- ;; (add-hook 'java-mode-hook 'lsp)
1253+
11491254 ;; 只在java-mode save的时候 调用lsp-java-origanize-imports
11501255 ;; (add-hook 'java-mode-hook
11511256 ;; (lambda()
@@ -1165,30 +1270,9 @@ jumping to visible text using a char-based decision tree
11651270 ;; (add-hook 'java-mode-hook #'lsp-java-boot-lens-mode)
11661271 )
11671272
1168- (use-package dap-java
1169- :ensure nil
1170- :config
1171- (dap-register-debug-template
1172- "localhost:5005"
1173- (list :type "java"
1174- :request "attach"
1175- :hostName "localhost"
1176- :port 5005))
1177- (dap-register-debug-template
1178- "lxd"
1179- (list :type "java"
1180- :request "attach"
1181- :hostName "127.0.0.1"
1182- :port 5005))
1183- ;; :config
1184- ;; (global-set-key (kbd "<f7>") 'dap-step-in)
1185- ;; (global-set-key (kbd "<f8>") 'dap-next)
1186- ;; (global-set-key (kbd "<f9>") 'dap-continue)
1187- )
1188-
1189- ;;==========java end==========
1273+ ;; ;;==========java end==========
11901274
1191- ;;========== maven pom==========
1275+ ;;====== maven pom==========
11921276 ;; https://github.com/m0smith/maven-pom-mode.git
11931277 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11941278 ;; (add-to-list 'load-path (expand-file-name "site-lisp/maven-pom-mode" user-emacs-directory)) ;;
@@ -1197,13 +1281,6 @@ jumping to visible text using a char-based decision tree
11971281 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11981282 ;;==========maven pom end==========
11991283
1200- (use-package mvn
1201- :ensure t
1202- )
1203-
1204- (defun mvn-install ()
1205- (interactive)
1206- (mvn "install"))
12071284#+end_src
12081285**** Hot Deployment
12091286use spring-devtools , gradle no autocompile classes, so command: `gradle bootJar -t` or `gradle -t classes processResources` when `gradle bootRun`;
@@ -1212,6 +1289,16 @@ use spring-devtools , gradle no autocompile classes, so command: `gradle bootJar
12121289 (use-package groovy-mode
12131290 )
12141291#+end_src
1292+ *** Maven Setup
1293+ #+begin_src emacs-lisp
1294+ (use-package mvn
1295+ :ensure t
1296+ )
1297+
1298+ (defun mvn-install ()
1299+ (interactive)
1300+ (mvn "install"))
1301+ #+end_src
12151302*** Web-Mode Setup
12161303#+begin_src emacs-lisp
12171304 (use-package web-mode
@@ -1334,17 +1421,17 @@ git tools
13341421** Nginx Setup
13351422#+begin_src emacs-lisp
13361423 (use-package nginx-mode)
1337- (use-package company-nginx)
1424+ ;; (use-package company-nginx)
13381425#+end_src
13391426** HttpClient Setup
13401427#+begin_src emacs-lisp
13411428 (use-package restclient)
13421429 (use-package ob-restclient)
1343- (use-package company-restclient
1344- :after(restclient-mode)
1345- )
1430+ ;; (use-package company-restclient
1431+ ;; :after(restclient-mode)
1432+ ;; )
13461433
1347- (add-to-list 'auto-mode-alist '("\\.hpct\\'" . restclient-mode))
1434+ ;; (add-to-list 'auto-mode-alist '("\\.hpct\\'" . restclient-mode))
13481435#+end_src
13491436** Youdao Translate Setup
13501437#+begin_src emacs-lisp
0 commit comments