generic development
Table of Contents
1. generic
1.1. vterm
(use-package vterm :ensure :straight t)
1.2. Magit
(use-package magit :straight t :ensure t)
1.3. TODO eglot
(use-package eglot :ensure :straight t :bind (:map eglot-mode-map ("C-c e = =" . eglot-format-buffer) ("C-c e r r" . eglot-rename) ("C-c e g i" . eglot-find-implementation) ("C-c e g d" . eglot-find-declaration) ("C-c e g g" . eglot-find-typeDefinition) ("C-c e a o" . eglot-code-action-organize-imports) ("C-c e a a" . eglot-code-actions)) ) ;(with-eval-after-load "eglot" ; (add-to-list 'eglot-server-programs '(php-mode "phpstan")))
1.4. TODO project.el (projecctile?)
1.5. treemacs
(use-package treemacs :ensure :straight t :config (setq treemacs-width (if (display-graphic-p) 35 20) treemacs-read-string-input 'from-minibuffer) (treemacs-git-mode 'simple) (treemacs-git-commit-diff-mode 1) (treemacs-hide-gitignored-files-mode 1)) (use-package treemacs-magit :ensure :after (treemacs magit) :straight t)
2. language specific
2.1. PHP
2.1.1. PHP mode
(use-package php-mode :ensure :straight t)
2.1.2. Eglot config
(with-eval-after-load "eglot" (add-to-list 'eglot-server-programs '(php-mode . ("phpactor" "language-server")))) (defun init-php-mode () (eglot-ensure)) (with-eval-after-load 'php-mode ;; If phpactor command is not installed as global, remove next ;; and write the full path ;; (custom-set-variables '(lsp-phpactor-path "/path/to/phpactor")) (add-hook 'php-mode-hook #'init-php-mode))