From 558932130fe8f55c46a27122de7d5f8f367369cf Mon Sep 17 00:00:00 2001 From: iGor milhit Date: Sat, 10 Jun 2023 09:37:35 +0200 Subject: [PATCH] snippets: add some markdown snippets - Adds a snippet to create a link in markdown reference syntax. - Adds a frontmatter snippet for my INC notes. - Replace the fronmatter snippet for markdown with a formatted one, easier to read. - Improves the description of my markdown snippets. - Enables the search highlighting. - Removes unnecessary lualine separator. - Renames the neo-tree plugin file. - Lazy loads the zen-mode for markdown files. Co-Authored-by: iGor milhit --- init.lua | 4 +- .../plugins/{filetree.lua => neo-tree.lua} | 3 +- lua/custom/plugins/zen-mode.lua | 4 + my_snippets/all.lua | 14 --- my_snippets/markdown.lua | 89 +++++++++++++++--- spell/en.utf-8.add | 4 + spell/en.utf-8.add.spl | Bin 58 -> 105 bytes 7 files changed, 88 insertions(+), 30 deletions(-) rename lua/custom/plugins/{filetree.lua => neo-tree.lua} (82%) delete mode 100644 my_snippets/all.lua diff --git a/init.lua b/init.lua index 7ec03aa..3403eaa 100644 --- a/init.lua +++ b/init.lua @@ -160,7 +160,7 @@ require('lazy').setup({ icons_enabled = true, theme = 'nord', component_separators = '|', - section_separators = '/', + section_separators = '', }, }, }, @@ -229,7 +229,7 @@ vim.opt.rtp:append (vim.fn.stdpath ('data') .. '/site') -- NOTE: You can change these options as you wish! -- Set highlight on search -vim.o.hlsearch = false +vim.o.hlsearch = true -- Make line numbers default vim.wo.number = true diff --git a/lua/custom/plugins/filetree.lua b/lua/custom/plugins/neo-tree.lua similarity index 82% rename from lua/custom/plugins/filetree.lua rename to lua/custom/plugins/neo-tree.lua index 471e19b..d26c0bd 100644 --- a/lua/custom/plugins/filetree.lua +++ b/lua/custom/plugins/neo-tree.lua @@ -1,4 +1,5 @@ --- Trying to add a custom plugin for file tree +-- Plugin for file tree: neo-tree +-- Using the kickstart and the neo-tree documentations -- Unless you are still migrating, remove the deprecated commands from v1.x vim.cmd([[ let g:neo_tree_remove_legacy_commands = 1 ]]) diff --git a/lua/custom/plugins/zen-mode.lua b/lua/custom/plugins/zen-mode.lua index 6ca6d4c..868ba43 100644 --- a/lua/custom/plugins/zen-mode.lua +++ b/lua/custom/plugins/zen-mode.lua @@ -3,6 +3,10 @@ return { "folke/zen-mode.nvim", + ft = { + "markdown", + "pandoc" + }, -- Twilight allows to dim text outside of the cursor line. dependencies = { "folke/twilight.nvim", diff --git a/my_snippets/all.lua b/my_snippets/all.lua deleted file mode 100644 index 0a11b6a..0000000 --- a/my_snippets/all.lua +++ /dev/null @@ -1,14 +0,0 @@ -return { - -- A snippet that expands the trigger "hi" into the string "Hello, world!". - require("luasnip").snippet( - { trig = "hi" }, - { t("Hello, world!") } - ), - - -- To return multiple snippets, use one `return` statement per snippet file - -- and return a table of Lua snippets. - require("luasnip").snippet( - { trig = "foo" }, - { t("Another snippet.") } - ) -} diff --git a/my_snippets/markdown.lua b/my_snippets/markdown.lua index b3d7972..231450b 100644 --- a/my_snippets/markdown.lua +++ b/my_snippets/markdown.lua @@ -3,6 +3,7 @@ local s = ls.snippet local t = ls.text_node local i = ls.insert_node local f = ls.function_node +local fmt = require("luasnip.extras.fmt").fmt -- Function to get the datetime -- with daylight saving time @@ -11,6 +12,14 @@ local get_date = function() return os.date("%Y-%m-%dT%H:%M:%S%z") end +local get_month = function() + return os.date("%B") +end + +local get_month_year = function() + return os.date("%B-%Y") +end + -- Function to get an id based on the datetime local get_id = function() return os.date("%Y%m%d%H%M%S") @@ -20,6 +29,7 @@ return { s( { trig = "datetime", + name = "Datetime", dscr = "Insert datetime with locale daylight saving" }, { @@ -29,6 +39,7 @@ return { s( { trig = "id", + Name = "ID", dscr = "Insert an id based on the datetime" }, { @@ -37,20 +48,72 @@ return { ), s( { - trig = "yaml", - dscr = "Insert a YAML frontmatter for markdown" + trig = "fm", + name = "YAML frontmatter", + dscr = "Insert a YAML frontmatter for markdown files.\n\nIt has a datetime with the locale daylight saving time, and an ID based on the datetime.\nTab to jump to next text input." }, + fmt( + [[ + --- + title: {1} + date: {3} + id: {4} + tags: [{2}] + --- + + ]], + { + i(1, "title"), + i(2, "tags"), + f(get_date, {}), + f(get_id, {}) + } + ) + ), + s( { - t { "---", "title: " }, - i(1, "title"), - t{ "", "date: " }, - f(get_date, {}), - t{ "", "id: " }, - f(get_id, {}), - t{ "","tags: [" }, - i(2, "tags"), - t{ "]", "---", "" }, - i(0), - } + trig = "inc", + name = "INC YAML frontmatter", + dscr = "Insert a YAML frontmatter for INC notes.\n\nIt has a datetime with the locale daylight saving time, prefilled title, author, categories and tags.\nAdjust the title manually." + }, + fmt( + [[ + --- + title: {1} + creation_date: {2} + author: iGor milhit + categories: [inc] + tags: [notes, quotidien, {3}] + --- + + ]], + { + f(get_month_year, {}), + f(get_date, {}), + f(get_month, {}) + } + ) + ), + s( + { + trig="reflink", + name = "Reference link", + dscr="Insert a link with reference syntax", + docstring = "[Link text][Reference]\n\n[Reference]: Link Target \"Title\"\n\nTab to jump to next text input. \"Reference\" is automatically repeated." + }, + fmt( + [[ + [{1}][{2}] + + [{2}]: {3} "{4}" + ]], + { + i(1, "Link text"), + i(2, "Reference"), + i(3, "Link target"), + i(4, "Title") + }, + { repeat_duplicates = true } + ) ) } diff --git a/spell/en.utf-8.add b/spell/en.utf-8.add index f283b05..796fdcb 100644 --- a/spell/en.utf-8.add +++ b/spell/en.utf-8.add @@ -1,2 +1,6 @@ AoU Floriane +Séverine +HEG +neovim +lua diff --git a/spell/en.utf-8.add.spl b/spell/en.utf-8.add.spl index 5405ebaeed291dfea285da903f99b5f77517c665..99ecb19774e8c686bd4640e5a4716165ffa5e936 100644 GIT binary patch delta 88 zcmcD@6biG{J0F_Do0$jN6cW6We^ hWMELwWjxHd639zsECTVxGl4oe7#)EsLV;Wm005++5cvQA literal 58 zcmWIZ^erw(&B-zP&%nSS$&{GJn9o?s$kf1?17s92W-=x+<}s!+GBE+AIT#&*f}xB+ HCJ+Dsm7EHY