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
|
local spdx_header = {
"// SAME Analog Modular Ecosystem",
"//",
"// / SPDX-FileCopyrightText: 2026 Denis Chevalier <perso@denischevalier.fr>",
"// / SPDX-License-Identifier: CC-BY-SA-4.0",
"// / SPDX-License-Identifier: CERN-OHL-S-2.0+",
"// / SPDX-License-Identifier: GPL-3.0-or-later",
"//",
"// The prose, explanatory text, rendered figures, tables, and mathematical",
"// content of this specification are licensed under CC BY-SA 4.0. If a later",
"// version of CC BY-SA is published, the author grants permission to distribute",
"// this work under that later version as well.",
"//",
"// Hardware designs contained herein (schematics, PCB layouts, mechanical",
"// drawings, and CAD models) are licensed under CERN-OHL-S-2.0+.",
"//",
"// All executable code, helper libraries (`lib/*`), metrology assertions, and",
"// embedded verification scripts throughout the source documents are licensed",
"// under the GNU General Public License v3.0 or later (GPL-3.0-or-later).",
"",
"",
}
vim.api.nvim_create_autocmd("BufNewFile", {
pattern = "*.typ",
callback = function(args)
-- Insert header into new file
vim.api.nvim_buf_set_lines(args.buf, 0, -1, false, spdx_header)
-- Move cursor to the line below the header
vim.api.nvim_win_set_cursor(0, { #spdx_header, 0 })
end,
})
|