--- a/bash_profile Sat Mar 18 16:11:15 2023 -0400
+++ b/bash_profile Sat Mar 18 16:12:20 2023 -0400
@@ -111,3 +111,6 @@
export GPG_TTY
export EDITOR=nvim
+
+export NVM_DIR="$HOME/.nvm"
+[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
--- a/bin/hist Sat Mar 18 16:11:15 2023 -0400
+++ b/bin/hist Sat Mar 18 16:12:20 2023 -0400
@@ -7,9 +7,14 @@
USAGE: $0 [OPTIONS]
+Note that the output lines will be unsorted. For sorted output you can pipe the
+output to sort:
+
+ cat foo.dat | hist | sort -n -k3
+
Options:
- -h, --help display this help text and exit
- -w N, --width N how wide the histograms should be
+ -h, --help display this help text and exit
+ -w COLS, --width COLS how wide the histogram bars should be
"
}
@@ -49,7 +54,7 @@
bars = int(val * x * width)
pads = width - bars
- printf "%s ", val
+ printf "%s |", val
for(i=0; i<bars; i++) printf "█"
for(i=0; i<pads; i++) printf " "
print key
--- a/fish/config.fish Sat Mar 18 16:11:15 2023 -0400
+++ b/fish/config.fish Sat Mar 18 16:12:20 2023 -0400
@@ -133,6 +133,16 @@
set -g -x ANSIBLE_NOCOWS 1
# }}}
+# Disable Spyware {{{
+
+set -g -x DO_NOT_TRACK 1
+set -g -x STRIPE_CLI_TELEMETRY_OPTOUT 1
+set -g -x GOTELEMETRY off
+set -g -x GOPROXY direct
+set -g -x VAGRANT_CHECKPOINT_DISABLE 1
+set -g -x CHECKPOINT_DISABLE 1
+
+# }}}
# Python {{{
set -g -x PIP_DOWNLOAD_CACHE "$HOME/.pip/cache"
--- a/gitconfig Sat Mar 18 16:11:15 2023 -0400
+++ b/gitconfig Sat Mar 18 16:12:20 2023 -0400
@@ -16,6 +16,8 @@
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' -"
+ reset-main-to-origin = "!sh -c 'git mtfbpatfc $(git mainbranch) origin/$(git mainbranch)' -"
+
repoint = "!sh -c 'git update-ref HEAD $1 && git reset' -"
root = rev-parse --show-toplevel
@@ -145,3 +147,10 @@
bazel = %C(auto)%H %Cgreen%cd %C(auto)%s %Cred%al %C(auto)%d
[pull]
ff = only
+[filter "lfs"]
+ clean = git-lfs clean -- %f
+ smudge = git-lfs smudge -- %f
+ process = git-lfs filter-process
+ required = true
+[diff "lfs"]
+ textconv = cat
--- a/lispwords Sat Mar 18 16:11:15 2023 -0400
+++ b/lispwords Sat Mar 18 16:12:20 2023 -0400
@@ -91,7 +91,7 @@
(1 gathering-vector)
(1 multiple-value-bind*)
(1 do-repeat do-range do-irange do-ring-buffer do-vector do-file do-hash-set)
-(1 timing)
+(1 timing profile-when)
; qtools
(1 qtenumcase)
--- a/psqlrc Sat Mar 18 16:11:15 2023 -0400
+++ b/psqlrc Sat Mar 18 16:12:20 2023 -0400
@@ -5,9 +5,11 @@
\pset pager on
\pset null '∅'
+
\set PROMPT1 '%[%033[1;34m%]%M:%> %n@%/%R%#%x%[%033[0m%] '
\timing
\setenv PAGER less
\setenv LESS -iS
+set time zone 'etc/UTC';
--- a/vim/vimrc Sat Mar 18 16:11:15 2023 -0400
+++ b/vim/vimrc Sat Mar 18 16:12:20 2023 -0400
@@ -63,14 +63,8 @@
set spellfile=~/.vim/custom-dictionary.utf-8.add,~/.vim-local-dictionary.utf-8.add
nnoremap zG 2zg
-" iTerm2 is currently slow as balls at rendering the nice unicode lines, so for
-" now I'll just use ASCII pipes. They're ugly but at least I won't want to kill
-" myself when trying to move around a file.
-set fillchars=diff:⣿,vert:│
-set fillchars=diff:⣿,vert:\|
-
-" Don't try to highlight lines longer than 800 characters.
-set synmaxcol=800
+" Don't try to highlight lines longer than 500 characters.
+set synmaxcol=500
" Time out on key codes but not mappings.
" Basically this makes terminal Vim work sanely.
@@ -89,9 +83,6 @@
" Save when losing focus
au FocusLost * :silent! wall
-" Resize splits when the window is resized
-" au VimResized * :wincmd =
-
" Leader
let mapleader = ","
let maplocalleader = "\\"
@@ -219,39 +210,10 @@
" }}}
" }}}
-" Abbreviations ----------------------------------------------------------- {{{
-
-function! EatChar(pat)
- let c = nr2char(getchar(0))
- return (c =~ a:pat) ? '' : c
-endfunction
-
-function! MakeSpacelessIabbrev(from, to)
- execute "iabbrev <silent> ".a:from." ".a:to."<C-R>=EatChar('\\s')<CR>"
-endfunction
-function! MakeSpacelessBufferIabbrev(from, to)
- execute "iabbrev <silent> <buffer> ".a:from." ".a:to."<C-R>=EatChar('\\s')<CR>"
-endfunction
-
-call MakeSpacelessIabbrev('sl/', 'http://stevelosh.com/')
-call MakeSpacelessIabbrev('bb/', 'http://bitbucket.org/')
-call MakeSpacelessIabbrev('bbs/', 'http://bitbucket.org/sjl/')
-call MakeSpacelessIabbrev('gh/', 'http://github.com/')
-call MakeSpacelessIabbrev('ghs/', 'http://github.com/sjl/')
-
-iabbrev ldis ಠ_ಠ
-iabbrev lsad ಥ_ಥ
-iabbrev lhap ಥ‿ಥ
-iabbrev lmis ಠ‿ಠ
-
-iabbrev c8 CHIP-8
+" Abbreviations & Digraphs ------------------------------------------------ {{{
iabbrev todo TODO
-iabbrev sl@ steve@stevelosh.com
-
-iabbrev spf set -euo pipefail
-
silent! digr -. 8230 "U+2026=… HORIZONTAL ELLIPSIS
silent! digr !, 8816 "U+2270=≰ NEITHER LESS-THAN NOR EQUAL TO
silent! digr !. 8817 "U+2271=≱ NEITHER GREATER-THAN NOR EQUAL TO
@@ -334,6 +296,10 @@
nnoremap <leader>o "zyiW:call Open(@z)<cr>
vnoremap <leader>o "zy:call Open(@z)<cr>
+" Delete to black hole register
+nnoremap dD "_dd
+vnoremap D "_d
+
" Yank to end of line
nnoremap Y y$
@@ -436,9 +402,6 @@
nnoremap <c-s> :%s/
vnoremap <c-s> :s/
-" HTML tag closing
-inoremap <C-_> <space><bs><esc>:call InsertCloseTag()<cr>a
-
" Marks and Quotes
noremap ' `
noremap æ '
@@ -463,9 +426,6 @@
" Unfuck my screen
nnoremap U :syntax sync fromstart<cr>:redraw!<cr>
-" Open current directory in Finder
-nnoremap <leader>O :!open .<cr>
-
" Zip Right
"
" Moves the character under the cursor to the end of the line. Handy when you
@@ -874,47 +834,6 @@
augroup END
" }}}
-" Clojure {{{
-
-" extra folding {{{
-let g:clojure_fold_extra = [
- \ 'defgauge',
- \ 'defsketch'
- \
- \ ]
-" }}}
-
-augroup ft_clojure
- au!
-
- au BufNewFile,BufRead *.edn set filetype=clojure
-
- au FileType clojure silent! call TurnOnClojureFolding()
- au FileType clojure compiler clojure
- au FileType clojure setlocal isk-=.
-
- au FileType clojure iabbrev <buffer> defun defn
-
- " Things that should be indented 2-spaced
- au FileType clojure setlocal lispwords+=when-found,defform,when-valid,try,while-let,try+,throw+
-
- au FileType clojure RainbowParenthesesActivate
- au syntax clojure RainbowParenthesesLoadRound
-
- " Paredit
- au FileType clojure call EnableParedit()
- au FileType clojure nnoremap <buffer> <localleader>( :call PareditToggle()<cr>
- " )
-
- " Duplicate
- au FileType clojure nnoremap <buffer> [] :call DuplicateLispForm()<cr>
-
- " Indent top-level form.
- au FileType clojure nmap <buffer> gi mz99[(v%='z
-
-augroup END
-
-" }}}
" Common Lisp {{{
" Helper Functions {{{
@@ -1184,6 +1103,7 @@
au FileType lisp nnoremap <buffer> [] :call DuplicateLispForm()<cr>
au FileType lisp nnoremap <buffer> <localleader>( :call PareditToggle()<cr>
")
+ au FileType lisp inoremap <buffer> <c-s> <c-o>:call vlime#plugin#SendToREPL(vlime#ui#CurTopExpr())<cr>
" Navigate trees of sexps with arrows
au FileType lisp call s:vim_sexp_mappings()
@@ -1193,8 +1113,58 @@
au FileType lisp noremap <buffer> <down> :<c-u>call SexpDown()<cr>
" Writing
-
au FileType lisp noremap <buffer> <localleader>= I; => <esc>
+
+ " April
+ au FileType lisp inoremap <buffer> <c-j>; ⍝
+ au FileType lisp inoremap <buffer> <c-j>i ⍳
+ au FileType lisp inoremap <buffer> <c-j>r ⍴
+ au FileType lisp inoremap <buffer> <c-j>e ∊
+ au FileType lisp inoremap <buffer> <c-j>_i ⍸
+ au FileType lisp inoremap <buffer> <c-j>_, ⍪
+ au FileType lisp inoremap <buffer> <c-j>:~ ⍨
+ au FileType lisp inoremap <buffer> <c-j>:^ ¨
+
+ au FileType lisp inoremap <buffer> <c-j>* ×
+ au FileType lisp inoremap <buffer> <c-j>/ ÷
+ au FileType lisp inoremap <buffer> <c-j>0 ∘
+ au FileType lisp inoremap <buffer> <c-j>- ¯
+
+ au FileType lisp inoremap <buffer> <c-j>c ⌈
+ au FileType lisp inoremap <buffer> <c-j>f ⌊
+
+ au FileType lisp inoremap <buffer> <c-j>< ←
+ au FileType lisp inoremap <buffer> <c-j>> →
+ au FileType lisp inoremap <buffer> <c-j>^ ↑
+ au FileType lisp inoremap <buffer> <c-j>v ↓
+
+ au FileType lisp inoremap <buffer> <c-j>G^ ⍋
+ au FileType lisp inoremap <buffer> <c-j>Gv ⍒
+
+ au FileType lisp inoremap <buffer> <c-j>o\| ⌽
+ au FileType lisp inoremap <buffer> <c-j>o/ ⍉
+ au FileType lisp inoremap <buffer> <c-j>o- ⊖
+
+ au FileType lisp inoremap <buffer> <c-j>A ∧
+ au FileType lisp inoremap <buffer> <c-j>O ∨
+
+ au FileType lisp inoremap <buffer> <c-j>=< ≤
+ au FileType lisp inoremap <buffer> <c-j>=< ≥
+ au FileType lisp inoremap <buffer> <c-j>=/ ≠
+ au FileType lisp inoremap <buffer> <c-j>=== ≡
+ au FileType lisp inoremap <buffer> <c-j>==/ ≢
+
+ au FileType lisp inoremap <buffer> <c-j>q ⎕
+ au FileType lisp inoremap <buffer> <c-j>Q ⌷
+ au FileType lisp inoremap <buffer> <c-j>t ⊢
+
+ au FileType lisp inoremap <buffer> <c-j>u ∪
+ au FileType lisp inoremap <buffer> <c-j>U ∩
+ au FileType lisp inoremap <buffer> <c-j>+ ⌿
+ au FileType lisp inoremap <buffer> <c-j>[ ⊂
+ au FileType lisp inoremap <buffer> <c-j>] ⊃
+
+ au FileType lisp inoremap <buffer> <c-j>z ⍬
augroup END " }}}
" }}}
@@ -1565,7 +1535,6 @@
au FileType javascript setlocal foldmethod=marker
au FileType javascript setlocal foldmarker={,}
- au FileType javascript call MakeSpacelessBufferIabbrev('clog', 'console.log();<left><left>')
" Make {<cr> insert a pair of brackets in such a way that the cursor is correctly
" positioned inside of them AND the following code doesn't get unfolded.
@@ -2960,55 +2929,7 @@
if has('gui_running')
" GUI Vim
-
- set guifont=Menlo\ Regular\ for\ Powerline:h12
-
- " Remove all the UI cruft
- set go-=T
- set go-=l
- set go-=L
- set go-=r
- set go-=R
-
- highlight SpellBad term=underline gui=undercurl guisp=Orange
-
- " Different cursors for different modes.
- set guicursor=n-c:block-Cursor-blinkon0
- set guicursor+=v:block-vCursor-blinkon0
- set guicursor+=i-ci:ver20-iCursor
-
- if has("gui_macvim")
- " Full screen means FULL screen
- set fuoptions=maxvert,maxhorz
-
- " Use the normal HIG movements, except for M-Up/Down
- let macvim_skip_cmd_opt_movement = 1
- no <D-Left> <Home>
- no! <D-Left> <Home>
- no <M-Left> <C-Left>
- no! <M-Left> <C-Left>
-
- no <D-Right> <End>
- no! <D-Right> <End>
- no <M-Right> <C-Right>
- no! <M-Right> <C-Right>
-
- no <D-Up> <C-Home>
- ino <D-Up> <C-Home>
- imap <M-Up> <C-o>{
-
- no <D-Down> <C-End>
- ino <D-Down> <C-End>
- imap <M-Down> <C-o>}
-
- imap <M-BS> <C-w>
- inoremap <D-BS> <esc>my0c`y
- else
- " Non-MacVim GUI, like Gvim
- end
else
- " Console Vim
-
" Mouse support
set mouse=a
endif
--- a/weechat/autosort.conf Sat Mar 18 16:11:15 2023 -0400
+++ b/weechat/autosort.conf Sat Mar 18 16:12:20 2023 -0400
@@ -6,7 +6,7 @@
#
# Use commands like /set or /fset to change settings in WeeChat.
#
-# For more info, see: https://weechat.org/doc/quickstart/
+# For more info, see: https://weechat.org/doc/quickstart
#
[sorting]