-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
89 lines (71 loc) · 2.74 KB
/
Makefile
File metadata and controls
89 lines (71 loc) · 2.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
.PHONY: help pr-description mr-description github gitlab \
lint format check validate clean docs update-readme \
install test health
# Default target
help:
@echo "Neovim Configuration - Available Commands"
@echo ""
@echo "PR/MR Description:"
@echo " make pr-description Generate GitHub PR description"
@echo " make mr-description Generate GitLab MR description"
@echo ""
@echo "Code Quality:"
@echo " make lint Run luacheck linter"
@echo " make format Format Lua files with stylua"
@echo " make check Run lint + format check (no write)"
@echo " make validate Run full config validation"
@echo ""
@echo "Documentation:"
@echo " make docs Generate plugin documentation"
@echo " make update-readme Update README with plugin list"
@echo ""
@echo "Maintenance:"
@echo " make clean Remove cache and generated files"
@echo " make health Run Neovim health checks"
@echo " make test Test Neovim startup"
#------------------------------------------------------------------------------
# PR/MR Description
#------------------------------------------------------------------------------
pr-description:
@nvim --headless -c "lua print(require('pr-description').generate_description())" -c "qa"
mr-description:
@nvim --headless -c "lua print(require('pr-description').generate_description({is_gitlab=true}))" -c "qa"
# Aliases for backwards compatibility
github: pr-description
gitlab: mr-description
#------------------------------------------------------------------------------
# Code Quality
#------------------------------------------------------------------------------
lint:
@echo "Running luacheck..."
@luacheck lua/ --config .luacheckrc
format:
@echo "Formatting with stylua..."
@stylua --config-path stylua.toml lua/
format-check:
@stylua --config-path stylua.toml --check lua/
check: lint format-check
@echo "All checks passed!"
validate:
@./scripts/validate.sh
#------------------------------------------------------------------------------
# Documentation
#------------------------------------------------------------------------------
docs:
@./scripts/generate-docs.sh
update-readme:
@./scripts/update-readme.sh
#------------------------------------------------------------------------------
# Maintenance
#------------------------------------------------------------------------------
clean:
@echo "Cleaning cache files..."
@rm -rf .aider.tags.cache.v4/
@rm -rf .elixir-tools/
@rm -f lazy-lock.json.bak
@echo "Done!"
health:
@nvim --headless -c "checkhealth" -c "qa"
test:
@echo "Testing Neovim startup..."
@nvim --headless -c "lua print('Startup OK - ' .. #require('lazy').plugins() .. ' plugins loaded')" -c "qa"