--- a/.hgsub Mon Jan 31 21:28:01 2022 -0500
+++ b/.hgsub Tue Feb 01 10:52:56 2022 -0500
@@ -8,8 +8,8 @@
vim/bundle/commentary = [git]https://github.com/tpope/vim-commentary
vim/bundle/ctrlp = [git]https://github.com/ctrlpvim/ctrlp.vim
vim/bundle/delimitmate = [git]https://github.com/Raimondi/delimitMate
+vim/bundle/firenvim = [git]https://github.com/glacambre/firenvim
vim/bundle/fugitive = [git]https://github.com/tpope/vim-fugitive
-vim/bundle/firenvim = [git]https://github.com/glacambre/firenvim
vim/bundle/gdl = [hg]ssh://hg.stevelosh.com/repos/gdl.vim/
vim/bundle/glsl = [git]https://github.com/tikhomirov/vim-glsl
vim/bundle/gnupg = [git]https://github.com/jamessan/vim-gnupg
@@ -21,6 +21,7 @@
vim/bundle/jsx = [git]https://github.com/mxw/vim-jsx
vim/bundle/markdown = [git]https://github.com/sjl/vim-markdown
vim/bundle/miniyank = [git]https://github.com/bfredl/nvim-miniyank
+vim/bundle/neoformat = [git]https://github.com/sbdchd/neoformat
vim/bundle/nerdtree = [git]https://github.com/scrooloose/nerdtree
vim/bundle/paredit = [git]https://github.com/kovisoft/paredit
vim/bundle/pgsql = [git]https://github.com/exu/pgsql.vim
@@ -32,6 +33,7 @@
vim/bundle/sexp = [git]https://github.com/guns/vim-sexp
vim/bundle/shaderhighlight = [git]https://github.com/vim-scripts/ShaderHighLight
vim/bundle/shellcheck = [git]https://github.com/itspriddle/vim-shellcheck
+vim/bundle/simpylfold = [git]https://github.com/tmhedberg/SimpylFold
vim/bundle/sparkup = [git]https://github.com/rstacruz/sparkup
vim/bundle/splice = [hg]ssh://hg.stevelosh.com/repos/splice.vim
vim/bundle/strftimedammit = [hg]ssh://hg.stevelosh.com/repos/strftimedammit.vim/
--- a/.hgsubstate Mon Jan 31 21:28:01 2022 -0500
+++ b/.hgsubstate Tue Feb 01 10:52:56 2022 -0500
@@ -8,7 +8,7 @@
8295187ea1210138c0b171d8e3ec3569936f4c1a vim/bundle/commentary
c6d1fc5e58d689bfb104ff336aeb89d9ef1b48e2 vim/bundle/ctrlp
38487bbec8ba50834e257940b357de03991fa8f9 vim/bundle/delimitmate
-b18ee299c49f63f9c25dc8573a282179b06e4028 vim/bundle/firenvim
+f62386a9edd8b24fe1155d998be0fa56e8d8ff85 vim/bundle/firenvim
755554bb3c44944f70f4b2048acf0c69261782ac vim/bundle/fugitive
127d706f2def96876605e6bd5d366c973cb8e406 vim/bundle/gdl
6ea4e1983b18cf440c8f800a3e94b57338a3e99f vim/bundle/glsl
@@ -21,6 +21,7 @@
ffc0bfd9da15d0fce02d117b843f718160f7ad27 vim/bundle/jsx
e2d7fcd682a461a3951e8b5067cc8a0083e75e35 vim/bundle/markdown
1362fdc7c32855794659cafe6e65d3239843d9df vim/bundle/miniyank
+964c66fa22500ae7375114342d212d7fe15da341 vim/bundle/neoformat
d6032c876c6d6932ab7f07e262a16c9a85a31d5b vim/bundle/nerdtree
c76e0987ec45c84103b408691ec0506e7b99cb30 vim/bundle/paredit
1a436f7d875b4ec630da081b041c73264235c7e7 vim/bundle/pgsql
@@ -32,6 +33,7 @@
b4398689f7483b01684044ab6b55bf369744c9b3 vim/bundle/sexp
e02c3e218c51c1e2ea1821a3fe412d4e09ca1502 vim/bundle/shaderhighlight
4346419ac57ef341a15aa39c827c0848f17c6faf vim/bundle/shellcheck
+0459df8a0bbfc8ef1bfd88db889e881626f65914 vim/bundle/simpylfold
d400a570bf64b0c216aa7c8e1795820b911a7404 vim/bundle/sparkup
062b18eebd153c13e6f36577707acb17893cd959 vim/bundle/splice
26fbdd7d1f1aa5600d2ebf39bbdd292c38aac16e vim/bundle/strftimedammit
--- a/bin/disks Mon Jan 31 21:28:01 2022 -0500
+++ b/bin/disks Tue Feb 01 10:52:56 2022 -0500
@@ -8,9 +8,14 @@
'
echo
echo
-echo
OUT=$(df -h)
echo "$OUT" | head -1
echo "$OUT" | head -1 | sed 's/./-/g'
echo "$OUT" | tail +2 | grep -Pv '^/dev/loop' | grep -Pv tmpfs | sort -k6
+
+echo
+OUT=$(df -i)
+echo "$OUT" | head -1
+echo "$OUT" | head -1 | sed 's/./-/g'
+echo "$OUT" | tail +2 | grep -Pv '^/dev/loop' | grep -Pv tmpfs | sort -k6
--- a/bin/myctags Mon Jan 31 21:28:01 2022 -0500
+++ b/bin/myctags Tue Feb 01 10:52:56 2022 -0500
@@ -2,14 +2,16 @@
set -e
-/usr/local/bin/ctags -R . && sed -i .bak -E -e '/^[^ ]+ [^ ]+.py .+v$/d' tags
+CTAGS=$(command -v ctags)
+# $CTAGS -R . && sed -i.bak -E -e '/^[^ ]+ [^ ]+.py .+v$/d' tags
-mv tags tags1
-touch tags2
+$CTAGS -R --sort=yes --exclude='bazel-*' .
+# mv tags tags1
+# touch tags2
-echo '!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/' > tags
-echo '!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/' >> tags
+# echo '!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/' >> tags2
+# echo '!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/' >> tags2
-cat tags1 tags2 | grep -Ev '^!' | grep -v 'anonymous_function' | sort >> tags
+# cat tags1 tags2 | grep -Ev '^!' | grep -v 'anonymous_function' | sort >> tags
-rm tags1 tags2
+# rm tags1 tags2
--- a/ffignore Mon Jan 31 21:28:01 2022 -0500
+++ b/ffignore Tue Feb 01 10:52:56 2022 -0500
@@ -4,6 +4,7 @@
banner.txt
UnityTempFile
.m2
+.mail
node_modules
fake-gopath
slug
@@ -17,3 +18,4 @@
\.dx64fsl$
\.lx64fsl$
\.pyc$
+bazel-.*
--- a/fish/config.fish Mon Jan 31 21:28:01 2022 -0500
+++ b/fish/config.fish Tue Feb 01 10:52:56 2022 -0500
@@ -67,6 +67,7 @@
function please_fish_just_bind_the_keys
bind \cn accept-autosuggestion
bind \cw backward-kill-word
+ fzf_key_bindings
end
function fish_user_keybindings
please_fish_just_bind_the_keys
@@ -125,6 +126,9 @@
set -g -x LESS_TERMCAP_ue (printf '\e[0m') # end underline
set -g -x LESS_TERMCAP_us (printf '\e[04;38;5;146m') # begin underline
+set -g -x FZF_DEFAULT_COMMAND 'ffind | head -10000'
+set -g -x FZF_DEFAULT_OPTS '--height 15'
+
# }}}
# Python {{{
--- a/gitconfig Mon Jan 31 21:28:01 2022 -0500
+++ b/gitconfig Tue Feb 01 10:52:56 2022 -0500
@@ -14,6 +14,8 @@
remotes = remote -v
make-the-fucking-branch-point-at-the-fucking-commit = "!sh -c 'git checkout $1 && git reset --hard $2' -"
+ mtfbpatfc = "!sh -c 'git checkout $1 && git reset --hard $2' -"
+
root = rev-parse --show-toplevel
l = log -18 --color=always --all --topo-order --pretty='format:%Cgreen%h%Creset %s%Cred%d%Creset %C(black bold)(by %an)%Creset'
--- a/gitignore Mon Jan 31 21:28:01 2022 -0500
+++ b/gitignore Tue Feb 01 10:52:56 2022 -0500
@@ -16,5 +16,6 @@
*.lx64fsl
*.dx64fsl
.sjl-rsync-exclude
+sjl-jupyter
*.waiting
--- a/lispwords Mon Jan 31 21:28:01 2022 -0500
+++ b/lispwords Tue Feb 01 10:52:56 2022 -0500
@@ -88,6 +88,7 @@
(1 gathering-vector)
(1 multiple-value-bind*)
(1 do-repeat do-range do-irange do-ring-buffer do-vector do-file)
+(1 timing)
; qtools
(1 qtenumcase)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/stumpwm/local-share-stumpwm/thirds.dump Tue Feb 01 10:52:56 2022 -0500
@@ -0,0 +1,7 @@
+#S(GDUMP
+ :NUMBER 1
+ :NAME "Default"
+ :TREE ((#S(FDUMP :NUMBER 0 :X 0 :Y 0 :WIDTH 1200 :HEIGHT 1440 :WINDOWS NIL :CURRENT NIL)
+ (#S(FDUMP :NUMBER 1 :X 1200 :Y 0 :WIDTH 2720 :HEIGHT 1440 :WINDOWS NIL :CURRENT NIL)
+ #S(FDUMP :NUMBER 2 :X 3920 :Y 0 :WIDTH 1200 :HEIGHT 1440 :WINDOWS NIL :CURRENT NIL))))
+ :CURRENT 1)
--- a/stumpwm/local-share-stumpwm/work.dump Mon Jan 31 21:28:01 2022 -0500
+++ b/stumpwm/local-share-stumpwm/work.dump Tue Feb 01 10:52:56 2022 -0500
@@ -1,44 +1,9 @@
#S(GDUMP
- :NUMBER 1
- :NAME "Default"
- :TREE ((#S(FDUMP
- :NUMBER 0
- :X 0
- :Y 0
- :WIDTH 1920
- :HEIGHT 2160
- :WINDOWS (41943045 39845893 54525957 16777221)
- :CURRENT 41943045)
- #S(FDUMP
- :NUMBER 4
- :X 1920
- :Y 0
- :WIDTH 1920
- :HEIGHT 2160
- :WINDOWS (44040195 77594629)
- :CURRENT 44040195))
- (#S(FDUMP
- :NUMBER 1
- :X 3840
- :Y 0
- :WIDTH 960
- :HEIGHT 1080
- :WINDOWS (23068677)
- :CURRENT 23068677)
- (#S(FDUMP
- :NUMBER 2
- :X 4800
- :Y 0
- :WIDTH 960
- :HEIGHT 465
- :WINDOWS (35651589)
- :CURRENT 35651589)
- #S(FDUMP
- :NUMBER 3
- :X 4800
- :Y 465
- :WIDTH 960
- :HEIGHT 615
- :WINDOWS (27262977)
- :CURRENT 27262977))))
- :CURRENT 4)
+ :NUMBER 1
+ :NAME "Default"
+ :TREE ((#S(FDUMP :NUMBER 0 :X 0 :Y 0 :WIDTH 1920 :HEIGHT 2160 :WINDOWS (41943045 39845893 54525957 16777221) :CURRENT 41943045)
+ #S(FDUMP :NUMBER 4 :X 1920 :Y 0 :WIDTH 1920 :HEIGHT 2160 :WINDOWS (44040195 77594629) :CURRENT 44040195))
+ (#S(FDUMP :NUMBER 1 :X 3840 :Y 0 :WIDTH 960 :HEIGHT 1080 :WINDOWS (23068677) :CURRENT 23068677)
+ (#S(FDUMP :NUMBER 2 :X 4800 :Y 0 :WIDTH 960 :HEIGHT 465 :WINDOWS (35651589) :CURRENT 35651589)
+ #S(FDUMP :NUMBER 3 :X 4800 :Y 465 :WIDTH 960 :HEIGHT 615 :WINDOWS (27262977) :CURRENT 27262977))))
+ :CURRENT 4)
--- a/stumpwmrc Mon Jan 31 21:28:01 2022 -0500
+++ b/stumpwmrc Tue Feb 01 10:52:56 2022 -0500
@@ -40,6 +40,10 @@
:test (lambda (bag ch)
(find ch bag :test #'char=))))
+(defun run-and-echo-shell-command (command &rest args)
+ (message command)
+ (apply #'run-shell-command command args))
+
(defun mod+ (n increment modulo)
(mod (+ n increment) modulo))
@@ -252,10 +256,13 @@
(aref *brightness-values* *brightness-index*))
(defun set-brightness (value)
- (run-shell-command
+ (run-and-echo-shell-command
(hostcase
- ((:mobius :alephnull) (format nil "xbacklight -set ~D" value))
- ((:papyrifera) (format nil "xrandr --output eDP --brightness ~D" (/ value 100.0)))
+ ((:mobius) (format nil "xbacklight -set ~D" value))
+ ((:papyrifera :alephnull) (format nil "xrandr --output ~A --brightness ~D"
+ (hostcase (:papyrifera "eDP")
+ (:alephnull "eDP-1"))
+ (/ value 100.0)))
(t (message "Not sure how to set brightness on this machine.")))))
(defun rotate-brightness (delta)
@@ -263,6 +270,7 @@
(mod+ *brightness-index* delta (length *brightness-values*)))
(set-brightness (brightness)))
+
(defcommand rotate-brightness-up () ()
(rotate-brightness 1))
@@ -312,8 +320,8 @@
(defcommand screen-laptop () ()
(only)
- (loop :with laptop = "eDP1"
- :with extern = "DP1"
+ (loop :with laptop = "eDP-1"
+ :with extern = "DP-1"
:for (output commands) :in `((,laptop ("--auto"))
(,laptop ("--primary"))
(,extern ("--off")))
@@ -321,14 +329,14 @@
(defcommand screen-external () ()
(only)
- (loop :with laptop = "eDP1"
- :with extern = "DP1"
+ (loop :with laptop = "eDP-1"
+ :with extern = "DP-1"
:for (output commands) :in `(
- (,laptop ("--off"))
+ ;; (,laptop ("--off"))
(,extern ("--auto"))
(,extern ("--primary"))
- ;; (,laptop ("--auto"))
- ;; (,laptop ("--right-of" ,extern))
+ (,laptop ("--auto"))
+ (,laptop ("--left-of" ,extern))
)
:do (uiop:run-program `("xrandr" "--output" ,output ,@commands))))
@@ -618,6 +626,7 @@
("H-F8" "screen-external"))
(define-top-keys ;; layout
+ ("s-H-t" "restore-from-file thirds")
("s-H-m" "restore-from-file dev")
("s-H-s" "restore-from-file streaming")
("s-H-w" "restore-from-file work")
@@ -808,6 +817,10 @@
(defvar *dunst*
(run-shell-command "/usr/bin/dunst -conf ~/.dunstrc"))
+(when (probe-file "/home/sjl/.stumpwmrc.local")
+ (load "/home/sjl/.stumpwmrc.local"))
+
+
#;;; Scratch ------------------------------------------------------------------
(message (format nil "~S" (remove #\newline (run-shell-command "acpi" t))))
--- a/vim/vimrc Mon Jan 31 21:28:01 2022 -0500
+++ b/vim/vimrc Tue Feb 01 10:52:56 2022 -0500
@@ -325,6 +325,14 @@
nnoremap <leader>y VV"+y
nnoremap <leader>Y "+y
+" Open
+function Open(thing)
+ call system(['open', a:thing])
+endfunction
+
+nnoremap <leader>o "zyiW:call Open(@z)<cr>
+vnoremap <leader>o "zy:call Open(@z)<cr>
+
" Yank to end of line
nnoremap Y y$
@@ -492,6 +500,9 @@
nnoremap ]Z ]Sz=
nnoremap [Z [Sz=
+" Header Lines
+nnoremap <leader>- o<esc>80a-<esc>kJ079lD
+
" Insert Mode Completion {{{
inoremap <c-f> <c-x><c-f>
@@ -840,6 +851,14 @@
augroup END
" }}}
+" Bazel {{{
+
+augroup ft_bazel
+ au!
+ au FileType bzl nnoremap <buffer> gi :Neoformat buildifier<cr>
+augroup END
+
+" }}}
" C {{{
augroup ft_c
@@ -1135,6 +1154,7 @@
au BufNewFile,BufRead .abclrc set filetype=lisp
au BufNewFile,BufRead .lisprc set filetype=lisp
au BufNewFile,BufRead .stumpwmrc set filetype=lisp
+ au BufNewFile,BufRead .stumpwmrc.local set filetype=lisp
au FileType lisp nnoremap <buffer> U :syntax sync fromstart<cr>:redraw!<cr>:call TurnOnLispFolding()<cr>
@@ -1784,7 +1804,7 @@
au BufNewFile,BufRead *.pgsql set filetype=pgsql
au FileType pgsql set foldmethod=marker foldmarker=\ $$,$$\
- au FileType pgsql set softtabstop=2 shiftwidth=2
+ au FileType pgsql set softtabstop=4 shiftwidth=4
au FileType pgsql setlocal commentstring=--\ %s comments=:--
" Set up some basic neorepl mappings.
@@ -1816,116 +1836,17 @@
" }}}
" Python {{{
-function! SelectTopLevelPythonHunk() "{{{
- " oh darling what have I done
-
- " if we're on toplevel line that ends in a :, drop down one line before
- " we move on. this is bad and i feel bad.
- let line = getline(".")
- if len(line) > 0 && line[0] != " " && line[len(line) - 1] == ":"
- normal! j
- endif
-
- normal! v
-
- " use the non-bang version of normal here because we need to use the
- " indentation script. this is also bad and i still feel bad.
- normal ai
-
- " keep chomping upwards in the indentation stack til we get to something
- " that's at the top level. its bad.
- while getline(".")[0] == " "
- normal ai
- endwhile
-endfunction "}}}
-
-function! OpenPythonRepl() "{{{
- "fucking kill me
- NeoRepl fish
-endfunction "}}}
-
-function! SendPythonParagraph() "{{{
- let view = winsaveview()
-
- execute "normal! ^vip\<esc>"
- call NeoReplSendSelection()
-
- call winrestview(view)
-endfunction "}}}
-function! SendPythonTopLevelHunk() "{{{
- let view = winsaveview()
- let old_z = @z
-
- call SelectTopLevelPythonHunk()
- normal! gv"zy
- call NeoReplSendRaw("%cpaste\n" . @z . "\n--\n")
-
- let @z = old_z
- call winrestview(view)
-endfunction "}}}
-function! SendPythonSelection() "{{{
- let view = winsaveview()
- let old_z = @z
-
- normal! gv"zy
- call NeoReplSendRaw("%cpaste\n" . @z . "\n--\n")
-
- let @z = old_z
- call winrestview(view)
-endfunction "}}}
-function! SendPythonBuffer() "{{{
- let view = winsaveview()
-
- execute "normal! ggVG\<esc>"
-
- normal! gv"zy
- call NeoReplSendRaw("%cpaste\n" . @z . "\n--\n")
-
- call winrestview(view)
-endfunction "}}}
-
augroup ft_python
au!
au FileType python setlocal define=^\s*\\(def\\\\|class\\)
+ au FileType python setlocal textwidth=100
" Jesus tapdancing Christ, built-in Python syntax, you couldn't let me
" override this in a normal way, could you?
au FileType python if exists("python_space_error_highlight") | unlet python_space_error_highlight | endif
- " Strip REPL-session marks from just-pasted text
- au FileType python nnoremap <localleader>s mz`[v`]:v/\v^(\>\>\>\|[.][.][.])/d<cr>gv:s/\v^(\>\>\> \|[.][.][.] \|[.][.][.]$)//<cr>:noh<cr>`z
-
- " Set up some basic neorepl mappings.
- "
- " key desc mnemonic
- " \o - connect neorepl [o]pen repl
- " \l - send current line [l]ine
- " \p - send current paragraph [p]aragraph
- " \e - send top-level hunk [e]val
- " \e - send selected hunk [e]val
- " \r - send entire file [r]eload file
- " \c - send ctrl-l [c]lear
-
- au FileType python nnoremap <buffer> <silent> <localleader>o :call OpenPythonRepl()<cr>
-
- " Send the current line to the REPL
- au FileType python nnoremap <buffer> <silent> <localleader>l :call NeoReplSendCurrentLine()<cr>
-
- " Send the current paragraph to the REPL
- au FileType python nnoremap <buffer> <silent> <localleader>p :call SendPythonParagraph()<cr>
-
- " " Send the current top-level hunk to the REPL
- au FileType python nnoremap <buffer> <silent> <localleader>e :call SendPythonTopLevelHunk()<cr>
-
- " Send the current selection to the REPL
- au FileType python vnoremap <buffer> <silent> <localleader>e :<c-u>call SendPythonSelection()<cr>
-
- " Send the entire buffer to the REPL ([r]eload)
- au FileType python nnoremap <buffer> <silent> <localleader>r :call SendPythonBuffer()<cr>
-
- " Clear the REPL
- au FileType python nnoremap <buffer> <silent> <localleader>c :call NeoReplSendRaw("")<cr>
+ au FileType python nnoremap <buffer> gi :Neoformat black<cr>
augroup END
" }}}
--- a/weechat/ruby.conf Mon Jan 31 21:28:01 2022 -0500
+++ b/weechat/ruby.conf Tue Feb 01 10:52:56 2022 -0500
@@ -1,5 +1,5 @@
#
-# WeeChat -- ruby.conf
+# weechat -- ruby.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/weechat/spell.conf Tue Feb 01 10:52:56 2022 -0500
@@ -0,0 +1,33 @@
+#
+# weechat -- spell.conf
+#
+# WARNING: It is NOT recommended to edit this file by hand,
+# especially if WeeChat is running.
+#
+# Use commands like /set or /fset to change settings in WeeChat.
+#
+# For more info, see: https://weechat.org/doc/quickstart
+#
+
+[color]
+misspelled = lightred
+suggestion = default
+suggestion_delimiter_dict = cyan
+suggestion_delimiter_word = cyan
+
+[check]
+commands = "away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"
+default_dict = ""
+during_search = off
+enabled = off
+real_time = off
+suggestions = -1
+word_min_length = 2
+
+[dict]
+
+[look]
+suggestion_delimiter_dict = " / "
+suggestion_delimiter_word = ","
+
+[option]