Latest from work
This commit is contained in:
parent
1bcc150b34
commit
bc2f2a0e1c
15
.config/nvim/init.lua
Normal file
15
.config/nvim/init.lua
Normal file
@ -0,0 +1,15 @@
|
||||
--require('plugins.nord')
|
||||
require('user.settings')
|
||||
require('user.plugins')
|
||||
require('user.keys')
|
||||
require('plugins.lspconfig')
|
||||
require('plugins.null-ls')
|
||||
require('plugins.cmp')
|
||||
require('plugins.lualine')
|
||||
require('plugins.inlayhints')
|
||||
require('plugins.gitsigns')
|
||||
require('plugins.coverage')
|
||||
require('plugins.treesitter')
|
||||
require('plugins.eslint')
|
||||
require('plugins.dap')
|
||||
require('plugins.neotest')
|
||||
0
.config/nvim/lua/init.lua
Normal file
0
.config/nvim/lua/init.lua
Normal file
84
.config/nvim/lua/plugins/cmp.lua
Normal file
84
.config/nvim/lua/plugins/cmp.lua
Normal file
@ -0,0 +1,84 @@
|
||||
vim.opt.completeopt = {'menu', 'menuone', 'noselect', 'preview'}
|
||||
|
||||
require('luasnip.loaders.from_vscode').lazy_load()
|
||||
|
||||
local cmp = require('cmp')
|
||||
local luasnip = require('luasnip')
|
||||
|
||||
local select_opts = {behavior = cmp.SelectBehavior.Select}
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
luasnip.lsp_expand(args.body)
|
||||
end
|
||||
},
|
||||
sources = {
|
||||
{name = 'path'},
|
||||
{name = 'nvim_lsp'},
|
||||
{name = 'nvim_lsp_signature_help'},
|
||||
{name = 'buffer'},
|
||||
{name = 'luasnip'},
|
||||
},
|
||||
window = {
|
||||
documentation = cmp.config.window.bordered()
|
||||
},
|
||||
formatting = {
|
||||
fields = {'menu', 'abbr', 'kind'},
|
||||
format = function(entry, item)
|
||||
local menu_icon = {
|
||||
nvim_lsp = 'λ',
|
||||
nvim_lsp_signature_help = 'λ',
|
||||
luasnip = '⋗',
|
||||
buffer = 'Ω',
|
||||
path = '🖫',
|
||||
}
|
||||
|
||||
item.menu = menu_icon[entry.source.name]
|
||||
return item
|
||||
end,
|
||||
},
|
||||
mapping = {
|
||||
['<C-p>'] = cmp.mapping.select_prev_item(select_opts),
|
||||
['<C-o>'] = cmp.mapping.select_next_item(select_opts),
|
||||
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<CR>'] = cmp.mapping.confirm({select = false}),
|
||||
|
||||
['<C-d>'] = cmp.mapping(function(fallback)
|
||||
if luasnip.jumpable(1) then
|
||||
luasnip.jump(1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, {'i', 's'}),
|
||||
|
||||
['<C-b>'] = cmp.mapping(function(fallback)
|
||||
if luasnip.jumpable(-1) then
|
||||
luasnip.jump(-1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, {'i', 's'}),
|
||||
|
||||
['<Tab>'] = cmp.mapping(function(fallback)
|
||||
local col = vim.fn.col('.') - 1
|
||||
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item(select_opts)
|
||||
elseif col == 0 or vim.fn.getline('.'):sub(col, col):match('%s') then
|
||||
fallback()
|
||||
else
|
||||
cmp.complete()
|
||||
end
|
||||
end, {'i', 's'}),
|
||||
|
||||
['<S-Tab>'] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item(select_opts)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, {'i', 's'}),
|
||||
},
|
||||
})
|
||||
5
.config/nvim/lua/plugins/coverage.lua
Normal file
5
.config/nvim/lua/plugins/coverage.lua
Normal file
@ -0,0 +1,5 @@
|
||||
local cov = require("coverage")
|
||||
cov.setup()
|
||||
vim.keymap.set('n', '<Leader>cl', function() cov.load(true) end)
|
||||
vim.keymap.set('n', '<Leader>cc', cov.clear)
|
||||
vim.keymap.set('n', '<Leader>cs', cov.summary)
|
||||
29
.config/nvim/lua/plugins/dap.lua
Normal file
29
.config/nvim/lua/plugins/dap.lua
Normal file
@ -0,0 +1,29 @@
|
||||
|
||||
|
||||
require("dap-vscode-js").setup({
|
||||
-- node_path = "node", -- Path of node executable. Defaults to $NODE_PATH, and then "node"
|
||||
-- debugger_path = "(runtimedir)/site/pack/packer/opt/vscode-js-debug", -- Path to vscode-js-debug installation.
|
||||
-- debugger_cmd = { "js-debug-adapter" }, -- Command to use to launch the debug server. Takes precedence over `node_path` and `debugger_path`.
|
||||
adapters = { 'pwa-node', 'pwa-chrome', 'pwa-msedge', 'node-terminal', 'pwa-extensionHost' }, -- which adapters to register in nvim-dap
|
||||
-- log_file_path = "(stdpath cache)/dap_vscode_js.log" -- Path for file logging
|
||||
-- log_file_level = false -- Logging level for output to file. Set to false to disable file logging.
|
||||
-- log_console_level = vim.log.levels.ERROR -- Logging level for output to console. Set to false to disable console output.
|
||||
})
|
||||
|
||||
for _, language in ipairs({ "typescript", "javascript" }) do
|
||||
require("dap").configurations[language] = {
|
||||
{
|
||||
type = "pwa-node",
|
||||
request = "attach",
|
||||
name = "Attach",
|
||||
port = 9229,
|
||||
cwd = "${workspaceFolder}",
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
local dapui = require('dapui')
|
||||
dapui.setup()
|
||||
require("nvim-dap-virtual-text").setup()
|
||||
|
||||
vim.keymap.set('n', '<Leader>du', dapui.toggle)
|
||||
24
.config/nvim/lua/plugins/eslint.lua
Normal file
24
.config/nvim/lua/plugins/eslint.lua
Normal file
@ -0,0 +1,24 @@
|
||||
local null_ls = require("null-ls")
|
||||
local eslint = require("eslint")
|
||||
|
||||
null_ls.setup()
|
||||
|
||||
eslint.setup({
|
||||
bin = 'eslint_d', -- or `eslint_d`
|
||||
code_actions = {
|
||||
enable = true,
|
||||
apply_on_save = {
|
||||
enable = true,
|
||||
types = { "directive", "problem", "suggestion", "layout" },
|
||||
},
|
||||
disable_rule_comment = {
|
||||
enable = true,
|
||||
location = "separate_line", -- or `same_line`
|
||||
},
|
||||
},
|
||||
diagnostics = {
|
||||
enable = true,
|
||||
report_unused_disable_directives = false,
|
||||
run_on = "type", -- or `save`
|
||||
},
|
||||
})
|
||||
10
.config/nvim/lua/plugins/gitsigns.lua
Normal file
10
.config/nvim/lua/plugins/gitsigns.lua
Normal file
@ -0,0 +1,10 @@
|
||||
local gs = require('gitsigns')
|
||||
gs.setup({
|
||||
current_line_blame_opts = {
|
||||
delay = 0,
|
||||
},
|
||||
on_attach = function(bufnr)
|
||||
-- Toggle blame hint with Ctrl+B
|
||||
vim.keymap.set('n', '<C-b>', gs.toggle_current_line_blame)
|
||||
end
|
||||
})
|
||||
28
.config/nvim/lua/plugins/inlayhints.lua
Normal file
28
.config/nvim/lua/plugins/inlayhints.lua
Normal file
@ -0,0 +1,28 @@
|
||||
require('lsp-inlayhints').setup({
|
||||
inlay_hints = {
|
||||
parameter_hints = {
|
||||
show = false
|
||||
},
|
||||
type_hints = {
|
||||
remove_colon_start = true,
|
||||
remove_colon_end = true
|
||||
},
|
||||
max_len_align = false,
|
||||
highlight = "Comment",
|
||||
},
|
||||
enabled_at_startup = false,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_augroup("LspAttach_inlayhints", {})
|
||||
vim.api.nvim_create_autocmd("LspAttach", {
|
||||
group = "LspAttach_inlayhints",
|
||||
callback = function(args)
|
||||
if not (args.data and args.data.client_id) then
|
||||
return
|
||||
end
|
||||
|
||||
local bufnr = args.buf
|
||||
local client = vim.lsp.get_client_by_id(args.data.client_id)
|
||||
require("lsp-inlayhints").on_attach(client, bufnr)
|
||||
end,
|
||||
})
|
||||
36
.config/nvim/lua/plugins/lspconfig.lua
Normal file
36
.config/nvim/lua/plugins/lspconfig.lua
Normal file
@ -0,0 +1,36 @@
|
||||
local lspconfig = require('lspconfig')
|
||||
local lsp_defaults = lspconfig.util.default_config
|
||||
|
||||
lsp_defaults.capabilities = vim.tbl_deep_extend(
|
||||
'force',
|
||||
lsp_defaults.capabilities,
|
||||
require('cmp_nvim_lsp').default_capabilities()
|
||||
)
|
||||
|
||||
require'lspconfig'.tsserver.setup({
|
||||
settings = {
|
||||
typescript = {
|
||||
inlayHints = {
|
||||
includeInlayParameterNameHints = 'all',
|
||||
includeInlayParameterNameHintsWhenArgumentMatchesName = false,
|
||||
includeInlayFunctionParameterTypeHints = true,
|
||||
includeInlayVariableTypeHints = true,
|
||||
includeInlayPropertyDeclarationTypeHints = true,
|
||||
includeInlayFunctionLikeReturnTypeHints = true,
|
||||
includeInlayEnumMemberValueHints = true,
|
||||
}
|
||||
},
|
||||
javascript = {
|
||||
inlayHints = {
|
||||
includeInlayParameterNameHints = 'all',
|
||||
includeInlayParameterNameHintsWhenArgumentMatchesName = false,
|
||||
includeInlayFunctionParameterTypeHints = true,
|
||||
includeInlayVariableTypeHints = true,
|
||||
includeInlayPropertyDeclarationTypeHints = true,
|
||||
includeInlayFunctionLikeReturnTypeHints = true,
|
||||
includeInlayEnumMemberValueHints = true,
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
9
.config/nvim/lua/plugins/lualine.lua
Normal file
9
.config/nvim/lua/plugins/lualine.lua
Normal file
@ -0,0 +1,9 @@
|
||||
local setup = function()
|
||||
require('lualine').setup({
|
||||
options = {
|
||||
theme = 'nord'
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
return { setup = setup }
|
||||
12
.config/nvim/lua/plugins/neotest.lua
Normal file
12
.config/nvim/lua/plugins/neotest.lua
Normal file
@ -0,0 +1,12 @@
|
||||
require('neotest').setup {
|
||||
adapters = {
|
||||
require('neotest-jest')({
|
||||
jestCommand = "pnpm test --",
|
||||
env = { CI = true },
|
||||
cwd = function(path)
|
||||
return vim.fn.getcwd()
|
||||
end,
|
||||
}),
|
||||
require 'neotest-plenary',
|
||||
}
|
||||
}
|
||||
1
.config/nvim/lua/plugins/nord.lua
Normal file
1
.config/nvim/lua/plugins/nord.lua
Normal file
@ -0,0 +1 @@
|
||||
require('nord').setup()
|
||||
9
.config/nvim/lua/plugins/null-ls.lua
Normal file
9
.config/nvim/lua/plugins/null-ls.lua
Normal file
@ -0,0 +1,9 @@
|
||||
local null_ls = require("null-ls")
|
||||
|
||||
null_ls.setup({
|
||||
sources = {
|
||||
null_ls.builtins.formatting.stylua,
|
||||
null_ls.builtins.diagnostics.eslint,
|
||||
null_ls.builtins.completion.spell,
|
||||
},
|
||||
})
|
||||
22
.config/nvim/lua/plugins/treesitter.lua
Normal file
22
.config/nvim/lua/plugins/treesitter.lua
Normal file
@ -0,0 +1,22 @@
|
||||
require'nvim-treesitter.configs'.setup {
|
||||
-- A list of parser names, or "all"
|
||||
ensure_installed = { "typescript", "lua", "rust" },
|
||||
|
||||
-- Install parsers synchronously (only applied to `ensure_installed`)
|
||||
sync_install = false,
|
||||
|
||||
-- Automatically install missing parsers when entering buffer
|
||||
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
|
||||
auto_install = true,
|
||||
|
||||
highlight = {
|
||||
-- `false` will disable the whole extension
|
||||
enable = true,
|
||||
|
||||
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
|
||||
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
|
||||
-- Using this option may slow down your editor, and you may see some duplicate highlights.
|
||||
-- Instead of true it can also be a list of languages
|
||||
additional_vim_regex_highlighting = true,
|
||||
},
|
||||
}
|
||||
14
.config/nvim/lua/user/keys.lua
Normal file
14
.config/nvim/lua/user/keys.lua
Normal file
@ -0,0 +1,14 @@
|
||||
|
||||
-- Fuzzy switch
|
||||
vim.keymap.set('n', '<C-p>', ':Files<CR>')
|
||||
vim.keymap.set('n', '<C-j>', ':Buffers<CR>')
|
||||
|
||||
vim.keymap.set("n", "<leader>xx", "<cmd>TroubleToggle<cr>",
|
||||
{silent = true, noremap = true}
|
||||
)
|
||||
|
||||
vim.keymap.set("n", "<leader>gd", function() vim.lsp.buf.definition() end)
|
||||
vim.keymap.set("n", "<leader>gr", function() vim.lsp.buf.references() end)
|
||||
vim.keymap.set("n", "<leader>gi", function() vim.lsp.buf.implementation() end)
|
||||
|
||||
vim.keymap.set("n", "<leader>tt", function() require('lsp-inlayhints').toggle() end)
|
||||
107
.config/nvim/lua/user/plugins.lua
Normal file
107
.config/nvim/lua/user/plugins.lua
Normal file
@ -0,0 +1,107 @@
|
||||
local ensure_packer = function()
|
||||
local fn = vim.fn
|
||||
local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
|
||||
if fn.empty(fn.glob(install_path)) > 0 then
|
||||
fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
|
||||
vim.cmd [[packadd packer.nvim]]
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
local packer_bootstrap = ensure_packer()
|
||||
|
||||
return require('packer').startup(function()
|
||||
-- Packer manages itself
|
||||
use 'wbthomason/packer.nvim'
|
||||
|
||||
-- LSP Magic
|
||||
use 'neovim/nvim-lspconfig'
|
||||
|
||||
-- Inlay type hints, i.e. type hints merged into codelines
|
||||
use 'lvimuser/lsp-inlayhints.nvim'
|
||||
|
||||
-- CMP
|
||||
use 'L3MON4D3/LuaSnip'
|
||||
use {
|
||||
'saadparwaiz1/cmp_luasnip',
|
||||
requires = { 'L3MON4D3/LuaSnip' },
|
||||
}
|
||||
use 'hrsh7th/cmp-nvim-lsp'
|
||||
use 'hrsh7th/cmp-buffer'
|
||||
use 'hrsh7th/cmp-path'
|
||||
use 'hrsh7th/cmp-cmdline'
|
||||
use 'hrsh7th/cmp-nvim-lsp-signature-help'
|
||||
use {
|
||||
'hrsh7th/nvim-cmp',
|
||||
requires = { 'saadparwaiz1/cmp_luasnip', 'hrsh7th/cmp-nvim-lsp' },
|
||||
}
|
||||
|
||||
use {
|
||||
'nvim-lualine/lualine.nvim',
|
||||
requires = { 'kyazdani42/nvim-web-devicons', opt = true },
|
||||
}
|
||||
|
||||
--use 'vim-airline/vim-airline'
|
||||
--use 'vim-airline/vim-airline-themes'
|
||||
use 'lewis6991/gitsigns.nvim'
|
||||
use 'junegunn/fzf.vim'
|
||||
use 'udalov/kotlin-vim'
|
||||
use 'rust-lang/rust.vim'
|
||||
use 'zivyangll/git-blame.vim'
|
||||
use 'arcticicestudio/nord-vim'
|
||||
--use 'gbprod/nord.nvim'
|
||||
use 'hashivim/vim-terraform'
|
||||
use 'chaoren/vim-wordmotion'
|
||||
use 'cappyzawa/starlark.vim'
|
||||
use 'editorconfig/editorconfig-vim'
|
||||
|
||||
use({
|
||||
"andythigpen/nvim-coverage",
|
||||
requires = "nvim-lua/plenary.nvim",
|
||||
})
|
||||
use {
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
run = ':TSUpdate'
|
||||
}
|
||||
use 'jose-elias-alvarez/null-ls.nvim'
|
||||
use 'muniftanjim/eslint.nvim'
|
||||
use 'kyazdani42/nvim-web-devicons'
|
||||
use {
|
||||
'folke/trouble.nvim',
|
||||
requires = 'kyazdani42/nvim-web-devicons',
|
||||
config = function()
|
||||
require("trouble").setup {
|
||||
-- your configuration comes here
|
||||
-- or leave it empty to use the default settings
|
||||
-- refer to the configuration section below
|
||||
}
|
||||
end
|
||||
}
|
||||
use {
|
||||
"nvim-neotest/neotest",
|
||||
requires = {
|
||||
'nvim-lua/plenary.nvim',
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
'nvim-neotest/neotest-plenary',
|
||||
'antoinemadec/FixCursorHold.nvim',
|
||||
'haydenmeade/neotest-jest',
|
||||
}
|
||||
}
|
||||
|
||||
use 'mfussenegger/nvim-dap'
|
||||
use { "rcarriga/nvim-dap-ui", requires = {"mfussenegger/nvim-dap"} }
|
||||
use { "mxsdev/nvim-dap-vscode-js", requires = {"mfussenegger/nvim-dap"} }
|
||||
use {
|
||||
"microsoft/vscode-js-debug",
|
||||
opt = true,
|
||||
run = "npm install --legacy-peer-deps && npm run compile"
|
||||
}
|
||||
use 'theHamsta/nvim-dap-virtual-text'
|
||||
|
||||
use 'wakatime/vim-wakatime'
|
||||
|
||||
if packer_bootstrap then
|
||||
require('packer').sync()
|
||||
end
|
||||
end)
|
||||
65
.config/nvim/lua/user/settings.lua
Normal file
65
.config/nvim/lua/user/settings.lua
Normal file
@ -0,0 +1,65 @@
|
||||
|
||||
vim.cmd[[colorscheme nord]]
|
||||
vim.cmd[[syntax enable]]
|
||||
|
||||
-- Switch leader to minus
|
||||
vim.g.mapleader = '-'
|
||||
|
||||
-- Default to utf-8 unix
|
||||
vim.opt.encoding = 'utf-8'
|
||||
vim.opt.fileformats = 'unix,dos'
|
||||
|
||||
-- Skip swaps
|
||||
vim.opt.backup = false
|
||||
vim.opt.writebackup = false
|
||||
vim.opt.swapfile = false
|
||||
|
||||
-- Blink matching brackets
|
||||
vim.opt.showmatch = true
|
||||
|
||||
-- Allow hidden buffers
|
||||
vim.opt.hidden = true
|
||||
|
||||
-- Line numbers
|
||||
vim.opt.number = true
|
||||
|
||||
-- Marker line at 80 and 120 char and enable ruler
|
||||
vim.opt.cc = '80,120'
|
||||
vim.opt.ruler = true
|
||||
|
||||
-- Prevent mouse from selecting numbers
|
||||
vim.opt.mouse = 'a'
|
||||
|
||||
-- Show Tab characters and trailing whitespace
|
||||
vim.opt.list = true
|
||||
vim.opt.listchars='tab:▒░,trail:▓'
|
||||
|
||||
-- Space-indentation please
|
||||
vim.opt.expandtab = true
|
||||
vim.opt.shiftwidth = 4
|
||||
vim.opt.tabstop = 4
|
||||
vim.api.nvim_create_autocmd('FileType', {
|
||||
pattern = { 'typescript', 'typescriptreact', 'json', 'javascript' },
|
||||
command = 'setlocal shiftwidth=2 softtabstop=2 expandtab',
|
||||
})
|
||||
|
||||
-- Smart searching
|
||||
vim.opt.ignorecase = true
|
||||
vim.opt.smartcase = true
|
||||
vim.opt.incsearch = true
|
||||
vim.opt.hlsearch = true
|
||||
|
||||
-- Support backspace across lines
|
||||
vim.opt.backspace = 'indent,eol,start'
|
||||
|
||||
-- Ripgrep FZF
|
||||
vim.cmd[[function! RipgrepFzf(query, fullscreen)
|
||||
let command_fmt = 'rg --column --line-number --no-heading --color=always --smart-case %s || true'
|
||||
let initial_command = printf(command_fmt, shellescape(a:query))
|
||||
let reload_command = printf(command_fmt, '{q}')
|
||||
let spec = {'options': ['--phony', '--query', a:query, '--bind', 'change:reload:'.reload_command]}
|
||||
call fzf#vim#grep(initial_command, 1, fzf#vim#with_preview(spec), a:fullscreen)
|
||||
endfunction
|
||||
]]
|
||||
|
||||
vim.cmd[[command! -nargs=* -bang RG call RipgrepFzf(<q-args>, <bang>0)]]
|
||||
192
.config/nvim/old.init.vim
Normal file
192
.config/nvim/old.init.vim
Normal file
@ -0,0 +1,192 @@
|
||||
|
||||
lua require('plugins')
|
||||
|
||||
" Specify a directory for plugins
|
||||
" - For Neovim: stdpath('data') . '/plugged'
|
||||
" - Avoid using standard Vim directory names like 'plugin'
|
||||
" call plug#begin('~/.vim/plugged')
|
||||
|
||||
" Make sure you use single quotes
|
||||
|
||||
"Plug 'vim-airline/vim-airline'
|
||||
"Plug 'vim-airline/vim-airline-themes'
|
||||
"Plug 'sickill/vim-monokai'
|
||||
"Plug 'airblade/vim-gitgutter'
|
||||
"Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
|
||||
"Plug 'junegunn/fzf.vim'
|
||||
"Plug 'udalov/kotlin-vim'
|
||||
"Plug 'rust-lang/rust.vim'
|
||||
"Plug 'zivyangll/git-blame.vim'
|
||||
"Plug 'mfukar/robotframework-vim'
|
||||
"" Plug 'dense-analysis/ale'
|
||||
"Plug 'arcticicestudio/nord-vim'
|
||||
"Plug 'eliba2/vim-node-inspect'
|
||||
"Plug 'hashivim/vim-terraform'
|
||||
"Plug 'chaoren/vim-wordmotion'
|
||||
"Plug 'cappyzawa/starlark.vim'
|
||||
"Plug 'editorconfig/editorconfig-vim'
|
||||
"
|
||||
"" Initialize plugin system
|
||||
"call plug#end()
|
||||
|
||||
" Coloring
|
||||
syntax enable
|
||||
colorscheme nord
|
||||
|
||||
" Airline
|
||||
let g:airline#extensions#tabline#enabled = 1
|
||||
let g:airline_powerline_fonts = 1
|
||||
let g:airline_theme='nord'
|
||||
|
||||
" -- Buffer/Window Workflow
|
||||
" Allow hidden buffers
|
||||
set hidden
|
||||
|
||||
" Line numbers
|
||||
set number
|
||||
|
||||
" Marker line at col 80
|
||||
set cc=80
|
||||
|
||||
" Stop mouse from selecting numbers
|
||||
set mouse=a
|
||||
|
||||
" Show tab characters
|
||||
set list
|
||||
set listchars=tab:▒░,trail:▓
|
||||
|
||||
" Space-indentation please
|
||||
set expandtab
|
||||
set shiftwidth=4
|
||||
set tabstop=4
|
||||
autocmd FileType typescript setlocal shiftwidth=2 softtabstop=2 expandtab
|
||||
autocmd FileType typescriptreact setlocal shiftwidth=2 softtabstop=2 expandtab
|
||||
autocmd FileType json setlocal shiftwidth=2 softtabstop=2 expandtab
|
||||
autocmd FileType javascript setlocal shiftwidth=2 softtabstop=2 expandtab
|
||||
|
||||
" Default to UTF-8 encoding
|
||||
set encoding=utf-8
|
||||
|
||||
" Some languages have different indentation preferences. Try to use them.
|
||||
filetype plugin indent on
|
||||
|
||||
" Don't try to be Vi compatible. Just stick to Vim!
|
||||
set nocompatible
|
||||
|
||||
" Allow backspace to always work, across linebreaks/indentation etc.
|
||||
set backspace=indent,eol,start
|
||||
|
||||
" Blink matching bracket
|
||||
set showmatch
|
||||
|
||||
" We never use octals, but we do use zero-prefixed numbers.
|
||||
set nrformats-=octal
|
||||
|
||||
" We are fast, don't get stuck in an old aborted command
|
||||
set ttimeout
|
||||
set ttimeoutlen=50
|
||||
|
||||
" Always retain the status line
|
||||
set laststatus=2
|
||||
|
||||
" Enable ruler to show column position
|
||||
set ruler
|
||||
|
||||
" Retain last command in command line
|
||||
set showcmd
|
||||
|
||||
" Give me a menu for completion in the command line
|
||||
set wildmenu
|
||||
|
||||
" Stop asking me, just reload the changed file!
|
||||
set autoread
|
||||
|
||||
" Don't litter backup files. Don't do swaps (we're not that paranoid)
|
||||
set nobackup
|
||||
set nowritebackup
|
||||
set noswapfile
|
||||
|
||||
" Check for file endings
|
||||
set fileformats=unix,dos
|
||||
|
||||
" Quicky to exit insert mode
|
||||
inoremap <C-c> <Esc>
|
||||
|
||||
" Smartcase search
|
||||
set ignorecase
|
||||
set smartcase
|
||||
|
||||
" Incremental search
|
||||
set incsearch
|
||||
|
||||
" Highlight search
|
||||
set hlsearch
|
||||
" Use <C-L> to clear the highlighting of :set hlsearch.
|
||||
if maparg('<C-L>', 'n') ==# ''
|
||||
nnoremap <silent> <C-L> :nohlsearch<CR><C-L>
|
||||
endif
|
||||
|
||||
"
|
||||
" Plugins config
|
||||
"
|
||||
|
||||
" Ripgrep FZF
|
||||
function! RipgrepFzf(query, fullscreen)
|
||||
let command_fmt = 'rg --column --line-number --no-heading --color=always --smart-case %s || true'
|
||||
let initial_command = printf(command_fmt, shellescape(a:query))
|
||||
let reload_command = printf(command_fmt, '{q}')
|
||||
let spec = {'options': ['--phony', '--query', a:query, '--bind', 'change:reload:'.reload_command]}
|
||||
call fzf#vim#grep(initial_command, 1, fzf#vim#with_preview(spec), a:fullscreen)
|
||||
endfunction
|
||||
|
||||
command! -nargs=* -bang RG call RipgrepFzf(<q-args>, <bang>0)
|
||||
|
||||
" FZF
|
||||
nnoremap <C-p> :Files<Cr>
|
||||
nnoremap <C-j> :Buffers<Cr>
|
||||
|
||||
" Tabs
|
||||
nnoremap <Tab> :tabnext<CR>
|
||||
nnoremap <S-Tab> :tabprevious<CR>
|
||||
|
||||
" Rust
|
||||
let g:rustfmt_autosave = 1
|
||||
|
||||
" Git Blame
|
||||
nnoremap <C-b> :<C-u>call gitblame#echo()<CR>
|
||||
|
||||
" JSX
|
||||
let g:jsx_ext_required = 0
|
||||
|
||||
" Don't highlight shitty comments in JSON
|
||||
autocmd FileType json syntax match Comment +\/\/.\+$+
|
||||
|
||||
" this machine config
|
||||
if filereadable(expand("~/.vimrc.local"))
|
||||
source ~/.vimrc.local
|
||||
endif
|
||||
|
||||
" CTags
|
||||
set tags+=.tags " We like hidden files
|
||||
let g:fzf_tags_command = 'ctags -R -f .tags --exclude=@.ctagsignore'
|
||||
|
||||
" ALE
|
||||
"highlight ALEWarning ctermbg=DarkGrey
|
||||
"let g:ale_completion_enabled=1
|
||||
"
|
||||
"let g:ale_javascript_eslint_use_global = 1
|
||||
"let g:ale_javascript_eslint_executable = 'yarn'
|
||||
"let g:ale_javascript_eslint_options = 'run eslint'
|
||||
"
|
||||
"call ale#linter#Define('typescript', {
|
||||
"\ 'name': 'tsserver2',
|
||||
"\ 'lsp': 'tsserver',
|
||||
"\ 'executable': '/usr/bin/yarn',
|
||||
"\ 'command': '%e run tsserver',
|
||||
"\ 'project_root': function('ale#handlers#tsserver#GetProjectRoot'),
|
||||
"\ 'language': '',
|
||||
"\})
|
||||
"
|
||||
"let g:ale_linters = {
|
||||
"\ 'typescript': ['eslint', 'tsserver2']
|
||||
"\}
|
||||
295
.config/nvim/plugin/packer_compiled.lua
Normal file
295
.config/nvim/plugin/packer_compiled.lua
Normal file
@ -0,0 +1,295 @@
|
||||
-- Automatically generated packer.nvim plugin loader code
|
||||
|
||||
if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then
|
||||
vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"')
|
||||
return
|
||||
end
|
||||
|
||||
vim.api.nvim_command('packadd packer.nvim')
|
||||
|
||||
local no_errors, error_msg = pcall(function()
|
||||
|
||||
_G._packer = _G._packer or {}
|
||||
_G._packer.inside_compile = true
|
||||
|
||||
local time
|
||||
local profile_info
|
||||
local should_profile = false
|
||||
if should_profile then
|
||||
local hrtime = vim.loop.hrtime
|
||||
profile_info = {}
|
||||
time = function(chunk, start)
|
||||
if start then
|
||||
profile_info[chunk] = hrtime()
|
||||
else
|
||||
profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6
|
||||
end
|
||||
end
|
||||
else
|
||||
time = function(chunk, start) end
|
||||
end
|
||||
|
||||
local function save_profiles(threshold)
|
||||
local sorted_times = {}
|
||||
for chunk_name, time_taken in pairs(profile_info) do
|
||||
sorted_times[#sorted_times + 1] = {chunk_name, time_taken}
|
||||
end
|
||||
table.sort(sorted_times, function(a, b) return a[2] > b[2] end)
|
||||
local results = {}
|
||||
for i, elem in ipairs(sorted_times) do
|
||||
if not threshold or threshold and elem[2] > threshold then
|
||||
results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms'
|
||||
end
|
||||
end
|
||||
if threshold then
|
||||
table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)')
|
||||
end
|
||||
|
||||
_G._packer.profile_output = results
|
||||
end
|
||||
|
||||
time([[Luarocks path setup]], true)
|
||||
local package_path_str = "/home/patrick/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/patrick/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/patrick/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/patrick/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua"
|
||||
local install_cpath_pattern = "/home/patrick/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so"
|
||||
if not string.find(package.path, package_path_str, 1, true) then
|
||||
package.path = package.path .. ';' .. package_path_str
|
||||
end
|
||||
|
||||
if not string.find(package.cpath, install_cpath_pattern, 1, true) then
|
||||
package.cpath = package.cpath .. ';' .. install_cpath_pattern
|
||||
end
|
||||
|
||||
time([[Luarocks path setup]], false)
|
||||
time([[try_loadstring definition]], true)
|
||||
local function try_loadstring(s, component, name)
|
||||
local success, result = pcall(loadstring(s), name, _G.packer_plugins[name])
|
||||
if not success then
|
||||
vim.schedule(function()
|
||||
vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {})
|
||||
end)
|
||||
end
|
||||
return result
|
||||
end
|
||||
|
||||
time([[try_loadstring definition]], false)
|
||||
time([[Defining packer_plugins]], true)
|
||||
_G.packer_plugins = {
|
||||
["FixCursorHold.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/FixCursorHold.nvim",
|
||||
url = "https://github.com/antoinemadec/FixCursorHold.nvim"
|
||||
},
|
||||
LuaSnip = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/LuaSnip",
|
||||
url = "https://github.com/L3MON4D3/LuaSnip"
|
||||
},
|
||||
["cmp-buffer"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/cmp-buffer",
|
||||
url = "https://github.com/hrsh7th/cmp-buffer"
|
||||
},
|
||||
["cmp-cmdline"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/cmp-cmdline",
|
||||
url = "https://github.com/hrsh7th/cmp-cmdline"
|
||||
},
|
||||
["cmp-nvim-lsp"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
|
||||
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
|
||||
},
|
||||
["cmp-nvim-lsp-signature-help"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help",
|
||||
url = "https://github.com/hrsh7th/cmp-nvim-lsp-signature-help"
|
||||
},
|
||||
["cmp-path"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/cmp-path",
|
||||
url = "https://github.com/hrsh7th/cmp-path"
|
||||
},
|
||||
cmp_luasnip = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/cmp_luasnip",
|
||||
url = "https://github.com/saadparwaiz1/cmp_luasnip"
|
||||
},
|
||||
["editorconfig-vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/editorconfig-vim",
|
||||
url = "https://github.com/editorconfig/editorconfig-vim"
|
||||
},
|
||||
["eslint.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/eslint.nvim",
|
||||
url = "https://github.com/muniftanjim/eslint.nvim"
|
||||
},
|
||||
["fzf.vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/fzf.vim",
|
||||
url = "https://github.com/junegunn/fzf.vim"
|
||||
},
|
||||
["git-blame.vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/git-blame.vim",
|
||||
url = "https://github.com/zivyangll/git-blame.vim"
|
||||
},
|
||||
["gitsigns.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
|
||||
url = "https://github.com/lewis6991/gitsigns.nvim"
|
||||
},
|
||||
["kotlin-vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/kotlin-vim",
|
||||
url = "https://github.com/udalov/kotlin-vim"
|
||||
},
|
||||
["lsp-inlayhints.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/lsp-inlayhints.nvim",
|
||||
url = "https://github.com/lvimuser/lsp-inlayhints.nvim"
|
||||
},
|
||||
["lualine.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/lualine.nvim",
|
||||
url = "https://github.com/nvim-lualine/lualine.nvim"
|
||||
},
|
||||
neotest = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/neotest",
|
||||
url = "https://github.com/nvim-neotest/neotest"
|
||||
},
|
||||
["neotest-jest"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/neotest-jest",
|
||||
url = "https://github.com/haydenmeade/neotest-jest"
|
||||
},
|
||||
["neotest-plenary"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/neotest-plenary",
|
||||
url = "https://github.com/nvim-neotest/neotest-plenary"
|
||||
},
|
||||
["nord-vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nord-vim",
|
||||
url = "https://github.com/arcticicestudio/nord-vim"
|
||||
},
|
||||
["null-ls.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/null-ls.nvim",
|
||||
url = "https://github.com/jose-elias-alvarez/null-ls.nvim"
|
||||
},
|
||||
["nvim-cmp"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-cmp",
|
||||
url = "https://github.com/hrsh7th/nvim-cmp"
|
||||
},
|
||||
["nvim-coverage"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-coverage",
|
||||
url = "https://github.com/andythigpen/nvim-coverage"
|
||||
},
|
||||
["nvim-dap"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-dap",
|
||||
url = "https://github.com/mfussenegger/nvim-dap"
|
||||
},
|
||||
["nvim-dap-ui"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-dap-ui",
|
||||
url = "https://github.com/rcarriga/nvim-dap-ui"
|
||||
},
|
||||
["nvim-dap-virtual-text"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-dap-virtual-text",
|
||||
url = "https://github.com/theHamsta/nvim-dap-virtual-text"
|
||||
},
|
||||
["nvim-dap-vscode-js"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-dap-vscode-js",
|
||||
url = "https://github.com/mxsdev/nvim-dap-vscode-js"
|
||||
},
|
||||
["nvim-lspconfig"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
|
||||
url = "https://github.com/neovim/nvim-lspconfig"
|
||||
},
|
||||
["nvim-treesitter"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
|
||||
url = "https://github.com/nvim-treesitter/nvim-treesitter"
|
||||
},
|
||||
["nvim-web-devicons"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/nvim-web-devicons",
|
||||
url = "https://github.com/kyazdani42/nvim-web-devicons"
|
||||
},
|
||||
["packer.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/packer.nvim",
|
||||
url = "https://github.com/wbthomason/packer.nvim"
|
||||
},
|
||||
["plenary.nvim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/plenary.nvim",
|
||||
url = "https://github.com/nvim-lua/plenary.nvim"
|
||||
},
|
||||
["rust.vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/rust.vim",
|
||||
url = "https://github.com/rust-lang/rust.vim"
|
||||
},
|
||||
["starlark.vim"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/starlark.vim",
|
||||
url = "https://github.com/cappyzawa/starlark.vim"
|
||||
},
|
||||
["trouble.nvim"] = {
|
||||
config = { "\27LJ\2\n9\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\ftrouble\frequire\0" },
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/trouble.nvim",
|
||||
url = "https://github.com/folke/trouble.nvim"
|
||||
},
|
||||
["vim-terraform"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/vim-terraform",
|
||||
url = "https://github.com/hashivim/vim-terraform"
|
||||
},
|
||||
["vim-wakatime"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/vim-wakatime",
|
||||
url = "https://github.com/wakatime/vim-wakatime"
|
||||
},
|
||||
["vim-wordmotion"] = {
|
||||
loaded = true,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/start/vim-wordmotion",
|
||||
url = "https://github.com/chaoren/vim-wordmotion"
|
||||
},
|
||||
["vscode-js-debug"] = {
|
||||
loaded = false,
|
||||
needs_bufread = false,
|
||||
path = "/home/patrick/.local/share/nvim/site/pack/packer/opt/vscode-js-debug",
|
||||
url = "https://github.com/microsoft/vscode-js-debug"
|
||||
}
|
||||
}
|
||||
|
||||
time([[Defining packer_plugins]], false)
|
||||
-- Config for: trouble.nvim
|
||||
time([[Config for trouble.nvim]], true)
|
||||
try_loadstring("\27LJ\2\n9\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\ftrouble\frequire\0", "config", "trouble.nvim")
|
||||
time([[Config for trouble.nvim]], false)
|
||||
|
||||
_G._packer.inside_compile = false
|
||||
if _G._packer.needs_bufread == true then
|
||||
vim.cmd("doautocmd BufRead")
|
||||
end
|
||||
_G._packer.needs_bufread = false
|
||||
|
||||
if should_profile then save_profiles() end
|
||||
|
||||
end)
|
||||
|
||||
if not no_errors then
|
||||
error_msg = error_msg:gsub('"', '\\"')
|
||||
vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None')
|
||||
end
|
||||
@ -24,12 +24,11 @@
|
||||
"sway/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true,
|
||||
"format": "{icon}",
|
||||
"format": "{icon} {value}",
|
||||
"format-icons": {
|
||||
"1": "",
|
||||
"2": "",
|
||||
"3": "",
|
||||
"4": "",
|
||||
"3": "",
|
||||
"9": "",
|
||||
"urgent": "",
|
||||
"focused": "",
|
||||
|
||||
2
.vimrc
2
.vimrc
@ -51,6 +51,8 @@ set listchars=tab:▒░,trail:▓
|
||||
set expandtab
|
||||
set shiftwidth=4
|
||||
set tabstop=4
|
||||
autocmd FileType typescript setlocal shiftwidth=2 softtabstop=2 expandtab
|
||||
autocmd FileType typescriptreact setlocal shiftwidth=2 softtabstop=2 expandtab
|
||||
|
||||
" Default to UTF-8 encoding
|
||||
set encoding=utf-8
|
||||
|
||||
37
.zshrc
37
.zshrc
@ -2,6 +2,7 @@ zstyle :compinstall filename '/home/patrick/.zshrc'
|
||||
autoload -Uz promptinit && promptinit
|
||||
autoload -Uz compinit && compinit
|
||||
autoload -Uz colors && colors
|
||||
autoload -Uz bashcompinit && bashcompinit
|
||||
zmodload -i zsh/complist
|
||||
|
||||
zstyle ':completion:*' accept-exact "*(N)"
|
||||
@ -35,35 +36,6 @@ fi
|
||||
|
||||
bindkey '^R' history-incremental-search-backward # Reverse history search
|
||||
|
||||
# Enable colors
|
||||
|
||||
# GIT PROMPT
|
||||
function parse_git_dirty() {
|
||||
STATUS=$(command git status --porcelain --untracked-files=no | tail -n1)
|
||||
if [[ -n $STATUS ]]; then
|
||||
echo "%{$fg[red]%}✘"
|
||||
else
|
||||
echo "%{$fg[green]%}✔"
|
||||
fi
|
||||
}
|
||||
|
||||
function git_prompt() {
|
||||
isgit=$(command git rev-parse --is-inside-work-tree 2>/dev/null)
|
||||
if [[ $isgit == "true" ]]; then
|
||||
ref=$(command git symbolic-ref HEAD -q --short)
|
||||
echo "%{$fg[cyan]%}$ref$(parse_git_dirty)%{$reset_color%}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# Theme
|
||||
setopt promptsubst
|
||||
GIT='$(git_prompt)'
|
||||
PROMPT="%(?, ,%{$fg[red]%}FAIL%{$reset_color%}
|
||||
)
|
||||
%{$fg[green]%}[%*]%{$reset_color%} %m %{$fg[yellow]%}%~%{$reset_color%} $GIT
|
||||
%_ $ "
|
||||
|
||||
# Autocomplete menu
|
||||
bindkey -M menuselect '^o' accept-and-infer-next-history
|
||||
zstyle ':completion:*:*:*:*:*' menu select
|
||||
@ -88,6 +60,9 @@ expand-or-complete-with-dots() {
|
||||
zle -N expand-or-complete-with-dots
|
||||
bindkey '^I' expand-or-complete-with-dots
|
||||
|
||||
# Starship!
|
||||
eval "$(starship init zsh)"
|
||||
|
||||
HISTFILE=~/.zsh_history
|
||||
HISTSIZE=1000
|
||||
SAVEHIST=1000
|
||||
@ -118,3 +93,7 @@ export FZF_DEFAULT_COMMAND='fd --type f'
|
||||
|
||||
# RIPGREP
|
||||
export RIPGREP_CONFIG_PATH="${HOME}/.ripgrep"
|
||||
|
||||
# tabtab source for packages
|
||||
# uninstall by removing these lines
|
||||
[[ -f ~/.config/tabtab/zsh/__tabtab.zsh ]] && . ~/.config/tabtab/zsh/__tabtab.zsh || true
|
||||
|
||||
Loading…
Reference in New Issue
Block a user