diff options
Diffstat (limited to '.doom.d/config.el')
-rw-r--r-- | .doom.d/config.el | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/.doom.d/config.el b/.doom.d/config.el new file mode 100644 index 00000000..a090ca01 --- /dev/null +++ b/.doom.d/config.el @@ -0,0 +1,132 @@ +;;; $DOOMDIR/config.el -*- lexical-binding: t; -*- + +;; Place your private configuration here! Remember, you do not need to run 'doom +;; refresh' after modifying this file! + + +;; These are used for a number of things, particularly for GPG configuration, +;; some email clients, file templates and snippets. +(setq user-full-name "Roger Gonzalez" + user-mail-address "roger@rogs.me") + +;; Doom exposes five (optional) variables for controlling fonts in Doom. Here +;; are the three important ones: +;; +;; + `doom-font' +;; + `doom-variable-pitch-font' +;; + `doom-big-font' -- used for `doom-big-font-mode' +;; +;; They all accept either a font-spec, font string ("Input Mono-12"), or xlfd +;; font string. You generally only need these two: +;; test + (setq doom-font (font-spec :family "monospace" :size 28) + doom-variable-pitch-font (font-spec :family "sans")) + +;; There are two ways to load a theme. Both assume the theme is installed and +;; available. You can either set `doom-theme' or manually load a theme with the +;; `load-theme' function. These are the defaults. +(setq doom-theme 'doom-one) + +;; If you intend to use org, it is recommended you change this! + (setq org-directory "~/Dropbox/org") + +;; If you want to change the style of line numbers, change this to `relative' or +;; `nil' to disable it: +(setq display-line-numbers-type t) + + +;; Here are some additional functions/macros that could help you configure Doom: +;; +;; - `load!' for loading external *.el files relative to this one +;; - `use-package' for configuring packages +;; - `after!' for running code after a package has loaded +;; - `add-load-path!' for adding directories to the `load-path', where Emacs +;; looks when you load packages with `require' or `use-package'. +;; - `map!' for binding new keys +;; +;; To get information about any of these functions/macros, move the cursor over +;; the highlighted symbol at press 'K' (non-evil users must press 'C-c g k'). +;; This will open documentation for it, including demos of how they are used. +;; +;; You can also try 'gd' (or 'C-c g d') to jump to their definition and see how +;; they are implemented. + +;; Set emacs logo as the default image +(setq + +doom-dashboard-banner-file (expand-file-name "logo.png" doom-private-dir)) + +;; Saves emacs backups in other folder +(setq + backup-by-copying t ; don't clobber symlinks + backup-directory-alist '(("." . "~/.emacs_backups")) ; don't litter my fs tree + delete-old-versions t + kept-new-versions 6 + kept-old-versions 2 + version-control t) ; use versioned backups + +;; WhiteSpace Cleanup +(global-whitespace-cleanup-mode) + +;; HTTP Statuses for Helm +(defvar helm-httpstatus-source + '((name . "HTTP STATUS") + (candidates . (("100 Continue") ("101 Switching Protocols") + ("102 Processing") ("200 OK") + ("201 Created") ("202 Accepted") + ("203 Non-Authoritative Information") ("204 No Content") + ("205 Reset Content") ("206 Partial Content") + ("207 Multi-Status") ("208 Already Reported") + ("300 Multiple Choices") ("301 Moved Permanently") + ("302 Found") ("303 See Other") + ("304 Not Modified") ("305 Use Proxy") + ("307 Temporary Redirect") ("400 Bad Request") + ("401 Unauthorized") ("402 Payment Required") + ("403 Forbidden") ("404 Not Found") + ("405 Method Not Allowed") ("406 Not Acceptable") + ("407 Proxy Authentication Required") ("408 Request Timeout") + ("409 Conflict") ("410 Gone") + ("411 Length Required") ("412 Precondition Failed") + ("413 Request Entity Too Large") + ("414 Request-URI Too Large") + ("415 Unsupported Media Type") + ("416 Request Range Not Satisfiable") + ("417 Expectation Failed") ("418 I'm a teapot") + ("421 Misdirected Request") + ("422 Unprocessable Entity") ("423 Locked") + ("424 Failed Dependency") ("425 No code") + ("426 Upgrade Required") ("428 Precondition Required") + ("429 Too Many Requests") + ("431 Request Header Fields Too Large") + ("449 Retry with") ("500 Internal Server Error") + ("501 Not Implemented") ("502 Bad Gateway") + ("503 Service Unavailable") ("504 Gateway Timeout") + ("505 HTTP Version Not Supported") + ("506 Variant Also Negotiates") + ("507 Insufficient Storage") ("509 Bandwidth Limit Exceeded") + ("510 Not Extended") + ("511 Network Authentication Required"))) + (action . message))) + +(defun helm-httpstatus () + (interactive) + (helm-other-buffer '(helm-httpstatus-source) "*helm httpstatus*")) + +;; Multiple cursors mode +(global-set-key (kbd "C-S-c C-S-c") 'mc/edit-lines) +(global-set-key (kbd "C->") 'mc/mark-next-like-this) +(global-set-key (kbd "C-<") 'mc/mark-previous-like-this) +(global-set-key (kbd "C-c C-<") 'mc/mark-all-like-this) + +;; Removes mouse from code +(mouse-avoidance-mode "animate") + +;; Basic: Turn off bugging yes-or-no-p +(fset 'yes-or-no-p 'y-or-n-p) + +;; PrettierJS +(eval-after-load 'js2-mode + '(progn + (add-hook 'js2-mode-hook #'add-node-modules-path) + (add-hook 'js2-mode-hook #'prettier-js-mode))) + +(add-hook 'web-mode-hook 'rainbow-mode) |