rc

Add .spacemacs to tracker and update configs

So I reached that point where I'm switching from Vim to GNU Emacs as my editor of choice. Reason for that is that I've got some spare time at the moment to take out the required time to configure the damn thing (I'm pretty picky), and (un)learn what needs to be. I've also updated the other configuration files accordingly, so my system is wired to handle Emacs as the new default.
Additionally, I've updated my colorscheme as well. The colors were a bit off which caused a series of graphical "glitches" if you can call it that.
It's very likely that I will update .spacemacs in the near future, because I'm still in the process of configuring the damn thing. My other work is thus on hold, because I can't work in a half-assed environment, that's just who I am.

Author
Maarten 'Vngngdn' Vangeneugden
Date
July 28, 2017, 2:03 a.m.
Hash
328d96a770c26cae058900e7a1eb2af5aea7c37a
Parent
5d1696bd455ced26159c133bc25eee4668117f18
Modified files
.Xresources
.spacemacs
i3/config
install.sh

.Xresources

19 additions and 22 deletions.

View changes Hide changes
1
1
! Copied from wiki.archlinux.org
2
2
! do not scroll with output
3
3
URxvt*scrollTtyOutput: false
4
4
! scroll in relation to buffer (with mouse scroll or Shift+Page Up)
5
5
URxvt*scrollWithBuffer: true
6
6
! scroll back to the bottom on keypress
7
7
URxvt*scrollTtyKeypress: true
8
8
! Font
9
9
URxvt.font: xft:Source Code Pro Medium:size=11
10
10
URxvt.foreground: #ffffff
11
11
URxvt.background: #000000
12
12
!URxvt.letterSpace: -1
13
13
! Removes scrollbar:
14
14
URxvt.scrollBar: false
15
15
! Makes it so that lines scrolled out of screen are stored in Urxvt's scrollback
16
16
! buffer
17
17
URxvt.secondaryScroll: true
18
18
! Makes the buffer big enough to be acceptable:
19
19
! TODO: Set saveLines to 0, and use Tmux for scrollback buffer (better for
20
20
! memory)
21
21
URxvt.saveLines: 8192
22
22
! Blinks the cursor
23
23
URxvt.cursorBlink: true
24
24
25
25
! Colors! YAY! The colors are based on the Material Design guideline colors in
26
26
! 0-7, with 8-15 being appropriate accent colors.
27
27
28
28
! Indigo 500 | A700
29
-
*color0: #3F51B5
30
-
*color8: #304FFE
31
-
! Orange 500 | A700
32
-
*color1: #FF9800
33
-
*color9: #FF6D00
34
-
! Pink 500 | A400
35
-
*color2: #E91E63
36
-
*color10: #F50057
37
-
! Light Green 500 | A400
+
29
*color1: #F44336
+
30
*color9: #D50000
+
31
! Light Green 500 | A400
38
32
*color3: #8BC34A
39
-
*color11: #76FF03
40
-
! Yellow 500 | A200
41
-
*color4: #FFEB3B
42
-
*color12: #FFFF00
43
-
! Cyan 500 | A400
44
-
*color5: #00BCD4
45
-
*color13: #00E5FF
46
-
! Purple 500 | A400
+
33
*color10: #76FF03
+
34
! Orange 500 | A700
+
35
*color3: #FF9800
+
36
*color11: #FF6D00
+
37
! Indigo 500 | A700
+
38
*color4: #3F51B5
+
39
*color12: #304FFE
+
40
! Purple 500 | A400
47
41
*color6: #9C27B0
48
-
*color14: #D500F9
49
-
! Red 500 | A700
50
-
*color7: #F44336
51
-
*color15: #D50000
52
-
*color15: #D50000
+
42
*color13: #D500F9
+
43
! Cyan 500 | A400
+
44
*color6: #00BCD4
+
45
*color14: #00E5FF
+
46
! Pink 500 | A400
+
47
*color7: #E91E63
+
48
*color15: #F50057
+
49
*color15: #F50057

.spacemacs

386 additions and 0 deletions.

View changes Hide changes
+
1
;; This file is loaded by Spacemacs at startup.
+
2
;; It must be stored in your home directory.
+
3
+
4
(defun dotspacemacs/layers ()
+
5
  "Configuration Layers declaration.
+
6
You should not put any user code in this function besides modifying the variable
+
7
values."
+
8
  (setq-default
+
9
   ;; Base distribution to use. This is a layer contained in the directory
+
10
   ;; `+distribution'. For now available distributions are `spacemacs-base'
+
11
   ;; or `spacemacs'. (default 'spacemacs)
+
12
   dotspacemacs-distribution 'spacemacs
+
13
   ;; Lazy installation of layers (i.e. layers are installed only when a file
+
14
   ;; with a supported type is opened). Possible values are `all', `unused'
+
15
   ;; and `nil'. `unused' will lazy install only unused layers (i.e. layers
+
16
   ;; not listed in variable `dotspacemacs-configuration-layers'), `all' will
+
17
   ;; lazy install any layer that support lazy installation even the layers
+
18
   ;; listed in `dotspacemacs-configuration-layers'. `nil' disable the lazy
+
19
   ;; installation feature and you have to explicitly list a layer in the
+
20
   ;; variable `dotspacemacs-configuration-layers' to install it.
+
21
   ;; (default 'unused)
+
22
   dotspacemacs-enable-lazy-installation 'unused
+
23
   ;; If non-nil then Spacemacs will ask for confirmation before installing
+
24
   ;; a layer lazily. (default t)
+
25
   dotspacemacs-ask-for-lazy-installation t
+
26
   ;; If non-nil layers with lazy install support are lazy installed.
+
27
   ;; List of additional paths where to look for configuration layers.
+
28
   ;; Paths must have a trailing slash (i.e. `~/.mycontribs/')
+
29
   dotspacemacs-configuration-layer-path '()
+
30
   ;; List of configuration layers to load.
+
31
   dotspacemacs-configuration-layers
+
32
   '(
+
33
     ;; ----------------------------------------------------------------
+
34
     ;; Example of useful layers you may want to use right away.
+
35
     ;; Uncomment some layer names and press  (Vim style) or
+
36
     ;;  (Emacs style) to install them.
+
37
     ;; ----------------------------------------------------------------
+
38
     helm
+
39
     auto-completion
+
40
     ;; better-defaults
+
41
     emacs-lisp
+
42
     exec-path-from-shell
+
43
     git
+
44
     markdown
+
45
     org
+
46
     ;; (shell :variables
+
47
     ;;        shell-default-height 30
+
48
     ;;        shell-default-position 'bottom)
+
49
     spell-checking
+
50
     syntax-checking
+
51
     version-control
+
52
     themes-megapack
+
53
     ;;rust ;; Disabled; causes a bug with exec-path-from-shell, which is disabled.
+
54
     (clojure :variables
+
55
              clojure-enable-fancify-symbols t)
+
56
     (haskell :variables
+
57
              haskell-completion-backend 'intero)
+
58
     (python :variables
+
59
             python-sort-imports-on-save t
+
60
             python-test-runner 'pytest)
+
61
     )
+
62
   ;; List of additional packages that will be installed without being
+
63
   ;; wrapped in a layer. If you need some configuration for these
+
64
   ;; packages, then consider creating a layer. You can also put the
+
65
   ;; configuration in `dotspacemacs/user-config'.
+
66
   dotspacemacs-additional-packages '(pretty-mode)
+
67
   ;; A list of packages that cannot be updated.
+
68
   dotspacemacs-frozen-packages '()
+
69
   ;; A list of packages that will not be installed and loaded.
+
70
   dotspacemacs-excluded-packages '(exec-path-from-shell)
+
71
   ;; Defines the behaviour of Spacemacs when installing packages.
+
72
   ;; Possible values are `used-only', `used-but-keep-unused' and `all'.
+
73
   ;; `used-only' installs only explicitly used packages and uninstall any
+
74
   ;; unused packages as well as their unused dependencies.
+
75
   ;; `used-but-keep-unused' installs only the used packages but won't uninstall
+
76
   ;; them if they become unused. `all' installs *all* packages supported by
+
77
   ;; Spacemacs and never uninstall them. (default is `used-only')
+
78
   dotspacemacs-install-packages 'used-only))
+
79
+
80
(defun dotspacemacs/init ()
+
81
  "Initialization function.
+
82
This function is called at the very startup of Spacemacs initialization
+
83
before layers configuration.
+
84
You should not put any user code in there besides modifying the variable
+
85
values."
+
86
  ;; This setq-default sexp is an exhaustive list of all the supported
+
87
  ;; spacemacs settings.
+
88
  (setq-default
+
89
   ;; If non nil ELPA repositories are contacted via HTTPS whenever it's
+
90
   ;; possible. Set it to nil if you have no way to use HTTPS in your
+
91
   ;; environment, otherwise it is strongly recommended to let it set to t.
+
92
   ;; This variable has no effect if Emacs is launched with the parameter
+
93
   ;; `--insecure' which forces the value of this variable to nil.
+
94
   ;; (default t)
+
95
   dotspacemacs-elpa-https t
+
96
   ;; Maximum allowed time in seconds to contact an ELPA repository.
+
97
   dotspacemacs-elpa-timeout 5
+
98
   ;; If non nil then spacemacs will check for updates at startup
+
99
   ;; when the current branch is not `develop'. Note that checking for
+
100
   ;; new versions works via git commands, thus it calls GitHub services
+
101
   ;; whenever you start Emacs. (default nil)
+
102
   dotspacemacs-check-for-update nil
+
103
   ;; If non-nil, a form that evaluates to a package directory. For example, to
+
104
   ;; use different package directories for different Emacs versions, set this
+
105
   ;; to `emacs-version'.
+
106
   dotspacemacs-elpa-subdirectory nil
+
107
   ;; One of `vim', `emacs' or `hybrid'.
+
108
   ;; `hybrid' is like `vim' except that `insert state' is replaced by the
+
109
   ;; `hybrid state' with `emacs' key bindings. The value can also be a list
+
110
   ;; with `:variables' keyword (similar to layers). Check the editing styles
+
111
   ;; section of the documentation for details on available variables.
+
112
   ;; (default 'vim)
+
113
   dotspacemacs-editing-style 'vim
+
114
   ;; If non nil output loading progress in `*Messages*' buffer. (default nil)
+
115
   dotspacemacs-verbose-loading nil
+
116
   ;; Specify the startup banner. Default value is `official', it displays
+
117
   ;; the official spacemacs logo. An integer value is the index of text
+
118
   ;; banner, `random' chooses a random text banner in `core/banners'
+
119
   ;; directory. A string value must be a path to an image format supported
+
120
   ;; by your Emacs build.
+
121
   ;; If the value is nil then no banner is displayed. (default 'official)
+
122
   dotspacemacs-startup-banner 'official
+
123
   ;; List of items to show in startup buffer or an association list of
+
124
   ;; the form `(list-type . list-size)`. If nil then it is disabled.
+
125
   ;; Possible values for list-type are:
+
126
   ;; `recents' `bookmarks' `projects' `agenda' `todos'."
+
127
   ;; List sizes may be nil, in which case
+
128
   ;; `spacemacs-buffer-startup-lists-length' takes effect.
+
129
   dotspacemacs-startup-lists '((recents . 5)
+
130
                                (projects . 7))
+
131
   ;; True if the home buffer should respond to resize events.
+
132
   dotspacemacs-startup-buffer-responsive t
+
133
   ;; Default major mode of the scratch buffer (default `text-mode')
+
134
   dotspacemacs-scratch-mode 'text-mode
+
135
   ;; List of themes, the first of the list is loaded when spacemacs starts.
+
136
   ;; Press  T n to cycle to the next theme in the list (works great
+
137
   ;; with 2 themes variants, one dark and one light)
+
138
   dotspacemacs-themes '(monokai
+
139
                         spolsky
+
140
                         molokai)
+
141
   ;; If non nil the cursor color matches the state color in GUI Emacs.
+
142
   dotspacemacs-colorize-cursor-according-to-state t
+
143
   ;; Default font, or prioritized list of fonts. `powerline-scale' allows to
+
144
   ;; quickly tweak the mode-line size to make separators look not too crappy.
+
145
   dotspacemacs-default-font '("Hack"
+
146
                               :size 15
+
147
                               :weight normal
+
148
                               :width normal
+
149
                               :powerline-scale 1.3)
+
150
   ;;dotspacemacs-default-font '("Source Code Pro Medium"
+
151
                               ;;:size 15
+
152
                               ;;:weight normal
+
153
                               ;;:width normal
+
154
                               ;;:powerline-scale 1.3)
+
155
   ;; The leader key
+
156
   dotspacemacs-leader-key "SPC"
+
157
   ;; The key used for Emacs commands (M-x) (after pressing on the leader key).
+
158
   ;; (default "SPC")
+
159
   dotspacemacs-emacs-command-key "SPC"
+
160
   ;; The key used for Vim Ex commands (default ":")
+
161
   dotspacemacs-ex-command-key ":"
+
162
   ;; The leader key accessible in `emacs state' and `insert state'
+
163
   ;; (default "M-m")
+
164
   dotspacemacs-emacs-leader-key "M-m"
+
165
   ;; Major mode leader key is a shortcut key which is the equivalent of
+
166
   ;; pressing ` m`. Set it to `nil` to disable it. (default ",")
+
167
   dotspacemacs-major-mode-leader-key ","
+
168
   ;; Major mode leader key accessible in `emacs state' and `insert state'.
+
169
   ;; (default "C-M-m")
+
170
   dotspacemacs-major-mode-emacs-leader-key "C-M-m"
+
171
   ;; These variables control whether separate commands are bound in the GUI to
+
172
   ;; the key pairs C-i, TAB and C-m, RET.
+
173
   ;; Setting it to a non-nil value, allows for separate commands under 
+
174
   ;; and TAB or  and RET.
+
175
   ;; In the terminal, these pairs are generally indistinguishable, so this only
+
176
   ;; works in the GUI. (default nil)
+
177
   dotspacemacs-distinguish-gui-tab nil
+
178
   ;; If non nil `Y' is remapped to `y$' in Evil states. (default nil)
+
179
   dotspacemacs-remap-Y-to-y$ nil
+
180
   ;; If non-nil, the shift mappings `<' and `>' retain visual state if used
+
181
   ;; there. (default t)
+
182
   dotspacemacs-retain-visual-state-on-shift t
+
183
   ;; If non-nil, J and K move lines up and down when in visual mode.
+
184
   ;; (default nil)
+
185
   dotspacemacs-visual-line-move-text nil
+
186
   ;; If non nil, inverse the meaning of `g' in `:substitute' Evil ex-command.
+
187
   ;; (default nil)
+
188
   dotspacemacs-ex-substitute-global nil
+
189
   ;; Name of the default layout (default "Default")
+
190
   dotspacemacs-default-layout-name "Default"
+
191
   ;; If non nil the default layout name is displayed in the mode-line.
+
192
   ;; (default nil)
+
193
   dotspacemacs-display-default-layout nil
+
194
   ;; If non nil then the last auto saved layouts are resume automatically upon
+
195
   ;; start. (default nil)
+
196
   dotspacemacs-auto-resume-layouts nil
+
197
   ;; Size (in MB) above which spacemacs will prompt to open the large file
+
198
   ;; literally to avoid performance issues. Opening a file literally means that
+
199
   ;; no major mode or minor modes are active. (default is 1)
+
200
   dotspacemacs-large-file-size 1
+
201
   ;; Location where to auto-save files. Possible values are `original' to
+
202
   ;; auto-save the file in-place, `cache' to auto-save the file to another
+
203
   ;; file stored in the cache directory and `nil' to disable auto-saving.
+
204
   ;; (default 'cache)
+
205
   dotspacemacs-auto-save-file-location 'cache
+
206
   ;; Maximum number of rollback slots to keep in the cache. (default 5)
+
207
   dotspacemacs-max-rollback-slots 5
+
208
   ;; If non nil, `helm' will try to minimize the space it uses. (default nil)
+
209
   dotspacemacs-helm-resize nil
+
210
   ;; if non nil, the helm header is hidden when there is only one source.
+
211
   ;; (default nil)
+
212
   dotspacemacs-helm-no-header nil
+
213
   ;; define the position to display `helm', options are `bottom', `top',
+
214
   ;; `left', or `right'. (default 'bottom)
+
215
   dotspacemacs-helm-position 'bottom
+
216
   ;; Controls fuzzy matching in helm. If set to `always', force fuzzy matching
+
217
   ;; in all non-asynchronous sources. If set to `source', preserve individual
+
218
   ;; source settings. Else, disable fuzzy matching in all sources.
+
219
   ;; (default 'always)
+
220
   dotspacemacs-helm-use-fuzzy 'always
+
221
   ;; If non nil the paste micro-state is enabled. When enabled pressing `p`
+
222
   ;; several times cycle between the kill ring content. (default nil)
+
223
   dotspacemacs-enable-paste-transient-state nil
+
224
   ;; Which-key delay in seconds. The which-key buffer is the popup listing
+
225
   ;; the commands bound to the current keystroke sequence. (default 0.4)
+
226
   dotspacemacs-which-key-delay 0.4
+
227
   ;; Which-key frame position. Possible values are `right', `bottom' and
+
228
   ;; `right-then-bottom'. right-then-bottom tries to display the frame to the
+
229
   ;; right; if there is insufficient space it displays it at the bottom.
+
230
   ;; (default 'bottom)
+
231
   dotspacemacs-which-key-position 'bottom
+
232
   ;; If non nil a progress bar is displayed when spacemacs is loading. This
+
233
   ;; may increase the boot time on some systems and emacs builds, set it to
+
234
   ;; nil to boost the loading time. (default t)
+
235
   dotspacemacs-loading-progress-bar t
+
236
   ;; If non nil the frame is fullscreen when Emacs starts up. (default nil)
+
237
   ;; (Emacs 24.4+ only)
+
238
   dotspacemacs-fullscreen-at-startup nil
+
239
   ;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen.
+
240
   ;; Use to disable fullscreen animations in OSX. (default nil)
+
241
   dotspacemacs-fullscreen-use-non-native nil
+
242
   ;; If non nil the frame is maximized when Emacs starts up.
+
243
   ;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil.
+
244
   ;; (default nil) (Emacs 24.4+ only)
+
245
   dotspacemacs-maximized-at-startup nil
+
246
   ;; A value from the range (0..100), in increasing opacity, which describes
+
247
   ;; the transparency level of a frame when it's active or selected.
+
248
   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
+
249
   dotspacemacs-active-transparency 90
+
250
   ;; A value from the range (0..100), in increasing opacity, which describes
+
251
   ;; the transparency level of a frame when it's inactive or deselected.
+
252
   ;; Transparency can be toggled through `toggle-transparency'. (default 90)
+
253
   dotspacemacs-inactive-transparency 90
+
254
   ;; If non nil show the titles of transient states. (default t)
+
255
   dotspacemacs-show-transient-state-title t
+
256
   ;; If non nil show the color guide hint for transient state keys. (default t)
+
257
   dotspacemacs-show-transient-state-color-guide t
+
258
   ;; If non nil unicode symbols are displayed in the mode line. (default t)
+
259
   dotspacemacs-mode-line-unicode-symbols t
+
260
   ;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth
+
261
   ;; scrolling overrides the default behavior of Emacs which recenters point
+
262
   ;; when it reaches the top or bottom of the screen. (default t)
+
263
   dotspacemacs-smooth-scrolling t
+
264
   ;; Control line numbers activation.
+
265
   ;; If set to `t' or `relative' line numbers are turned on in all `prog-mode' and
+
266
   ;; `text-mode' derivatives. If set to `relative', line numbers are relative.
+
267
   ;; This variable can also be set to a property list for finer control:
+
268
   ;; '(:relative nil
+
269
   ;;   :disabled-for-modes dired-mode
+
270
   ;;                       doc-view-mode
+
271
   ;;                       markdown-mode
+
272
   ;;                       org-mode
+
273
   ;;                       pdf-view-mode
+
274
   ;;                       text-mode
+
275
   ;;   :size-limit-kb 1000)
+
276
   ;; (default nil)
+
277
   dotspacemacs-line-numbers nil
+
278
   ;; Code folding method. Possible values are `evil' and `origami'.
+
279
   ;; (default 'evil)
+
280
   dotspacemacs-folding-method 'evil
+
281
   ;; If non-nil smartparens-strict-mode will be enabled in programming modes.
+
282
   ;; (default nil)
+
283
   dotspacemacs-smartparens-strict-mode nil
+
284
   ;; If non-nil pressing the closing parenthesis `)' key in insert mode passes
+
285
   ;; over any automatically added closing parenthesis, bracket, quote, etc…
+
286
   ;; This can be temporary disabled by pressing `C-q' before `)'. (default nil)
+
287
   dotspacemacs-smart-closing-parenthesis nil
+
288
   ;; Select a scope to highlight delimiters. Possible values are `any',
+
289
   ;; `current', `all' or `nil'. Default is `all' (highlight any scope and
+
290
   ;; emphasis the current one). (default 'all)
+
291
   dotspacemacs-highlight-delimiters 'all
+
292
   ;; If non nil, advise quit functions to keep server open when quitting.
+
293
   ;; (default nil)
+
294
   dotspacemacs-persistent-server nil
+
295
   ;; List of search tool executable names. Spacemacs uses the first installed
+
296
   ;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'.
+
297
   ;; (default '("ag" "pt" "ack" "grep"))
+
298
   dotspacemacs-search-tools '("ag" "pt" "ack" "grep")
+
299
   ;; The default package repository used if no explicit repository has been
+
300
   ;; specified with an installed package.
+
301
   ;; Not used for now. (default nil)
+
302
   dotspacemacs-default-package-repository nil
+
303
   ;; Delete whitespace while saving buffer. Possible values are `all'
+
304
   ;; to aggressively delete empty line and long sequences of whitespace,
+
305
   ;; `trailing' to delete only the whitespace at end of lines, `changed'to
+
306
   ;; delete only whitespace for changed lines or `nil' to disable cleanup.
+
307
   ;; (default nil)
+
308
   dotspacemacs-whitespace-cleanup nil
+
309
   ))
+
310
+
311
(defun dotspacemacs/user-init ()
+
312
  (define-key evil-normal-state-map (kbd "j") 'evil-next-visual-line)
+
313
  (define-key evil-normal-state-map (kbd "k") 'evil-previous-visual-line)
+
314
  "Initialization function for user code.
+
315
It is called immediately after `dotspacemacs/init', before layer configuration
+
316
executes.
+
317
 This function is mostly useful for variables that need to be set
+
318
before packages are loaded. If you are unsure, you should try in setting them in
+
319
`dotspacemacs/user-config' first."
+
320
  )
+
321
+
322
(defun dotspacemacs/user-config ()
+
323
  (require 'pretty-mode)
+
324
  (global-pretty-mode t)
+
325
  (pretty-activate-groups
+
326
   '(:sub-and-superscripts :greek :arithmetic-nary))
+
327
+
328
  ;; Code copied from http://www.modernemacs.com/post/prettify-mode/
+
329
  (global-prettify-symbols-mode 1)
+
330
  (add-hook
+
331
   'python-mode-hook
+
332
   (lambda ()
+
333
     (mapc (lambda (pair) (push pair prettify-symbols-alist))
+
334
           '(;; Syntax
+
335
             ("def" .      #x2131)
+
336
             ("not" .      #x2757)
+
337
             ("in" .       #x2208)
+
338
             ("not in" .   #x2209)
+
339
             ("return" .   #x27fc)
+
340
             ("yield" .    #x27fb)
+
341
             ("for" .      #x2200)
+
342
             ;; Base Types
+
343
             ("int" .      #x2124)
+
344
             ("float" .    #x211d)
+
345
             ("str" .      #x1d54a)
+
346
             ("True" .     #x1d54b)
+
347
             ("False" .    #x1d53d)
+
348
             ;; Mypy
+
349
             ("Dict" .     #x1d507)
+
350
             ("List" .     #x2112)
+
351
             ("Tuple" .    #x2a02)
+
352
             ("Set" .      #x2126)
+
353
             ("Iterable" . #x1d50a)
+
354
             ("Any" .      #x2754)
+
355
             ("Union" .    #x22c3)))))
+
356
+
357
  (setq-default dotspacemacs-themes '(molokai)) 
+
358
  (global-linum-mode)
+
359
  "Configuration function for user code.
+
360
This function is called at the very end of Spacemacs initialization after
+
361
layers configuration.
+
362
This is the place where most of your configurations should be done. Unless it is
+
363
explicitly specified that a variable should be set before a package is loaded,
+
364
you should place your code here."
+
365
  )
+
366
+
367
;; Do not write anything past this comment. This is where Emacs will
+
368
;; auto-generate custom variable definitions.
+
369
(custom-set-variables
+
370
 ;; custom-set-variables was added by Custom.
+
371
 ;; If you edit it by hand, you could mess it up, so be careful.
+
372
 ;; Your init file should contain only one such instance.
+
373
 ;; If there is more than one, they won't work right.
+
374
 '(ansi-color-faces-vector
+
375
   [default default default italic underline success warning error])
+
376
 '(evil-want-Y-yank-to-eol nil)
+
377
 '(package-selected-packages
+
378
   (quote
+
379
    (toml-mode racer intero hlint-refactor hindent helm-hoogle haskell-snippets flycheck-rust flycheck-haskell company-ghci company-ghc ghc haskell-mode company-cabal cmm-mode clojure-snippets clj-refactor inflections edn multiple-cursors paredit peg cider-eval-sexp-fu cider seq queue clojure-mode cargo rust-mode zonokai-theme zenburn-theme zen-and-art-theme underwater-theme ujelly-theme twilight-theme twilight-bright-theme twilight-anti-bright-theme tronesque-theme toxi-theme tao-theme tangotango-theme tango-plus-theme tango-2-theme sunny-day-theme sublime-themes subatomic256-theme subatomic-theme spacegray-theme soothe-theme solarized-theme soft-stone-theme soft-morning-theme soft-charcoal-theme smyx-theme seti-theme reverse-theme railscasts-theme purple-haze-theme professional-theme planet-theme phoenix-dark-pink-theme phoenix-dark-mono-theme pastels-on-dark-theme organic-green-theme omtose-phellack-theme oldlace-theme occidental-theme obsidian-theme noctilux-theme niflheim-theme naquadah-theme mustang-theme monokai-theme monochrome-theme molokai-theme moe-theme minimal-theme material-theme majapahit-theme madhat2r-theme lush-theme light-soap-theme jbeans-theme jazz-theme ir-black-theme inkpot-theme heroku-theme hemisu-theme hc-zenburn-theme gruvbox-theme gruber-darker-theme grandshell-theme gotham-theme gandalf-theme flatui-theme flatland-theme firebelly-theme farmhouse-theme espresso-theme dracula-theme django-theme darktooth-theme autothemer darkokai-theme darkmine-theme darkburn-theme dakrone-theme cyberpunk-theme color-theme-sanityinc-tomorrow color-theme-sanityinc-solarized clues-theme cherry-blossom-theme busybee-theme bubbleberry-theme birds-of-paradise-plus-theme badwolf-theme apropospriate-theme anti-zenburn-theme ample-zen-theme ample-theme alect-themes afternoon-theme pretty-mode yapfify pyvenv pytest pyenv-mode py-isort pip-requirements live-py-mode hy-mode helm-pydoc cython-mode company-anaconda anaconda-mode pythonic git-gutter-fringe+ git-gutter-fringe fringe-helper git-gutter+ git-gutter flyspell-correct-helm flyspell-correct diff-hl auto-dictionary smeargle orgit org-projectile org-present org-pomodoro alert log4e gntp org-download magit-gitflow htmlize helm-gitignore helm-company helm-c-yasnippet gnuplot gitignore-mode gitconfig-mode gitattributes-mode git-timemachine git-messenger git-link fuzzy flycheck-pos-tip pos-tip flycheck mmm-mode markdown-toc markdown-mode gh-md ws-butler winum which-key volatile-highlights vi-tilde-fringe uuidgen use-package toc-org spaceline restart-emacs request rainbow-delimiters popwin persp-mode pcre2el paradox org-plus-contrib org-bullets open-junk-file neotree move-text macrostep lorem-ipsum linum-relative link-hint info+ indent-guide hungry-delete hl-todo highlight-parentheses highlight-numbers highlight-indentation hide-comnt help-fns+ helm-themes helm-swoop helm-projectile helm-mode-manager helm-make helm-flx helm-descbinds helm-ag google-translate golden-ratio flx-ido fill-column-indicator fancy-battery eyebrowse expand-region evil-visualstar evil-visual-mark-mode evil-unimpaired evil-tutor evil-surround evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-lisp-state evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-ediff evil-args evil-anzu eval-sexp-fu elisp-slime-nav dumb-jump define-word column-enforce-mode clean-aindent-mode auto-highlight-symbol auto-compile aggressive-indent adaptive-wrap ace-window ace-link ace-jump-helm-line))))
+
380
(custom-set-faces
+
381
 ;; custom-set-faces was added by Custom.
+
382
 ;; If you edit it by hand, you could mess it up, so be careful.
+
383
 ;; Your init file should contain only one such instance.
+
384
 ;; If there is more than one, they won't work right.
+
385
 '(default ((((class color) (min-colors 257)) (:foreground "#F8F8F2" :background "#272822")) (((class color) (min-colors 89)) (:foreground "#F5F5F5" :background "#1B1E1C")))))
+
386
 '(default ((((class color) (min-colors 257)) (:foreground "#F8F8F2" :background "#272822")) (((class color) (min-colors 89)) (:foreground "#F5F5F5" :background "#1B1E1C")))))

i3/config

3 additions and 0 deletions.

View changes Hide changes
1
1
#
2
2
# Copy this to ~/.config/sway/config and edit it to your liking.
3
3
#
4
4
# Read `man 5 sway` for a complete reference.
5
5
6
6
### Variables
7
7
#
8
8
# Logo key. Use Mod1 for Alt.
9
9
set $mod Mod4
10
10
# Home row direction keys, like vim
11
11
set $left h
12
12
set $down j
13
13
set $up k
14
14
set $right l
15
15
# Your preferred terminal emulator
16
16
set $term urxvt
17
17
# Your preferred application launcher
18
18
set $menu rofi -show run 
19
19
20
20
21
21
### Output configuration
22
22
#
23
23
# Default wallpaper (more resolutions are available in /usr/share/sway/)
24
24
#output * bg ~/.wallpapers/Abstract\ with\ lime\ green\ and\ blue\ accents.jpg fill
25
25
#
26
26
# Example configuration:
27
27
#
28
28
#   output HDMI-A-1 resolution 1920x1080 position 1920,0
29
29
#
30
30
# You can get the names of your outputs by running: swaymsg -t get_outputs
31
31
32
32
### Input configuration
33
33
#
34
34
# Example configuration:
35
35
#
36
36
#   input "2:14:SynPS/2_Synaptics_TouchPad" {
37
37
#       dwt enabled
38
38
#       tap enabled
39
39
#       natural_scroll enabled
40
40
#       middle_emulation enabled
41
41
#   }
42
42
#
43
43
# You can get the names of your inputs by running: swaymsg -t get_inputs
44
44
# The escape symbol "\" has to be removed.
45
45
# Read `man 5 sway-input` for more information about this section.
46
46
47
47
### Key bindings
48
48
#
49
49
# Basics:
50
50
#
51
51
    # start a terminal
52
52
    bindsym $mod+Return exec $term
53
53
54
54
    # kill focused window
55
55
    bindsym $mod+Shift+q kill
56
56
57
57
    # start your launcher
58
58
    bindsym $mod+d exec $menu
59
59
60
60
    # Mouse+$mod to drag floating windows
+
61
    bindsym $mod+m exec emacs
+
62
+
63
    # Mouse+$mod to drag floating windows
61
64
	floating_modifier $mod
62
65
63
66
    # Lock screen
64
67
    bindsym $mod+i exec i3lock-wrapper
65
68
66
69
    # reload the configuration file
67
70
    bindsym $mod+Shift+c reload
68
71
    # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
69
72
    bindsym $mod+Shift+r restart
70
73
# exit i3 (logs you out of your X session)
71
74
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
72
75
#
73
76
# Moving around:
74
77
#
75
78
    # Move your focus around
76
79
    bindsym $mod+$left focus left
77
80
    bindsym $mod+$down focus down
78
81
    bindsym $mod+$up focus up
79
82
    bindsym $mod+$right focus right
80
83
    # or use $mod+[up|down|left|right]
81
84
    bindsym $mod+Left focus left
82
85
    bindsym $mod+Down focus down
83
86
    bindsym $mod+Up focus up
84
87
    bindsym $mod+Right focus right
85
88
86
89
    # _move_ the focused window with the same, but add Shift
87
90
    bindsym $mod+Shift+$left move left
88
91
    bindsym $mod+Shift+$down move down
89
92
    bindsym $mod+Shift+$up move up
90
93
    bindsym $mod+Shift+$right move right
91
94
    # ditto, with arrow keys
92
95
    bindsym $mod+Shift+Left move left
93
96
    bindsym $mod+Shift+Down move down
94
97
    bindsym $mod+Shift+Up move up
95
98
    bindsym $mod+Shift+Right move right
96
99
#
97
100
# Workspaces:
98
101
#
99
102
    # switch to workspace
100
103
    bindsym $mod+1 workspace 1
101
104
    bindsym $mod+2 workspace 2
102
105
    bindsym $mod+3 workspace 3
103
106
    bindsym $mod+4 workspace 4
104
107
    bindsym $mod+5 workspace 5
105
108
    bindsym $mod+6 workspace 6
106
109
    bindsym $mod+7 workspace 7
107
110
    bindsym $mod+8 workspace 8: Website
108
111
    bindsym $mod+9 workspace 9: Games
109
112
    bindsym $mod+0 workspace 10: University
110
113
    # move focused container to workspace
111
114
    bindsym $mod+Shift+1 move container to workspace 1
112
115
    bindsym $mod+Shift+2 move container to workspace 2
113
116
    bindsym $mod+Shift+3 move container to workspace 3
114
117
    bindsym $mod+Shift+4 move container to workspace 4
115
118
    bindsym $mod+Shift+5 move container to workspace 5
116
119
    bindsym $mod+Shift+6 move container to workspace 6
117
120
    bindsym $mod+Shift+7 move container to workspace 7
118
121
    bindsym $mod+Shift+8 move container to workspace 8: Website
119
122
    bindsym $mod+Shift+9 move container to workspace 9: Games
120
123
    bindsym $mod+Shift+0 move container to workspace 10: University
121
124
    # Note: workspaces can have any name you want, not just numbers.
122
125
    # We just use 1-10 as the default.
123
126
#
124
127
# Layout stuff:
125
128
#
126
129
    # You can "split" the current object of your focus with
127
130
    # $mod+b or $mod+v, for horizontal and vertical splits
128
131
    # respectively.
129
132
    bindsym $mod+b split h
130
133
    bindsym $mod+v split v
131
134
132
135
    # Switch the current container between different layout styles
133
136
    bindsym $mod+s layout stacking
134
137
    bindsym $mod+w layout tabbed
135
138
    bindsym $mod+e layout toggle split
136
139
137
140
    # Make the current focus fullscreen
138
141
    bindsym $mod+f fullscreen toggle
139
142
140
143
    # Toggle the current focus between tiling and floating mode
141
144
    bindsym $mod+Shift+space floating toggle
142
145
143
146
    # Swap focus between the tiling area and the floating area
144
147
    bindsym $mod+space focus mode_toggle
145
148
146
149
    # move focus to the parent container
147
150
    bindsym $mod+a focus parent
148
151
#
149
152
# Scratchpad:
150
153
#
151
154
    # Sway has a "scratchpad", which is a bag of holding for windows.
152
155
    # You can send windows there and get them back later.
153
156
154
157
    # Move the currently focused window to the scratchpad
155
158
    bindsym $mod+Shift+minus move scratchpad
156
159
157
160
    # Show the next scratchpad window or hide the focused scratchpad window.
158
161
    # If there are multiple scratchpad windows, this command cycles through them.
159
162
    bindsym $mod+minus scratchpad show
160
163
#
161
164
# Resizing containers:
162
165
#
163
166
mode "resize" {
164
167
    # left will shrink the containers width
165
168
    # right will grow the containers width
166
169
    # up will shrink the containers height
167
170
    # down will grow the containers height
168
171
    bindsym $left resize shrink width 10 px or 10 ppt
169
172
    bindsym $down resize grow height 10 px or 10 ppt
170
173
    bindsym $up resize shrink height 10 px or 10 ppt
171
174
    bindsym $right resize grow width 10 px or 10 ppt
172
175
173
176
    # ditto, with arrow keys
174
177
    bindsym Left resize shrink width 10 px or 10 ppt
175
178
    bindsym Down resize grow height 10 px or 10 ppt
176
179
    bindsym Up resize shrink height 10 px or 10 ppt
177
180
    bindsym Right resize grow width 10 px or 10 ppt
178
181
179
182
    # return to default mode
180
183
    bindsym Return mode "default"
181
184
    bindsym Escape mode "default"
182
185
}
183
186
bindsym $mod+r mode "resize"
184
187
185
188
# --recursive allows subdirectories to contain wallpapers as well, which is nice
186
189
# if you want to organize.
187
190
# --randomize chooses a different wallpaper for each screen (and of course,
188
191
# randomizes during startup)
189
192
# --bg-scale scales the wallpaper to fit the screen, so any 16:9 wallpaper is
190
193
# scaled to fit, instead of staying oversized.
191
194
exec_always feh --recursive --randomize --bg-scale ~/.wallpapers/* 
192
195
exec compton -b -i 0.5
193
196
exec polybar top
194
197
195
198
196
199
# Makes my FN buttons work properly.
197
200
bindsym XF86AudioRaiseVolume exec amixer -q set Master 5%+ unmute
198
201
bindsym XF86AudioLowerVolume exec amixer -q set Master 5%- unmute
199
202
bindsym XF86AudioToggle exec pactl set-sink-mute $(pacmd list-sinks |awk '/* index:/{print $3}') toggle
200
203
201
204
bindsym XF86MonBrightnessDown exec light -U 5
202
205
bindsym XF86MonBrightnessUp exec light -A 5
203
206
bindsym Print exec scrot  # Printscreen button
204
207
bindsym $mod+Print exec scrot -s  # scrot, but click for window, or drag for rectangle screenshot.
205
208
206
209
207
210
# Font settings
208
211
font pango:Ubuntu Regular 11
209
212
210
213
# Border settings
211
214
#hide_edge_borders both
212
215
213
216
# Color settings (yeah Material Design, I know, don't judge)
214
217
215
218
client.focused          #283593 #283593 #ffffff #283593 #283593
216
219
client.focused_inactive #5C6BC0 #5C6BC0 #FFFFFF #5C6BC0 #5C6BC0
217
220
client.unfocused        #9FA8DA #9FA8DA #000000 #9FA8DA #9FA8DA
218
221
client.urgent           #D50000 #D50000 #ffffff #D50000 #D50000
219
222
#client.placeholder
220
223
221
224
# Stops the mouse defining what the active window is.
222
225
focus_follows_mouse no
223
226
224
227
# i3-gaps configuration
225
228
#
226
229
# i3-gaps can only work properly if title bars are completely disabled, which the
227
230
# next line is responsible for.
228
231
for_window [class="^.*"] border pixel 5
229
232
230
233
gaps inner 15
231
234
gaps outer 5
232
235
# smart_gaps disables gaps if there is only 1 container on the workspace.
233
236
smart_gaps on
234
237
# smart_borders does the same thing. If set to "on", it will always disable the
235
238
# border if it's the only container on the workspace. If set to "no-gaps", it
236
239
# only disables the border if the gap size to the edge of the screen is 0.
237
240
smart_borders no_gaps

install.sh

5 additions and 2 deletions.

View changes Hide changes
1
1
# particulary Arch, because that's the best GNU/Linux distro =P
2
2
3
3
# The next command will install the software that I'm bound to use on my PC.
4
4
sudo pacman -S --noconfirm neovim base-devel rust vlc openssh
5
-
# Don't forget to install the keys for SSH!
+
5
# Don't forget to install the keys for SSH!
6
6
7
7
# Installing shell data:
+
8
git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d
+
9
+
10
# Installing shell data:
8
11
sudo pacman -S --noconfirm zsh zsh-completions zsh-grml-config
9
12
10
13
# Installing the Noto fonts:
11
14
sudo pacman -S --noconfirm noto-fonts noto-fonts-emoji
12
15
# Firefox:
13
16
sudo pacman -S --noconfirm firefox
14
17
# Uncomment next line for Dutch firefox translations.
15
18
#sudo pacman -S --noconfirm firefox-i18n-nl
16
19
# I've ditched Firefox in favor of Chromium, because Chromium doesn't vomit when confronted with XWayland.
17
20
#sudo pacman -S --noconfirm chromium
18
21
19
22
# Sound handling (Don't forget to unmute using alsamixer!)
20
23
sudo pacman -S --noconfirm alsa-utils pulseaudio pulseaudio-jack pulseaudio-bluetooth
21
24
22
25
# To easily make use of the AUR, I'll first install Pacaur, which needs some
23
26
# special treatment up front:
24
27
cd ~/Downloads
25
28
wget https://aur.archlinux.org/cgit/aur.git/snapshot/pacaur.tar.gz
26
29
tar -x -f pacaur.tar.gz
27
30
cd pacaur
28
31
makepkg -sri --noconfirm
29
32
cd ..
30
33
rm -r pacaur
31
34
cd ~
32
35
33
36
# Making a directory in which to store all repositories. It's basically a
34
37
# repository for repositories =3
35
38
mkdir Repositories
36
39
37
40
# Making some common aliases for some pieces of software
38
41
alias vi nvim
39
42
alias vim nvim
40
43
41
44
# Some Python dependencies that need to be installed
42
45
pip install paramiko
43
46
44
47
# Collecting software from the AUR:
45
48
pacaur -S vim-youcompleteme-git
46
49
pacaur -S clojure leiningen  # Clojure's 'project manager' thingy + Clojure
47
50
# Next line installs all required software for the desktop environment.
48
51
pacaur -S i3-gaps feh rofi compton i3lock-wrapper
49
52
# Installing Polybar and i3ipc-glib-git because the first one is awesome, the
50
53
# second one (allegedly) necessary for i3 interaction for Polybar:
51
54
pacaur -S --noconfirm polybar i3ipc-glib-git
52
55
# i3blocks optional dependencies:
53
56
pacaur -S acpi bc lm_sensors playerctl sysstat
54
57
# A terminal emulator:
55
58
pacaur -S --noconfirm rxvt-unicode
56
59
# Also, DO NOT use Termite. It's an awful thing to work with NeoVim, and slows
57
60
# down to a fucking tortoise speed.
58
61
59
62
# Now, assuming I'm using the my standard setup for Yabar, I need the JSON
60
63
# parser to correctly output my workspace name:
61
64
pacaur -S --noconfirm jq
62
65
63
66
# Uncomment when there is a driver for the Validity VFS495 138a:003f figerprint
64
67
# reader, and still working on that gorgeous laptop:
65
68
#pacaur -S --noconfirm fprintd
66
69
67
70
pacaur -S --noconfirm rsync  # Used for backing up data that can't be done properly with Git
68
71
pacaur -S --noconfirm neomutt urlview  # Least sucky mail client
69
72
70
73
# Installing CRON job services
71
74
pacaur -S --noconfirm cronie
72
75
# TODO Add a line that makes a symbolic link to my custom Cron file
73
76
sudo systemctl enable cronie.service
74
77
75
78
pacaur -S --noconfirm irssi  # IRC client
76
79
pacaur -S --noconfirm ranger w3m  # File manager. w3m for image previews
77
80
# TODO link ranger/rc.conf and scope.sh symbolically to .config/ranger
78
81
79
82
# Fonts
80
83
# Now I don't like Ubuntu, but their fonts are amazing.
81
84
pacaur -S --noconfirm ttf-ubuntu-font-family
82
-
+
85
83
86
# MPV is used for playing videos, and is required when using the 'Watch with
84
87
# MPV' plugin for Firefox. It's way more lightweight, and I don't get why both
85
88
# Chrome and Firefox don't do this automatically, and default to software
86
89
# decoding instead on the hardware GPU.
87
90
pacaur -S --noconfirm mpv youtube-dl-git
88
91