summaryrefslogtreecommitdiff
path: root/.doom.d/config.el
diff options
context:
space:
mode:
authorRoger Gonzalez <rogergonzalez21@gmail.com>2019-12-29 14:58:33 -0300
committerRoger Gonzalez <rogergonzalez21@gmail.com>2019-12-29 14:58:33 -0300
commitefb336a23b65a9a2d56889396b13c1757bdaf354 (patch)
tree234e40115f79a84c8a755df6fb932cc6797e36e1 /.doom.d/config.el
Initial commit
Diffstat (limited to '.doom.d/config.el')
-rw-r--r--.doom.d/config.el132
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)