#header #license #source #config-file #automatic #add #language

app licensesnip

为您的源代码添加许可证头部的工具

8个版本 (稳定版)

1.6.0 2024年3月6日
1.5.0 2023年6月23日
1.3.1 2022年5月27日
1.1.2 2022年3月31日
0.1.0 2022年3月30日

#622 in 开发工具

Download history 79/week @ 2024-03-31 143/week @ 2024-04-07 107/week @ 2024-04-14 48/week @ 2024-04-21 31/week @ 2024-04-28 30/week @ 2024-05-05 34/week @ 2024-05-12 63/week @ 2024-05-19 91/week @ 2024-05-26 77/week @ 2024-06-02 37/week @ 2024-06-09 73/week @ 2024-06-16 9/week @ 2024-06-23 3/week @ 2024-06-30 15/week @ 2024-07-07 56/week @ 2024-07-14

87 每月下载量
kicad-api-rs 中使用

MIT 许可证

50KB
853 代码行

🔑 licensesnip

自动为您的源代码添加许可证头部的工具。适用于任何语言。

Licensesnip是用Rust编写的,速度快且可靠⚡。

📦 安装

使用Cargo

cargo install licensesnip

📜 使用方法

在您的项目根目录下,添加一个名为 .licensesnip 的文件,并将您的许可证头部写在那里。Licensesnip会自动将 %FILENAME% 替换为文件名,并将 %YEAR% 替换为年份。

为所有源代码添加许可证头部

licensesnip

Licensesnip默认忽略 .gitignore 文件中的文件。您也可以添加一个名为 .licensesnipignore 的文件,并指定与 .gitignore 文件相同的方式。

从所有源代码中删除许可证头部

licensesnip remove

检查所有源代码文件中是否存在许可证头部

licensesnip check

您也可以指定一个特定的路径或文件进行修改

# Add licenses to src/main.rs
licensesnip src/main.rs
# Remove licenses from src folder
licensesnip remove src/

预提交钩子

您可以使用 licensesnippre-commit 一起使用。将其添加到您本地的 .pre-commit-config.yaml,如下所示

- repo: https://github.com/notken12/licensesnip
  rev: 19b1186 # choose your preferred tag or commit hash
  hooks:
    - id: licensesnip
      args: ["check"] # optionally modify the arguments for licensesnip (default arguments shown here)

⚙️ 配置

找到您的全局 Licensesnip 配置文件

licensesnip config

为当前目录创建/找到本地配置文件

licensesnip config -d

示例配置

{
  "use_gitignore": true,
  "file_types": {
    "js,mjs,ts,cjs,jsx,tsx": {
      "before_line": "// "
    },
    "vue,html": {
      "before_block": "<!--",
      "before_line": "  ",
      "after_block": "-->"
    },
    "rs": {
      "before_line": "// "
    },
    "c": {
      "enable": false
    }
  }
}

要配置一种语言,只需指定该语言的注释如何工作。支持属性包括 before_lineafter_linebefore_blockafter_block。要禁用为特定文件类型添加许可证,将 enable 设置为 false。

❤️ 贡献

我尚未添加对许多语言的内置支持。请帮忙添加您喜欢的语言到 src/base-config.jsonc 并提交一个pull请求。谢谢!

依赖项

~8–18MB
~229K SLoC