diff --git a/docs/TODO.md b/docs/TODO.md index c04105f..e0e9c76 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -17,6 +17,7 @@ feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md)) - [ ] Keymaps: - Trouble - Tagbar (actually not working) + - Markdown - [ ] Change my keyboard backlight - Issue on nixos-hardware ig diff --git a/flake.lock b/flake.lock index c38c93d..c1b9afe 100644 --- a/flake.lock +++ b/flake.lock @@ -717,6 +717,22 @@ "url": "https://devimages-cdn.apple.com/design/resources/download/NY.dmg" } }, + "plugin-markdown": { + "flake": false, + "locked": { + "lastModified": 1725904000, + "narHash": "sha256-mbqX0+yGMjW3fHtDXVnVh6nUOG6waCW/sAXSQugc33Y=", + "owner": "MeanderingProgrammer", + "repo": "markdown.nvim", + "rev": "a5e2d0b1215814c3d033be1fd8eccf59ce366399", + "type": "github" + }, + "original": { + "owner": "MeanderingProgrammer", + "repo": "markdown.nvim", + "type": "github" + } + }, "root": { "inputs": { "anotherhadi-portfolio": "anotherhadi-portfolio", @@ -728,6 +744,7 @@ "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs_6", "nixvim": "nixvim", + "plugin-markdown": "plugin-markdown", "sops-nix": "sops-nix", "spicetify-nix": "spicetify-nix" } diff --git a/flake.nix b/flake.nix index f54f827..868991c 100644 --- a/flake.nix +++ b/flake.nix @@ -32,6 +32,10 @@ nixos-hardware.url = "github:NixOS/nixos-hardware/master"; hyprpanel.url = "github:Jas-SinghFSU/HyprPanel"; anotherhadi-portfolio.url = "github:anotherhadi/portfolio"; + plugin-markdown = { + url = "github:MeanderingProgrammer/markdown.nvim"; + flake = false; + }; }; outputs = inputs@{ nixpkgs, ... }: { diff --git a/home/programs/nvim/plugins/markdown.nix b/home/programs/nvim/plugins/markdown.nix index fa79402..5659894 100644 --- a/home/programs/nvim/plugins/markdown.nix +++ b/home/programs/nvim/plugins/markdown.nix @@ -1,131 +1,140 @@ -{ - programs.nixvim.plugins = { - mkdnflow = { - enable = true; - mappings = { +{ pkgs, inputs, ... }: { + programs.nixvim = { + extraPlugins = [ + (pkgs.vimUtils.buildVimPlugin { + name = "markdown.nvim"; + src = inputs.plugin-markdown; + }) + ]; + extraConfigLua = "require('render-markdown').setup({})"; + plugins = { + mkdnflow = { + enable = true; + mappings = { - # Main - MkdnEnter = { - key = ""; - modes = [ "n" "v" "i" ]; - }; + # Main + MkdnEnter = { + key = ""; + modes = [ "n" "v" "i" ]; + }; - # Links - MkdnCreateLink = false; - MkdnCreateLinkFromClipboard = { - key = "lc"; - modes = [ "n" "v" ]; - }; - MkdnDestroyLink = { - key = "dl"; - modes = "n"; - }; - MkdnFollowLink = false; - MkdnNextLink = { - key = ""; - modes = "n"; - }; - MkdnYankAnchorLink = { - key = "ya"; - modes = "n"; - }; - MkdnYankFileAnchorLink = { - key = "yfa"; - modes = "n"; - }; - MkdnPrevLink = { - key = ""; - modes = "n"; - }; + # Links + MkdnCreateLink = false; + MkdnCreateLinkFromClipboard = { + key = "lc"; + modes = [ "n" "v" ]; + }; + MkdnDestroyLink = { + key = "dl"; + modes = "n"; + }; + MkdnFollowLink = false; + MkdnNextLink = { + key = ""; + modes = "n"; + }; + MkdnYankAnchorLink = { + key = "ya"; + modes = "n"; + }; + MkdnYankFileAnchorLink = { + key = "yfa"; + modes = "n"; + }; + MkdnPrevLink = { + key = ""; + modes = "n"; + }; - MkdnDecreaseHeading = { - key = "-"; - modes = "n"; - }; - MkdnExtendList = false; - MkdnFoldSection = { - key = "ff"; - modes = "n"; - }; - MkdnUnfoldSection = { - key = "fu"; - modes = "n"; - }; - MkdnGoBack = { - key = ""; - modes = "n"; - }; - MkdnGoForward = { - key = ""; - modes = "n"; - }; - MkdnIncreaseHeading = { - key = "+"; - modes = "n"; - }; - MkdnMoveSource = { - key = ""; - modes = "n"; - }; - MkdnNewListItem = false; - MkdnNewListItemAboveInsert = { - key = "O"; - modes = "n"; - }; - MkdnNewListItemBelowInsert = { - key = "o"; - modes = "n"; - }; - MkdnNextHeading = { - key = "]]"; - modes = "n"; - }; - MkdnPrevHeading = { - key = "[["; - modes = "n"; - }; - MkdnSTab = false; - MkdnTab = false; - MkdnTableFormat = { - key = "ft"; - modes = "n"; - }; - MkdnTableNewColAfter = { - key = "ic"; - modes = "n"; - }; - MkdnTableNewColBefore = { - key = "iC"; - modes = "n"; - }; - MkdnTableNewRowAbove = { - key = "iR"; - modes = "n"; - }; - MkdnTableNewRowBelow = { - key = "ir"; - modes = "n"; - }; - MkdnTableNextCell = { - key = ""; - modes = "i"; - }; - MkdnTableNextRow = false; - MkdnTablePrevCell = { - key = ""; - modes = "i"; - }; - MkdnTablePrevRow = { - key = ""; - modes = "i"; - }; - MkdnToggleToDo = { - key = ""; - modes = [ "n" "v" ]; - }; - MkdnUpdateNumbering = { - key = "nn"; - modes = "n"; + MkdnDecreaseHeading = { + key = "-"; + modes = "n"; + }; + MkdnExtendList = false; + MkdnFoldSection = { + key = "ff"; + modes = "n"; + }; + MkdnUnfoldSection = { + key = "fu"; + modes = "n"; + }; + MkdnGoBack = { + key = ""; + modes = "n"; + }; + MkdnGoForward = { + key = ""; + modes = "n"; + }; + MkdnIncreaseHeading = { + key = "+"; + modes = "n"; + }; + MkdnMoveSource = { + key = ""; + modes = "n"; + }; + MkdnNewListItem = false; + MkdnNewListItemAboveInsert = { + key = "O"; + modes = "n"; + }; + MkdnNewListItemBelowInsert = { + key = "o"; + modes = "n"; + }; + MkdnNextHeading = { + key = "]]"; + modes = "n"; + }; + MkdnPrevHeading = { + key = "[["; + modes = "n"; + }; + MkdnSTab = false; + MkdnTab = false; + MkdnTableFormat = { + key = "ft"; + modes = "n"; + }; + MkdnTableNewColAfter = { + key = "ic"; + modes = "n"; + }; + MkdnTableNewColBefore = { + key = "iC"; + modes = "n"; + }; + MkdnTableNewRowAbove = { + key = "iR"; + modes = "n"; + }; + MkdnTableNewRowBelow = { + key = "ir"; + modes = "n"; + }; + MkdnTableNextCell = { + key = ""; + modes = "i"; + }; + MkdnTableNextRow = false; + MkdnTablePrevCell = { + key = ""; + modes = "i"; + }; + MkdnTablePrevRow = { + key = ""; + modes = "i"; + }; + MkdnToggleToDo = { + key = ""; + modes = [ "n" "v" ]; + }; + MkdnUpdateNumbering = { + key = "nn"; + modes = "n"; + }; }; }; }; diff --git a/home/programs/nvim/plugins/ui.nix b/home/programs/nvim/plugins/ui.nix index 6916318..fddf81c 100644 --- a/home/programs/nvim/plugins/ui.nix +++ b/home/programs/nvim/plugins/ui.nix @@ -19,18 +19,6 @@ trouble.enable = true; indent-blankline.enable = true; which-key.enable = true; - headlines = { - enable = true; - settings = { - markdown = { - headline_highlights = [ "Headline1" "Headline" ]; - fat_headlines = false; - bullets = [ "" "◉" "○" "✸" ]; - dash_string = ""; - codeblock_highlight = "Headline"; - }; - }; - }; nvim-colorizer.enable = true; tagbar.enable = true; # FIXME: Tagbar is not working };