From 46132dcf362f3da63ffa1d8573dc5995d8e7e767 Mon Sep 17 00:00:00 2001 From: Joel Grunbaum <joelgrun@gmail.com> Date: Wed, 14 Feb 2024 02:54:33 +0000 Subject: [PATCH] Change python lsp server to pyright --- config.org | 76 ++++++++++++++++++++++++++----------- 1 files changed, 53 insertions(+), 23 deletions(-) diff --git a/config.org b/config.org index 4354593..463e10f 100644 --- a/config.org +++ b/config.org @@ -405,6 +405,14 @@ (global-set-key (kbd "C-c e i") 'init-visit) #+END_SRC +*** Go to early-init.el +#+BEGIN_SRC emacs-lisp + (defun early-init-visit () + (interactive) + (find-file "~/.emacs.d/early-init.el")) + (global-set-key (kbd "C-c e e") 'early-init-visit) +#+END_SRC + *** Reload configuration #+BEGIN_SRC emacs-lisp (defun config-reload () @@ -503,6 +511,8 @@ (use-package undo-tree :diminish undo-tree-mode :config + (setq-default undo-tree-auto-save-history t) + (add-to-list 'undo-tree-incompatible-major-modes 'archive-mode) (global-undo-tree-mode)) #+END_SRC @@ -551,7 +561,9 @@ ** Line numbers Everyone needs line numbers when programming. #+BEGIN_SRC emacs-lisp - (add-hook 'prog-mode-hook 'linum-mode) + (if (version<= "26.0.50" emacs-version) + (add-hook 'prog-mode-hook 'display-line-numbers-mode) + (add-hook 'prog-mode-hook 'linum-mode)) #+END_SRC ** Garbage collection @@ -799,7 +811,8 @@ (setq read-process-output-max (* 1024 1024)) (setq lsp-completion-provider :capf) (setq lsp-keep-workspace-alive 'nil) - (add-to-list 'exec-path "~/.cargo/bin")) + (add-to-list 'exec-path "~/.cargo/bin") + (add-to-list 'exec-path "~/.local/bin")) (use-package lsp-ui :commands lsp-ui-mode) @@ -1082,6 +1095,7 @@ #+BEGIN_SRC emacs-lisp (use-package tex :ensure auctex + :straight auctex :config (setq TeX-auto-save t TeX-parse-self t @@ -1212,21 +1226,43 @@ verilog-indent-level-directive 4 verilog-indent-level-module 4)) #+END_SRC +**** FPGA +#+BEGIN_SRC emacs-lisp + (use-package fpga + :init + (setq fpga-feature-list '(xilinx))) +#+END_SRC +**** Run and test +Run the open buffer and display the output in a new buffer. +#+BEGIN_SRC emacs-lisp + (defun run-verilator () + (interactive) + (save-buffer) + (if (not (eq (shell-command (concat "verilator --binary -j 0 " (buffer-file-name)) "*verilator output*") 0)) + (display-buffer "*verilator output*" 'display-buffer-reuse-window) + (shell-command (concat (file-name-directory (buffer-file-name)) + '"obj_dir/V" + (file-name-nondirectory (file-name-sans-extension (buffer-file-name)))) + "*test output*") + (display-buffer "*test output*" 'display-buffer-reuse-window)) + t) + (define-key verilog-mode-map (kbd "C-c c") 'run-verilator) #+END_SRC *** MATLAB Mode for editing MATLAB m-files. #+BEGIN_SRC emacs-lisp - (use-package matlab - :ensure matlab-mode - :config - (autoload 'matlab-mode "matlab" "Matlab Editing Mode" t) - (add-to-list - 'auto-mode-alist - '("\\.m$" . matlab-mode)) - (setq matlab-indent-function t) - (setq matlab-shell-command "matlab") - (matlab-cedet-setup) - (add-to-list 'company-backends 'company-matlab-shell)) + (use-package matlab + :ensure matlab-mode + :straight matlab-mode + :config + (autoload 'matlab-mode "matlab" "Matlab Editing Mode" t) + (add-to-list + 'auto-mode-alist + '("\\.m$" . matlab-mode)) + (setq matlab-indent-function t) + (setq matlab-shell-command "matlab") + (matlab-cedet-setup) + (add-to-list 'company-backends 'company-matlab-shell)) #+END_SRC *** COMMENT MIPS @@ -1287,22 +1323,15 @@ (use-package company-go) #+END_SRC *** Python -**** COMMENT LSP server -Use jedi, idk why. +**** LSP server +Use pyright, idk why. #+BEGIN_SRC emacs-lisp - (use-package lsp-jedi + (use-package lsp-pyright :config (add-to-list 'lsp-disabled-clients 'pyls) (add-to-list 'lsp-enabled-clients 'jedi)) #+END_SRC * Org mode -** Up to date org -Pull the latest org mode from the repository, rather than the org which comes with emacs. -#+BEGIN_SRC emacs-lisp - (use-package org - :ensure org-contrib) -#+END_SRC - ** Small tweaks Small quality of life changes to org-mode. #+BEGIN_SRC emacs-lisp @@ -1399,6 +1428,7 @@ #+BEGIN_SRC emacs-lisp (use-package emms-setup :ensure emms + :straight emms :init (add-to-list 'load-path "~/elisp/emms/") :config -- Gitblit v1.9.3