Skip to content

Commit e2395c7

Browse files
committed
📝 Add comprehensive Vim help documentation
Add comprehensive Vim help documentation and auto-generate tags - Add doc/silkcircuit.txt with complete plugin documentation including installation, configuration, commands, variants, integrations, customization, and troubleshooting sections - Add doc/tags file with 22 help tag entries for navigation - Update init.lua to automatically generate help tags when documentation directory exists using vim.cmd.helptags() Provides complete in-editor help system accessible via :help silkcircuit with proper cross-references and examples.
1 parent da06678 commit e2395c7

File tree

3 files changed

+387
-0
lines changed

3 files changed

+387
-0
lines changed

doc/silkcircuit.txt

Lines changed: 358 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,358 @@
1+
*silkcircuit.txt* Electric dreams for Neovim
2+
*silkcircuit*
3+
4+
SILKCIRCUIT THEME ~
5+
6+
Electric purple meets neon dreams
7+
Performance meets beauty
8+
9+
==============================================================================
10+
CONTENTS *silkcircuit-contents*
11+
12+
1. Introduction ......................... |silkcircuit-introduction|
13+
2. Installation ......................... |silkcircuit-installation|
14+
3. Configuration ........................ |silkcircuit-configuration|
15+
4. Commands ............................. |silkcircuit-commands|
16+
5. Variants ............................. |silkcircuit-variants|
17+
6. Integrations ......................... |silkcircuit-integrations|
18+
7. Customization ........................ |silkcircuit-customization|
19+
8. Troubleshooting ...................... |silkcircuit-troubleshooting|
20+
9. Contributing ......................... |silkcircuit-contributing|
21+
22+
==============================================================================
23+
1. INTRODUCTION *silkcircuit-introduction*
24+
25+
SilkCircuit is a vibrant Neovim theme featuring electric purples, hot pinks,
26+
and glowing cyan accents. Designed for developers who want their editor to
27+
match their personality - bold, expressive, and unapologetically colorful.
28+
29+
Key features:
30+
- Lightning-fast performance (<5ms load time)
31+
- Three variants: neon (default), vibrant, soft
32+
- 40+ auto-detected plugin integrations
33+
- WCAG AA contrast compliance
34+
- Persistent user preferences
35+
- Glow mode for extra visual impact
36+
37+
==============================================================================
38+
2. INSTALLATION *silkcircuit-installation*
39+
40+
Using lazy.nvim: >lua
41+
{
42+
"SilkCircuit/silkcircuit-nvim",
43+
lazy = false,
44+
priority = 1000,
45+
config = function()
46+
require("silkcircuit").setup()
47+
vim.cmd("colorscheme silkcircuit")
48+
end,
49+
}
50+
<
51+
52+
Using packer.nvim: >lua
53+
use {
54+
"SilkCircuit/silkcircuit-nvim",
55+
config = function()
56+
require("silkcircuit").setup()
57+
vim.cmd("colorscheme silkcircuit")
58+
end
59+
}
60+
<
61+
62+
Manual installation:
63+
1. Clone the repository to your Neovim runtime path
64+
2. Add to your init.lua: >lua
65+
require("silkcircuit").setup()
66+
vim.cmd("colorscheme silkcircuit")
67+
<
68+
69+
==============================================================================
70+
3. CONFIGURATION *silkcircuit-configuration*
71+
72+
Configure SilkCircuit by passing options to setup(): >lua
73+
require("silkcircuit").setup({
74+
variant = "neon", -- "neon" | "vibrant" | "soft"
75+
transparent = false, -- Enable transparent background
76+
terminal_colors = true, -- Configure terminal colors
77+
dim_inactive = false, -- Dim inactive windows
78+
79+
styles = {
80+
comments = { italic = true },
81+
keywords = { bold = true },
82+
functions = {},
83+
variables = {},
84+
-- See |silkcircuit-styles| for all options
85+
},
86+
87+
integrations = {
88+
-- All integrations are auto-detected by default
89+
-- Disable specific integrations:
90+
telescope = false,
91+
-- See |silkcircuit-integrations| for full list
92+
},
93+
94+
-- Custom highlight overrides
95+
on_highlights = function(highlights, colors)
96+
highlights.CursorLine = { bg = colors.bg_highlight }
97+
end,
98+
})
99+
<
100+
101+
Configuration Options ~
102+
*silkcircuit-options*
103+
104+
variant ~
105+
Theme variant to use.
106+
Default: "neon"
107+
Options: "neon" | "vibrant" | "soft"
108+
109+
transparent ~
110+
Enable transparent background.
111+
Default: false
112+
113+
terminal_colors ~
114+
Configure terminal colors (g:terminal_color_*).
115+
Default: true
116+
117+
dim_inactive ~
118+
Dim inactive windows to improve focus.
119+
Default: false
120+
121+
compile ~
122+
Enable bytecode compilation for faster loading.
123+
Default: true
124+
125+
glow_mode ~
126+
Enable glow mode for extra visual impact.
127+
Default: false
128+
129+
styles ~
130+
Customize syntax element styles.
131+
See |silkcircuit-styles| for details.
132+
133+
integrations ~
134+
Configure plugin integrations.
135+
See |silkcircuit-integrations| for details.
136+
137+
on_highlights ~
138+
Function to override specific highlights.
139+
Receives (highlights, colors) as arguments.
140+
141+
==============================================================================
142+
4. COMMANDS *silkcircuit-commands*
143+
144+
:SilkCircuit {variant} *:SilkCircuit*
145+
Switch to a different variant (neon/vibrant/soft).
146+
Without argument, shows current variant.
147+
148+
:SilkCircuitCompile *:SilkCircuitCompile*
149+
Compile theme for optimal performance.
150+
Creates bytecode cache for faster loading.
151+
152+
:SilkCircuitGlow *:SilkCircuitGlow*
153+
Toggle glow mode on/off.
154+
Adds extra visual effects to certain elements.
155+
156+
:SilkCircuitRandom *:SilkCircuitRandom*
157+
Switch to a random variant.
158+
Useful for trying different looks.
159+
160+
:SilkCircuitContrast *:SilkCircuitContrast*
161+
Run WCAG contrast validation.
162+
Shows all color combinations and their contrast ratios.
163+
164+
:SilkCircuitColors *:SilkCircuitColors*
165+
Display all theme colors.
166+
Shows color names and hex values.
167+
168+
:SilkCircuitIntegrations *:SilkCircuitIntegrations*
169+
Show detected plugin integrations.
170+
Lists which plugins are installed and themed.
171+
172+
:SilkCircuitReset *:SilkCircuitReset*
173+
Reset to default settings.
174+
Clears all preferences and custom configurations.
175+
176+
==============================================================================
177+
5. VARIANTS *silkcircuit-variants*
178+
179+
SilkCircuit includes three carefully crafted variants:
180+
181+
Neon (default) ~
182+
The signature look with maximum vibrancy.
183+
Features pure electric purple (#e135ff) and hot pink.
184+
Best for: Dark rooms, late night coding sessions.
185+
186+
Vibrant ~
187+
Increased saturation and contrast.
188+
Even more electric than neon.
189+
Best for: Maximum visual impact, high-end displays.
190+
191+
Soft ~
192+
Reduced saturation for extended use.
193+
Maintains the theme's personality with less intensity.
194+
Best for: Long coding sessions, bright environments.
195+
196+
Switching variants: >vim
197+
:SilkCircuit neon
198+
:SilkCircuit vibrant
199+
:SilkCircuit soft
200+
<
201+
202+
==============================================================================
203+
6. INTEGRATIONS *silkcircuit-integrations*
204+
205+
SilkCircuit automatically detects and themes 40+ popular plugins.
206+
207+
Core Integrations ~
208+
- Treesitter: Full syntax highlighting
209+
- LSP: Diagnostics, references, semantic tokens
210+
- Telescope: Consistent picker theming
211+
- Neo-tree/NvimTree: File explorer styling
212+
- Gitsigns: Git integration
213+
214+
UI Integrations ~
215+
- Lualine: Matching statusline theme
216+
- Bufferline: Tabline styling
217+
- Dashboard/Alpha: Startup screen
218+
- WhichKey: Keybinding display
219+
- Notify: Notification styling
220+
221+
Editor Integrations ~
222+
- Cmp: Completion menu theming
223+
- IndentBlankline: Indentation guides
224+
- Illuminate: Reference highlighting
225+
- Hop/Leap/Flash: Motion plugin styling
226+
- Rainbow Delimiters: Bracket coloring
227+
228+
View all detected integrations: >vim
229+
:SilkCircuitIntegrations
230+
<
231+
232+
Disabling integrations: >lua
233+
require("silkcircuit").setup({
234+
integrations = {
235+
telescope = false,
236+
cmp = false,
237+
-- etc.
238+
}
239+
})
240+
<
241+
242+
==============================================================================
243+
7. CUSTOMIZATION *silkcircuit-customization*
244+
245+
Style Customization ~
246+
*silkcircuit-styles*
247+
248+
Customize how syntax elements are displayed: >lua
249+
styles = {
250+
comments = { italic = true },
251+
keywords = { bold = true },
252+
functions = { bold = false },
253+
variables = {},
254+
operators = {},
255+
booleans = {},
256+
strings = {},
257+
types = {},
258+
constants = {},
259+
}
260+
<
261+
262+
Color Customization ~
263+
264+
Access theme colors in your config: >lua
265+
on_highlights = function(highlights, colors)
266+
-- colors table includes:
267+
-- bg, fg, purple, pink, cyan, green, yellow, etc.
268+
269+
highlights.CustomHighlight = {
270+
fg = colors.purple,
271+
bg = colors.bg_highlight,
272+
bold = true
273+
}
274+
end
275+
<
276+
277+
Creating Custom Highlights ~
278+
279+
Example custom highlights: >lua
280+
on_highlights = function(hl, c)
281+
-- Custom cursor line
282+
hl.CursorLine = { bg = c.bg_highlight }
283+
284+
-- Custom search highlighting
285+
hl.Search = { fg = c.bg, bg = c.yellow }
286+
hl.IncSearch = { fg = c.bg, bg = c.pink }
287+
288+
-- Custom diagnostic colors
289+
hl.DiagnosticError = { fg = c.red }
290+
hl.DiagnosticWarn = { fg = c.yellow }
291+
hl.DiagnosticInfo = { fg = c.cyan }
292+
hl.DiagnosticHint = { fg = c.purple }
293+
end
294+
<
295+
296+
==============================================================================
297+
8. TROUBLESHOOTING *silkcircuit-troubleshooting*
298+
299+
Run health check: >vim
300+
:checkhealth silkcircuit
301+
<
302+
303+
Common Issues ~
304+
305+
Theme not loading properly ~
306+
1. Ensure you have Neovim 0.8.0 or later
307+
2. Check that termguicolors is enabled: >vim
308+
:set termguicolors
309+
<
310+
3. Verify installation path is correct
311+
312+
Colors look wrong ~
313+
1. Your terminal must support true colors
314+
2. Check terminal color settings
315+
3. Try different terminal emulators
316+
317+
Performance issues ~
318+
1. Run :SilkCircuitCompile to enable caching
319+
2. Check :checkhealth for warnings
320+
3. Disable unused integrations
321+
322+
Plugin not themed ~
323+
1. Check if plugin is detected: >vim
324+
:SilkCircuitIntegrations
325+
<
326+
2. Ensure plugin loads before colorscheme
327+
3. Report missing integrations on GitHub
328+
329+
==============================================================================
330+
9. CONTRIBUTING *silkcircuit-contributing*
331+
332+
Contributions are welcome!
333+
334+
Report issues:
335+
https://github.com/your-username/silkcircuit-nvim/issues
336+
337+
Submit pull requests:
338+
https://github.com/your-username/silkcircuit-nvim/pulls
339+
340+
Development setup:
341+
1. Fork and clone the repository
342+
2. Install development dependencies: >bash
343+
make setup
344+
<
345+
3. Run tests: >bash
346+
make test
347+
<
348+
4. Check code quality: >bash
349+
make lint
350+
<
351+
352+
Adding new integrations:
353+
1. Create lua/silkcircuit/integrations/{plugin}.lua
354+
2. Add detection logic to integrations/init.lua
355+
3. Submit PR with screenshots
356+
357+
==============================================================================
358+
vim:tw=78:ts=8:ft=help:norl:

doc/tags

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
:SilkCircuit silkcircuit.txt /*:SilkCircuit*
2+
:SilkCircuitColors silkcircuit.txt /*:SilkCircuitColors*
3+
:SilkCircuitCompile silkcircuit.txt /*:SilkCircuitCompile*
4+
:SilkCircuitContrast silkcircuit.txt /*:SilkCircuitContrast*
5+
:SilkCircuitGlow silkcircuit.txt /*:SilkCircuitGlow*
6+
:SilkCircuitIntegrations silkcircuit.txt /*:SilkCircuitIntegrations*
7+
:SilkCircuitRandom silkcircuit.txt /*:SilkCircuitRandom*
8+
:SilkCircuitReset silkcircuit.txt /*:SilkCircuitReset*
9+
silkcircuit silkcircuit.txt /*silkcircuit*
10+
silkcircuit-commands silkcircuit.txt /*silkcircuit-commands*
11+
silkcircuit-configuration silkcircuit.txt /*silkcircuit-configuration*
12+
silkcircuit-contents silkcircuit.txt /*silkcircuit-contents*
13+
silkcircuit-contributing silkcircuit.txt /*silkcircuit-contributing*
14+
silkcircuit-customization silkcircuit.txt /*silkcircuit-customization*
15+
silkcircuit-installation silkcircuit.txt /*silkcircuit-installation*
16+
silkcircuit-integrations silkcircuit.txt /*silkcircuit-integrations*
17+
silkcircuit-introduction silkcircuit.txt /*silkcircuit-introduction*
18+
silkcircuit-options silkcircuit.txt /*silkcircuit-options*
19+
silkcircuit-styles silkcircuit.txt /*silkcircuit-styles*
20+
silkcircuit-troubleshooting silkcircuit.txt /*silkcircuit-troubleshooting*
21+
silkcircuit-variants silkcircuit.txt /*silkcircuit-variants*
22+
silkcircuit.txt silkcircuit.txt /*silkcircuit.txt*

lua/silkcircuit/init.lua

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,13 @@ function M.load()
7070

7171
-- Apply saved preferences
7272
preferences.apply()
73+
74+
-- Generate help tags for documentation
75+
local doc_path =
76+
vim.fn.expand(debug.getinfo(1, "S").source:sub(2):match("(.*/)") .. "../../../doc")
77+
if vim.fn.isdirectory(doc_path) == 1 then
78+
vim.cmd.helptags(doc_path)
79+
end
7380
end
7481

7582
-- Get color palette

0 commit comments

Comments
 (0)