emacs-config/unused/50-lang.org

92 lines
1.8 KiB
Org Mode

#+TITLE: Languages
* Intro
This is where Programming Language modes are configured.
* Built-in Modes
** C++
#+begin_src emacs-lisp
(add-hook 'c++-mode-hook #'display-line-numbers-mode)
(add-hook 'c++-mode-hook #'lsp-deferred)
#+end_src
** Bash
#+begin_src emacs-lisp
(add-hook 'sh-mode-hook #'display-line-numbers-mode)
(add-hook 'sh-mode-hook #'lsp-deferred)
#+end_src
** HTML
#+begin_src emacs-lisp
(add-hook 'mhtml-mode-hook #'display-line-numbers-mode)
(add-hook 'mhtml-mode-hook #'lsp-deferred)
#+end_src
** TeX/LaTeX
#+begin_src emacs-lisp
(add-hook 'latex-mode-hook #'display-line-numbers-mode)
(add-hook 'latex-mode-hook #'lsp-deferred)
#+end_src
** JavaScript
#+begin_src emacs-lisp
(add-hook 'js-mode-hook #'display-line-numbers-mode)
(add-hook 'js-mode-hook #'lsp-deferred)
#+end_src
* Installed Modes
** Go
#+begin_src emacs-lisp
(use-package go-mode
:hook
go-mode
(go-mode . lsp-deferred)
(before-save . lsp-format-buffer)
(before-save . lsp-organize-imports)
:config
(add-hook 'go-mode-hook #'display-line-numbers-mode))
#+end_src
** TypeScript
#+begin_src emacs-lisp
(use-package typescript-mode
:mode "\\.ts\\'"
:hook
(typescript-mode . lsp-deferred)
(typescript-mode . display-line-numbers-mode))
#+end_src
* LSP ELPA Packages
** Python
#+begin_src emacs-lisp
(use-package lsp-pyright
:hook (python-mode . (lambda ()
(require 'lsp-pyright)
(lsp-deferred)
(display-line-numbers-mode)))) ; or lsp
#+end_src
** Java
#+begin_src emacs-lisp
(use-package lsp-java
:hook
(java-mode-hook . display-line-numbers-mode)
(java-mode-hook . lsp-deferred))
#+end_src