From 024dd04edc16693545fb916150e6361f0626aad0 Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Sat, 8 Jun 2024 17:06:10 +0800 Subject: Update --- snippets/html/html_with_basic_head | 21 ++++++++++++++ snippets/lua/keymap | 6 ++++ vim/lazy/lazy.lua | 56 ++++++++++++++++++++++++++------------ 3 files changed, 65 insertions(+), 18 deletions(-) create mode 100644 snippets/html/html_with_basic_head create mode 100644 snippets/lua/keymap diff --git a/snippets/html/html_with_basic_head b/snippets/html/html_with_basic_head new file mode 100644 index 0000000..219bae2 --- /dev/null +++ b/snippets/html/html_with_basic_head @@ -0,0 +1,21 @@ + + + + + + + + My Website + + + + + + + +
+
+

foo

+
+ + diff --git a/snippets/lua/keymap b/snippets/lua/keymap new file mode 100644 index 0000000..7ea9396 --- /dev/null +++ b/snippets/lua/keymap @@ -0,0 +1,6 @@ +vim.keymap.set( + 'n', + 'gp', + require('gitsigns').prev_hunk, + { buffer = bufnr, desc = '[G]o to [P]revious Hunk' } +) diff --git a/vim/lazy/lazy.lua b/vim/lazy/lazy.lua index f4cbf0f..efd545f 100644 --- a/vim/lazy/lazy.lua +++ b/vim/lazy/lazy.lua @@ -72,13 +72,13 @@ require('lazy').setup({ changedelete = { text = '~' }, }, on_attach = function(bufnr) - vim.keymap.set('n', 'gp', require('gitsigns').prev_hunk, { buffer = bufnr, desc = '[G]o to [P]revious Hunk' }) vim.keymap.set('n', 'gn', require('gitsigns').next_hunk, { buffer = bufnr, desc = '[G]o to [N]ext Hunk' }) vim.keymap.set('n', 'ph', require('gitsigns').preview_hunk, { buffer = bufnr, desc = '[P]review [H]unk' }) vim.keymap.set('n', 'hd', require('gitsigns').diffthis, { buffer = bufnr, desc = '[h]unk [d]iff' }) - vim.keymap.set('n', 'hD', function() require('gitsigns').diffthis('~') end, { buffer = bufnr, desc = '[h]unk [d]iff for ~' }) + vim.keymap.set('n', 'hD', function() require('gitsigns').diffthis('~') end, + { buffer = bufnr, desc = '[h]unk [d]iff for ~' }) vim.keymap.set('v', 'hr', ":Gitsigns reset_hunk", { buffer = bufnr, desc = '[h]unk [r]eset' }) end, }, @@ -188,6 +188,14 @@ require('lazy').setup({ }, }, + -- install without yarn or npm + { + "iamcco/markdown-preview.nvim", + cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" }, + ft = { "markdown" }, + build = function() vim.fn["mkdp#util#install"]() end, + }, + -- For beancount 'nathangrigg/vim-beancount', @@ -310,12 +318,6 @@ require('lazy').setup({ build = ':TSUpdate', }, - -- NOTE: Next Step on Your Neovim Journey: Add/Configure additional "plugins" for kickstart - -- These are some example plugins that I've included in the kickstart repository. - -- Uncomment any of the lines below to enable them. - -- require 'kickstart.plugins.autoformat', - -- require 'kickstart.plugins.debug', - -- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua` -- You can use this folder to prevent any conflicts with this init.lua if you're interested in keeping -- up-to-date with whatever is in the kickstart repo. @@ -323,13 +325,6 @@ require('lazy').setup({ -- -- For additional information see: https://github.com/folke/lazy.nvim#-structuring-your-plugins -- { import = 'custom.plugins' }, - -- install without yarn or npm - { - "iamcco/markdown-preview.nvim", - cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" }, - ft = { "markdown" }, - build = function() vim.fn["mkdp#util#install"]() end, - }, }, {}) -- [[ Setting options ]] @@ -441,7 +436,8 @@ require('telescope').setup { [""] = "delete_buffer", } } - } + }, + }, extensions = { aerial = { @@ -459,8 +455,9 @@ require('telescope').setup { pcall(require('telescope').load_extension, 'fzf') -- See `:help telescope.builtin` -vim.keymap.set('n', 'f', require('telescope.builtin').oldfiles, { desc = '[f] Find recently opened files' }) -vim.keymap.set('n', 'b', require('telescope.builtin').buffers, { desc = '[b] Find existing buffers' }) +vim.keymap.set('n', 'f', require('telescope.builtin').oldfiles, { desc = '[F] Find recently opened files' }) +vim.keymap.set('n', 'b', require('telescope.builtin').buffers, { desc = '[B] Find existing buffers' }) +vim.keymap.set('n', 'st', require('telescope.builtin').builtin, { desc = '[S]earch [T]elescope for builtin' }) vim.keymap.set('n', 'gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' }) vim.keymap.set('n', 'sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' }) vim.keymap.set('n', 'sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' }) @@ -479,6 +476,29 @@ end, { desc = '[/] Fuzzily search in current buffer' }) vim.keymap.set('n', 'sn', function() require('telescope.builtin').find_files { cwd = vim.fn.stdpath 'config' } end, { desc = '[S]earch [N]eovim files' }) +-- Get snippets from ~/helper/snippets +vim.keymap.set('n', 'ss', function() + local current_filetype = vim.bo.filetype + local cwd = '/home/pham/helper/snippets/' .. current_filetype + require('telescope.builtin').find_files { + prompt_title = 'Select a snippet for ' .. current_filetype, + cwd = cwd, + attach_mappings = function(prompt_bufnr, map) + local insert_selected_snippet = function() + local file = require('telescope.actions.state').get_selected_entry()[1] + local snippet_content = vim.fn.readfile(cwd .. "/" .. file) + require('telescope.actions').close(prompt_bufnr) + vim.api.nvim_command('normal! h') + vim.api.nvim_put(snippet_content, '', false, true) + end + + map('i', '', insert_selected_snippet) + map('n', '', insert_selected_snippet) + + return true + end, + } +end, { desc = '[S]earch [S]nippets' }) -- [[ Configure Treesitter ]] -- See `:help nvim-treesitter` -- cgit v1.2.3-70-g09d2