commit c137a029448ca868cd0fc298b2d73818d6618b59
parent 59b5c9db64d483a9d13326ca1f8edef6a60c0813
Author: Ashymad <czilukim@o2.pl>
Date: Wed, 31 Jan 2018 22:06:13 +0100
Add alacritty conf. Redesing .emacs and move to .emacs.d/init.el
Diffstat:
| A | .config/alacritty/alacritty.yml | | | 373 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| D | .emacs | | | 104 | ------------------------------------------------------------------------------- |
| A | .emacs.d/init.el | | | 148 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
3 files changed, 521 insertions(+), 104 deletions(-)
diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml
@@ -0,0 +1,373 @@
+# Configuration for Alacritty, the GPU enhanced terminal emulator
+
+
+# Any items in the `env` entry below will be added as
+# environment variables. Some entries may override variables
+# set by alacritty it self.
+env:
+ # TERM env customization.
+ #
+ # If this property is not set, alacritty will set it to xterm-256color.
+ #
+ # Note that some xterm terminfo databases don't declare support for italics.
+ # You can verify this by checking for the presence of `smso` and `sitm` in
+ # `infocmp xterm-256color`.
+ TERM: xterm-256color
+
+# Window dimensions in character columns and lines
+# Falls back to size specified by window manager if set to 0x0.
+# (changes require restart)
+dimensions:
+ columns: 80
+ lines: 24
+
+# Scrollback buffer
+scrollback:
+ enabled: true
+ max_lines: 10000
+
+# Adds this many blank pixels of padding around the window
+# Units are physical pixels; this is not DPI aware.
+# (change requires restart)
+padding:
+ x: 2
+ y: 2
+
+# Display tabs using this many cells (changes require restart)
+tabspaces: 8
+
+# When true, bold text is drawn using the bright variant of colors.
+draw_bold_text_with_bright_colors: true
+
+# Font configuration (changes require restart)
+#
+# Important font attributes like antialiasing, subpixel aa, and hinting can be
+# controlled through fontconfig. Specifically, the following attributes should
+# have an effect:
+#
+# * hintstyle
+# * antialias
+# * lcdfilter
+# * rgba
+#
+# For instance, if you wish to disable subpixel antialiasing, you might set the
+# rgba property to "none". If you wish to completely disable antialiasing, you
+# can set antialias to false.
+#
+# Please see these resources for more information on how to use fontconfig
+#
+# * https://wiki.archlinux.org/index.php/font_configuration#Fontconfig_configuration
+# * file:///usr/share/doc/fontconfig/fontconfig-user.html
+font:
+ # The normal (roman) font face to use.
+ normal:
+ family: Monofur # should be "Menlo" or something on macOS.
+ # Style can be specified to pick a specific face.
+ style: Regular
+
+ # The bold font face
+ bold:
+ family: Monofur # # should be "Menlo" or something on macOS.
+ # Style can be specified to pick a specific face.
+ style: Bold
+
+ # The italic font face
+ italic:
+ family: Monofur # should be "Menlo" or something on macOS.
+ # Style can be specified to pick a specific face.
+ style: Italic
+
+ # Point size of the font
+ size: 16.0
+
+ # Offset is the extra space around each character. offset.y can be thought of
+ # as modifying the linespacing, and offset.x as modifying the letter spacing.
+ offset:
+ x: -1.0
+ y: 0.0
+
+ # Glyph offset determines the locations of the glyphs within their cells with
+ # the default being at the bottom. Increase the x offset to move the glyph to
+ # the right, increase the y offset to move the glyph upward.
+ glyph_offset:
+ x: 0.0
+ y: 0.0
+
+ # OS X only: use thin stroke font rendering. Thin strokes are suitable
+ # for retina displays, but for non-retina you probably want this set to
+ # false.
+ use_thin_strokes: false
+
+# Should display the render timer
+render_timer: false
+
+# Use custom cursor colors. If true, display the cursor in the cursor.foreground
+# and cursor.background colors, otherwise invert the colors of the cursor.
+custom_cursor_colors: false
+
+# Colors (Tomorrow Night Bright)
+colors:
+ # Default colors
+ primary:
+ background: '0x000000'
+ foreground: '0xa8a8a8'
+
+ # Colors the cursor will use if `custom_cursor_colors` is true
+ cursor:
+ text: '0x000000'
+ cursor: '0xffffff'
+
+ # Normal colors
+ normal:
+ black: '0x000000'
+ red: '0xa80000'
+ green: '0x00a800'
+ yellow: '0xa85400'
+ blue: '0x0000a8'
+ magenta: '0xa800a8'
+ cyan: '0x00a8a8'
+ white: '0xa8a8a8'
+
+ # Bright colors
+ bright:
+ black: '0x545454'
+ red: '0xfc5454'
+ green: '0x54fc54'
+ yellow: '0xfcfc54'
+ blue: '0x5454fc'
+ magenta: '0xfc54fc'
+ cyan: '0x54fcfc'
+ white: '0xfcfcfc'
+
+ # Dim colors (Optional)
+# dim:
+# black: '0x333333'
+# red: '0xf2777a'
+# green: '0x99cc99'
+# yellow: '0xffcc66'
+# blue: '0x6699cc'
+# magenta: '0xcc99cc'
+# cyan: '0x66cccc'
+# white: '0xdddddd'
+
+# Visual Bell
+#
+# Any time the BEL code is received, Alacritty "rings" the visual bell. Once
+# rung, the terminal background will be set to white and transition back to the
+# default background color. You can control the rate of this transition by
+# setting the `duration` property (represented in milliseconds). You can also
+# configure the transition function by setting the `animation` property.
+#
+# Possible values for `animation`
+# `Ease`
+# `EaseOut`
+# `EaseOutSine`
+# `EaseOutQuad`
+# `EaseOutCubic`
+# `EaseOutQuart`
+# `EaseOutQuint`
+# `EaseOutExpo`
+# `EaseOutCirc`
+# `Linear`
+#
+# To completely disable the visual bell, set its duration to 0.
+#
+visual_bell:
+ animation: EaseOutExpo
+ duration: 0
+
+# Background opacity
+background_opacity: 1.0
+
+# Mouse bindings
+#
+# Currently doesn't support modifiers. Both the `mouse` and `action` fields must
+# be specified.
+#
+# Values for `mouse`:
+# - Middle
+# - Left
+# - Right
+# - Numeric identifier such as `5`
+#
+# Values for `action`:
+# - Paste
+# - PasteSelection
+# - Copy (TODO)
+mouse_bindings:
+ - { mouse: Middle, action: PasteSelection }
+
+mouse:
+ double_click: { threshold: 300 }
+ triple_click: { threshold: 300 }
+
+selection:
+ semantic_escape_chars: ",│`|:\"' ()[]{}<>"
+
+hide_cursor_when_typing: false
+
+# Style of the cursor
+#
+# Values for 'cursor_style':
+# - Block
+# - Underline
+# - Beam
+cursor_style: Block
+
+# Live config reload (changes require restart)
+live_config_reload: true
+
+# Shell
+#
+# You can set shell.program to the path of your favorite shell, e.g. /bin/fish.
+# Entries in shell.args are passed unmodified as arguments to the shell.
+# shell:
+# program: /bin/bash
+# args:
+# - --login
+
+
+# Key bindings
+#
+# Each binding is defined as an object with some properties. Most of the
+# properties are optional. All of the alphabetical keys should have a letter for
+# the `key` value such as `V`. Function keys are probably what you would expect
+# as well (F1, F2, ..). The number keys above the main keyboard are encoded as
+# `Key1`, `Key2`, etc. Keys on the number pad are encoded `Number1`, `Number2`,
+# etc. These all match the glutin::VirtualKeyCode variants.
+#
+# Possible values for `mods`
+# `Command`, `Super` refer to the super/command/windows key
+# `Control` for the control key
+# `Shift` for the Shift key
+# `Alt` and `Option` refer to alt/option
+#
+# mods may be combined with a `|`. For example, requiring control and shift
+# looks like:
+#
+# mods: Control|Shift
+#
+# The parser is currently quite sensitive to whitespace and capitalization -
+# capitalization must match exactly, and piped items must not have whitespace
+# around them.
+#
+# Either an `action`, `chars`, or `command` field must be present.
+# `action` must be one of `Paste`, `PasteSelection`, `Copy`, or `Quit`.
+# `chars` writes the specified string every time that binding is activated.
+# These should generally be escape sequences, but they can be configured to
+# send arbitrary strings of bytes.
+# `command` must be a map containing a `program` string, and `args` array of
+# strings. For example:
+# - { ... , command: { program: "alacritty", args: ["-e", "vttest"] } }
+#
+# Want to add a binding (e.g. "PageUp") but are unsure what the X sequence
+# (e.g. "\x1b[5~") is? Open another terminal (like xterm) without tmux,
+# then run `showkey -a` to get the sequence associated to a key combination.
+key_bindings:
+ - { key: V, mods: Control|Shift, action: Paste }
+ - { key: C, mods: Control|Shift, action: Copy }
+ - { key: Q, mods: Command, action: Quit }
+ - { key: W, mods: Command, action: Quit }
+ - { key: Insert, mods: Shift, action: PasteSelection }
+ - { key: Key0, mods: Control, action: ResetFontSize }
+ - { key: Equals, mods: Control, action: IncreaseFontSize }
+ - { key: Subtract, mods: Control, action: DecreaseFontSize }
+ - { key: Up, mods: Control|Shift, action: ScrollUp }
+ - { key: Down, mods: Control|Shift, action: ScrollDown }
+ - { key: PageUp, mods: Shift, action: PageUp }
+ - { key: PageDown, mods: Shift, action: PageDown }
+ - { key: Home, chars: "\x1bOH", mode: AppCursor }
+ - { key: Home, chars: "\x1b[H", mode: ~AppCursor }
+ - { key: End, chars: "\x1bOF", mode: AppCursor }
+ - { key: End, chars: "\x1b[F", mode: ~AppCursor }
+ - { key: PageUp, mods: Shift, chars: "\x1b[5;2~" }
+ #- { key: PageUp, mods: Control, chars: "\x1b[5;5~" }
+ - { key: PageUp, chars: "\x1b[5~" }
+ #- { key: PageDown, mods: Shift, chars: "\x1b[6;2~" }
+ - { key: PageDown, mods: Control, chars: "\x1b[6;5~" }
+ - { key: PageDown, chars: "\x1b[6~" }
+ - { key: Tab, mods: Shift, chars: "\x1b[Z" }
+ - { key: Back, chars: "\x7f" }
+ - { key: Back, mods: Alt, chars: "\x1b\x7f" }
+ - { key: Insert, chars: "\x1b[2~" }
+ - { key: Delete, chars: "\x1b[3~" }
+ - { key: Left, mods: Shift, chars: "\x1b[1;2D" }
+ - { key: Left, mods: Control, chars: "\x1b[1;5D" }
+ - { key: Left, mods: Alt, chars: "\x1b[1;3D" }
+ - { key: Left, chars: "\x1b[D", mode: ~AppCursor }
+ - { key: Left, chars: "\x1bOD", mode: AppCursor }
+ - { key: Right, mods: Shift, chars: "\x1b[1;2C" }
+ - { key: Right, mods: Control, chars: "\x1b[1;5C" }
+ - { key: Right, mods: Alt, chars: "\x1b[1;3C" }
+ - { key: Right, chars: "\x1b[C", mode: ~AppCursor }
+ - { key: Right, chars: "\x1bOC", mode: AppCursor }
+ - { key: Up, mods: Shift, chars: "\x1b[1;2A" }
+ - { key: Up, mods: Control, chars: "\x1b[1;5A" }
+ - { key: Up, mods: Alt, chars: "\x1b[1;3A" }
+ - { key: Up, chars: "\x1b[A", mode: ~AppCursor }
+ - { key: Up, chars: "\x1bOA", mode: AppCursor }
+ - { key: Down, mods: Shift, chars: "\x1b[1;2B" }
+ - { key: Down, mods: Control, chars: "\x1b[1;5B" }
+ - { key: Down, mods: Alt, chars: "\x1b[1;3B" }
+ - { key: Down, chars: "\x1b[B", mode: ~AppCursor }
+ - { key: Down, chars: "\x1bOB", mode: AppCursor }
+ - { key: F1, chars: "\x1bOP" }
+ - { key: F2, chars: "\x1bOQ" }
+ - { key: F3, chars: "\x1bOR" }
+ - { key: F4, chars: "\x1bOS" }
+ - { key: F5, chars: "\x1b[15~" }
+ - { key: F6, chars: "\x1b[17~" }
+ - { key: F7, chars: "\x1b[18~" }
+ - { key: F8, chars: "\x1b[19~" }
+ - { key: F9, chars: "\x1b[20~" }
+ - { key: F10, chars: "\x1b[21~" }
+ - { key: F11, chars: "\x1b[23~" }
+ - { key: F12, chars: "\x1b[24~" }
+ - { key: F1, mods: Shift, chars: "\x1b[1;2P" }
+ - { key: F2, mods: Shift, chars: "\x1b[1;2Q" }
+ - { key: F3, mods: Shift, chars: "\x1b[1;2R" }
+ - { key: F4, mods: Shift, chars: "\x1b[1;2S" }
+ - { key: F5, mods: Shift, chars: "\x1b[15;2~" }
+ - { key: F6, mods: Shift, chars: "\x1b[17;2~" }
+ - { key: F7, mods: Shift, chars: "\x1b[18;2~" }
+ - { key: F8, mods: Shift, chars: "\x1b[19;2~" }
+ - { key: F9, mods: Shift, chars: "\x1b[20;2~" }
+ - { key: F10, mods: Shift, chars: "\x1b[21;2~" }
+ - { key: F11, mods: Shift, chars: "\x1b[23;2~" }
+ - { key: F12, mods: Shift, chars: "\x1b[24;2~" }
+ - { key: F1, mods: Control, chars: "\x1b[1;5P" }
+ - { key: F2, mods: Control, chars: "\x1b[1;5Q" }
+ - { key: F3, mods: Control, chars: "\x1b[1;5R" }
+ - { key: F4, mods: Control, chars: "\x1b[1;5S" }
+ - { key: F5, mods: Control, chars: "\x1b[15;5~" }
+ - { key: F6, mods: Control, chars: "\x1b[17;5~" }
+ - { key: F7, mods: Control, chars: "\x1b[18;5~" }
+ - { key: F8, mods: Control, chars: "\x1b[19;5~" }
+ - { key: F9, mods: Control, chars: "\x1b[20;5~" }
+ - { key: F10, mods: Control, chars: "\x1b[21;5~" }
+ - { key: F11, mods: Control, chars: "\x1b[23;5~" }
+ - { key: F12, mods: Control, chars: "\x1b[24;5~" }
+ - { key: F1, mods: Alt, chars: "\x1b[1;6P" }
+ - { key: F2, mods: Alt, chars: "\x1b[1;6Q" }
+ - { key: F3, mods: Alt, chars: "\x1b[1;6R" }
+ - { key: F4, mods: Alt, chars: "\x1b[1;6S" }
+ - { key: F5, mods: Alt, chars: "\x1b[15;6~" }
+ - { key: F6, mods: Alt, chars: "\x1b[17;6~" }
+ - { key: F7, mods: Alt, chars: "\x1b[18;6~" }
+ - { key: F8, mods: Alt, chars: "\x1b[19;6~" }
+ - { key: F9, mods: Alt, chars: "\x1b[20;6~" }
+ - { key: F10, mods: Alt, chars: "\x1b[21;6~" }
+ - { key: F11, mods: Alt, chars: "\x1b[23;6~" }
+ - { key: F12, mods: Alt, chars: "\x1b[24;6~" }
+ - { key: F1, mods: Super, chars: "\x1b[1;3P" }
+ - { key: F2, mods: Super, chars: "\x1b[1;3Q" }
+ - { key: F3, mods: Super, chars: "\x1b[1;3R" }
+ - { key: F4, mods: Super, chars: "\x1b[1;3S" }
+ - { key: F5, mods: Super, chars: "\x1b[15;3~" }
+ - { key: F6, mods: Super, chars: "\x1b[17;3~" }
+ - { key: F7, mods: Super, chars: "\x1b[18;3~" }
+ - { key: F8, mods: Super, chars: "\x1b[19;3~" }
+ - { key: F9, mods: Super, chars: "\x1b[20;3~" }
+ - { key: F10, mods: Super, chars: "\x1b[21;3~" }
+ - { key: F11, mods: Super, chars: "\x1b[23;3~" }
+ - { key: F12, mods: Super, chars: "\x1b[24;3~" }
diff --git a/.emacs b/.emacs
@@ -1,104 +0,0 @@
-
-;; Added by Package.el. This must come before configurations of
-;; installed packages. Don't delete this line. If you don't want it,
-;; just comment it out by adding a semicolon to the start of the line.
-;; You may delete these explanatory comments.
-(package-initialize)
-
-(require 'package)
-(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
-
-(require 'paradox)
-(paradox-enable)
-
-(require 'poly-R)
-(add-to-list 'auto-mode-alist '("\\.Rnw" . poly-noweb+r-mode))
-
-(require 'ess-site)
-
-(add-to-list 'load-path "~/.emacs.d/evil")
-(require 'evil)
-(evil-mode 1)
-
-(setq TeX-source-correlate-mode t
- TeX-source-correlate-start-server t)
-
-(setq ess-swv-pdflatex-commands (quote ("pdflatex" "texi2pdf" "make")))
-
-(setq ess-swv-processor 'knitr)
-
-(require 'ess-site)
-(with-eval-after-load "ess"
- (setq ess-swv-plug-into-AUCTeX-p t))
-
-(defun ess-noweb-post-command-function ()
- "The hook being run after each command in noweb mode."
- (condition-case err
- (ess-noweb-select-mode)
- (error
- ())))
-(defun ess-swv-add-TeX-commands ()
- "Add commands to AUCTeX's \\[TeX-command-list]."
- (unless (and (featurep 'tex-site) (featurep 'tex))
- (error "AUCTeX does not seem to be loaded"))
- (add-to-list 'TeX-command-list
- '("Knit" "Rscript -e \"library(knitr); knit('%t')\""
- TeX-run-command nil (latex-mode) :help
- "Run Knitr") t)
- (add-to-list 'TeX-command-list
- '("LaTeXKnit" "%l %(mode) %s; Rscript -e \"require('patchSynctex'); patchSynctex('%s')\""
- TeX-run-TeX nil (latex-mode) :help
- "Run LaTeX after Knit") t)
- (setq TeX-command-default "Knit")
- (mapc (lambda (suffix)
- (add-to-list 'TeX-file-extensions suffix))
- '("nw" "Snw" "Rnw")))
-
-(defun ess-swv-remove-TeX-commands (x)
- "Helper function: check if car of X is one of the Knitr strings"
- (let ((swv-cmds '("Knit" "LaTeXKnit")))
- (unless (member (car x) swv-cmds) x)))
-(eval-after-load "tex"
- '(add-to-list 'TeX-view-program-selection
- '(output-pdf "Zathura")))
-(with-eval-after-load "latex"
- (define-key LaTeX-mode-map (kbd "C-c C-d") (kbd "C-c C-c Knit RET")))
-(with-eval-after-load "latex"
- (define-key LaTeX-mode-map (kbd "C-c C-q") (kbd "C-c C-c LaTeXKnit RET")))
-(with-eval-after-load "latex"
- (add-hook 'LaTeX-mode-hook 'flyspell-mode))
-
-(setq mouse-wheel-scroll-amount '(1))
-(setq mouse-wheel-progressive-speed nil)
-
-(global-set-key (kbd "C-x g") 'magit-status)
-
-(require 'flyspell-lazy)
-(flyspell-lazy-mode 1)
-
-(setq TeX-parse-self t) ; Enable parse on load.
-(setq TeX-auto-save t) ; Enable parse on save.
-(setq TeX-auto-untabify t)
-(add-hook 'TeX-language-pl-hook
- (lambda () (ispell-change-dictionary "polish")))
-
-(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.
- '(ansi-color-faces-vector
- [default default default italic underline success warning error])
- '(ansi-color-names-vector
- ["#242424" "#e5786d" "#95e454" "#cae682" "#8ac6f2" "#333366" "#ccaa8f" "#f6f3e8"])
- '(custom-enabled-themes (quote (tsdh-dark)))
- '(package-selected-packages
- (quote
- (flyspell-lazy ess markdown-mode async auctex evil-magit magit evil ## polymode paradox)))
- '(tool-bar-mode nil))
-(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.
- '(default ((t (:family "Monaco" :foundry "unknown" :slant normal :weight normal :height 141 :width normal)))))
diff --git a/.emacs.d/init.el b/.emacs.d/init.el
@@ -0,0 +1,148 @@
+;; (package-initialize)
+
+;; Recompile emacs.d
+(byte-recompile-directory (expand-file-name "~/.emacs.d") 0)
+
+;; Sane amount of scroll
+(setq mouse-wheel-scroll-amount '(1))
+(setq mouse-wheel-progressive-speed nil)
+
+;; Setup package.el
+(require 'package)
+(setq package-enable-at-startup nil)
+(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
+(package-initialize)
+
+;; Bootstrap `use-package'
+(unless (package-installed-p 'use-package)
+ (package-refresh-contents)
+ (package-install 'use-package))
+
+;; Initialize use-package
+(eval-when-compile
+ (require 'use-package))
+
+;; Initialize Paradox
+(use-package paradox
+ :config
+ ;; Override default package manager with paradox
+ (paradox-enable))
+
+;; Initialize Evil
+(use-package evil
+ :config
+ ;; Global evil mode
+ (evil-mode 1))
+
+;; Initialize magit
+(use-package magit
+ :config
+ (global-set-key (kbd "C-x g") 'magit-status))
+
+;; Initialize evil-magit
+(use-package evil-magit
+ :requires
+ (evil magit))
+
+;; Initialize AUCTeX
+(use-package tex
+ :hook
+ (TeX-language-pl . (lambda () (ispell-change-dictionary "polish")))
+ (LaTeX-mode . flyspell-mode)
+ :init
+ (setq TeX-source-correlate-mode t
+ TeX-source-correlate-start-server t
+ TeX-parse-self t ; Enable parse on load
+ TeX-auto-save t ; Enable parse on save
+ TeX-auto-untabify t) ; Auto change tabs to spaces
+ :config
+ ;; Set default PDF viewer
+ (add-to-list 'TeX-view-program-selection
+ '(output-pdf "Zathura")))
+
+(use-package flyspell-lazy
+ :config
+ (flyspell-lazy-mode 1))
+
+;; Initalize ESS
+(use-package ess-site
+ :hook
+ (ess-noweb-mode . (lambda () (if (not ess-swv-plug-into-AUCTeX-p)
+ (ess-swv-toggle-plug-into-AUCTeX))))
+ :config
+ (setq ess-swv-pdflatex-commands (quote ("pdflatex" "texi2pdf" "make")))
+ (setq ess-swv-processor 'knitr)
+ ;; Change AUCTeX Sweave commands to Knitr
+ (defun ess-swv-add-TeX-commands ()
+ "Add commands to AUCTeX's \\[TeX-command-list]."
+ (unless (and (featurep 'tex-site) (featurep 'tex))
+ (error "AUCTeX does not seem to be loaded"))
+ (add-to-list 'TeX-command-list
+ '("Knit" "Rscript -e \"library(knitr); knit('%t')\""
+ TeX-run-command nil (latex-mode) :help
+ "Run Knitr") t)
+ (add-to-list 'TeX-command-list
+ '("LaTeXKnit" "%l %(mode) %s; Rscript -e \"require('patchSynctex'); patchSynctex('%s')\""
+ TeX-run-TeX nil (latex-mode) :help
+ "Run LaTeX after Knit") t)
+ (setq TeX-command-default "Knit")
+ (mapc (lambda (suffix)
+ (add-to-list 'TeX-file-extensions suffix))
+ '("nw" "Snw" "Rnw")))
+ (defun ess-swv-remove-TeX-commands (x)
+ "Helper function: check if car of X is one of the Knitr strings"
+ (let ((swv-cmds '("Knit" "LaTeXKnit")))
+ (unless (member (car x) swv-cmds) x))))
+
+;; Initialize company-mode
+(use-package company
+ :config
+ (global-company-mode))
+
+;; Initialize SLIME
+(use-package slime
+ :init
+ (load (expand-file-name "~/quicklisp/slime-helper.el"))
+ (setq inferior-lisp-program "sbcl"))
+
+;; Initialize slime-company
+(use-package slime-company
+ :requires
+ (slime company)
+ :config
+ (slime-setup '(slime-company)))
+
+;; Initialize rainbow-delimiters
+(use-package rainbow-delimiters
+ :hook
+ (prog-mode . rainbow-delimiters-mode))
+
+;; Initialize zerodark theme
+(use-package zerodark-theme
+ :config
+ (zerodark-setup-modeline-format))
+
+(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.
+ '(ansi-color-faces-vector
+ [default default default italic underline success warning error])
+ '(ansi-color-names-vector
+ ["#242424" "#e5786d" "#95e454" "#cae682" "#8ac6f2" "#333366" "#ccaa8f" "#f6f3e8"])
+ '(custom-enabled-themes (quote (zerodark)))
+ '(custom-safe-themes
+ (quote
+ ("f142c876b896c6ca19149cacd80ddd68a351f67f7fe3b786274ceee970276780" default)))
+ '(package-selected-packages
+ (quote
+ (use-package rainbow-delimiters zerodark-theme wc-mode flyspell-lazy ess markdown-mode async auctex evil-magit magit evil ## paradox)))
+ '(paradox-github-token t)
+ '(tool-bar-mode nil))
+(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.
+ '(default ((t (:family "DejaVu Sans Mono" :foundry "PfEd" :slant normal :weight normal :height 128 :width normal)))))