(setq inhibit-startup-message t) (scroll-bar-mode -1) (tool-bar-mode -1) (tooltip-mode -1) (set-fringe-mode 10) (menu-bar-mode -1) (setq visible-bell t) (prefer-coding-system 'utf-8) (set-face-attribute 'default nil :font "FiraCode Nerd Font" :height 120) (defvar bootstrap-version) (let ((bootstrap-file (expand-file-name "straight/repos/straight.el/bootstrap.el" (or (bound-and-true-p straight-base-dir) user-emacs-directory))) (bootstrap-version 7)) (unless (file-exists-p bootstrap-file) (with-current-buffer (url-retrieve-synchronously "https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el" 'silent 'inhibit-cookies) (goto-char (point-max)) (eval-print-last-sexp))) (load bootstrap-file nil 'nomessage)) (straight-use-package 'use-package) (global-display-line-numbers-mode t) (global-display-fill-column-indicator-mode t) (set-fill-column 80) (column-number-mode t) (setq-default truncate-lines t) (setq straight-use-package-by-default t) (use-package doom-themes) (load-theme 'doom-dark+ t) (use-package exec-path-from-shell :config :init (setq exec-path-from-shell-variables '("PATH" "MANPATH" "SSH_AUTH_SOCK" )) (exec-path-from-shell-initialize)) (use-package ultra-scroll :init (setq scroll-conservatively 3 scroll-margin 0) :config (ultra-scroll-mode t)) (use-package rg) (use-package magit :config (setq magit-display-buffer-function #'magit-display-buffer-fullcolumn-most-v1)) (use-package vertico :init (vertico-mode)) (use-package php-mode :init (setq phpactor-executable (executable-find "phpactor")) :hook ((php-mode . eglot-ensure) (php-mode . (lambda () (setq-local phpactor-executable (executable-find "phpactor")))) (php-mode . my/php-mode-face-setup)) ;; Add custom face hook :mode ("\\.php\\'") :config (defun my/php-mode-face-setup () (set-face-attribute 'php-method-call-traditional nil :foreground "goldenrod") (set-face-attribute 'php-function-call-traditional nil :foreground "#708090"))) (use-package phpactor :after php-mode) (use-package smartparens :config (require 'smartparens-config) :init (smartparens-global-mode)) (use-package diff-hl :init (global-diff-hl-mode) :hook (magit-post-refresh . diff-hl-magit-post-refresh)) (use-package which-key :config (which-key-mode 1)) (use-package cape :init (add-to-list `completion-at-point-functions #'cape-keyword) (add-to-list `completion-at-point-functions #'cape-file) (add-to-list `completion-at-point-functions #'cape-emoji)) (use-package orderless :custom (completion-styles '(orderless basic))) (use-package marginalia :init (marginalia-mode)) (use-package yaml-mode) (use-package rjsx-mode :mode ("\\.jsx\\'" "\\.js\\'") :interpreter ("node" . rjsx-mode) :config (define-key rjsx-mode-map (kbd "M-.") nil)) (use-package nix-mode :mode ("\\.nix\\'")) (use-package corfu :demand t :custom (corfu-auto t) (corfu-seperator ?-) (corfu-auto-prefix 2) :init (global-corfu-mode) (corfu-history-mode 1) (corfu-popupinfo-mode 1)) (use-package projectile :init (projectile-mode +1) :bind (:map projectile-mode-map ("C-c p" . projectile-command-map) ("C-c C-p" . projectile-command-map))) (use-package editorconfig :config (editorconfig-mode 1)) (use-package dumb-jump :config (add-hook 'xref-backend-functions #'dumb-jump-xref-activate)) (custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(custom-safe-themes '("e4a702e262c3e3501dfe25091621fe12cd63c7845221687e36a79e17cf3a67e0" "aec7b55f2a13307a55517fdf08438863d694550565dee23181d2ebd973ebd6b8" default)) '(safe-local-variable-values '((projectile-project-test-cmd . "php ./vendor/bin/phpunit --color=never --verbose"))) '(warning-suppress-types '((comp) (use-package)))) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. )