PyCharm 2026.3 Help

版权配置文件

使用此页面可创建、编辑和移除版权配置文件。

配置文件工具栏

项目

工具提示与快捷键

描述

添加按钮

Alt+Insert

添加新配置文件。

“移除”按钮

Alt+Delete

移除所选配置文件。

复制按钮

Ctrl+D

打开 复制版权配置文件 对话框,您可以在其中创建所选配置文件的副本。

导入文件

导入

导入包含版权声明定义的文件。 有关更多信息,请参见 导入版权配置文件。

版权配置文件页面

使用此页面配置所选配置文件:定义要生成的版权声明,并指定用于在注释中检测版权声明的关键字。

项目

描述

名称

使用此文本字段查看或编辑所选版权配置文件的名称。

通过 VCS 共享

选中此复选框可将配置文件存储在 .idea 目录中,并通过 VCS 与团队共享。 如果清除此复选框,PyCharm 会在 IDE 级别存储该配置文件,并将其应用于所有项目。

版权文本(可包含 Velocity 模板)

使用此文本区域查看或编辑要生成的版权声明。 版权配置文件可以包含版权声明的显式纯文本,或通过 Velocity 模板定义版权声明。

目前,Velocity 上下文中可用以下变量:

名称

按类型分组

说明

$today

DateInfo

当前日期和时间。 将其与 DateInfo 属性配合使用,例如, $today.year 会插入当前年份。

$file.fileName

String

要生成版权声明的当前已打开文件的名称。

$file.pathName

String

要生成版权声明的当前已打开文件的完整路径和名称。

$file.className

String

在 Java 和 Groovy 文件中,类的名称。 在其他文件中,文件名与 $file.fileName 相同。

$file.qualifiedClassName

String

在 Java 和 Groovy 文件中,类的完全限定名称。 在其他文件中,文件的完整路径和名称与 $file.pathName 相同。

$file.lastModified

DateInfo

当前文件上次更改的日期和时间。 将其与 DateInfo 属性配合使用,例如, $file.lastModified.year。

$project.name

String

当前项目的名称。

$username

String

当前操作系统用户的登录名。

$originalComment.match(regexp, group, suffix, ignoreValue)

String

在现有版权声明的 group 组中由 regexp 捕获的文本,后跟 suffix。 更新声明时,使用它来保留原始年份。

如果没有现有声明、 regexp 与其不匹配,或者捕获的文本等于 ignoreValue ,则返回空字符串。

可以省略 ignoreValue。 如果仅传递 regexp ,则 group 为 1 ,并且不会添加后缀。

$today 和 $file.lastModified 具有以下属性和方法。 表中以 $today 显示它们。 对于最后修改日期,请将相同名称与 $file.lastModified 一起使用,例如 $file.lastModified.year。

名称

按类型分组

说明

$today.year

int

年份,例如 2026。

$today.month

int

月份 (1-12)。

$today.day

int

月份中的日期 (1-31)。

$today.hour

int

12 小时制格式的小时数 (0-11)。

$today.hour24

int

24 小时制格式的小时数 (0-23)。

$today.minute

int

小时中的分钟数 (0-59)。

$today.second

int

分钟中的秒数 (0-59)。

$today.format(String format)

String

使用 日期和时间模式设置格式的日期和时间,例如, $today.format("yyyy-MM-dd") 返回 2026-10-01。

例如,以下模板会插入当前年份和当前用户的名称:

Copyright (c) $today.year $username

要保留原始年份并仅更新最后一个年份,例如,将 2022 - 2025 更改为 2022 - 2026 ,请使用 $originalComment.match:

Copyright (c) $originalComment.match("Copyright \(c\) (\d+)", 1, " - ", "$today.year")$today.year $username

在新声明中,此模板仅插入当前年份,例如 Copyright (c) 2026 jsmith。 更新现有声明时,它会从旧声明中获取第一个年份,并在其后添加当前年份。 如果旧声明已经以当前年份开头, ignoreValue 会防止出现诸如 2026 - 2026 这样的范围。 如需更多信息,请参阅 版权模板中的日期。

验证

点击此按钮以检查 Velocity 模板是否已正确指定。

用于在注释中检测版权的正则表达式

使用此字段输入、查看或编辑用于在注释中查找版权声明的 正则表达式。

请注意,此正则表达式应与上文指定的版权声明匹配。 否则, PyCharm 将不会 更新版权声明,而是插入新的声明。

如果旧版权声明匹配,则允许替换版权声明

可选择指定一个正则表达式,用于限制 PyCharm 更新哪些现有版权声明。 仅当此表达式与检测到的声明文本的某个部分匹配时,PyCharm 才会替换该声明。 表达式区分大小写。 如果将该字段留空,PyCharm 将替换所有检测到的声明。

例如,要更新贵公司的声明并保持第三方代码中的声明不变,请指定公司名称: Acme Corp。

请注意 用于在注释中检测版权的正则表达式 和 如果旧版权声明匹配,则允许替换版权声明 之间的区别。 第一个设置用于查找版权声明,第二个设置用于确定是否更新找到的版权声明。

工作原理

2026年 11月 3日