Merge branch 'master' of https://git.jpatrick.io/james/dotfiles
This commit is contained in:
commit
a9dca5890c
|
@ -16,6 +16,6 @@
|
|||
(setq deft-directory "~/org/")
|
||||
|
||||
;; Have projectile automatically check code.
|
||||
(setq projectile-project-search-path '("~/code/")
|
||||
(setq projectile-project-search-path '("~/code/"))
|
||||
|
||||
(setq doom-localleader-key ",")
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
;;; 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.
|
||||
;; Copy this file to ~/.doom.d/init.el or ~/.config/doom/init.el ('doom install'
|
||||
;; 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.
|
||||
|
@ -14,8 +14,7 @@
|
|||
|
||||
:completion
|
||||
(company ; the ultimate code completion backend.
|
||||
+childframe ; Use company-box.
|
||||
+tng) ; Compnay on tab.
|
||||
+childframe) ; Use company-box.
|
||||
(helm ; because sometimes I prefer what I know.
|
||||
+fuzzy) ; woh typse aynthing write teh first time.
|
||||
;;ido ; the other *other* search engine...
|
||||
|
@ -155,9 +154,9 @@
|
|||
;;vala ; GObjective-C
|
||||
|
||||
:email
|
||||
;;(mu4e +gmail) ; WIP
|
||||
;;notmuch ; WIP
|
||||
;;(wanderlust +gmail) ; WIP
|
||||
;;(mu4e +gmail)
|
||||
;;notmuch
|
||||
;;(wanderlust +gmail)
|
||||
|
||||
;; Applications are complex and opinionated modules that transform Emacs
|
||||
;; toward a specific purpose. They may have additional dependencies and
|
||||
|
|
|
@ -1,65 +1,47 @@
|
|||
SRC_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
||||
EMACSD := ~/.emacs.d
|
||||
FRAMEWORK := ${EMACS_FRAMEWORK}
|
||||
|
||||
# Doom Config
|
||||
DOOMD := ~/.doom.d
|
||||
DOOM_URL := https://github.com/hlissner/doom-emacs
|
||||
|
||||
# Spacemacs config
|
||||
SPACEMACSD := ~/.spacemacs.d
|
||||
SPACEMACS_URL := https://github.com/syl20bnr/spacemacs
|
||||
|
||||
|
||||
include ../lib/shared.mk
|
||||
|
||||
install: | init update
|
||||
|
||||
init:
|
||||
ifndef IS_SSH
|
||||
$(info Remote connection. Not installing emacs config.)
|
||||
else ifneq ($(call cmd_exist,emacs), true)
|
||||
$(info Emacs not installed )
|
||||
else ifeq ($(FRAMEWORK), doom)
|
||||
$(info => installing doom.)
|
||||
$(MAKE) -C $(SRC_DIR) doom_init
|
||||
$(mk_link) $(SRC_DIR)/doom.d $(DOOMD)
|
||||
$(report) header "emacs init"
|
||||
ifneq "$(call cmd_exist,emacs)" "true"
|
||||
$(report) quite "emacs not installed. Skipping install."
|
||||
else ifeq "$(IS_SSH)" "true"
|
||||
$(report) quite "This is a ssh connection. Skipping install."
|
||||
else
|
||||
$(info => installing spacemacs.)
|
||||
$(MAKE) -C $(SRC_DIR) spacemacs_init
|
||||
$(mk_link) $(SRC_DIR) $(SPACEMACSD)
|
||||
$(mk_link) $(SRC_DIR)/doom.d $(DOOMD)
|
||||
$(MAKE) -C $(SRC_DIR) doom_init
|
||||
endif
|
||||
|
||||
doom_init:
|
||||
ifeq ($(shell [ ! -e $(EMACSD) ] $(return_val_truthy) ), true)
|
||||
git clone $(DOOM_URL) $(EMACSD) ; $(report) "Doom installed"
|
||||
$(report) warn "Doom quickstart is about to start. This will take a minute" ; sleep 3
|
||||
~/.emacs.d/bin/doom --yes quickstart
|
||||
~/.emacs.d/bin/doom --yes compile ':core'
|
||||
else
|
||||
$(report) info "$(EMACSD) already exist. Skipping."
|
||||
endif
|
||||
|
||||
spacemacs_init:
|
||||
ifeq ($(shell [ ! -e $(EMACSD) ] $(return_val_truthy) ), true)
|
||||
git clone -b develop --single-branch $(SPACEMACS_URL) $(EMACSD) ; $(report) "Spacemacs installed"
|
||||
else
|
||||
$(report) info "$(EMACSD) already exist. Skipping."
|
||||
endif
|
||||
if [ ! -e $(EMACSD) ] ; then \
|
||||
git clone $(DOOM_URL) $(EMACSD) ;\
|
||||
~/.emacs.d/bin/doom --yes install ;\
|
||||
$(report) "doom install" ;\
|
||||
~/.emacs.d/bin/doom --yes compile ':core' ;\
|
||||
$(report) "doom core compile" ;\
|
||||
else ;\
|
||||
$(report) debug "emacsd already exists" ;\
|
||||
fi
|
||||
|
||||
update:
|
||||
ifeq ($(shell [ -e $(EMACSD) ] $(return_val_truthy) ), false)
|
||||
$(report) info "Emacs directory doesn't exist."
|
||||
else ifeq ($(FRAMEWORK), doom)
|
||||
~/.emacs.d/bin/doom --yes refresh
|
||||
$(report) info "Doom updated"
|
||||
else
|
||||
cd $(EMACSD) \
|
||||
&& git pull \
|
||||
; $(report) "Spacemacs updated"
|
||||
endif
|
||||
if [ -e $(EMACSD)/bin/doom ] ; then \
|
||||
~/.emacs.d/bin/doom --yes purge ;\
|
||||
$(report) info "doom purge" ;\
|
||||
~/.emacs.d/bin/doom --yes refresh ;\
|
||||
$(report) info "doom refresh" ;\
|
||||
else \
|
||||
$(report) debug "doom not setup, so not updating." ;\
|
||||
fi
|
||||
|
||||
remove:
|
||||
$(info => Removing Emacs config)
|
||||
@ $(rm_link) $(EMACSD)
|
||||
@ $(rm_link) $(SPACEMACSD)
|
||||
$(rm_link) $(EMACSD)
|
||||
|
|
|
@ -1,374 +0,0 @@
|
|||
;; -*- mode: emacs-lisp -*-
|
||||
;; This file is loaded by Spacemacs at startup.
|
||||
;; It must be stored in your home directory.
|
||||
|
||||
(defun dotspacemacs/layers ()
|
||||
"Configuration Layers declaration.
|
||||
You should not put any user code in this function besides modifying the variable
|
||||
values."
|
||||
(setq-default
|
||||
;; Base distribution to use. This is a layer contained in the directory
|
||||
;; `+distribution'. For now available distributions are `spacemacs-base'
|
||||
;; or `spacemacs'. (default 'spacemacs)
|
||||
dotspacemacs-distribution 'spacemacs
|
||||
;; Lazy installation of layers (i.e. layers are installed only when a file
|
||||
;; with a supported type is opened). Possible values are `all', `unused'
|
||||
;; and `nil'. `unused' will lazy install only unused layers (i.e. layers
|
||||
;; not listed in variable `dotspacemacs-configuration-layers'), `all' will
|
||||
;; lazy install any layer that support lazy installation even the layers
|
||||
;; listed in `dotspacemacs-configuration-layers'. `nil' disable the lazy
|
||||
;; installation feature and you have to explicitly list a layer in the
|
||||
;; variable `dotspacemacs-configuration-layers' to install it.
|
||||
;; (default 'unused)
|
||||
dotspacemacs-enable-lazy-installation 'unused
|
||||
;; If non-nil then Spacemacs will ask for confirmation before installing
|
||||
;; a layer lazily. (default t)
|
||||
dotspacemacs-ask-for-lazy-installation t
|
||||
;; If non-nil layers with lazy install support are lazy installed.
|
||||
;; List of additional paths where to look for configuration layers.
|
||||
;; Paths must have a trailing slash (i.e. `~/.mycontribs/')
|
||||
dotspacemacs-configuration-layer-path '()
|
||||
;; List of configuration layers to load.
|
||||
dotspacemacs-configuration-layers
|
||||
'(
|
||||
auto-completion
|
||||
colors
|
||||
dash
|
||||
deft
|
||||
emacs-lisp
|
||||
evil-cleverparens
|
||||
evil-snipe
|
||||
git
|
||||
go
|
||||
helm
|
||||
javascript
|
||||
markdown
|
||||
markdown
|
||||
org
|
||||
python
|
||||
ruby
|
||||
ruby-on-rails
|
||||
shell
|
||||
spell-checking
|
||||
sql
|
||||
syntax-checking
|
||||
)
|
||||
|
||||
;; List of additional packages that will be installed without being
|
||||
;; wrapped in a layer. If you need some configuration for these
|
||||
;; packages, then consider creating a layer. You can also put the
|
||||
;; configuration in `dotspacemacs/user-config'.
|
||||
dotspacemacs-additional-packages '(minitest
|
||||
all-the-icons
|
||||
)
|
||||
;; A list of packages that cannot be updated.
|
||||
dotspacemacs-frozen-packages '()
|
||||
;; A list of packages that will not be installed and loaded.
|
||||
dotspacemacs-excluded-packages '()
|
||||
;; Defines the behaviour of Spacemacs when installing packages.
|
||||
;; Possible values are `used-only', `used-but-keep-unused' and `all'.
|
||||
;; `used-only' installs only explicitly used packages and uninstall any
|
||||
;; unused packages as well as their unused dependencies.
|
||||
;; `used-but-keep-unused' installs only the used packages but won't uninstall
|
||||
;; them if they become unused. `all' installs *all* packages supported by
|
||||
;; Spacemacs and never uninstall them. (default is `used-only')
|
||||
dotspacemacs-install-packages 'used-only))
|
||||
|
||||
(defun dotspacemacs/init ()
|
||||
"Initialization function.
|
||||
This function is called at the very startup of Spacemacs initialization
|
||||
before layers configuration.
|
||||
You should not put any user code in there besides modifying the variable
|
||||
values."
|
||||
;; This setq-default sexp is an exhaustive list of all the supported
|
||||
;; spacemacs settings.
|
||||
(setq-default
|
||||
;; If non nil ELPA repositories are contacted via HTTPS whenever it's
|
||||
;; possible. Set it to nil if you have no way to use HTTPS in your
|
||||
;; environment, otherwise it is strongly recommended to let it set to t.
|
||||
;; This variable has no effect if Emacs is launched with the parameter
|
||||
;; `--insecure' which forces the value of this variable to nil.
|
||||
;; (default t)
|
||||
dotspacemacs-elpa-https t
|
||||
;; Maximum allowed time in seconds to contact an ELPA repository.
|
||||
dotspacemacs-elpa-timeout 5
|
||||
;; If non nil then spacemacs will check for updates at startup
|
||||
;; when the current branch is not `develop'. Note that checking for
|
||||
;; new versions works via git commands, thus it calls GitHub services
|
||||
;; whenever you start Emacs. (default nil)
|
||||
dotspacemacs-check-for-update t
|
||||
;; If non-nil, a form that evaluates to a package directory. For example, to
|
||||
;; use different package directories for different Emacs versions, set this
|
||||
;; to `emacs-version'.
|
||||
dotspacemacs-elpa-subdirectory nil
|
||||
;; One of `vim', `emacs' or `hybrid'.
|
||||
;; `hybrid' is like `vim' except that `insert state' is replaced by the
|
||||
;; `hybrid state' with `emacs' key bindings. The value can also be a list
|
||||
;; with `:variables' keyword (similar to layers). Check the editing styles
|
||||
;; section of the documentation for details on available variables.
|
||||
;; (default 'vim)
|
||||
dotspacemacs-editing-style 'vim
|
||||
;; If non nil output loading progress in `*Messages*' buffer. (default nil)
|
||||
dotspacemacs-verbose-loading nil
|
||||
;; Specify the startup banner. Default value is `official', it displays
|
||||
;; the official spacemacs logo. An integer value is the index of text
|
||||
;; banner, `random' chooses a random text banner in `core/banners'
|
||||
;; directory. A string value must be a path to an image format supported
|
||||
;; by your Emacs build.
|
||||
;; If the value is nil then no banner is displayed. (default 'official)
|
||||
dotspacemacs-startup-banner 'official
|
||||
;; List of items to show in startup buffer or an association list of
|
||||
;; the form `(list-type . list-size)`. If nil then it is disabled.
|
||||
;; Possible values for list-type are:
|
||||
;; `recents' `bookmarks' `projects' `agenda' `todos'."
|
||||
;; List sizes may be nil, in which case
|
||||
;; `spacemacs-buffer-startup-lists-length' takes effect.
|
||||
dotspacemacs-startup-lists '((recents . 5)
|
||||
(projects . 7)
|
||||
(agenda . 5))
|
||||
;; True if the home buffer should respond to resize events.
|
||||
dotspacemacs-startup-buffer-responsive t
|
||||
;; Default major mode of the scratch buffer (default `text-mode')
|
||||
dotspacemacs-scratch-mode 'text-mode
|
||||
;; List of themes, the first of the list is loaded when spacemacs starts.
|
||||
;; Press <SPC> T n to cycle to the next theme in the list (works great
|
||||
;; with 2 themes variants, one dark and one light)
|
||||
dotspacemacs-themes '(doom-one
|
||||
spacemacs-dark
|
||||
spacemacs-light)
|
||||
;; If non nil the cursor color matches the state color in GUI Emacs.
|
||||
dotspacemacs-colorize-cursor-according-to-state t
|
||||
;; Default font, or prioritized list of fonts. `powerline-scale' allows to
|
||||
;; quickly tweak the mode-line size to make separators look not too crappy.
|
||||
dotspacemacs-default-font '("Fira Code"
|
||||
:size 15
|
||||
;;:size ,(if (= 1440 (display-pixel-height)) 15 10)
|
||||
:weight semi-light
|
||||
:width normal
|
||||
:powerline-scale 1.6)
|
||||
|
||||
;; The leader key
|
||||
dotspacemacs-leader-key "SPC"
|
||||
;; The key used for Emacs commands (M-x) (after pressing on the leader key).
|
||||
;; (default "SPC")
|
||||
dotspacemacs-emacs-command-key "SPC"
|
||||
;; The key used for Vim Ex commands (default ":")
|
||||
dotspacemacs-ex-command-key ":"
|
||||
;; The leader key accessible in `emacs state' and `insert state'
|
||||
;; (default "M-m")
|
||||
dotspacemacs-emacs-leader-key "M-m"
|
||||
;; Major mode leader key is a shortcut key which is the equivalent of
|
||||
;; pressing `<leader> m`. Set it to `nil` to disable it. (default ",")
|
||||
dotspacemacs-major-mode-leader-key ","
|
||||
;; Major mode leader key accessible in `emacs state' and `insert state'.
|
||||
;; (default "C-M-m")
|
||||
dotspacemacs-major-mode-emacs-leader-key "C-M-m"
|
||||
;; These variables control whether separate commands are bound in the GUI to
|
||||
;; the key pairs C-i, TAB and C-m, RET.
|
||||
;; Setting it to a non-nil value, allows for separate commands under <C-i>
|
||||
;; and TAB or <C-m> and RET.
|
||||
;; In the terminal, these pairs are generally indistinguishable, so this only
|
||||
;; works in the GUI. (default nil)
|
||||
dotspacemacs-distinguish-gui-tab 1
|
||||
;; If non nil `Y' is remapped to `y$' in Evil states. (default nil)
|
||||
dotspacemacs-remap-Y-to-y$ nil
|
||||
;; If non-nil, the shift mappings `<' and `>' retain visual state if used
|
||||
;; there. (default t)
|
||||
dotspacemacs-retain-visual-state-on-shift t
|
||||
;; If non-nil, J and K move lines up and down when in visual mode.
|
||||
;; (default nil)
|
||||
dotspacemacs-visual-line-move-text nil
|
||||
;; If non nil, inverse the meaning of `g' in `:substitute' Evil ex-command.
|
||||
;; (default nil)
|
||||
dotspacemacs-ex-substitute-global nil
|
||||
;; Name of the default layout (default "Default")
|
||||
dotspacemacs-default-layout-name "Default"
|
||||
;; If non nil the default layout name is displayed in the mode-line.
|
||||
;; (default nil)
|
||||
dotspacemacs-display-default-layout nil
|
||||
;; If non nil then the last auto saved layouts are resume automatically upon
|
||||
;; start. (default nil)
|
||||
dotspacemacs-auto-resume-layouts nil
|
||||
;; Size (in MB) above which spacemacs will prompt to open the large file
|
||||
;; literally to avoid performance issues. Opening a file literally means that
|
||||
;; no major mode or minor modes are active. (default is 1)
|
||||
dotspacemacs-large-file-size 1
|
||||
;; Location where to auto-save files. Possible values are `original' to
|
||||
;; auto-save the file in-place, `cache' to auto-save the file to another
|
||||
;; file stored in the cache directory and `nil' to disable auto-saving.
|
||||
;; (default 'cache)
|
||||
dotspacemacs-auto-save-file-location 'cache
|
||||
;; Maximum number of rollback slots to keep in the cache. (default 5)
|
||||
dotspacemacs-max-rollback-slots 5
|
||||
;; If non nil, `helm' will try to minimize the space it uses. (default nil)
|
||||
dotspacemacs-helm-resize nil
|
||||
;; if non nil, the helm header is hidden when there is only one source.
|
||||
;; (default nil)
|
||||
dotspacemacs-helm-no-header nil
|
||||
;; define the position to display `helm', options are `bottom', `top',
|
||||
;; `left', or `right'. (default 'bottom)
|
||||
dotspacemacs-helm-position 'bottom
|
||||
;; Controls fuzzy matching in helm. If set to `always', force fuzzy matching
|
||||
;; in all non-asynchronous sources. If set to `source', preserve individual
|
||||
;; source settings. Else, disable fuzzy matching in all sources.
|
||||
;; (default 'always)
|
||||
dotspacemacs-helm-use-fuzzy 'always
|
||||
;; If non nil the paste micro-state is enabled. When enabled pressing `p`
|
||||
;; several times cycle between the kill ring content. (default nil)
|
||||
dotspacemacs-enable-paste-transient-state nil
|
||||
;; Which-key delay in seconds. The which-key buffer is the popup listing
|
||||
;; the commands bound to the current keystroke sequence. (default 0.4)
|
||||
dotspacemacs-which-key-delay 0.4
|
||||
;; Which-key frame position. Possible values are `right', `bottom' and
|
||||
;; `right-then-bottom'. right-then-bottom tries to display the frame to the
|
||||
;; right; if there is insufficient space it displays it at the bottom.
|
||||
;; (default 'bottom)
|
||||
dotspacemacs-which-key-position 'bottom
|
||||
;; If non nil a progress bar is displayed when spacemacs is loading. This
|
||||
;; may increase the boot time on some systems and emacs builds, set it to
|
||||
;; nil to boost the loading time. (default t)
|
||||
dotspacemacs-loading-progress-bar t
|
||||
;; If non nil the frame is fullscreen when Emacs starts up. (default nil)
|
||||
;; (Emacs 24.4+ only)
|
||||
dotspacemacs-fullscreen-at-startup nil
|
||||
;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen.
|
||||
;; Use to disable fullscreen animations in OSX. (default nil)
|
||||
dotspacemacs-fullscreen-use-non-native nil
|
||||
;; If non nil the frame is maximized when Emacs starts up.
|
||||
;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil.
|
||||
;; (default nil) (Emacs 24.4+ only)
|
||||
dotspacemacs-maximized-at-startup nil
|
||||
;; A value from the range (0..100), in increasing opacity, which describes
|
||||
;; the transparency level of a frame when it's active or selected.
|
||||
;; Transparency can be toggled through `toggle-transparency'. (default 90)
|
||||
dotspacemacs-active-transparency 90
|
||||
;; A value from the range (0..100), in increasing opacity, which describes
|
||||
;; the transparency level of a frame when it's inactive or deselected.
|
||||
;; Transparency can be toggled through `toggle-transparency'. (default 90)
|
||||
dotspacemacs-inactive-transparency 90
|
||||
;; If non nil show the titles of transient states. (default t)
|
||||
dotspacemacs-show-transient-state-title t
|
||||
;; If non nil show the color guide hint for transient state keys. (default t)
|
||||
dotspacemacs-show-transient-state-color-guide t
|
||||
;; If non nil unicode symbols are displayed in the mode line. (default t)
|
||||
dotspacemacs-mode-line-unicode-symbols t
|
||||
;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth
|
||||
;; scrolling overrides the default behavior of Emacs which recenters point
|
||||
;; when it reaches the top or bottom of the screen. (default t)
|
||||
dotspacemacs-smooth-scrolling t
|
||||
;; Control line numbers activation.
|
||||
;; If set to `t' or `relative' line numbers are turned on in all `prog-mode' and
|
||||
;; `text-mode' derivatives. If set to `relative', line numbers are relative.
|
||||
;; This variable can also be set to a property list for finer control:
|
||||
;; '(:relative nil
|
||||
;; :disabled-for-modes dired-mode
|
||||
;; doc-view-mode
|
||||
;; markdown-mode
|
||||
;; org-mode
|
||||
;; pdf-view-mode
|
||||
;; text-mode
|
||||
;; :size-limit-kb 1000)
|
||||
;; (default nil)
|
||||
dotspacemacs-line-numbers t
|
||||
;; Code folding method. Possible values are `evil' and `origami'.
|
||||
;; (default 'evil)
|
||||
dotspacemacs-folding-method 'origami
|
||||
;; If non-nil smartparens-strict-mode will be enabled in programming modes.
|
||||
;; (default nil)
|
||||
dotspacemacs-smartparens-strict-mode nil
|
||||
;; If non-nil pressing the closing parenthesis `)' key in insert mode passes
|
||||
;; over any automatically added closing parenthesis, bracket, quote, etc…
|
||||
;; This can be temporary disabled by pressing `C-q' before `)'. (default nil)
|
||||
dotspacemacs-smart-closing-parenthesis nil
|
||||
;; Select a scope to highlight delimiters. Possible values are `any',
|
||||
;; `current', `all' or `nil'. Default is `all' (highlight any scope and
|
||||
;; emphasis the current one). (default 'all)
|
||||
dotspacemacs-highlight-delimiters 'all
|
||||
;; If non nil, advise quit functions to keep server open when quitting.
|
||||
;; (default nil)
|
||||
dotspacemacs-persistent-server t
|
||||
;; List of search tool executable names. Spacemacs uses the first installed
|
||||
;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'.
|
||||
;; (default '("ag" "pt" "ack" "grep"))
|
||||
dotspacemacs-search-tools '("ag" "pt" "ack" "grep")
|
||||
;; The default package repository used if no explicit repository has been
|
||||
;; specified with an installed package.
|
||||
;; Not used for now. (default nil)
|
||||
dotspacemacs-default-package-repository nil
|
||||
;; Delete whitespace while saving buffer. Possible values are `all'
|
||||
;; to aggressively delete empty line and long sequences of whitespace,
|
||||
;; `trailing' to delete only the whitespace at end of lines, `changed'to
|
||||
;; delete only whitespace for changed lines or `nil' to disable cleanup.
|
||||
;; (default nil)
|
||||
dotspacemacs-whitespace-cleanup 'changed
|
||||
|
||||
)
|
||||
|
||||
|
||||
(defun dotspacemacs/user-init ()
|
||||
"Initialization function for user code.
|
||||
It is called immediately after `dotspacemacs/init', before layer configuration
|
||||
executes.
|
||||
This function is mostly useful for variables that need to be set
|
||||
before packages are loaded. If you are unsure, you should try in setting them in
|
||||
`dotspacemacs/user-config' first."
|
||||
;; Define Custom File.
|
||||
(setq custom-file
|
||||
(expand-file-name "custom.el" dotspacemacs-directory)
|
||||
)
|
||||
|
||||
;; Load Custom user-init.el file.
|
||||
(when (file-readable-p (expand-file-name "user-init.el" dotspacemacs-directory))
|
||||
(load-file (expand-file-name "user-init.el" dotspacemacs-directory))
|
||||
)
|
||||
)
|
||||
|
||||
(defun dotspacemacs/user-config ()
|
||||
"Configuration function for user code.
|
||||
This function is called at the very end of Spacemacs initialization after
|
||||
layers configuration.
|
||||
This is the place where most of your configurations should be done. Unless it is
|
||||
explicitly specified that a variable should be set before a package is loaded,
|
||||
you should place your code here."
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; UI
|
||||
;; Use Slant
|
||||
(setq powerline-default-separator 'slant)
|
||||
;; Neotree: Enable Icons
|
||||
(setq neo-theme 'icons)
|
||||
;; Setting the theme the cursor and colors for stuff
|
||||
(setq spacemacs-evil-cursors '(("normal" "#51afef" box)
|
||||
("insert" "chartreuse3" (bar . 2))
|
||||
("emacs" "SkyBlue3" box)
|
||||
("hybrid" "SkyBlue2" (bar . 2))
|
||||
("replace" "#d42a15" (hbar . 2))
|
||||
("evilified" "LightGoldenrod3" box)
|
||||
("visual" "gray" (hbar . 2))
|
||||
("motion" "plum3" box)
|
||||
("lisp" "HotPink1" box)
|
||||
("iedit" "firebrick1" box)
|
||||
("iedit-insert" "firebrick1" (bar . 2)))
|
||||
)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ORGMODE
|
||||
;; Define the orgmode directory explicitly
|
||||
(custom-set-variables
|
||||
'(org-directory "~/org"))
|
||||
;; Orgmode-downlaod: sane defaults dir
|
||||
(setq-default org-download-image-dir "~/org/resources/")
|
||||
;; Enable word wrap
|
||||
(add-hook 'org-mode-hook #'visual-line-mode)
|
||||
;; Orgmode: Enable md export
|
||||
(eval-after-load "org" '(require 'ox-md nil t))
|
||||
;; Deft: Set path to Org-mope Directory
|
||||
(setq deft-directory "~/org/")
|
||||
|
||||
|
||||
;; Load Custom user-config.el file.
|
||||
(when (file-readable-p (expand-file-name "user-config.el" dotspacemacs-directory))
|
||||
(load-file (expand-file-name "user-config.el" dotspacemacs-directory))
|
||||
)
|
||||
)
|
||||
|
||||
)
|
|
@ -1,17 +1,34 @@
|
|||
#! env zsh
|
||||
# -*- sh -*-
|
||||
|
||||
REPORT=`dirname $0`/report
|
||||
REPORT="`dirname $0`/report"
|
||||
|
||||
if [ -z "$1" ] || [ -z "$2" ] ; then
|
||||
$REPORT error "ERROR: Both to and from string must be defined.\n source: $1 \n symlnk: $2"
|
||||
exit
|
||||
"$REPORT" error "ERROR: Both to and from string must be defined.\n source: $1 \n symlnk: $2"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [[ -h $2 ]] ; then
|
||||
link_location=$(readlink $2)
|
||||
if [[ "$1" == "$link_location" ]] ; then
|
||||
"$REPORT" info "symlink already installed $1"
|
||||
exit 0
|
||||
else
|
||||
"$REPORT" warn "symlink already exist, buut doesn't point to the src"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -e $2 ]] ; then
|
||||
$REPORT warn "$2 already exist. Skipping."
|
||||
exit
|
||||
"$REPORT" warn "Something already exists at $2."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
$REPORT info "Symlinked `ln -svf $1 $2`"
|
||||
parent=$(dirname "$2")
|
||||
if [[ ! -e $parent ]] ; then
|
||||
"$REPORT" warn "$parent doesn't exist. Creating."
|
||||
mkdir -p $parent
|
||||
fi
|
||||
|
||||
"$REPORT" info "Symlinked `ln -svf $1 $2`"
|
||||
|
||||
|
|
|
@ -3,13 +3,17 @@
|
|||
R='\033[0;31m'
|
||||
Y='\033[0;33m'
|
||||
G='\033[0;32m'
|
||||
MUTED='\033[0;37m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
format(){
|
||||
case $1 in
|
||||
"error") echo -e "$R ✘ $2$NC";;
|
||||
"warn") echo -e "$Y ⚠ $2$NC";;
|
||||
"info") echo -e "$G ✔ $2$NC";;
|
||||
"error") echo -e "$R ✘ $2$NC";;
|
||||
"warn") echo -e "$Y ⚠ $2$NC";;
|
||||
"info") echo -e "$G ✔ $2$NC";;
|
||||
"quite") echo -e "$MUTED כֿ $2$NC";;
|
||||
"debug") [ -v verbose ] && echo -e "$MUTED כֿ $2$NC" || true ;;
|
||||
"header") echo -e "=> $2";;
|
||||
*) echo -e "$1: $2";;
|
||||
esac
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@ LIB_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
|||
mk_link := $(LIB_DIR)/helper/mk_link
|
||||
rm_link := $(LIB_DIR)/helper/rm_link
|
||||
report := LAST_RETURN=$$? $(LIB_DIR)/helper/report
|
||||
|
||||
return_val_truthy := && echo true || echo false
|
||||
cmd_exist = $(shell (($$+commands[$1])) $(return_val_truthy) )
|
||||
|
||||
|
@ -27,7 +28,7 @@ endif
|
|||
IS_MAC?=false
|
||||
IS_LINUX?=false
|
||||
|
||||
IS_SSH=${SSH_TTY}
|
||||
IS_SSH=$(shell [ ! -z $$SSH_TTY ] $(return_val_truthy) )
|
||||
|
||||
# TURN THIS OFF FOR DEBUGGING
|
||||
MAKEFLAGS += --silent
|
||||
|
|
|
@ -26,10 +26,10 @@ remove:
|
|||
$(report) warn "NOTE: All prior keys still remain."
|
||||
|
||||
init_jpatrick_key:
|
||||
ifeq ($(shell [ ! -e $(JPATRIC_KEY) ] $(return_val_truthy) ), true)
|
||||
ifeq ($(shell [ ! -e $(JPATRICK_KEY) ] $(return_val_truthy) ), true)
|
||||
$(report) info "Setting up key for jpatrick.io"
|
||||
ssh-keygen -t ed25519 -C "`hostname`: `date`" -f $(JPATRICK_KEY) -N "" \
|
||||
; report info "jpatrick.io key created"
|
||||
; $(report) info "jpatrick.io key created"
|
||||
else
|
||||
$(report) warn "Key for jpatrick.io already created"
|
||||
endif
|
||||
|
|
1
ssh/public_keys/wok/git.jpatrick.io.pub
Normal file
1
ssh/public_keys/wok/git.jpatrick.io.pub
Normal file
|
@ -0,0 +1 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAaWSYsIOQbhvoeh4i+y5LtuiL7QuTCglbRtQUqfMql9 wok: Thu Dec 12 21:31:05 EST 2019
|
1
ssh/public_keys/wok/id_ed25519.pub
Normal file
1
ssh/public_keys/wok/id_ed25519.pub
Normal file
|
@ -0,0 +1 @@
|
|||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHr0yxRbxeWwnkT4aBD2tYwnh0V+ghc0vLccgvy5mUW/ wok: Fri Dec 13 16:43:09 EST 2019
|
|
@ -7,6 +7,7 @@ include ../lib/shared.mk
|
|||
install: | init update
|
||||
|
||||
init:
|
||||
$(info => tmux init)
|
||||
ifeq ($(call cmd_exist,tmux), true)
|
||||
$(info => Setting up tmux)
|
||||
$(mk_link) $(SOURCE) $(TARGET)
|
||||
|
@ -18,4 +19,4 @@ update:
|
|||
|
||||
remove:
|
||||
$(info => Remvoing tmux config)
|
||||
@ $(rm_link) $(TARGET)
|
||||
$(rm_link) $(TARGET)
|
||||
|
|
|
@ -1,24 +1,28 @@
|
|||
SRC := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
||||
SRC_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
||||
|
||||
include ../lib/shared.mk
|
||||
TARGET := $(XDG_DIR)/tridactyl
|
||||
RC_TARGET := $(XDG_DIR)/tridactyl
|
||||
SCRIPTS_TARGET := ~/.local/share/tridactyl/scripts
|
||||
|
||||
|
||||
install: | init update
|
||||
|
||||
init:
|
||||
ifeq ($(shell $(call cmd_exist,firefox) || $(IS_MAC) ; echo $$? ), 0)
|
||||
$(info => Setting up Tridacyl)
|
||||
$(mk_link) $(SRC) $(TARGET)
|
||||
$(mk_link) $(SRC)/scripts $(SCRIPTS_TARGET)
|
||||
$(info => setting up Tridaycl)
|
||||
ifeq "$(IS_MAC)" "true"
|
||||
$(MAKE) -C $(SRC_DIR) setup
|
||||
else ifeq "$(call cmd_exist,firefox)" "true"
|
||||
$(MAKE) -C $(SRC_DIR) setup
|
||||
else
|
||||
$(report) warn "This doesn't seem to be an env for Tridactyl. Skipping."
|
||||
endif
|
||||
|
||||
setup:
|
||||
$(mk_link) $(SRC_DIR) $(RC_TARGET)
|
||||
$(mk_link) $(SRC_DIR)/scripts $(SCRIPTS_TARGET)
|
||||
|
||||
update:
|
||||
|
||||
remove:
|
||||
$(info => Remvoing tridactyl )
|
||||
$(rm_link) $(TARGET)
|
||||
$(rm_link) $(RC_TARGET)
|
||||
$(rm_link) $(SCRIPTS_TARGET)
|
||||
|
|
|
@ -129,19 +129,20 @@
|
|||
|
||||
.TridactylStatusIndicator {
|
||||
background: var(--tridactyl-bg) !important;
|
||||
border: 1px var(--base0B) solid !important;
|
||||
border: 1px var(--tridactyl-bg) solid !important;
|
||||
color: var(--base0B);
|
||||
border: unset !important;
|
||||
bottom: 0 !important;
|
||||
font-size: 12pt !important;
|
||||
font-size: 10pt !important;
|
||||
padding: 0.8ex !important;
|
||||
position: fixed !important;
|
||||
}
|
||||
|
||||
/* /\* #Ocean-normal { *\/ */
|
||||
/* /\* border-color: green !important; *\/ */
|
||||
/* /\* } *\/ */
|
||||
.TridactylModeignore{
|
||||
background: var(--base0A) !important;
|
||||
border: 1px var(--base0A) solid !important;
|
||||
color: var(--tridactyl-of-fg) !important;
|
||||
}
|
||||
|
||||
/* /\* #Ocean-insert { *\/ */
|
||||
/* /\* border-color: yellow !important; *\/ */
|
||||
/* /\* } *\/ */
|
||||
.TridactylModenormal{
|
||||
}
|
||||
|
|
|
@ -12,8 +12,8 @@ ifneq ($(call cmd_exist,vim), true)
|
|||
$(error Vim not installed)
|
||||
endif
|
||||
$(info => Setting up vim)
|
||||
@ $(mk_link) $(SRC_DIR) $(TARGET_DIR)
|
||||
@ $(mk_link) $(SRC_DIR)/vimrc ~/.vimrc
|
||||
$(mk_link) $(SRC_DIR) $(TARGET_DIR)
|
||||
$(mk_link) $(SRC_DIR)/vimrc ~/.vimrc
|
||||
|
||||
update:
|
||||
ifneq ($(call cmd_exist,vim), true)
|
||||
|
@ -25,5 +25,5 @@ endif
|
|||
|
||||
remove:
|
||||
$(info => Removing vim config)
|
||||
@ $(rm_link) ~/.vimrc
|
||||
@ $(rm_link) $(TARGET_DIR)
|
||||
$(rm_link) ~/.vimrc
|
||||
$(rm_link) $(TARGET_DIR)
|
||||
|
|
|
@ -23,6 +23,6 @@ endif
|
|||
|
||||
remove:
|
||||
$(info => Removing waybar)
|
||||
@ $(rm_link) $(TARGET)
|
||||
$(rm_link) $(TARGET)
|
||||
|
||||
.PHONY: install update init remove
|
||||
|
|
|
@ -2,6 +2,5 @@ GOLANG_PATH="/usr/lib/go/bin"
|
|||
|
||||
export GOPATH="$HOME/src/go"
|
||||
export PATH="$GOPATH/bin/:$GOLANG_PATH:$PATH"
|
||||
export EMACS_FRAMEWORK="doom"
|
||||
|
||||
# vim: syn=zsh
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# ls shortcuts.
|
||||
if [[ $OS_TYPE = darwin* ]] ; then
|
||||
if [[ $OSTYPE = darwin* ]] ; then
|
||||
color_flag="-G"
|
||||
else
|
||||
color_flag="--color"
|
||||
|
|
58
zsh/modules/prompt/uncommon.zsh
Executable file
58
zsh/modules/prompt/uncommon.zsh
Executable file
|
@ -0,0 +1,58 @@
|
|||
autoload -U colors \
|
||||
&& colors
|
||||
|
||||
_UNCOMMON_COLOR_CURRENT_DIR=blue
|
||||
_UNCOMMON_COLOR_RETURN_TRUE=yellow
|
||||
_UNCOMMON_COLOR_RETURN_FALSE=red
|
||||
_UNCOMMON_COLOR_BG_JOBS=yellow
|
||||
_UNCOMMON_PROMPT_SYMBOL=${_UNCOMMON_PROMPT_SYMBOL:-'❯'}
|
||||
|
||||
if [ -z "$_UNCOMMON_HOSTNAME_COLOR" ] ; then
|
||||
if [ -z "$_UNCOMMON_PROMPT_COLORS" ] ; then
|
||||
_UNCOMMON_PROMPT_COLORS=(
|
||||
$fg[blue]
|
||||
$fg[cyan]
|
||||
$fg[green]
|
||||
$fg[magenta]
|
||||
$fg[red]
|
||||
$fg[white]
|
||||
$fg[yellow]
|
||||
)
|
||||
fi
|
||||
|
||||
local DETERMINISTIC_INT=$(( $(hostname | cksum | sed 's/[^0-9]*//g') % ${#_UNCOMMON_PROMPT_COLORS[@]} ))
|
||||
export _UNCOMMON_HOSTNAME_COLOR=${_UNCOMMON_PROMPT_COLORS[$DETERMINISTIC_INT]}
|
||||
fi
|
||||
|
||||
PROMPT='$(_uncommon_host)$(_uncommon_current_dir)$(_uncommon_return_status)'
|
||||
RPROMPT='$(_uncommon_time)'
|
||||
|
||||
_uncommon_host(){
|
||||
if [[ -n $SSH_CONNECTION ]]; then
|
||||
me="%n@%m"
|
||||
elif [[ "$LOGNAME" != "$USER" ]]; then
|
||||
me="%n"
|
||||
fi
|
||||
|
||||
if [[ -n $me ]]; then
|
||||
echo "%{${_UNCOMMON_HOSTNAME_COLOR}%}$me%{$reset_color%}:"
|
||||
fi
|
||||
}
|
||||
|
||||
_uncommon_current_dir(){
|
||||
echo -n "%{$fg[$_UNCOMMON_COLOR_CURRENT_DIR]%}%c "
|
||||
}
|
||||
|
||||
_uncommon_return_status() {
|
||||
echo -n "%(?.%F{$_UNCOMMON_COLOR_RETURN_TRUE}.%F{$_UNCOMMON_COLOR_RETURN_FALSE})$_UNCOMMON_PROMPT_SYMBOL%f "
|
||||
}
|
||||
|
||||
_uncommon_bg_jobs() {
|
||||
bg_status="%{$fg[$_UNCOMMON_COLOR_BG_JOBS]%}%(1j.↓%j .)"
|
||||
echo -n $bg_status
|
||||
}
|
||||
|
||||
_uncommon_time(){
|
||||
echo "%F{red} %D{%L:%M:%S}%r%f"
|
||||
}
|
||||
|
31
zsh/zplug
31
zsh/zplug
|
@ -12,8 +12,10 @@ zplug "zdharma/zsh-diff-so-fancy", \
|
|||
use:"bin/{git-dsf,diff-so-fancy}"
|
||||
|
||||
zplug "${ZDIR}/modules/bin/", \
|
||||
from:local, \
|
||||
as:command, \
|
||||
use:"*"
|
||||
|
||||
zplug "zdharma/fast-syntax-highlighting", \
|
||||
as:plugin, \
|
||||
defer:2
|
||||
|
@ -38,20 +40,6 @@ zplug "junegunn/fzf", \
|
|||
use:"shell/*.zsh", \
|
||||
defer:2
|
||||
|
||||
zplug "junegunn/fzf-bin", \
|
||||
from:gh-r, \
|
||||
as:command, \
|
||||
rename-to:fzf
|
||||
|
||||
zplug "zdharma/zsh-diff-so-fancy", \
|
||||
as:command, \
|
||||
use:"bin/{git-dsf,diff-so-fancy}"
|
||||
|
||||
zplug "${ZDIR}/modules/bin/", \
|
||||
from:local, \
|
||||
as:command, \
|
||||
use:"*"
|
||||
|
||||
zplug "${ZDIR}/modules/history/", \
|
||||
from:local, \
|
||||
as:plugin
|
||||
|
@ -72,10 +60,17 @@ zplug "${ZDIR}/modules/alias/", \
|
|||
from:local, \
|
||||
as:plugin
|
||||
|
||||
zplug "denysdovhan/spaceship-prompt", \
|
||||
use:spaceship.zsh, \
|
||||
from:github, \
|
||||
as:theme
|
||||
if [ -z "$SSH_CONNECTION" ] ; then
|
||||
zplug "${ZDIR}/modules/prompt/",\
|
||||
from:local,\
|
||||
use:uncommon.zsh, \
|
||||
as:theme
|
||||
else
|
||||
zplug "denysdovhan/spaceship-prompt", \
|
||||
use:spaceship.zsh, \
|
||||
from:github, \
|
||||
as:theme
|
||||
fi
|
||||
|
||||
env_loader zplug
|
||||
|
||||
|
|
|
@ -74,15 +74,15 @@ env_loader(){
|
|||
|
||||
user_script_dir=~/.scripts
|
||||
if [ -d $user_script_dir ] ; then
|
||||
PATH="$user_script_dir:$PATH"
|
||||
export PATH="$user_script_dir:$PATH"
|
||||
fi
|
||||
|
||||
env_loader zshenv
|
||||
|
||||
if [ "$EMACS_FRAMEWORK" = 'doom' ] ; then
|
||||
if [ -d ~/.emacs.d/bin/ ] ; then
|
||||
DOOM_BIN="$HOME/.emacs.d/bin"
|
||||
export PATH="$DOOM_BIN:$PATH"
|
||||
fi
|
||||
|
||||
env_loader zshenv
|
||||
|
||||
# Dedup path.
|
||||
typeset -gU path
|
||||
|
|
Loading…
Reference in New Issue
Block a user