mirror of https://github.com/Chizi123/.emacs.d.git

Joel Grunbaum
2024-02-14 46132dcf362f3da63ffa1d8573dc5995d8e7e767
config.org
@@ -101,7 +101,7 @@
    (setq-default ispell-program-name "aspell")
    (setq-default ispell-local-dictionary "en_AU"))
#+END_SRC
** COMMENT Language Tool
** Language Tool
Language tool is an open source grammar checker.
#+BEGIN_SRC emacs-lisp
  (use-package langtool
@@ -163,6 +163,7 @@
           ("M-y" . helm-show-kill-ring)
           ("C-x b" . helm-mini)
           ("C-c h o" . helm-occur))
    :diminish helm-mode
    :config
    (setq helm-mode-fuzzy-match                 t
          helm-completion-in-regionfuzzy-match  t
@@ -404,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 ()
@@ -502,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
@@ -550,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
@@ -798,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)
@@ -1081,6 +1095,7 @@
#+BEGIN_SRC emacs-lisp
  (use-package tex
    :ensure auctex
    :straight auctex
    :config
    (setq TeX-auto-save t
          TeX-parse-self t
@@ -1158,11 +1173,11 @@
    (cond ((eq system-type 'windows-nt)
           (when (file-exists-p "c:/ProgramData/chocolatey/lib/plantuml/tools/plantuml.jar")
             (setq plantuml-jar-path "c:/ProgramData/chocolatey/lib/plantuml/tools/plantuml.jar")
             (setq planuml-default-exec-mode 'jar)))
             (setq plantuml-default-exec-mode 'jar)))
          ((eq system-type 'gnu/linux)
           (when (file-exists-p "/usr/share/java/plantuml/plantuml.jar")
             (setq plantuml-jar-path "/usr/share/java/plantuml/plantuml.jar")
             (setq planuml-default-exec-mode 'jar)))))
             (setq plantuml-default-exec-mode 'jar)))))
#+END_SRC
*** COMMENT Racket
@@ -1211,12 +1226,34 @@
                  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
*** COMMENT MATLAB
**** 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
    :straight matlab-mode
    :config
    (autoload 'matlab-mode "matlab" "Matlab Editing Mode" t)
    (add-to-list
@@ -1224,7 +1261,8 @@
     '("\\.m$" . matlab-mode))
    (setq matlab-indent-function t)
    (setq matlab-shell-command "matlab")
    (matlab-cedet-setup))
    (matlab-cedet-setup)
    (add-to-list 'company-backends 'company-matlab-shell))
#+END_SRC
*** COMMENT MIPS
@@ -1285,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
@@ -1397,6 +1428,7 @@
#+BEGIN_SRC emacs-lisp
  (use-package emms-setup
    :ensure emms
    :straight emms
    :init
    (add-to-list 'load-path "~/elisp/emms/")
    :config