| | |
| | | (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.
|
| | |
| | | :config
|
| | | (global-company-mode)
|
| | | (setq company-idle-delay 0)
|
| | | (setq company-minimum-prefix-length 3))
|
| | | (setq company-minimum-prefix-length 1))
|
| | | #+END_SRC
|
| | |
|
| | | ** LSP Mode
|
| | |
| | | LaTeX-mode
|
| | | rust-mode
|
| | | sh-mode
|
| | | verilog-mode) . lsp))
|
| | | verilog-mode
|
| | | go-mode) . lsp))
|
| | | :init
|
| | | (setq lsp-keymap-prefix "C-c l")
|
| | | :commands lsp
|
| | |
| | | (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
|
| | | **** Get latest version
|
| | | Pull the latest version from the web.
|
| | | Use latest version from repositories.
|
| | | #+BEGIN_SRC emacs-lisp
|
| | | (defun get-verilog-latest()
|
| | | (if (not(file-directory-p "~/.emacs.d/elpa/verilog-mode"))
|
| | | (make-directory "~/.emacs.d/elpa/verilog-mode"))
|
| | | (if (file-exists-p "~/.emacs.d/elpa/verilog-mode/verilog-mode.el")
|
| | | (delete-file "~/.emacs.d/elpa/verilog-mode/verilog-mode.el"))
|
| | | (url-copy-file "https://www.veripool.org/ftp/verilog-mode.el" "~/.emacs.d/elpa/verilog-mode/verilog-mode.el" 1))
|
| | | #+END_SRC
|
| | |
|
| | | **** Integrate into emacs
|
| | | Add updated version (based off auto-package-update) and integrate it with Emacs.
|
| | | #+BEGIN_SRC emacs-lisp
|
| | | (defun verilog-read-file-as-string (file)
|
| | | "Read FILE contents."
|
| | | (when (file-exists-p file)
|
| | | (with-temp-buffer
|
| | | (insert-file-contents file)
|
| | | (buffer-string))))
|
| | |
|
| | | (defun verilog-write-string-to-file (file string)
|
| | | "Substitute FILE contents with STRING."
|
| | | (with-temp-buffer
|
| | | (insert string)
|
| | | (when (file-writable-p file)
|
| | | (write-region (point-min)
|
| | | (point-max)
|
| | | file))))
|
| | |
|
| | | (defun verilog-today-day ()
|
| | | (time-to-days (current-time)))
|
| | |
|
| | | (defun should-update-verilog-p ()
|
| | | "Return non-nil when an update is due."
|
| | | (and
|
| | | (or
|
| | | (not (file-exists-p "~/.emacs.d/.last-verilog-update-day"))
|
| | | (if (>= (/ (- (verilog-today-day) (verilog-read-last-update-day)) 7) 1)
|
| | | t
|
| | | nil))))
|
| | |
|
| | | (defun verilog-read-last-update-day ()
|
| | | "Read last update day."
|
| | | (string-to-number
|
| | | (verilog-read-file-as-string "~/.emacs.d/.last-verilog-update-day")))
|
| | |
|
| | | (defun verilog-write-current-day ()
|
| | | "Store current day."
|
| | | (verilog-write-string-to-file
|
| | | "~/.emacs.d/.last-verilog-update-day"
|
| | | (int-to-string (verilog-today-day))))
|
| | |
|
| | | (use-package verilog-mode
|
| | | :init
|
| | | (when (should-update-verilog-p)
|
| | | (get-verilog-latest)
|
| | | (verilog-write-current-day))
|
| | | (add-to-list 'load-path "~/.emacs.d/elpa/verilog-mode/verilog-mode.el")
|
| | | :ensure t
|
| | | :pin gnu
|
| | | :config
|
| | | (autoload 'verilog-mode "verilog-mode" "Verilog mode" t )
|
| | | (add-to-list 'auto-mode-alist '("\\.[ds]?vh?\\'" . verilog-mode)))
|
| | | (add-to-list 'auto-mode-alist '("\\.[ds]?va?h?\\'" . verilog-mode)))
|
| | | #+END_SRC
|
| | |
|
| | | *** COMMENT MATLAB
|
| | |
| | | :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
|