{"id":16293091,"url":"https://github.com/vogler/dotfiles","last_synced_at":"2025-03-20T03:31:02.587Z","repository":{"id":6747136,"uuid":"7993471","full_name":"vogler/dotfiles","owner":"vogler","description":"config/setup for macOS/Linux/Windows: zsh, vim, tmux, vscode; old: Arch, awesome","archived":false,"fork":false,"pushed_at":"2025-03-14T16:17:18.000Z","size":943,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-14T17:26:53.615Z","etag":null,"topics":["dotfiles","hammerspoon-configuration","macos","neovim","neovim-configuration","setup-development-environment","setup-script","tmux-conf","vimrc","vscode","vscode-settings","zsh","zshrc"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vogler.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-02-03T17:12:31.000Z","updated_at":"2025-03-14T16:17:21.000Z","dependencies_parsed_at":"2023-09-25T00:15:25.078Z","dependency_job_id":"c30c1901-19ab-4ef9-814c-31931e2b325d","html_url":"https://github.com/vogler/dotfiles","commit_stats":{"total_commits":1007,"total_committers":3,"mean_commits":335.6666666666667,"dds":0.003972194637537285,"last_synced_commit":"58d8f79721d17fd1e843d5ddb0d062e2f7572fc8"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vogler%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vogler%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vogler%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vogler%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vogler","download_url":"https://codeload.github.com/vogler/dotfiles/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244047647,"owners_count":20389206,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dotfiles","hammerspoon-configuration","macos","neovim","neovim-configuration","setup-development-environment","setup-script","tmux-conf","vimrc","vscode","vscode-settings","zsh","zshrc"],"created_at":"2024-10-10T20:10:08.242Z","updated_at":"2025-03-20T03:31:01.983Z","avatar_url":"https://github.com/vogler.png","language":"Shell","readme":"# dotfiles\n\n![Screenshot 2022-09-16 at 00 55 08](https://user-images.githubusercontent.com/493741/190522650-8db76278-8e36-445d-9ba3-4fc699a14683.png)\n\n`./setup.sh` will install and configure the software I use. The core setup for terminal/ssh is the same for macOS and Linux.\n\n- System packages\n  - macOS: [brew.sh](https://github.com/vogler/dotfiles/blob/master/install/macos/brew.sh)\n  - Debian/Ubuntu etc.: [apt.sh](https://github.com/vogler/dotfiles/blob/master/install/apt.sh)\n  - npm, pip etc.\n  - Windows: [setup.bat](https://github.com/vogler/dotfiles/blob/master/setup.bat) - not really automated; [todo](https://www.slant.co/topics/1843/~windows-package-managers): scoop, Ninite?\n- macOS\n  - System Preferences and app settings: [defaults.sh](https://github.com/vogler/dotfiles/blob/master/install/macos/defaults.sh)\n  - Apps in Dock: [dock.sh](https://github.com/vogler/dotfiles/blob/master/install/macos/dock.sh)\n- dotfile manager - not needed, just use `ln -sf` - see below for links\n- zsh - shell\n  - [prezto](https://github.com/sorin-ionescu/prezto) - configuration framework with sane defaults, aliases, functions... - [zshrc](https://github.com/vogler/prezto/blob/master/runcoms/zshrc)\n  - [powerlevel10k](https://github.com/romkatv/powerlevel10k) - prompt - [.p10k.zsh](https://github.com/vogler/dotfiles/blob/master/.p10k.zsh)\n  - [fzf](https://github.com/junegunn/fzf) - fuzzy finder: ** for completion, ctrl-t for files, alt-c for cd, ctrl-r for history\n- [Neovim](https://neovim.io/) - editor - [.vimrc](https://github.com/vogler/dotfiles/blob/master/.vimrc)\n- [.tmux.conf](https://github.com/vogler/dotfiles/blob/master/.tmux.conf) - mostly for ssh, iTerm on macOS\n\n\u003cdetails\u003e\n  \u003csummary\u003eClick to show extracted vim plugins\u003c/summary\u003e\n\n  - https://github.com/tpope/vim-sensible - Defaults everyone can agree on\n  - https://github.com/tpope/vim-fugitive - provides :G (:Git), :GMove, :GBrowse etc.\n  - https://github.com/tpope/vim-rhubarb - GitHub extension for fugitive.vim: :GBrowse, omni-complete issues etc. in commit messages\n  - https://github.com/tpope/vim-endwise - end certain structures (if, do, etc.) automatically\n  - https://github.com/tpope/vim-surround - add/change/delete surrounding parentheses, brackets, quotes, XML tags\n  - https://github.com/tpope/vim-repeat - make . also repeat plugin maps instead of just native commands\n  - https://github.com/tpope/vim-eunuch - UNIX shell commands :Delete, :Move, :SudoWrite etc.\n  - https://github.com/tpope/vim-unimpaired - Pairs of handy bracket mappings\n  - https://github.com/tpope/vim-rsi - Readline key bindings in insert mode\n  - https://github.com/tpope/vim-obsession - cont. updated session files; :Obsess starts recording, load with -S or :source\n  - https://github.com/tpope/vim-vinegar - file browser enhancements (- opens netrw), - goes up one directory but keeps file focused (enter to go back)\n  - https://github.com/tpope/vim-speeddating - increment (C-A) / decrement (C-X) for date/time formats\n  - https://github.com/tpope/vim-jdaddy - JSON text objects (aj, ij) and pretty printing (gqaj)\n  - https://github.com/tpope/vim-dispatch - Asynchronous build and test dispatcher :Make\n  - https://github.com/tpope/vim-dadbod - interface for many databases :DB postgresql:///foobar, :DB sqlite:myfile.sqlite3 select count(*) from widgets\n  - https://github.com/tomtom/tcomment_vim\n  - https://github.com/scrooloose/nerdtree\n  - https://github.com/Xuyuanp/nerdtree-git-plugin\n  - https://github.com/majutsushi/tagbar - sidebar with outline viewer / ctags of current file\n  - https://github.com/kien/ctrlp.vim - Fuzzy file, buffer, mru, tag, etc finder\n  - https://github.com/mileszs/ack.vim - ag search results in quickfix window\n  - https://github.com/ojroques/vim-oscyank - SSH: also copy to client clipboard\n  - https://github.com/google/vim-searchindex - display number of search matches \u0026 index of a current match\n  - https://github.com/flazz/vim-colorschemes - colorscheme pack including solarized\n  - https://github.com/altercation/vim-colors-solarized - :colorscheme solarized (overwrites the above?)\n  - https://github.com/mhinz/vim-startify - start screen (if opened without arg) instead of empty buffer with MRU, bookmarks, sessions\n  - https://github.com/simnalamburt/vim-mundo - undo tree visualizer, fork of Gundo, :MundoToggle TODO init error: A supported python version was not found.\n  - https://github.com/junegunn/vim-peekaboo - shows contents of registers on the right in sidebar on \\\" and @ in normal mode and C-r in insert mode\n  - https://github.com/junegunn/goyo.vim' - distraction-free writing\n  - https://github.com/junegunn/limelight.vim' - only do syntax highlighting for current paragraph\n  - https://github.com/junegunn/rainbow_parentheses.vim' - same color for same bracket pairs\n  - https://github.com/junegunn/gv.vim' - :GV opens git commit browser, :GV! only commits for current file, :GV? fills location list the revisions of current file, can be used in visual mode to work on just lines\n  - https://github.com/vim-airline/vim-airline - status line with multiple sections and support for many plugins\n  - https://github.com/vim-airline/vim-airline-themes - :AirlineTheme solarized\n  - https://github.com/airblade/vim-gitgutter - git diff markers in sign column; jump to next hunk with ]c, stage hunk with ,hs, undo with ,hu\n  - https://github.com/chaoren/vim-wordmotion - more useful word motions incl. camel case, upper/lowercase, hex, numbers etc.\n  - https://github.com/unblevable/quick-scope - highlight unique character to find in each word\n  - https://github.com/Lokaltog/vim-easymotion - highlights targets to jump to, e.g. ,,w forward word, ,,j down line\n  - https://github.com/matze/vim-move - A-k/A-j move line/selection up/down; A-h/A-l move char/selection left/right\n  - https://github.com/wellle/targets.vim - text objects for pair, quote, separator, argument, tag\n  - https://github.com/michaeljsmith/vim-indent-object - text object for LOC at the same indent level: ii (inner indentation level), ai (incl. line above), iI, aI; e.g. vii\n  - https://github.com/vim-scripts/DeleteTrailingWhitespace - :DeleteTrailingWhitespace\n  - https://github.com/machakann/vim-swap - swap delimited items; g\u003c left, g\u003e right, gs interactive (h, l, j, k, 1-9, g/G group/ungroup, s sort, r reverse)\n  - https://github.com/mg979/vim-visual-multi - multiple cursors; add word with C-n, n/N next/prev, [/] select cursor, q skip, Q remove, tab to switch cursor (normal) and extend (visual) mode\n  - https://github.com/wakatime/vim-wakatime - automatic time tracking and metrics, wakatime.com\n  - https://github.com/junegunn/vim-easy-align - ga EasyAlign, vipga= (visual inner paragraph align around =), gaii2\u0026 (align around 2nd \u0026 on inner indentation level)\n  - https://github.com/chrisbra/csv.vim - CSV editor, :CSVSort, :MoveColumn\n  - https://github.com/gabrielelana/vim-markdown - syntax highlighting for GitHub Markdown flavor\n  - https://github.com/SidOfc/mkdx - functions for lists, checkboxes, code, shortcuts, headers, links\n  - https://github.com/iamcco/markdown-preview.nvim' - :MarkdownPreview opens in browser with synchronized scrolling - at some point did not open anything anymore, using `yarn install` instead of the above fixed it - https://github.com/iamcco/markdown-preview.nvim/issues/188\n  - https://github.com/lervag/vimtex - tex\n  - https://github.com/kchmck/vim-coffee-script - coffee\n  - https://github.com/leafgarland/typescript-vim - syntax files\n  - https://github.com/Quramy/tsuquyomi - client for TSServer: Completion, Navigate, etc.\n  - https://github.com/idris-hackers/idris-vim - idris\n  - https://github.com/FStarLang/VimFStar - fstar\n  - https://github.com/lambdatoast/elm.vim - elm\n\u003c/details\u003e\n\n### Used Hardware\n\n- macOS: MBA M1, MBP Intel\n- Debian: Asus C434 Chromebook, RPi4, RPi3\n- Ubuntu: some servers\n- Windows 10: desktop PC, setup not automated\n\n## Benchmark / Profiling\n\n### zsh\n\nSee [zsh-bench](https://github.com/romkatv/zsh-bench) for details and its [table](https://github.com/romkatv/zsh-bench/blob/master/doc/linux-desktop.md) with results for different configs.\n\n```console\n$ git clone https://github.com/romkatv/zsh-bench ~/zsh-bench\n$ ~/zsh-bench/zsh-bench\n  ==\u003e benchmarking login shell of user voglerr ...\n  creates_tty=0\n  has_compsys=1\n  has_syntax_highlighting=1\n  has_autosuggestions=1\n  has_git_prompt=0\n  first_prompt_lag_ms=28.856\n  first_command_lag_ms=311.178\n  command_lag_ms=13.115\n  input_lag_ms=10.574\n  exit_time_ms=87.635\n```\n\n### vim\n\nProfile nvim/vim with `v --startuptime v.log; tail v.log` (currently ~190ms).\n\n## Not needed\n### dotfile manager\n\n- https://github.com/twpayne/chezmoi\n- https://github.com/anishathalye/dotbot\n- https://github.com/TheLocehiliosan/yadm\n- https://github.com/thoughtbot/rcm\n- https://github.com/technicalpickles/homesick\n- https://www.gnu.org/software/stow/\n\n\n![Alt](https://repobeats.axiom.co/api/embed/5ac9ab25d5bb4d514e72e756f11daf56f172236e.svg \"Repobeats analytics image\")\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvogler%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvogler%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvogler%2Fdotfiles/lists"}