File tree Expand file tree Collapse file tree 22 files changed +1930
-0
lines changed
Expand file tree Collapse file tree 22 files changed +1930
-0
lines changed Original file line number Diff line number Diff line change 1+ # EditorConfig is awesome: https://EditorConfig.org
2+
3+ # top-most EditorConfig file
4+ root = true
5+
6+ [* ]
7+ charset = utf-8
8+ end_of_line = lf
9+ indent_style = space
10+ indent_size = tab
11+ tab_width = 4
12+ trim_trailing_whitespace = true
13+ insert_final_newline = true
14+
15+ [* .md ]
16+ trim_trailing_whitespace = false
17+
18+ [* .{yml,yaml} ]
19+ tab_width = 2
20+
21+ [Makefile ]
22+ indent_style = tab
23+
24+ [* .el ]
25+ tab_width = 2
Original file line number Diff line number Diff line change 1+ # Common settings that generally should always be used with your language specific settings
2+
3+ # Auto detect text files and perform LF normalization
4+ * text =auto
5+
6+ #
7+ # The above will handle all files NOT found below
8+ #
9+
10+ # Documents
11+ * .bibtex text diff =bibtex
12+ * .doc diff =astextplain
13+ * .DOC diff =astextplain
14+ * .docx diff =astextplain
15+ * .DOCX diff =astextplain
16+ * .dot diff =astextplain
17+ * .DOT diff =astextplain
18+ * .pdf diff =astextplain
19+ * .PDF diff =astextplain
20+ * .rtf diff =astextplain
21+ * .RTF diff =astextplain
22+ * .md text diff =markdown
23+ * .mdx text diff =markdown
24+ * .tex text diff =tex
25+ * .adoc text
26+ * .textile text
27+ * .mustache text
28+ * .csv text eol =crlf
29+ * .tab text
30+ * .tsv text
31+ * .txt text
32+ * .sql text
33+ * .epub diff =astextplain
34+
35+ # Graphics
36+ * .png binary
37+ * .jpg binary
38+ * .jpeg binary
39+ * .gif binary
40+ * .tif binary
41+ * .tiff binary
42+ * .ico binary
43+ # SVG treated as text by default.
44+ * .svg text
45+ # If you want to treat it as binary,
46+ # use the following line instead.
47+ # *.svg binary
48+ * .eps binary
49+
50+ # Scripts
51+ * .bash text eol =lf
52+ * .fish text eol =lf
53+ * .ksh text eol =lf
54+ * .sh text eol =lf
55+ * .zsh text eol =lf
56+ # These are explicitly windows files and should use crlf
57+ * .bat text eol =crlf
58+ * .cmd text eol =crlf
59+ * .ps1 text eol =crlf
60+
61+ # Serialisation
62+ * .json text
63+ * .toml text
64+ * .xml text
65+ * .yaml text
66+ * .yml text
67+
68+ # Archives
69+ * .7z binary
70+ * .bz binary
71+ * .bz2 binary
72+ * .bzip2 binary
73+ * .gz binary
74+ * .lz binary
75+ * .lzma binary
76+ * .rar binary
77+ * .tar binary
78+ * .taz binary
79+ * .tbz binary
80+ * .tbz2 binary
81+ * .tgz binary
82+ * .tlz binary
83+ * .txz binary
84+ * .xz binary
85+ * .Z binary
86+ * .zip binary
87+ * .zst binary
88+
89+ # Text files where line endings should be preserved
90+ * .patch - text
91+
92+ #
93+ # Exclude files from exporting
94+ #
95+
96+ .gitattributes export-ignore
97+ .gitignore export-ignore
98+ .gitkeep export-ignore
99+
100+ # Basic .gitattributes for a Lua repo.
101+
102+ # Source files
103+ # ============
104+ * .lua text
105+
106+ # Luadoc output
107+ # =============
108+ * .html text diff =html
109+ * .css text diff =css
Original file line number Diff line number Diff line change 1+ name : CI
2+
3+ on :
4+ pull_request :
5+ branches :
6+ - " **"
7+ push :
8+ branches :
9+ - master
10+ workflow_call :
11+
12+ jobs :
13+ lint :
14+ name : Lint
15+ runs-on : ubuntu-latest
16+ steps :
17+ - name : Checkout code
18+ uses : actions/checkout@v5
19+
20+ - name : Lint with luacheck
21+ uses : lunarmodules/luacheck@v1
22+ with :
23+ args : lua/
24+
25+ format :
26+ name : Check Formatting
27+ runs-on : ubuntu-latest
28+ steps :
29+ - name : Checkout code
30+ uses : actions/checkout@v5
31+
32+ - name : Check formatting with StyLua
33+ uses : JohnnyMorganz/stylua-action@v4
34+ with :
35+ token : ${{ secrets.GITHUB_TOKEN }}
36+ version : latest
37+ args : --check lua/
38+
39+ test :
40+ name : Test Plugin
41+ runs-on : ubuntu-latest
42+ steps :
43+ - name : Checkout code
44+ uses : actions/checkout@v5
45+
46+ - name : Setup Neovim
47+ uses : rhysd/action-setup-vim@v1
48+ with :
49+ neovim : true
50+ version : stable
51+
52+ - name : Test plugin loads
53+ run : |
54+ nvim --headless -c "set rtp+=." -c "lua require('netlinx').setup()" -c "q"
55+
56+ - name : Validate Tree-sitter queries
57+ run : |
58+ nvim --headless -c "set rtp+=." -c "lua vim.treesitter.query.get('netlinx', 'highlights')" -c "q"
Original file line number Diff line number Diff line change 1+ name : Release
2+
3+ on :
4+ push :
5+ tags :
6+ - " v*.*.*"
7+
8+ permissions :
9+ contents : write
10+ pull-requests : write
11+
12+ jobs :
13+ checks :
14+ name : Run Checks
15+ uses : ./.github/workflows/ci.yml
16+
17+ release :
18+ name : Create Release
19+ needs : checks
20+ runs-on : ubuntu-latest
21+ steps :
22+ - name : Checkout code
23+ uses : actions/checkout@v5
24+ with :
25+ fetch-depth : 0
26+
27+ - name : Extract tag
28+ id : extract_tag
29+ run : |
30+ TAG=${GITHUB_REF#refs/tags/}
31+ echo "tag=$TAG" >> $GITHUB_OUTPUT
32+ echo "Tag: $TAG"
33+
34+ - name : Install tools
35+ uses : taiki-e/install-action@v2
36+ with :
37+ tool : git-cliff,typos-cli
38+
39+ - name : Generate changelog and release notes
40+ run : |
41+ ./scripts/generate-changelog.sh
42+ ./scripts/generate-release-notes.sh
43+ env :
44+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
45+
46+ - name : Commit and push changes
47+ run : ./scripts/commit.sh ${{ steps.extract_tag.outputs.tag }}
48+
49+ - name : Create GitHub Release
50+ uses : softprops/action-gh-release@v1
51+ with :
52+ body_path : RELEASE_NOTES.md
53+ draft : false
54+ prerelease : false
Original file line number Diff line number Diff line change 1+ # Compiled Lua sources
2+ luac.out
3+
4+ # luarocks build files
5+ * .src.rock
6+ * .zip
7+ * .tar.gz
8+
9+ # Object files
10+ * .o
11+ * .os
12+ * .ko
13+ * .obj
14+ * .elf
15+
16+ # Precompiled Headers
17+ * .gch
18+ * .pch
19+
20+ # Libraries
21+ * .lib
22+ * .a
23+ * .la
24+ * .lo
25+ * .def
26+ * .exp
27+
28+ # Shared objects (inc. Windows DLLs)
29+ * .dll
30+ * .so
31+ * .so. *
32+ * .dylib
33+
34+ # Executables
35+ * .exe
36+ * .out
37+ * .app
38+ * .i * 86
39+ * .x86_64
40+ * .hex
41+
Original file line number Diff line number Diff line change 1+ globals = { " vim" }
2+ read_globals = { " require" }
3+ max_line_length = false
Original file line number Diff line number Diff line change 1+ # Markdownlint configuration
2+ # https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md
3+
4+ extends : null
5+ default : true
6+
7+ # Rule overrides
8+ MD013 : # Line length
9+ line_length : 100
10+ headings : false
11+ tables : false
12+ code_blocks : false
13+
14+ MD024 : # Multiple headings with the same content
15+ siblings_only : true
16+
17+ MD033 : # Allow inline HTML
18+ allowed_elements :
19+ - " br"
20+ - " sub"
21+ - " sup"
22+ - " kbd"
23+ - " details"
24+ - " summary"
25+ - " img"
26+
27+ MD041 : false # First line in file should be a top level heading
28+
29+ MD046 : # Code block style
30+ style : fenced
31+
32+ MD036 : false # Emphasis used instead of a heading
33+
34+ MD025 : false # Multiple top level headings in the same document
35+
36+ MD034 : false # Bare URL used
37+
38+ MD026 : # Trailing punctuation in heading
39+ punctuation : " .,;:!"
Original file line number Diff line number Diff line change 1+ {
2+ "trailingComma" : " all" ,
3+ "printWidth" : 80 ,
4+ "semi" : true ,
5+ "singleQuote" : false ,
6+ "bracketSpacing" : true ,
7+ "bracketSameLine" : false ,
8+ "arrowParens" : " always"
9+ }
Original file line number Diff line number Diff line change 1+ {
2+ "Lua.diagnostics.globals" : [" vim" ]
3+ }
Original file line number Diff line number Diff line change 1+ # Changelog
2+
3+ All notable changes to this project will be documented in this file.
You can’t perform that action at this time.
0 commit comments