Yay. You got new machine. Now you need to set it up. This includes setup scripts for Mac and Ubuntu.
- Keyboard -> Input Sources -> change language to CMD + Space
- Keyboard -> Spotlight - change to CMD + Shift + Space
- Keyboard -> Function keys -> Turn on "Use F1.. as function keys"
- Keyboard -> Mission control -> turn off
Mission ControlandApplication windows,Show Desktop- change
move left/right a spaceto use CMD instead of CTRL (so that tmux leader key would work fine)
- change
- Mouse -> disable natural scrolling
- Keyboard -> Key Repeat -> Fast
- Keyboard -> Delay Until Repeat -> Short
- Keyboard -> Text Input -> Disable most things
- Keyboard -> Accessibility -> Disable VoiceOver
- § - center window
- Shift § - restore window position
- Shift + - increase window
- Shift - - decrease window
- Shift F1 - move window left-top
- Shift F2 - move window right-top
- Shift F3 - move window left-bottom
- Shift F4 - move window right-bottom
- Cmd + - increase font
- Cmd - - decrease font
- Cmd t - open tab
- Cmd n - open new window
To install, run: ./install-ui-apps.sh
Others need manual installation:
- Install Jetbrains Mono Nerdfont or original Jetbrains Mono
- Update iTerm and IDEs to use it to see nice icons
- Use ligatures
git config --global user.name "Artjom Kurapov"
git config --global user.email "[email protected]"
git config --global pull.rebase false
# generate key for github
ssh-keygen -t rsa -b 4096 -C "[email protected]"
cat ~/.ssh/id_rsa.pubchmod +x install.sh
git clone [email protected]:tot-ra/workstation.git ~/git/workstation
~/git/workstation/install.sh
echo "source ~/git/workstation/mount.sh" >> ~/.zshrc
# link nvim and tmux configs to be linked to github repo
ln -s ~/git/workstation/.tmux.conf ~/.tmux.conf
ln -s ~/git/workstation/.config/nvim ~/.config/nvim
# now add this key to github --> https://github.com/settings/ssh/new- run
tmuxand run F1 I to install plugins - run
lazygitfirst time to activate - run nvim and from cmd mode run (where you'll need to install plugins):
:Lazy
:LazyExtras
:Copilot auth
:Mason
- F1 - tmux
- F12 - toggle fullscreen (wezterm)
Leader (F1) and:
-
:
new- create new session -
w - choose window
-
* - clears history and terminal
-
? - show key bindings
-
r - reload config
-
I - install plugins
-
: - command mode
-
$ - rename session
-
d - detach from session
-
[ - enter copy mode
- Space - start selection
- Enter - copy selection
- ] - paste selection
tmux ls- list sessionstmux new -s my-session- create sessiontmux a- attach to new sessiontmux a -t my-session- attach to session by name
- F1 + - create window
- F1 - - split window horizontally
- F1 | - split window vertically
- Ctrl Shift right - next window
- Ctrl Shift left - previous window
- , - rename window
- . - move window
- Ctrl arrows - moves between panes (including within nvim)
- " - split window to panes horizontally
- % - split window to panes vertically
- z - zoom pane (toggle)
- ! - move pane to own window
- o - switch session (interactive with plugin)
- F3 - find string
- F4 - find file
- :50 - go to line 50
- F11 - toggle DB UI
- Space is set as leader
- gd - go to definition
- e - toggle tree view
- Tab - accept completion
- Alt left/right - switch between tabs
- Alt up - close tab
- Alt down - pin tab
- Ctrl I - go to previous location
- Ctrl O - go to next location
- s - jump to characters (flash plugin)
- gg - go to top of the file
- G - go to end of the file
- 20G - go to line 20
- 5j - go up 5 lines
- 5k - go down 5 lines
- w jump to next word
- b jump back to previous word
- f - find character
- ; next
- m - bookmark line (for harpoon)
- TAB - toggle bookmark list
- / - search
- n - next hit
- f( - jump to next bracket
- za - Toggle between closing and opening the fold under the cursor.
- zR - Open all folds in the current buffer.
- zM - Close all folds in the current buffer.
- gcc - comment line
:%s/from/to/gc
- F2 - search/replace (nvim) with LSP
- I - switch to insert mode + go to beginning of the line
- A - switch to insert mode + go to end of the line
- i - switch to insert mode
- o - switch to insert mode + add new line after current one
- y - copy (yield)
- p - paste
- d - cut
- dd - delete line
- u - undo
- w - select word
- Space gg - toggle lazygit