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

Joel Grunbaum
2021-10-19 e0a5d8d61238640a3d4daf36750483274d4fe390
config.org
@@ -86,12 +86,12 @@
  (set-face-italic 'font-lock-keyword-face t)
#+END_SRC
** Remove menu bar, toolbar, but keep scroll bar
** Remove menu bar, toolbar, and scroll bar
Make the emacs interface slightly nicer.
#+BEGIN_SRC emacs-lisp
  (menu-bar-mode 0)
  (tool-bar-mode 0)
  (scroll-bar-mode 1)
  (scroll-bar-mode 0)
#+END_SRC
* COMMENT EXWM
Emacs window manager.
@@ -124,7 +124,14 @@
  (diminish 'flyspell-mode)
#+END_SRC
** Language Tool
Language tool is an open source grammar checker.
#+BEGIN_SRC emacs-lisp
  (use-package langtool
    :ensure t
    :init
    (setq langtool-java-classpath "/usr/share/languagetool:/usr/share/java/languagetool/*"))
#+END_SRC
** Switch-window
Helps to change windows easily when many are open at once.
#+BEGIN_SRC emacs-lisp
@@ -765,7 +772,6 @@
  (use-package flycheck
    :ensure t
    :diminish flycheck-mode
    :hook (prog-mode . flycheck-mode)
    :config
    (global-flycheck-mode))
#+END_SRC
@@ -789,10 +795,10 @@
    :config
    (global-company-mode)
    (setq company-idle-delay 0)
    (setq company-minimum-prefix-length 3))
    (setq company-minimum-prefix-length 1))
#+END_SRC
** COMMENT LSP Mode
** LSP Mode
Use LSP for completion suggestions.
Causes too much memory usage, need to debug.
#+BEGIN_SRC emacs-lisp
@@ -806,20 +812,22 @@
             LaTeX-mode
             rust-mode
             sh-mode
             verilog-mode) . lsp))
             verilog-mode
             go-mode) . lsp))
    :init
    (setq lsp-keymap-prefix "C-c l")
    :commands lsp
    :config
    (add-hook lsp-mode-hook lsp-enable-which-key-integration)
    (add-hook 'lsp-mode-hook 'lsp-enable-which-key-integration)
    (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"))
  (use-package lsp-ui
    :ensure t
    :commands lsp-ui-mode)
  (use-package helm-lsp
    :ensure t
    :commands helm-lsp-workspace-symbol)
@@ -993,12 +1001,12 @@
                                           "IndentCaseLabels: false}"))
    (setq-default clang-format-style clang-format-linux-style)
    (defun clang-format-on-save ()
      (add-hook 'before-save-hook 'clang-format-buffer))
    (add-hook 'c-mode-hook 'clang-format-on-save)
    (add-hook 'c++-mode-hook 'clang-format-on-save))
      (add-hook 'before-save-hook 'clang-format-buffer nil t))
    (add-hook 'c-mode-hook 'clang-format-on-save nil t)
    (add-hook 'c++-mode-hook 'clang-format-on-save nil t))
#+END_SRC
*** emacs-lisp
**** COMMENT company
**** COMMENT Company
Add slime backend.
#+BEGIN_SRC emacs-lisp
(add-hook 'emacs-lisp-mode-hook 'company-mode)
@@ -1077,7 +1085,7 @@
  (defun get-texcount-latest()
    (if (not(file-directory-p "~/.texcount"))
        (make-directory "~/.texcount"))
    (url-copy-file "https://app.uio.no/ifi/texcount/download.php?file=texcount_3_1_1.zip" "~/.texcount/texcount.zip" 1)
    (url-copy-file "https://app.uio.no/ifi/texcount/download.php?file=texcount_3_2_0_41.zip" "~/.texcount/texcount.zip" 1)
    (shell-command "unzip -o ~/.texcount/texcount.zip -d ~/.texcount")
    (add-to-list 'exec-path "~/.texcount/texcount.pl"))
@@ -1133,8 +1141,7 @@
      (autoload 'racket-mode "Racket" "Racket Editing Mode" t)
      (add-to-list
       'auto-mode-alist
       '("\\.rkt$" . racket-mode))
      (setq matlab-indent-function t))
       '("\\.rkt$" . racket-mode)))
#+END_SRC
*** COMMENT Verilog
@@ -1262,16 +1269,29 @@
    :config
    (add-hook 'flyckeck-mode-hook #'flycheck-rust-setup))
#+END_SRC
**** COMMENT Completion
Code completion with racer.
*** Go
**** Major mode
#+BEGIN_SRC emacs-lisp
  (use-package racer
  (use-package go-mode
    :ensure t
    :hook ((rust-mode . racer-mode)
           (racer-mode . (eldoc-mode company-mode)))
    :init
    (setq racer-command "~/.cargo/bin/racer"))
    :config
    (add-hook 'before-save-hook #'gofmt-before-save))
#+END_SRC
#+RESULTS:
: t
**** Flycheck
#+BEGIN_SRC emacs-lisp
  (use-package flycheck-golangci-lint
    :ensure t
    :config
    (add-hook 'flycheck-mode-hook #'flycheck-golangci-lint-setup))
#+END_SRC
**** Company
#+BEGIN_SRC emacs-lisp
  (use-package company-go
    :ensure t)
#+END_SRC
* Org mode
** Up to date org
@@ -1361,8 +1381,9 @@
#+END_SRC
** Org export additions
*** COMMENT Pandoc
*** Pandoc
Call pandoc on org buffer from org export.
Need to add ~#+OPTIONS: H:99~ to enable large level header exports.
#+BEGIN_SRC emacs-lisp
  (use-package ox-pandoc
    :ensure t)