~andrewzah/dotfiles

a76a70590c168647f837978d9c79002a47c3656b — Andrew Zah 2 years ago c07b320
update
7 files changed, 597 insertions(+), 52 deletions(-)

M .chunkwmrc -rw-r--r-- => -rwxr-xr-x
M .gitconfig
M .skhdrc
M config/nvim/init.vim
A firefox-new-tab/index.html
A firefox-new-tab/input.css
A firefox-new-tab/normalize.css
M .chunkwmrc => .chunkwmrc +8 -7
@@ 19,13 19,12 @@ chunkc core::hotload 1
#

chunkc set global_desktop_mode           bsp
chunkc set 8_desktop_mode                float

chunkc set global_desktop_offset_top     7
chunkc set global_desktop_offset_bottom  7
chunkc set global_desktop_offset_left    7
chunkc set global_desktop_offset_right   7
chunkc set global_desktop_offset_gap     7
chunkc set global_desktop_offset_top     4
chunkc set global_desktop_offset_bottom  4
chunkc set global_desktop_offset_left    2
chunkc set global_desktop_offset_right   2
chunkc set global_desktop_offset_gap     3

# chunkc set 3_desktop_offset_top          190



@@ 69,7 68,8 @@ chunkc set window_use_cgs_move           0
# NOTE: the following are config variables for the chunkwm-border plugin.
#

chunkc set focused_border_color          0xffb8bb26
#chunkc set focused_border_color          0xffb8bb26
chunkc set focused_border_color          0xff50bbf3
chunkc set focused_border_width          1
chunkc set focused_border_radius         0
chunkc set focused_border_skip_floating  1


@@ 104,4 104,5 @@ chunkc tiling::rule --owner Firefox --role AXWindow --subrole AXDialog --state t
chunkc tiling::rule --owner Finder --name Copy --state float
chunkc tiling::rule --owner \"Azure Data Studio\"  --state tile
chunkc tiling::rule --owner \"App Store\" --state float
chunkc tiling::rule --owner \"KeyCastr\" --state float
chunkc tiling::rule --owner \"FightCade\" --state float

M .gitconfig => .gitconfig +26 -36
@@ 1,31 1,36 @@
[user]
	email = zah@andrewzah.com
	name = Andrew Zah
  signingkey = 5EB70FAA
  email = zah@andrewzah.com
  name = Andrew Zah
  signingkey = 6DA8AD68401EFD0D3F86F52477E0757829DDB540

[core]
	editor = nvim
        excludesfile = ~/.global_gitignore
  editor = nvim
  excludesfile = ~/.global_gitignore

[alias]
        aliases = !git config --list | grep 'alias\\.' | sed 's/alias\\.\\([^=]*\\)=\\(.*\\)/\\1\\ \t => \\2/' | sort

        # git add --all
        aa = add --all
        

        # find all of em
        finda = "!grepalias() { git config --global --get-regexp alias | grep -i \"$1\" | awk -v nr=2 '{sub(/^alias\\./,\"\")};{printf \"\\033[31m%_10s\\033[1;37m\", $1};{sep=FS};{for (x=nr; x<=NF; x++) {printf \"%s%s\", sep, $x; }; print \"\\033[0;39m\"}'; }; grepalias"

        # delete branch
        brdel = branch -D
        

        # most modified files
        churn = !git log --all -M -C --name-only --format='format:' "$@" | sort | grep -v '^$' | uniq -c | sort | awk 'BEGIN {print "count,file"} {print $1 "," $2}'
         

        # save repo as tarball
        export = archive -o latest.tar.gz -9 --prefix=latest/
        

        # list of commit sha-1s
        l = "!f() { git log $* | grep '^commit ' | cut -f 2 -d ' '; }; f"       
        
        l = "!f() { git log $* | grep '^commit ' | cut -f 2 -d ' '; }; f"

        # list all tags
        tags = tag -l
        

        # checks that local refs are up to date before overwriting
        please = push --force-with-lease



@@ 37,25 42,25 @@

        # recap your own commits on a project
        recap = log --all --pretty=format:'%h %ad %s' --no-merges --author=<zah@andrewzah.com> --date=short
        

        # amend commit
        commend = commit --amend --no-edit
         

        # merge no fast forward
        merc = merge --no-ff
         

        # brief status
        st = status --short --branch
         

        # stash only unstaged changes to tracked files
        stsh = stash --keep-index
        

        # stash any changes to tracked files
        staash = stash --include-untracked
         
        # stash ignored, untracked, and tracked files 

        # stash ignored, untracked, and tracked files
        staaash = stash --all
        

        # initialize empty repo and commit
        it = !git init && git commit -m \"root\" --allow-empty }
[diff]


