Skip to content

mrded/dotfiles

Repository files navigation

Dmitry Demenchuk does dotfiles

The single dot that has it all.

Clone the repository into ~/dotfiles: git clone https://github.com/mrded/dotfiles.git ~/dotfiles

NeoVim

  • Install Neovim brew install neovim
  • Replace configuration: ln -s ~/dotfiles/nvim ~/.config/nvim
  • Install Packer for plugins
  • Install plugins: nvim +PackerSync +TSUpdate

Vifm

Replace configuration: ln -s ~/dotfiles/vifm/vifmrc ~/.config/vifm/vifmrc

Alacritty

Replace configuration: ln -s ~/dotfiles/alacritty ~/.config/alacritty

issues:

Tmux

Tmux is needed for Alacritty to support tabs and splits.

  • Install Tmux brew install tmux
  • Install Plugin Manager
  • Install Pluggins: ~/.tmux/plugins/tpm/scripts/install_plugins.sh
  • Update Pluggins: ~/.tmux/plugins/tpm/scripts/update_plugin.sh all
  • Cleanup Pluggins: ~/.tmux/plugins/tpm/scripts/clean_plugins.sh
  • Replace configuration: ln -s ~/dotfiles/tmux/tmux.conf ~/.tmux.conf

issues:

  • notifications make an icon at the dock jump
  • Prevent from copying to clipboard on mouse select
  • Copy selected text on CMD+C

Wezterm

Replace configuration: ln -s ~/dotfiles/wezterm/wezterm.lua ~/.wezterm.lua

issues:

Kitty

Replace configuration: ln -s ~/dotfiles/kitty ~/.config/kitty

issues:

Ghostty

Replace configuration: ln -s ~/dotfiles/ghostty ~/.config/ghostty

issues:

  • none

Neovide

issues:

How to add a new NVim plugin

  1. Create a new file nvim/lua/plugins/{plugin-name}.lua
  2. The file should return Packer formatted string or a table, with a path to the plugin. eg: return { 'mrded/{plugin-name}' }
  3. Save and update Packer, to apply changes: nvim +PackerSync +TSUpdate

Terminal requirements

Gotchas

  • When changing plugin's settings, you need to run nvim +PackerSync +TSUpdate, as settings are cached.
  • Plugin dependencies (eg language servers) should install automagically by Mason, if not - troubleshoot that direction.

Troubleshooting

nvim

neovim may not install plugins propperly. Try to running :UpdateRemotePlugins

treesitter

treesitter may give errors. Try running :TSUpdate to update languages.

SonarLint

SonarLint requires Java 11+

java -version

Add to your ~/.zshrc:

export JAVA_HOME="/opt/homebrew/opt/openjdk@17"
JAVA_PATH=$JAVA_HOME/bin

Tools

  • source ./zsh/nvm-auto-switch.zsh to automatically switch Node.js versions based on the .nvmrc file in the current directory.
  • ./scripts/killport.sh <port> - Kill any process running on the specified port.

About

Dmitry Demenchuk does dotfiles

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published