Pet*_*řek 5 github github-linguist
我的存储库有几个包含 smartBASIC 源代码的 *.sb 文件。这些文件不会显示在存储库的语言栏中(因为 smartBASIC 及其关联的文件扩展名不是默认语言学家定义的一部分)。
将扩展名映射sb到文件中的smartBASIC.gitattributes:
**/*.sb linguist-language=smartBASIC
Run Code Online (Sandbox Code Playgroud)
并确保映射不被“忽略”:
**/*.sb linguist-vendored=false
**/*.sb linguist-generated=false
**/*.sb linguist-documentation=false
**/*.sb linguist-detectable=true
Run Code Online (Sandbox Code Playgroud)
没有达到预期的效果。文件sb按预期进行处理,但smartBASIC不是预定义的语言,因此自定义映射不会生成任何语言统计信息。(我通过将文件映射到另一种语言 (C++) 并让它们显示在语言栏统计信息中(作为 C++)来验证这一点。
从其他问题(将自定义语言添加到 GitHub 存储库、在 github 存储库中自定义语言)看来,要获得映射到新语言的新扩展,需要将其添加到 Linguist(更具体地说,至少必须添加该语言)。从 Linguist 文档中可以清楚地看出,只有当新语言/扩展在 GitHub 存储库中有足够的存在时,才会添加它们。这是完全有道理的。然而,这也意味着没有明显的方法将sb扩展映射到smartBASIC语言并将其显示在语言栏中(例如,存储库统计数据为 60% smartBASIC、30% Python、10% 其他)。
问题:是否可以使用 Linguist 覆盖将文件扩展名映射到 GitHub 上的新语言,而不将新语言添加到 Linguist 本身?
是否可以使用其他方式?
(这个问题是关于存储库的语言统计信息。语法突出显示和其他自定义在此阶段是次要的。)
目前的最新版本lib/linguist/languages.yml确实不包括 smartBasic。
是否可以使用 Linguist 覆盖将文件扩展名映射到 GitHub 上的新语言,而不将新语言添加到 Linguist 本身
不,不支持。
您遇到类似3665的问题:“如果 'xyz' 不是已知语言,则 lingust-language=xyz 在 github 上似乎会被忽略。建议:使其显示为未知语言”
但即便如此,也不被接受。
在语言栏中添加对自定义名称的支持需要在 Linguist 中进行一些调整,因为 GitHub 端的更改远非微不足道,并且需要一个内部委托的项目来实现它。