mirror of
https://github.com/anotherhadi/nixy.git
synced 2026-04-03 19:42:10 +02:00
markdown writting
This commit is contained in:
@@ -1,172 +1,239 @@
|
|||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
let
|
let
|
||||||
accent = "#${config.lib.stylix.colors.base0D}";
|
accent = "#${config.lib.stylix.colors.base0D}";
|
||||||
accent-alt = "#${config.lib.stylix.colors.base08}";
|
|
||||||
muted = "#${config.lib.stylix.colors.base03}";
|
muted = "#${config.lib.stylix.colors.base03}";
|
||||||
background = "#${config.lib.stylix.colors.base00}";
|
|
||||||
in {
|
in {
|
||||||
|
|
||||||
programs.nixvim = {
|
programs.nixvim = {
|
||||||
plugins.mkdnflow = {
|
# Markdown settings
|
||||||
enable = true;
|
extraFiles."after/ftplugin/markdown.lua".text = ''
|
||||||
modules = { conceal = false; };
|
vim.bo.tabstop = 2
|
||||||
toDo.symbols = [ " " "-" "x" "!" "/" ];
|
vim.bo.shiftwidth = 2
|
||||||
mappings = {
|
vim.bo.expandtab = true
|
||||||
MkdnCreateLink = false;
|
'';
|
||||||
MkdnCreateLinkFromClipboard = {
|
|
||||||
key = "<leader>ml";
|
|
||||||
modes = [ "n" "v" ];
|
|
||||||
};
|
|
||||||
MkdnDecreaseHeading = {
|
|
||||||
key = "<leader>m-";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnDestroyLink = false;
|
|
||||||
MkdnEnter = {
|
|
||||||
key = "<CR>";
|
|
||||||
modes = [ "v" ];
|
|
||||||
};
|
|
||||||
MkdnExtendList = false;
|
|
||||||
|
|
||||||
MkdnFoldSection = {
|
# Highlight colors
|
||||||
key = "<leader>mf";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
|
|
||||||
MkdnUnfoldSection = {
|
|
||||||
key = "<leader>mF";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
|
|
||||||
MkdnFollowLink = {
|
|
||||||
key = "gd";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnGoBack = false;
|
|
||||||
MkdnGoForward = false;
|
|
||||||
MkdnIncreaseHeading = {
|
|
||||||
key = "<leader>m+";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnMoveSource = false;
|
|
||||||
MkdnNewListItem = false;
|
|
||||||
MkdnNewListItemAboveInsert = {
|
|
||||||
key = "O";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnNewListItemBelowInsert = {
|
|
||||||
key = "o";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnNextHeading = {
|
|
||||||
key = "<leader>m#";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnNextLink = false;
|
|
||||||
MkdnPrevLink = false;
|
|
||||||
MkdnPrevHeading = {
|
|
||||||
key = "<leader>m*";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnSTab = false;
|
|
||||||
MkdnTab = false;
|
|
||||||
MkdnTableNewColAfter = {
|
|
||||||
key = "<leader>mc";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnTableNewColBefore = {
|
|
||||||
key = "<leader>mC";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnTableNewRowAbove = {
|
|
||||||
key = "<leader>mR";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnTableNewRowBelow = {
|
|
||||||
key = "<leader>mr";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnTableNextCell = {
|
|
||||||
key = "<S-Tab>";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnTableNextRow = false;
|
|
||||||
MkdnTablePrevCell = {
|
|
||||||
key = "<S-Tab>";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnTablePrevRow = false;
|
|
||||||
MkdnToggleToDo = {
|
|
||||||
key = "<C-Space>";
|
|
||||||
modes = [ "n" "v" ];
|
|
||||||
};
|
|
||||||
MkdnUpdateNumbering = {
|
|
||||||
key = "<leader>mn";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnYankAnchorLink = {
|
|
||||||
key = "ya";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
MkdnYankFileAnchorLink = {
|
|
||||||
key = "yfa";
|
|
||||||
modes = "n";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
extraFiles = {
|
|
||||||
"after/ftplugin/markdown.lua".text = ''
|
|
||||||
vim.bo.tabstop = 2
|
|
||||||
vim.bo.shiftwidth = 2
|
|
||||||
vim.bo.expandtab = true
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
highlight = {
|
highlight = {
|
||||||
RenderMarkdownBg.bg = background;
|
Headline1 = {
|
||||||
RenderMarkdownH1.fg = accent;
|
bg = "#4B4266";
|
||||||
RenderMarkdownH2.fg = accent;
|
fg = accent;
|
||||||
RenderMarkdownH3.fg = accent-alt;
|
};
|
||||||
RenderMarkdownH4.fg = accent-alt;
|
Headline2 = {
|
||||||
RenderMarkdownH5.fg = accent-alt;
|
bg = "#3B575E";
|
||||||
RenderMarkdownH6.fg = accent-alt;
|
fg = "#9FFEFE";
|
||||||
|
};
|
||||||
|
Headline3 = {
|
||||||
|
bg = "#3B5742";
|
||||||
|
fg = "#9FFE9F";
|
||||||
|
};
|
||||||
|
Headline4 = {
|
||||||
|
bg = "#574842";
|
||||||
|
fg = "#FECB9F";
|
||||||
|
};
|
||||||
|
|
||||||
RenderMarkdownTodo.fg = "#f78c6c";
|
RenderMarkdownTodo.fg = "#f78c6c";
|
||||||
RenderMarkdownWarning.fg = "#ff5370";
|
RenderMarkdownWarning.fg = "#ff5370";
|
||||||
RenderMarkdownDone.fg = muted;
|
RenderMarkdownDone.fg = muted;
|
||||||
};
|
};
|
||||||
plugins.render-markdown = {
|
|
||||||
enable = true;
|
# Plugins
|
||||||
settings = {
|
plugins = {
|
||||||
heading = {
|
# Paste images from clipboard
|
||||||
icons = [ "# " " " " " " " " " " " ];
|
clipboard-image = {
|
||||||
sign = false;
|
enable = true;
|
||||||
backgrounds = [ "RenderMarkdownBg" ];
|
settings = { default.img_dir = [ "%:p:h" "img" ]; };
|
||||||
foregrounds = [
|
};
|
||||||
"RenderMarkdownH1"
|
|
||||||
"RenderMarkdownH2"
|
# Zen mode
|
||||||
"RenderMarkdownH3"
|
zen-mode = {
|
||||||
"RenderMarkdownH4"
|
enable = true;
|
||||||
"RenderMarkdownH5"
|
settings = {
|
||||||
"RenderMarkdownH6"
|
on_close = ''
|
||||||
];
|
function()
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
on_open = ''
|
||||||
|
function()
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
plugins = {
|
||||||
|
gitsigns = { enabled = false; };
|
||||||
|
options = {
|
||||||
|
enabled = true;
|
||||||
|
ruler = false;
|
||||||
|
showcmd = false;
|
||||||
|
laststatus = "0";
|
||||||
|
kitty = {
|
||||||
|
enabled = true;
|
||||||
|
font = "+4";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
window = {
|
||||||
|
backdrop = 0.95;
|
||||||
|
height = 1;
|
||||||
|
options = {
|
||||||
|
signcolumn = "no";
|
||||||
|
number = false;
|
||||||
|
relativenumber = false;
|
||||||
|
};
|
||||||
|
width = 0.8;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
checkbox = {
|
};
|
||||||
unchecked = { highlight = "RenderMarkdownTodo"; };
|
|
||||||
checked = { highlight = "RenderMarkdownDone"; };
|
# Display images in markdown
|
||||||
custom = {
|
image = {
|
||||||
pending = {
|
enable = true;
|
||||||
raw = "[-]";
|
integrations.markdown = {
|
||||||
rendered = " ";
|
clearInInsertMode = true;
|
||||||
highlight = "RenderMarkdownTodo";
|
onlyRenderImageAtCursor = true;
|
||||||
};
|
};
|
||||||
important = {
|
};
|
||||||
raw = "[!]";
|
|
||||||
rendered = " ";
|
# This one takes care of the markdown titles
|
||||||
highlight = "RenderMarkdownWarning";
|
headlines = {
|
||||||
};
|
enable = true;
|
||||||
cancel = {
|
settings = {
|
||||||
raw = "[/]";
|
markdown = {
|
||||||
rendered = " ";
|
headline_highlights =
|
||||||
highlight = "RenderMarkdownWarning";
|
[ "Headline1" "Headline2" "Headline3" "Headline4" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# MkdnFlow is a plugin that helps you navigate markdown files
|
||||||
|
mkdnflow = {
|
||||||
|
enable = true;
|
||||||
|
modules = { conceal = false; };
|
||||||
|
toDo.symbols = [ " " "-" "x" "!" "/" ];
|
||||||
|
mappings = {
|
||||||
|
MkdnCreateLink = false;
|
||||||
|
MkdnCreateLinkFromClipboard = {
|
||||||
|
key = "<leader>ml";
|
||||||
|
modes = [ "n" "v" ];
|
||||||
|
};
|
||||||
|
MkdnDecreaseHeading = {
|
||||||
|
key = "<leader>m-";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnDestroyLink = false;
|
||||||
|
MkdnEnter = {
|
||||||
|
key = "<CR>";
|
||||||
|
modes = [ "v" ];
|
||||||
|
};
|
||||||
|
MkdnExtendList = false;
|
||||||
|
|
||||||
|
MkdnFoldSection = {
|
||||||
|
key = "<leader>mf";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
|
||||||
|
MkdnUnfoldSection = {
|
||||||
|
key = "<leader>mF";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
|
||||||
|
MkdnFollowLink = {
|
||||||
|
key = "gd";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnGoBack = false;
|
||||||
|
MkdnGoForward = false;
|
||||||
|
MkdnIncreaseHeading = {
|
||||||
|
key = "<leader>m+";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnMoveSource = false;
|
||||||
|
MkdnNewListItem = false;
|
||||||
|
MkdnNewListItemAboveInsert = {
|
||||||
|
key = "O";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnNewListItemBelowInsert = {
|
||||||
|
key = "o";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnNextHeading = {
|
||||||
|
key = "<leader>m#";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnNextLink = false;
|
||||||
|
MkdnPrevLink = false;
|
||||||
|
MkdnPrevHeading = {
|
||||||
|
key = "<leader>m*";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnSTab = false;
|
||||||
|
MkdnTab = false;
|
||||||
|
MkdnTableNewColAfter = {
|
||||||
|
key = "<leader>mc";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnTableNewColBefore = {
|
||||||
|
key = "<leader>mC";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnTableNewRowAbove = {
|
||||||
|
key = "<leader>mR";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnTableNewRowBelow = {
|
||||||
|
key = "<leader>mr";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnTableNextCell = {
|
||||||
|
key = "<S-Tab>";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnTableNextRow = false;
|
||||||
|
MkdnTablePrevCell = {
|
||||||
|
key = "<S-Tab>";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnTablePrevRow = false;
|
||||||
|
MkdnToggleToDo = {
|
||||||
|
key = "<C-Space>";
|
||||||
|
modes = [ "n" "v" ];
|
||||||
|
};
|
||||||
|
MkdnUpdateNumbering = {
|
||||||
|
key = "<leader>mn";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnYankAnchorLink = {
|
||||||
|
key = "ya";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
MkdnYankFileAnchorLink = {
|
||||||
|
key = "yfa";
|
||||||
|
modes = "n";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Render UI elements
|
||||||
|
render-markdown = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
heading = { enabled = false; };
|
||||||
|
checkbox = {
|
||||||
|
unchecked = { highlight = "RenderMarkdownTodo"; };
|
||||||
|
checked = { highlight = "RenderMarkdownDone"; };
|
||||||
|
custom = {
|
||||||
|
pending = {
|
||||||
|
raw = "[-]";
|
||||||
|
rendered = " ";
|
||||||
|
highlight = "RenderMarkdownTodo";
|
||||||
|
};
|
||||||
|
important = {
|
||||||
|
raw = "[!]";
|
||||||
|
rendered = " ";
|
||||||
|
highlight = "RenderMarkdownWarning";
|
||||||
|
};
|
||||||
|
cancel = {
|
||||||
|
raw = "[/]";
|
||||||
|
rendered = " ";
|
||||||
|
highlight = "RenderMarkdownWarning";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -7,6 +7,11 @@
|
|||||||
settings = {
|
settings = {
|
||||||
default_file_explorer = false;
|
default_file_explorer = false;
|
||||||
skip_confirm_for_simple_edits = true;
|
skip_confirm_for_simple_edits = true;
|
||||||
|
view_options.is_hidden_file = ''
|
||||||
|
function(name, bufnr)
|
||||||
|
return vim.startswith(name, ".") or name == "img"
|
||||||
|
end
|
||||||
|
'';
|
||||||
win_options = {
|
win_options = {
|
||||||
concealcursor = "ncv";
|
concealcursor = "ncv";
|
||||||
conceallevel = 3;
|
conceallevel = 3;
|
||||||
|
|||||||
@@ -3,17 +3,10 @@
|
|||||||
highlightOverride = {
|
highlightOverride = {
|
||||||
FloatBorder.fg = "#${config.lib.stylix.colors.base0D}";
|
FloatBorder.fg = "#${config.lib.stylix.colors.base0D}";
|
||||||
};
|
};
|
||||||
|
nixpkgs.config = { allowUnfree = true; };
|
||||||
plugins = {
|
plugins = {
|
||||||
# FIXME: broken on unstable
|
copilot-vim.enable = true;
|
||||||
# copilot-vim.enable = true;
|
|
||||||
flash.enable = true;
|
flash.enable = true;
|
||||||
image = {
|
|
||||||
enable = true;
|
|
||||||
integrations.markdown = {
|
|
||||||
clearInInsertMode = true;
|
|
||||||
onlyRenderImageAtCursor = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
tmux-navigator.enable = true;
|
tmux-navigator.enable = true;
|
||||||
comment.enable = true;
|
comment.enable = true;
|
||||||
nvim-autopairs.enable = true;
|
nvim-autopairs.enable = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user