Added lisp programming stuff

This commit is contained in:
Benson Chu 2020-01-25 17:01:03 -06:00
parent 99d7bc3529
commit 43dd67c5f6
3 changed files with 59 additions and 148 deletions

View file

@ -1020,28 +1020,6 @@
(define-key *root-map* (kbd "p") '*profiler-map*)
#+end_src
** Slime mode
#+BEGIN_SRC emacs-lisp
(use-package slime)
(use-package slime-company)
(add-hook 'lisp-mode-hook #'slime-mode)
(add-hook 'inferior-lisp-mode-hook #'inferior-slime-mode)
(setq inferior-lisp-program "/usr/bin/sbcl")
(defun slime-switch-lisps (lisp)
(interactive (list (completing-read "Which lisp? "
'("sbcl" "ecl" "cmucl" "clozure-cl"))))
(setq inferior-lisp-program lisp))
(let ((clhs-file "~/quicklisp/clhs-use-local.el"))
(if (file-exists-p clhs-file)
(load-file clhs-file)
(warn "clhs not installed. Please install")))
(slime-setup '(slime-fancy slime-asdf slime-company))
#+END_SRC
** Google Translate
#+begin_src emacs-lisp
(use-package google-translate)

View file

@ -232,6 +232,65 @@
(define-key *root-map* (kbd "C-r") 'un-za-warudo)
#+end_src
* Programming stuff
** lsp
#+begin_src emacs-lisp
(use-package lsp-mode
:commands lsp)
(use-package lsp-ui
:after lsp-mode
:bind (:map lsp-mode-map
("M-." . #'lsp-ui-peek-find-definitions)
("M-?" . #'lsp-ui-peek-find-references)
("M-," . #'lsp-ui-peek-jump-backward)
("M-p" . #'lsp-ui-peek-jump-forward))
:hook (lsp-mode . lsp-ui-mode)
:config
(setq lsp-ui-flycheck-enable t)
(setq lsp-ui-flycheck-live-reporting t))
(use-package dap-mode
:hook ((java-mode . dap-mode)
(java-mode . dap-ui-mode))
:bind (:map dap-mode-map
("C-c h" . #'dap-hydra)
("C-c b" . #'dap-breakpoint-toggle)
("C-c d r" . #'dap-java-debug)
("C-c d m" . #'dap-java-debug-test-class)
("C-c r t" . #'mvn-test)))
#+end_src
** Slime mode
#+BEGIN_SRC emacs-lisp
(use-package slime
:commands slime slime-switch-lisps
:hook ((inferior-lisp-mode . inferior-slime-mode))
:config
(setq inferior-lisp-program "/usr/bin/sbcl")
(defun slime-switch-lisps (lisp)
(interactive (list (completing-read "Which lisp? "
'("sbcl" "ecl" "cmucl" "clozure-cl"))))
(setq inferior-lisp-program lisp))
(let ((clhs-file "~/quicklisp/clhs-use-local.el"))
(if (file-exists-p clhs-file)
(load-file clhs-file)
(warn "clhs not installed. Please install"))))
(use-package slime-company
:after slime company
:config
(slime-setup '(slime-fancy slime-asdf slime-company)))
#+END_SRC
* colorful compilation buffer
#+begin_src emacs-lisp
(require 'ansi-color)
(defun colorize-compilation-buffer ()
(let ((buffer-read-only nil))
(ansi-color-apply-on-region (point-min) (point-max))))
(add-hook 'compilation-filter-hook 'colorize-compilation-buffer)
#+end_src
* New
** transpose-frame
#+begin_src emacs-lisp

View file

@ -115,10 +115,6 @@
(use-package geiser)
(setq geiser-default-implementation 'chez)
#+END_SRC
* Paredit
#+BEGIN_SRC emacs-lisp
(use-package paredit)
#+END_SRC
* Cider
#+BEGIN_SRC emacs-lisp
(use-package clj-refactor)
@ -129,99 +125,6 @@
#+BEGIN_SRC emacs-lisp
(use-package yaml-mode)
#+END_SRC
* lsp-mode
#+begin_src emacs-lisp
(use-package flycheck)
;; (global-flycheck-mode)
(add-to-list 'display-buffer-alist
`(,(rx bos "*Flycheck errors*" eos)
(display-buffer-reuse-window
display-buffer-in-side-window)
(side . bottom)
(reusable-frames . visible)
(window-height . 0.10)))
(require 'ansi-color)
(defun colorize-compilation-buffer ()
(let ((buffer-read-only nil))
(ansi-color-apply-on-region (point-min) (point-max))))
;; (ansi-color-apply-on-region compilation-filter-start (point)))
(add-hook 'compilation-filter-hook 'colorize-compilation-buffer)
(use-package lsp-mode)
(use-package lsp-ui)
(add-hook 'java-mode-hook
'lsp)
(define-key lsp-mode-map (kbd "M-.") 'lsp-ui-peek-find-definitions)
(define-key lsp-mode-map (kbd "M-?") 'lsp-ui-peek-find-references)
(define-key lsp-mode-map (kbd "M-,") 'lsp-ui-peek-jump-backward)
(define-key lsp-mode-map (kbd "M-p") 'lsp-ui-peek-jump-forward)
(setq lsp-ui-flycheck-enable t)
(setq lsp-ui-flycheck-live-reporting t)
(use-package dap-mode
:config
(add-hook 'java-mode-hook
'dap-mode)
(add-hook 'java-mode-hook
'dap-ui-mode)
(define-key dap-mode-map (kbd "C-c h") 'dap-hydra)
(define-key dap-mode-map (kbd "C-c b") 'dap-breakpoint-toggle)
(define-key dap-mode-map (kbd "C-c d r") 'dap-java-debug)
(define-key dap-mode-map (kbd "C-c d m") 'dap-java-debug-test-class)
(define-key dap-mode-map (kbd "C-c r t") 'mvn-test))
;; (defhydra dap-hydra (:color pink :hint nil :foreign-keys run)
;; ;; "
;; ;; ^Stepping^ ^Switch^ ^Breakpoints^ ^Eval
;; ;; ^^^^^^^^-----------------------------------------------------------------------------------------
;; ;; _n_: Next _ss_: Session _bt_: Toggle _ee_: Eval
;; ;; _i_: Step in _st_: Thread _bd_: Delete _er_: Eval region
;; ;; _o_: Step out _sf_: Stack frame _ba_: Add _es_: Eval thing at point
;; ;; _c_: Continue _sl_: List locals _bc_: Set condition _eii_: Inspect
;; ;; _r_: Restart frame _sb_: List breakpoints _bh_: Set hit count _eir_: Inspect region
;; ;; _Q_: Disconnect _sS_: List sessions _bl_: Set log message _eis_: Inspect thing at point
;; ;; "
;; ("n" dap-next)
;; ("i" dap-step-in)
;; ("o" dap-step-out)
;; ("c" dap-continue)
;; ("r" dap-restart-frame)
;; ("ss" dap-switch-session)
;; ("st" dap-switch-thread)
;; ("sf" dap-switch-stack-frame)
;; ("sl" dap-ui-locals)
;; ("sb" dap-ui-breakpoints)
;; ("sS" dap-ui-sessions)
;; ("bt" dap-breakpoint-toggle)
;; ("ba" dap-breakpoint-add)
;; ("bd" dap-breakpoint-delete)
;; ("bc" dap-breakpoint-condition)
;; ("bh" dap-breakpoint-hit-condition)
;; ("bl" dap-breakpoint-log-message)
;; ("ee" dap-eval)
;; ("er" dap-eval-region)
;; ("es" dap-eval-thing-at-point)
;; ("eii" dap-ui-inspect)
;; ("eir" dap-ui-inspect-region)
;; ("eis" dap-ui-inspect-thing-at-point)
;; ("q" nil "quit" :color blue)
;; ("Q" dap-disconnect :color red))
;(use-package lsp-python)
#+end_src
** Java
#+begin_src emacs-lisp
(use-package lsp-java)
(require 'dap-java)
#+end_src
** ccls
#+begin_src emacs-lisp
(use-package ccls)
(require 'ccls)
#+end_src
* Rainbow delimiters
#+begin_src emacs-lisp
(use-package rainbow-delimiters)
@ -247,35 +150,6 @@
(set-face-attribute 'rainbow-delimiters-depth-8-face t :foreground rainbow-8)
(set-face-attribute 'rainbow-delimiters-depth-9-face t :foreground rainbow-purple))
#+end_src
* elisp
** Macroexpand
#+begin_src emacs-lisp
(use-package macrostep)
(define-key macrostep-keymap (kbd "C-c C-c") nil)
(define-key macrostep-keymap (kbd "DEL") nil)
(define-key macrostep-keymap (kbd "c") nil)
(define-key macrostep-keymap (kbd "u") nil)
(define-key macrostep-keymap (kbd "C-c q") #'macrostep-collapse)
(define-key macrostep-keymap (kbd "RET") nil)
(define-key macrostep-keymap (kbd "e") nil)
(define-key emacs-lisp-mode-map (kbd "C-c e") #'macrostep-expand)
(define-key macrostep-keymap (kbd "n") nil)
(define-key macrostep-keymap (kbd "C-c C-n") #'macrostep-next-macro)
(define-key macrostep-keymap (kbd "p") nil)
(define-key macrostep-keymap (kbd "C-c C-p") #'macrostep-prev-macro)
#+end_src
** auto-highlight-symbol
#+begin_src emacs-lisp
(use-package auto-highlight-symbol)
(add-hook 'emacs-lisp-mode-hook
'auto-highlight-symbol-mode)
#+end_src
* C#
#+BEGIN_SRC emacs-lisp
(use-package csharp-mode)