{"id":50731384,"url":"https://github.com/beixiyo/vv-indent.nvim","last_synced_at":"2026-06-10T09:01:17.013Z","repository":{"id":354985939,"uuid":"1220667241","full_name":"beixiyo/vv-indent.nvim","owner":"beixiyo","description":"Indent guides with rainbow scope highlighting. 缩进参考线（彩虹作用域高亮）","archived":false,"fork":false,"pushed_at":"2026-05-25T05:41:29.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-25T07:24:08.666Z","etag":null,"topics":["indent","indent-guides","indentline","lua","neovim","neovim-plugin","nvim","nvim-plugin"],"latest_commit_sha":null,"homepage":null,"language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/beixiyo.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-25T07:05:45.000Z","updated_at":"2026-05-25T05:41:32.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/beixiyo/vv-indent.nvim","commit_stats":null,"previous_names":["beixiyo/vv-indent.nvim"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/beixiyo/vv-indent.nvim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beixiyo%2Fvv-indent.nvim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beixiyo%2Fvv-indent.nvim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beixiyo%2Fvv-indent.nvim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beixiyo%2Fvv-indent.nvim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/beixiyo","download_url":"https://codeload.github.com/beixiyo/vv-indent.nvim/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beixiyo%2Fvv-indent.nvim/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34144680,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-10T02:00:07.152Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["indent","indent-guides","indentline","lua","neovim","neovim-plugin","nvim","nvim-plugin"],"created_at":"2026-06-10T09:01:15.578Z","updated_at":"2026-06-10T09:01:17.006Z","avatar_url":"https://github.com/beixiyo.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003evv-indent.nvim\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cem\u003e轻量级缩进参考线 — 当前作用域彩虹色、光标移动实时更新\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Neovim-0.10+-57A143?style=flat-square\u0026logo=neovim\u0026logoColor=white\" alt=\"Requires Neovim 0.10+\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Lua-2C2D72?style=flat-square\u0026logo=lua\u0026logoColor=white\" alt=\"Lua\" /\u003e\n\u003c/p\u003e\n\n---\n\n## 为什么要这个插件\n\n`indent-blankline.nvim` 基于 treesitter 检测作用域 — 整个函数/块是一个 scope，光标在函数体内上下移动时颜色不变\n\nvv-indent 基于**缩进级别**检测作用域，光标一移动颜色就跟着换，体验更接近 VSCode。无外部依赖，基于 `nvim_set_decoration_provider` 按需渲染，内存占用恒定\n\n## 安装\n\n```lua\n{\n  'beixiyo/vv-indent.nvim',\n  dependencies = { 'beixiyo/vv-utils.nvim' },\n  event = { 'BufReadPost', 'BufNewFile' },\n  ---@type VVIndentConfig\n  opts = {\n    enabled = true,\n    style = {\n      scope  = 'solid',    -- 当前作用域竖线：'dashed' | 'solid'（→ │ / ┆）\n      indent = 'dashed',   -- 非作用域缩进线：'dashed' | 'solid'\n    },\n    char = {\n      scope  = nil,        -- 自定义字符，设置后优先于 style.scope\n      indent = nil,        -- 自定义字符，设置后优先于 style.indent\n    },\n    priority = 1,          -- 非作用域 extmark 优先级\n    scope_priority = 200,  -- 作用域 extmark 优先级\n    exclude_ft = {\n      'help', 'dashboard', 'neo-tree', 'Trouble', 'lazy', 'mason',\n      'notify', 'toggleterm', 'lazyterm', 'gitcommit', 'man',\n    },\n    exclude_bt = { 'nofile', 'terminal', 'prompt', 'quickfix' },\n    animate = {\n      enabled = true,      -- 是否启用 scope 展开动画\n      step_ms = 20,        -- 每步间隔（ms）\n      total_ms = 500,      -- 最大动画时长（ms）\n      style = 'out',       -- 展开方向：'out' | 'down' | 'up'\n      easing = 'linear',   -- 缓动函数：linear / outQuad / outCubic / inQuad / inOutQuad\n    },\n    colors = {\n      indent = '#3B4048',  -- 非作用域缩进线颜色\n      scope = {            -- 作用域按深度循环的彩虹色\n        '#E06C75', '#E5C07B', '#61AFEF', '#D19A66',\n        '#98C379', '#C678DD', '#56B6C2',\n      },\n    },\n  },\n}\n```\n\n## 配置\n\n| 选项 | 类型 | 默认值 | 说明 |\n|------|------|--------|------|\n| `enabled` | `boolean` | `true` | 全局开关 |\n| `style.scope` | `'dashed' \\| 'solid'` | `'solid'` | 作用域竖线样式（`solid` → `│`，`dashed` → `┆`） |\n| `style.indent` | `'dashed' \\| 'solid'` | `'dashed'` | 非作用域缩进线样式 |\n| `char.scope` | `string?` | `nil` | 自定义字符，设置后优先于 `style.scope` |\n| `char.indent` | `string?` | `nil` | 自定义字符，设置后优先于 `style.indent` |\n| `priority` | `integer` | `1` | 非作用域 extmark 优先级 |\n| `scope_priority` | `integer` | `200` | 作用域 extmark 优先级 |\n| `exclude_ft` | `string[]` | `{ 'help', 'dashboard', ... }` | 排除的 filetype |\n| `exclude_bt` | `string[]` | `{ 'nofile', 'terminal', ... }` | 排除的 buftype |\n| `animate.enabled` | `boolean` | `true` | 是否启用 scope 展开动画 |\n| `animate.step_ms` | `number` | `20` | 每步间隔（ms） |\n| `animate.total_ms` | `number` | `500` | 最大动画时长（ms） |\n| `animate.style` | `'out' \\| 'down' \\| 'up'` | `'out'` | 展开方向（out=从光标向两端） |\n| `animate.easing` | `string` | `'linear'` | 缓动函数（linear / outQuad / outCubic / inQuad / inOutQuad） |\n| `colors.indent` | `string` | `'#3B4048'` | 非作用域缩进线颜色 |\n| `colors.scope` | `string[]` | *7 色彩虹* | 作用域按深度循环的颜色列表 |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbeixiyo%2Fvv-indent.nvim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbeixiyo%2Fvv-indent.nvim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbeixiyo%2Fvv-indent.nvim/lists"}