diff --git a/init.lua b/init.lua index 2c89d66..27ec17f 100644 --- a/init.lua +++ b/init.lua @@ -8,6 +8,7 @@ config.ensure_lazy() require('lazy').setup(vim.tbl_extend('keep', config.user_lazy_opts(), { spec = { { import = 'plex.plugins' }, + { import = 'plex.plugins.extras.coding' }, { import = 'plex.plugins.extras.ui' }, { import = 'plex.plugins.extras.treesitter' }, { import = 'plex.plugins.extras.editor' }, diff --git a/lua/plex/config/autocmds.lua b/lua/plex/config/autocmds.lua index 7c0c790..25ee149 100644 --- a/lua/plex/config/autocmds.lua +++ b/lua/plex/config/autocmds.lua @@ -56,13 +56,13 @@ vim.api.nvim_create_autocmd('TextYankPost', { }) -- Automatically set read-only for files being edited elsewhere -vim.api.nvim_create_autocmd('SwapExists', { - group = augroup('open_swap'), - nested = true, - callback = function() - vim.v.swapchoice = 'o' - end, -}) +-- vim.api.nvim_create_autocmd('SwapExists', { +-- group = augroup('open_swap'), +-- nested = true, +-- callback = function() +-- vim.v.swapchoice = 'o' +-- end, +-- }) -- Create directories when needed, when saving a file (except for URIs "://"). vim.api.nvim_create_autocmd('BufWritePre', { diff --git a/lua/plex/config/init.lua b/lua/plex/config/init.lua index af0754f..843880a 100644 --- a/lua/plex/config/init.lua +++ b/lua/plex/config/init.lua @@ -28,7 +28,7 @@ local defaults = { colorscheme = '', features = { - elite_mode = false, + elite_mode = true, window_q_mapping = true, }, diff --git a/lua/plex/config/keymaps.lua b/lua/plex/config/keymaps.lua index d4f80b9..674cba0 100644 --- a/lua/plex/config/keymaps.lua +++ b/lua/plex/config/keymaps.lua @@ -56,6 +56,14 @@ end map('n', '', 'lnext', { desc = 'Next Loclist Item' }) map('n', '', 'lprev', { desc = 'Previous Loclist Item' }) +-- go to next diagnostics entry +map('n', '', function () + vim.diagnostic.goto_next() +end, { desc = 'go to next diagnostic'}) +map('n', '', function () + vim.diagnostic.goto_prev() +end, { desc = 'go to last diagnostic'}) + -- Whitespace jump (see plugin/whitespace.vim) map('n', ']s', function() require('plex.lib.edit').whitespace_jump(1) @@ -120,8 +128,10 @@ map('n', 'o', 'o', { desc = 'Insert newline below' }) map('i', '', 'o', { desc = 'Start Newline' }) -- Split and join lines -map('n', 'jj', ':join', { desc = 'Join lines', silent = true }) -map('n', 'ss', 'ik', { desc = 'Split lines', silent = true }) +map('n', 'jj', ':joing$', { desc = 'Join lines', silent = true }) +map('n', 'jJ', 'k:joinj', { desc = 'Join lines', silent = true }) +map('n', 'ss', 'i', { desc = 'Split lines', silent = true }) +map('n', 'sS', 'ikg$', { desc = 'Split lines', silent = true }) -- Re-select blocks after indenting in visual/select mode map('x', '<', '(operator-sandwich-delete)(operator-sandwich-release-count)(textobj-sandwich-query-a)', silent = true }, - { 'dss', '(operator-sandwich-delete)(operator-sandwich-release-count)(textobj-sandwich-auto-a)', silent = true }, - { 'cs', '(operator-sandwich-replace)(operator-sandwich-release-count)(textobj-sandwich-query-a)', silent = true }, - { 'css', '(operator-sandwich-replace)(operator-sandwich-release-count)(textobj-sandwich-auto-a)', silent = true }, - { 'sa', '(operator-sandwich-add)', silent = true, mode = { 'n', 'x', 'o' }}, - { 'ir', '(textobj-sandwich-auto-i)', silent = true, mode = { 'x', 'o' }}, - { 'ab', '(textobj-sandwich-auto-a)', silent = true, mode = { 'x', 'o' }}, + { 'sd', '(operator-sandwich-delete)(operator-sandwich-release-count)(textobj-sandwich-query-a)', silent = true }, + { 'ssd', '(operator-sandwich-delete)(operator-sandwich-release-count)(textobj-sandwich-auto-a)', silent = true }, + { 'sc', '(operator-sandwich-replace)(operator-sandwich-release-count)(textobj-sandwich-query-a)', silent = true }, + { 'ssc', '(operator-sandwich-replace)(operator-sandwich-release-count)(textobj-sandwich-auto-a)', silent = true }, + { 'sa', '(operator-sandwich-add)', silent = true, mode = { 'n', 'x', 'o' }}, + { 'ir', '(textobj-sandwich-auto-i)', silent = true, mode = { 'x', 'o' }}, + { 'ab', '(textobj-sandwich-auto-a)', silent = true, mode = { 'x', 'o' }}, }, init = function() vim.g.sandwich_no_default_key_mappings = 1 diff --git a/lua/plex/plugins/extras/org/neorg.lua b/lua/plex/plugins/extras/org/neorg.lua index 75bfce1..e69de29 100644 --- a/lua/plex/plugins/extras/org/neorg.lua +++ b/lua/plex/plugins/extras/org/neorg.lua @@ -1,26 +0,0 @@ -return { - { - "nvim-neorg/neorg", - lazy = false, - build = ":Neorg sync-parsers", - dependencies = { "nvim-lua/plenary.nvim" }, - config = function() - require("neorg").setup { - load = { - ["core.defaults"] = {}, -- Loads default behaviour - ["core.concealer"] = {}, -- Adds pretty icons to your documents - ["core.dirman"] = { -- Manages Neorg workspaces - config = { - workspaces = { - -- NOTE: This is the server branch, note taking here should not - -- be needed. Also, my server does not have a synchronisation - -- to nextcloud set up, so I don't have access to my Neorg - -- notes regardless. - }, - }, - }, - }, - } - end, - }, -} diff --git a/lua/plex/plugins/extras/treesitter/treesj.lua b/lua/plex/plugins/extras/treesitter/treesj.lua index 0cc6162..fd8ba6f 100644 --- a/lua/plex/plugins/extras/treesitter/treesj.lua +++ b/lua/plex/plugins/extras/treesitter/treesj.lua @@ -1,6 +1,8 @@ return { { 'Wansmer/treesj', + enabled = true, + lazy = false, cmd = { 'TSJJoin', 'TSJSplit' }, keys = { { 'sj', 'TSJJoin' }, diff --git a/lua/plex/plugins/extras/ui/dashboard.lua b/lua/plex/plugins/extras/ui/dashboard.lua index 1900ac8..49601fa 100644 --- a/lua/plex/plugins/extras/ui/dashboard.lua +++ b/lua/plex/plugins/extras/ui/dashboard.lua @@ -1,3 +1,20 @@ +local function get_header() + -- see https://github.com/MaximilianLloyd/ascii.nvim + return { + -- The following is a customized version! + [[ ]], + [[ ██ ]], + [[ █ ███████ █████ ██ ]], + [[ ███ █████ █████  ]], + [[ █████ ███ ███████████████████ ███ ███████████ ]], + [[ ██ ██ █ ███ █████████████ █████ ██████████████ ]], + [[ ████ ████ ██████████ █████████ █████ █████ ████ █████ ]], + [[ ██████ ██ ███ ███ █████████ █████ █████ ████ █████ ]], + [[ ████████  ██████████████████ ████ █████ █████ ████ ██████ ]], + [[ ]], + } +end + return { { 'glepnir/dashboard-nvim', @@ -7,11 +24,9 @@ return { theme = 'hyper', config = { - header = { - foo = "bar", - }, + header = get_header(), week_header = { - enable = true, + enable = false, }, shortcut = { { @@ -50,6 +65,17 @@ return { key = 's', }, }, + + project = { + enable = true, + limit = 8, + icon = '', + label = ' Projects', + action = 'Telescope find_files cwd=' + }, + packages = { enable = true}, + mru = { limit = 10, icon = '', label = ' Last Edited'}, + -- footer = { 'footer bar foo' }, }, }) diff --git a/lua/plex/plugins/treesitter.lua b/lua/plex/plugins/treesitter.lua index a422b5a..592534c 100644 --- a/lua/plex/plugins/treesitter.lua +++ b/lua/plex/plugins/treesitter.lua @@ -69,8 +69,8 @@ return { -- See: https://github.com/windwp/nvim-ts-autotag autotag = { enable = true, - -- Removed markdown due to errors filetypes = { + 'markdown', 'glimmer', 'handlebars', 'hbs', @@ -186,5 +186,9 @@ return { 'zig', }, }, + init = function () + vim.opt.concealcursor = "nc" + vim.opt.conceallevel = 2 + end }, } diff --git a/lua/plex/plugins/ui.lua b/lua/plex/plugins/ui.lua index 48ce9f7..63917cb 100644 --- a/lua/plex/plugins/ui.lua +++ b/lua/plex/plugins/ui.lua @@ -6,7 +6,10 @@ return { ----------------------------------------------------------------------------- { 'nvim-tree/nvim-web-devicons', lazy = false }, { 'MunifTanjim/nui.nvim', lazy = false }, - { 'rafi/tabstrip.nvim', lazy = false, priority = 98, opts = true }, + { + 'akinsho/bufferline.nvim', lazy = false, version = "*", + dependencies = 'nvim-tree/nvim-web-devicons' + }, ----------------------------------------------------------------------------- { diff --git a/spell/en.utf-8.add b/spell/en.utf-8.add index cc0ecef..27bfabd 100644 --- a/spell/en.utf-8.add +++ b/spell/en.utf-8.add @@ -17,9 +17,54 @@ cscherr MD5 Hashchecker Testvectors -#ossibilites possibilites/! Hexdumper hexdumped SMB2 fileserver +Atlassian +Initialkosten +Hexeditor +hexeditor +Hexdumping +stdin +md +regex101 +Manspider +Manspiders +subrace +subraces +swiftstride +beasthide +Eldeen +Khorvaire +drider +spiderful +spiderfew +Spiderfolk +Shrelluka +find/! +find +Magnam +arachna +matrem +namegen +Zessas +Webbington +Razu +Rhellu +cantrip +d12 +d4 +th +unnoteworthy +Qroczhreer +Blokhof +Hauck +spiderous +zlib +experimentelle +SHA +Etablierungs +the +strikethrough