[vim] Tweak linters

This commit is contained in:
Tibo De Peuter 2024-02-23 08:03:47 +01:00
parent 6c1cdbe288
commit 85553a4a9c
4 changed files with 112 additions and 30 deletions

View file

@ -57,12 +57,18 @@ in {
inherit (config.system) stateVersion;
packages = (with pkgs; [
chafa # Terminal image viewer
cmdtime # Zsh plugin
icosystem # Personal icon theme
spotify-adblock
]) ++ (with pkgs-unstable; [
# logseq
# obsidian
brave
chafa # Terminal image viewer
duf # Df alternative
fzf
glow # Terminal Markdown renderer
icosystem # Personal icon theme
jellyfin-media-player
kitty
libreoffice-fresh
@ -83,15 +89,10 @@ in {
# SMB
cifs-utils psmisc
]) ++ (with pkgs-unstable; [
brave
mpv
spotify
]) ++ (with pkgs-unstable.vimPlugins; [
# ale
statix
# vim-plug
vifm-vim
# Linters and LSPs
statix # Nix
ruff pylint # Python
]);
pointerCursor = {

View file

@ -9,7 +9,7 @@ in {
home-manager.users.tdpeuter = lib.mkIf config.sisyphus.programs.home-manager.enable {
home = {
file = {
".config/alacritty" = lib.mkIf (builtins.elem pkgs.alacritty installedPkgs) {
".config/alacritty" = {
source = ../../../stow/alacritty/.config/alacritty;
};
".config/dunst" = {
@ -17,26 +17,21 @@ in {
source = ../../../stow/dunst/.config/dunst;
};
".config/fuzzel" = {
enable = builtins.elem pkgs.fuzzel installedPkgs;
source = ../../../stow/fuzzel/.config/fuzzel;
recursive = true;
};
".config/git" = {
enable = (builtins.elem pkgs.git installedPkgs);
source = ../../../stow/git/.config/git;
recursive = true;
};
".config/kitty" = {
enable = builtins.elem pkgs.kitty installedPkgs;
source = ../../../stow/kitty/.config/kitty;
recursive = true;
};
".config/mako" = {
enable = builtins.elem pkgs.mako installedPkgs;
source = ../../../stow/mako/.config/mako;
};
".config/mpv" = {
enable = (builtins.elem pkgs-unstable.mpv installedPkgs);
source = ../../../stow/mpv/.config/mpv;
};
".config/OpenRGB" = {
@ -49,7 +44,7 @@ in {
source = ../../../stow/sway/.config/sway;
};
".config/swayidle" = {
enable = (builtins.elem pkgs.swayidle installedPkgs);
enable = config.sisyphus.desktop.sway.enable;
source = ../../../stow/swayidle/.config/swayidle;
};
".config/swaylock" = {
@ -57,7 +52,6 @@ in {
source = ../../../stow/swaylock/.config/swaylock;
};
".config/vifm" = {
enable = (builtins.elem pkgs.vifm installedPkgs);
source = ../../../stow/vifm/.config/vifm;
recursive = true; # Fix history and all working
};
@ -66,32 +60,28 @@ in {
source = ../../../stow/waybar/.config/waybar;
};
".config/zellij" = {
enable = (builtins.elem pkgs.zellij installedPkgs);
source = ../../../stow/zellij/.config/zellij;
};
".oh-my-zsh" = {
enable = true;
enable = (config.users.users.tdpeuter.shell == pkgs.zsh);
source = "${pkgs.oh-my-zsh}/share/oh-my-zsh";
recursive = true;
};
".oh-my-zsh/themes/tdpeuter.zsh-theme" = {
enable = (builtins.elem pkgs.zsh installedPkgs);
enable = (config.users.users.tdpeuter.shell == pkgs.zsh);
source = ../../../stow/zsh/.oh-my-zsh/themes/tdpeuter.zsh-theme;
};
".ssh/config" = lib.mkIf config.sisyphus.programs.ssh.enable {
source = ../../../stow/ssh/.ssh/config;
};
".vim" = {
enable = (builtins.elem pkgs.vim-full installedPkgs);
source = ../../../stow/vim/.vim;
recursive = true;
};
".vim/autoload/plug.vim" = {
enable = (builtins.elem pkgs.vim-full installedPkgs);
source = "${pkgs.vimPlugins.vim-plug}/plug.vim";
};
".vimrc" = {
enable = (builtins.elem pkgs.vim-full installedPkgs);
source = ../../../stow/vim/.vimrc;
};
".zshrc" = {
@ -99,15 +89,15 @@ in {
source = ../../../stow/zsh/.zshrc;
};
".zsh/plugins/cmdtime/cmdtime.plugin.zsh" = {
enable = (builtins.elem pkgs.cmdtime installedPkgs);
enable = (config.users.users.tdpeuter.shell == pkgs.zsh);
source = "${pkgs.cmdtime}/share/cmdtime/cmdtime.plugin.zsh";
};
".zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh" = {
enable = (builtins.elem pkgs.zsh-autosuggestions installedPkgs);
enable = (config.users.users.tdpeuter.shell == pkgs.zsh);
source = "${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh";
};
".zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" = {
enable = (builtins.elem pkgs.zsh-syntax-highlighting installedPkgs);
enable = (config.users.users.tdpeuter.shell == pkgs.zsh);
source = "${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh";
};
};

View file

@ -0,0 +1,87 @@
" vimrc file for following the coding standards specified in PEP 7 & 8.
"
" To use this file, source it in your own personal .vimrc file (``source
" <filename>``) or, if you don't have a .vimrc file, you can just symlink to it
" (``ln -s <this file> ~/.vimrc``). All options are protected by autocmds
" (read below for an explanation of the command) so blind sourcing of this file
" is safe and will not affect your settings for non-Python or non-C files.
"
"
" All setting are protected by 'au' ('autocmd') statements. Only files ending
" in .py or .pyw will trigger the Python settings while files ending in *.c or
" *.h will trigger the C settings. This makes the file "safe" in terms of only
" adjusting settings for Python and C files.
"
" Only basic settings needed to enforce the style guidelines are set.
" Some suggested options are listed but commented out at the end of this file.
" Number of spaces that a pre-existing tab is equal to.
" For the amount of space used for a new tab use shiftwidth.
au BufRead,BufNewFile *py,*pyw,*.c,*.h set tabstop=8
" What to use for an indent.
" This will affect Ctrl-T and 'autoindent'.
" Python: 4 spaces
" C: tabs (pre-existing files) or 4 spaces (new files)
au BufRead,BufNewFile *.py,*pyw set shiftwidth=4
au BufRead,BufNewFile *.py,*.pyw set expandtab
fu Select_c_style()
if search('^\t', 'n', 150)
set shiftwidth=8
set noexpandtab
el
set shiftwidth=4
set expandtab
en
endf
au BufRead,BufNewFile *.c,*.h call Select_c_style()
au BufRead,BufNewFile Makefile* set noexpandtab
" Use the below highlight group when displaying bad whitespace is desired.
highlight BadWhitespace ctermbg=red guibg=red
" Display tabs at the beginning of a line in Python mode as bad.
au BufRead,BufNewFile *.py,*.pyw match BadWhitespace /^\t\+/
" Make trailing whitespace be flagged as bad.
au BufRead,BufNewFile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/
" Wrap text after a certain number of characters
" Python: 79
" C: 79
au BufRead,BufNewFile *.py,*.pyw,*.c,*.h set textwidth=79
" Turn off settings in 'formatoptions' relating to comment formatting.
" - c : do not automatically insert the comment leader when wrapping based on
" 'textwidth'
" - o : do not insert the comment leader when using 'o' or 'O' from command mode
" - r : do not insert the comment leader when hitting <Enter> in insert mode
" Python: not needed
" C: prevents insertion of '*' at the beginning of every line in a comment
au BufRead,BufNewFile *.c,*.h set formatoptions-=c formatoptions-=o formatoptions-=r
" Use UNIX (\n) line endings.
" Only used for new files so as to not force existing files to change their
" line endings.
" Python: yes
" C: yes
au BufNewFile *.py,*.pyw,*.c,*.h set fileformat=unix
" ----------------------------------------------------------------------------
" The following section contains suggested settings. While in no way required
" to meet coding standards, they are helpful.
" Set the default file encoding to UTF-8: ``set encoding=utf-8``
" Puts a marker at the beginning of the file to differentiate between UTF and
" UCS encoding (WARNING: can trick shells into thinking a text file is actually
" a binary file when executing the text file): ``set bomb``
" For full syntax highlighting:
"``let python_highlight_all=1``
"``syntax on``
" Automatically indent based on file type: ``filetype indent on``
" Keep indentation level from previous line: ``set autoindent``
" Folding based on indentation: ``set foldmethod=indent``

View file

@ -3,6 +3,7 @@
"
source ~/.vim/theme.conf
source ~/.vim/source/python
set autoindent
set conceallevel=2
@ -12,6 +13,7 @@ set linebreak
set mouse=a
set nocompatible
set number
set omnifunc=ale#completion#OmniFunc
set path+=**
set relativenumber
set scrolloff=3
@ -73,10 +75,12 @@ endif
call plug#begin('~/.vim/plugins')
Plug 'dense-analysis/ale'
Plug 'vifm/vifm.vim'
Plug 'catppuccin/vim', { 'as': 'catppuccin' }
Plug 'dense-analysis/ale'
Plug 'NerdyPepper/statix'
Plug 'prabirshrestha/vim-lsp'
Plug 'sheerun/vim-polyglot'
Plug 'vifm/vifm.vim'
call plug#end()