@@ 71,7 76,7 @@
[color "diff"]
        meta = yellow
        frag = magenta
        old = red 
        old = red
        new = green
[color "status"]
        added = yellow


@@ 79,18 84,3 @@
        untracked = red
[commit]
        gpgsign = true

# shorthand URLs
[url "https://github.com/"]
        insteadOf = gh:
[url "git@github.com:"]
        insteadOf = ghs:
[url "https://gist.github.com/"]
        insteadOf = gist:
[url "https://gitlab.com/"]
        insteadOf = gl:
[url "git@gitlab.com:"]
        insteadOf = gls:

[init]
        templatedir = ~/.config/git/templates/init

M .skhdrc => .skhdrc +17 -7
@@ 1,6 1,3 @@
# reload config
cmd + alt + ctrl - r : khd -e "reload"

# focus window
alt - h : chunkc tiling::window --focus west
alt - j : chunkc tiling::window --focus south


@@ 34,6 31,15 @@ shift + cmd - right  : chunkc tiling::window --warp-floating top-right
shift + ctrl - left  : chunkc tiling::window --warp-floating bottom-left
shift + ctrl - right : chunkc tiling::window --warp-floating bottom-right

# make floating window fill screen
shift + alt - up     : chunkc tiling::window --grid-layout 1:1:0:0:1:1

# make floating window fill left-half of screen
shift + alt - left   : chunkc tiling::window --grid-layout 1:2:0:0:1:1

# make floating window fill right-half of screen
shift + alt - right : chunkc tiling::window --grid-layout 1:2:1:0:1:1

# send window to desktop
shift + alt - x : chunkc tiling::window --send-to-desktop $(chunkc get _last_active_desktop)
shift + alt - z : chunkc tiling::window --send-to-desktop prev


@@ 43,7 49,11 @@ shift + alt - 2 : chunkc tiling::window --send-to-desktop 2
shift + alt - 3 : chunkc tiling::window --send-to-desktop 3
shift + alt - 4 : chunkc tiling::window --send-to-desktop 4
shift + alt - 5 : chunkc tiling::window --send-to-desktop 5
shift + alt - 6 : chunkc tiling::window --send-to-desktop 6
shift + alt - q : chunkc tiling::window --send-to-desktop 6
shift + alt - w : chunkc tiling::window --send-to-desktop 7
shift + alt - e : chunkc tiling::window --send-to-desktop 8
shift + alt - r : chunkc tiling::window --send-to-desktop 9
shift + alt - t : chunkc tiling::window --send-to-desktop 10

# send window to desktop and switch desktop
shift + cmd - x : `id=$(chunkc get _last_active_desktop); chunkc tiling::window -d $id; khd -p "cmd + alt - $id" &> /dev/null`


@@ 107,7 117,7 @@ alt - a : chunkc tiling::desktop --toggle offset
# toggle window fullscreen
alt - f : chunkc tiling::window --toggle fullscreen

alt - p : chunkc tiling::desktop --toggle offset; chunkc tiling::window --toggle fullscreen
# alt - p : chunkc tiling::desktop --toggle offset; chunkc tiling::window --toggle fullscreen

# toggle window native fullscreen
shift + alt - f : chunkc tiling::window --toggle native-fullscreen


@@ 122,8 132,8 @@ alt - e : chunkc tiling::window --toggle split
alt - t : chunkc tiling::window --toggle float

# toggle sticky, float and resize to picture-in-picture size
alt - s : chunkc tiling::window --toggle sticky;\
          chunkc tiling::window --warp-floating pip-right
#alt - s : chunkc tiling::window --toggle sticky;\
          #chunkc tiling::window --warp-floating pip-right

# float next window to be tiled
shift + alt - t : chunkc set window_float_next 1

M config/nvim/init.vim => config/nvim/init.vim +30 -2
@@ 18,17 18,20 @@ Plug 'isobit/vim-caddyfile', { 'for': 'caddyfile' }
Plug 'kchmck/vim-coffee-script', { 'for': 'coffee' }
Plug 'leafgarland/typescript-vim', { 'for': 'typescript' }
Plug 'ledger/vim-ledger'
Plug 'lervag/vimtex'
Plug 'maxmellon/vim-jsx-pretty', { 'for': 'javascript' }
Plug 'pangloss/vim-javascript', { 'for': 'javascript' }
Plug 'rhysd/vim-crystal', { 'for': 'crystal' }
Plug 'rust-lang/rust.vim', { 'for': 'rust' }
Plug 'slim-template/vim-slim', { 'for': 'slim' }
Plug 'plasticboy/vim-markdown', { 'for': 'markdown' }

