From 2a5badf7e2e2de3f6ddb02c2ed2c81289a0f7c4c Mon Sep 17 00:00:00 2001 From: John Doty Date: Thu, 19 Aug 2021 09:10:11 -0700 Subject: [PATCH] Emacs work on windows --- .emacs.d/custom.el | 4 ++-- .emacs.d/init.el | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/.emacs.d/custom.el b/.emacs.d/custom.el index 3b05725..f74fbb2 100644 --- a/.emacs.d/custom.el +++ b/.emacs.d/custom.el @@ -22,7 +22,7 @@ '(company-minimum-prefix-length 1) '(css-indent-offset 2) '(custom-safe-themes - '("7b3ce93a17ce4fc6389bba8ecb9fee9a1e4e01027a5f3532cc47d160fe303d5a" "3dbb18bf06f41012d4525e6c64c392d6cfef06a2f8fe1bf7b565c4e020255466" "8db4b03b9ae654d4a57804286eb3e332725c84d7cdab38463cb6b97d5762ad26" default)) + '("d6da24347c813d1635a217d396cf1e3be26484fd4d05be153f3bd2b293d2a0b5" "7b3ce93a17ce4fc6389bba8ecb9fee9a1e4e01027a5f3532cc47d160fe303d5a" "3dbb18bf06f41012d4525e6c64c392d6cfef06a2f8fe1bf7b565c4e020255466" "8db4b03b9ae654d4a57804286eb3e332725c84d7cdab38463cb6b97d5762ad26" default)) '(fast-lock-cache-directories '("~/flc-cache")) '(fast-lock-minimum-size nil) '(fill-column 77) @@ -58,7 +58,7 @@ '(org-odd-levels-only t) '(org-todo-keywords '((sequence "TODO" "|" "DONE" "ABANDONED" "DEFERRED"))) '(package-selected-packages - '(flycheck-rust eglot ink-mode prettier-js zig-mode modus-operandi-theme esup gnu-elpa-keyring-update lsp-hack hack-mode rust-mode filladapt lsp-ui yaml-mode wgrep fsharp-mode company-lsp cquery mustache-mode clang-format projectile dash-functional mocha add-node-modules-path rjsx-mode xref-js2 js2-refactor company omnisharp geiser cider clojure-mode graphviz-dot-mode multi-term xterm-color thrift markdown-mode tuareg merlin ag use-package flycheck dockerfile-mode js2-mode web-mode tss switch-window python-mode paredit magit lua-mode go-mode go-autocomplete exec-path-from-shell csharp-mode color-theme-monokai auto-complete auto-complete-nxml flymake flyspell json-mode popup ruby-mode company-jedi tide elm-mode monky)) + '(tree-sitter flycheck-rust eglot ink-mode prettier-js zig-mode modus-operandi-theme esup gnu-elpa-keyring-update lsp-hack hack-mode rust-mode filladapt lsp-ui yaml-mode wgrep fsharp-mode company-lsp cquery mustache-mode clang-format projectile dash-functional mocha add-node-modules-path rjsx-mode xref-js2 js2-refactor company omnisharp geiser cider clojure-mode graphviz-dot-mode multi-term xterm-color thrift markdown-mode tuareg merlin ag use-package flycheck dockerfile-mode js2-mode web-mode tss switch-window python-mode paredit magit lua-mode go-mode go-autocomplete exec-path-from-shell csharp-mode color-theme-monokai auto-complete auto-complete-nxml flymake flyspell json-mode popup ruby-mode company-jedi tide elm-mode monky)) '(reb-re-syntax 'string) '(rmail-mail-new-frame t) '(safe-local-variable-values diff --git a/.emacs.d/init.el b/.emacs.d/init.el index 19ef937..9f5136e 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -180,6 +180,7 @@ (setq my-font-choice (font-candidate "Input Mono Narrow:pixelsize=14:weight=normal" + "InputMonoNarrow-14" "Consolas-10" "Inconsolata-11" "Monaco-14")) @@ -309,6 +310,14 @@ ;; ================================================================= ;; Common configuration for LSP-based systems. ;; ================================================================= +(defvar my-clangd-executable (executable-find "clangd") + "Path to the clangd binary.") + +(defun my-disable-flycheck-on-eglot () + "Disable flycheck in eglot-managed buffers." + (message "%s %s" "Called..." (eglot-managed-p)) + (flycheck-mode (if (eglot-managed-p) -1 nil))) + ;; (use-package lsp-mode :ensure ;; :init (setq lsp-pyls-server-command "pyls-language-server") ;; :commands (lsp lsp-mode lsp-deferred) @@ -319,14 +328,14 @@ ;; (use-package lsp-ui ;; :config (add-hook 'lsp-mode-hook 'lsp-ui-mode))) (use-package eglot :ensure - :commands eglot-ensure + :commands (eglot-ensure eglot) :hook (python-mode . eglot-ensure) (rust-mode . eglot-ensure) :config (add-to-list 'eglot-server-programs '(python-mode . ("pyls-language-server"))) - :init - (flycheck-mode -1)) + (add-to-list 'eglot-server-programs `(c++-mode . (,my-clangd-executable))) + (add-hook 'eglot-managed-mode-hook 'my-disable-flycheck-on-eglot)) ;; NOTE: elgot defers to flymake for error information. (use-package flymake