commit 298580e67316ad123d27230340a62f841a8a10ad
parent 96927cde7e4b20815ca77d4f952a894756907035
Author: William Casarin <jb55@jb55.com>
Date: Tue, 1 Feb 2022 08:54:56 -0800
update dotfiles
Diffstat:
8 files changed, 365 insertions(+), 29 deletions(-)
diff --git a/dotfiles/.bashrc b/dotfiles/.bashrc
@@ -83,6 +83,7 @@ export GOPATH=$HOME/dev/gocode
export PATH=$HOME/bin:$PATH
export PATH=$HOME/.local/bin:$PATH
export PATH=$HOME/.npm/bin:$PATH
+export PATH=$GOPATH/bin:$PATH
md () {
mandown README*
diff --git a/dotfiles/.config/neomutt/neomuttrc b/dotfiles/.config/neomutt/neomuttrc
@@ -45,7 +45,8 @@ macro pager p "|delta --paging always<enter>"
macro pager d "<next-page>"
macro pager u "<previous-page>"
macro pager c "|cols<enter>"
-macro pager P "|grep patch$ | xargs curl -sL | delta --paging always<enter>"
+#macro pager P "|grep patch$ | xargs curl -sL | delta --paging always<enter>"
+macro pager P "| mail-prpatch | delta --paging always<enter>"
my_hdr Bcc: William Casarin <jb55@jb55.com>
diff --git a/dotfiles/.config/nvim/init.vim b/dotfiles/.config/nvim/init.vim
@@ -8,7 +8,7 @@ set hlsearch
set colorcolumn=80
set nowrap
set hidden
-set rnu
+set rnu nu
set wrap
hi ColorColumn ctermbg=8
@@ -44,7 +44,8 @@ imap <A-Space> <CR>
autocmd FileType go autocmd BufWritePre <buffer> execute "normal! mz:mkview\<esc>:%!fmtsafe gofmt\<esc>:loadview\<esc>`z"
autocmd FileType go set wrap
autocmd FileType rust autocmd BufWritePre <buffer> execute "normal! mz:mkview\<esc>:%!fmtsafe rustfmt\<esc>:loadview\<esc>`z"
-autocmd FileType javascript autocmd BufWritePre <buffer> execute "normal! mz:mkview\<esc>:%!fmtsafe jsfmt\<esc>:loadview\<esc>`z"
+"autocmd FileType javascript autocmd BufWritePre <buffer> execute "normal! mz:mkview\<esc>:%!fmtsafe jsfmt\<esc>:loadview\<esc>`z"
+"autocmd BufEnter,BufNew *.js set sw=2 ts=2 expandtab
"autocmd filetype html set sw=2 ts=2 expandtab
diff --git a/dotfiles/.config/qutebrowser/autoconfig.yml b/dotfiles/.config/qutebrowser/autoconfig.yml
@@ -6,5 +6,7 @@
config_version: 2
settings:
- content.blocking.enabled:
- global: false
+ content.media.audio_capture:
+ https://meet.google.com: true
+ content.media.video_capture:
+ https://meet.google.com: true
diff --git a/dotfiles/.gitconfig b/dotfiles/.gitconfig
@@ -75,7 +75,7 @@
try = merge --no-commit --no-ff
co = checkout
sw = switch
- fixes = show -s --pretty='format:Fixes: %h (\"%s\")'
+ fixes = !git --no-pager show -s --pretty='format:Fixes: %h (\"%s\")\n'
pushall = !git remote | parallel -L1 -I R git push R master
[rebase]
autosquash = true
diff --git a/dotfiles/.vim/less.vim b/dotfiles/.vim/less.vim
@@ -0,0 +1,296 @@
+" Vim script to work like "less"
+" Maintainer: Bram Moolenaar <Bram@vim.org>
+" Last Change: 2020 Dec 17
+
+
+" Avoid loading this file twice, allow the user to define his own script.
+if exists("loaded_less")
+ finish
+endif
+let loaded_less = 1
+
+" If not reading from stdin, skip files that can't be read.
+" Exit if there is no file at all.
+if argc() > 0
+ let s:i = 0
+ while 1
+ if filereadable(argv(s:i))
+ if s:i != 0
+ sleep 3
+ endif
+ break
+ endif
+ if isdirectory(argv(s:i))
+ echomsg "Skipping directory " . argv(s:i)
+ elseif getftime(argv(s:i)) < 0
+ echomsg "Skipping non-existing file " . argv(s:i)
+ else
+ echomsg "Skipping unreadable file " . argv(s:i)
+ endif
+ echo "\n"
+ let s:i = s:i + 1
+ if s:i == argc()
+ quit
+ endif
+ next
+ endwhile
+endif
+
+" we don't want 'compatible' here
+if &cp
+ set nocp
+endif
+
+" enable syntax highlighting if not done already
+if !get(g:, 'syntax_on', 0)
+ syntax enable
+endif
+
+set linebreak
+set wrap
+set so=0
+set hlsearch
+set incsearch
+nohlsearch
+" Don't remember file names and positions
+set shada=
+set nows
+" Inhibit screen updates while searching
+let s:lz = &lz
+set lz
+
+" Allow the user to define a function, which can set options specifically for
+" this script.
+if exists('*LessInitFunc')
+ call LessInitFunc()
+endif
+
+" Used after each command: put cursor at end and display position
+if &wrap
+ noremap <SID>L L0:redraw<CR>:file<CR>
+ au VimEnter * normal! L0
+else
+ noremap <SID>L Lg0:redraw<CR>:file<CR>
+ au VimEnter * normal! Lg0
+endif
+
+" When reading from stdin don't consider the file modified.
+au VimEnter * set nomod
+
+" Can't modify the text or write the file.
+set nomodifiable readonly
+
+" Give help
+noremap h :call <SID>Help()<CR>
+map H h
+fun! s:Help()
+ echo "<Space> One page forward b One page backward"
+ echo "d Half a page forward u Half a page backward"
+ echo "<Enter> One line forward k One line backward"
+ echo "G End of file g Start of file"
+ echo "N% percentage in file"
+ echo "\n"
+ echo "/pattern Search for pattern ?pattern Search backward for pattern"
+ echo "n next pattern match N Previous pattern match"
+ if &foldmethod != "manual"
+ echo "\n"
+ echo "zR open all folds zm increase fold level"
+ endif
+ echo "\n"
+ echo ":n<Enter> Next file :p<Enter> Previous file"
+ echo "\n"
+ echo "q Quit v Edit file"
+ let i = input("Hit Enter to continue")
+endfun
+
+" Scroll one page forward
+noremap <script> <Space> :call <SID>NextPage()<CR><SID>L
+map <C-V> <Space>
+map d <Space>
+map <C-F> <Space>
+map <PageDown> <Space>
+map <kPageDown> <Space>
+map <S-Down> <Space>
+" If 'foldmethod' was changed keep the "z" commands, e.g. "zR" to open all
+" folds.
+if &foldmethod == "manual"
+ map z <Space>
+endif
+map <Esc><Space> <Space>
+fun! s:NextPage()
+ if line(".") == line("$")
+ if argidx() + 1 >= argc()
+ " Don't quit at the end of the last file
+ return
+ endif
+ next
+ 1
+ else
+ exe "normal! \<C-F>"
+ endif
+endfun
+
+" Re-read file and page forward "tail -f"
+map F :e<CR>G<SID>L:sleep 1<CR>F
+
+" Scroll half a page forward
+noremap <script> d <C-D><SID>L
+map <C-D> d
+
+" Scroll one line forward
+noremap <script> <CR> <C-E><SID>L
+map <C-N> <CR>
+map e <CR>
+map <C-E> <CR>
+map j <CR>
+map <C-J> <CR>
+map <Down> <CR>
+
+" Scroll one page backward
+noremap <script> b <C-B><SID>L
+map <C-B> b
+map <PageUp> b
+map <kPageUp> b
+map <S-Up> b
+map w b
+map u b
+map <Esc>v b
+
+" Scroll half a page backward
+noremap <script> u <C-U><SID>L
+noremap <script> <C-U> <C-U><SID>L
+
+" Scroll one line backward
+noremap <script> k <C-Y><SID>L
+map y k
+map <C-Y> k
+map <C-P> k
+map <C-K> k
+map <Up> k
+
+" Redraw
+noremap <script> r <C-L><SID>L
+noremap <script> <C-R> <C-L><SID>L
+noremap <script> R <C-L><SID>L
+
+" Start of file
+noremap <script> g gg<SID>L
+map < g
+map <Esc>< g
+map <Home> g
+map <kHome> g
+
+" End of file
+noremap <script> G G<SID>L
+map > G
+map <Esc>> G
+map <End> G
+map <kEnd> G
+
+" Go to percentage
+noremap <script> % %<SID>L
+map p %
+
+" Search
+noremap <script> / H$:call <SID>Forward()<CR>/
+if &wrap
+ noremap <script> ? H0:call <SID>Backward()<CR>?
+else
+ noremap <script> ? Hg0:call <SID>Backward()<CR>?
+endif
+
+fun! s:Forward()
+ " Searching forward
+ noremap <script> n H$nzt<SID>L
+ if &wrap
+ noremap <script> N H0Nzt<SID>L
+ else
+ noremap <script> N Hg0Nzt<SID>L
+ endif
+ cnoremap <silent> <script> <CR> <CR>:cunmap <lt>CR><CR>zt<SID>L
+endfun
+
+fun! s:Backward()
+ " Searching backward
+ if &wrap
+ noremap <script> n H0nzt<SID>L
+ else
+ noremap <script> n Hg0nzt<SID>L
+ endif
+ noremap <script> N H$Nzt<SID>L
+ cnoremap <silent> <script> <CR> <CR>:cunmap <lt>CR><CR>zt<SID>L
+endfun
+
+call s:Forward()
+cunmap <CR>
+
+" Quitting
+noremap q :q<CR>
+
+" Switch to editing (switch off less mode)
+map v :silent call <SID>End()<CR>
+fun! s:End()
+ set ma
+ if exists('s:lz')
+ let &lz = s:lz
+ endif
+ unmap h
+ unmap H
+ unmap <Space>
+ unmap <C-V>
+ unmap f
+ unmap <C-F>
+ unmap z
+ unmap <Esc><Space>
+ unmap F
+ unmap d
+ unmap <C-D>
+ unmap <CR>
+ unmap <C-N>
+ unmap e
+ unmap <C-E>
+ unmap j
+ unmap <C-J>
+ unmap b
+ unmap <C-B>
+ unmap w
+ unmap <Esc>v
+ unmap u
+ unmap <C-U>
+ unmap k
+ unmap y
+ unmap <C-Y>
+ unmap <C-P>
+ unmap <C-K>
+ unmap r
+ unmap <C-R>
+ unmap R
+ unmap g
+ unmap <
+ unmap <Esc><
+ unmap G
+ unmap >
+ unmap <Esc>>
+ unmap %
+ unmap p
+ unmap n
+ unmap N
+ unmap q
+ unmap v
+ unmap /
+ unmap ?
+ unmap <Up>
+ unmap <Down>
+ unmap <PageDown>
+ unmap <kPageDown>
+ unmap <PageUp>
+ unmap <kPageUp>
+ unmap <S-Down>
+ unmap <S-Up>
+ unmap <Home>
+ unmap <kHome>
+ unmap <End>
+ unmap <kEnd>
+endfun
+
+" vim: sw=2
diff --git a/dotfiles/commands b/dotfiles/commands
@@ -1,10 +1,16 @@
-acl app > cal > list echo pcal list
aci app > cal > interactive echo pcal interactive
-afh app > fedi > home echo fedi-timeline home
-afi app > fedi > interesting echo fedi-timeline list/260
-ar app > rss > feeds fuzz-rss
-are app > rss > edit feeds echo edit ~/dotfiles/rssfeeds
-ars app > rss > show feeds echo cat ~/dotfiles/rssfeeds
+acl app > cal > list echo pcal list
+afb app > feeds > blogs fuzz-rss "grep @blog"
+afe app > edit feeds echo edit ~/dotfiles/rssfeeds
+aff app > feeds fuzz-rss "grep -v @busy"
+afp app > feeds > podcasts fuzz-rss "grep @pod"
+afu app > update feeds echo rssfeeds
+afs app > feeds > busy fuzz-rss
+afa app > feeds > arxiv fuzz-rss "grep @arxiv"
+afy app > feeds > youtube fuzz-rss "grep @yt"
+ar app > reader fuzz-reader
+ash app > social > home echo fedi-timeline home
+asi app > social > interesting echo fedi-timeline list/260
bt btc txs fuzz-btc-txs
cc compile fuzz-compile
cd change directory fuzz-cd-dirname
@@ -18,6 +24,7 @@ dsg docs->stripe->go fuzzdoc ~/docs/stripe/go-v72.txt '^type '
ecc edit vdirsyncer config echo edit ~/.config/vdirsyncer/config
ec edit commands fuzz-edit-scripts
ed edit default.nix echo edit default.nix
+es edit shell.nix echo edit shell.nix
eFc edit fuzz command fuzz-edit-command
eFl edit fuzz command list fuzz-edit-command-list
egc edit git config echo edit ~/.gitconfig
@@ -25,6 +32,7 @@ eG edit gemmarks echo edit ~/dotfiles/gemmarks
elf edit last files fuzz-last-files edit
eM edit mimi echo edit ~/.config/mimi/mime.conf
em edit mutt config echo edit ~/.config/neomutt/neomuttrc
+et edit todo echo edit ~/docs/todo/todo.txt
ff create file echo fuzz-create-file
gb git branches echo git bvr
G gemini gemmark
@@ -62,9 +70,10 @@ wn work notes echo edit /home/jb55/projects/steamoji/doc/$(ls -1pt /home/jb55/pr
wsg work service gql fuzzedit schema '^'
wsm work service mutations fuzzedit mutation '^func '
wsq work service queries fuzzedit query '^func '
-wtb work > trello backlog fuzz-trello-sprint "^Backlog "
-wti work > trello inprogress fuzz-trello-sprint "^In Progress "
-wtr work > trello refresh echo trello refresh
-wts work > trello sprint fuzz-trello-sprint
-wtt work > trello todo fuzz-trello-sprint "^Todo "
+wdq work dashboard queries fuzzedit queries '^'
+wtb work trello backlog fuzz-trello-sprint "^Backlog "
+wti work trello inprogress fuzz-trello-sprint "^In Progress "
+wtr work trello refresh echo trello refresh
+wts work trello sprint fuzz-trello-sprint
+wtt work trello todo fuzz-trello-sprint "^Todo "
z fz echo fz
diff --git a/dotfiles/rssfeeds b/dotfiles/rssfeeds
@@ -1,12 +1,38 @@
-timferris pod https://rss.art19.com/tim-ferriss-show
-drewdevault blog https://drewdevault.com/blog/index.xml
-portal pod https://www.omnycontent.com/d/playlist/9b7dacdf-a925-4f95-84dc-ac46003451ff/1713c520-edb6-43a3-b1b9-acb8002fdae7/58e33a0c-f86b-41c5-a11c-acb8002fdaf5/podcast.rss
-lexfridman pod https://lexfridman.com/feed/podcast/
-thedrive pod https://peterattiadrive.libsyn.com/rss
-lesswrong blog https://www.lesswrong.com/feed.xml
-darkhorse pod https://feeds.buzzsprout.com/424075.rss
-peakprosperity blog https://feeds.feedburner.com/PeakProsperity
-sabine yt https://www.youtube.com/feeds/videos.xml?channel_id=UC1yNl2E66ZzKApQdRuTQ4tw
-codyslab yt https://www.youtube.com/feeds/videos.xml?channel_id=UCu6mSoMNzHQiBIOCkHUa2Aw
-brian-keating pod https://feeds.megaphone.fm/ITI7213486251
-squarebitcoin blog https://squareselfcustody.substack.com/feed.xml
+3blue1brown @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCYO_jab_esuFRV4b17AJtAw
+bitcoinmagazine @yt https://bitcointv.com/feeds/videos.xml?videoChannelId=13
+blackpenredpen @yt https://www.youtube.com/feeds/videos.xml?channel_id=UC_SvYP0k05UKiJ_2ndB02IA
+brian-keating @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCmXH_moPhfkqCk6S3b9RWuw
+brownstone @blog,@busy https://brownstone.org/feed/
+citadeldispatch @yt https://bitcointv.com/feeds/videos.xml?videoChannelId=2
+clownworldtoday @blog https://benkaufman.substack.com/feed
+codyslab @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCu6mSoMNzHQiBIOCkHUa2Aw
+commaai @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCwgKmJM4ZJQRJ-U5NjvR2dg
+darkhorse @pod https://feeds.buzzsprout.com/424075.rss
+drewdevault @blog https://drewdevault.com/blog/index.xml
+hackernews @busy https://news.ycombinator.com/rss
+inferencereview @blog https://inference-review.com/feeds/rss
+lesswrong @blog,@busy http://lesserwrong.com/feed.xml
+lexfridman @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCSHZKyawb77ixDdsGog4iWA
+lobsters @busy https://lobste.rs/rss
+mittechreview @blog,@busy https://www.technologyreview.com/feed
+mit-tokamak @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCMFsHceLUJNkXMiCMFNnvkA
+nature @blog,@busy http://feeds.nature.com/nature/rss/current
+nileblue @yt https://www.youtube.com/feeds/videos.xml?channel_id=UC1D3yD4wlPMico0dss264XA
+nilered @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCFhXFikryT4aFcLkLw2LBLA
+noagenda @pod http://feed.nashownotes.com/rss.xml
+peakpropsperity @blog,@busy https://feeds.feedburner.com/PeakProsperity
+portal @pod https://www.omnycontent.com/d/playlist/9b7dacdf-a925-4f95-84dc-ac46003451ff/1713c520-edb6-43a3-b1b9-acb8002fdae7/58e33a0c-f86b-41c5-a11c-acb8002fdaf5/podcast.rss
+quanta @blog https://api.quantamagazine.org/feed/
+quantapodcast @pod https://api.quantamagazine.org/feed/podcast/
+sabine @yt https://www.youtube.com/feeds/videos.xml?channel_id=UC1yNl2E66ZzKApQdRuTQ4tw
+samharris @pod https://wakingup.libsyn.com/rss
+shitcoinchron @blog https://chainfail.substack.com/feed
+squarebitcoin @blog https://squareselfcustody.substack.com/feed.xml
+stackernews @busy https://stacker.news/rss
+susskind @arxiv 'http://export.arxiv.org/api/query?search_query=au:susskind_l&sortBy=lastUpdatedDate&sortOrder=descending'
+thedrive @pod https://peterattiadrive.libsyn.com/rss
+timferris @pod https://rss.art19.com/tim-ferriss-show
+veritasium @yt https://www.youtube.com/feeds/videos.xml?channel_id=UCHnyfMqiRRG1u-2MsSQLbXA
+witten @arxiv 'http://export.arxiv.org/api/query?search_query=au:witten_e&sortBy=lastUpdatedDate&sortOrder=descending'
+zvibern @arxiv 'http://export.arxiv.org/api/query?search_query=au:bern_zvi&sortBy=lastUpdatedDate&sortOrder=descending'
+scott-aaronson @blog https://scottaaronson.blog/?feed=rss2