Skip to content

Commit 6aa4ce4

Browse files
authored
Merge pull request #1 from binwan-dev/feat_29
Feat 29
2 parents 791de19 + 83510fa commit 6aa4ce4

24 files changed

+576
-95
lines changed

.lsp-eslint-choices

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ("/home/binwan/Documents/binwan-dev/dbviewer/dbviewer/node_modules/eslint/lib/api.js" 4))

config/init-blamer.el

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
(use-package blamer
2+
:bind (("s-i" . blamer-show-commit-info))
3+
:defer 20
4+
:custom
5+
(blamer-idle-time 0.3)
6+
(blamer-min-offset 70)
7+
:custom-face
8+
(blamer-face ((t :foreground "#7a88cf"
9+
:background nil
10+
:height 140
11+
:italic t)))
12+
:config
13+
(global-blamer-mode 1))
14+
15+
(provide 'init-blamer)

config/init-elpa.el

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
(require 'package)
22

3-
(setq package-archives '(("gnu" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/gnu/")
4-
("qinghua" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/melpa/")))
3+
;; (setq package-archives '(("melpa" . "http://melpa.org/packages/")
4+
;; ("gnu" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/gnu/")
5+
;; ("qinghua" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/melpa/")))
6+
(setq package-archives '(("gnu" . "http://mirror.wanbin.tech/elpa/gnu/")
7+
("melpa" . "http://mirror.wanbin.tech/elpa/melpa/")))
58

69
;;; Install into separate package dirs for each Emacs version, to prevent bytecode incompatibility
710
(let ((versioned-package-dir

config/init-font.el

+56-12
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,60 @@
1-
(let ((emacs-font-size 13)
2-
emacs-font-name)
3-
(setq emacs-font-name "Fira Code")
4-
(when (display-grayscale-p)
5-
(set-frame-font (format "%s-%s" (eval emacs-font-name) (eval emacs-font-size)))
6-
(set-fontset-font (frame-parameter nil 'font) 'unicode (eval emacs-font-name))
7-
8-
(setq nox-doc-tooltip-font (format "%s-%s" emacs-font-name emacs-font-size))
9-
)
1+
;; (let ((emacs-font-size 13)
2+
;; emacs-font-name)
3+
;; (setq emacs-font-name "Fira Code")
4+
;; (when (display-grayscale-p)
5+
;; (set-frame-font (format "%s-%s" (eval emacs-font-name) (eval emacs-font-size)))
6+
;; (set-fontset-font (frame-parameter nil 'font) 'unicode (eval emacs-font-name))
7+
8+
;; (setq nox-doc-tooltip-font (format "%s-%s" emacs-font-name emacs-font-size))
9+
;; )
10+
11+
(defun set-graphic-font()
12+
(setq fonts
13+
(cond ((eq system-type 'darwin) '("MonoLisa Nasy" "STHeiti"))
14+
((eq system-type 'gnu/linux) '("Cascadia Code" "WenQuanYi Zen Hei"))
15+
((eq system-type 'windows-nt) '("Cascadia Code" "Microsoft Yahei"))))
16+
(set-face-attribute 'default nil :font
17+
(format "%s:pixelsize=%d" (car fonts) 14))
18+
(dolist (charset '(kana han symbol cjk-misc bopomofo))
19+
(set-fontset-font (frame-parameter nil 'font) charset
20+
(font-spec :family (car (cdr fonts)))))
21+
22+
;Fix chinese font width and rescale
23+
(setq face-font-rescale-alist '(("Microsoft Yahei" . 1.2) ("WenQuanYi Micro Hei Mono" . 1.2) ("STHeiti". 1.2)))
24+
1025
(with-eval-after-load 'doom-modeline
11-
(set-face-attribute 'mode-line nil :font "SourceCodePro-12")
12-
(set-face-attribute 'mode-line-inactive nil :font "SourceCodePro-12")))
26+
(set-face-attribute 'mode-line nil :font "Cascadia Code 13")
27+
(set-face-attribute 'mode-line-inactive nil :font "Cascadia Code 13")))
28+
29+
(when (display-graphic-p)
30+
(set-graphic-font))
31+
32+
(setq-default line-spacing 0.2)
1333

14-
(setq line-spacing 0.2)
34+
(use-package ligature
35+
:load-path "path-to-ligature-repo"
36+
:config
37+
;; Enable the "www" ligature in every possible major mode
38+
(ligature-set-ligatures 't '("www"))
39+
;; Enable traditional ligature support in eww-mode, if the
40+
;; `variable-pitch' face supports it
41+
(ligature-set-ligatures 'eww-mode '("ff" "fi" "ffi"))
42+
;; Enable all Cascadia Code ligatures in programming modes
43+
(ligature-set-ligatures 'prog-mode '("|||>" "<|||" "<==>" "<!--" "####" "~~>" "***" "||=" "||>"
44+
":::" "::=" "=:=" "===" "==>" "=!=" "=>>" "=<<" "=/=" "!=="
45+
"!!." ">=>" ">>=" ">>>" ">>-" ">->" "->>" "-->" "---" "-<<"
46+
"<~~" "<~>" "<*>" "<||" "<|>" "<$>" "<==" "<=>" "<=<" "<->"
47+
"<--" "<-<" "<<=" "<<-" "<<<" "<+>" "</>" "###" "#_(" "..<"
48+
"..." "+++" "/==" "///" "_|_" "www" "&&" "^=" "~~" "~@" "~="
49+
"~>" "~-" "**" "*>" "*/" "||" "|}" "|]" "|=" "|>" "|-" "{|"
50+
"[|" "]#" "::" ":=" ":>" ":<" "$>" "==" "=>" "!=" "!!" ">:"
51+
">=" ">>" ">-" "-~" "-|" "->" "--" "-<" "<~" "<*" "<|" "<:"
52+
"<$" "<=" "<>" "<-" "<<" "<+" "</" "#{" "#[" "#:" "#=" "#!"
53+
"##" "#(" "#?" "#_" "%%" ".=" ".-" ".." ".?" "+>" "++" "?:"
54+
"?=" "?." "??" ";;" "/*" "/=" "/>" "//" "__" "~~" "(*" "*)"
55+
"\\\\" "://"))
56+
;; Enables ligature checks globally in all buffers. You can also do it
57+
;; per mode with `ligature-mode'.
58+
(global-ligature-mode t))
1559

1660
(provide 'init-font)

config/init-generic.el

+5-4
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
(use-package which-key
99
:init (which-key-mode 1))
1010

11-
(use-package olivetti
12-
:config
13-
(setq olivetti-minimum-body-width 120)
14-
:hook (prog-mode . olivetti-mode))
11+
;; (use-package olivetti
12+
;; :config
13+
;; (setq olivetti-minimum-body-width 130)
14+
;; :hook (prog-mode . olivetti-mode))
1515

1616
(setq use-dialog-box nil) ;never pop dialog
1717
(setq inhibit-startup-screen t) ;inhibit start screen
@@ -34,6 +34,7 @@
3434
(setq auto-save-timeout 120)
3535
(setq backup-directory-alist `((".*" . "~/.autosave/")))
3636
(setq auto-save-file-name-transforms `((".*","~/.autosave/" t)))
37+
(setq create-lockfiles nil)
3738

3839
;; enable recent file mode
3940
(use-package recentf

config/init-helm.el

+5-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
("M-s g" . 'helm-imenu-in-all-buffers)
1111
("M-x" . #'helm-M-x)
1212
("C-x r b" . #'helm-filtered-bookmarks)
13-
("C-x C-f" . 'helm-find-files))
13+
("C-x C-f" . 'helm-find-files)
14+
("C-x b" . 'helm-buffers-list)
15+
("C-x C-b" . 'helm-buffers-list))
1416
:bind (:map helm-map
1517
("<tab>" . 'helm-execute-persistent-action) ; rebind tab to run persistent action
1618
("C-i" . 'helm-execute-persistent-action) ; make TAB work in terminal
@@ -27,5 +29,7 @@
2729

2830
)
2931

32+
(use-package helm-tramp
33+
:ensure t)
3034

3135
(provide 'init-helm)

config/init-ligature.el

-25
This file was deleted.

config/init-lspmode.el

+122-38
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,137 @@
1-
(use-package lsp-ui
2-
:ensure t
3-
:commands lsp-ui-mode
4-
:init
5-
(add-hook 'lsp-mode-hook 'lsp-ui-mode)
6-
:config
7-
(setq lsp-ui-peek-enable t)
8-
(setq lsp-ui-doc-enable nil)
9-
(setq lsp-ui-imenu-enable t)
10-
(setq lsp-ui-flycheck-enable t)
11-
(setq lsp-ui-sideline-enable nil)
12-
(setq lsp-ui-sideline-ignore-duplicate t))
13-
14-
(use-package lsp-mode
15-
;; :init
16-
;; (setq lsp-file-watch-threshold 102400)
17-
:config
18-
(setq tab-width 4)
19-
(setq indent-tabs-mode 4)
20-
(setq company-idle-delay 0)
21-
(setq company-minimum-prefix-length 1)
22-
;; (add-hook 'before-save-hook #'lsp-format-buffer t t)
23-
(add-hook 'before-save-hook #'lsp-organize-imports t t)
24-
:bind (("C-c C-j" . lsp-find-definition)
25-
("C-c C-b" . pop-tag-mark)
26-
("C-c s s" . lsp-restart-workspace)
27-
("C-c C-c" . lsp-find-references)
28-
("C-." . lsp-execute-code-action)))
1+
(setq js-indent-level 2)
292

3+
(use-package csharp-mode :ensure t)
4+
(use-package vue-mode :ensure t)
305
(use-package py-autopep8
31-
:hook (python-mode . py-autopep8-enable-on-save))
32-
33-
6+
:hook
7+
(python-mode . py-autopep8-mode))
348
(use-package lsp-pyright
359
:config
36-
(setq lsp-pyright-venv-path "/Users/bin/opt/anaconda3/envs")
10+
(setq lsp-pyright-venv-path "/Users/binwan/opt/anaconda3/envs")
3711
(setq lsp-pyright-auto-import-completions t)
3812
(setq lsp-pyright-auto-search-paths t)
3913
:bind
4014
(("C-c j" . lsp-find-definition))
4115
:hook (python-mode . (lambda ()
4216
(require 'lsp-pyright)
4317
(lsp))))
44-
45-
(use-package ccls
18+
(use-package lsp-mode
19+
:init
20+
:hook ((csharp-mode . lsp)
21+
(vue-mode . lsp)
22+
(lsp-mode . lsp-enable-which-key-integration))
4623
:config
47-
(setq ccls-executable "/usr/bin/ccls")
48-
:hook (ccls . lsp))
24+
(lsp-ui-mode -1)
25+
;; for typescript/javascript
26+
;; (setq lsp-typescript-auto-closing-tags t)
27+
;; (setq lsp-typescript-format-enable t)
28+
;; (setq lsp-javascript-auto-closing-tags t)
29+
30+
(lsp-register-client
31+
(make-lsp-client :new-connection (lsp-tramp-connection "cls")
32+
:major-modes '(csharp-mode)
33+
:remote? t
34+
:server-id 'csharp-ls-remote))
35+
:commands lsp
36+
:bind (
37+
("C-c s s" . lsp-restart-workspace)
38+
("C-." . lsp-execute-code-action)
39+
("C-c C-j" . lsp-find-definition)
40+
("C-c C-r" . lsp-find-references)
41+
("C-c C-i" . lsp-find-implementation)
42+
("C-C t b" . pop-tag-mark)))
43+
44+
;; (use-package lsp-ui :commands lsp-ui-mode)
45+
(use-package helm-lsp :commands helm-lsp-workspace-symbol)
46+
;; (use-package dap-mode)
47+
48+
49+
50+
51+
;; ; lsp
52+
;; (use-package lsp-ui
53+
;; :ensure t
54+
;; :commands lsp-ui-mode
55+
;; :init
56+
;; (add-hook 'lsp-mode-hook 'lsp-ui-mode)
57+
;; :config
58+
;; ;; (setq lsp-ui-peek-enable t)
59+
;; ;; (setq lsp-ui-doc-enable nil)
60+
;; ;; (setq lsp-ui-imenu-enable t)
61+
;; ;; (setq lsp-ui-flycheck-enable t)
62+
;; ;; (setq lsp-ui-sideline-enable nil)
63+
;; ;; (setq lsp-ui-sideline-ignore-duplicate t)
64+
;; )
65+
66+
;; (use-package lsp-mode
67+
;; ;; :init
68+
;; ;; (setq lsp-file-watch-threshold 102400)
69+
;; :config
70+
;; (setq tab-width 4)
71+
;; (setq indent-tabs-mode 4)
72+
;; (setq company-idle-delay 0)
73+
;; (setq company-minimum-prefix-length 1)
74+
;; ;; (add-hook 'before-save-hook #'lsp-format-buffer t t)
75+
;; (add-hook 'before-save-hook #'lsp-organize-imports t t)
76+
77+
;; (lsp-register-client
78+
;; (make-lsp-client :new-connection (lsp-tramp-connection "rust-analyzer")
79+
;; :major-modes '(rust-mode)
80+
;; :remote? t
81+
;; :server-id 'rust-remote))
82+
83+
;; :bind (("C-c C-j" . lsp-find-definition)
84+
;; ("C-c C-b" . pop-tag-mark)
85+
;; ("C-c s s" . lsp-restart-workspace)
86+
;; ("C-c C-c" . lsp-find-references)
87+
;; ("C-." . lsp-execute-code-action))
88+
;; :hook (prog-mode . lsp-deferred))
89+
90+
;; ; csharp
91+
;; (use-package tree-sitter)
92+
;; (use-package tree-sitter-langs)
93+
;; (use-package tree-sitter-indent)
94+
95+
;; (use-package csharp-mode
96+
;; :ensure t
97+
;; :config
98+
;; ;(setq tree-sitter-indent-offset 4)
99+
;; ;(tree-sitter-mode)
100+
;; ;; (add-to-list 'auto-mode-alist '("\\.cs\\'" . tree-sitter-mode))
101+
;; )
102+
103+
104+
;; (use-package py-autopep8
105+
;; :hook (python-mode . py-autopep8-enable-on-save))
106+
107+
108+
;; (use-package ccls
109+
;; :config
110+
;; (setq ccls-executable "/usr/bin/ccls")
111+
;; :hook (ccls . lsp))
112+
113+
;; ;; set for csharp
114+
;; ;; (use-package tree-sitter :ensure t)
115+
;; ;; (use-package tree-sitter-langs :ensure t)
116+
;; ;; (use-package tree-sitter-indent :ensure t)
117+
118+
;; (use-package csharp-mode
119+
;; :ensure t
120+
;; :hook (csharp-mode . lsp))
121+
122+
;; (use-package vue-mode
123+
;; :config
124+
;; (setq-default
125+
;; web-mode-markup-indent-offset 2
126+
;; web-mode-code-indent-offset 2
127+
;; web-mode-css-indent-offset 2)
128+
;; (setq js2-basic-offset 2)
129+
;; (setq css-indent-offset 2)
130+
;; (setq js-indent-level 2)
131+
;; (setq lsp-javascript-format-enable t)
132+
;; :hook (vue-mode . (lambda ()
133+
;; (olivetti-mode)
134+
;; (lsp))))
49135

50-
(use-package csharp-mode
51-
:hook (csharp-mode . lsp))
52136

53137
(provide 'init-lspmode)

0 commit comments

Comments
 (0)