""" Vim Behavior/Functionality
Plug 'bkad/CamelCaseMotion'
Plug 'bhurlow/vim-parinfer', {'for': 'clojure' }
Plug 'bkad/CamelCaseMotion'
Plug 'chrisbra/NrrwRgn', { 'on': ['<plug>(nrrwrgn#NrrwRgn)'] }
Plug 'godlygeek/tabular'
Plug 'Alok/notational-fzf-vim'
Plug 'junegunn/fzf'
Plug 'junegunn/fzf.vim'
Plug 'luochen1990/rainbow'


@@ 38,7 41,7 @@ Plug 'mhinz/vim-grepper', { 'on': ['Grepper', '<plug>(GrepperOperator)'] }
Plug 'nathanaelkane/vim-indent-guides', { 'for': ['yaml', 'python', 'haml', 'slim', 'slang'] }
Plug 'radenling/vim-dispatch-neovim'
Plug 'scrooloose/nerdcommenter'
Plug 'soramugi/auto-ctags.vim'
Plug 'soramugi/auto-ctags.vim', { 'for': ['rust', 'ruby'] }
Plug 'tpope/vim-dispatch'
Plug 'tpope/vim-fugitive'
Plug 'w0rp/ale'


@@ 147,14 150,36 @@ set hidden  " When you 'abandon' a buffer (i.e., when you no longer have a
""" Variables for plugins
"""

"latex live stuff
let g:vimtex_compiler_progname = 'nvr'
let g:tex_flavor  = 'latex'
let g:vimtex_view_method = 'skim'
"let g:vimtex_latexmk_options='-pdf -pdflatex="xelatex -synctex=1 %S %O" -verbose -file-line-error -interaction=nonstopmode'

" Conceal
let g:clojure_conceal_extras = 1

" Rainbow brackets/parens
let g:rainbow_active = 1

" vim markdown disable idiotic defaults
let g:vim_markdown_folding_disabled = 1
let g:vim_markdown_emphasis_multiline = 0
let g:vim_markdown_fenced_languages = ['csharp=cs', 'rust=rs']
let g:vim_markdown_toml_frontmatter = 1
let g:vim_markdown_strikethrough = 1
let g:vim_markdown_auto_insert_bullets = 0
let g:vim_markdown_new_list_item_indent = 0

" fzf
let g:fzf_tags_command = 'ctags --extra=+f -R .git/tags'

" notational fzf vim
let g:nv_search_paths =
  \ ['~/Desktop/Sync/thoughts',
    \ '~/Desktop/Sync/thoughts/korean',
  \]

" gruvbox coloring for fzf
let g:fzf_colors =
\ { 'fg':      ['fg', 'Normal'],


@@ 234,6 259,9 @@ nmap <Leader>t :Tags<CR>
nmap <Leader>b :Buffers<CR>
nmap <c-p> :Files<cr>

" notational velocity
nnoremap <Leader>e :NV<CR>

" push window up/down
nnoremap <C-e> 3<C-e>
nnoremap <C-y> 3<C-y>

A firefox-new-tab/index.html => firefox-new-tab/index.html +126 -0
@@ 0,0 1,126 @@
<!DOCTYPE HTML>

<html>
  <head>
    <title> AZ Dashboard </title>
     <meta charset="UTF-8">

     <link rel="stylesheet" type="text/css" href="normalize.css">
     <link rel="stylesheet" type="text/css" href="input.css">
    <style>
      body {
        font-family: 'Courier New', 'Libre Baskerville' !important;
        color: #333;
        line-height: 1.1;
      }

      a {
        font-family: 'Courier New', 'Libre Baskerville' !important;
        text-decoration: none;
        color: #333;
        border-bottom: #333 1px dotted;
      }

      a:hover {
        color: green;
        border-bottom: green 1px dotted;
      }

      p {
        margin: 7px 1px;
      }

      .flex-container {
        max-width: 950px;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        flex-wrap: wrap;
      }

      .flex-container div {
        margin: 5px;
        min-width: 100px;
      }

      .flex-container div h2 {
        padding-bottom: 0px;
        text-decoration: underline;
        font-weight: bold;
      }
    </style>
  </head>
  <body>
    <div class="flex-container">
      <div id="tools">
        <h2> Tools </h2>
        <p><a href="https://js.masterpassword.app/">masterpassword</a></p>
        <p><a href="file:///Users/andrewzah/Desktop/Sync/personal/nullboard/nullboard.html">nullboard</a></p>
      </div>
      <div id="music">
        <h2> Music </h2>
        <p><a href="https://open.spotify.com/collection/playlists">spotify</a></p>
        <p><a href="https://www.youtube.com/feed/library">yt library</a></p>
        <p><a href="https://www.youtube.com/playlist?list=PLSxs5PgbqSvpCAizrNcd64x_9MZDBB9Q5">yt: moosic</a></p>
      </div>
      <div id="social">
        <h2> Social </h2>
        <p><a href="https://lobste.rs">lobste.rs</a></p>
        <p><a href="https://news.ycombinator.com">news.ycombinator</a></p>
        <p><a href="https://reddit.com">reddit</a></p>
        <p><a href="https://riot.im/app">riot</a></p>
      </div>
      <div id="servers-email">
        <h2> Repos </h2>
        <p><a href="https://git.sr.ht/~andrewzah/andrewzah.com">andrewzah.com</a></p>
        <p><a href="https://github.com/ossys/cFTE_Services">cFTE_Services</a></p>
        <p><a href="https://git.sr.ht/~andrewzah/dotfiles">dotfiles</a></p>
        <p><a href="https://git.sr.ht/~andrewzah/lode">lode</a></p>
        <p><a href="https://git.sr.ht/~andrewzah/personal-site">personal-site</a></p>
        <p><a href="https://github.com/azah/tf2-config">tf2-config</a></p>
      </div>
      <div id="git-links">
        <h2> Gitlikes </h2>
        <p><a href="https://git.sr.ht/~andrewzah/">git.sr.ht/~andrewzah</a></p>
        <p><a href="https://github.com/azah/">github.com/azah</a></p>
        <p><a href="https://git.andrewzah.com/andrei/">git.andrewzah.com/andrei</a></p>
        <p><a href="https://gitlab.com/andrewzah/">gitlab.com/andrewzah</a></p>
      </div>
      <div id="korean">
        <h2> Korean </h2>
        <p><a href="https://krdict.korean.go.kr/">korean.go.kr</a></p>
        <p><a href="https://endic.naver.com/?sLn=en">naver-en</a></p>
        <p><a href="https://ko.dict.naver.com/#/main">naver-ko</a></p>
        <p><a href="https://hanja.dict.naver.com/">naver hanja</a></p>
      </div>
      <div id="japanese">
        <h2> Japanese </h2>
        <p><a href="https://ichi.moe/">ichi.moe</a></p>
        <p><a href="https://jisho.org/">jisho.org</a></p>
      </div>
      <div id="slacks">
        <h2> Slacks </h2>
        <p><a href="https://ossys.slack.com">ossys</a></p>
        <p><a href="https://hirequest.slack.com">hirequest</a></p>
        <p><a href="https://gauntlt.slack.com">gauntlt</a></p>
        <p><a href="https://osquery.slack.com">osquery</a></p>
      </div>
      <div id="servers-email">
        <h2> WebAdmin </h2>
        <p><a href="https://admin.gandi.net/domain/fc1c0e74-d0ff-11e7-af59-00163e6dc886/">gandi overview</a></p>
        <p><a href="https://admin.gandi.net/domain/fc1c0e74-d0ff-11e7-af59-00163e6dc886/andrewzah.com/mail/mailboxes">gandi mailboxes</a></p>
        <p><a href="https://admin.gandi.net/domain/fc1c0e74-d0ff-11e7-af59-00163e6dc886/andrewzah.com/dns">dns: andrewzah.com</a></p>
        <p><a href="https://www.marcaria.com/MyDomains/dns_records.aspx?id=836926">dns: andrei.kr</a></p>
      </div>
      <div id="mine">
        <h2> My junk </h2>
        <p><a href="https://andrewzah.com">andrewzah.com</a></p>
        <p><a href="https://andrei.kr">andrei.kr</a></p>
        <p><a href="https://apps.andrei.kr">apps.andrei.kr</a></p>
        <p><a href="https://git.andrewzah.com">git.andrewzah.com</a></p>
        <p><a href="https://uptime.andrewzah.com">up.andrewzah.com</a></p>
      </div>
    </div> <!-- flex container end -->
  </body>
</html>

A firefox-new-tab/input.css => firefox-new-tab/input.css +41 -0
@@ 0,0 1,41 @@
body {
  font-family: 'Courier New', 'Libre Baskerville' !important;
  color: #333;
  line-height: 1.1;
}

a {
  font-family: 'Courier New', 'Libre Baskerville' !important;
  text-decoration: none;
  color: #333;
  border-bottom: #333 1px dotted;
}

a:hover {
  color: green;
  border-bottom: green 1px dotted;
}

p {
  margin: 7px 1px;
}

.flex-container {
  max-width: 950px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.flex-container div {
  margin: 5px;
  min-width: 100px;
}

.flex-container div h2 {
  padding-bottom: 0px;
  text-decoration: underline;
  font-weight: bold;
}

A firefox-new-tab/normalize.css => firefox-new-tab/normalize.css +349 -0
@@ 0,0 1,349 @@
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}