Skip to content

denstiny/styledoc.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Plugin Name: Styledoc.nvim

styledoc.nvim is an exquisite Markdown editing and preview plugin tailored for Neovim. This plugin offers a real-time editing and preview experience akin to the robust capabilities of Emacs Org mode. Crafted using pure Lua and leveraging the parsing prowess of Treesitter, NeoMarkPreview brings an unprecedented level of fluidity and efficiency to Markdown document editing.

image


Core Features:

  • Real-Time Preview: Changes you make are reflected in real-time in the preview window, offering a clear view of your document’s content.
  • Fragmented Updating: With intelligent differential updating technology, only the altered parts of the document are refreshed, ensuring high editing efficiency and minimal system load.
  • Interactive Diagrams and Flowchart Preview: Supports common diagram and flowchart editing with real-time preview, greatly enhancing workflow visualization.
  • Math Symbols Support: Features real-time preview for mathematical symbols, making mathematical notation editing easy and precise.
  • Table Formatting Support: Quickly organize and beautify Markdown tables for both aesthetics and readability.

Installation Guide:

  1. Ensure you have the latest version of Neovim installed.
  2. Install using your preferred plugin manager, such as packer.nvim or vim-plug. For packer.nvim users:
{
 "denstiny/styledoc.nvim",
 dependencies = {
  "nvim-treesitter/nvim-treesitter",
  "vhyrro/luarocks.nvim",
  "3rd/image.nvim",
 },
 opts = true,
 ft = "markdown",
}
  1. After installation, you might need to run :TSUpdate to ensure Treesitter is up to date with the latest grammar files.

Advanced Configuration:

{  
 ui = {  
   block = {enable = true,symbol =  ""},
   list = {
    enable = true,
    syymbol = {
     list_minus = "",
     task_undo = " 󰄱 ",
     task_do = ""
    }
   },
   title = {
    enable = true,
    symbol = {
     h1 = "",
     h2 = "",
     h3 = "",
     h4 = "",
     h5 = "",
     h6 = "",
     h7 = "",
   }
  },
  table = {
   enable = true,
   symbol = {
    leftalign = "󰘟",
    rightalign = "󰘠",
    line = ""
   }
  },
  breakline = {  
   enable = true,  
   symbol = function(bufnr)  
    local winid = vim.fn.bufwinid(bufnr)  
    local width = vim.fn.winwidth(winid)  
    local str = string.rep("-", width)  
    return str  
    end,  
  },  
  codeblock = {  
   symbol = {  
   start = function(bufnr, lang)
    local winid = vim.fn.bufwinid(bufnr)
    local width = vim.fn.winwidth(winid)  
    local spe = string.rep("", width / 2 - string.len(lang) / 2 - 6)  
    local str = "" .. spe .. string.format(" %s ", lang) .. spe .. ""  
    return str  
   end,  
   end_ = function(bufnr)  
    local winid = vim.fn.bufwinid(bufnr)  
    local width = vim.fn.winwidth(winid)  
    local spe = string.rep("", math.ceil(width / 2) - 5)  
    local str = "" .. spe .. spe .. ""  
    return str  
   end,   
   }  
  }  
 }  
}  

User Feedback:

We welcome feedback and suggestions! Please submit issues or pull requests in our GitHub repository so we can continually improve and provide a superior plugin experience.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published