This repository contains complete configuration files for Python development on Linux terminal. Some external dependencies have to be installed manually.
- terminal, shell, and editor configuration for IDE-like experience
- stack: alacritty, tmux, zsh, neovim, git
- vi key bindings
- true color support
- system clipboard integration
- Python development
Tested on various Linux distributions.
Select a terminal that supports copy-paste through ssh sessions, for example xterm, kitty, foot, or alacritty, see this.
Also, the terminal must support true color.
Configure this command to create/attach a tmux ‘main’ session:
/usr/bin/tmux new-session -A -s main
- Prefix is Ctrl-A instead of the default Ctrl-B.
- vi key bindings
- Copy:
Ctrl-A
thenEsc
then select withv
and copy withy
- Paste:
Ctrl-A
thenCtrl-P
- Copy:
- zplug zsh plugin manager
- set sane options
- vi key bindings
- syntax highlighting
- auto suggestions
- completion
- history search with
up
key - a few aliases
Configure neovim as a complete IDE for Python and shell script development.
- leader key is comma
,
- true color support with tokyonight scheme
- treesitter configuration, run
TSInstall
orTSUpdate
- automatic tag file generation
- copy to clipboard on yank, even through ssh connection
- autocompletion with many sources
- language server
- snippets
- treesitter
- buffer
- path
- language server configuration and hotkeys for code actions
- Pyright
- null-ls as wrapper for all kinds of tools
- jsonls
- ...
- search with Telescope and hotkeys, for example
,o
search file in git repo