From 94be411221c387d7fdde952f705d9ddfcb47da53 Mon Sep 17 00:00:00 2001 From: ttak0422 Date: Thu, 16 Jan 2025 00:52:26 +0900 Subject: [PATCH] chore(neorg): modfiy commands --- fnl/after/norg.fnl | 2 ++ fnl/neorg.fnl | 9 +++++++++ fnl/prelude.fnl | 11 +++++++---- lua/autogen/after/norg.lua | 15 ++++++++++----- lua/autogen/neorg.lua | 35 +++++++++++++++++++++++++---------- lua/autogen/prelude.lua | 2 +- main/outliner.nix | 1 + 7 files changed, 55 insertions(+), 20 deletions(-) diff --git a/fnl/after/norg.fnl b/fnl/after/norg.fnl index 8f19ef8..8778555 100644 --- a/fnl/after/norg.fnl +++ b/fnl/after/norg.fnl @@ -7,6 +7,7 @@ (vim.opt_local.iskeyword:append ["$" "/"]) (let [map vim.keymap.set + cmd (fn [c] (.. : c :)) opts (fn [d] {:noremap false :silent true :buffer true :desc d}) N [[:u (fn [] @@ -28,6 +29,7 @@ [:nn "(neorg.dirman.new-note)" (opts " Create a new note")] + [:no (cmd "Neorg toc") (opts " TOC")] [:tu "(neorg.qol.todo-items.todo.task-undone)" (opts " Mark as undone")] diff --git a/fnl/neorg.fnl b/fnl/neorg.fnl index 9fdd7d2..d9c43c3 100644 --- a/fnl/neorg.fnl +++ b/fnl/neorg.fnl @@ -61,6 +61,9 @@ path (require :plenary.path) dirman (neorg.modules.get_module :core.dirman) create_command vim.api.nvim_create_user_command + confirm (fn [prompt] + (let [answer (vim.fn.input (.. prompt " (y/N): "))] + (= (answer:lower) :y))) check_git_dir (fn [] (let [git_dir (path:new (.. (vim.fn.getcwd) :/.git))] (git_dir:exists))) @@ -73,6 +76,12 @@ (out:gsub "%s+" "") (error "branch not found"))))] (create_command :NeorgFuzzySearch "Telescope neorg find_linkable" {}) + (create_command :NeorgUID + (fn [] + (if (confirm "Create Note?") + (let [uid (os.date "%Y%m%d%H%M%S")] + (dirman.create_file (.. :uid/ uid) nil {:title uid})))) + {}) (create_command :NeorgGit (fn [] (if (check_git_dir) diff --git a/fnl/prelude.fnl b/fnl/prelude.fnl index cbf790e..bf7dc55 100644 --- a/fnl/prelude.fnl +++ b/fnl/prelude.fnl @@ -95,11 +95,14 @@ ;; undo [:U (cmd :UndotreeToggle (desc "toggle undotree"))] ;; neorg - [:nn + [:nt (cmd "Neorg journal today") - (desc "Enter Neorg (today journal)")] - [:no (cmd "Neorg toc") (desc "Show Neorg TOC")] - [:N (cmd :Neorg) (desc "Enter Neorg")] + (desc " Today")] + [:ny + (cmd "Neorg journal yesterday") + (desc " Yesterday")] + [:N (cmd :Neorg) (desc " Enter")] + [:nn (cmd :NeorgUID) (desc " UID")] [:ngg (cmd :NeorgGit) (desc " Git")] [:ngb (cmd :NeorgGitBranch) (desc " Git (branch)")] [:fn diff --git a/lua/autogen/after/norg.lua b/lua/autogen/after/norg.lua index a87def0..fe5300b 100644 --- a/lua/autogen/after/norg.lua +++ b/lua/autogen/after/norg.lua @@ -4,21 +4,26 @@ for k, v in pairs({conceallevel = 3, concealcursor = "n", swapfile = false, wrap end vim.opt_local.iskeyword:append({"$", "/"}) local map = vim.keymap.set +local cmd +local function _1_(c) + return ("" .. c .. "") +end +cmd = _1_ local opts -local function _1_(d) +local function _2_(d) return {silent = true, buffer = true, desc = d, noremap = false} end -opts = _1_ +opts = _2_ local N -local function _2_() +local function _3_() require("neorg.core.modules").get_module("core.esupports.metagen").skip_next_update() return vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("u", true, false, true), "n", false) end -local function _3_() +local function _4_() require("neorg.core.modules").get_module("core.esupports.metagen").skip_next_update() return vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("", true, false, true), "n", false) end -N = {{"u", _2_, opts("\238\152\179 undo")}, {"", _3_, opts("\238\152\179 redo")}, {"nn", "(neorg.dirman.new-note)", opts("\238\152\179 Create a new note")}, {"tu", "(neorg.qol.todo-items.todo.task-undone)", opts("\238\152\179 Mark as undone")}, {"tp", "(neorg.qol.todo-items.todo.task-pending)", opts("\238\152\179 Mark as pending")}, {"td", "(neorg.qol.todo-items.todo.task-done)", opts("\238\152\179 Mark as done")}, {"th", "(neorg.qol.todo-items.todo.task-on-hold)", opts("\238\152\179 Mark as on hold")}, {"tc", "(neorg.qol.todo-items.todo.task-cancelled)", opts("\238\152\179 Mark as on cancelled")}, {"tr", "(neorg.qol.todo-items.todo.task-recurring)", opts("\238\152\179 Mark as recurring")}, {"ti", "(neorg.qol.todo-items.todo.task-important)", opts("\238\152\179 Mark as important")}, {"ta", "(neorg.qol.todo-items.todo.task-ambiguous)", opts("\238\152\179 Mark as ambiguous")}, {"", "(neorg.qol.todo-items.todo.task-cycle)", opts("\238\152\179 Cycle task")}, {"", "(neorg.esupports.hop.hop-link)", opts("\238\152\179 Jump to link")}, {"lt", "(neorg.pivot.list.toggle)", opts("\238\152\179 Toggle (un)ordered list")}, {"li", "(neorg.pivot.list.invert)", opts("\238\152\179 Invert (un)ordered list")}, {"E", "(neorg.looking-glass.magnify-code-block)", opts("\238\152\179 Edit code block")}, {"id", "(neorg.tempus.insert-date)", opts("\238\152\179 Insert date")}} +N = {{"u", _3_, opts("\238\152\179 undo")}, {"", _4_, opts("\238\152\179 redo")}, {"nn", "(neorg.dirman.new-note)", opts("\238\152\179 Create a new note")}, {"no", cmd("Neorg toc"), opts("\238\152\179 TOC")}, {"tu", "(neorg.qol.todo-items.todo.task-undone)", opts("\238\152\179 Mark as undone")}, {"tp", "(neorg.qol.todo-items.todo.task-pending)", opts("\238\152\179 Mark as pending")}, {"td", "(neorg.qol.todo-items.todo.task-done)", opts("\238\152\179 Mark as done")}, {"th", "(neorg.qol.todo-items.todo.task-on-hold)", opts("\238\152\179 Mark as on hold")}, {"tc", "(neorg.qol.todo-items.todo.task-cancelled)", opts("\238\152\179 Mark as on cancelled")}, {"tr", "(neorg.qol.todo-items.todo.task-recurring)", opts("\238\152\179 Mark as recurring")}, {"ti", "(neorg.qol.todo-items.todo.task-important)", opts("\238\152\179 Mark as important")}, {"ta", "(neorg.qol.todo-items.todo.task-ambiguous)", opts("\238\152\179 Mark as ambiguous")}, {"", "(neorg.qol.todo-items.todo.task-cycle)", opts("\238\152\179 Cycle task")}, {"", "(neorg.esupports.hop.hop-link)", opts("\238\152\179 Jump to link")}, {"lt", "(neorg.pivot.list.toggle)", opts("\238\152\179 Toggle (un)ordered list")}, {"li", "(neorg.pivot.list.invert)", opts("\238\152\179 Invert (un)ordered list")}, {"E", "(neorg.looking-glass.magnify-code-block)", opts("\238\152\179 Edit code block")}, {"id", "(neorg.tempus.insert-date)", opts("\238\152\179 Insert date")}} local I = {{"", "(neorg.telescope.insert_link)", opts("\238\152\179 Insert link")}, {"", "(neorg.promo.promote)", opts("\238\152\179 Promote object")}, {"", "(neorg.promo.demote)", opts("\238\152\179 Demote object")}} local V = {{">", "(neorg.promo.promote.range)", opts("\238\152\179 Promote range")}, {"<", "(neorg.promo.demote.range)", opts("\238\152\179 Demote range")}} for mode, ks in pairs({n = N, i = I, v = V}) do diff --git a/lua/autogen/neorg.lua b/lua/autogen/neorg.lua index 82aff99..702cafb 100644 --- a/lua/autogen/neorg.lua +++ b/lua/autogen/neorg.lua @@ -22,19 +22,25 @@ local neorg = require("neorg") local path = require("plenary.path") local dirman = neorg.modules.get_module("core.dirman") local create_command = vim.api.nvim_create_user_command +local confirm +local function _1_(prompt) + local answer = vim.fn.input((prompt .. " (y/N): ")) + return (answer:lower() == "y") +end +confirm = _1_ local check_git_dir -local function _1_() +local function _2_() local git_dir = path:new((vim.fn.getcwd() .. "/.git")) return git_dir:exists() end -check_git_dir = _1_ +check_git_dir = _2_ local get_dir -local function _2_() +local function _3_() return vim.fn.fnamemodify(vim.fn.getcwd(), ":t") end -get_dir = _2_ +get_dir = _3_ local get_branch -local function _3_() +local function _4_() local out = vim.fn.system("git rev-parse --abbrev-ref HEAD") if (vim.v.shell_error == 0) then return out:gsub("%s+", "") @@ -42,21 +48,30 @@ local function _3_() return error("branch not found") end end -get_branch = _3_ +get_branch = _4_ create_command("NeorgFuzzySearch", "Telescope neorg find_linkable", {}) -local function _5_() +local function _6_() + if confirm("Create Note?") then + local uid = os.date("%Y%m%d%H%M%S") + return dirman.create_file(("uid/" .. uid), nil, {title = uid}) + else + return nil + end +end +create_command("NeorgUID", _6_, {}) +local function _8_() if check_git_dir() then return dirman.create_file(("project/" .. get_dir() .. "/main"), nil, {title = ("Project " .. get_dir())}) else return vim.notify("Not a git repository", "warn") end end -create_command("NeorgGit", _5_, {}) -local function _7_() +create_command("NeorgGit", _8_, {}) +local function _10_() if check_git_dir() then return dirman.create_file(("project/" .. get_dir() .. "/" .. get_branch()), nil, {title = ("Project " .. get_dir() .. "/" .. get_branch())}) else return vim.notify("Not a git repository", "warn") end end -return create_command("NeorgGitBranch", _7_, {}) +return create_command("NeorgGitBranch", _10_, {}) diff --git a/lua/autogen/prelude.lua b/lua/autogen/prelude.lua index 9878910..fb5a0e5 100644 --- a/lua/autogen/prelude.lua +++ b/lua/autogen/prelude.lua @@ -49,7 +49,7 @@ do return _5_ end mk_toggle = _4_() - for _, K in ipairs({{"ff", cmd("Telescope live_grep_args"), desc("search by content")}, {"fF", cmd("Telescope ast_grep"), desc("search by AST")}, {"fb", cmd("TelescopeB"), desc("search by buffer")}, {"ft", cmd("Telescope sonictemplate templates"), desc("search templates")}, {"fh", cmd("Legendary"), desc("Search command palette")}, {"H", lcmd("require('harpoon').ui:toggle_quick_menu(require('harpoon'):list(),{border='none'})"), desc("Show registered file")}, {"ha", lcmd("require('harpoon'):list():add()"), desc("Register file")}, {"fp", cmd("Ddu -name=fd file_fd"), desc("search by file name")}, {"fP", cmd("Ddu -name=ghq ghq"), desc("search repo (ghq)")}, {"fru", cmd("Ddu -name=mru mru"), desc("MRU (Most Recently Used files)")}, {"frw", cmd("Ddu -name=mrw mrw"), desc("MRW (Most Recently Written files)")}, {"frr", cmd("Ddu -name=mrr mrr"), desc("MRR (Most Recent git Repositories)")}, {"frd", cmd("Ddu -name=mrd mrd"), desc("MRD (Most Recent Directories)")}, {"mq", cmd("MarksQFListBuf"), desc("marks in current buffer")}, {"mQ", cmd("MarksQFListGlobal"), desc("marks in all buffer")}, {"U", cmd("UndotreeToggle", desc("toggle undotree"))}, {"nn", cmd("Neorg journal today"), desc("Enter Neorg (today journal)")}, {"no", cmd("Neorg toc"), desc("Show Neorg TOC")}, {"N", cmd("Neorg"), desc("Enter Neorg")}, {"ngg", cmd("NeorgGit"), desc("\238\152\179 Git")}, {"ngb", cmd("NeorgGitBranch"), desc("\238\152\179 Git (branch)")}, {"fn", cmd("NeorgFuzzySearch"), desc("find Neorg linkable")}, {"G", cmd("Neogit"), desc("\239\135\147 client")}, {"gb", cmd("ToggleGitBlame"), desc("\239\135\147 blame")}, {"tb", lcmd("require('lir.float').toggle()"), desc("Toggle lir")}, {"tB", lcmd("require('oil').open()"), desc("Toggle oil")}, {"q", cmd("BufDel"), desc("close buffer")}, {"Q", cmd("BufDelAll"), desc("close all buffers")}, {"A", cmd("tabclose")}, {"ts", cmd("Screenkey toggle"), desc("toggle screenkey")}, {"tc", cmd("ColorizerToggle"), desc("toggle colorizer")}, {"tt", cmd("NoNeckPain"), desc("toggle no neck pain")}, {"tm", lcmd("require('codewindow').toggle_minimap()"), desc("toggle minimap")}, {"to", cmd("AerialToggle"), desc("toggle outline")}, {"tj", cmd("lua require('treesj').toggle({ split = { recursive = false }})"), desc("toggle split/join")}, {"tJ", cmd("lua require('treesj').toggle({ split = { recursive = true }})"), desc("toggle recursive split/join")}, {"tq", mk_toggle(1, "qf", nil), desc("toggle quickfix")}, {"td", mk_toggle(2, "trouble", {mode = "diagnostics", filter = {buf = 0}}), desc("toggle diagnostics (document)")}, {"tD", mk_toggle(3, "trouble", {mode = "diagnostics"}), desc("toggle diagnostics (workspace)")}}) do + for _, K in ipairs({{"ff", cmd("Telescope live_grep_args"), desc("search by content")}, {"fF", cmd("Telescope ast_grep"), desc("search by AST")}, {"fb", cmd("TelescopeB"), desc("search by buffer")}, {"ft", cmd("Telescope sonictemplate templates"), desc("search templates")}, {"fh", cmd("Legendary"), desc("Search command palette")}, {"H", lcmd("require('harpoon').ui:toggle_quick_menu(require('harpoon'):list(),{border='none'})"), desc("Show registered file")}, {"ha", lcmd("require('harpoon'):list():add()"), desc("Register file")}, {"fp", cmd("Ddu -name=fd file_fd"), desc("search by file name")}, {"fP", cmd("Ddu -name=ghq ghq"), desc("search repo (ghq)")}, {"fru", cmd("Ddu -name=mru mru"), desc("MRU (Most Recently Used files)")}, {"frw", cmd("Ddu -name=mrw mrw"), desc("MRW (Most Recently Written files)")}, {"frr", cmd("Ddu -name=mrr mrr"), desc("MRR (Most Recent git Repositories)")}, {"frd", cmd("Ddu -name=mrd mrd"), desc("MRD (Most Recent Directories)")}, {"mq", cmd("MarksQFListBuf"), desc("marks in current buffer")}, {"mQ", cmd("MarksQFListGlobal"), desc("marks in all buffer")}, {"U", cmd("UndotreeToggle", desc("toggle undotree"))}, {"nt", cmd("Neorg journal today"), desc("\238\152\179 Today")}, {"ny", cmd("Neorg journal yesterday"), desc("\238\152\179 Yesterday")}, {"N", cmd("Neorg"), desc("\238\152\179 Enter")}, {"nn", cmd("NeorgUID"), desc("\238\152\179 UID")}, {"ngg", cmd("NeorgGit"), desc("\238\152\179 Git")}, {"ngb", cmd("NeorgGitBranch"), desc("\238\152\179 Git (branch)")}, {"fn", cmd("NeorgFuzzySearch"), desc("find Neorg linkable")}, {"G", cmd("Neogit"), desc("\239\135\147 client")}, {"gb", cmd("ToggleGitBlame"), desc("\239\135\147 blame")}, {"tb", lcmd("require('lir.float').toggle()"), desc("Toggle lir")}, {"tB", lcmd("require('oil').open()"), desc("Toggle oil")}, {"q", cmd("BufDel"), desc("close buffer")}, {"Q", cmd("BufDelAll"), desc("close all buffers")}, {"A", cmd("tabclose")}, {"ts", cmd("Screenkey toggle"), desc("toggle screenkey")}, {"tc", cmd("ColorizerToggle"), desc("toggle colorizer")}, {"tt", cmd("NoNeckPain"), desc("toggle no neck pain")}, {"tm", lcmd("require('codewindow').toggle_minimap()"), desc("toggle minimap")}, {"to", cmd("AerialToggle"), desc("toggle outline")}, {"tj", cmd("lua require('treesj').toggle({ split = { recursive = false }})"), desc("toggle split/join")}, {"tJ", cmd("lua require('treesj').toggle({ split = { recursive = true }})"), desc("toggle recursive split/join")}, {"tq", mk_toggle(1, "qf", nil), desc("toggle quickfix")}, {"td", mk_toggle(2, "trouble", {mode = "diagnostics", filter = {buf = 0}}), desc("toggle diagnostics (document)")}, {"tD", mk_toggle(3, "trouble", {mode = "diagnostics"}), desc("toggle diagnostics (workspace)")}}) do vim.keymap.set("n", ("" .. K[1]), K[2], (K[3] or opts)) end for m, ks in pairs({n = {{"\194\165", "\\"}, {"", cmd("OpenMenu")}}, i = {{"\194\165", "\\"}}, c = {{"\194\165", "\\"}}, t = {{"\194\165", "\\"}}, v = {{"R", cmd("FlowRunSelected")}, {"", cmd("OpenMenu")}}}) do diff --git a/main/outliner.nix b/main/outliner.nix index 83ed6e3..34a9631 100644 --- a/main/outliner.nix +++ b/main/outliner.nix @@ -79,6 +79,7 @@ with pkgs.vimPlugins; commands = [ "Neorg" "NeorgFuzzySearch" + "NeorgUID" "NeorgGit" "NeorgGitBranch" ];