From 68d8a76218a08261a27827a687328dc97ab4d46b Mon Sep 17 00:00:00 2001 From: Catalin Manolescu Date: Mon, 27 Jun 2022 22:18:31 +0300 Subject: [PATCH] update config; add modules --- .gitmodules | 247 +++++++++++++-- .install.conf.yaml | 12 +- emacs | 11 + emacs.d/.gitignore | 2 + emacs.d/early-init.el | 1 + emacs.d/init.el | 10 + emacs.d/lisp/personal/functions.el | 6 + emacs.d/lisp/personal/packages.el | 220 +++++++++++++ emacs.d/lisp/personal/settings.el | 32 ++ emacs.d/lisp/personal/theme.el | 9 + emacs.d/vendor/PG | 1 + emacs.d/vendor/auto-compile | 1 + emacs.d/vendor/avy | 1 + emacs.d/vendor/company-coq | 1 + emacs.d/vendor/company-math | 1 + emacs.d/vendor/company-mode | 1 + emacs.d/vendor/dash.el | 1 + emacs.d/vendor/editorconfig-emacs | 1 + emacs.d/vendor/emacs-color-theme-solarized | 1 + emacs.d/vendor/emacs-neotree | 1 + emacs.d/vendor/evil | 1 + emacs.d/vendor/evil-easymotion | 1 + emacs.d/vendor/evil-surround | 1 + emacs.d/vendor/fiplr | 1 + emacs.d/vendor/goto-chg | 1 + emacs.d/vendor/grizzl | 1 + emacs.d/vendor/linum-relative | 1 + emacs.d/vendor/math-symbol-lists | 1 + emacs.d/vendor/packed | 1 + emacs.d/vendor/pos-tip | 1 + emacs.d/vendor/racket-mode | 1 + emacs.d/vendor/use-package | 1 + emacs.d/vendor/yasnippet | 1 + gpg.conf | 4 +- irssi/config | 135 ++++++++ irssi/default.theme | 294 ++++++++++++++++++ irssi/scripts/autorun/boot.pl | 1 + irssi/scripts/autorun/smartfilter.pl | 1 + irssi/scripts/boot.pl | 63 ++++ irssi/scripts/vendor/irssi-smartfilter | 1 + jupyter/jupyter_notebook_config.py | 1 + jupyter/nbextensions/jupyter-vim-binding | 1 + jupyter/notebook.json | 10 + pythonrc | 2 + shell/aliases.sh | 29 ++ shell/dircolors.extra | 2 + shell/external.sh | 6 + vim/bundle/typescript-vim | 1 - vim/bundle/vim-coffee-script | 1 - vim/bundle/vim-javascript | 1 - vim/bundle/vim-less | 1 - vim/bundle/vim-markdown | 1 - vim/bundle/vim-pathogen | 1 - vim/bundle/vim-tmux | 1 - vim/pack/vendor/start/ack.vim | 1 + vim/pack/vendor/start/ctrlp.vim | 1 + vim/pack/vendor/start/editorconfig-vim | 1 + vim/pack/vendor/start/gist-vim | 1 + vim/pack/vendor/start/gundo.vim | 1 + vim/pack/vendor/start/haskell-vim | 1 + .../vendor/start/incsearch-easymotion.vim | 1 + vim/pack/vendor/start/incsearch.vim | 1 + vim/pack/vendor/start/lightline.vim | 1 + vim/pack/vendor/start/nerdcommenter | 1 + vim/pack/vendor/start/nerdtree | 1 + vim/pack/vendor/start/rust.vim | 1 + vim/pack/vendor/start/smarty.vim | 1 + vim/pack/vendor/start/supertab | 1 + vim/pack/vendor/start/syntastic | 1 + vim/pack/vendor/start/vim-argwrap | 1 + vim/pack/vendor/start/vim-buffergator | 1 + vim/pack/vendor/start/vim-bundler | 1 + vim/pack/vendor/start/vim-coffee-script | 1 + .../vendor/start}/vim-colors-solarized | 0 vim/pack/vendor/start/vim-easymotion | 1 + vim/pack/vendor/start/vim-fugitive | 1 + vim/pack/vendor/start/vim-git | 1 + vim/pack/vendor/start/vim-javascript | 1 + vim/pack/vendor/start/vim-js | 1 + vim/pack/vendor/start/vim-json | 1 + vim/pack/vendor/start/vim-jsx-pretty | 1 + vim/pack/vendor/start/vim-liquid | 1 + vim/pack/vendor/start/vim-markdown | 1 + vim/pack/vendor/start/vim-over | 1 + vim/pack/vendor/start/vim-racket | 1 + vim/pack/vendor/start/vim-scala | 1 + vim/pack/vendor/start/vim-signature | 1 + vim/pack/vendor/start/vim-smt2 | 1 + vim/pack/vendor/start/vim-solidity | 1 + vim/pack/vendor/start/vim-surround | 1 + vim/pack/vendor/start/vim-tmux | 1 + vim/pack/vendor/start/vim-toml | 1 + vim/pack/vendor/start/vim-vagrant | 1 + vim/pack/vendor/start/webapi-vim | 1 + vimrc | 66 ++-- 95 files changed, 1183 insertions(+), 52 deletions(-) create mode 100644 emacs create mode 100644 emacs.d/.gitignore create mode 100644 emacs.d/early-init.el create mode 100644 emacs.d/init.el create mode 100644 emacs.d/lisp/personal/functions.el create mode 100644 emacs.d/lisp/personal/packages.el create mode 100644 emacs.d/lisp/personal/settings.el create mode 100644 emacs.d/lisp/personal/theme.el create mode 160000 emacs.d/vendor/PG create mode 160000 emacs.d/vendor/auto-compile create mode 160000 emacs.d/vendor/avy create mode 160000 emacs.d/vendor/company-coq create mode 160000 emacs.d/vendor/company-math create mode 160000 emacs.d/vendor/company-mode create mode 160000 emacs.d/vendor/dash.el create mode 160000 emacs.d/vendor/editorconfig-emacs create mode 160000 emacs.d/vendor/emacs-color-theme-solarized create mode 160000 emacs.d/vendor/emacs-neotree create mode 160000 emacs.d/vendor/evil create mode 160000 emacs.d/vendor/evil-easymotion create mode 160000 emacs.d/vendor/evil-surround create mode 160000 emacs.d/vendor/fiplr create mode 160000 emacs.d/vendor/goto-chg create mode 160000 emacs.d/vendor/grizzl create mode 160000 emacs.d/vendor/linum-relative create mode 160000 emacs.d/vendor/math-symbol-lists create mode 160000 emacs.d/vendor/packed create mode 160000 emacs.d/vendor/pos-tip create mode 160000 emacs.d/vendor/racket-mode create mode 160000 emacs.d/vendor/use-package create mode 160000 emacs.d/vendor/yasnippet create mode 100644 irssi/config create mode 100644 irssi/default.theme create mode 120000 irssi/scripts/autorun/boot.pl create mode 120000 irssi/scripts/autorun/smartfilter.pl create mode 100644 irssi/scripts/boot.pl create mode 160000 irssi/scripts/vendor/irssi-smartfilter create mode 100644 jupyter/jupyter_notebook_config.py create mode 160000 jupyter/nbextensions/jupyter-vim-binding create mode 100644 jupyter/notebook.json create mode 100644 pythonrc delete mode 160000 vim/bundle/typescript-vim delete mode 160000 vim/bundle/vim-coffee-script delete mode 160000 vim/bundle/vim-javascript delete mode 160000 vim/bundle/vim-less delete mode 160000 vim/bundle/vim-markdown delete mode 160000 vim/bundle/vim-pathogen delete mode 160000 vim/bundle/vim-tmux create mode 160000 vim/pack/vendor/start/ack.vim create mode 160000 vim/pack/vendor/start/ctrlp.vim create mode 160000 vim/pack/vendor/start/editorconfig-vim create mode 160000 vim/pack/vendor/start/gist-vim create mode 160000 vim/pack/vendor/start/gundo.vim create mode 160000 vim/pack/vendor/start/haskell-vim create mode 160000 vim/pack/vendor/start/incsearch-easymotion.vim create mode 160000 vim/pack/vendor/start/incsearch.vim create mode 160000 vim/pack/vendor/start/lightline.vim create mode 160000 vim/pack/vendor/start/nerdcommenter create mode 160000 vim/pack/vendor/start/nerdtree create mode 160000 vim/pack/vendor/start/rust.vim create mode 160000 vim/pack/vendor/start/smarty.vim create mode 160000 vim/pack/vendor/start/supertab create mode 160000 vim/pack/vendor/start/syntastic create mode 160000 vim/pack/vendor/start/vim-argwrap create mode 160000 vim/pack/vendor/start/vim-buffergator create mode 160000 vim/pack/vendor/start/vim-bundler create mode 160000 vim/pack/vendor/start/vim-coffee-script rename vim/{bundle => pack/vendor/start}/vim-colors-solarized (100%) create mode 160000 vim/pack/vendor/start/vim-easymotion create mode 160000 vim/pack/vendor/start/vim-fugitive create mode 160000 vim/pack/vendor/start/vim-git create mode 160000 vim/pack/vendor/start/vim-javascript create mode 160000 vim/pack/vendor/start/vim-js create mode 160000 vim/pack/vendor/start/vim-json create mode 160000 vim/pack/vendor/start/vim-jsx-pretty create mode 160000 vim/pack/vendor/start/vim-liquid create mode 160000 vim/pack/vendor/start/vim-markdown create mode 160000 vim/pack/vendor/start/vim-over create mode 160000 vim/pack/vendor/start/vim-racket create mode 160000 vim/pack/vendor/start/vim-scala create mode 160000 vim/pack/vendor/start/vim-signature create mode 160000 vim/pack/vendor/start/vim-smt2 create mode 160000 vim/pack/vendor/start/vim-solidity create mode 160000 vim/pack/vendor/start/vim-surround create mode 160000 vim/pack/vendor/start/vim-tmux create mode 160000 vim/pack/vendor/start/vim-toml create mode 160000 vim/pack/vendor/start/vim-vagrant create mode 160000 vim/pack/vendor/start/webapi-vim diff --git a/.gitmodules b/.gitmodules index 6552b38..6045a06 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,34 +1,229 @@ -[submodule ".dotbot"] +[submodule "dotbot"] path = .dotbot url = https://github.com/anishathalye/dotbot -[submodule "vim/bundle/vim-pathogen"] - path = vim/bundle/vim-pathogen - url = https://github.com/tpope/vim-pathogen.git + ignore = dirty [submodule "vim/bundle/vim-colors-solarized"] - path = vim/bundle/vim-colors-solarized + path = vim/pack/vendor/start/vim-colors-solarized url = https://github.com/altercation/vim-colors-solarized.git ignore = untracked +[submodule "vim/bundle/vim-scala"] + path = vim/pack/vendor/start/vim-scala + url = https://github.com/derekwyatt/vim-scala.git + ignore = untracked [submodule "vim/bundle/vim-markdown"] - path = vim/bundle/vim-markdown + path = vim/pack/vendor/start/vim-markdown url = https://github.com/tpope/vim-markdown ignore = untracked -[submodule "vim/bundle/vim-tmux"] - path = vim/bundle/vim-tmux - url = https://github.com/tmux-plugins/vim-tmux +[submodule "vim/bundle/vim-git"] + path = vim/pack/vendor/start/vim-git + url = https://github.com/tpope/vim-git.git ignore = untracked [submodule "vim/bundle/vim-javascript"] - path = vim/bundle/vim-javascript + path = vim/pack/vendor/start/vim-javascript url = https://github.com/pangloss/vim-javascript.git ignore = untracked -[submodule "vim/bundle/vim-less"] - path = vim/bundle/vim-less - url = https://github.com/groenewege/vim-less +[submodule "vim/bundle/vim-fugitive"] + path = vim/pack/vendor/start/vim-fugitive + url = https://github.com/tpope/vim-fugitive.git + ignore = untracked +[submodule "vim/bundle/ctrlp.vim"] + path = vim/pack/vendor/start/ctrlp.vim + url = https://github.com/ctrlpvim/ctrlp.vim + ignore = untracked +[submodule "vim/bundle/vim-bundler"] + path = vim/pack/vendor/start/vim-bundler + url = https://github.com/tpope/vim-bundler.git + ignore = untracked +[submodule "vim/bundle/vim-coffee-script"] + path = vim/pack/vendor/start/vim-coffee-script + url = https://github.com/kchmck/vim-coffee-script + ignore = untracked +[submodule "vim/bundle/vim-surround"] + path = vim/pack/vendor/start/vim-surround + url = https://github.com/tpope/vim-surround + ignore = untracked +[submodule "vim/bundle/vim-json"] + path = vim/pack/vendor/start/vim-json + url = https://github.com/elzr/vim-json + ignore = untracked +[submodule "vim/bundle/webapi-vim"] + path = vim/pack/vendor/start/webapi-vim + url = https://github.com/mattn/webapi-vim + ignore = untracked +[submodule "vim/bundle/gist-vim"] + path = vim/pack/vendor/start/gist-vim + url = https://github.com/mattn/gist-vim.git + ignore = untracked +[submodule "vim/bundle/gundo.vim"] + path = vim/pack/vendor/start/gundo.vim + url = https://github.com/sjl/gundo.vim + ignore = untracked +[submodule "vim/bundle/vim-liquid"] + path = vim/pack/vendor/start/vim-liquid + url = https://github.com/tpope/vim-liquid + ignore = untracked +[submodule "vim/bundle/supertab"] + path = vim/pack/vendor/start/supertab + url = https://github.com/ervandew/supertab + ignore = untracked +[submodule "vim/bundle/editorconfig-vim"] + path = vim/pack/vendor/start/editorconfig-vim + url = https://github.com/editorconfig/editorconfig-vim + ignore = untracked +[submodule "vim/bundle/rust.vim"] + path = vim/pack/vendor/start/rust.vim + url = https://github.com/wting/rust.vim + ignore = untracked +[submodule "vim/bundle/vim-tmux"] + path = vim/pack/vendor/start/vim-tmux + url = https://github.com/tmux-plugins/vim-tmux + ignore = untracked +[submodule "vim/bundle/haskell-vim"] + path = vim/pack/vendor/start/haskell-vim + url = https://github.com/neovimhaskell/haskell-vim + ignore = untracked +[submodule "vim/bundle/ack.vim"] + path = vim/pack/vendor/start/ack.vim + url = https://github.com/mileszs/ack.vim + ignore = untracked +[submodule "vim/bundle/syntastic"] + path = vim/pack/vendor/start/syntastic + url = https://github.com/scrooloose/syntastic + ignore = untracked +[submodule "vim/bundle/vim-signature"] + path = vim/pack/vendor/start/vim-signature + url = https://github.com/kshenoy/vim-signature + ignore = untracked +[submodule "vim/bundle/nerdtree"] + path = vim/pack/vendor/start/nerdtree + url = https://github.com/scrooloose/nerdtree + ignore = untracked +[submodule "vim/bundle/incsearch.vim"] + path = vim/pack/vendor/start/incsearch.vim + url = https://github.com/haya14busa/incsearch.vim + ignore = untracked +[submodule "vim/bundle/vim-easymotion"] + path = vim/pack/vendor/start/vim-easymotion + url = https://github.com/easymotion/vim-easymotion + ignore = untracked +[submodule "vim/bundle/incsearch-easymotion.vim"] + path = vim/pack/vendor/start/incsearch-easymotion.vim + url = https://github.com/haya14busa/incsearch-easymotion.vim + ignore = untracked +[submodule "vim/bundle/vim-argwrap"] + path = vim/pack/vendor/start/vim-argwrap + url = https://github.com/FooSoft/vim-argwrap + ignore = untracked +[submodule "vim/bundle/nerdcommenter"] + path = vim/pack/vendor/start/nerdcommenter + url = https://github.com/scrooloose/nerdcommenter + ignore = untracked +[submodule "vim/bundle/vim-vagrant"] + path = vim/pack/vendor/start/vim-vagrant + url = https://github.com/hashivim/vim-vagrant ignore = untracked [submodule "vim/bundle/typescript-vim"] - path = vim/bundle/typescript-vim + path = vim/pack/vendor/start/typescript-vim url = https://github.com/leafgarland/typescript-vim ignore = untracked -[submodule "shell/plugins/dircolors-solarized"] +[submodule "vim/bundle/vim-buffergator"] + path = vim/pack/vendor/start/vim-buffergator + url = https://github.com/jeetsukumaran/vim-buffergator + ignore = untracked +[submodule "vim/bundle/vim-solidity"] + path = vim/pack/vendor/start/vim-solidity + url = https://github.com/tomlion/vim-solidity + ignore = untracked +[submodule "vim/bundle/lightline.vim"] + path = vim/pack/vendor/start/lightline.vim + url = https://github.com/itchyny/lightline.vim + ignore = untracked +[submodule "vim/bundle/vim-over"] + path = vim/pack/vendor/start/vim-over + url = https://github.com/osyo-manga/vim-over + ignore = untracked +[submodule "vim/bundle/smarty.vim"] + path = vim/pack/vendor/start/smarty.vim + url = https://github.com/blueyed/smarty.vim + ignore = untracked +[submodule "vim/bundle/vim-smt2"] + path = vim/pack/vendor/start/vim-smt2 + url = https://github.com/bohlender/vim-smt2 + ignore = untracked +[submodule "vim/bundle/vim-racket"] + path = vim/pack/vendor/start/vim-racket + url = https://github.com/wlangstroth/vim-racket + ignore = untracked +[submodule "vim/pack/vendor/start/vim-jsx-pretty"] + path = vim/pack/vendor/start/vim-jsx-pretty + url = https://github.com/MaxMEllon/vim-jsx-pretty + ignore = untracked +[submodule "vim/pack/vendor/start/vim-js"] + path = vim/pack/vendor/start/vim-js + url = https://github.com/yuezk/vim-js + ignore = untracked +[submodule "vim/pack/vendor/start/vim-toml"] + path = vim/pack/vendor/start/vim-toml + url = https://github.com/cespare/vim-toml +[submodule "emacs.d/vendor/use-package"] + path = emacs.d/vendor/use-package + url = https://github.com/jwiegley/use-package +[submodule "emacs.d/vendor/PG"] + path = emacs.d/vendor/PG + url = https://github.com/ProofGeneral/PG +[submodule "emacs.d/vendor/evil"] + path = emacs.d/vendor/evil + url = https://github.com/emacs-evil/evil +[submodule "emacs.d/vendor/editorconfig-emacs"] + path = emacs.d/vendor/editorconfig-emacs + url = https://github.com/editorconfig/editorconfig-emacs +[submodule "emacs.d/vendor/emacs-color-theme-solarized"] + path = emacs.d/vendor/emacs-color-theme-solarized + url = https://github.com/sellout/emacs-color-theme-solarized +[submodule "emacs.d/vendor/fiplr"] + path = emacs.d/vendor/fiplr + url = https://github.com/grizzl/fiplr +[submodule "emacs.d/vendor/grizzl"] + path = emacs.d/vendor/grizzl + url = https://github.com/grizzl/grizzl +[submodule "emacs.d/vendor/packed"] + path = emacs.d/vendor/packed + url = https://github.com/tarsius/packed +[submodule "emacs.d/vendor/dash.el"] + path = emacs.d/vendor/dash.el + url = https://github.com/magnars/dash.el +[submodule "emacs.d/vendor/auto-compile"] + path = emacs.d/vendor/auto-compile + url = https://github.com/tarsius/auto-compile +[submodule "emacs.d/vendor/emacs-neotree"] + path = emacs.d/vendor/emacs-neotree + url = https://github.com/jaypei/emacs-neotree +[submodule "emacs.d/vendor/company-mode"] + path = emacs.d/vendor/company-mode + url = https://github.com/company-mode/company-mode +[submodule "emacs.d/vendor/linum-relative"] + path = emacs.d/vendor/linum-relative + url = https://github.com/coldnew/linum-relative +[submodule "emacs.d/vendor/company-coq"] + path = emacs.d/vendor/company-coq + url = https://github.com/cpitclaudel/company-coq +[submodule "emacs.d/vendor/company-math"] + path = emacs.d/vendor/company-math + url = https://github.com/vspinu/company-math +[submodule "emacs.d/vendor/math-symbol-lists"] + path = emacs.d/vendor/math-symbol-lists + url = https://github.com/vspinu/math-symbol-lists +[submodule "emacs.d/vendor/yasnippet"] + path = emacs.d/vendor/yasnippet + url = https://github.com/joaotavora/yasnippet + ignore = untracked +[submodule "emacs.d/vendor/avy"] + path = emacs.d/vendor/avy + url = https://github.com/abo-abo/avy +[submodule "emacs.d/vendor/evil-easymotion"] + path = emacs.d/vendor/evil-easymotion + url = https://github.com/PythonNut/evil-easymotion +[submodule "zsh/plugins/dircolors-solarized"] path = shell/plugins/dircolors-solarized url = https://github.com/seebi/dircolors-solarized.git [submodule "zsh/plugins/zsh-syntax-highlighting"] @@ -37,7 +232,21 @@ [submodule "zsh/plugins/zsh-completions"] path = zsh/plugins/zsh-completions url = https://github.com/zsh-users/zsh-completions -[submodule "vim/bundle/vim-coffee-script"] - path = vim/bundle/vim-coffee-script - url = https://github.com/kchmck/vim-coffee-script.git - ignore = untracked +[submodule "irssi/scripts/vendor/irssi-smartfilter"] + path = irssi/scripts/vendor/irssi-smartfilter + url = https://github.com/lifeforms/irssi-smartfilter +[submodule "jupyter/nbextensions/jupyter-vim-binding"] + path = jupyter/nbextensions/jupyter-vim-binding + url = https://github.com/lambdalisue/jupyter-vim-binding +[submodule "emacs.d/vendor/racket-mode"] + path = emacs.d/vendor/racket-mode + url = https://github.com/greghendershott/racket-mode +[submodule "emacs.d/vendor/evil-surround"] + path = emacs.d/vendor/evil-surround + url = https://github.com/emacs-evil/evil-surround +[submodule "emacs.d/vendor/goto-chg"] + path = emacs.d/vendor/goto-chg + url = https://github.com/emacs-evil/goto-chg +[submodule "emacs.d/vendor/pos-tip"] + path = emacs.d/vendor/pos-tip + url = https://github.com/pitkali/pos-tip diff --git a/.install.conf.yaml b/.install.conf.yaml index d131527..2c5ff69 100644 --- a/.install.conf.yaml +++ b/.install.conf.yaml @@ -18,6 +18,13 @@ ~/.vimrc: ~/.zsh: ~/.zshrc: + ~/.irssi: + ~/.jupyter/jupyter_notebook_config.py: jupyter/jupyter_notebook_config.py + ~/.jupyter/nbconfig/notebook.json: jupyter/notebook.json + ~/.local/share/jupyter/nbextensions: jupyter/nbextensions + ~/.pythonrc: + ~/.emacs.d: + ~/.emacs: - shell: - git submodule sync --recursive @@ -25,6 +32,9 @@ - git update-submodules - > git cleanall -f + emacs.d/vendor/ + irssi/scripts/vendor/ + jupyter/nbextensions/ shell/plugins/ - vim/bundle/ + vim/pack/vendor/start/ zsh/plugins/ \ No newline at end of file diff --git a/emacs b/emacs new file mode 100644 index 0000000..3a00d81 --- /dev/null +++ b/emacs @@ -0,0 +1,11 @@ +; -*- no-byte-compile: t -*- +(setf load-prefer-newer t) +(package-initialize) +(add-to-list 'load-path "~/.emacs.d/vendor/dash.el") +(add-to-list 'load-path "~/.emacs.d/vendor/packed") +(add-to-list 'load-path "~/.emacs.d/vendor/auto-compile") +(require 'auto-compile) +(auto-compile-on-load-mode) +(auto-compile-on-save-mode) + +(load-file "~/.emacs.d/init.el") \ No newline at end of file diff --git a/emacs.d/.gitignore b/emacs.d/.gitignore new file mode 100644 index 0000000..54a464c --- /dev/null +++ b/emacs.d/.gitignore @@ -0,0 +1,2 @@ +*.elc +racket-mode/ diff --git a/emacs.d/early-init.el b/emacs.d/early-init.el new file mode 100644 index 0000000..baa6a86 --- /dev/null +++ b/emacs.d/early-init.el @@ -0,0 +1 @@ +(setq byte-compile-warnings '(not obsolete)) diff --git a/emacs.d/init.el b/emacs.d/init.el new file mode 100644 index 0000000..23269df --- /dev/null +++ b/emacs.d/init.el @@ -0,0 +1,10 @@ +(add-to-list 'load-path "~/.emacs.d/lisp") + +(load "personal/packages") +(load "personal/theme") +(load "personal/settings") +(load "personal/functions") + +(let ((custom "~/.emacs_local")) + (when (file-exists-p custom) + (load-file custom))) diff --git a/emacs.d/lisp/personal/functions.el b/emacs.d/lisp/personal/functions.el new file mode 100644 index 0000000..e09f5c5 --- /dev/null +++ b/emacs.d/lisp/personal/functions.el @@ -0,0 +1,6 @@ +(defun kill-other-buffers () + "Kill all other buffers." + (interactive) + (mapc 'kill-buffer + (delq (current-buffer) + (remove-if-not 'buffer-file-name (buffer-list))))) diff --git a/emacs.d/lisp/personal/packages.el b/emacs.d/lisp/personal/packages.el new file mode 100644 index 0000000..4b5f47c --- /dev/null +++ b/emacs.d/lisp/personal/packages.el @@ -0,0 +1,220 @@ +(add-to-list 'load-path "~/.emacs.d/vendor/use-package") +(require 'use-package) + +;; this needs to be loaded before evil +(use-package goto-chg + :load-path "vendor/goto-chg") + +(use-package evil + :load-path "vendor/evil" + + :init + (setf evil-want-C-u-scroll t) + (setf evil-want-fine-undo t) + (setf evil-want-abbrev-expand-on-insert-exit nil) + + :config + ;; enable evil mode + (evil-mode 1) + + ;; make bindings more vim-like + (defun minibuffer-keyboard-quit () + (interactive) + (if (and delete-selection-mode transient-mark-mode mark-active) + (setf deactivate-mark t) + (when (get-buffer "*Completions*") (delete-windows-on "*Completions*")) + (abort-recursive-edit))) + (define-key evil-normal-state-map [escape] 'keyboard-quit) + (define-key evil-visual-state-map [escape] 'keyboard-quit) + (define-key minibuffer-local-map [escape] 'minibuffer-keyboard-quit) + (define-key minibuffer-local-ns-map [escape] 'minibuffer-keyboard-quit) + (define-key minibuffer-local-completion-map [escape] 'minibuffer-keyboard-quit) + (define-key minibuffer-local-must-match-map [escape] 'minibuffer-keyboard-quit) + (define-key minibuffer-local-isearch-map [escape] 'minibuffer-keyboard-quit) + (define-key evil-normal-state-map "Y" 'copy-to-end-of-line) + (global-set-key (kbd "RET") 'newline-and-indent) + + ;; key bindings + (evil-ex-define-cmd "!" 'shell-command) + (define-key evil-normal-state-map (kbd "C-k") 'evil-window-up) + (define-key evil-normal-state-map (kbd "C-j") 'evil-window-down) + (define-key evil-normal-state-map (kbd "C-h") 'evil-window-left) + (define-key evil-normal-state-map (kbd "C-l") 'evil-window-right) + (define-key evil-normal-state-map ";" 'buffer-menu) + + ;; proof mode bindings + (evil-define-key 'normal proof-mode-map + (kbd "") 'proof-goto-point + (kbd "") 'proof-undo-last-successful-command + (kbd "") 'proof-assert-next-command-interactive + (kbd "") 'proof-goto-end-of-locked) + (evil-define-key 'insert proof-mode-map + (kbd "") 'proof-goto-point + (kbd "") 'proof-undo-last-successful-command + (kbd "") 'proof-assert-next-command-interactive + (kbd "") 'proof-goto-end-of-locked) + + ;; leader keys + (evil-set-leader 'normal (kbd "\\")) + (evil-define-key 'normal 'global + (kbd "m") 'menu-bar-open + (kbd "n") 'neotree-toggle + (kbd "f") 'neotree-find) + ;; Coq + (evil-define-key 'normal coq-mode-map + (kbd "e") 'coq-double-hit-toggle + (kbd "c") 'proof-interrupt-process) + ;; Racket + (evil-define-key 'normal racket-mode-map + (kbd "r") 'racket-run + (kbd "t") 'racket-test + (kbd "k") 'racket-repl-clear-leaving-last-prompt) + (evil-define-key 'normal racket-repl-mode-map + (kbd "k") 'racket-repl-clear-leaving-last-prompt)) + +(use-package proof-site + :load-path "vendor/PG/generic" + + :config + ;; colors and display + (if (display-graphic-p) + ;; GUI + ; red: #fec1c2, green: #e1fec1, blue: #c1fefc + (custom-set-faces + '(proof-locked-face ((t (:background "#e1fec1")))) + '(proof-queue-face ((t (:background "#c1fefc"))))) + ;; CLI + (custom-set-faces + '(proof-locked-face ((t (:background "#262626")))) ; terminal + '(proof-queue-face ((t (:background "#00005f")))))) + + (add-hook 'proof-mode-hook (lambda () + (setq-local global-hl-line-mode + (null global-hl-line-mode)))) + (add-hook 'coq-mode-hook #'company-coq-mode) + + (setf proof-colour-locked t) + (setf overlay-arrow-string "") + (setf proof-splash-enable nil) + + ;; Coq specific + (setf coq-compile-before-require t) + (setf coq-double-hit-enable t) + (setf coq-one-command-per-line nil)) ; results in better behavior for electric terminator + +(use-package editorconfig + :load-path "vendor/editorconfig-emacs" + + :config + (editorconfig-mode 1)) + +(use-package avy + :load-path "vendor/avy" + + :config + (setf avy-background t) + (setf avy-all-windows nil) + (setf avy-keys (append "asdghklqwertyuiopzxcvbnmfj;" nil)) ; same as vim-easymotion + (if (display-graphic-p) + ;; GUI + (custom-set-faces + '(avy-lead-face ((t (:foreground "#dc322f" :weight bold)))) ; red + '(avy-lead-face-0 ((t (:foreground "#268bd2" :weight bold)))) ; blue + '(avy-lead-face-2 ((t (:foreground "#268bd2" :weight bold))))) ; blue + ;; CLI + (custom-set-faces + '(avy-lead-face ((t (:foreground "#d70000" :weight bold)))) ; red + '(avy-lead-face-0 ((t (:foreground "#af8700" :weight bold)))) ; yellow + '(avy-lead-face-2 ((t (:foreground "#af8700" :weight bold))))))) ; yellow + +;; this needs to be loaded after avy +(use-package evil-easymotion + :load-path "vendor/evil-easymotion" + + :config + (let ((prefix "SPC")) + (evilem-default-keybindings prefix) + ;; redefine certain macros to allow matching across lines + (evilem-define (kbd (concat prefix " w")) #'evil-forward-word-begin) + (evilem-define (kbd (concat prefix " W")) #'evil-forward-WORD-begin) + (evilem-define (kbd (concat prefix " e")) #'evil-forward-word-end) + (evilem-define (kbd (concat prefix " E")) #'evil-forward-WORD-end) + (evilem-define (kbd (concat prefix " b")) #'evil-backward-word-begin) + (evilem-define (kbd (concat prefix " B")) #'evil-backward-WORD-begin))) + +;; this needs to be loaded before fiplr +(use-package grizzl + :load-path "vendor/grizzl") + +;; this needs to be loaded after evil +(use-package fiplr + :load-path "vendor/fiplr" + + :config + (define-key evil-normal-state-map (kbd "C-p") 'fiplr-find-file) + ;; the fiplr-keymap may not be part of the public API, but this seems to work + ;; for now + (define-key *fiplr-keymap* (kbd "") 'fiplr-reload-list)) + +;; this needs to be loaded after evil +(use-package neotree + :load-path "vendor/emacs-neotree" + + :config + (add-hook 'neotree-mode-hook + (lambda () + (define-key evil-motion-state-local-map (kbd "RET") 'neotree-enter)))) + +(use-package company + :load-path "vendor/company-mode" + + :config + (global-company-mode)) + +(use-package math-symbol-lists + :load-path "vendor/math-symbol-lists") + +;; this needs to be loaded after company and math-symbol-lists +(use-package company-math + :load-path "vendor/company-math") + +(use-package yasnippet + :load-path "vendor/yasnippet") + +;; this needs to be loaded after company-math and yasnippet +(use-package company-coq + :load-path "vendor/company-coq") + +(use-package linum-relative + :load-path "vendor/linum-relative" + + :init + (global-linum-mode t) + ;; add padding next to line number + (setf linum-format + (lambda (line) + (propertize + (format + (let ((w (length (number-to-string (count-lines (point-min) (point-max)))))) + (concat "%" (number-to-string w) "d ")) + line) + 'face + 'linum))) + + :config + (linum-relative-on) + (setf linum-relative-format "%3s " + linum-relative-current-symbol "")) + +;; this needs to be loaded before racket-mode +(use-package pos-tip + :load-path "vendor/pos-tip") + +(use-package racket-mode + :load-path "vendor/racket-mode") + +;; this needs to be loaded after evil +(use-package evil-surround + :load-path "vendor/evil-surround" + :config + (global-evil-surround-mode 1)) diff --git a/emacs.d/lisp/personal/settings.el b/emacs.d/lisp/personal/settings.el new file mode 100644 index 0000000..adecf6b --- /dev/null +++ b/emacs.d/lisp/personal/settings.el @@ -0,0 +1,32 @@ +(setf inhibit-startup-screen t) ; disable welcome screen + +(setf ring-bell-function 'ignore) ; disable alarm bell + +(when (not (display-graphic-p)) + (menu-bar-mode -1)) ; disable menu bar in CLI + +;; improve scrolling +(setf scroll-margin 5 + scroll-step 1 + scroll-conservatively 10000 + scroll-up-aggressively 0.01 + scroll-down-aggressively 0.01) + +(show-paren-mode 1) ; highlight matching parens + +(global-hl-line-mode 1) ; highlight current line + +(setq-default indent-tabs-mode nil) ; use spaces instead of tabs + +(xterm-mouse-mode 1) ; enable mouse support in terminal + +(setq tab-always-indent 'complete) ; make tab complete as well as indent + +(setq ns-pop-up-frames nil) ; open files in existing frame + +;; store all backup and autosave files outside the working directory, +;; in the temporary-file-directory +(setq backup-directory-alist + `((".*" . ,temporary-file-directory))) +(setq auto-save-file-name-transforms + `((".*" ,temporary-file-directory t))) diff --git a/emacs.d/lisp/personal/theme.el b/emacs.d/lisp/personal/theme.el new file mode 100644 index 0000000..0887bd0 --- /dev/null +++ b/emacs.d/lisp/personal/theme.el @@ -0,0 +1,9 @@ +(add-to-list 'custom-theme-load-path "~/.emacs.d/vendor/emacs-color-theme-solarized") +(setf solarized-termcolors 256) +(load-theme 'solarized t) +(add-hook 'after-make-frame-functions + (lambda (frame) + (let ((mode (if (display-graphic-p frame) 'light 'dark))) + (set-frame-parameter frame 'background-mode mode) + (set-terminal-parameter frame 'background-mode mode)) + (enable-theme 'solarized))) diff --git a/emacs.d/vendor/PG b/emacs.d/vendor/PG new file mode 160000 index 0000000..ec4f9ba --- /dev/null +++ b/emacs.d/vendor/PG @@ -0,0 +1 @@ +Subproject commit ec4f9bad18f6c8336e53910d3ea941d5ceb52f52 diff --git a/emacs.d/vendor/auto-compile b/emacs.d/vendor/auto-compile new file mode 160000 index 0000000..b204e2f --- /dev/null +++ b/emacs.d/vendor/auto-compile @@ -0,0 +1 @@ +Subproject commit b204e2f85aaa4d41af4eb1819633c9613f5172bf diff --git a/emacs.d/vendor/avy b/emacs.d/vendor/avy new file mode 160000 index 0000000..ba5f035 --- /dev/null +++ b/emacs.d/vendor/avy @@ -0,0 +1 @@ +Subproject commit ba5f035be33693d1a136a5cbeedb24327f551a92 diff --git a/emacs.d/vendor/company-coq b/emacs.d/vendor/company-coq new file mode 160000 index 0000000..a6e349e --- /dev/null +++ b/emacs.d/vendor/company-coq @@ -0,0 +1 @@ +Subproject commit a6e349e0131f676a885bd14c908fd26054b2df42 diff --git a/emacs.d/vendor/company-math b/emacs.d/vendor/company-math new file mode 160000 index 0000000..45778f5 --- /dev/null +++ b/emacs.d/vendor/company-math @@ -0,0 +1 @@ +Subproject commit 45778f5731c97a21a83e3b965cbde42018709afd diff --git a/emacs.d/vendor/company-mode b/emacs.d/vendor/company-mode new file mode 160000 index 0000000..d514500 --- /dev/null +++ b/emacs.d/vendor/company-mode @@ -0,0 +1 @@ +Subproject commit d5145006b948f93e673f439a766da01f636d39fc diff --git a/emacs.d/vendor/dash.el b/emacs.d/vendor/dash.el new file mode 160000 index 0000000..0ac1ecf --- /dev/null +++ b/emacs.d/vendor/dash.el @@ -0,0 +1 @@ +Subproject commit 0ac1ecf6b56eb67bb81a3cf70f8d4354b5782341 diff --git a/emacs.d/vendor/editorconfig-emacs b/emacs.d/vendor/editorconfig-emacs new file mode 160000 index 0000000..1f6f16c --- /dev/null +++ b/emacs.d/vendor/editorconfig-emacs @@ -0,0 +1 @@ +Subproject commit 1f6f16c24fd0030322d59c2853067a6dccc9e736 diff --git a/emacs.d/vendor/emacs-color-theme-solarized b/emacs.d/vendor/emacs-color-theme-solarized new file mode 160000 index 0000000..f3ca890 --- /dev/null +++ b/emacs.d/vendor/emacs-color-theme-solarized @@ -0,0 +1 @@ +Subproject commit f3ca8902ea056fb8e46cb09f09c96294e31cd4ee diff --git a/emacs.d/vendor/emacs-neotree b/emacs.d/vendor/emacs-neotree new file mode 160000 index 0000000..98fe213 --- /dev/null +++ b/emacs.d/vendor/emacs-neotree @@ -0,0 +1 @@ +Subproject commit 98fe21334affaffe2334bf7c987edaf1980d2d0b diff --git a/emacs.d/vendor/evil b/emacs.d/vendor/evil new file mode 160000 index 0000000..cc55fa6 --- /dev/null +++ b/emacs.d/vendor/evil @@ -0,0 +1 @@ +Subproject commit cc55fa633d4f726953654326287abb9a233e0c90 diff --git a/emacs.d/vendor/evil-easymotion b/emacs.d/vendor/evil-easymotion new file mode 160000 index 0000000..f96c2ed --- /dev/null +++ b/emacs.d/vendor/evil-easymotion @@ -0,0 +1 @@ +Subproject commit f96c2ed38ddc07908db7c3c11bcd6285a3e8c2e9 diff --git a/emacs.d/vendor/evil-surround b/emacs.d/vendor/evil-surround new file mode 160000 index 0000000..c9e1449 --- /dev/null +++ b/emacs.d/vendor/evil-surround @@ -0,0 +1 @@ +Subproject commit c9e1449bf3f740b5e9b99e7820df4eca7fc7cf02 diff --git a/emacs.d/vendor/fiplr b/emacs.d/vendor/fiplr new file mode 160000 index 0000000..3f50159 --- /dev/null +++ b/emacs.d/vendor/fiplr @@ -0,0 +1 @@ +Subproject commit 3f50159fd42125440d5b0eb9d6398560461f030b diff --git a/emacs.d/vendor/goto-chg b/emacs.d/vendor/goto-chg new file mode 160000 index 0000000..278cd3e --- /dev/null +++ b/emacs.d/vendor/goto-chg @@ -0,0 +1 @@ +Subproject commit 278cd3e6d5107693aa2bb33189ca503f22f227d0 diff --git a/emacs.d/vendor/grizzl b/emacs.d/vendor/grizzl new file mode 160000 index 0000000..1e91725 --- /dev/null +++ b/emacs.d/vendor/grizzl @@ -0,0 +1 @@ +Subproject commit 1e917253ce2b846f0272b8356fad3dbff9cd513a diff --git a/emacs.d/vendor/linum-relative b/emacs.d/vendor/linum-relative new file mode 160000 index 0000000..c74a698 --- /dev/null +++ b/emacs.d/vendor/linum-relative @@ -0,0 +1 @@ +Subproject commit c74a6981b688a5e1e6b8e0809363963ff558ce4d diff --git a/emacs.d/vendor/math-symbol-lists b/emacs.d/vendor/math-symbol-lists new file mode 160000 index 0000000..590d9f0 --- /dev/null +++ b/emacs.d/vendor/math-symbol-lists @@ -0,0 +1 @@ +Subproject commit 590d9f09f8ad9aab747b97f077396a2035dcf50f diff --git a/emacs.d/vendor/packed b/emacs.d/vendor/packed new file mode 160000 index 0000000..6a427d9 --- /dev/null +++ b/emacs.d/vendor/packed @@ -0,0 +1 @@ +Subproject commit 6a427d9da742d78a8f6bd6ed9e31fbf241b2ea82 diff --git a/emacs.d/vendor/pos-tip b/emacs.d/vendor/pos-tip new file mode 160000 index 0000000..179cc12 --- /dev/null +++ b/emacs.d/vendor/pos-tip @@ -0,0 +1 @@ +Subproject commit 179cc126b363f72ca12fab1e0dc462ce0ee79742 diff --git a/emacs.d/vendor/racket-mode b/emacs.d/vendor/racket-mode new file mode 160000 index 0000000..9d2303c --- /dev/null +++ b/emacs.d/vendor/racket-mode @@ -0,0 +1 @@ +Subproject commit 9d2303ce38f206bb745111103f2f964dec65f9cf diff --git a/emacs.d/vendor/use-package b/emacs.d/vendor/use-package new file mode 160000 index 0000000..0ad5d9d --- /dev/null +++ b/emacs.d/vendor/use-package @@ -0,0 +1 @@ +Subproject commit 0ad5d9d5d8a61517a207ab04bf69e71c081149eb diff --git a/emacs.d/vendor/yasnippet b/emacs.d/vendor/yasnippet new file mode 160000 index 0000000..5cbdbf0 --- /dev/null +++ b/emacs.d/vendor/yasnippet @@ -0,0 +1 @@ +Subproject commit 5cbdbf0d2015540c59ed8ee0fcf4788effdf75b6 diff --git a/gpg.conf b/gpg.conf index fa06776..3e5c8b2 100644 --- a/gpg.conf +++ b/gpg.conf @@ -28,9 +28,7 @@ use-agent # This is the server that --recv-keys, --send-keys, and --search-keys will # communicate with to receive keys from, send keys to, and search for keys on. -# The certificate from https://sks-keyservers.net/sks-keyservers.netCA.pem will -# need to be trusted by the system for this to work. -keyserver hkps://hkps.pool.sks-keyservers.net:443 +keyserver hkps://keyserver.ubuntu.com # When using --refresh-keys, if the key in question has a preferred keyserver # URL, then disable use of that preferred keyserver to refresh the key from. diff --git a/irssi/config b/irssi/config new file mode 100644 index 0000000..f925cef --- /dev/null +++ b/irssi/config @@ -0,0 +1,135 @@ +aliases = { + J = "join"; + LEAVE = "part"; + EXIT = "quit"; + DATE = "time"; + HOST = "userhost"; + LAST = "lastlog"; + SB = "scrollback"; + WC = "window close"; + GOTO = "sb goto"; + CHAT = "dcc chat"; + RUN = "SCRIPT LOAD"; + SBAR = "STATUSBAR"; +}; + +statusbar = { + # formats: + # when using {templates}, the template is shown only if it's argument isn't + # empty unless no argument is given. for example {sb} is printed always, + # but {sb $T} is printed only if $T isn't empty. + + items = { + # start/end text in statusbars + barstart = "{sbstart}"; + barend = "{sbend}"; + + topicbarstart = "{topicsbstart}"; + topicbarend = "{topicsbend}"; + + # treated "normally", you could change the time/user name to whatever + time = "{sb $Z}"; + user = "{sb {sbnickmode $cumode}$N{sbmode $usermode}{sbaway $A}}"; + + # treated specially .. window is printed with non-empty windows, + # window_empty is printed with empty windows + window = "{sb $winref:$tag/$itemname{sbmode $M}}"; + window_empty = "{sb $winref{sbservertag $tag}}"; + prompt = "{prompt $[.15]itemname}"; + prompt_empty = "{prompt $winname}"; + topic = " $topic"; + topic_empty = " Irssi v$J - http://www.irssi.org"; + + # all of these treated specially, they're only displayed when needed + lag = "{sb Lag: $0-}"; + act = "{sb Act: $0-}"; + more = "-- more --"; + }; + + # there's two type of statusbars. root statusbars are either at the top + # of the screen or at the bottom of the screen. window statusbars are at + # the top/bottom of each split window in screen. + default = { + # the "default statusbar" to be displayed at the bottom of the window. + # contains all the normal items. + window = { + disabled = "no"; + + # window, root + type = "window"; + # top, bottom + placement = "bottom"; + # number + position = "1"; + # active, inactive, always + visible = "active"; + + # list of items in statusbar in the display order + items = { + barstart = { priority = "100"; }; + time = { }; + user = { }; + window = { }; + window_empty = { }; + lag = { priority = "-1"; }; + act = { priority = "10"; }; + more = { priority = "-1"; alignment = "right"; }; + barend = { priority = "100"; alignment = "right"; }; + }; + }; + + # statusbar to use in inactive split windows + window_inact = { + type = "window"; + placement = "bottom"; + position = "1"; + visible = "inactive"; + items = { + barstart = { priority = "100"; }; + window = { }; + window_empty = { }; + more = { priority = "-1"; alignment = "right"; }; + barend = { priority = "100"; alignment = "right"; }; + }; + }; + + # we treat input line as yet another statusbar :) It's possible to + # add other items before or after the input line item. + prompt = { + type = "root"; + placement = "bottom"; + # we want to be at the bottom always + position = "100"; + visible = "always"; + items = { + prompt = { priority = "-1"; }; + prompt_empty = { priority = "-1"; }; + # treated specially, this is the real input line. + input = { priority = "10"; }; + }; + }; + + # topicbar + topic = { + type = "root"; + placement = "top"; + position = "1"; + visible = "always"; + items = { + topicbarstart = { priority = "100"; }; + topic = { }; + topic_empty = { }; + topicbarend = { priority = "100"; alignment = "right"; }; + }; + }; + }; +}; + +settings = { + core = { settings_autosave = "no"; }; + "fe-text" = { + actlist_sort = "refnum"; + scrollback_lines = "10000"; + scrollback_time = "7days"; + }; +}; diff --git a/irssi/default.theme b/irssi/default.theme new file mode 100644 index 0000000..32a45a2 --- /dev/null +++ b/irssi/default.theme @@ -0,0 +1,294 @@ +# When testing changes, the easiest way to reload the theme is with /RELOAD. +# This reloads the configuration file too, so if you did any changes remember +# to /SAVE it first. Remember also that /SAVE overwrites the theme file with +# old data so keep backups :) + +# TEMPLATES: + +# The real text formats that irssi uses are the ones you can find with +# /FORMAT command. Back in the old days all the colors and texts were mixed +# up in those formats, and it was really hard to change the colors since you +# might have had to change them in tens of different places. So, then came +# this templating system. + +# Now the /FORMATs don't have any colors in them, and they also have very +# little other styling. Most of the stuff you need to change is in this +# theme file. If you can't change something here, you can always go back +# to change the /FORMATs directly, they're also saved in these .theme files. + +# So .. the templates. They're those {blahblah} parts you see all over the +# /FORMATs and here. Their usage is simply {name parameter1 parameter2}. +# When irssi sees this kind of text, it goes to find "name" from abstracts +# block below and sets "parameter1" into $0 and "parameter2" into $1 (you +# can have more parameters of course). Templates can have subtemplates. +# Here's a small example: +# /FORMAT format hello {colorify {underline world}} +# abstracts = { colorify = "%G$0-%n"; underline = "%U$0-%U"; } +# When irssi expands the templates in "format", the final string would be: +# hello %G%Uworld%U%n +# ie. underlined bright green "world" text. +# and why "$0-", why not "$0"? $0 would only mean the first parameter, +# $0- means all the parameters. With {underline hello world} you'd really +# want to underline both of the words, not just the hello (and world would +# actually be removed entirely). + +# COLORS: + +# You can find definitions for the color format codes in docs/formats.txt. + +# There's one difference here though. %n format. Normally it means the +# default color of the terminal (white mostly), but here it means the +# "reset color back to the one it was in higher template". For example +# if there was /FORMAT test %g{foo}bar, and foo = "%Y$0%n", irssi would +# print yellow "foo" (as set with %Y) but "bar" would be green, which was +# set at the beginning before the {foo} template. If there wasn't the %g +# at start, the normal behaviour of %n would occur. If you _really_ want +# to use the terminal's default color, use %N. + +############################################################################# + +# default foreground color (%N) - -1 is the "default terminal color" +default_color = "-1"; + +# print timestamp/servertag at the end of line, not at beginning +info_eol = "false"; + +# these characters are automatically replaced with specified color +# (dark grey by default) +replaces = { "[]=" = "%K$*%n"; }; + +abstracts = { + ## + ## generic + ## + + # text to insert at the beginning of each non-message line + line_start = "%B-%n!%B-%n "; + + # timestamp styling, nothing by default + timestamp = "$*"; + + # any kind of text that needs hilighting, default is to bold + hilight = "%_$*%_"; + + # any kind of error message, default is bright red + error = "%R$*%n"; + + # channel name is printed + channel = "%_$*%_"; + + # nick is printed + nick = "%_$*%_"; + + # nick host is printed + nickhost = "[$*]"; + + # server name is printed + server = "%_$*%_"; + + # some kind of comment is printed + comment = "[$*]"; + + # reason for something is printed (part, quit, kick, ..) + reason = "{comment $*}"; + + # mode change is printed ([+o nick]) + mode = "{comment $*}"; + + ## + ## channel specific messages + ## + + # highlighted nick/host is printed (joins) + channick_hilight = "%C$*%n"; + chanhost_hilight = "{nickhost %c$*%n}"; + + # nick/host is printed (parts, quits, etc.) + channick = "%c$*%n"; + chanhost = "{nickhost $*}"; + + # highlighted channel name is printed + channelhilight = "%c$*%n"; + + # ban/ban exception/invite list mask is printed + ban = "%c$*%n"; + + ## + ## messages + ## + + # the basic styling of how to print message, $0 = nick mode, $1 = nick + msgnick = "%K<%n$0$1-%K>%n %|"; + + # message from you is printed. "ownnick" specifies the styling of the + # nick ($0 part in msgnick) and "ownmsgnick" specifies the styling of the + # whole line. + + # Example1: You want the message text to be green: + # ownmsgnick = "{msgnick $0 $1-}%g"; + # Example2.1: You want < and > chars to be yellow: + # ownmsgnick = "%Y{msgnick $0 $1-%Y}%n"; + # (you'll also have to remove <> from replaces list above) + # Example2.2: But you still want to keep <> grey for other messages: + # pubmsgnick = "%K{msgnick $0 $1-%K}%n"; + # pubmsgmenick = "%K{msgnick $0 $1-%K}%n"; + # pubmsghinick = "%K{msgnick $1 $0$2-%n%K}%n"; + # ownprivmsgnick = "%K{msgnick $*%K}%n"; + # privmsgnick = "%K{msgnick %R$*%K}%n"; + + # $0 = nick mode, $1 = nick + ownmsgnick = "{msgnick $0 $1-}"; + ownnick = "%_$*%n"; + + # public message in channel, $0 = nick mode, $1 = nick + pubmsgnick = "{msgnick $0 $1-}"; + pubnick = "%N$*%n"; + + # public message in channel meant for me, $0 = nick mode, $1 = nick + pubmsgmenick = "{msgnick $0 $1-}"; + menick = "%Y$*%n"; + + # public highlighted message in channel + # $0 = highlight color, $1 = nick mode, $2 = nick + pubmsghinick = "{msgnick $1 $0$2-%n}"; + + # channel name is printed with message + msgchannel = "%K:%c$*%n"; + + # private message, $0 = nick, $1 = host + privmsg = "[%R$0%K(%r$1-%K)%n] "; + + # private message from you, $0 = "msg", $1 = target nick + ownprivmsg = "[%r$0%K(%R$1-%K)%n] "; + + # own private message in query + ownprivmsgnick = "{msgnick $*}"; + ownprivnick = "%_$*%n"; + + # private message in query + privmsgnick = "{msgnick %R$*%n}"; + + ## + ## Actions (/ME stuff) + ## + + # used internally by this theme + action_core = "%_ * $*%n"; + + # generic one that's used by most actions + action = "{action_core $*} "; + + # own action, both private/public + ownaction = "{action $*}"; + + # own action with target, both private/public + ownaction_target = "{action_core $0}%K:%c$1%n "; + + # private action sent by others + pvtaction = "%_ (*) $*%n "; + pvtaction_query = "{action $*}"; + + # public action sent by others + pubaction = "{action $*}"; + + + ## + ## other IRC events + ## + + # whois + whois = "%# $[8]0 : $1-"; + + # notices + ownnotice = "[%r$0%K(%R$1-%K)]%n "; + notice = "%K-%M$*%K-%n "; + pubnotice_channel = "%K:%m$*"; + pvtnotice_host = "%K(%m$*%K)"; + servernotice = "%g!$*%n "; + + # CTCPs + ownctcp = "[%r$0%K(%R$1-%K)] "; + ctcp = "%g$*%n"; + + # wallops + wallop = "%_$*%n: "; + wallop_nick = "%n$*"; + wallop_action = "%_ * $*%n "; + + # netsplits + netsplit = "%R$*%n"; + netjoin = "%C$*%n"; + + # /names list + names_prefix = ""; + names_nick = "[%_$0%_$1-] "; + names_nick_op = "{names_nick $*}"; + names_nick_halfop = "{names_nick $*}"; + names_nick_voice = "{names_nick $*}"; + names_users = "[%g$*%n]"; + names_channel = "%G$*%n"; + + # DCC + dcc = "%g$*%n"; + dccfile = "%_$*%_"; + + # DCC chat, own msg/action + dccownmsg = "[%r$0%K($1-%K)%n] "; + dccownnick = "%R$*%n"; + dccownquerynick = "%_$*%n"; + dccownaction = "{action $*}"; + dccownaction_target = "{action_core $0}%K:%c$1%n "; + + # DCC chat, others + dccmsg = "[%G$1-%K(%g$0%K)%n] "; + dccquerynick = "%G$*%n"; + dccaction = "%_ (*dcc*) $*%n %|"; + + ## + ## statusbar + ## + + # default background for all statusbars. You can also give + # the default foreground color for statusbar items. + sb_background = "%0%y"; + + # default backround for "default" statusbar group + #sb_default_bg = "%4"; + # background for prompt / input line + sb_prompt_bg = "%n"; + # background for info statusbar + sb_info_bg = "%8"; + # background for topicbar (same default) + #sb_topic_bg = "%4"; + + # text at the beginning of statusbars. sb-item already puts + # space there,so we don't use anything by default. + sbstart = ""; + # text at the end of statusbars. Use space so that it's never + # used for anything. + sbend = " "; + + topicsbstart = "{sbstart $*}"; + topicsbend = "{sbend $*}"; + + prompt = "[$*] "; + + sb = " %c[%9%y$*%c]%n"; + sbmode = "(%c+%n$*)"; + sbaway = " (%9%yAWAY%n)"; + sbservertag = ":$0 (change with ^X)"; + sbnickmode = "$0"; + + # activity in statusbar + + # ',' separator + sb_act_sep = "%c$*"; + # normal text + sb_act_text = "%w$*"; + # public message + sb_act_msg = "%c$*"; + # hilight + sb_act_hilight = "%M$*"; + # hilight with specified color, $0 = color, $1 = text + sb_act_hilight_color = "$0$1-%n"; +}; diff --git a/irssi/scripts/autorun/boot.pl b/irssi/scripts/autorun/boot.pl new file mode 120000 index 0000000..80c9a93 --- /dev/null +++ b/irssi/scripts/autorun/boot.pl @@ -0,0 +1 @@ +../boot.pl \ No newline at end of file diff --git a/irssi/scripts/autorun/smartfilter.pl b/irssi/scripts/autorun/smartfilter.pl new file mode 120000 index 0000000..7dda34e --- /dev/null +++ b/irssi/scripts/autorun/smartfilter.pl @@ -0,0 +1 @@ +../vendor/irssi-smartfilter/smartfilter.pl \ No newline at end of file diff --git a/irssi/scripts/boot.pl b/irssi/scripts/boot.pl new file mode 100644 index 0000000..fa39652 --- /dev/null +++ b/irssi/scripts/boot.pl @@ -0,0 +1,63 @@ +use Irssi; +use JSON::PP qw( decode_json ); +use strict; + +# file format, given by example: +# { +# "examplenet": { +# "real_name": "Real Name", +# "user_name": "user_name", +# "nick": "nick", +# "password": "", +# "server": "irc.example.net", +# "port": "6697", +# "ssl": true +# "channels": [ +# "#example1", +# "#example2" +# ], +# } +# } + +my $config_file = glob('~/.irc.private.json'); + +if (! -e $config_file) { + print "WARNING: config file $config_file does not exist"; + return; +} + +my $config_str = do { + open(my $config_fh, '<:encoding(UTF-8)', $config_file) + or die("ERROR: can't open config file $config_file: $!"); + local $/ = undef; + <$config_fh> +}; + +my $config = decode_json($config_str); +foreach my $network (keys %{$config}) { + my $value = $config->{$network}; + + # network + my $real_name = $value->{'real_name'}; + my $user_name = $value->{'user_name'}; + my $nick = $value->{'nick'}; + my $password = $value->{'password'}; + Irssi::command("network add -user $user_name -realname \"$real_name\" " . + "-nick $nick -autosendcmd \"msg nickserv identify $password; wait 5000\" $network"); + + # server + my $server = $value->{'server'}; + my $port = $value->{'port'}; + my $ssl = $value->{'ssl'}; + my $ssl_args = $ssl ? '-ssl -ssl_verify' : ''; + Irssi::command("server add -auto -network $network $ssl_args $server $port"); + + # channels + my $channels = $value->{'channels'}; + foreach my $channel (@$channels) { + Irssi::command("channel add -auto $channel $network"); + } + + # connect + Irssi::command("connect $network"); +} diff --git a/irssi/scripts/vendor/irssi-smartfilter b/irssi/scripts/vendor/irssi-smartfilter new file mode 160000 index 0000000..8ecb5e0 --- /dev/null +++ b/irssi/scripts/vendor/irssi-smartfilter @@ -0,0 +1 @@ +Subproject commit 8ecb5e0a1876d976bd1c8ca95cdb3ec2e4df5404 diff --git a/jupyter/jupyter_notebook_config.py b/jupyter/jupyter_notebook_config.py new file mode 100644 index 0000000..344f638 --- /dev/null +++ b/jupyter/jupyter_notebook_config.py @@ -0,0 +1 @@ +c.NotebookApp.open_browser = False diff --git a/jupyter/nbextensions/jupyter-vim-binding b/jupyter/nbextensions/jupyter-vim-binding new file mode 160000 index 0000000..c5d7ab9 --- /dev/null +++ b/jupyter/nbextensions/jupyter-vim-binding @@ -0,0 +1 @@ +Subproject commit c5d7ab9e086e7d5096db6776db31880aad753fc2 diff --git a/jupyter/notebook.json b/jupyter/notebook.json new file mode 100644 index 0000000..5c017ef --- /dev/null +++ b/jupyter/notebook.json @@ -0,0 +1,10 @@ +{ + "load_extensions": { + "jupyter-vim-binding/vim_binding": true + }, + "CodeCell": { + "cm_config": { + "lineNumbers": true + } + } +} diff --git a/pythonrc b/pythonrc new file mode 100644 index 0000000..7817517 --- /dev/null +++ b/pythonrc @@ -0,0 +1,2 @@ +import rlcompleter, readline +readline.parse_and_bind('tab:complete') \ No newline at end of file diff --git a/shell/aliases.sh b/shell/aliases.sh index 9b52c62..1be6bcd 100644 --- a/shell/aliases.sh +++ b/shell/aliases.sh @@ -1,9 +1,36 @@ +# Update dotfiles +dfu() { + ( + cd ~/.dotfiles && git pull --ff-only && ./install -q + ) +} + +# Use pip without requiring virtualenv +syspip() { + PIP_REQUIRE_VIRTUALENV="" pip "$@" +} + +syspip2() { + PIP_REQUIRE_VIRTUALENV="" pip2 "$@" +} + +syspip3() { + PIP_REQUIRE_VIRTUALENV="" pip3 "$@" +} +# Check if a file contains non-ascii characters +nonascii() { + LC_ALL=C grep -n '[^[:print:][:space:]]' "${1}" +} + # Use colors in coreutils utilities output alias ls='ls --color=auto' alias grep='grep --color' # ls aliases alias ll='ls -lah' +alias la='ls -A' +alias l='ls' + # Aliases to protect against overwriting alias cp='cp -i' @@ -12,3 +39,5 @@ alias mv='mv -i' # Mirror a website alias mirrorsite='wget -m -k -K -E -e robots=off' +# Mirror stdout to stderr, useful for seeing data going through a pipe +alias peek='tee >(cat 1>&2)' \ No newline at end of file diff --git a/shell/dircolors.extra b/shell/dircolors.extra index 9de5805..b92c65b 100644 --- a/shell/dircolors.extra +++ b/shell/dircolors.extra @@ -1,4 +1,6 @@ # unimportant files .vo 00;38;5;240 +.vok 00;38;5;240 +.vos 00;38;5;240 .v.d 00;38;5;240 .glob 00;38;5;240 \ No newline at end of file diff --git a/shell/external.sh b/shell/external.sh index 22659d8..89d16db 100644 --- a/shell/external.sh +++ b/shell/external.sh @@ -7,3 +7,9 @@ export PIP_DOWNLOAD_CACHE=$HOME/.pip/cache # Python startup file export PYTHONSTARTUP=$HOME/.pythonrc + +# Vagrant +export VAGRANT_DISABLE_VBOXSYMLINKCREATE=1 + +# Docker +export DOCKER_SCAN_SUGGEST=false \ No newline at end of file diff --git a/vim/bundle/typescript-vim b/vim/bundle/typescript-vim deleted file mode 160000 index 0e9d92e..0000000 --- a/vim/bundle/typescript-vim +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 0e9d92eead2df21abe342c4341c55536dd36b0af diff --git a/vim/bundle/vim-coffee-script b/vim/bundle/vim-coffee-script deleted file mode 160000 index 9e3b4de..0000000 --- a/vim/bundle/vim-coffee-script +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 9e3b4de2a476caeb6ff21b5da20966d7c67a98bb diff --git a/vim/bundle/vim-javascript b/vim/bundle/vim-javascript deleted file mode 160000 index 8450f06..0000000 --- a/vim/bundle/vim-javascript +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8450f06ec2c22bf33934728953b722a3847bbc18 diff --git a/vim/bundle/vim-less b/vim/bundle/vim-less deleted file mode 160000 index 6e818d5..0000000 --- a/vim/bundle/vim-less +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 6e818d5614d5fc18d95a48c92b89e6db39f9e3d6 diff --git a/vim/bundle/vim-markdown b/vim/bundle/vim-markdown deleted file mode 160000 index e2d7fcd..0000000 --- a/vim/bundle/vim-markdown +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e2d7fcd682a461a3951e8b5067cc8a0083e75e35 diff --git a/vim/bundle/vim-pathogen b/vim/bundle/vim-pathogen deleted file mode 160000 index e9fb091..0000000 --- a/vim/bundle/vim-pathogen +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e9fb0914dba5bdfe2feaa364dda2e9495c5620a2 diff --git a/vim/bundle/vim-tmux b/vim/bundle/vim-tmux deleted file mode 160000 index 4e11e0c..0000000 --- a/vim/bundle/vim-tmux +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4e11e0cd595b41554011fca29c695eb33c34db16 diff --git a/vim/pack/vendor/start/ack.vim b/vim/pack/vendor/start/ack.vim new file mode 160000 index 0000000..36e40f9 --- /dev/null +++ b/vim/pack/vendor/start/ack.vim @@ -0,0 +1 @@ +Subproject commit 36e40f9ec91bdbf6f1adf408522a73a6925c3042 diff --git a/vim/pack/vendor/start/ctrlp.vim b/vim/pack/vendor/start/ctrlp.vim new file mode 160000 index 0000000..3ce448c --- /dev/null +++ b/vim/pack/vendor/start/ctrlp.vim @@ -0,0 +1 @@ +Subproject commit 3ce448c9687ae96dea0caf4da388ecd8d9072f72 diff --git a/vim/pack/vendor/start/editorconfig-vim b/vim/pack/vendor/start/editorconfig-vim new file mode 160000 index 0000000..d354117 --- /dev/null +++ b/vim/pack/vendor/start/editorconfig-vim @@ -0,0 +1 @@ +Subproject commit d354117b72b3b43b75a29b8e816c0f91af10efe9 diff --git a/vim/pack/vendor/start/gist-vim b/vim/pack/vendor/start/gist-vim new file mode 160000 index 0000000..34e0f0a --- /dev/null +++ b/vim/pack/vendor/start/gist-vim @@ -0,0 +1 @@ +Subproject commit 34e0f0aad5cc21cb3087a5d92ae1aa108019ecda diff --git a/vim/pack/vendor/start/gundo.vim b/vim/pack/vendor/start/gundo.vim new file mode 160000 index 0000000..c5efef1 --- /dev/null +++ b/vim/pack/vendor/start/gundo.vim @@ -0,0 +1 @@ +Subproject commit c5efef192b975b8e7d5fa3c6db932648d3b76323 diff --git a/vim/pack/vendor/start/haskell-vim b/vim/pack/vendor/start/haskell-vim new file mode 160000 index 0000000..f35d022 --- /dev/null +++ b/vim/pack/vendor/start/haskell-vim @@ -0,0 +1 @@ +Subproject commit f35d02204b4813d1dbe8b0e98cc39701a4b8e15e diff --git a/vim/pack/vendor/start/incsearch-easymotion.vim b/vim/pack/vendor/start/incsearch-easymotion.vim new file mode 160000 index 0000000..fcdd3ae --- /dev/null +++ b/vim/pack/vendor/start/incsearch-easymotion.vim @@ -0,0 +1 @@ +Subproject commit fcdd3aee6f4c0eef1a515727199ece8d6c6041b5 diff --git a/vim/pack/vendor/start/incsearch.vim b/vim/pack/vendor/start/incsearch.vim new file mode 160000 index 0000000..c83de6d --- /dev/null +++ b/vim/pack/vendor/start/incsearch.vim @@ -0,0 +1 @@ +Subproject commit c83de6d1ac31d173d7c3ffee0ad61dc643ee4f08 diff --git a/vim/pack/vendor/start/lightline.vim b/vim/pack/vendor/start/lightline.vim new file mode 160000 index 0000000..b02ef0d --- /dev/null +++ b/vim/pack/vendor/start/lightline.vim @@ -0,0 +1 @@ +Subproject commit b02ef0d9f253dfc1cbb3f340b74998d7a4db0bf6 diff --git a/vim/pack/vendor/start/nerdcommenter b/vim/pack/vendor/start/nerdcommenter new file mode 160000 index 0000000..6d30ebc --- /dev/null +++ b/vim/pack/vendor/start/nerdcommenter @@ -0,0 +1 @@ +Subproject commit 6d30ebcd428eb5a244229a125420a1e044b42b52 diff --git a/vim/pack/vendor/start/nerdtree b/vim/pack/vendor/start/nerdtree new file mode 160000 index 0000000..fc85a6f --- /dev/null +++ b/vim/pack/vendor/start/nerdtree @@ -0,0 +1 @@ +Subproject commit fc85a6f07c2cd694be93496ffad75be126240068 diff --git a/vim/pack/vendor/start/rust.vim b/vim/pack/vendor/start/rust.vim new file mode 160000 index 0000000..58ee0ee --- /dev/null +++ b/vim/pack/vendor/start/rust.vim @@ -0,0 +1 @@ +Subproject commit 58ee0eedc5f374e6bc5f6a3e215421ec4fe3635e diff --git a/vim/pack/vendor/start/smarty.vim b/vim/pack/vendor/start/smarty.vim new file mode 160000 index 0000000..da7e9b0 --- /dev/null +++ b/vim/pack/vendor/start/smarty.vim @@ -0,0 +1 @@ +Subproject commit da7e9b0555c257acce70228f734cba0602c3d6b5 diff --git a/vim/pack/vendor/start/supertab b/vim/pack/vendor/start/supertab new file mode 160000 index 0000000..f0093ae --- /dev/null +++ b/vim/pack/vendor/start/supertab @@ -0,0 +1 @@ +Subproject commit f0093ae12a9115498f887199809a6114659fc858 diff --git a/vim/pack/vendor/start/syntastic b/vim/pack/vendor/start/syntastic new file mode 160000 index 0000000..b7f4f71 --- /dev/null +++ b/vim/pack/vendor/start/syntastic @@ -0,0 +1 @@ +Subproject commit b7f4f71539038d33f173bfa72631737da049575a diff --git a/vim/pack/vendor/start/vim-argwrap b/vim/pack/vendor/start/vim-argwrap new file mode 160000 index 0000000..0faba07 --- /dev/null +++ b/vim/pack/vendor/start/vim-argwrap @@ -0,0 +1 @@ +Subproject commit 0faba07179f96cae2ab49cf2cc22ebeb922c1532 diff --git a/vim/pack/vendor/start/vim-buffergator b/vim/pack/vendor/start/vim-buffergator new file mode 160000 index 0000000..0514af6 --- /dev/null +++ b/vim/pack/vendor/start/vim-buffergator @@ -0,0 +1 @@ +Subproject commit 0514af606a3b41bbe82c33875179b53300a3cb86 diff --git a/vim/pack/vendor/start/vim-bundler b/vim/pack/vendor/start/vim-bundler new file mode 160000 index 0000000..43da96e --- /dev/null +++ b/vim/pack/vendor/start/vim-bundler @@ -0,0 +1 @@ +Subproject commit 43da96e6ea726c1a91b8b7ceea1d6019df4231d7 diff --git a/vim/pack/vendor/start/vim-coffee-script b/vim/pack/vendor/start/vim-coffee-script new file mode 160000 index 0000000..2842125 --- /dev/null +++ b/vim/pack/vendor/start/vim-coffee-script @@ -0,0 +1 @@ +Subproject commit 28421258a8dde5a50deafbfc19cd9873cacfaa79 diff --git a/vim/bundle/vim-colors-solarized b/vim/pack/vendor/start/vim-colors-solarized similarity index 100% rename from vim/bundle/vim-colors-solarized rename to vim/pack/vendor/start/vim-colors-solarized diff --git a/vim/pack/vendor/start/vim-easymotion b/vim/pack/vendor/start/vim-easymotion new file mode 160000 index 0000000..b3cfab2 --- /dev/null +++ b/vim/pack/vendor/start/vim-easymotion @@ -0,0 +1 @@ +Subproject commit b3cfab2a6302b3b39f53d9fd2cd997e1127d7878 diff --git a/vim/pack/vendor/start/vim-fugitive b/vim/pack/vendor/start/vim-fugitive new file mode 160000 index 0000000..ecc5e8f --- /dev/null +++ b/vim/pack/vendor/start/vim-fugitive @@ -0,0 +1 @@ +Subproject commit ecc5e8fa406153c7de6fb4ef90afe7718e056e6a diff --git a/vim/pack/vendor/start/vim-git b/vim/pack/vendor/start/vim-git new file mode 160000 index 0000000..5143bea --- /dev/null +++ b/vim/pack/vendor/start/vim-git @@ -0,0 +1 @@ +Subproject commit 5143bea9ed17bc32163dbe3ca706344d79507b9d diff --git a/vim/pack/vendor/start/vim-javascript b/vim/pack/vendor/start/vim-javascript new file mode 160000 index 0000000..d6e1375 --- /dev/null +++ b/vim/pack/vendor/start/vim-javascript @@ -0,0 +1 @@ +Subproject commit d6e137563c47fb59f26ed25d044c0c7532304f18 diff --git a/vim/pack/vendor/start/vim-js b/vim/pack/vendor/start/vim-js new file mode 160000 index 0000000..90f340d --- /dev/null +++ b/vim/pack/vendor/start/vim-js @@ -0,0 +1 @@ +Subproject commit 90f340d31907590fad059cd9aab03a55ab49e352 diff --git a/vim/pack/vendor/start/vim-json b/vim/pack/vendor/start/vim-json new file mode 160000 index 0000000..3727f08 --- /dev/null +++ b/vim/pack/vendor/start/vim-json @@ -0,0 +1 @@ +Subproject commit 3727f089410e23ae113be6222e8a08dd2613ecf2 diff --git a/vim/pack/vendor/start/vim-jsx-pretty b/vim/pack/vendor/start/vim-jsx-pretty new file mode 160000 index 0000000..6989f16 --- /dev/null +++ b/vim/pack/vendor/start/vim-jsx-pretty @@ -0,0 +1 @@ +Subproject commit 6989f1663cc03d7da72b5ef1c03f87e6ddb70b41 diff --git a/vim/pack/vendor/start/vim-liquid b/vim/pack/vendor/start/vim-liquid new file mode 160000 index 0000000..fd2f001 --- /dev/null +++ b/vim/pack/vendor/start/vim-liquid @@ -0,0 +1 @@ +Subproject commit fd2f0017fbc50f214db2f57c207c34cda3aa1522 diff --git a/vim/pack/vendor/start/vim-markdown b/vim/pack/vendor/start/vim-markdown new file mode 160000 index 0000000..b78bbce --- /dev/null +++ b/vim/pack/vendor/start/vim-markdown @@ -0,0 +1 @@ +Subproject commit b78bbce3371a2eb56c89f618cd4ab2baadc9ee61 diff --git a/vim/pack/vendor/start/vim-over b/vim/pack/vendor/start/vim-over new file mode 160000 index 0000000..878f83b --- /dev/null +++ b/vim/pack/vendor/start/vim-over @@ -0,0 +1 @@ +Subproject commit 878f83bdac0cda308f599d319f45c7877d5274a9 diff --git a/vim/pack/vendor/start/vim-racket b/vim/pack/vendor/start/vim-racket new file mode 160000 index 0000000..32ad231 --- /dev/null +++ b/vim/pack/vendor/start/vim-racket @@ -0,0 +1 @@ +Subproject commit 32ad23165c96d05da7f3b9931d2889b7e39dcb86 diff --git a/vim/pack/vendor/start/vim-scala b/vim/pack/vendor/start/vim-scala new file mode 160000 index 0000000..7657218 --- /dev/null +++ b/vim/pack/vendor/start/vim-scala @@ -0,0 +1 @@ +Subproject commit 7657218f14837395a4e6759f15289bad6febd1b4 diff --git a/vim/pack/vendor/start/vim-signature b/vim/pack/vendor/start/vim-signature new file mode 160000 index 0000000..6bc3dd1 --- /dev/null +++ b/vim/pack/vendor/start/vim-signature @@ -0,0 +1 @@ +Subproject commit 6bc3dd1294a22e897f0dcf8dd72b85f350e306bc diff --git a/vim/pack/vendor/start/vim-smt2 b/vim/pack/vendor/start/vim-smt2 new file mode 160000 index 0000000..b9e4cbb --- /dev/null +++ b/vim/pack/vendor/start/vim-smt2 @@ -0,0 +1 @@ +Subproject commit b9e4cbb85e880cd32f90c2dd9853ee7c592b3528 diff --git a/vim/pack/vendor/start/vim-solidity b/vim/pack/vendor/start/vim-solidity new file mode 160000 index 0000000..569bbbe --- /dev/null +++ b/vim/pack/vendor/start/vim-solidity @@ -0,0 +1 @@ +Subproject commit 569bbbedc3898236d5912fed0caf114936112ae4 diff --git a/vim/pack/vendor/start/vim-surround b/vim/pack/vendor/start/vim-surround new file mode 160000 index 0000000..bf3480d --- /dev/null +++ b/vim/pack/vendor/start/vim-surround @@ -0,0 +1 @@ +Subproject commit bf3480dc9ae7bea34c78fbba4c65b4548b5b1fea diff --git a/vim/pack/vendor/start/vim-tmux b/vim/pack/vendor/start/vim-tmux new file mode 160000 index 0000000..cfe7628 --- /dev/null +++ b/vim/pack/vendor/start/vim-tmux @@ -0,0 +1 @@ +Subproject commit cfe76281efc29890548cf9eedd42ad51c7a1faf0 diff --git a/vim/pack/vendor/start/vim-toml b/vim/pack/vendor/start/vim-toml new file mode 160000 index 0000000..89bcca8 --- /dev/null +++ b/vim/pack/vendor/start/vim-toml @@ -0,0 +1 @@ +Subproject commit 89bcca8a3aeab360f6dfe5ce70999fc928669411 diff --git a/vim/pack/vendor/start/vim-vagrant b/vim/pack/vendor/start/vim-vagrant new file mode 160000 index 0000000..7741242 --- /dev/null +++ b/vim/pack/vendor/start/vim-vagrant @@ -0,0 +1 @@ +Subproject commit 7741242ed9617ed53ba7e47e801634b819047ac0 diff --git a/vim/pack/vendor/start/webapi-vim b/vim/pack/vendor/start/webapi-vim new file mode 160000 index 0000000..e9fdce2 --- /dev/null +++ b/vim/pack/vendor/start/webapi-vim @@ -0,0 +1 @@ +Subproject commit e9fdce27dc542f491c034a288bce5d74a79fb92d diff --git a/vimrc b/vimrc index c764124..75999f8 100644 --- a/vimrc +++ b/vimrc @@ -1,12 +1,5 @@ set nocompatible " not vi compatible -"-------------- -" Load pathogen -"-------------- -runtime bundle/vim-pathogen/autoload/pathogen.vim -call pathogen#infect() -call pathogen#helptags() - "------------------ " Syntax and indent "------------------ @@ -39,30 +32,26 @@ else highlight StatusLineNC cterm=bold ctermfg=245 ctermbg=235 let g:lightline = {'colorscheme': 'dark'} highlight SpellBad cterm=underline + " patches + highlight CursorLineNr cterm=NONE endif filetype plugin indent on " enable file type detection -set noautoindent -nnoremap :set invpaste paste? -set pastetoggle= -set showmode +set autoindent "--------------------- " Basic editing config "--------------------- -set paste -set shortmess=I " disable startup message +set shortmess+=I " disable startup message set nu " number lines set rnu " relative line numbering set incsearch " incremental search (as string is being typed) set hls " highlight search set listchars=tab:>>,nbsp:~ " set list to see tabs and non-breakable spaces set lbr " line break -set ruler " show current position in file set scrolloff=5 " show lines above and below cursor (when possible) set noshowmode " hide mode set laststatus=2 -set showcmd " show current command set backspace=indent,eol,start " allow backspacing over everything set timeout timeoutlen=1000 ttimeoutlen=100 " fix slow O inserts set lazyredraw " skip redrawing screen in some cases @@ -72,9 +61,9 @@ set history=8192 " more history set nojoinspaces " suppress inserting two spaces between sentences " use 4 spaces instead of tabs during formatting set expandtab -set tabstop=2 -set shiftwidth=2 -set softtabstop=2 +set tabstop=4 +set shiftwidth=4 +set softtabstop=4 " smart case-sensitive search set ignorecase set smartcase @@ -86,6 +75,7 @@ if &term =~ '^screen' " tmux knows the extended mouse mode set ttymouse=xterm2 endif +set nofoldenable " disable folding by default "-------------------- " Misc configurations @@ -109,6 +99,30 @@ nnoremap k nnoremap h nnoremap l +" movement relative to display lines +nnoremap d :call ToggleMovementByDisplayLines() +function SetMovementByDisplayLines() + noremap k v:count ? 'k' : 'gk' + noremap j v:count ? 'j' : 'gj' + noremap 0 g0 + noremap $ g$ +endfunction +function ToggleMovementByDisplayLines() + if !exists('b:movement_by_display_lines') + let b:movement_by_display_lines = 0 + endif + if b:movement_by_display_lines + let b:movement_by_display_lines = 0 + silent! nunmap k + silent! nunmap j + silent! nunmap 0 + silent! nunmap $ + else + let b:movement_by_display_lines = 1 + call SetMovementByDisplayLines() + endif +endfunction + " toggle relative numbering nnoremap :set rnu! @@ -138,12 +152,12 @@ nnoremap ; :CtrlPBuffer let g:ctrlp_switch_buffer = 0 let g:ctrlp_show_hidden = 1 -" ag -let g:ag_mapping_message=0 -command -nargs=+ Gag Gcd | Ag! +" ag / ack.vim +command -nargs=+ Gag Gcd | Ack! nnoremap K :Gag "\b\b":cw if executable('ag') let g:ctrlp_user_command = 'ag %s -l --nocolor --hidden -g ""' + let g:ackprg = 'ag --vimgrep' endif " syntastic @@ -191,7 +205,15 @@ let g:markdown_fenced_languages = [ \ 'ruby', \ 'yaml', \ 'go', + \ 'racket', + \ 'haskell', + \ 'rust', \] +let g:markdown_syntax_conceal = 0 +let g:markdown_folding = 1 + +" fugitive +set tags^=.git/tags;~ "--------------------- " Local customizations @@ -201,4 +223,4 @@ let g:markdown_fenced_languages = [ let $LOCALFILE=expand("~/.vimrc_local") if filereadable($LOCALFILE) source $LOCALFILE -endif +endif \ No newline at end of file