dots

my dotfiles
git clone https://tilde.team/~marisa/repo/dots.git
Log | Files | Refs

commit 832418088b517a09ba9afb73269cc3fd0ce46940
parent 7a6090b81508ae3bffb0370d52b815a9c96d643e
Author: mokou <mokou@posteo.de>
Date:   Thu, 16 Apr 2020 23:18:56 +0200

Add doom config

Diffstat:
Adot_doom.d/config.el | 42++++++++++++++++++++++++++++++++++++++++++
Adot_doom.d/init.el | 181+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adot_doom.d/packages.el | 12++++++++++++
Adot_doom.d/themes/deepsea-theme.el | 197+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 432 insertions(+), 0 deletions(-)

diff --git a/dot_doom.d/config.el b/dot_doom.d/config.el @@ -0,0 +1,42 @@ +;;; ~/.doom.d/config.el -*- lexical-binding: t; -*- + +(setq doom-theme 'deepsea) + +;; Set to 2 spaces +(setq default-tab-width 2) +(setq tab-width 2) +(setq web-mode-markup-indent-offset 2) +(setq web-mode-css-indent-offset 2) +(setq web-mode-code-indent-offset 2) +(setq js2-mode-hook + '(lambda () (progn + (set-variable 'js2-basic-offset 2)))) +(setq css-mode-hook + '(lambda () (progn + (set-variable 'css-indent-offset 2)))) +(setq typescript-mode-hook + '(lambda () (progn + (set-variable 'typescript-indent-level 2)))) + +;; Maximize the window upon startup +(add-to-list 'default-frame-alist '(fullscreen . maximized)) + +(setq doom-font (font-spec :family "Cozette" :size 11)) + +(when (memq window-system '(mac ns x)) + (exec-path-from-shell-initialize)) + +;; Make Monky communicate via cmdserver +(setq monky-process-type 'cmdserver) + +;; Map SPC-g-h to monky-status +(map! :map magit-mode-map :leader "g h" 'monky-status) + +;; Enable Mercurial support for git-gutter +(setq git-gutter:handled-backends '(git hg)) + +;; Set Org directory +(setq org-directory "~/Org") + +;; Enable editorconfig +(editorconfig-mode 1) diff --git a/dot_doom.d/init.el b/dot_doom.d/init.el @@ -0,0 +1,181 @@ +;;; init.el -*- lexical-binding: t; -*- + +;; Copy this file to ~/.doom.d/init.el or ~/.config/doom/init.el ('doom +;; quickstart' will do this for you). The `doom!' block below controls what +;; modules are enabled and in what order they will be loaded. Remember to run +;; 'doom refresh' after modifying it. +;; +;; More information about these modules (and what flags they support) can be +;; found in modules/README.org. + +(doom! :input + ;;chinese + ;;japanese + + :completion + company + ;;helm + ;;ido + ivy + + :ui + ;;deft + doom + ;;doom-dashboard + ;; doom-quit + ;;fill-column + hl-todo + ;;indent-guides + modeline + nav-flash + ;;neotree + ophints + (popup + +all + +defaults) + ;;pretty-code + ;;tabbar + treemacs + ;;unicode + vc-gutter + vi-tilde-fringe + window-select + workspaces + + :editor + (evil +everywhere) + ;; file-templates + fold + ;;(format +onsave) + ;;lispy + ;;multiple-cursors + ;;objed + ;;parinfer + rotate-text + snippets + + :emacs + (dired + ;;+ranger + ;;+icons + ) + electric + vc + + :term + ;;eshell + ;;shell + ;;term + ;;vterm + + :tools + ;;ansible + ;;debugger + ;;direnv + ;;docker + ;;editorconfig + ;;ein + eval + flycheck + ;;flyspell + ;;gist + (lookup + +docsets) + lsp + ;;macos + magit + ;;make + ;;pass + ;;pdf + ;;prodigy + ;;rgb + ;;terraform + ;;tmux + ;;upload + ;;wakatime + + :lang + ;;agda + ;;assembly + ;;cc + clojure + ;;common-lisp + ;;coq + ;;crystal + ;;csharp + data + ;;erlang + elixir + ;;elm + emacs-lisp + ;;ess + ;;fsharp + ;;go + ;;(haskell +intero) + ;;hy + ;;idris + ;;(java +meghanada) + javascript + ;;julia + ;;kotlin + ;;latex + ;;ledger + ;;lua + markdown + nim + ;;nix + ;;ocaml + (org + +dragndrop + +ipython + +pandoc + +present) + ;;perl + ;;php + ;;plantuml + ;;purescript + ;;python + ;;qt + ;;racket + ;;rest + ;;ruby + (rust +lsp) + ;;scala + ;;scheme + sh + ;;solidity + ;;swift + ;;terra + web + ;;vala + + :email + ;;(mu4e +gmail) + ;;notmuch + ;;(wanderlust +gmail) + + ;; Applications are complex and opinionated modules that transform Emacs + ;; toward a specific purpose. They may have additional dependencies and + ;; should be loaded late. + :app + ;;calendar + ;;irc + ;;(rss +org) + ;;twitter + ;;(write + ;; +wordnut + ;; +langtool) + + :collab + ;;floobits + ;;impatient-mode + + :config + ;; For literate config users. This will tangle+compile a config.org + ;; literate config in your `doom-private-dir' whenever it changes. + ;;literate + + ;; The default module sets reasonable defaults for Emacs. It also + ;; provides a Spacemacs-inspired keybinding scheme and a smartparens + ;; config. Use it as a reference for your own modules. + (default +bindings +smartparens)) diff --git a/dot_doom.d/packages.el b/dot_doom.d/packages.el @@ -0,0 +1,12 @@ +;; -*- no-byte-compile: t; -*- +;;; ~/.doom.d/packages.el + +;;; Examples: +;; (package! some-package) +;; (package! another-package :recipe (:fetcher github :repo "username/repo")) +;; (package! builtin-package :disable t) +(package! monky) +(package! kaolin-themes) +(package! exec-path-from-shell) +(package! editorconfig) +(package! autothemer) diff --git a/dot_doom.d/themes/deepsea-theme.el b/dot_doom.d/themes/deepsea-theme.el @@ -0,0 +1,197 @@ +;;; deepsea.el --- Deep dark theme -*- no-byte-compile: t; -*- +(require 'doom-themes) + +;;; Variables +(defgroup doom-solarized-dark-theme nil + "Options for doom-themes" + :group 'doom-themes) + +(defcustom doom-solarized-dark-brighter-modeline nil + "If non-nil, more vivid colors will be used to style the mode-line." + :group 'doom-solarized-dark-theme + :type 'boolean) + +(defcustom doom-solarized-dark-brighter-comments nil + "If non-nil, comments will be highlighted in more vivid colors." + :group 'doom-solarized-dark-theme + :type 'boolean) + +(defcustom doom-solarized-dark-comment-bg doom-solarized-dark-brighter-comments + "If non-nil, comments will have a subtle, darker background. Enhancing their +legibility." + :group 'doom-solarized-dark-theme + :type 'boolean) + +(defcustom doom-solarized-dark-padded-modeline doom-themes-padded-modeline + "If non-nil, adds a 4px padding to the mode-line. Can be an integer to +determine the exact padding." + :group 'doom-solarized-dark-theme + :type '(choice integer boolean)) + + +;;; Theme definition +(def-doom-theme deepsea + "A dark theme" + +;;;; Colors + ;; name default 256 16 + ((bg '("#004043" "color-233" "black" )) + (bg-alt '("#004043" "color-232" "brightblack" )) +(base0 '("#073642" "black" "black" )) + (base1 '("#03282F" "#1e1e1e" "brightblack" )) + (base2 '("#00212C" "#2e2e2e" "brightblack" )) + (base3 '("#13383C" "#262626" "brightblack" )) + (base4 '("#56697A" "#3f3f3f" "brightblack" )) + (base5 '("#405A61" "#525252" "brightblack" )) + (base6 '("#96A7A9" "#6b6b6b" "brightblack" )) + (base7 '("#788484" "#979797" "brightblack" )) + (base8 '("#626C6C" "#dfdfdf" "white" )) + (fg-alt '("#657b83" "#2d2d2d" "white" )) + (fg '("#069993" "#bfbfbf" "brightwhite" )) + + (grey base4) + (red '("#dc322f" "#ff6655" "red" )) + (orange '("#cb4b16" "#dd8844" "brightred" )) + (green '("#859900" "#99bb66" "green" )) + (teal '("#35a69c" "#33aa99" "brightgreen" )) + (yellow '("#b58900" "#ECBE7B" "yellow" )) + (blue '("#268bd2" "#51afef" "brightblue" )) + (dark-blue '("#3F88AD" "#2257A0" "blue" )) + (magenta '("#d33682" "#c678dd" "magenta" )) + (violet '("#6c71c4" "#a9a1e1" "brightmagenta")) + (cyan '("#2aa198" "#46D9FF" "brightcyan" )) + (dark-cyan '("#204052" "#5699AF" "cyan" )) + + ;; face categories -- required for all themes + (highlight blue) + (vertical-bar (doom-darken base1 0.5)) + (selection dark-blue) + (builtin blue) + (comments (if doom-solarized-dark-brighter-comments blue base5)) + (doc-comments teal) + (constants magenta) + (functions blue) + (keywords green) + (methods cyan) + (operators orange) + (type yellow) + (strings cyan) + (variables violet) + (numbers magenta) + (region base0) + (error red) + (warning yellow) + (success green) + (vc-modified orange) + (vc-added green) + (vc-deleted red) + + ;; custom categories + (hidden `(,(car bg) "black" "black")) + (-modeline-bright doom-solarized-dark-brighter-modeline) + (-modeline-pad + (when doom-solarized-dark-padded-modeline + (if (integerp doom-solarized-dark-padded-modeline) doom-solarized-dark-padded-modeline 4))) + + (modeline-fg nil) + (modeline-fg-alt base5) + + (modeline-bg + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.15) ,@(cdr base0)))) + (modeline-bg-l + (if -modeline-bright + base3 + `(,(doom-darken (car bg) 0.1) ,@(cdr base0)))) + (modeline-bg-inactive (doom-darken bg 0.1)) + (modeline-bg-inactive-l `(,(car bg) ,@(cdr base1)))) + + + ;; --- extra faces ------------------------ + ((company-tooltip-selection :background dark-cyan) + (elscreen-tab-other-screen-face :background "#353a42" :foreground "#1e2022") + + ((line-number &override) :foreground base4) + ((line-number-current-line &override) :foreground fg) + + (helm-selection :inherit 'bold + :background selection + :distant-foreground bg + :extend t) + + (font-lock-comment-face + :foreground comments + :background (if doom-solarized-dark-comment-bg (doom-lighten bg 0.05))) + (font-lock-doc-face + :inherit 'font-lock-comment-face + :foreground doc-comments) + (font-lock-keyword-face + :weight 'bold + :foreground keywords) + (font-lock-constant-face + :weight 'bold + :foreground constants) + + ;; Centaur tabs + (centaur-tabs-active-bar-face :background blue) + (centaur-tabs-modified-marker-selected :inherit 'centaur-tabs-selected + :foreground blue) + (centaur-tabs-modified-marker-unselected :inherit 'centaur-tabs-unselected + :foreground blue) + ;; Doom modeline + (doom-modeline-bar :background blue) + + (mode-line + :background modeline-bg :foreground modeline-fg + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg))) + (mode-line-inactive + :background modeline-bg-inactive :foreground modeline-fg-alt + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive))) + (mode-line-emphasis + :foreground (if -modeline-bright base8 highlight)) + + (solaire-mode-line-face + :inherit 'mode-line + :background modeline-bg-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-l))) + (solaire-mode-line-inactive-face + :inherit 'mode-line-inactive + :background modeline-bg-inactive-l + :box (if -modeline-pad `(:line-width ,-modeline-pad :color ,modeline-bg-inactive-l))) + + (tooltip :background bg-alt :foreground fg) + ;; --- major-mode faces ------------------- + ;; css-mode / scss-mode + (css-proprietary-property :foreground orange) + (css-property :foreground green) + (css-selector :foreground blue) + + ;; markdown-mode + (markdown-markup-face :foreground base5) + (markdown-header-face :inherit 'bold :foreground red) + (markdown-url-face :foreground teal :weight 'normal) + (markdown-reference-face :foreground base6) + ((markdown-bold-face &override) :foreground fg) + ((markdown-italic-face &override) :foreground fg-alt) + + ;; outline (affects org-mode) + ((outline-1 &override) :foreground blue) + ((outline-2 &override) :foreground green) + ((outline-3 &override) :foreground teal) + ((outline-4 &override) :foreground (doom-darken blue 0.2)) + ((outline-5 &override) :foreground (doom-darken green 0.2)) + ((outline-6 &override) :foreground (doom-darken teal 0.2)) + ((outline-7 &override) :foreground (doom-darken blue 0.4)) + ((outline-8 &override) :foreground (doom-darken green 0.4)) + + ;; org-mode + ((org-block &override) :background base0) + ((org-block-begin-line &override) :foreground comments :background base0) + (org-hide :foreground hidden) + (solaire-org-hide-face :foreground hidden)) + ;; --- extra variables --------------------- + ;; () + ) + +;;; doom-solarized-dark-theme.el ends here