From 8f78748141bf71fdd83f3cfcbfb2c598d143ac1c Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Thu, 23 May 2019 06:40:18 +0000 Subject: [PATCH] Update README.md --- README.md | 641 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 641 insertions(+) diff --git a/README.md b/README.md index b4b22ae..8226639 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,39 @@ Or, to **only** use these dotfiles two steps are necessary * set up qutebrowser for quicklinks, bookmarklets, url-redirection * set up better clipboard integration across vim, tmux, x +## Introduction & Idea +# dotfiles Read-Me and Roadmap + +## Quick-Start + +There are two ways of using these dotfiles: + +To fully provision a completely new arch linux setup + +`$ curl -Lks http://bit.do/marty-dot | sudo /bin/bash` + +Or, to **only** use these dotfiles two steps are necessary + +1. install git & zsh if not already installed on your machine (should often already be available) +1. run `chsh -s /bin/zsh` to switch the shell to zsh +1. go to home directory & run `git clone https://gitlab.com/marty-oehme/dotfiles.git df && cp -rf df/.git ~/ && rm -rf df && cd ~ && git checkout -f master` +1. install tmux (or remove the corresponding tmux config entries) [this should not be necessary anymore since tmux scripts check for an installation] +1. install a powerline compatible font (nerdfont patched fira code is what I use) + +## Checklist and Things to look at for dotfiles and Linux workflow + +* Bring this readme up to date with new dotfiles structure/installation/content + +* Überzug as terminal picture preview, [here](https://github.com/seebye/ueberzug) +* irssi as irc client +* vifm as ranger replacement - check the individual advantages, disadvantages +* neomutt / mutt-wizard as terminal email-client +* newboat as rss client +* think about calcurse as calendar app (would have to import/export from gcal) +* get some kind of todoist integration going, so we can use todoist from the cmdline +* set up qutebrowser for quicklinks, bookmarklets, url-redirection +* set up better clipboard integration across vim, tmux, x + ## Introduction & Idea [The basic ideas](https://www.anishathalye.com/2014/08/03/managing-your-dotfiles/) @@ -111,6 +144,614 @@ Or, to **only** use these dotfiles two steps are necessary - [ ] Look at ack to replace grep (https://beyondgrep.com/why-ack/) -> look at the talk for ideas of customization +## Restoration & Atomicity + +- [ ] Make it possible to get an arch install up and running with the same settings with a couple commands either + - [ ] Set up file system backup to restore from (borg backup) + - [ ] Set up meta-packages & dotfiles to clone from +- [ ] Set up ansible to automatically bootstrap Arch for both desktop & laptop + +## Dotfiles + +- [x] Make the dotfiles status command automatically not show untracked files (i.e. most files in homedir) -- [fix](https://wiki.archlinux.org/index.php/Dotfiles) + +## ZSH, dotfile installation + +- ~ +- .zgenrc +- .zshrc +- .zgenrc.d/ +- .Xresources +- .xres/ +- .config/ +- .tmux/ + +- .zsh/ +- .zgen/ + +- [x] I would like my home folder to be a bit more manageable, ideally it would *only* contain + - .zshrc + - .bashrc + - .xinitrc + - .Xresources as files and: + - .ssh/ -- ssh related configuration -> + *secret* stuff which should not be kept in the repo + (an ssh setup script e.g. should be kept in dotfiles if it does not contain keys etc.) + - .config/ -- program configuration. + If it changes how *another* program on the computer runs, it should go in configuration. + - .dotfiles/ -- the version history etc of my dotfiles (i.e. handled by git) +- [x] Re-Organize zsh.d/ config files + after organizational pattern in .zshrc (e.g. move k-alias script to internal script dependencies) +- [ ] Modify larbs setup script to ask for dotfile installation, +- [ ] Installation should ask *which* submodules of programs in csv to install: + (should be distinguished somehow, perhaps with tags) as in + 'Audio' packages, 'Music' packages, 'xorg' packages, 'Window Manager' packages (maybe use pkg groups?) +- [x] todo command alias to open up a preconfigured todo file OR a todoist cli (if i find a good one) + https://github.com/sachaos/todoist looks good. Needs to be synched and works best with peco -- see readme. + A working alias set might be useful here to set up commands for interaction + Todo Alias opens ROADMAP.md for now. +- [ ] readme command alias to open up the current project README.md + or ask to create a new one if none is found in current dir / parent dirs +- [ ] check for existence of xcape before trying to invoke its command in 5-capslock-to-ctrl +- [ ] make :q quit the terminal (perhaps doing alias as exit), :wq save the session in tmux and quit out of it + +## URxvt + +- [ ] Enable Ctrl+Arrows to jump back/forward word-wise; +- [x] enable (easy) copy/paste - Ctrl+Shift+C/V? + Copy paste works with Alt+Ctrl+C/V, text needs to be selected (only mouse for now) - does *not* work in tmux yet +- [ ] Select text with Shift keys +- [ ] enable some sort of command mode a-la vim? +- [ ] Unify tab switching -- mod+num for workspaces, alt+num for tabs (in qutebrowser,urxvt,fm,...) +- [ ] enable unified copy paste throughout whole system +- [ ] enable vim quitting - q to exit session, wq to save as tmux session and quit + +## mpv + +- [ ] Enable Seeking with vim controls (hjkl) +- [ ] Open file shortcut? +- [ ] Set up playlist creation from browser/yt etc + https://github.com/mpv-player/mpv/blob/master/TOOLS/umpv + will have 'umpv' command be a unique mpv instance for which any additional play item will get + *appended* -> perfect for playists. (see script for more info) + +## qutebrowser + +- [x] Open current page/ hint link in mpv (Ctrl + m / M) + https://qutebrowser.org/FAQ.html - commands for settings. +- [ ] Make it use umpv script in dotfiles confing to enable playlist queuing. +- [ ] Fix for getting stuck in text-field: + Either press tab (works sometimes to select next element) + or do this https://github.com/qutebrowser/qutebrowser/issues/2668 +## i3 + +- [x] Switch to hjkl +- [ ] Make custom workspaces: 1 - browser, 2 - term, 9 - agenda, 0 - music +- [ ] Superkey to Right Shift +- [x] Alias Capslock to shift - aliased to Ctrl now +- [ ] make it work with laptop as 2nd monitor + if I switch over to left window from i3, i want to land on the right window of my laptop as the next selection + + +## Various important packages + +- i3 [i3blocks, i3gaps] +- tmux +- pulseaudio (&pavucontrol) +- lightdm, lightdm-mini-greeter +- nvidia, nvidia-utils etc +- xorg-xinit, xorg-server, xorg-apps +- mopidy, mopidy-spotify, mopidy-spotify-tunigo, ncmpcpp or iris +- xcape - to enable capslock to act as control and escape at the same time + +# dotfiles Read-Me and Roadmap + +## Quick-Start + +There are two ways of using these dotfiles: + +To fully provision a completely new arch linux setup + +`$ curl -Lks http://bit.do/marty-dot | sudo /bin/bash` + +Or, to **only** use these dotfiles two steps are necessary + +1. install git & zsh if not already installed on your machine (should often already be available) +1. run `chsh -s /bin/zsh` to switch the shell to zsh +1. go to home directory & run `git clone https://gitlab.com/marty-oehme/dotfiles.git df && cp -rf df/.git ~/ && rm -rf df && cd ~ && git checkout -f master` +1. install tmux (or remove the corresponding tmux config entries) [this should not be necessary anymore since tmux scripts check for an installation] +1. install a powerline compatible font (nerdfont patched fira code is what I use) + +## Checklist and Things to look at for dotfiles and Linux workflow + +* Bring this readme up to date with new dotfiles structure/installation/content + +* Überzug as terminal picture preview, [here](https://github.com/seebye/ueberzug) +* irssi as irc client +* vifm as ranger replacement - check the individual advantages, disadvantages +* neomutt / mutt-wizard as terminal email-client +* newboat as rss client +* think about calcurse as calendar app (would have to import/export from gcal) +* get some kind of todoist integration going, so we can use todoist from the cmdline +* set up qutebrowser for quicklinks, bookmarklets, url-redirection +* set up better clipboard integration across vim, tmux, x + +## Introduction & Idea + +[The basic ideas](https://www.anishathalye.com/2014/08/03/managing-your-dotfiles/) + +[My Set-Up](https://developer.atlassian.com/blog/2016/02/best-way-to-store-dotfiles-git-bare-repo/) -- just exchange alias config with alias dotfiles (is already done *in* the dotfiles) + +## Examples & Inspiration + + +[holman dotfiles](https://github.com/holman/dotfiles) -- dotfiles from the dotfiles-are-meant-to-be-forked dude. Peruse and steal what looks good + +[LukeSmith dotfiles / LARBS setup, use it for my initial bootstrap](https://github.com/LukeSmithxyz/LARBS) + +[Github does dotfiles, a whole array of dotfile setups to choose from](https://dotfiles.github.io) + +[awesome dotfiles](https://github.com/webpro/awesome-dotfiles) -- way more info on dotfiles than you ever needed + +[VSCode & Vue focused dotfiles setup](https://github.com/sobolevn/dotfiles) -- looks interesting, maybe steal some tidbits + +[Various tidbits and aliases](https://github.com/ahmedelgabri/talks/blob/master/cli-and-git/cli-and-git.md) + +[dotfiles from the author of above link](https://github.com/ahmedelgabri/dotfiles) + +[extensive qutebrowser setup](https://gitlab.com/jgkamat/dotfiles/tree/master/qutebrowser/.config/qutebrowser) +# Roadmap + +## Perfectly setting up Arch + +- [ ] Fix ReadMe.txt being copied into home dir when cloning dotfiles. +- [x] Re-Map caps lock to ctrl +- [ ] Automatically switch between US/DE keyboard layout for laptop/pc + this should probably be done with loadkeys and keymap per pc in zshrc or a config derivative + see esp https://wiki.archlinux.org/index.php/Linux_console/Keyboard_configuration#Creating_a_custom_keymap + so we could load de-latin1/en-us, specified in the branch that is checked out. and then apply a custom + keymap over it to apply universal customizations, like Capslock=Control and so on. +- [ ] automatically install xcape to enable capslock remapping functionality + +## Overall Roadmap + +- [x] Set up Copy and Paste in X -- using clipmenud&clipnotify. + I can copy stuff to and from urxvt w alt+ctrl+c/v, w/o alt for the rest of the system. invoke clipmenu to show last clips. +- [-] Install & Configure Compton + Put on hold for now. What do I need it for? transparency? shadows? maybe removing screen-tearing. + : Will perhaps re-investigate when i want to use e.g. windowsflash - to highlight the currently active i3 window +- [ ] Setup i3 + - [x] Window switching shortcuts + - [x] Set up leaving question w/o mouse + - [x] Closing/Opening of windows shortcuts + - [ ] Multi-monitor setup (w/ barrier) + - [ ] Set up initial load of windows to specific screens +- [ ] Get Barrier running + Barrier by default installs the deps for its GUI (qt5 etc) -- if no GUI is necessary run it with build args to *not* make GUI (available in aur) + : try to get a nicely working setup in the gui in antergos and then copy this to this .file repo, no gui necessary +- [-] Install & Configure rofi + Happy with dmenu for now + Could use https://github.com/enkore/j4-dmenu-desktop to get a faster menu, independent of i3. +- [ ] Install & Configure polybar + - [theme ideas](https://github.com/adi1090x/polybar-themes) + - [community scripts](https://github.com/x70b1/polybar-scripts) +- [ ] Set up ranger + Set up video: https://www.youtube.com/watch?v=L6Vu7WPkoJo + - [ ] set up fzf for ranger + - [ ] set up movement,newtab,copy,move behavior + - [ ] set up visual selection + - [ ] set up tar-ing/untar-ing +- [ ] Set up sxiv/feh +- [ ] set up (n)vim + set jk to get out of modes + -> using xcape can accomplish mapping escape to capslock when released on its own. + That way we can get out of insert mode with jk AND capslock, whichever we prefer. +- [ ] Get Password Sync going (enpass?) +- [ ] Set up integrations with my hosted setup +- [ ] dmenu script and look [see ~10minutes in for automounting using dmenu example](https://www.youtube.com/watch?v=GKviflL9XeI) +- [ ] Set up *in the cloud* ide and dev environment (gce perhaps) +- [ ] Investigate mondo - automatic re-theming (can cycle through multiple themes and reload your .files etc) +- [ ] Use tmux for one main editing session. Use a single vim instance within this session. + for music, quick exporations etc other urxvt instances are fine? + can we use i3 to, when pressing mod+enter, not just open a new term but find out if tmux is running + and either open new tmux pane or new term if it is not? +- [ ] Look at ack to replace grep (https://beyondgrep.com/why-ack/) -> look at the talk for ideas of customization + + +## Restoration & Atomicity + +- [ ] Make it possible to get an arch install up and running with the same settings with a couple commands either + - [ ] Set up file system backup to restore from (borg backup) + - [ ] Set up meta-packages & dotfiles to clone from +- [ ] Set up ansible to automatically bootstrap Arch for both desktop & laptop + +## Dotfiles + +- [x] Make the dotfiles status command automatically not show untracked files (i.e. most files in homedir) -- [fix](https://wiki.archlinux.org/index.php/Dotfiles) + +## ZSH, dotfile installation + +- ~ +- .zgenrc +- .zshrc +- .zgenrc.d/ +- .Xresources +- .xres/ +- .config/ +- .tmux/ + +- .zsh/ +- .zgen/ + +- [x] I would like my home folder to be a bit more manageable, ideally it would *only* contain + - .zshrc + - .bashrc + - .xinitrc + - .Xresources as files and: + - .ssh/ -- ssh related configuration -> + *secret* stuff which should not be kept in the repo + (an ssh setup script e.g. should be kept in dotfiles if it does not contain keys etc.) + - .config/ -- program configuration. + If it changes how *another* program on the computer runs, it should go in configuration. + - .dotfiles/ -- the version history etc of my dotfiles (i.e. handled by git) +- [x] Re-Organize zsh.d/ config files + after organizational pattern in .zshrc (e.g. move k-alias script to internal script dependencies) +- [ ] Modify larbs setup script to ask for dotfile installation, +- [ ] Installation should ask *which* submodules of programs in csv to install: + (should be distinguished somehow, perhaps with tags) as in + 'Audio' packages, 'Music' packages, 'xorg' packages, 'Window Manager' packages (maybe use pkg groups?) +- [x] todo command alias to open up a preconfigured todo file OR a todoist cli (if i find a good one) + https://github.com/sachaos/todoist looks good. Needs to be synched and works best with peco -- see readme. + A working alias set might be useful here to set up commands for interaction + Todo Alias opens ROADMAP.md for now. +- [ ] readme command alias to open up the current project README.md + or ask to create a new one if none is found in current dir / parent dirs +- [ ] check for existence of xcape before trying to invoke its command in 5-capslock-to-ctrl +- [ ] make :q quit the terminal (perhaps doing alias as exit), :wq save the session in tmux and quit out of it + +## URxvt + +- [ ] Enable Ctrl+Arrows to jump back/forward word-wise; +- [x] enable (easy) copy/paste - Ctrl+Shift+C/V? + Copy paste works with Alt+Ctrl+C/V, text needs to be selected (only mouse for now) - does *not* work in tmux yet +- [ ] Select text with Shift keys +- [ ] enable some sort of command mode a-la vim? +- [ ] Unify tab switching -- mod+num for workspaces, alt+num for tabs (in qutebrowser,urxvt,fm,...) +- [ ] enable unified copy paste throughout whole system +- [ ] enable vim quitting - q to exit session, wq to save as tmux session and quit + +## mpv + +- [ ] Enable Seeking with vim controls (hjkl) +- [ ] Open file shortcut? +- [ ] Set up playlist creation from browser/yt etc + https://github.com/mpv-player/mpv/blob/master/TOOLS/umpv + will have 'umpv' command be a unique mpv instance for which any additional play item will get + *appended* -> perfect for playists. (see script for more info) + +## qutebrowser + +- [x] Open current page/ hint link in mpv (Ctrl + m / M) + https://qutebrowser.org/FAQ.html - commands for settings. +- [ ] Make it use umpv script in dotfiles confing to enable playlist queuing. +- [ ] Fix for getting stuck in text-field: + Either press tab (works sometimes to select next element) + or do this https://github.com/qutebrowser/qutebrowser/issues/2668 +## i3 + +- [x] Switch to hjkl +- [ ] Make custom workspaces: 1 - browser, 2 - term, 9 - agenda, 0 - music +- [ ] Superkey to Right Shift +- [x] Alias Capslock to shift - aliased to Ctrl now +- [ ] make it work with laptop as 2nd monitor + if I switch over to left window from i3, i want to land on the right window of my laptop as the next selection + + +## Various important packages + +- i3 [i3blocks, i3gaps] +- tmux +- pulseaudio (&pavucontrol) +- lightdm, lightdm-mini-greeter +- nvidia, nvidia-utils etc +- xorg-xinit, xorg-server, xorg-apps +- mopidy, mopidy-spotify, mopidy-spotify-tunigo, ncmpcpp or iris +- xcape - to enable capslock to act as control and escape at the same time + +# dotfiles Read-Me and Roadmap + +## Quick-Start + +There are two ways of using these dotfiles: + +To fully provision a completely new arch linux setup + +`$ curl -Lks http://bit.do/marty-dot | sudo /bin/bash` + +Or, to **only** use these dotfiles two steps are necessary + +1. install git & zsh if not already installed on your machine (should often already be available) +1. run `chsh -s /bin/zsh` to switch the shell to zsh +1. go to home directory & run `git clone https://gitlab.com/marty-oehme/dotfiles.git df && cp -rf df/.git ~/ && rm -rf df && cd ~ && git checkout -f master` +1. install tmux (or remove the corresponding tmux config entries) [this should not be necessary anymore since tmux scripts check for an installation] +1. install a powerline compatible font (nerdfont patched fira code is what I use) + +## Checklist and Things to look at for dotfiles and Linux workflow + +* Bring this readme up to date with new dotfiles structure/installation/content + +* Überzug as terminal picture preview, [here](https://github.com/seebye/ueberzug) +* irssi as irc client +* vifm as ranger replacement - check the individual advantages, disadvantages +* neomutt / mutt-wizard as terminal email-client +* newboat as rss client +* think about calcurse as calendar app (would have to import/export from gcal) +* get some kind of todoist integration going, so we can use todoist from the cmdline +* set up qutebrowser for quicklinks, bookmarklets, url-redirection +* set up better clipboard integration across vim, tmux, x + +## Introduction & Idea + +[The basic ideas](https://www.anishathalye.com/2014/08/03/managing-your-dotfiles/) + +[My Set-Up](https://developer.atlassian.com/blog/2016/02/best-way-to-store-dotfiles-git-bare-repo/) -- just exchange alias config with alias dotfiles (is already done *in* the dotfiles) + +## Examples & Inspiration + + +[holman dotfiles](https://github.com/holman/dotfiles) -- dotfiles from the dotfiles-are-meant-to-be-forked dude. Peruse and steal what looks good + +[LukeSmith dotfiles / LARBS setup, use it for my initial bootstrap](https://github.com/LukeSmithxyz/LARBS) + +[Github does dotfiles, a whole array of dotfile setups to choose from](https://dotfiles.github.io) + +[awesome dotfiles](https://github.com/webpro/awesome-dotfiles) -- way more info on dotfiles than you ever needed + +[VSCode & Vue focused dotfiles setup](https://github.com/sobolevn/dotfiles) -- looks interesting, maybe steal some tidbits + +[Various tidbits and aliases](https://github.com/ahmedelgabri/talks/blob/master/cli-and-git/cli-and-git.md) + +[dotfiles from the author of above link](https://github.com/ahmedelgabri/dotfiles) + +[extensive qutebrowser setup](https://gitlab.com/jgkamat/dotfiles/tree/master/qutebrowser/.config/qutebrowser) +# Roadmap + +## Perfectly setting up Arch + +- [ ] Fix ReadMe.txt being copied into home dir when cloning dotfiles. +- [x] Re-Map caps lock to ctrl +- [ ] Automatically switch between US/DE keyboard layout for laptop/pc + this should probably be done with loadkeys and keymap per pc in zshrc or a config derivative + see esp https://wiki.archlinux.org/index.php/Linux_console/Keyboard_configuration#Creating_a_custom_keymap + so we could load de-latin1/en-us, specified in the branch that is checked out. and then apply a custom + keymap over it to apply universal customizations, like Capslock=Control and so on. +- [ ] automatically install xcape to enable capslock remapping functionality + +## Overall Roadmap + +- [x] Set up Copy and Paste in X -- using clipmenud&clipnotify. + I can copy stuff to and from urxvt w alt+ctrl+c/v, w/o alt for the rest of the system. invoke clipmenu to show last clips. +- [-] Install & Configure Compton + Put on hold for now. What do I need it for? transparency? shadows? maybe removing screen-tearing. + : Will perhaps re-investigate when i want to use e.g. windowsflash - to highlight the currently active i3 window +- [ ] Setup i3 + - [x] Window switching shortcuts + - [x] Set up leaving question w/o mouse + - [x] Closing/Opening of windows shortcuts + - [ ] Multi-monitor setup (w/ barrier) + - [ ] Set up initial load of windows to specific screens +- [ ] Get Barrier running + Barrier by default installs the deps for its GUI (qt5 etc) -- if no GUI is necessary run it with build args to *not* make GUI (available in aur) + : try to get a nicely working setup in the gui in antergos and then copy this to this .file repo, no gui necessary +- [-] Install & Configure rofi + Happy with dmenu for now + Could use https://github.com/enkore/j4-dmenu-desktop to get a faster menu, independent of i3. +- [ ] Install & Configure polybar + - [theme ideas](https://github.com/adi1090x/polybar-themes) + - [community scripts](https://github.com/x70b1/polybar-scripts) +- [ ] Set up ranger + Set up video: https://www.youtube.com/watch?v=L6Vu7WPkoJo + - [ ] set up fzf for ranger + - [ ] set up movement,newtab,copy,move behavior + - [ ] set up visual selection + - [ ] set up tar-ing/untar-ing +- [ ] Set up sxiv/feh +- [ ] set up (n)vim + set jk to get out of modes + -> using xcape can accomplish mapping escape to capslock when released on its own. + That way we can get out of insert mode with jk AND capslock, whichever we prefer. +- [ ] Get Password Sync going (enpass?) +- [ ] Set up integrations with my hosted setup +- [ ] dmenu script and look [see ~10minutes in for automounting using dmenu example](https://www.youtube.com/watch?v=GKviflL9XeI) +- [ ] Set up *in the cloud* ide and dev environment (gce perhaps) +- [ ] Investigate mondo - automatic re-theming (can cycle through multiple themes and reload your .files etc) +- [ ] Use tmux for one main editing session. Use a single vim instance within this session. + for music, quick exporations etc other urxvt instances are fine? + can we use i3 to, when pressing mod+enter, not just open a new term but find out if tmux is running + and either open new tmux pane or new term if it is not? +- [ ] Look at ack to replace grep (https://beyondgrep.com/why-ack/) -> look at the talk for ideas of customization + + +## Restoration & Atomicity + +- [ ] Make it possible to get an arch install up and running with the same settings with a couple commands either + - [ ] Set up file system backup to restore from (borg backup) + - [ ] Set up meta-packages & dotfiles to clone from +- [ ] Set up ansible to automatically bootstrap Arch for both desktop & laptop + +## Dotfiles + +- [x] Make the dotfiles status command automatically not show untracked files (i.e. most files in homedir) -- [fix](https://wiki.archlinux.org/index.php/Dotfiles) + +## ZSH, dotfile installation + +- ~ +- .zgenrc +- .zshrc +- .zgenrc.d/ +- .Xresources +- .xres/ +- .config/ +- .tmux/ + +- .zsh/ +- .zgen/ + +- [x] I would like my home folder to be a bit more manageable, ideally it would *only* contain + - .zshrc + - .bashrc + - .xinitrc + - .Xresources as files and: + - .ssh/ -- ssh related configuration -> + *secret* stuff which should not be kept in the repo + (an ssh setup script e.g. should be kept in dotfiles if it does not contain keys etc.) + - .config/ -- program configuration. + If it changes how *another* program on the computer runs, it should go in configuration. + - .dotfiles/ -- the version history etc of my dotfiles (i.e. handled by git) +- [x] Re-Organize zsh.d/ config files + after organizational pattern in .zshrc (e.g. move k-alias script to internal script dependencies) +- [ ] Modify larbs setup script to ask for dotfile installation, +- [ ] Installation should ask *which* submodules of programs in csv to install: + (should be distinguished somehow, perhaps with tags) as in + 'Audio' packages, 'Music' packages, 'xorg' packages, 'Window Manager' packages (maybe use pkg groups?) +- [x] todo command alias to open up a preconfigured todo file OR a todoist cli (if i find a good one) + https://github.com/sachaos/todoist looks good. Needs to be synched and works best with peco -- see readme. + A working alias set might be useful here to set up commands for interaction + Todo Alias opens ROADMAP.md for now. +- [ ] readme command alias to open up the current project README.md + or ask to create a new one if none is found in current dir / parent dirs +- [ ] check for existence of xcape before trying to invoke its command in 5-capslock-to-ctrl +- [ ] make :q quit the terminal (perhaps doing alias as exit), :wq save the session in tmux and quit out of it + +## URxvt + +- [ ] Enable Ctrl+Arrows to jump back/forward word-wise; +- [x] enable (easy) copy/paste - Ctrl+Shift+C/V? + Copy paste works with Alt+Ctrl+C/V, text needs to be selected (only mouse for now) - does *not* work in tmux yet +- [ ] Select text with Shift keys +- [ ] enable some sort of command mode a-la vim? +- [ ] Unify tab switching -- mod+num for workspaces, alt+num for tabs (in qutebrowser,urxvt,fm,...) +- [ ] enable unified copy paste throughout whole system +- [ ] enable vim quitting - q to exit session, wq to save as tmux session and quit + +## mpv + +- [ ] Enable Seeking with vim controls (hjkl) +- [ ] Open file shortcut? +- [ ] Set up playlist creation from browser/yt etc + https://github.com/mpv-player/mpv/blob/master/TOOLS/umpv + will have 'umpv' command be a unique mpv instance for which any additional play item will get + *appended* -> perfect for playists. (see script for more info) + +## qutebrowser + +- [x] Open current page/ hint link in mpv (Ctrl + m / M) + https://qutebrowser.org/FAQ.html - commands for settings. +- [ ] Make it use umpv script in dotfiles confing to enable playlist queuing. +- [ ] Fix for getting stuck in text-field: + Either press tab (works sometimes to select next element) + or do this https://github.com/qutebrowser/qutebrowser/issues/2668 +## i3 + +- [x] Switch to hjkl +- [ ] Make custom workspaces: 1 - browser, 2 - term, 9 - agenda, 0 - music +- [ ] Superkey to Right Shift +- [x] Alias Capslock to shift - aliased to Ctrl now +- [ ] make it work with laptop as 2nd monitor + if I switch over to left window from i3, i want to land on the right window of my laptop as the next selection + + +## Various important packages + +- i3 [i3blocks, i3gaps] +- tmux +- pulseaudio (&pavucontrol) +- lightdm, lightdm-mini-greeter +- nvidia, nvidia-utils etc +- xorg-xinit, xorg-server, xorg-apps +- mopidy, mopidy-spotify, mopidy-spotify-tunigo, ncmpcpp or iris +- xcape - to enable capslock to act as control and escape at the same time + +[The basic ideas](https://www.anishathalye.com/2014/08/03/managing-your-dotfiles/) + +[My Set-Up](https://developer.atlassian.com/blog/2016/02/best-way-to-store-dotfiles-git-bare-repo/) -- just exchange alias config with alias dotfiles (is already done *in* the dotfiles) + +## Examples & Inspiration + + +[holman dotfiles](https://github.com/holman/dotfiles) -- dotfiles from the dotfiles-are-meant-to-be-forked dude. Peruse and steal what looks good + +[LukeSmith dotfiles / LARBS setup, use it for my initial bootstrap](https://github.com/LukeSmithxyz/LARBS) + +[Github does dotfiles, a whole array of dotfile setups to choose from](https://dotfiles.github.io) + +[awesome dotfiles](https://github.com/webpro/awesome-dotfiles) -- way more info on dotfiles than you ever needed + +[VSCode & Vue focused dotfiles setup](https://github.com/sobolevn/dotfiles) -- looks interesting, maybe steal some tidbits + +[Various tidbits and aliases](https://github.com/ahmedelgabri/talks/blob/master/cli-and-git/cli-and-git.md) + +[dotfiles from the author of above link](https://github.com/ahmedelgabri/dotfiles) + +[extensive qutebrowser setup](https://gitlab.com/jgkamat/dotfiles/tree/master/qutebrowser/.config/qutebrowser) +# Roadmap + +## Perfectly setting up Arch + +- [ ] Fix ReadMe.txt being copied into home dir when cloning dotfiles. +- [x] Re-Map caps lock to ctrl +- [ ] Automatically switch between US/DE keyboard layout for laptop/pc + this should probably be done with loadkeys and keymap per pc in zshrc or a config derivative + see esp https://wiki.archlinux.org/index.php/Linux_console/Keyboard_configuration#Creating_a_custom_keymap + so we could load de-latin1/en-us, specified in the branch that is checked out. and then apply a custom + keymap over it to apply universal customizations, like Capslock=Control and so on. +- [ ] automatically install xcape to enable capslock remapping functionality + +## Overall Roadmap + +- [x] Set up Copy and Paste in X -- using clipmenud&clipnotify. + I can copy stuff to and from urxvt w alt+ctrl+c/v, w/o alt for the rest of the system. invoke clipmenu to show last clips. +- [-] Install & Configure Compton + Put on hold for now. What do I need it for? transparency? shadows? maybe removing screen-tearing. + : Will perhaps re-investigate when i want to use e.g. windowsflash - to highlight the currently active i3 window +- [ ] Setup i3 + - [x] Window switching shortcuts + - [x] Set up leaving question w/o mouse + - [x] Closing/Opening of windows shortcuts + - [ ] Multi-monitor setup (w/ barrier) + - [ ] Set up initial load of windows to specific screens +- [ ] Get Barrier running + Barrier by default installs the deps for its GUI (qt5 etc) -- if no GUI is necessary run it with build args to *not* make GUI (available in aur) + : try to get a nicely working setup in the gui in antergos and then copy this to this .file repo, no gui necessary +- [-] Install & Configure rofi + Happy with dmenu for now + Could use https://github.com/enkore/j4-dmenu-desktop to get a faster menu, independent of i3. +- [ ] Install & Configure polybar + - [theme ideas](https://github.com/adi1090x/polybar-themes) + - [community scripts](https://github.com/x70b1/polybar-scripts) +- [ ] Set up ranger + Set up video: https://www.youtube.com/watch?v=L6Vu7WPkoJo + - [ ] set up fzf for ranger + - [ ] set up movement,newtab,copy,move behavior + - [ ] set up visual selection + - [ ] set up tar-ing/untar-ing +- [ ] Set up sxiv/feh +- [ ] set up (n)vim + set jk to get out of modes + -> using xcape can accomplish mapping escape to capslock when released on its own. + That way we can get out of insert mode with jk AND capslock, whichever we prefer. +- [ ] Get Password Sync going (enpass?) +- [ ] Set up integrations with my hosted setup +- [ ] dmenu script and look [see ~10minutes in for automounting using dmenu example](https://www.youtube.com/watch?v=GKviflL9XeI) +- [ ] Set up *in the cloud* ide and dev environment (gce perhaps) +- [ ] Investigate mondo - automatic re-theming (can cycle through multiple themes and reload your .files etc) +- [ ] Use tmux for one main editing session. Use a single vim instance within this session. + for music, quick exporations etc other urxvt instances are fine? + can we use i3 to, when pressing mod+enter, not just open a new term but find out if tmux is running + and either open new tmux pane or new term if it is not? +- [ ] Look at ack to replace grep (https://beyondgrep.com/why-ack/) -> look at the talk for ideas of customization + + ## Restoration & Atomicity - [ ] Make it possible to get an arch install up and running with the same settings with a couple commands either