nix #11
|
@ -16,20 +16,6 @@
|
||||||
" Theme
|
" Theme
|
||||||
source ~/.config/vim/theme.vim
|
source ~/.config/vim/theme.vim
|
||||||
|
|
||||||
" Status/tab lines
|
|
||||||
{% if variant == 'nvim' %}
|
|
||||||
{{ use_plugin('feline') }}
|
|
||||||
{% else %}
|
|
||||||
{{ use_plugin('airline') }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
" Goto utilities
|
|
||||||
{% if variant == 'nvim' %}
|
|
||||||
{{ use_plugin('telescope') }}
|
|
||||||
{% else %}
|
|
||||||
{{ use_plugin('fzf') }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
" Search/replace
|
" Search/replace
|
||||||
{{ use_plugin('abolish') }}
|
{{ use_plugin('abolish') }}
|
||||||
{{ use_plugin('easy_align') }}
|
{{ use_plugin('easy_align') }}
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
{{ add_source('vim-airline/vim-airline') -}}
|
|
||||||
{{ add_source('vim-airline/vim-airline-themes') -}}
|
|
||||||
set noshowmode
|
|
||||||
set laststatus=2
|
|
||||||
let g:airline_powerline_fonts = 1
|
|
||||||
{% if variant != 'nvim' %}
|
|
||||||
let g:airline#extensions#tabline#enabled = 1
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
let g:airline_section_a = airline#section#create(['mode'])
|
|
||||||
let g:airline_section_b = airline#section#create(['branch', 'hunks'])
|
|
||||||
" let g:airline_section_z = airline#section#create(['%B', '@', '%l', ':', '%c'])
|
|
||||||
|
|
||||||
let airline#extensions#languageclient#error_symbol = '✖ '
|
|
||||||
let airline#extensions#languageclient#warning_symbol = '⚠ '
|
|
|
@ -1,36 +0,0 @@
|
||||||
{# Fuzzy matching for all kind of stuff #}
|
|
||||||
{{ add_source('junegunn/fzf', {'do': './install --bin'}) }}
|
|
||||||
{{ add_source('junegunn/fzf.vim') -}}
|
|
||||||
let g:fzf_layout = { 'down': '~40%' }
|
|
||||||
let g:fzf_colors =
|
|
||||||
\ { 'fg': ['fg', 'Normal'],
|
|
||||||
\ 'bg': ['bg', 'Normal'],
|
|
||||||
\ 'hl': ['fg', 'Comment'],
|
|
||||||
\ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
|
|
||||||
\ 'bg+': ['bg', 'CursorLine', 'CursorColumn'],
|
|
||||||
\ 'hl+': ['fg', 'Statement'],
|
|
||||||
\ 'info': ['fg', 'PreProc'],
|
|
||||||
\ 'border': ['fg', 'Ignore'],
|
|
||||||
\ 'prompt': ['fg', 'Conditional'],
|
|
||||||
\ 'pointer': ['fg', 'Exception'],
|
|
||||||
\ 'marker': ['fg', 'Keyword'],
|
|
||||||
\ 'spinner': ['fg', 'Label'],
|
|
||||||
\ 'header': ['fg', 'Comment'] }
|
|
||||||
|
|
||||||
let g:fzf_command_prefix = 'Fzf'
|
|
||||||
nmap gF :FzfFiles<CR>
|
|
||||||
nmap gf :FzfGFiles<CR>
|
|
||||||
nmap gb :FzfBuffers<CR>
|
|
||||||
nmap gL :FzfLines<CR>
|
|
||||||
nmap gl :FzfBLines<CR>
|
|
||||||
nmap gT :FzfTags<CR>
|
|
||||||
nmap gt :FzfBTags<CR>
|
|
||||||
nmap gm :FzfMarks<CR>
|
|
||||||
nmap gw :FzfWindows<CR>
|
|
||||||
nmap gh :FzfHistory<CR>
|
|
||||||
nmap gH :FzfHistory:<CR>
|
|
||||||
nmap gS :FzfHistory/<CR>
|
|
||||||
nmap gs :FzfSnippets<CR>
|
|
||||||
|
|
||||||
" TODO `gd` → go to tag matching selected word, or show a list with that
|
|
||||||
" of tags pre-filtered with that word
|
|
|
@ -1,52 +0,0 @@
|
||||||
{{ add_source('nvim-telescope/telescope.nvim') -}}
|
|
||||||
{# Dependencies #}
|
|
||||||
{{ add_source('nvim-lua/popup.nvim') -}}
|
|
||||||
{{ add_source('nvim-lua/plenary.nvim') -}}
|
|
||||||
{# Extensions #}
|
|
||||||
{{ add_source('nvim-telescope/telescope-fzf-native.nvim', {'do': 'make'}) -}}
|
|
||||||
|
|
||||||
noremap gF <cmd>Telescope find_files<cr>
|
|
||||||
noremap gf <cmd>Telescope git_files<cr>
|
|
||||||
noremap gB <cmd>Telescope buffers<cr>
|
|
||||||
noremap gl <cmd>Telescope current_buffer_fuzzy_find<cr>
|
|
||||||
noremap gL <cmd>Telescope live_grep<cr>
|
|
||||||
noremap gT <cmd>Telescope tags<cr>
|
|
||||||
noremap gt <cmd>Telescope treesitter<cr>
|
|
||||||
noremap gm <cmd>Telescope marks<cr>
|
|
||||||
noremap gh <cmd>Telescope oldfiles<cr>
|
|
||||||
noremap gH <cmd>Telescope command_history<cr>
|
|
||||||
noremap gS <cmd>Telescope search_history<cr>
|
|
||||||
noremap gC <cmd>Telescope commands<cr>
|
|
||||||
noremap gr <cmd>Telescope lsp_references<cr>
|
|
||||||
noremap ga <cmd>Telescope lsp_code_actions<cr>
|
|
||||||
vnoremap ga <cmd>Telescope lsp_range_code_actions<cr>
|
|
||||||
noremap ge <cmd>Telescope lsp_document_diagnostics<cr>
|
|
||||||
noremap gE <cmd>Telescope lsp_workspace_diagnostics<cr>
|
|
||||||
noremap gd <cmd>Telescope lsp_definitions<cr>
|
|
||||||
noremap gs <cmd>Telescope lsp_document_symbols<cr>
|
|
||||||
|
|
||||||
lua << EOF
|
|
||||||
require('telescope').setup{
|
|
||||||
defaults = {
|
|
||||||
vimgrep_arguments = {
|
|
||||||
'rg',
|
|
||||||
'--color=never',
|
|
||||||
'--no-heading',
|
|
||||||
'--with-filename',
|
|
||||||
'--line-number',
|
|
||||||
'--column',
|
|
||||||
'--smart-case'
|
|
||||||
},
|
|
||||||
},
|
|
||||||
extensions = {
|
|
||||||
fzf = {
|
|
||||||
fuzzy = true, -- false will only do exact matching
|
|
||||||
override_generic_sorter = true, -- override the generic sorter
|
|
||||||
override_file_sorter = true, -- override the file sorter
|
|
||||||
case_mode = "smart_case", -- or "ignore_case" or "respect_case"
|
|
||||||
-- the default case_mode is "smart_case"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
require('telescope').load_extension('fzf')
|
|
||||||
EOF
|
|
|
@ -20,7 +20,6 @@
|
||||||
jq
|
jq
|
||||||
universal-ctags
|
universal-ctags
|
||||||
highlight
|
highlight
|
||||||
ripgrep # For nvim's :Telescope live_grep
|
|
||||||
zeal-qt6 # Offline documentation
|
zeal-qt6 # Offline documentation
|
||||||
|
|
||||||
# Docker
|
# Docker
|
||||||
|
|
|
@ -28,10 +28,59 @@ in
|
||||||
|
|
||||||
# Tabline
|
# Tabline
|
||||||
barbar.enable = true;
|
barbar.enable = true;
|
||||||
|
|
||||||
|
# Go to whatever
|
||||||
|
telescope = {
|
||||||
|
enable = true;
|
||||||
|
# FIXME Crashes nvim on startup, complaining about some keymap
|
||||||
|
# keymaps = {
|
||||||
|
# gF = "find_files";
|
||||||
|
# gf = "git_files";
|
||||||
|
# gB = "buffers";
|
||||||
|
# gl = "current_buffer_fuzzy_find";
|
||||||
|
# gL = "live_grep";
|
||||||
|
# gT = "tags";
|
||||||
|
# gt = "treesitter";
|
||||||
|
# gm = "marks";
|
||||||
|
# gh = "oldfiles";
|
||||||
|
# gH = "command_history";
|
||||||
|
# gS = "search_history";
|
||||||
|
# gC = "commands";
|
||||||
|
# gr = "lsp_references";
|
||||||
|
# ga = "lsp_code_actions";
|
||||||
|
# ge = "lsp_document_diagnostics";
|
||||||
|
# gE = "lsp_workspace_diagnostics";
|
||||||
|
# gd = "lsp_definitions";
|
||||||
|
# gs = "lsp_document_symbols";
|
||||||
|
# };
|
||||||
|
defaults = {
|
||||||
|
vimgrep_arguments = [
|
||||||
|
"${pkgs.ripgrep}/bin/rg"
|
||||||
|
"--color=never"
|
||||||
|
"--no-heading"
|
||||||
|
"--with-filename"
|
||||||
|
"--line-number"
|
||||||
|
"--column"
|
||||||
|
"--smart-case"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
extensions.fzf-native = {
|
||||||
|
enable = true;
|
||||||
|
caseMode = "smart_case";
|
||||||
|
fuzzy = true;
|
||||||
|
overrideFileSorter = true;
|
||||||
|
overrideGenericSorter = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
extraPlugins = with pkgs.vimPlugins; [
|
extraPlugins = with pkgs.vimPlugins; [
|
||||||
nvim-scrollview
|
nvim-scrollview
|
||||||
|
|
||||||
|
# Status line
|
||||||
|
feline-nvim # TODO Abandonned. Maybe use lualine?
|
||||||
];
|
];
|
||||||
|
extraConfigLua = "${builtins.readFile ./vim/feline.lua}";
|
||||||
|
|
||||||
# 23.11: Use keymaps, seems better
|
# 23.11: Use keymaps, seems better
|
||||||
maps = {
|
maps = {
|
||||||
# barbar
|
# barbar
|
||||||
|
|
|
@ -1,32 +1,33 @@
|
||||||
{# Customisable status line #}
|
vim.cmd([[
|
||||||
{{ add_source('famiu/feline.nvim') -}}
|
set noshowmode
|
||||||
set noshowmode
|
set laststatus=2
|
||||||
set laststatus=2
|
]])
|
||||||
lua << EOF
|
-- local base16_colors = require('base16-colorscheme').colors
|
||||||
local base16_colors = require('base16-colorscheme').colors
|
-- FIXME Color setting doesn't work, see ./feline_test.vim for a reproducible use case
|
||||||
|
-- that works on Arch but not on Nix (with Plug stuff removed)
|
||||||
local vi_mode_utils = require('feline.providers.vi_mode')
|
local vi_mode_utils = require('feline.providers.vi_mode')
|
||||||
local lsp = require('feline.providers.lsp')
|
local lsp = require('feline.providers.lsp')
|
||||||
require('feline').setup({
|
require('feline').setup({
|
||||||
default_bg = 'base01',
|
-- default_bg = 'base01',
|
||||||
default_fg = 'base04',
|
-- default_fg = 'base04',
|
||||||
theme = {
|
-- theme = {
|
||||||
base00 = base16_colors.base00,
|
-- base00 = base16_colors.base00,
|
||||||
base01 = base16_colors.base01,
|
-- base01 = base16_colors.base01,
|
||||||
base02 = base16_colors.base02,
|
-- base02 = base16_colors.base02,
|
||||||
base03 = base16_colors.base03,
|
-- base03 = base16_colors.base03,
|
||||||
base04 = base16_colors.base04,
|
-- base04 = base16_colors.base04,
|
||||||
base05 = base16_colors.base05,
|
-- base05 = base16_colors.base05,
|
||||||
base06 = base16_colors.base06,
|
-- base06 = base16_colors.base06,
|
||||||
base07 = base16_colors.base07,
|
-- base07 = base16_colors.base07,
|
||||||
base08 = base16_colors.base08,
|
-- base08 = base16_colors.base08,
|
||||||
base09 = base16_colors.base09,
|
-- base09 = base16_colors.base09,
|
||||||
base0A = base16_colors.base0A,
|
-- base0A = base16_colors.base0A,
|
||||||
base0B = base16_colors.base0B,
|
-- base0B = base16_colors.base0B,
|
||||||
base0C = base16_colors.base0C,
|
-- base0C = base16_colors.base0C,
|
||||||
base0D = base16_colors.base0D,
|
-- base0D = base16_colors.base0D,
|
||||||
base0E = base16_colors.base0E,
|
-- base0E = base16_colors.base0E,
|
||||||
base0F = base16_colors.base0F,
|
-- base0F = base16_colors.base0F,
|
||||||
},
|
-- },
|
||||||
components = {
|
components = {
|
||||||
active = {
|
active = {
|
||||||
{
|
{
|
||||||
|
@ -164,4 +165,3 @@ require('feline').setup({
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
EOF
|
|
9
config/nix/hm/vim/feline_test.vim
Normal file
9
config/nix/hm/vim/feline_test.vim
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
source ~/.config/vim/plug.vim
|
||||||
|
call plug#begin('~/.cache/nvim/plugged')
|
||||||
|
Plug 'RRethy/nvim-base16'
|
||||||
|
call plug#end()
|
||||||
|
|
||||||
|
colorscheme base16-solarized-dark
|
||||||
|
lua << EOF
|
||||||
|
a = require('base16-colorscheme').colors.base00
|
||||||
|
EOF
|
Loading…
Reference in a new issue