mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-21 08:31:27 -05:00
Migrate to go-enry new version (#10906)
This commit is contained in:
parent
7a67bcc204
commit
4dc62dadce
65 changed files with 111849 additions and 102276 deletions
2
go.mod
2
go.mod
|
@ -43,6 +43,7 @@ require (
|
||||||
github.com/facebookgo/subset v0.0.0-20150612182917-8dac2c3c4870 // indirect
|
github.com/facebookgo/subset v0.0.0-20150612182917-8dac2c3c4870 // indirect
|
||||||
github.com/gliderlabs/ssh v0.2.2
|
github.com/gliderlabs/ssh v0.2.2
|
||||||
github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a // indirect
|
github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a // indirect
|
||||||
|
github.com/go-enry/go-enry/v2 v2.3.0
|
||||||
github.com/go-git/go-billy/v5 v5.0.0
|
github.com/go-git/go-billy/v5 v5.0.0
|
||||||
github.com/go-git/go-git/v5 v5.0.0
|
github.com/go-git/go-git/v5 v5.0.0
|
||||||
github.com/go-openapi/jsonreference v0.19.3 // indirect
|
github.com/go-openapi/jsonreference v0.19.3 // indirect
|
||||||
|
@ -93,7 +94,6 @@ require (
|
||||||
github.com/sergi/go-diff v1.1.0
|
github.com/sergi/go-diff v1.1.0
|
||||||
github.com/shurcooL/httpfs v0.0.0-20190527155220-6a4d4a70508b // indirect
|
github.com/shurcooL/httpfs v0.0.0-20190527155220-6a4d4a70508b // indirect
|
||||||
github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd
|
github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd
|
||||||
github.com/src-d/enry/v2 v2.1.0
|
|
||||||
github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2 // indirect
|
github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2 // indirect
|
||||||
github.com/stretchr/testify v1.4.0
|
github.com/stretchr/testify v1.4.0
|
||||||
github.com/tecbot/gorocksdb v0.0.0-20181010114359-8752a9433481 // indirect
|
github.com/tecbot/gorocksdb v0.0.0-20181010114359-8752a9433481 // indirect
|
||||||
|
|
10
go.sum
10
go.sum
|
@ -183,6 +183,10 @@ github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a h1:FQqo
|
||||||
github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=
|
github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE=
|
||||||
github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31 h1:gclg6gY70GLy3PbkQ1AERPfmLMMagS60DKF78eWwLn8=
|
github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31 h1:gclg6gY70GLy3PbkQ1AERPfmLMMagS60DKF78eWwLn8=
|
||||||
github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31/go.mod h1:Ogl1Tioa0aV7gstGFO7KhffUsb9M4ydbEbbxpcEDc24=
|
github.com/glycerine/goconvey v0.0.0-20190410193231-58a59202ab31/go.mod h1:Ogl1Tioa0aV7gstGFO7KhffUsb9M4ydbEbbxpcEDc24=
|
||||||
|
github.com/go-enry/go-enry/v2 v2.3.0 h1:o8KwgY6uSplysrIpj+Y42J/xGPp90ogVpxE2Z3s8Unk=
|
||||||
|
github.com/go-enry/go-enry/v2 v2.3.0/go.mod h1:+xFJwbqWi15bvqFHb2ELUWVRKFQtwB61+sDrkvvxxGI=
|
||||||
|
github.com/go-enry/go-oniguruma v1.2.0 h1:oBO9XC1IDT9+AoWW5oFsa/7gFeOPacEqDbyXZKWXuDs=
|
||||||
|
github.com/go-enry/go-oniguruma v1.2.0/go.mod h1:bWDhYP+S6xZQgiRL7wlTScFYBe023B6ilRZbCAD5Hf4=
|
||||||
github.com/go-git/gcfg v1.5.0 h1:Q5ViNfGF8zFgyJWPqYwA7qGFoMTEiBmdlkcfRmpIMa4=
|
github.com/go-git/gcfg v1.5.0 h1:Q5ViNfGF8zFgyJWPqYwA7qGFoMTEiBmdlkcfRmpIMa4=
|
||||||
github.com/go-git/gcfg v1.5.0/go.mod h1:5m20vg6GwYabIxaOonVkTdrILxQMpEShl1xiMF4ua+E=
|
github.com/go-git/gcfg v1.5.0/go.mod h1:5m20vg6GwYabIxaOonVkTdrILxQMpEShl1xiMF4ua+E=
|
||||||
github.com/go-git/go-billy/v5 v5.0.0 h1:7NQHvd9FVid8VL4qVUMm8XifBK+2xCoZ2lSk0agRrHM=
|
github.com/go-git/go-billy/v5 v5.0.0 h1:7NQHvd9FVid8VL4qVUMm8XifBK+2xCoZ2lSk0agRrHM=
|
||||||
|
@ -560,10 +564,6 @@ github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnIn
|
||||||
github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s=
|
github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s=
|
||||||
github.com/spf13/viper v1.4.0 h1:yXHLWeravcrgGyFSyCgdYpXQ9dR9c/WED3pg1RhxqEU=
|
github.com/spf13/viper v1.4.0 h1:yXHLWeravcrgGyFSyCgdYpXQ9dR9c/WED3pg1RhxqEU=
|
||||||
github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE=
|
github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE=
|
||||||
github.com/src-d/enry/v2 v2.1.0 h1:z1L8t+B8bh3mmjPkJrgOTnVRpFGmTPJsplHX9wAn6BI=
|
|
||||||
github.com/src-d/enry/v2 v2.1.0/go.mod h1:qQeCMRwzMF3ckeGr+h0tJLdxXnq+NVZsIDMELj0t028=
|
|
||||||
github.com/src-d/go-oniguruma v1.1.0 h1:EG+Nm5n2JqWUaCjtM0NtutPxU7ZN5Tp50GWrrV8bTww=
|
|
||||||
github.com/src-d/go-oniguruma v1.1.0/go.mod h1:chVbff8kcVtmrhxtZ3yBVLLquXbzCS6DrxQaAK/CeqM=
|
|
||||||
github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2 h1:JNEGSiWg6D3lcBCMCBqN3ELniXujt+0QNHLhNnO0w3s=
|
github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2 h1:JNEGSiWg6D3lcBCMCBqN3ELniXujt+0QNHLhNnO0w3s=
|
||||||
github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2/go.mod h1:mjqs7N0Q6m5HpR7QfXVBZXZWSqTjQLeTujjA/xUp2uw=
|
github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2/go.mod h1:mjqs7N0Q6m5HpR7QfXVBZXZWSqTjQLeTujjA/xUp2uw=
|
||||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||||
|
@ -829,6 +829,8 @@ gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
|
||||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||||
gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I=
|
gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I=
|
||||||
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||||
|
gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10=
|
||||||
|
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||||
honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||||
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||||
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||||
|
|
|
@ -10,7 +10,7 @@ import (
|
||||||
|
|
||||||
"code.gitea.io/gitea/modules/timeutil"
|
"code.gitea.io/gitea/modules/timeutil"
|
||||||
|
|
||||||
"github.com/src-d/enry/v2"
|
"github.com/go-enry/go-enry/v2"
|
||||||
)
|
)
|
||||||
|
|
||||||
// LanguageStat describes language statistics of a repository
|
// LanguageStat describes language statistics of a repository
|
||||||
|
|
|
@ -7,7 +7,7 @@ package analyze
|
||||||
import (
|
import (
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
|
||||||
"github.com/src-d/enry/v2"
|
"github.com/go-enry/go-enry/v2"
|
||||||
)
|
)
|
||||||
|
|
||||||
// GetCodeLanguageWithCallback detects code language based on file name and content using callback
|
// GetCodeLanguageWithCallback detects code language based on file name and content using callback
|
||||||
|
|
|
@ -12,10 +12,10 @@ import (
|
||||||
|
|
||||||
"code.gitea.io/gitea/modules/analyze"
|
"code.gitea.io/gitea/modules/analyze"
|
||||||
|
|
||||||
|
"github.com/go-enry/go-enry/v2"
|
||||||
"github.com/go-git/go-git/v5"
|
"github.com/go-git/go-git/v5"
|
||||||
"github.com/go-git/go-git/v5/plumbing"
|
"github.com/go-git/go-git/v5/plumbing"
|
||||||
"github.com/go-git/go-git/v5/plumbing/object"
|
"github.com/go-git/go-git/v5/plumbing/object"
|
||||||
"github.com/src-d/enry/v2"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const fileSizeLimit int64 = 16 * 1024 * 1024
|
const fileSizeLimit int64 = 16 * 1024 * 1024
|
||||||
|
|
|
@ -30,7 +30,7 @@ import (
|
||||||
"github.com/blevesearch/bleve/mapping"
|
"github.com/blevesearch/bleve/mapping"
|
||||||
"github.com/blevesearch/bleve/search/query"
|
"github.com/blevesearch/bleve/search/query"
|
||||||
"github.com/ethantkoenig/rupture"
|
"github.com/ethantkoenig/rupture"
|
||||||
"github.com/src-d/enry/v2"
|
"github.com/go-enry/go-enry/v2"
|
||||||
)
|
)
|
||||||
|
|
||||||
const unicodeNormalizeName = "unicodeNormalize"
|
const unicodeNormalizeName = "unicodeNormalize"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
.linguist
|
.linguist*
|
||||||
benchmarks/output
|
benchmarks/output
|
||||||
.ci
|
.ci
|
||||||
Makefile.main
|
Makefile.main
|
||||||
|
@ -9,3 +9,4 @@ build/
|
||||||
vendor/
|
vendor/
|
||||||
java/lib/
|
java/lib/
|
||||||
.vscode/
|
.vscode/
|
||||||
|
.venv
|
|
@ -1,8 +1,9 @@
|
||||||
dist: trusty
|
dist: trusty
|
||||||
language: go
|
language: go
|
||||||
go:
|
go:
|
||||||
- '1.12.x'
|
- '1.14.x'
|
||||||
- '1.11.x'
|
- '1.13.x'
|
||||||
|
|
||||||
env:
|
env:
|
||||||
global:
|
global:
|
||||||
- GO_VERSION_FOR_JVM='1.11.x'
|
- GO_VERSION_FOR_JVM='1.11.x'
|
||||||
|
@ -12,8 +13,6 @@ env:
|
||||||
matrix:
|
matrix:
|
||||||
- ONIGURUMA=0
|
- ONIGURUMA=0
|
||||||
- ONIGURUMA=1
|
- ONIGURUMA=1
|
||||||
matrix:
|
|
||||||
fast_finish: true
|
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- name: test
|
- name: test
|
||||||
|
@ -22,7 +21,6 @@ stages:
|
||||||
- name: publish
|
- name: publish
|
||||||
if: tag IS present
|
if: tag IS present
|
||||||
|
|
||||||
stage: test
|
|
||||||
install:
|
install:
|
||||||
- >
|
- >
|
||||||
if [[ "${ONIGURUMA}" -gt 0 ]]; then
|
if [[ "${ONIGURUMA}" -gt 0 ]]; then
|
||||||
|
@ -36,7 +34,7 @@ install:
|
||||||
sudo dpkg -i "libonig-dev_${ONIGURUMA_VERSION}-1_amd64.deb"
|
sudo dpkg -i "libonig-dev_${ONIGURUMA_VERSION}-1_amd64.deb"
|
||||||
fi;
|
fi;
|
||||||
script:
|
script:
|
||||||
- make test-coverage
|
- go test ./...
|
||||||
after_success:
|
after_success:
|
||||||
- bash <(curl -s https://codecov.io/bash)
|
- bash <(curl -s https://codecov.io/bash)
|
||||||
|
|
||||||
|
@ -98,7 +96,7 @@ jobs:
|
||||||
- sudo apt-get install -y --no-install-recommends clang g++ gcc gcc-multilib libc6-dev libc6-dev-i386 mingw-w64 patch xz-utils
|
- sudo apt-get install -y --no-install-recommends clang g++ gcc gcc-multilib libc6-dev libc6-dev-i386 mingw-w64 patch xz-utils
|
||||||
- cd ${HOME}
|
- cd ${HOME}
|
||||||
- curl -sfSL ${OSXCROSS_URL} | tar -C ${HOME} -xzf -
|
- curl -sfSL ${OSXCROSS_URL} | tar -C ${HOME} -xzf -
|
||||||
- cd $GOPATH/src/github.com/src-d/enry
|
- cd $GOPATH/src/github.com/bzz/enry
|
||||||
script: make darwin-shared
|
script: make darwin-shared
|
||||||
deploy:
|
deploy:
|
||||||
provider: releases
|
provider: releases
|
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
Apache License
|
Apache License
|
||||||
Version 2.0, January 2004
|
Version 2.0, January 2004
|
||||||
http://www.apache.org/licenses/
|
http://www.apache.org/licenses/
|
||||||
|
@ -178,7 +179,7 @@
|
||||||
APPENDIX: How to apply the Apache License to your work.
|
APPENDIX: How to apply the Apache License to your work.
|
||||||
|
|
||||||
To apply the Apache License to your work, attach the following
|
To apply the Apache License to your work, attach the following
|
||||||
boilerplate notice, with the fields enclosed by brackets "{}"
|
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||||
replaced with your own identifying information. (Don't include
|
replaced with your own identifying information. (Don't include
|
||||||
the brackets!) The text should be enclosed in the appropriate
|
the brackets!) The text should be enclosed in the appropriate
|
||||||
comment syntax for the file format. We also recommend that a
|
comment syntax for the file format. We also recommend that a
|
||||||
|
@ -186,7 +187,7 @@
|
||||||
same "printed page" as the copyright notice for easier
|
same "printed page" as the copyright notice for easier
|
||||||
identification within third-party archives.
|
identification within third-party archives.
|
||||||
|
|
||||||
Copyright 2017 Sourced Technologies, S.L.
|
Copyright [yyyy] [name of copyright owner]
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
|
@ -198,4 +199,4 @@
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
30
vendor/github.com/src-d/enry/v2/Makefile → vendor/github.com/go-enry/go-enry/v2/Makefile
generated
vendored
30
vendor/github.com/src-d/enry/v2/Makefile → vendor/github.com/go-enry/go-enry/v2/Makefile
generated
vendored
|
@ -1,26 +1,3 @@
|
||||||
# Package configuration
|
|
||||||
PROJECT = enry
|
|
||||||
COMMANDS = cmd/enry
|
|
||||||
|
|
||||||
# Including ci Makefile
|
|
||||||
CI_REPOSITORY ?= https://github.com/src-d/ci.git
|
|
||||||
CI_BRANCH ?= v1
|
|
||||||
CI_PATH ?= .ci
|
|
||||||
MAKEFILE := $(CI_PATH)/Makefile.main
|
|
||||||
$(MAKEFILE):
|
|
||||||
git clone --quiet --depth 1 -b $(CI_BRANCH) $(CI_REPOSITORY) $(CI_PATH);
|
|
||||||
-include $(MAKEFILE)
|
|
||||||
|
|
||||||
# Docsrv: configure the languages whose api-doc can be auto generated
|
|
||||||
LANGUAGES = go
|
|
||||||
# Docs: do not edit this
|
|
||||||
DOCS_REPOSITORY := https://github.com/src-d/docs
|
|
||||||
SHARED_PATH ?= $(shell pwd)/.docsrv-resources
|
|
||||||
DOCS_PATH ?= $(SHARED_PATH)/.docs
|
|
||||||
$(DOCS_PATH)/Makefile.inc:
|
|
||||||
git clone --quiet --depth 1 $(DOCS_REPOSITORY) $(DOCS_PATH);
|
|
||||||
-include $(DOCS_PATH)/Makefile.inc
|
|
||||||
|
|
||||||
LINGUIST_PATH = .linguist
|
LINGUIST_PATH = .linguist
|
||||||
|
|
||||||
# shared objects
|
# shared objects
|
||||||
|
@ -29,6 +6,7 @@ LINUX_DIR=$(RESOURCES_DIR)/linux-x86-64
|
||||||
LINUX_SHARED_LIB=$(LINUX_DIR)/libenry.so
|
LINUX_SHARED_LIB=$(LINUX_DIR)/libenry.so
|
||||||
DARWIN_DIR=$(RESOURCES_DIR)/darwin
|
DARWIN_DIR=$(RESOURCES_DIR)/darwin
|
||||||
DARWIN_SHARED_LIB=$(DARWIN_DIR)/libenry.dylib
|
DARWIN_SHARED_LIB=$(DARWIN_DIR)/libenry.dylib
|
||||||
|
STATIC_LIB=$(RESOURCES_DIR)/libenry.a
|
||||||
HEADER_FILE=libenry.h
|
HEADER_FILE=libenry.h
|
||||||
NATIVE_LIB=./shared/enry.go
|
NATIVE_LIB=./shared/enry.go
|
||||||
|
|
||||||
|
@ -79,4 +57,10 @@ $(LINUX_SHARED_LIB):
|
||||||
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -buildmode=c-shared -o $(LINUX_SHARED_LIB) $(NATIVE_LIB) && \
|
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -buildmode=c-shared -o $(LINUX_SHARED_LIB) $(NATIVE_LIB) && \
|
||||||
mv $(LINUX_DIR)/$(HEADER_FILE) $(RESOURCES_DIR)/$(HEADER_FILE)
|
mv $(LINUX_DIR)/$(HEADER_FILE) $(RESOURCES_DIR)/$(HEADER_FILE)
|
||||||
|
|
||||||
|
|
||||||
|
static: $(STATIC_LIB)
|
||||||
|
|
||||||
|
$(STATIC_LIB):
|
||||||
|
CGO_ENABLED=1 go build -buildmode=c-archive -o $(STATIC_LIB) $(NATIVE_LIB)
|
||||||
|
|
||||||
.PHONY: benchmarks benchmarks-samples benchmarks-slow
|
.PHONY: benchmarks benchmarks-samples benchmarks-slow
|
303
vendor/github.com/go-enry/go-enry/v2/README.md
generated
vendored
Normal file
303
vendor/github.com/go-enry/go-enry/v2/README.md
generated
vendored
Normal file
|
@ -0,0 +1,303 @@
|
||||||
|
# go-enry [![GoDoc](https://godoc.org/github.com/go-enry/go-enry?status.svg)](https://pkg.go.dev/github.com/go-enry/go-enry/v2) [![Test](https://github.com/go-enry/go-enry/workflows/Test/badge.svg)](https://github.com/go-enry/go-enry/actions?query=workflow%3ATest+branch%3Amaster) [![codecov](https://codecov.io/gh/go-enry/go-enry/branch/master/graph/badge.svg)](https://codecov.io/gh/go-enry/go-enry)
|
||||||
|
|
||||||
|
Programming language detector and toolbox to ignore binary or vendored files. *enry*, started as a port to _Go_ of the original [Linguist](https://github.com/github/linguist) _Ruby_ library, that has an improved *2x performance*.
|
||||||
|
|
||||||
|
* [CLI](#cli)
|
||||||
|
* [Library](#library)
|
||||||
|
* [Use cases](#use-cases)
|
||||||
|
* [By filename](#by-filename)
|
||||||
|
* [By text](#by-text)
|
||||||
|
* [By file](#by-file)
|
||||||
|
* [Filtering](#filtering-vendoring-binaries-etc)
|
||||||
|
* [Coloring](#language-colors-and-groups)
|
||||||
|
* [Languages](#languages)
|
||||||
|
* [Go](#go)
|
||||||
|
* [Java bindings](#java-bindings)
|
||||||
|
* [Python bindings](#python-bindings)
|
||||||
|
* [Divergences from linguist](#divergences-from-linguist)
|
||||||
|
* [Benchmarks](#benchmarks)
|
||||||
|
* [Why Enry?](#why-enry)
|
||||||
|
* [Development](#development)
|
||||||
|
* [Sync with github/linguist upstream](#sync-with-githublinguist-upstream)
|
||||||
|
* [Misc](#misc)
|
||||||
|
* [License](#license)
|
||||||
|
|
||||||
|
# CLI
|
||||||
|
|
||||||
|
The CLI binary is hosted in a separate repository [go-enry/enry](https://github.com/go-enry/enry).
|
||||||
|
|
||||||
|
# Library
|
||||||
|
|
||||||
|
*enry* is also a Go library for guessing a programming language that exposes API through FFI to multiple programming environments.
|
||||||
|
|
||||||
|
## Use cases
|
||||||
|
|
||||||
|
*enry* guesses a programming language using a sequence of matching *strategies* that are
|
||||||
|
applied progressively to narrow down the possible options. Each *strategy* varies on the type
|
||||||
|
of input data that it needs to make a decision: file name, extension, the first line of the file, the full content of the file, etc.
|
||||||
|
|
||||||
|
Depending on available input data, enry API can be roughly divided into the next categories or use cases.
|
||||||
|
|
||||||
|
### By filename
|
||||||
|
Next functions require only a name of the file to make a guess:
|
||||||
|
- `GetLanguageByExtension` uses only file extension (wich may be ambiguous)
|
||||||
|
- `GetLanguageByFilename` useful for cases like `.gitignore`, `.bashrc`, etc
|
||||||
|
- all [filtering helpers](#filtering)
|
||||||
|
|
||||||
|
Please note that such guesses are expected not to be very accurate.
|
||||||
|
|
||||||
|
### By text
|
||||||
|
To make a guess only based on the content of the file or a text snippet, use
|
||||||
|
- `GetLanguageByShebang` reads only the first line of text to identify the [shebang](https://en.wikipedia.org/wiki/Shebang_(Unix)).
|
||||||
|
- `GetLanguageByModeline` for cases when Vim/Emacs modeline e.g. `/* vim: set ft=cpp: */` may be present at a head or a tail of the text.
|
||||||
|
- `GetLanguageByClassifier` uses a Bayesian classifier trained on all the `./samples/` from Linguist.
|
||||||
|
|
||||||
|
It usually is a last-resort strategy that is used to disambiguate the guess of the previous strategies, and thus it requires a list of "candidate" guesses. One can provide a list of all known languages - keys from the `data.LanguagesLogProbabilities` as possible candidates if more intelligent hypotheses are not available, at the price of possibly suboptimal accuracy.
|
||||||
|
|
||||||
|
### By file
|
||||||
|
The most accurate guess would be one when both, the file name and the content are available:
|
||||||
|
- `GetLanguagesByContent` only uses file extension and a set of regexp-based content heuristics.
|
||||||
|
- `GetLanguages` uses the full set of matching strategies and is expected to be most accurate.
|
||||||
|
|
||||||
|
### Filtering: vendoring, binaries, etc
|
||||||
|
*enry* expose a set of file-level helpers `Is*` to simplify filtering out the files that are less interesting for the purpose of source code analysis:
|
||||||
|
- `IsBinary`
|
||||||
|
- `IsVendor`
|
||||||
|
- `IsConfiguration`
|
||||||
|
- `IsDocumentation`
|
||||||
|
- `IsDotFile`
|
||||||
|
- `IsImage`
|
||||||
|
|
||||||
|
### Language colors and groups
|
||||||
|
*enry* exposes function to get language color to use for example in presenting statistics in graphs:
|
||||||
|
- `GetColor`
|
||||||
|
- `GetLanguageGroup` can be used to group similar languages together e.g. for `Less` this function will return `CSS`
|
||||||
|
|
||||||
|
## Languages
|
||||||
|
|
||||||
|
### Go
|
||||||
|
|
||||||
|
In a [Go module](https://github.com/golang/go/wiki/Modules),
|
||||||
|
import `enry` to the module by running:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
go get github.com/go-enry/go-enry/v2
|
||||||
|
```
|
||||||
|
|
||||||
|
The rest of the examples will assume you have either done this or fetched the
|
||||||
|
library into your `GOPATH`.
|
||||||
|
|
||||||
|
```go
|
||||||
|
// The examples here and below assume you have imported the library.
|
||||||
|
import "github.com/go-enry/go-enry/v2"
|
||||||
|
|
||||||
|
lang, safe := enry.GetLanguageByExtension("foo.go")
|
||||||
|
fmt.Println(lang, safe)
|
||||||
|
// result: Go true
|
||||||
|
|
||||||
|
lang, safe := enry.GetLanguageByContent("foo.m", []byte("<matlab-code>"))
|
||||||
|
fmt.Println(lang, safe)
|
||||||
|
// result: Matlab true
|
||||||
|
|
||||||
|
lang, safe := enry.GetLanguageByContent("bar.m", []byte("<objective-c-code>"))
|
||||||
|
fmt.Println(lang, safe)
|
||||||
|
// result: Objective-C true
|
||||||
|
|
||||||
|
// all strategies together
|
||||||
|
lang := enry.GetLanguage("foo.cpp", []byte("<cpp-code>"))
|
||||||
|
// result: C++ true
|
||||||
|
```
|
||||||
|
|
||||||
|
Note that the returned boolean value `safe` is `true` if there is only one possible language detected.
|
||||||
|
|
||||||
|
A plural version of the same API allows getting a list of all possible languages for a given file.
|
||||||
|
|
||||||
|
```go
|
||||||
|
langs := enry.GetLanguages("foo.h", []byte("<cpp-code>"))
|
||||||
|
// result: []string{"C", "C++", "Objective-C}
|
||||||
|
|
||||||
|
langs := enry.GetLanguagesByExtension("foo.asc", []byte("<content>"), nil)
|
||||||
|
// result: []string{"AGS Script", "AsciiDoc", "Public Key"}
|
||||||
|
|
||||||
|
langs := enry.GetLanguagesByFilename("Gemfile", []byte("<content>"), []string{})
|
||||||
|
// result: []string{"Ruby"}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Java bindings
|
||||||
|
|
||||||
|
Generated Java bindings using a C shared library and JNI are available under [`java`](https://github.com/go-enry/go-enry/blob/master/java).
|
||||||
|
|
||||||
|
A library is published on Maven as [tech.sourced:enry-java](https://mvnrepository.com/artifact/tech.sourced/enry-java) for macOS and linux platforms. Windows support is planned under [src-d/enry#150](https://github.com/src-d/enry/issues/150).
|
||||||
|
|
||||||
|
### Python bindings
|
||||||
|
|
||||||
|
Generated Python bindings using a C shared library and cffi are WIP under [src-d/enry#154](https://github.com/src-d/enry/issues/154).
|
||||||
|
|
||||||
|
A library is going to be published on pypi as [enry](https://pypi.org/project/enry/) for
|
||||||
|
macOS and linux platforms. Windows support is planned under [src-d/enry#150](https://github.com/src-d/enry/issues/150).
|
||||||
|
|
||||||
|
Divergences from Linguist
|
||||||
|
------------
|
||||||
|
|
||||||
|
The `enry` library is based on the data from `github/linguist` version **v7.9.0**.
|
||||||
|
|
||||||
|
Parsing [linguist/samples](https://github.com/github/linguist/tree/master/samples) the following `enry` results are different from the Linguist:
|
||||||
|
|
||||||
|
* [Heuristics for ".es" extension](https://github.com/github/linguist/blob/e761f9b013e5b61161481fcb898b59721ee40e3d/lib/linguist/heuristics.yml#L103) in JavaScript could not be parsed, due to unsupported backreference in RE2 regexp engine.
|
||||||
|
|
||||||
|
* [Heuristics for ".rno" extension](https://github.com/github/linguist/blob/3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d/lib/linguist/heuristics.yml#L365) in RUNOFF could not be parsed, due to unsupported lookahead in RE2 regexp engine.
|
||||||
|
|
||||||
|
* [Heuristics for ".inc" extension](https://github.com/github/linguist/blob/f0e2d0d7f1ce600b2a5acccaef6b149c87d8b99c/lib/linguist/heuristics.yml#L222) in NASL could not be parsed, due to unsupported possessive quantifier in RE2 regexp engine.
|
||||||
|
|
||||||
|
* As of [Linguist v5.3.2](https://github.com/github/linguist/releases/tag/v5.3.2) it is using [flex-based scanner in C for tokenization](https://github.com/github/linguist/pull/3846). Enry still uses [extract_token](https://github.com/github/linguist/pull/3846/files#diff-d5179df0b71620e3fac4535cd1368d15L60) regex-based algorithm. See [#193](https://github.com/src-d/enry/issues/193).
|
||||||
|
|
||||||
|
* Bayesian classifier can't distinguish "SQL" from "PLpgSQL. See [#194](https://github.com/src-d/enry/issues/194).
|
||||||
|
|
||||||
|
* Detection of [generated files](https://github.com/github/linguist/blob/bf95666fc15e49d556f2def4d0a85338423c25f3/lib/linguist/generated.rb#L53) is not supported yet.
|
||||||
|
(Thus they are not excluded from CLI output). See [#213](https://github.com/src-d/enry/issues/213).
|
||||||
|
|
||||||
|
* XML detection strategy is not implemented. See [#192](https://github.com/src-d/enry/issues/192).
|
||||||
|
|
||||||
|
* Overriding languages and types though `.gitattributes` is not yet supported. See [#18](https://github.com/src-d/enry/issues/18).
|
||||||
|
|
||||||
|
* `enry` CLI output does NOT exclude `.gitignore`ed files and git submodules, as Linguist does
|
||||||
|
|
||||||
|
In all the cases above that have an issue number - we plan to update enry to match Linguist behavior.
|
||||||
|
|
||||||
|
|
||||||
|
Benchmarks
|
||||||
|
------------
|
||||||
|
|
||||||
|
Enry's language detection has been compared with Linguist's on [*linguist/samples*](https://github.com/github/linguist/tree/master/samples).
|
||||||
|
|
||||||
|
We got these results:
|
||||||
|
|
||||||
|
![histogram](benchmarks/histogram/distribution.png)
|
||||||
|
|
||||||
|
The histogram shows the _number of files_ (y-axis) per _time interval bucket_ (x-axis).
|
||||||
|
Most of the files were detected faster by enry.
|
||||||
|
|
||||||
|
There are several cases where enry is slower than Linguist due to
|
||||||
|
Go regexp engine being slower than Ruby's on, wich is based on [oniguruma](https://github.com/kkos/oniguruma) library, written in C.
|
||||||
|
|
||||||
|
See [instructions](#misc) for running enry with oniguruma.
|
||||||
|
|
||||||
|
|
||||||
|
Why Enry?
|
||||||
|
------------
|
||||||
|
|
||||||
|
In the movie [My Fair Lady](https://en.wikipedia.org/wiki/My_Fair_Lady), [Professor Henry Higgins](http://www.imdb.com/character/ch0011719/) is a linguist who at the very beginning of the movie enjoys guessing the origin of people based on their accent.
|
||||||
|
|
||||||
|
"Enry Iggins" is how [Eliza Doolittle](http://www.imdb.com/character/ch0011720/), [pronounces](https://www.youtube.com/watch?v=pwNKyTktDIE) the name of the Professor.
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
To run the tests use:
|
||||||
|
|
||||||
|
go test ./...
|
||||||
|
|
||||||
|
Setting `ENRY_TEST_REPO` to the path to existing checkout of Linguist will avoid cloning it and sepeed tests up.
|
||||||
|
Setting `ENRY_DEBUG=1` will provide insight in the Bayesian classifier building done by `make code-generate`.
|
||||||
|
|
||||||
|
|
||||||
|
### Sync with github/linguist upstream
|
||||||
|
|
||||||
|
*enry* re-uses parts of the original [github/linguist](https://github.com/github/linguist) to generate internal data structures.
|
||||||
|
In order to update to the latest release of linguist do:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ git clone https://github.com/github/linguist.git .linguist
|
||||||
|
$ cd .linguist; git checkout <release-tag>; cd ..
|
||||||
|
|
||||||
|
# put the new release's commit sha in the generator_test.go (to re-generate .gold test fixtures)
|
||||||
|
# https://github.com/go-enry/go-enry/blob/13d3d66d37a87f23a013246a1b0678c9ee3d524b/internal/code-generator/generator/generator_test.go#L18
|
||||||
|
|
||||||
|
$ make code-generate
|
||||||
|
```
|
||||||
|
|
||||||
|
To stay in sync, enry needs to be updated when a new release of the linguist includes changes to any of the following files:
|
||||||
|
|
||||||
|
* [languages.yml](https://github.com/github/linguist/blob/master/lib/linguist/languages.yml)
|
||||||
|
* [heuristics.yml](https://github.com/github/linguist/blob/master/lib/linguist/heuristics.yml)
|
||||||
|
* [vendor.yml](https://github.com/github/linguist/blob/master/lib/linguist/vendor.yml)
|
||||||
|
* [documentation.yml](https://github.com/github/linguist/blob/master/lib/linguist/documentation.yml)
|
||||||
|
|
||||||
|
There is no automation for detecting the changes in the linguist project, so this process above has to be done manually from time to time.
|
||||||
|
|
||||||
|
When submitting a pull request syncing up to a new release, please make sure it only contains the changes in
|
||||||
|
the generated files (in [data](https://github.com/go-enry/go-enry/blob/master/data) subdirectory).
|
||||||
|
|
||||||
|
Separating all the necessary "manual" code changes to a different PR that includes some background description and an update to the documentation on ["divergences from linguist"](#divergences-from-linguist) is very much appreciated as it simplifies the maintenance (review/release notes/etc).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Misc
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Running a benchmark & faster regexp engine</summary>
|
||||||
|
|
||||||
|
### Benchmark
|
||||||
|
|
||||||
|
All benchmark scripts are in [*benchmarks*](https://github.com/go-enry/go-enry/blob/master/benchmarks) directory.
|
||||||
|
|
||||||
|
|
||||||
|
#### Dependencies
|
||||||
|
As benchmarks depend on Ruby and Github-Linguist gem make sure you have:
|
||||||
|
- Ruby (e.g using [`rbenv`](https://github.com/rbenv/rbenv)), [`bundler`](https://bundler.io/) installed
|
||||||
|
- Docker
|
||||||
|
- [native dependencies](https://github.com/github/linguist/#dependencies) installed
|
||||||
|
- Build the gem `cd .linguist && bundle install && rake build_gem && cd -`
|
||||||
|
- Install it `gem install --no-rdoc --no-ri --local .linguist/github-linguist-*.gem`
|
||||||
|
|
||||||
|
|
||||||
|
#### Quick benchmark
|
||||||
|
To run quicker benchmarks
|
||||||
|
|
||||||
|
make benchmarks
|
||||||
|
|
||||||
|
to get average times for the primary detection function and strategies for the whole samples set. If you want to see measures per sample file use:
|
||||||
|
|
||||||
|
make benchmarks-samples
|
||||||
|
|
||||||
|
|
||||||
|
#### Full benchmark
|
||||||
|
If you want to reproduce the same benchmarks as reported above:
|
||||||
|
- Make sure all [dependencies](#benchmark-dependencies) are installed
|
||||||
|
- Install [gnuplot](http://gnuplot.info) (in order to plot the histogram)
|
||||||
|
- Run `ENRY_TEST_REPO="$PWD/.linguist" benchmarks/run.sh` (takes ~15h)
|
||||||
|
|
||||||
|
It will run the benchmarks for enry and Linguist, parse the output, create csv files and plot the histogram.
|
||||||
|
|
||||||
|
### Faster regexp engine (optional)
|
||||||
|
|
||||||
|
[Oniguruma](https://github.com/kkos/oniguruma) is CRuby's regular expression engine.
|
||||||
|
It is very fast and performs better than the one built into Go runtime. *enry* supports swapping
|
||||||
|
between those two engines thanks to [rubex](https://github.com/moovweb/rubex) project.
|
||||||
|
The typical overall speedup from using Oniguruma is 1.5-2x. However, it requires CGo and the external shared library.
|
||||||
|
On macOS with [Homebrew](https://brew.sh/), it is:
|
||||||
|
|
||||||
|
```
|
||||||
|
brew install oniguruma
|
||||||
|
```
|
||||||
|
|
||||||
|
On Ubuntu, it is
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo apt install libonig-dev
|
||||||
|
```
|
||||||
|
|
||||||
|
To build enry with Oniguruma regexps use the `oniguruma` build tag
|
||||||
|
|
||||||
|
```
|
||||||
|
go get -v -t --tags oniguruma ./...
|
||||||
|
```
|
||||||
|
|
||||||
|
and then rebuild the project.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
|
||||||
|
License
|
||||||
|
------------
|
||||||
|
|
||||||
|
Apache License, Version 2.0. See [LICENSE](LICENSE)
|
|
@ -4,16 +4,16 @@ import (
|
||||||
"math"
|
"math"
|
||||||
"sort"
|
"sort"
|
||||||
|
|
||||||
"github.com/src-d/enry/v2/internal/tokenizer"
|
"github.com/go-enry/go-enry/v2/internal/tokenizer"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Classifier is the interface in charge to detect the possible languages of the given content based on a set of
|
// classifier is the interface in charge to detect the possible languages of the given content based on a set of
|
||||||
// candidates. Candidates is a map which can be used to assign weights to languages dynamically.
|
// candidates. Candidates is a map which can be used to assign weights to languages dynamically.
|
||||||
type Classifier interface {
|
type classifier interface {
|
||||||
Classify(content []byte, candidates map[string]float64) (languages []string)
|
classify(content []byte, candidates map[string]float64) (languages []string)
|
||||||
}
|
}
|
||||||
|
|
||||||
type classifier struct {
|
type naiveBayes struct {
|
||||||
languagesLogProbabilities map[string]float64
|
languagesLogProbabilities map[string]float64
|
||||||
tokensLogProbabilities map[string]map[string]float64
|
tokensLogProbabilities map[string]map[string]float64
|
||||||
tokensTotal float64
|
tokensTotal float64
|
||||||
|
@ -24,8 +24,8 @@ type scoredLanguage struct {
|
||||||
score float64
|
score float64
|
||||||
}
|
}
|
||||||
|
|
||||||
// Classify returns a sorted slice of possible languages sorted by decreasing language's probability
|
// classify returns a sorted slice of possible languages sorted by decreasing language's probability
|
||||||
func (c *classifier) Classify(content []byte, candidates map[string]float64) []string {
|
func (c *naiveBayes) classify(content []byte, candidates map[string]float64) []string {
|
||||||
|
|
||||||
var languages map[string]float64
|
var languages map[string]float64
|
||||||
if len(candidates) == 0 {
|
if len(candidates) == 0 {
|
||||||
|
@ -73,7 +73,7 @@ func sortLanguagesByScore(scoredLangs []*scoredLanguage) []string {
|
||||||
return sortedLanguages
|
return sortedLanguages
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *classifier) knownLangs() map[string]float64 {
|
func (c *naiveBayes) knownLangs() map[string]float64 {
|
||||||
langs := make(map[string]float64, len(c.languagesLogProbabilities))
|
langs := make(map[string]float64, len(c.languagesLogProbabilities))
|
||||||
for lang := range c.languagesLogProbabilities {
|
for lang := range c.languagesLogProbabilities {
|
||||||
langs[lang]++
|
langs[lang]++
|
||||||
|
@ -82,7 +82,7 @@ func (c *classifier) knownLangs() map[string]float64 {
|
||||||
return langs
|
return langs
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *classifier) tokensLogProbability(tokens []string, language string) float64 {
|
func (c *naiveBayes) tokensLogProbability(tokens []string, language string) float64 {
|
||||||
var sum float64
|
var sum float64
|
||||||
for _, token := range tokens {
|
for _, token := range tokens {
|
||||||
sum += c.tokenProbability(token, language)
|
sum += c.tokenProbability(token, language)
|
||||||
|
@ -91,7 +91,7 @@ func (c *classifier) tokensLogProbability(tokens []string, language string) floa
|
||||||
return sum
|
return sum
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *classifier) tokenProbability(token, language string) float64 {
|
func (c *naiveBayes) tokenProbability(token, language string) float64 {
|
||||||
tokenProb, ok := c.tokensLogProbabilities[language][token]
|
tokenProb, ok := c.tokensLogProbabilities[language][token]
|
||||||
if !ok {
|
if !ok {
|
||||||
tokenProb = math.Log(1.000000 / c.tokensTotal)
|
tokenProb = math.Log(1.000000 / c.tokensTotal)
|
|
@ -6,8 +6,8 @@ import (
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/src-d/enry/v2/data"
|
"github.com/go-enry/go-enry/v2/data"
|
||||||
"github.com/src-d/enry/v2/regex"
|
"github.com/go-enry/go-enry/v2/regex"
|
||||||
)
|
)
|
||||||
|
|
||||||
// OtherLanguage is used as a zero value when a function can not return a specific language.
|
// OtherLanguage is used as a zero value when a function can not return a specific language.
|
||||||
|
@ -26,8 +26,8 @@ var DefaultStrategies = []Strategy{
|
||||||
GetLanguagesByClassifier,
|
GetLanguagesByClassifier,
|
||||||
}
|
}
|
||||||
|
|
||||||
// DefaultClassifier is a Naive Bayes classifier trained on Linguist samples.
|
// defaultClassifier is a Naive Bayes classifier trained on Linguist samples.
|
||||||
var DefaultClassifier Classifier = &classifier{
|
var defaultClassifier classifier = &naiveBayes{
|
||||||
languagesLogProbabilities: data.LanguagesLogProbabilities,
|
languagesLogProbabilities: data.LanguagesLogProbabilities,
|
||||||
tokensLogProbabilities: data.TokensLogProbabilities,
|
tokensLogProbabilities: data.TokensLogProbabilities,
|
||||||
tokensTotal: data.TokensTotal,
|
tokensTotal: data.TokensTotal,
|
||||||
|
@ -92,7 +92,7 @@ func GetLanguageByContent(filename string, content []byte) (language string, saf
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetLanguageByClassifier returns the most probably language detected for the given content. It uses
|
// GetLanguageByClassifier returns the most probably language detected for the given content. It uses
|
||||||
// DefaultClassifier, if no candidates are provided it returns OtherLanguage.
|
// defaultClassifier, if no candidates are provided it returns OtherLanguage.
|
||||||
func GetLanguageByClassifier(content []byte, candidates []string) (language string, safe bool) {
|
func GetLanguageByClassifier(content []byte, candidates []string) (language string, safe bool) {
|
||||||
return getLanguageByStrategy(GetLanguagesByClassifier, "", content, candidates)
|
return getLanguageByStrategy(GetLanguagesByClassifier, "", content, candidates)
|
||||||
}
|
}
|
||||||
|
@ -108,10 +108,10 @@ func getFirstLanguageAndSafe(languages []string) (language string, safe bool) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetLanguageBySpecificClassifier returns the most probably language for the given content using
|
// getLanguageBySpecificClassifier returns the most probably language for the given content using
|
||||||
// classifier to detect language.
|
// classifier to detect language.
|
||||||
func GetLanguageBySpecificClassifier(content []byte, candidates []string, classifier Classifier) (language string, safe bool) {
|
func getLanguageBySpecificClassifier(content []byte, candidates []string, classifier classifier) (language string, safe bool) {
|
||||||
languages := GetLanguagesBySpecificClassifier(content, candidates, classifier)
|
languages := getLanguagesBySpecificClassifier(content, candidates, classifier)
|
||||||
return getFirstLanguageAndSafe(languages)
|
return getFirstLanguageAndSafe(languages)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -413,27 +413,28 @@ func GetLanguagesByContent(filename string, content []byte, _ []string) []string
|
||||||
return heuristic.Match(content)
|
return heuristic.Match(content)
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetLanguagesByClassifier uses DefaultClassifier as a Classifier and returns a sorted slice of possible languages ordered by
|
// GetLanguagesByClassifier returns a sorted slice of possible languages ordered by
|
||||||
// decreasing language's probability. If there are not candidates it returns nil. It complies with the signature to be a Strategy type.
|
// decreasing language's probability. If there are not candidates it returns nil.
|
||||||
|
// It is a Strategy that uses a pre-trained defaultClassifier.
|
||||||
func GetLanguagesByClassifier(filename string, content []byte, candidates []string) (languages []string) {
|
func GetLanguagesByClassifier(filename string, content []byte, candidates []string) (languages []string) {
|
||||||
if len(candidates) == 0 {
|
if len(candidates) == 0 {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return GetLanguagesBySpecificClassifier(content, candidates, DefaultClassifier)
|
return getLanguagesBySpecificClassifier(content, candidates, defaultClassifier)
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetLanguagesBySpecificClassifier returns a slice of possible languages. It takes in a Classifier to be used.
|
// getLanguagesBySpecificClassifier returns a slice of possible languages. It takes in a Classifier to be used.
|
||||||
func GetLanguagesBySpecificClassifier(content []byte, candidates []string, classifier Classifier) (languages []string) {
|
func getLanguagesBySpecificClassifier(content []byte, candidates []string, classifier classifier) (languages []string) {
|
||||||
mapCandidates := make(map[string]float64)
|
mapCandidates := make(map[string]float64)
|
||||||
for _, candidate := range candidates {
|
for _, candidate := range candidates {
|
||||||
mapCandidates[candidate]++
|
mapCandidates[candidate]++
|
||||||
}
|
}
|
||||||
|
|
||||||
return classifier.Classify(content, mapCandidates)
|
return classifier.classify(content, mapCandidates)
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetLanguageExtensions returns the different extensions being used by the language.
|
// GetLanguageExtensions returns all extensions associated with the given language.
|
||||||
func GetLanguageExtensions(language string) []string {
|
func GetLanguageExtensions(language string) []string {
|
||||||
return data.ExtensionsByLanguage[language]
|
return data.ExtensionsByLanguage[language]
|
||||||
}
|
}
|
||||||
|
@ -470,3 +471,12 @@ func GetLanguageByAlias(alias string) (lang string, ok bool) {
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetLanguageGroup returns language group or empty string if language does not have group.
|
||||||
|
func GetLanguageGroup(language string) string {
|
||||||
|
if group, ok := data.LanguagesGroup[language]; ok {
|
||||||
|
return group
|
||||||
|
}
|
||||||
|
|
||||||
|
return ""
|
||||||
|
}
|
842
vendor/github.com/go-enry/go-enry/v2/data/alias.go
generated
vendored
Normal file
842
vendor/github.com/go-enry/go-enry/v2/data/alias.go
generated
vendored
Normal file
|
@ -0,0 +1,842 @@
|
||||||
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
|
package data
|
||||||
|
|
||||||
|
import "strings"
|
||||||
|
|
||||||
|
// LanguageByAliasMap keeps alias for different languages and use the name of the languages as an alias too.
|
||||||
|
// All the keys (alias or not) are written in lower case and the whitespaces has been replaced by underscores.
|
||||||
|
var LanguageByAliasMap = map[string]string{
|
||||||
|
"1c_enterprise": "1C Enterprise",
|
||||||
|
"4d": "4D",
|
||||||
|
"abap": "ABAP",
|
||||||
|
"abl": "OpenEdge ABL",
|
||||||
|
"abnf": "ABNF",
|
||||||
|
"abuild": "Alpine Abuild",
|
||||||
|
"acfm": "Adobe Font Metrics",
|
||||||
|
"aconf": "ApacheConf",
|
||||||
|
"actionscript": "ActionScript",
|
||||||
|
"actionscript3": "ActionScript",
|
||||||
|
"actionscript_3": "ActionScript",
|
||||||
|
"ada": "Ada",
|
||||||
|
"ada2005": "Ada",
|
||||||
|
"ada95": "Ada",
|
||||||
|
"adobe_composite_font_metrics": "Adobe Font Metrics",
|
||||||
|
"adobe_font_metrics": "Adobe Font Metrics",
|
||||||
|
"adobe_multiple_font_metrics": "Adobe Font Metrics",
|
||||||
|
"advpl": "xBase",
|
||||||
|
"afdko": "OpenType Feature File",
|
||||||
|
"agda": "Agda",
|
||||||
|
"ags": "AGS Script",
|
||||||
|
"ags_script": "AGS Script",
|
||||||
|
"ahk": "AutoHotkey",
|
||||||
|
"alloy": "Alloy",
|
||||||
|
"alpine_abuild": "Alpine Abuild",
|
||||||
|
"altium": "Altium Designer",
|
||||||
|
"altium_designer": "Altium Designer",
|
||||||
|
"amfm": "Adobe Font Metrics",
|
||||||
|
"ampl": "AMPL",
|
||||||
|
"amusewiki": "Muse",
|
||||||
|
"angelscript": "AngelScript",
|
||||||
|
"ant_build_system": "Ant Build System",
|
||||||
|
"antlr": "ANTLR",
|
||||||
|
"apache": "ApacheConf",
|
||||||
|
"apacheconf": "ApacheConf",
|
||||||
|
"apex": "Apex",
|
||||||
|
"api_blueprint": "API Blueprint",
|
||||||
|
"apkbuild": "Alpine Abuild",
|
||||||
|
"apl": "APL",
|
||||||
|
"apollo_guidance_computer": "Apollo Guidance Computer",
|
||||||
|
"applescript": "AppleScript",
|
||||||
|
"arc": "Arc",
|
||||||
|
"arexx": "REXX",
|
||||||
|
"as3": "ActionScript",
|
||||||
|
"asciidoc": "AsciiDoc",
|
||||||
|
"asm": "Assembly",
|
||||||
|
"asn.1": "ASN.1",
|
||||||
|
"asp": "ASP",
|
||||||
|
"aspectj": "AspectJ",
|
||||||
|
"aspx": "ASP",
|
||||||
|
"aspx-vb": "ASP",
|
||||||
|
"assembly": "Assembly",
|
||||||
|
"asymptote": "Asymptote",
|
||||||
|
"ats": "ATS",
|
||||||
|
"ats2": "ATS",
|
||||||
|
"au3": "AutoIt",
|
||||||
|
"augeas": "Augeas",
|
||||||
|
"autoconf": "M4Sugar",
|
||||||
|
"autohotkey": "AutoHotkey",
|
||||||
|
"autoit": "AutoIt",
|
||||||
|
"autoit3": "AutoIt",
|
||||||
|
"autoitscript": "AutoIt",
|
||||||
|
"awk": "Awk",
|
||||||
|
"b3d": "BlitzBasic",
|
||||||
|
"ballerina": "Ballerina",
|
||||||
|
"bash": "Shell",
|
||||||
|
"bash_session": "ShellSession",
|
||||||
|
"bat": "Batchfile",
|
||||||
|
"batch": "Batchfile",
|
||||||
|
"batchfile": "Batchfile",
|
||||||
|
"bazel": "Starlark",
|
||||||
|
"befunge": "Befunge",
|
||||||
|
"bibtex": "BibTeX",
|
||||||
|
"bison": "Bison",
|
||||||
|
"bitbake": "BitBake",
|
||||||
|
"blade": "Blade",
|
||||||
|
"blitz3d": "BlitzBasic",
|
||||||
|
"blitzbasic": "BlitzBasic",
|
||||||
|
"blitzmax": "BlitzMax",
|
||||||
|
"blitzplus": "BlitzBasic",
|
||||||
|
"bluespec": "Bluespec",
|
||||||
|
"bmax": "BlitzMax",
|
||||||
|
"boo": "Boo",
|
||||||
|
"bplus": "BlitzBasic",
|
||||||
|
"brainfuck": "Brainfuck",
|
||||||
|
"brightscript": "Brightscript",
|
||||||
|
"bro": "Zeek",
|
||||||
|
"bsdmake": "Makefile",
|
||||||
|
"byond": "DM",
|
||||||
|
"bzl": "Starlark",
|
||||||
|
"c": "C",
|
||||||
|
"c#": "C#",
|
||||||
|
"c++": "C++",
|
||||||
|
"c++-objdump": "Cpp-ObjDump",
|
||||||
|
"c-objdump": "C-ObjDump",
|
||||||
|
"c2hs": "C2hs Haskell",
|
||||||
|
"c2hs_haskell": "C2hs Haskell",
|
||||||
|
"cabal": "Cabal Config",
|
||||||
|
"cabal_config": "Cabal Config",
|
||||||
|
"cap'n_proto": "Cap'n Proto",
|
||||||
|
"carto": "CartoCSS",
|
||||||
|
"cartocss": "CartoCSS",
|
||||||
|
"ceylon": "Ceylon",
|
||||||
|
"cfc": "ColdFusion CFC",
|
||||||
|
"cfm": "ColdFusion",
|
||||||
|
"cfml": "ColdFusion",
|
||||||
|
"chapel": "Chapel",
|
||||||
|
"charity": "Charity",
|
||||||
|
"chpl": "Chapel",
|
||||||
|
"chuck": "ChucK",
|
||||||
|
"cirru": "Cirru",
|
||||||
|
"clarion": "Clarion",
|
||||||
|
"clean": "Clean",
|
||||||
|
"click": "Click",
|
||||||
|
"clipper": "xBase",
|
||||||
|
"clips": "CLIPS",
|
||||||
|
"clojure": "Clojure",
|
||||||
|
"closure_templates": "Closure Templates",
|
||||||
|
"cloud_firestore_security_rules": "Cloud Firestore Security Rules",
|
||||||
|
"cmake": "CMake",
|
||||||
|
"cobol": "COBOL",
|
||||||
|
"coccinelle": "SmPL",
|
||||||
|
"codeql": "CodeQL",
|
||||||
|
"coffee": "CoffeeScript",
|
||||||
|
"coffee-script": "CoffeeScript",
|
||||||
|
"coffeescript": "CoffeeScript",
|
||||||
|
"coldfusion": "ColdFusion",
|
||||||
|
"coldfusion_cfc": "ColdFusion CFC",
|
||||||
|
"coldfusion_html": "ColdFusion",
|
||||||
|
"collada": "COLLADA",
|
||||||
|
"common_lisp": "Common Lisp",
|
||||||
|
"common_workflow_language": "Common Workflow Language",
|
||||||
|
"component_pascal": "Component Pascal",
|
||||||
|
"conll": "CoNLL-U",
|
||||||
|
"conll-u": "CoNLL-U",
|
||||||
|
"conll-x": "CoNLL-U",
|
||||||
|
"console": "ShellSession",
|
||||||
|
"cool": "Cool",
|
||||||
|
"coq": "Coq",
|
||||||
|
"cperl": "Perl",
|
||||||
|
"cpp": "C++",
|
||||||
|
"cpp-objdump": "Cpp-ObjDump",
|
||||||
|
"creole": "Creole",
|
||||||
|
"crystal": "Crystal",
|
||||||
|
"csharp": "C#",
|
||||||
|
"cson": "CSON",
|
||||||
|
"csound": "Csound",
|
||||||
|
"csound-csd": "Csound Document",
|
||||||
|
"csound-orc": "Csound",
|
||||||
|
"csound-sco": "Csound Score",
|
||||||
|
"csound_document": "Csound Document",
|
||||||
|
"csound_score": "Csound Score",
|
||||||
|
"css": "CSS",
|
||||||
|
"csv": "CSV",
|
||||||
|
"cucumber": "Gherkin",
|
||||||
|
"cuda": "Cuda",
|
||||||
|
"curl_config": "cURL Config",
|
||||||
|
"curlrc": "cURL Config",
|
||||||
|
"cweb": "CWeb",
|
||||||
|
"cwl": "Common Workflow Language",
|
||||||
|
"cycript": "Cycript",
|
||||||
|
"cython": "Cython",
|
||||||
|
"d": "D",
|
||||||
|
"d-objdump": "D-ObjDump",
|
||||||
|
"darcs_patch": "Darcs Patch",
|
||||||
|
"dart": "Dart",
|
||||||
|
"dataweave": "DataWeave",
|
||||||
|
"dcl": "DIGITAL Command Language",
|
||||||
|
"delphi": "Component Pascal",
|
||||||
|
"desktop": "desktop",
|
||||||
|
"dhall": "Dhall",
|
||||||
|
"diff": "Diff",
|
||||||
|
"digital_command_language": "DIGITAL Command Language",
|
||||||
|
"dircolors": "dircolors",
|
||||||
|
"directx_3d_file": "DirectX 3D File",
|
||||||
|
"django": "HTML+Django",
|
||||||
|
"dm": "DM",
|
||||||
|
"dns_zone": "DNS Zone",
|
||||||
|
"dockerfile": "Dockerfile",
|
||||||
|
"dogescript": "Dogescript",
|
||||||
|
"dosbatch": "Batchfile",
|
||||||
|
"dosini": "INI",
|
||||||
|
"dpatch": "Darcs Patch",
|
||||||
|
"dtrace": "DTrace",
|
||||||
|
"dtrace-script": "DTrace",
|
||||||
|
"dylan": "Dylan",
|
||||||
|
"e": "E",
|
||||||
|
"eagle": "Eagle",
|
||||||
|
"easybuild": "Easybuild",
|
||||||
|
"ebnf": "EBNF",
|
||||||
|
"ec": "eC",
|
||||||
|
"ecere_projects": "Ecere Projects",
|
||||||
|
"ecl": "ECL",
|
||||||
|
"eclipse": "ECLiPSe",
|
||||||
|
"ecr": "HTML+ECR",
|
||||||
|
"editor-config": "EditorConfig",
|
||||||
|
"editorconfig": "EditorConfig",
|
||||||
|
"edje_data_collection": "Edje Data Collection",
|
||||||
|
"edn": "edn",
|
||||||
|
"eeschema_schematic": "KiCad Schematic",
|
||||||
|
"eex": "HTML+EEX",
|
||||||
|
"eiffel": "Eiffel",
|
||||||
|
"ejs": "EJS",
|
||||||
|
"elisp": "Emacs Lisp",
|
||||||
|
"elixir": "Elixir",
|
||||||
|
"elm": "Elm",
|
||||||
|
"emacs": "Emacs Lisp",
|
||||||
|
"emacs_lisp": "Emacs Lisp",
|
||||||
|
"emacs_muse": "Muse",
|
||||||
|
"emberscript": "EmberScript",
|
||||||
|
"eml": "EML",
|
||||||
|
"eq": "EQ",
|
||||||
|
"erb": "HTML+ERB",
|
||||||
|
"erlang": "Erlang",
|
||||||
|
"f#": "F#",
|
||||||
|
"f*": "F*",
|
||||||
|
"factor": "Factor",
|
||||||
|
"fancy": "Fancy",
|
||||||
|
"fantom": "Fantom",
|
||||||
|
"faust": "Faust",
|
||||||
|
"figfont": "FIGlet Font",
|
||||||
|
"figlet_font": "FIGlet Font",
|
||||||
|
"filebench_wml": "Filebench WML",
|
||||||
|
"filterscript": "Filterscript",
|
||||||
|
"fish": "fish",
|
||||||
|
"flex": "Lex",
|
||||||
|
"flux": "FLUX",
|
||||||
|
"formatted": "Formatted",
|
||||||
|
"forth": "Forth",
|
||||||
|
"fortran": "Fortran",
|
||||||
|
"foxpro": "xBase",
|
||||||
|
"freemarker": "FreeMarker",
|
||||||
|
"frege": "Frege",
|
||||||
|
"fsharp": "F#",
|
||||||
|
"fstar": "F*",
|
||||||
|
"ftl": "FreeMarker",
|
||||||
|
"fundamental": "Text",
|
||||||
|
"g-code": "G-code",
|
||||||
|
"game_maker_language": "Game Maker Language",
|
||||||
|
"gaml": "GAML",
|
||||||
|
"gams": "GAMS",
|
||||||
|
"gap": "GAP",
|
||||||
|
"gcc_machine_description": "GCC Machine Description",
|
||||||
|
"gdb": "GDB",
|
||||||
|
"gdscript": "GDScript",
|
||||||
|
"genie": "Genie",
|
||||||
|
"genshi": "Genshi",
|
||||||
|
"gentoo_ebuild": "Gentoo Ebuild",
|
||||||
|
"gentoo_eclass": "Gentoo Eclass",
|
||||||
|
"gerber_image": "Gerber Image",
|
||||||
|
"gettext_catalog": "Gettext Catalog",
|
||||||
|
"gf": "Grammatical Framework",
|
||||||
|
"gherkin": "Gherkin",
|
||||||
|
"git-ignore": "Ignore List",
|
||||||
|
"git_attributes": "Git Attributes",
|
||||||
|
"git_config": "Git Config",
|
||||||
|
"gitattributes": "Git Attributes",
|
||||||
|
"gitconfig": "Git Config",
|
||||||
|
"gitignore": "Ignore List",
|
||||||
|
"gitmodules": "Git Config",
|
||||||
|
"glsl": "GLSL",
|
||||||
|
"glyph": "Glyph",
|
||||||
|
"glyph_bitmap_distribution_format": "Glyph Bitmap Distribution Format",
|
||||||
|
"gn": "GN",
|
||||||
|
"gnuplot": "Gnuplot",
|
||||||
|
"go": "Go",
|
||||||
|
"golang": "Go",
|
||||||
|
"golo": "Golo",
|
||||||
|
"gosu": "Gosu",
|
||||||
|
"grace": "Grace",
|
||||||
|
"gradle": "Gradle",
|
||||||
|
"grammatical_framework": "Grammatical Framework",
|
||||||
|
"graph_modeling_language": "Graph Modeling Language",
|
||||||
|
"graphql": "GraphQL",
|
||||||
|
"graphviz_(dot)": "Graphviz (DOT)",
|
||||||
|
"groff": "Roff",
|
||||||
|
"groovy": "Groovy",
|
||||||
|
"groovy_server_pages": "Groovy Server Pages",
|
||||||
|
"gsp": "Groovy Server Pages",
|
||||||
|
"hack": "Hack",
|
||||||
|
"haml": "Haml",
|
||||||
|
"handlebars": "Handlebars",
|
||||||
|
"haproxy": "HAProxy",
|
||||||
|
"harbour": "Harbour",
|
||||||
|
"haskell": "Haskell",
|
||||||
|
"haxe": "Haxe",
|
||||||
|
"hbs": "Handlebars",
|
||||||
|
"hcl": "HCL",
|
||||||
|
"hiveql": "HiveQL",
|
||||||
|
"hlsl": "HLSL",
|
||||||
|
"holyc": "HolyC",
|
||||||
|
"html": "HTML",
|
||||||
|
"html+django": "HTML+Django",
|
||||||
|
"html+django/jinja": "HTML+Django",
|
||||||
|
"html+ecr": "HTML+ECR",
|
||||||
|
"html+eex": "HTML+EEX",
|
||||||
|
"html+erb": "HTML+ERB",
|
||||||
|
"html+jinja": "HTML+Django",
|
||||||
|
"html+php": "HTML+PHP",
|
||||||
|
"html+razor": "HTML+Razor",
|
||||||
|
"html+ruby": "RHTML",
|
||||||
|
"htmlbars": "Handlebars",
|
||||||
|
"htmldjango": "HTML+Django",
|
||||||
|
"http": "HTTP",
|
||||||
|
"hxml": "HXML",
|
||||||
|
"hy": "Hy",
|
||||||
|
"hylang": "Hy",
|
||||||
|
"hyphy": "HyPhy",
|
||||||
|
"i7": "Inform 7",
|
||||||
|
"idl": "IDL",
|
||||||
|
"idris": "Idris",
|
||||||
|
"ignore": "Ignore List",
|
||||||
|
"ignore_list": "Ignore List",
|
||||||
|
"igor": "IGOR Pro",
|
||||||
|
"igor_pro": "IGOR Pro",
|
||||||
|
"igorpro": "IGOR Pro",
|
||||||
|
"inc": "PHP",
|
||||||
|
"inform7": "Inform 7",
|
||||||
|
"inform_7": "Inform 7",
|
||||||
|
"ini": "INI",
|
||||||
|
"inno_setup": "Inno Setup",
|
||||||
|
"inputrc": "Readline Config",
|
||||||
|
"io": "Io",
|
||||||
|
"ioke": "Ioke",
|
||||||
|
"ipython_notebook": "Jupyter Notebook",
|
||||||
|
"irc": "IRC log",
|
||||||
|
"irc_log": "IRC log",
|
||||||
|
"irc_logs": "IRC log",
|
||||||
|
"isabelle": "Isabelle",
|
||||||
|
"isabelle_root": "Isabelle ROOT",
|
||||||
|
"j": "J",
|
||||||
|
"jasmin": "Jasmin",
|
||||||
|
"java": "Java",
|
||||||
|
"java_properties": "Java Properties",
|
||||||
|
"java_server_page": "Groovy Server Pages",
|
||||||
|
"java_server_pages": "Java Server Pages",
|
||||||
|
"javascript": "JavaScript",
|
||||||
|
"javascript+erb": "JavaScript+ERB",
|
||||||
|
"jflex": "JFlex",
|
||||||
|
"jison": "Jison",
|
||||||
|
"jison_lex": "Jison Lex",
|
||||||
|
"jolie": "Jolie",
|
||||||
|
"jruby": "Ruby",
|
||||||
|
"js": "JavaScript",
|
||||||
|
"json": "JSON",
|
||||||
|
"json5": "JSON5",
|
||||||
|
"json_with_comments": "JSON with Comments",
|
||||||
|
"jsonc": "JSON with Comments",
|
||||||
|
"jsoniq": "JSONiq",
|
||||||
|
"jsonld": "JSONLD",
|
||||||
|
"jsonnet": "Jsonnet",
|
||||||
|
"jsp": "Java Server Pages",
|
||||||
|
"jsx": "JSX",
|
||||||
|
"julia": "Julia",
|
||||||
|
"jupyter_notebook": "Jupyter Notebook",
|
||||||
|
"kicad_layout": "KiCad Layout",
|
||||||
|
"kicad_legacy_layout": "KiCad Legacy Layout",
|
||||||
|
"kicad_schematic": "KiCad Schematic",
|
||||||
|
"kit": "Kit",
|
||||||
|
"kotlin": "Kotlin",
|
||||||
|
"krl": "KRL",
|
||||||
|
"labview": "LabVIEW",
|
||||||
|
"lasso": "Lasso",
|
||||||
|
"lassoscript": "Lasso",
|
||||||
|
"latex": "TeX",
|
||||||
|
"latte": "Latte",
|
||||||
|
"lean": "Lean",
|
||||||
|
"less": "Less",
|
||||||
|
"lex": "Lex",
|
||||||
|
"lfe": "LFE",
|
||||||
|
"lhaskell": "Literate Haskell",
|
||||||
|
"lhs": "Literate Haskell",
|
||||||
|
"lilypond": "LilyPond",
|
||||||
|
"limbo": "Limbo",
|
||||||
|
"linker_script": "Linker Script",
|
||||||
|
"linux_kernel_module": "Linux Kernel Module",
|
||||||
|
"liquid": "Liquid",
|
||||||
|
"lisp": "Common Lisp",
|
||||||
|
"litcoffee": "Literate CoffeeScript",
|
||||||
|
"literate_agda": "Literate Agda",
|
||||||
|
"literate_coffeescript": "Literate CoffeeScript",
|
||||||
|
"literate_haskell": "Literate Haskell",
|
||||||
|
"live-script": "LiveScript",
|
||||||
|
"livescript": "LiveScript",
|
||||||
|
"llvm": "LLVM",
|
||||||
|
"logos": "Logos",
|
||||||
|
"logtalk": "Logtalk",
|
||||||
|
"lolcode": "LOLCODE",
|
||||||
|
"lookml": "LookML",
|
||||||
|
"loomscript": "LoomScript",
|
||||||
|
"ls": "LiveScript",
|
||||||
|
"lsl": "LSL",
|
||||||
|
"ltspice_symbol": "LTspice Symbol",
|
||||||
|
"lua": "Lua",
|
||||||
|
"m": "M",
|
||||||
|
"m4": "M4",
|
||||||
|
"m4sugar": "M4Sugar",
|
||||||
|
"m68k": "Motorola 68K Assembly",
|
||||||
|
"macruby": "Ruby",
|
||||||
|
"make": "Makefile",
|
||||||
|
"makefile": "Makefile",
|
||||||
|
"mako": "Mako",
|
||||||
|
"man": "Roff",
|
||||||
|
"man-page": "Roff",
|
||||||
|
"man_page": "Roff",
|
||||||
|
"manpage": "Roff",
|
||||||
|
"markdown": "Markdown",
|
||||||
|
"marko": "Marko",
|
||||||
|
"markojs": "Marko",
|
||||||
|
"mask": "Mask",
|
||||||
|
"mathematica": "Mathematica",
|
||||||
|
"matlab": "MATLAB",
|
||||||
|
"maven_pom": "Maven POM",
|
||||||
|
"max": "Max",
|
||||||
|
"max/msp": "Max",
|
||||||
|
"maxmsp": "Max",
|
||||||
|
"maxscript": "MAXScript",
|
||||||
|
"mcfunction": "mcfunction",
|
||||||
|
"mdoc": "Roff",
|
||||||
|
"mediawiki": "MediaWiki",
|
||||||
|
"mercury": "Mercury",
|
||||||
|
"meson": "Meson",
|
||||||
|
"metal": "Metal",
|
||||||
|
"mf": "Makefile",
|
||||||
|
"microsoft_developer_studio_project": "Microsoft Developer Studio Project",
|
||||||
|
"minid": "MiniD",
|
||||||
|
"mirah": "Mirah",
|
||||||
|
"mirc_script": "mIRC Script",
|
||||||
|
"mlir": "MLIR",
|
||||||
|
"mma": "Mathematica",
|
||||||
|
"modelica": "Modelica",
|
||||||
|
"modula-2": "Modula-2",
|
||||||
|
"modula-3": "Modula-3",
|
||||||
|
"module_management_system": "Module Management System",
|
||||||
|
"monkey": "Monkey",
|
||||||
|
"moocode": "Moocode",
|
||||||
|
"moonscript": "MoonScript",
|
||||||
|
"motorola_68k_assembly": "Motorola 68K Assembly",
|
||||||
|
"mql4": "MQL4",
|
||||||
|
"mql5": "MQL5",
|
||||||
|
"mtml": "MTML",
|
||||||
|
"muf": "MUF",
|
||||||
|
"mumps": "M",
|
||||||
|
"mupad": "mupad",
|
||||||
|
"muse": "Muse",
|
||||||
|
"myghty": "Myghty",
|
||||||
|
"nanorc": "nanorc",
|
||||||
|
"nasl": "NASL",
|
||||||
|
"nasm": "Assembly",
|
||||||
|
"ncl": "NCL",
|
||||||
|
"nearley": "Nearley",
|
||||||
|
"nemerle": "Nemerle",
|
||||||
|
"neosnippet": "Vim Snippet",
|
||||||
|
"nesc": "nesC",
|
||||||
|
"netlinx": "NetLinx",
|
||||||
|
"netlinx+erb": "NetLinx+ERB",
|
||||||
|
"netlogo": "NetLogo",
|
||||||
|
"newlisp": "NewLisp",
|
||||||
|
"nextflow": "Nextflow",
|
||||||
|
"nginx": "Nginx",
|
||||||
|
"nginx_configuration_file": "Nginx",
|
||||||
|
"nim": "Nim",
|
||||||
|
"ninja": "Ninja",
|
||||||
|
"nit": "Nit",
|
||||||
|
"nix": "Nix",
|
||||||
|
"nixos": "Nix",
|
||||||
|
"njk": "HTML+Django",
|
||||||
|
"nl": "NL",
|
||||||
|
"node": "JavaScript",
|
||||||
|
"npm_config": "NPM Config",
|
||||||
|
"npmrc": "NPM Config",
|
||||||
|
"nroff": "Roff",
|
||||||
|
"nsis": "NSIS",
|
||||||
|
"nu": "Nu",
|
||||||
|
"numpy": "NumPy",
|
||||||
|
"nunjucks": "HTML+Django",
|
||||||
|
"nush": "Nu",
|
||||||
|
"nvim": "Vim script",
|
||||||
|
"obj-c": "Objective-C",
|
||||||
|
"obj-c++": "Objective-C++",
|
||||||
|
"obj-j": "Objective-J",
|
||||||
|
"objc": "Objective-C",
|
||||||
|
"objc++": "Objective-C++",
|
||||||
|
"objdump": "ObjDump",
|
||||||
|
"object_data_instance_notation": "Object Data Instance Notation",
|
||||||
|
"objective-c": "Objective-C",
|
||||||
|
"objective-c++": "Objective-C++",
|
||||||
|
"objective-j": "Objective-J",
|
||||||
|
"objectivec": "Objective-C",
|
||||||
|
"objectivec++": "Objective-C++",
|
||||||
|
"objectivej": "Objective-J",
|
||||||
|
"objectpascal": "Component Pascal",
|
||||||
|
"objectscript": "ObjectScript",
|
||||||
|
"objj": "Objective-J",
|
||||||
|
"ocaml": "OCaml",
|
||||||
|
"octave": "MATLAB",
|
||||||
|
"odin": "Odin",
|
||||||
|
"odin-lang": "Odin",
|
||||||
|
"odinlang": "Odin",
|
||||||
|
"omgrofl": "Omgrofl",
|
||||||
|
"oncrpc": "RPC",
|
||||||
|
"ooc": "ooc",
|
||||||
|
"opa": "Opa",
|
||||||
|
"opal": "Opal",
|
||||||
|
"open_policy_agent": "Open Policy Agent",
|
||||||
|
"opencl": "OpenCL",
|
||||||
|
"openedge": "OpenEdge ABL",
|
||||||
|
"openedge_abl": "OpenEdge ABL",
|
||||||
|
"openqasm": "OpenQASM",
|
||||||
|
"openrc": "OpenRC runscript",
|
||||||
|
"openrc_runscript": "OpenRC runscript",
|
||||||
|
"openscad": "OpenSCAD",
|
||||||
|
"openstep_property_list": "OpenStep Property List",
|
||||||
|
"opentype_feature_file": "OpenType Feature File",
|
||||||
|
"org": "Org",
|
||||||
|
"osascript": "AppleScript",
|
||||||
|
"ox": "Ox",
|
||||||
|
"oxygene": "Oxygene",
|
||||||
|
"oz": "Oz",
|
||||||
|
"p4": "P4",
|
||||||
|
"pan": "Pan",
|
||||||
|
"pandoc": "Markdown",
|
||||||
|
"papyrus": "Papyrus",
|
||||||
|
"parrot": "Parrot",
|
||||||
|
"parrot_assembly": "Parrot Assembly",
|
||||||
|
"parrot_internal_representation": "Parrot Internal Representation",
|
||||||
|
"pascal": "Pascal",
|
||||||
|
"pasm": "Parrot Assembly",
|
||||||
|
"pawn": "Pawn",
|
||||||
|
"pcbnew": "KiCad Layout",
|
||||||
|
"pep8": "Pep8",
|
||||||
|
"perl": "Perl",
|
||||||
|
"perl-6": "Raku",
|
||||||
|
"perl6": "Raku",
|
||||||
|
"php": "PHP",
|
||||||
|
"pic": "Pic",
|
||||||
|
"pickle": "Pickle",
|
||||||
|
"picolisp": "PicoLisp",
|
||||||
|
"piglatin": "PigLatin",
|
||||||
|
"pike": "Pike",
|
||||||
|
"pir": "Parrot Internal Representation",
|
||||||
|
"plantuml": "PlantUML",
|
||||||
|
"plpgsql": "PLpgSQL",
|
||||||
|
"plsql": "PLSQL",
|
||||||
|
"pod": "Pod",
|
||||||
|
"pod_6": "Pod 6",
|
||||||
|
"pogoscript": "PogoScript",
|
||||||
|
"pony": "Pony",
|
||||||
|
"posh": "PowerShell",
|
||||||
|
"postcss": "PostCSS",
|
||||||
|
"postscr": "PostScript",
|
||||||
|
"postscript": "PostScript",
|
||||||
|
"pot": "Gettext Catalog",
|
||||||
|
"pov-ray": "POV-Ray SDL",
|
||||||
|
"pov-ray_sdl": "POV-Ray SDL",
|
||||||
|
"povray": "POV-Ray SDL",
|
||||||
|
"powerbuilder": "PowerBuilder",
|
||||||
|
"powershell": "PowerShell",
|
||||||
|
"prisma": "Prisma",
|
||||||
|
"processing": "Processing",
|
||||||
|
"progress": "OpenEdge ABL",
|
||||||
|
"proguard": "Proguard",
|
||||||
|
"prolog": "Prolog",
|
||||||
|
"propeller_spin": "Propeller Spin",
|
||||||
|
"protobuf": "Protocol Buffer",
|
||||||
|
"protocol_buffer": "Protocol Buffer",
|
||||||
|
"protocol_buffers": "Protocol Buffer",
|
||||||
|
"public_key": "Public Key",
|
||||||
|
"pug": "Pug",
|
||||||
|
"puppet": "Puppet",
|
||||||
|
"pure_data": "Pure Data",
|
||||||
|
"purebasic": "PureBasic",
|
||||||
|
"purescript": "PureScript",
|
||||||
|
"pwsh": "PowerShell",
|
||||||
|
"pycon": "Python console",
|
||||||
|
"pyrex": "Cython",
|
||||||
|
"python": "Python",
|
||||||
|
"python3": "Python",
|
||||||
|
"python_console": "Python console",
|
||||||
|
"python_traceback": "Python traceback",
|
||||||
|
"q": "q",
|
||||||
|
"ql": "CodeQL",
|
||||||
|
"qmake": "QMake",
|
||||||
|
"qml": "QML",
|
||||||
|
"quake": "Quake",
|
||||||
|
"r": "R",
|
||||||
|
"racket": "Racket",
|
||||||
|
"ragel": "Ragel",
|
||||||
|
"ragel-rb": "Ragel",
|
||||||
|
"ragel-ruby": "Ragel",
|
||||||
|
"rake": "Ruby",
|
||||||
|
"raku": "Raku",
|
||||||
|
"raml": "RAML",
|
||||||
|
"rascal": "Rascal",
|
||||||
|
"raw": "Raw token data",
|
||||||
|
"raw_token_data": "Raw token data",
|
||||||
|
"razor": "HTML+Razor",
|
||||||
|
"rb": "Ruby",
|
||||||
|
"rbx": "Ruby",
|
||||||
|
"rdoc": "RDoc",
|
||||||
|
"readline": "Readline Config",
|
||||||
|
"readline_config": "Readline Config",
|
||||||
|
"realbasic": "REALbasic",
|
||||||
|
"reason": "Reason",
|
||||||
|
"rebol": "Rebol",
|
||||||
|
"red": "Red",
|
||||||
|
"red/system": "Red",
|
||||||
|
"redcode": "Redcode",
|
||||||
|
"regex": "Regular Expression",
|
||||||
|
"regexp": "Regular Expression",
|
||||||
|
"regular_expression": "Regular Expression",
|
||||||
|
"ren'py": "Ren'Py",
|
||||||
|
"renderscript": "RenderScript",
|
||||||
|
"renpy": "Ren'Py",
|
||||||
|
"restructuredtext": "reStructuredText",
|
||||||
|
"rexx": "REXX",
|
||||||
|
"rhtml": "RHTML",
|
||||||
|
"rich_text_format": "Rich Text Format",
|
||||||
|
"ring": "Ring",
|
||||||
|
"riot": "Riot",
|
||||||
|
"rmarkdown": "RMarkdown",
|
||||||
|
"robotframework": "RobotFramework",
|
||||||
|
"roff": "Roff",
|
||||||
|
"roff_manpage": "Roff Manpage",
|
||||||
|
"rouge": "Rouge",
|
||||||
|
"rpc": "RPC",
|
||||||
|
"rpcgen": "RPC",
|
||||||
|
"rpm_spec": "RPM Spec",
|
||||||
|
"rs-274x": "Gerber Image",
|
||||||
|
"rscript": "R",
|
||||||
|
"rss": "XML",
|
||||||
|
"rst": "reStructuredText",
|
||||||
|
"ruby": "Ruby",
|
||||||
|
"runoff": "RUNOFF",
|
||||||
|
"rust": "Rust",
|
||||||
|
"rusthon": "Python",
|
||||||
|
"sage": "Sage",
|
||||||
|
"salt": "SaltStack",
|
||||||
|
"saltstack": "SaltStack",
|
||||||
|
"saltstate": "SaltStack",
|
||||||
|
"sas": "SAS",
|
||||||
|
"sass": "Sass",
|
||||||
|
"scala": "Scala",
|
||||||
|
"scaml": "Scaml",
|
||||||
|
"scheme": "Scheme",
|
||||||
|
"scilab": "Scilab",
|
||||||
|
"scss": "SCSS",
|
||||||
|
"sed": "sed",
|
||||||
|
"self": "Self",
|
||||||
|
"sh": "Shell",
|
||||||
|
"shaderlab": "ShaderLab",
|
||||||
|
"shell": "Shell",
|
||||||
|
"shell-script": "Shell",
|
||||||
|
"shellsession": "ShellSession",
|
||||||
|
"shen": "Shen",
|
||||||
|
"slash": "Slash",
|
||||||
|
"slice": "Slice",
|
||||||
|
"slim": "Slim",
|
||||||
|
"smali": "Smali",
|
||||||
|
"smalltalk": "Smalltalk",
|
||||||
|
"smarty": "Smarty",
|
||||||
|
"sml": "Standard ML",
|
||||||
|
"smpl": "SmPL",
|
||||||
|
"smt": "SMT",
|
||||||
|
"snipmate": "Vim Snippet",
|
||||||
|
"snippet": "YASnippet",
|
||||||
|
"solidity": "Solidity",
|
||||||
|
"sourcemod": "SourcePawn",
|
||||||
|
"sourcepawn": "SourcePawn",
|
||||||
|
"soy": "Closure Templates",
|
||||||
|
"sparql": "SPARQL",
|
||||||
|
"specfile": "RPM Spec",
|
||||||
|
"spline_font_database": "Spline Font Database",
|
||||||
|
"splus": "R",
|
||||||
|
"sqf": "SQF",
|
||||||
|
"sql": "SQL",
|
||||||
|
"sqlpl": "SQLPL",
|
||||||
|
"squeak": "Smalltalk",
|
||||||
|
"squirrel": "Squirrel",
|
||||||
|
"srecode_template": "SRecode Template",
|
||||||
|
"ssh_config": "SSH Config",
|
||||||
|
"stan": "Stan",
|
||||||
|
"standard_ml": "Standard ML",
|
||||||
|
"starlark": "Starlark",
|
||||||
|
"stata": "Stata",
|
||||||
|
"ston": "STON",
|
||||||
|
"stylus": "Stylus",
|
||||||
|
"subrip_text": "SubRip Text",
|
||||||
|
"sugarss": "SugarSS",
|
||||||
|
"supercollider": "SuperCollider",
|
||||||
|
"svelte": "Svelte",
|
||||||
|
"svg": "SVG",
|
||||||
|
"swift": "Swift",
|
||||||
|
"swig": "SWIG",
|
||||||
|
"systemverilog": "SystemVerilog",
|
||||||
|
"tcl": "Tcl",
|
||||||
|
"tcsh": "Tcsh",
|
||||||
|
"tea": "Tea",
|
||||||
|
"terra": "Terra",
|
||||||
|
"terraform": "HCL",
|
||||||
|
"tex": "TeX",
|
||||||
|
"texinfo": "Texinfo",
|
||||||
|
"text": "Text",
|
||||||
|
"textile": "Textile",
|
||||||
|
"thrift": "Thrift",
|
||||||
|
"ti_program": "TI Program",
|
||||||
|
"tl": "Type Language",
|
||||||
|
"tla": "TLA",
|
||||||
|
"toml": "TOML",
|
||||||
|
"troff": "Roff",
|
||||||
|
"ts": "TypeScript",
|
||||||
|
"tsql": "TSQL",
|
||||||
|
"tsx": "TSX",
|
||||||
|
"turing": "Turing",
|
||||||
|
"turtle": "Turtle",
|
||||||
|
"twig": "Twig",
|
||||||
|
"txl": "TXL",
|
||||||
|
"type_language": "Type Language",
|
||||||
|
"typescript": "TypeScript",
|
||||||
|
"udiff": "Diff",
|
||||||
|
"ultisnip": "Vim Snippet",
|
||||||
|
"ultisnips": "Vim Snippet",
|
||||||
|
"unified_parallel_c": "Unified Parallel C",
|
||||||
|
"unity3d_asset": "Unity3D Asset",
|
||||||
|
"unix_assembly": "Unix Assembly",
|
||||||
|
"uno": "Uno",
|
||||||
|
"unrealscript": "UnrealScript",
|
||||||
|
"ur": "UrWeb",
|
||||||
|
"ur/web": "UrWeb",
|
||||||
|
"urweb": "UrWeb",
|
||||||
|
"v": "V",
|
||||||
|
"vala": "Vala",
|
||||||
|
"vb.net": "Visual Basic .NET",
|
||||||
|
"vb6": "VBA",
|
||||||
|
"vb_.net": "Visual Basic .NET",
|
||||||
|
"vba": "VBA",
|
||||||
|
"vbnet": "Visual Basic .NET",
|
||||||
|
"vbscript": "VBScript",
|
||||||
|
"vcl": "VCL",
|
||||||
|
"verilog": "Verilog",
|
||||||
|
"vhdl": "VHDL",
|
||||||
|
"vim": "Vim script",
|
||||||
|
"vim_script": "Vim script",
|
||||||
|
"vim_snippet": "Vim Snippet",
|
||||||
|
"viml": "Vim script",
|
||||||
|
"visual_basic": "Visual Basic .NET",
|
||||||
|
"visual_basic_.net": "Visual Basic .NET",
|
||||||
|
"visual_basic_6": "VBA",
|
||||||
|
"visual_basic_for_applications": "VBA",
|
||||||
|
"vlang": "V",
|
||||||
|
"volt": "Volt",
|
||||||
|
"vue": "Vue",
|
||||||
|
"wasm": "WebAssembly",
|
||||||
|
"wast": "WebAssembly",
|
||||||
|
"wavefront_material": "Wavefront Material",
|
||||||
|
"wavefront_object": "Wavefront Object",
|
||||||
|
"wdl": "wdl",
|
||||||
|
"web_ontology_language": "Web Ontology Language",
|
||||||
|
"webassembly": "WebAssembly",
|
||||||
|
"webidl": "WebIDL",
|
||||||
|
"webvtt": "WebVTT",
|
||||||
|
"wget_config": "Wget Config",
|
||||||
|
"wgetrc": "Wget Config",
|
||||||
|
"winbatch": "Batchfile",
|
||||||
|
"windows_registry_entries": "Windows Registry Entries",
|
||||||
|
"wisp": "wisp",
|
||||||
|
"wollok": "Wollok",
|
||||||
|
"world_of_warcraft_addon_data": "World of Warcraft Addon Data",
|
||||||
|
"wsdl": "XML",
|
||||||
|
"x10": "X10",
|
||||||
|
"x_bitmap": "X BitMap",
|
||||||
|
"x_font_directory_index": "X Font Directory Index",
|
||||||
|
"x_pixmap": "X PixMap",
|
||||||
|
"xbase": "xBase",
|
||||||
|
"xbm": "X BitMap",
|
||||||
|
"xc": "XC",
|
||||||
|
"xcompose": "XCompose",
|
||||||
|
"xdr": "RPC",
|
||||||
|
"xhtml": "HTML",
|
||||||
|
"xml": "XML",
|
||||||
|
"xml+genshi": "Genshi",
|
||||||
|
"xml+kid": "Genshi",
|
||||||
|
"xml_property_list": "XML Property List",
|
||||||
|
"xojo": "Xojo",
|
||||||
|
"xpages": "XPages",
|
||||||
|
"xpm": "X PixMap",
|
||||||
|
"xproc": "XProc",
|
||||||
|
"xquery": "XQuery",
|
||||||
|
"xs": "XS",
|
||||||
|
"xsd": "XML",
|
||||||
|
"xsl": "XSLT",
|
||||||
|
"xslt": "XSLT",
|
||||||
|
"xten": "X10",
|
||||||
|
"xtend": "Xtend",
|
||||||
|
"yacc": "Yacc",
|
||||||
|
"yaml": "YAML",
|
||||||
|
"yang": "YANG",
|
||||||
|
"yara": "YARA",
|
||||||
|
"yas": "YASnippet",
|
||||||
|
"yasnippet": "YASnippet",
|
||||||
|
"yml": "YAML",
|
||||||
|
"zap": "ZAP",
|
||||||
|
"zeek": "Zeek",
|
||||||
|
"zenscript": "ZenScript",
|
||||||
|
"zephir": "Zephir",
|
||||||
|
"zig": "Zig",
|
||||||
|
"zil": "ZIL",
|
||||||
|
"zimpl": "Zimpl",
|
||||||
|
"zsh": "Shell",
|
||||||
|
}
|
||||||
|
|
||||||
|
// LanguageByAlias looks up the language name by it's alias or name.
|
||||||
|
// It mirrors the logic of github linguist and is needed e.g for heuristcs.yml
|
||||||
|
// that mixes names and aliases in a language field (see XPM example).
|
||||||
|
func LanguageByAlias(langOrAlias string) (lang string, ok bool) {
|
||||||
|
k := convertToAliasKey(langOrAlias)
|
||||||
|
lang, ok = LanguageByAliasMap[k]
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// convertToAliasKey converts language name to a key in LanguageByAliasMap.
|
||||||
|
// Following
|
||||||
|
// - internal.code-generator.generator.convertToAliasKey()
|
||||||
|
// - GetLanguageByAlias()
|
||||||
|
// conventions.
|
||||||
|
// It is here to avoid dependency on "generate" and "enry" packages.
|
||||||
|
func convertToAliasKey(langName string) string {
|
||||||
|
ak := strings.SplitN(langName, `,`, 2)[0]
|
||||||
|
ak = strings.Replace(ak, ` `, `_`, -1)
|
||||||
|
ak = strings.ToLower(ak)
|
||||||
|
return ak
|
||||||
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
package data
|
package data
|
||||||
|
|
||||||
|
@ -71,11 +71,13 @@ var LanguagesColor = map[string]string{
|
||||||
"Factor": "#636746",
|
"Factor": "#636746",
|
||||||
"Fancy": "#7b9db4",
|
"Fancy": "#7b9db4",
|
||||||
"Fantom": "#14253c",
|
"Fantom": "#14253c",
|
||||||
|
"Faust": "#c37240",
|
||||||
"Forth": "#341708",
|
"Forth": "#341708",
|
||||||
"Fortran": "#4d41b1",
|
"Fortran": "#4d41b1",
|
||||||
"FreeMarker": "#0050b2",
|
"FreeMarker": "#0050b2",
|
||||||
"Frege": "#00cafe",
|
"Frege": "#00cafe",
|
||||||
"G-code": "#D08CF2",
|
"G-code": "#D08CF2",
|
||||||
|
"GAML": "#FFC766",
|
||||||
"GDScript": "#355570",
|
"GDScript": "#355570",
|
||||||
"Game Maker Language": "#71b417",
|
"Game Maker Language": "#71b417",
|
||||||
"Genie": "#fb855d",
|
"Genie": "#fb855d",
|
||||||
|
@ -96,6 +98,7 @@ var LanguagesColor = map[string]string{
|
||||||
"HolyC": "#ffefaf",
|
"HolyC": "#ffefaf",
|
||||||
"Hy": "#7790B2",
|
"Hy": "#7790B2",
|
||||||
"IDL": "#a3522f",
|
"IDL": "#a3522f",
|
||||||
|
"IGOR Pro": "#0000cc",
|
||||||
"Idris": "#b30000",
|
"Idris": "#b30000",
|
||||||
"Io": "#a9188d",
|
"Io": "#a9188d",
|
||||||
"Ioke": "#078193",
|
"Ioke": "#078193",
|
||||||
|
@ -121,6 +124,7 @@ var LanguagesColor = map[string]string{
|
||||||
"Lua": "#000080",
|
"Lua": "#000080",
|
||||||
"MATLAB": "#e16737",
|
"MATLAB": "#e16737",
|
||||||
"MAXScript": "#00a6a6",
|
"MAXScript": "#00a6a6",
|
||||||
|
"MLIR": "#5EC8DB",
|
||||||
"MQL4": "#62A8D6",
|
"MQL4": "#62A8D6",
|
||||||
"MQL5": "#4A76B8",
|
"MQL5": "#4A76B8",
|
||||||
"MTML": "#b7e1f4",
|
"MTML": "#b7e1f4",
|
||||||
|
@ -149,8 +153,10 @@ var LanguagesColor = map[string]string{
|
||||||
"Objective-C": "#438eff",
|
"Objective-C": "#438eff",
|
||||||
"Objective-C++": "#6866fb",
|
"Objective-C++": "#6866fb",
|
||||||
"Objective-J": "#ff0c5a",
|
"Objective-J": "#ff0c5a",
|
||||||
|
"Odin": "#60AFFE",
|
||||||
"Omgrofl": "#cabbff",
|
"Omgrofl": "#cabbff",
|
||||||
"Opal": "#f7ede0",
|
"Opal": "#f7ede0",
|
||||||
|
"OpenQASM": "#AA70FF",
|
||||||
"Oxygene": "#cdd0e3",
|
"Oxygene": "#cdd0e3",
|
||||||
"Oz": "#fab738",
|
"Oz": "#fab738",
|
||||||
"P4": "#7055b5",
|
"P4": "#7055b5",
|
||||||
|
@ -163,7 +169,6 @@ var LanguagesColor = map[string]string{
|
||||||
"Pawn": "#dbb284",
|
"Pawn": "#dbb284",
|
||||||
"Pep8": "#C76F5B",
|
"Pep8": "#C76F5B",
|
||||||
"Perl": "#0298c3",
|
"Perl": "#0298c3",
|
||||||
"Perl 6": "#0000fb",
|
|
||||||
"PigLatin": "#fcd7de",
|
"PigLatin": "#fcd7de",
|
||||||
"Pike": "#005390",
|
"Pike": "#005390",
|
||||||
"PogoScript": "#d80074",
|
"PogoScript": "#d80074",
|
||||||
|
@ -184,11 +189,14 @@ var LanguagesColor = map[string]string{
|
||||||
"RUNOFF": "#665a4e",
|
"RUNOFF": "#665a4e",
|
||||||
"Racket": "#3c5caa",
|
"Racket": "#3c5caa",
|
||||||
"Ragel": "#9d5200",
|
"Ragel": "#9d5200",
|
||||||
|
"Raku": "#0000fb",
|
||||||
"Rascal": "#fffaa0",
|
"Rascal": "#fffaa0",
|
||||||
|
"Reason": "#ff5847",
|
||||||
"Rebol": "#358a5b",
|
"Rebol": "#358a5b",
|
||||||
"Red": "#f50000",
|
"Red": "#f50000",
|
||||||
"Ren'Py": "#ff7f7f",
|
"Ren'Py": "#ff7f7f",
|
||||||
"Ring": "#2D54CB",
|
"Ring": "#2D54CB",
|
||||||
|
"Riot": "#A71E49",
|
||||||
"Roff": "#ecdebe",
|
"Roff": "#ecdebe",
|
||||||
"Rouge": "#cc0088",
|
"Rouge": "#cc0088",
|
||||||
"Ruby": "#701516",
|
"Ruby": "#701516",
|
||||||
|
@ -204,12 +212,14 @@ var LanguagesColor = map[string]string{
|
||||||
"Shen": "#120F14",
|
"Shen": "#120F14",
|
||||||
"Slash": "#007eff",
|
"Slash": "#007eff",
|
||||||
"Slice": "#003fa2",
|
"Slice": "#003fa2",
|
||||||
|
"SmPL": "#c94949",
|
||||||
"Smalltalk": "#596706",
|
"Smalltalk": "#596706",
|
||||||
"Solidity": "#AA6746",
|
"Solidity": "#AA6746",
|
||||||
"SourcePawn": "#5c7611",
|
"SourcePawn": "#5c7611",
|
||||||
"Squirrel": "#800000",
|
"Squirrel": "#800000",
|
||||||
"Stan": "#b2011d",
|
"Stan": "#b2011d",
|
||||||
"Standard ML": "#dc566d",
|
"Standard ML": "#dc566d",
|
||||||
|
"Starlark": "#76d275",
|
||||||
"SuperCollider": "#46390b",
|
"SuperCollider": "#46390b",
|
||||||
"Swift": "#ffac45",
|
"Swift": "#ffac45",
|
||||||
"SystemVerilog": "#DAE1C2",
|
"SystemVerilog": "#DAE1C2",
|
||||||
|
@ -220,12 +230,15 @@ var LanguagesColor = map[string]string{
|
||||||
"Turing": "#cf142b",
|
"Turing": "#cf142b",
|
||||||
"TypeScript": "#2b7489",
|
"TypeScript": "#2b7489",
|
||||||
"UnrealScript": "#a54c4d",
|
"UnrealScript": "#a54c4d",
|
||||||
|
"V": "#5d87bd",
|
||||||
|
"VBA": "#867db1",
|
||||||
|
"VBScript": "#15dcdc",
|
||||||
"VCL": "#148AA8",
|
"VCL": "#148AA8",
|
||||||
"VHDL": "#adb2cb",
|
"VHDL": "#adb2cb",
|
||||||
"Vala": "#fbe5cd",
|
"Vala": "#fbe5cd",
|
||||||
"Verilog": "#b2b7f8",
|
"Verilog": "#b2b7f8",
|
||||||
"Vim script": "#199f4b",
|
"Vim script": "#199f4b",
|
||||||
"Visual Basic": "#945db7",
|
"Visual Basic .NET": "#945db7",
|
||||||
"Volt": "#1F1F1F",
|
"Volt": "#1F1F1F",
|
||||||
"Vue": "#2c3e50",
|
"Vue": "#2c3e50",
|
||||||
"WebAssembly": "#04133b",
|
"WebAssembly": "#04133b",
|
||||||
|
@ -243,6 +256,7 @@ var LanguagesColor = map[string]string{
|
||||||
"Zephir": "#118f9e",
|
"Zephir": "#118f9e",
|
||||||
"Zig": "#ec915c",
|
"Zig": "#ec915c",
|
||||||
"eC": "#913960",
|
"eC": "#913960",
|
||||||
|
"mIRC Script": "#926059",
|
||||||
"mcfunction": "#E22837",
|
"mcfunction": "#E22837",
|
||||||
"nesC": "#94B0C7",
|
"nesC": "#94B0C7",
|
||||||
"ooc": "#b0b77e",
|
"ooc": "#b0b77e",
|
7
vendor/github.com/go-enry/go-enry/v2/data/commit.go
generated
vendored
Normal file
7
vendor/github.com/go-enry/go-enry/v2/data/commit.go
generated
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
|
package data
|
||||||
|
|
||||||
|
// linguist's commit from which files were generated.
|
||||||
|
var LinguistCommit = "40992ba7f86889f80dfed3ba95e11e1082200bad"
|
|
@ -1,12 +1,12 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
package data
|
package data
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"regexp"
|
"regexp"
|
||||||
|
|
||||||
"github.com/src-d/enry/v2/data/rule"
|
"github.com/go-enry/go-enry/v2/data/rule"
|
||||||
)
|
)
|
||||||
|
|
||||||
var ContentHeuristics = map[string]*Heuristics{
|
var ContentHeuristics = map[string]*Heuristics{
|
||||||
|
@ -591,6 +591,12 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
regexp.MustCompile(`(?m)^(\/\/.+|((import|export)\s+)?(function|int|float|char)\s+((room|repeatedly|on|game)_)?([A-Za-z]+[A-Za-z_0-9]+)\s*[;\(])`),
|
regexp.MustCompile(`(?m)^(\/\/.+|((import|export)\s+)?(function|int|float|char)\s+((room|repeatedly|on|game)_)?([A-Za-z]+[A-Za-z_0-9]+)\s*[;\(])`),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".asm": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Motorola 68K Assembly"),
|
||||||
|
regexp.MustCompile(`(?m)(?im)\bmoveq(?:\.l)?\s+#(?:\$-?[0-9a-f]{1,3}|%[0-1]{1,8}|-?[0-9]{1,3}),\s*d[0-7]\b|(?im)^\s*move(?:\.[bwl])?\s+(?:sr|usp),\s*[^\s]+|(?im)^\s*move\.[bwl]\s+.*\b[ad]\d|(?im)^\s*movem\.[bwl]\b|(?im)^\s*move[mp](?:\.[wl])?\b|(?im)^\s*btst\b|(?im)^\s*dbra\b`),
|
||||||
|
),
|
||||||
|
},
|
||||||
".asy": &Heuristics{
|
".asy": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("LTspice Symbol"),
|
rule.MatchingLanguages("LTspice Symbol"),
|
||||||
|
@ -673,6 +679,16 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
regexp.MustCompile(`(?m)([\/\\].*:\s+.*\s\\$|: \\$|^[ %]:|^[\w\s\/\\.]+\w+\.\w+\s*:\s+[\w\s\/\\.]+\w+\.\w+)`),
|
regexp.MustCompile(`(?m)([\/\\].*:\s+.*\s\\$|: \\$|^[ %]:|^[\w\s\/\\.]+\w+\.\w+\s*:\s+[\w\s\/\\.]+\w+\.\w+)`),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".dsp": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Microsoft Developer Studio Project"),
|
||||||
|
regexp.MustCompile(`(?m)# Microsoft Developer Studio Generated Build File`),
|
||||||
|
),
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Faust"),
|
||||||
|
regexp.MustCompile(`(?m)\bprocess\s*[(=]|\b(library|import)\s*\(\s*"|\bdeclare\s+(name|version|author|copyright|license)\s+"`),
|
||||||
|
),
|
||||||
|
},
|
||||||
".ecl": &Heuristics{
|
".ecl": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("ECLiPSe"),
|
rule.MatchingLanguages("ECLiPSe"),
|
||||||
|
@ -772,6 +788,10 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
".gs": &Heuristics{
|
".gs": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("GLSL"),
|
||||||
|
regexp.MustCompile(`(?m)^#version\s+[0-9]+\b`),
|
||||||
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Gosu"),
|
rule.MatchingLanguages("Gosu"),
|
||||||
regexp.MustCompile(`(?m)^uses java\.`),
|
regexp.MustCompile(`(?m)^uses java\.`),
|
||||||
|
@ -793,6 +813,16 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
regexp.MustCompile(`(?m)<\?hh`),
|
regexp.MustCompile(`(?m)<\?hh`),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".i": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Motorola 68K Assembly"),
|
||||||
|
regexp.MustCompile(`(?m)(?im)\bmoveq(?:\.l)?\s+#(?:\$-?[0-9a-f]{1,3}|%[0-1]{1,8}|-?[0-9]{1,3}),\s*d[0-7]\b|(?im)^\s*move(?:\.[bwl])?\s+(?:sr|usp),\s*[^\s]+|(?im)^\s*move\.[bwl]\s+.*\b[ad]\d|(?im)^\s*movem\.[bwl]\b|(?im)^\s*move[mp](?:\.[wl])?\b|(?im)^\s*btst\b|(?im)^\s*dbra\b`),
|
||||||
|
),
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("SWIG"),
|
||||||
|
regexp.MustCompile(`(?m)^[ \t]*%[a-z_]+\b|^%[{}]$`),
|
||||||
|
),
|
||||||
|
},
|
||||||
".ice": &Heuristics{
|
".ice": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("JSON"),
|
rule.MatchingLanguages("JSON"),
|
||||||
|
@ -803,6 +833,10 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
".inc": &Heuristics{
|
".inc": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Motorola 68K Assembly"),
|
||||||
|
regexp.MustCompile(`(?m)(?im)\bmoveq(?:\.l)?\s+#(?:\$-?[0-9a-f]{1,3}|%[0-1]{1,8}|-?[0-9]{1,3}),\s*d[0-7]\b|(?im)^\s*move(?:\.[bwl])?\s+(?:sr|usp),\s*[^\s]+|(?im)^\s*move\.[bwl]\s+.*\b[ad]\d|(?im)^\s*movem\.[bwl]\b|(?im)^\s*move[mp](?:\.[wl])?\b|(?im)^\s*btst\b|(?im)^\s*dbra\b`),
|
||||||
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("PHP"),
|
rule.MatchingLanguages("PHP"),
|
||||||
regexp.MustCompile(`(?m)^<\?(?:php)?`),
|
regexp.MustCompile(`(?m)^<\?(?:php)?`),
|
||||||
|
@ -931,6 +965,12 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
rule.MatchingLanguages("Roff"),
|
rule.MatchingLanguages("Roff"),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".mask": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Unity3d Asset"),
|
||||||
|
regexp.MustCompile(`(?m)tag:unity3d.com`),
|
||||||
|
),
|
||||||
|
},
|
||||||
".md": &Heuristics{
|
".md": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Markdown"),
|
rule.MatchingLanguages("Markdown"),
|
||||||
|
@ -1047,6 +1087,25 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
rule.MatchingLanguages("NewLisp"),
|
rule.MatchingLanguages("NewLisp"),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".odin": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Object Data Instance Notation"),
|
||||||
|
regexp.MustCompile(`(?m)(?:^|<)\s*[A-Za-z0-9_]+\s*=\s*<`),
|
||||||
|
),
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Odin"),
|
||||||
|
regexp.MustCompile(`(?m)package\s+\w+|\b(?:im|ex)port\s*"[\w:./]+"|\w+\s*::\s*(?:proc|struct)\s*\(|^\s*//\s`),
|
||||||
|
),
|
||||||
|
},
|
||||||
|
".p": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Gnuplot"),
|
||||||
|
regexp.MustCompile(`(?m)^s?plot\b|^set\s+(term|terminal|out|output|[xy]tics|[xy]label|[xy]range|style)\b`),
|
||||||
|
),
|
||||||
|
rule.Always(
|
||||||
|
rule.MatchingLanguages("OpenEdge ABL"),
|
||||||
|
),
|
||||||
|
},
|
||||||
".php": &Heuristics{
|
".php": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Hack"),
|
rule.MatchingLanguages("Hack"),
|
||||||
|
@ -1067,17 +1126,26 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
regexp.MustCompile(`(?m)\buse\s+(?:strict\b|v?5\.)`),
|
regexp.MustCompile(`(?m)\buse\s+(?:strict\b|v?5\.)`),
|
||||||
),
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Perl 6"),
|
rule.MatchingLanguages("Raku"),
|
||||||
regexp.MustCompile(`(?m)^\s*(?:use\s+v6\b|\bmodule\b|\b(?:my\s+)?class\b)`),
|
regexp.MustCompile(`(?m)^\s*(?:use\s+v6\b|\bmodule\b|\b(?:my\s+)?class\b)`),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".plist": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("XML Property List"),
|
||||||
|
regexp.MustCompile(`(?m)<!DOCTYPE\s+plist`),
|
||||||
|
),
|
||||||
|
rule.Always(
|
||||||
|
rule.MatchingLanguages("OpenStep Property List"),
|
||||||
|
),
|
||||||
|
},
|
||||||
".pm": &Heuristics{
|
".pm": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Perl"),
|
rule.MatchingLanguages("Perl"),
|
||||||
regexp.MustCompile(`(?m)\buse\s+(?:strict\b|v?5\.)`),
|
regexp.MustCompile(`(?m)\buse\s+(?:strict\b|v?5\.)`),
|
||||||
),
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Perl 6"),
|
rule.MatchingLanguages("Raku"),
|
||||||
regexp.MustCompile(`(?m)^\s*(?:use\s+v6\b|\bmodule\b|\b(?:my\s+)?class\b)`),
|
regexp.MustCompile(`(?m)^\s*(?:use\s+v6\b|\bmodule\b|\b(?:my\s+)?class\b)`),
|
||||||
),
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
|
@ -1105,6 +1173,10 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
".pro": &Heuristics{
|
".pro": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Proguard"),
|
||||||
|
regexp.MustCompile(`(?m)^-(include\b.*\.pro$|keep\b|keepclassmembers\b|keepattributes\b)`),
|
||||||
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Prolog"),
|
rule.MatchingLanguages("Prolog"),
|
||||||
regexp.MustCompile(`(?m)^[^\[#]+:-`),
|
regexp.MustCompile(`(?m)^[^\[#]+:-`),
|
||||||
|
@ -1216,6 +1288,12 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
regexp.MustCompile(`(?m)#include|#pragma\s+(rs|version)|__attribute__`),
|
regexp.MustCompile(`(?m)#include|#pragma\s+(rs|version)|__attribute__`),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".s": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Motorola 68K Assembly"),
|
||||||
|
regexp.MustCompile(`(?m)(?im)\bmoveq(?:\.l)?\s+#(?:\$-?[0-9a-f]{1,3}|%[0-1]{1,8}|-?[0-9]{1,3}),\s*d[0-7]\b|(?im)^\s*move(?:\.[bwl])?\s+(?:sr|usp),\s*[^\s]+|(?im)^\s*move\.[bwl]\s+.*\b[ad]\d|(?im)^\s*movem\.[bwl]\b|(?im)^\s*move[mp](?:\.[wl])?\b|(?im)^\s*btst\b|(?im)^\s*dbra\b`),
|
||||||
|
),
|
||||||
|
},
|
||||||
".sc": &Heuristics{
|
".sc": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("SuperCollider"),
|
rule.MatchingLanguages("SuperCollider"),
|
||||||
|
@ -1267,7 +1345,7 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
regexp.MustCompile(`(?m)\buse\s+(?:strict\b|v?5\.)`),
|
regexp.MustCompile(`(?m)\buse\s+(?:strict\b|v?5\.)`),
|
||||||
),
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Perl 6"),
|
rule.MatchingLanguages("Raku"),
|
||||||
regexp.MustCompile(`(?m)^\s*(?:use\s+v6\b|\bmodule\b|\b(?:my\s+)?class\b)`),
|
regexp.MustCompile(`(?m)^\s*(?:use\s+v6\b|\bmodule\b|\b(?:my\s+)?class\b)`),
|
||||||
),
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
|
@ -1313,13 +1391,27 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
regexp.MustCompile(`(?m)(?i:^\s*<\?xml\s+version)`),
|
regexp.MustCompile(`(?m)(?i:^\s*<\?xml\s+version)`),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
".v": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Coq"),
|
||||||
|
regexp.MustCompile(`(?m)\(\*.*?\*\)|(?:^|\s)(?:Proof|Qed)\.(?:$|\s)|(?:^|\s)Require[ \t]+Import\s`),
|
||||||
|
),
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("Verilog"),
|
||||||
|
regexp.MustCompile(`(?m)^[ \t]*module\s+[^\s()]+\s+\#?\(|^[ \t]*`+"`"+`(?:ifdef|timescale)\s|^[ \t]*always[ \t]+@`),
|
||||||
|
),
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("V"),
|
||||||
|
regexp.MustCompile(`(?m)\$(?:if|else)[ \t]|^[ \t]*fn\s+[^\s()]+\(.*?\).*?\{|^[ \t]*for\s*\{`),
|
||||||
|
),
|
||||||
|
},
|
||||||
".vba": &Heuristics{
|
".vba": &Heuristics{
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("Vim script"),
|
rule.MatchingLanguages("Vim script"),
|
||||||
regexp.MustCompile(`(?m)^UseVimball`),
|
regexp.MustCompile(`(?m)^UseVimball`),
|
||||||
),
|
),
|
||||||
rule.Always(
|
rule.Always(
|
||||||
rule.MatchingLanguages("Visual Basic"),
|
rule.MatchingLanguages("VBA"),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
".w": &Heuristics{
|
".w": &Heuristics{
|
||||||
|
@ -1333,6 +1425,10 @@ var ContentHeuristics = map[string]*Heuristics{
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
".x": &Heuristics{
|
".x": &Heuristics{
|
||||||
|
rule.Or(
|
||||||
|
rule.MatchingLanguages("DirectX 3D File"),
|
||||||
|
regexp.MustCompile(`(?m)^xof 030(2|3)(?:txt|bin|tzip|bzip)\b`),
|
||||||
|
),
|
||||||
rule.Or(
|
rule.Or(
|
||||||
rule.MatchingLanguages("RPC"),
|
rule.MatchingLanguages("RPC"),
|
||||||
regexp.MustCompile(`(?m)\b(program|version)\s+\w+\s*{|\bunion\s+\w+\s+switch\s*\(`),
|
regexp.MustCompile(`(?m)\b(program|version)\s+\w+\s*{|\bunion\s+\w+\s+switch\s*\(`),
|
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
package data
|
package data
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
package data
|
package data
|
||||||
|
|
||||||
|
@ -23,7 +23,10 @@ var LanguagesByFilename = map[string][]string{
|
||||||
".coffeelintignore": {"Ignore List"},
|
".coffeelintignore": {"Ignore List"},
|
||||||
".cproject": {"XML"},
|
".cproject": {"XML"},
|
||||||
".cshrc": {"Shell"},
|
".cshrc": {"Shell"},
|
||||||
|
".curlrc": {"cURL Config"},
|
||||||
".cvsignore": {"Ignore List"},
|
".cvsignore": {"Ignore List"},
|
||||||
|
".dir_colors": {"dircolors"},
|
||||||
|
".dircolors": {"dircolors"},
|
||||||
".dockerignore": {"Ignore List"},
|
".dockerignore": {"Ignore List"},
|
||||||
".editorconfig": {"EditorConfig"},
|
".editorconfig": {"EditorConfig"},
|
||||||
".emacs": {"Emacs Lisp"},
|
".emacs": {"Emacs Lisp"},
|
||||||
|
@ -43,14 +46,17 @@ var LanguagesByFilename = map[string][]string{
|
||||||
".gvimrc": {"Vim script"},
|
".gvimrc": {"Vim script"},
|
||||||
".htaccess": {"ApacheConf"},
|
".htaccess": {"ApacheConf"},
|
||||||
".htmlhintrc": {"JSON"},
|
".htmlhintrc": {"JSON"},
|
||||||
|
".inputrc": {"Readline Config"},
|
||||||
".irbrc": {"Ruby"},
|
".irbrc": {"Ruby"},
|
||||||
".jscsrc": {"JSON with Comments"},
|
".jscsrc": {"JSON with Comments"},
|
||||||
".jshintrc": {"JSON with Comments"},
|
".jshintrc": {"JSON with Comments"},
|
||||||
".jslintrc": {"JSON with Comments"},
|
".jslintrc": {"JSON with Comments"},
|
||||||
".login": {"Shell"},
|
".login": {"Shell"},
|
||||||
|
".luacheckrc": {"Lua"},
|
||||||
".nanorc": {"nanorc"},
|
".nanorc": {"nanorc"},
|
||||||
".nodemonignore": {"Ignore List"},
|
".nodemonignore": {"Ignore List"},
|
||||||
".npmignore": {"Ignore List"},
|
".npmignore": {"Ignore List"},
|
||||||
|
".npmrc": {"NPM Config"},
|
||||||
".nvimrc": {"Vim script"},
|
".nvimrc": {"Vim script"},
|
||||||
".php": {"PHP"},
|
".php": {"PHP"},
|
||||||
".php_cs": {"PHP"},
|
".php_cs": {"PHP"},
|
||||||
|
@ -67,6 +73,7 @@ var LanguagesByFilename = map[string][]string{
|
||||||
".viper": {"Emacs Lisp"},
|
".viper": {"Emacs Lisp"},
|
||||||
".vscodeignore": {"Ignore List"},
|
".vscodeignore": {"Ignore List"},
|
||||||
".watchmanconfig": {"JSON"},
|
".watchmanconfig": {"JSON"},
|
||||||
|
".wgetrc": {"Wget Config"},
|
||||||
".zlogin": {"Shell"},
|
".zlogin": {"Shell"},
|
||||||
".zlogout": {"Shell"},
|
".zlogout": {"Shell"},
|
||||||
".zprofile": {"Shell"},
|
".zprofile": {"Shell"},
|
||||||
|
@ -77,9 +84,9 @@ var LanguagesByFilename = map[string][]string{
|
||||||
"App.config": {"XML"},
|
"App.config": {"XML"},
|
||||||
"Appraisals": {"Ruby"},
|
"Appraisals": {"Ruby"},
|
||||||
"BSDmakefile": {"Makefile"},
|
"BSDmakefile": {"Makefile"},
|
||||||
"BUCK": {"Python"},
|
"BUCK": {"Starlark"},
|
||||||
"BUILD": {"Python"},
|
"BUILD": {"Starlark"},
|
||||||
"BUILD.bazel": {"Python"},
|
"BUILD.bazel": {"Starlark"},
|
||||||
"Berksfile": {"Ruby"},
|
"Berksfile": {"Ruby"},
|
||||||
"Brewfile": {"Ruby"},
|
"Brewfile": {"Ruby"},
|
||||||
"Buildfile": {"Ruby"},
|
"Buildfile": {"Ruby"},
|
||||||
|
@ -91,6 +98,8 @@ var LanguagesByFilename = map[string][]string{
|
||||||
"Capfile": {"Ruby"},
|
"Capfile": {"Ruby"},
|
||||||
"Cargo.lock": {"TOML"},
|
"Cargo.lock": {"TOML"},
|
||||||
"Cask": {"Emacs Lisp"},
|
"Cask": {"Emacs Lisp"},
|
||||||
|
"DEPS": {"Python"},
|
||||||
|
"DIR_COLORS": {"dircolors"},
|
||||||
"Dangerfile": {"Ruby"},
|
"Dangerfile": {"Ruby"},
|
||||||
"Deliverfile": {"Ruby"},
|
"Deliverfile": {"Ruby"},
|
||||||
"Dockerfile": {"Dockerfile"},
|
"Dockerfile": {"Dockerfile"},
|
||||||
|
@ -144,11 +153,14 @@ var LanguagesByFilename = map[string][]string{
|
||||||
"Snapfile": {"Ruby"},
|
"Snapfile": {"Ruby"},
|
||||||
"Thorfile": {"Ruby"},
|
"Thorfile": {"Ruby"},
|
||||||
"Vagrantfile": {"Ruby"},
|
"Vagrantfile": {"Ruby"},
|
||||||
"WORKSPACE": {"Python"},
|
"WORKSPACE": {"Starlark"},
|
||||||
"Web.Debug.config": {"XML"},
|
"Web.Debug.config": {"XML"},
|
||||||
"Web.Release.config": {"XML"},
|
"Web.Release.config": {"XML"},
|
||||||
"Web.config": {"XML"},
|
"Web.config": {"XML"},
|
||||||
"XCompose": {"XCompose"},
|
"XCompose": {"XCompose"},
|
||||||
|
"_curlrc": {"cURL Config"},
|
||||||
|
"_dir_colors": {"dircolors"},
|
||||||
|
"_dircolors": {"dircolors"},
|
||||||
"_emacs": {"Emacs Lisp"},
|
"_emacs": {"Emacs Lisp"},
|
||||||
"_vimrc": {"Vim script"},
|
"_vimrc": {"Vim script"},
|
||||||
"abbrev_defs": {"Emacs Lisp"},
|
"abbrev_defs": {"Emacs Lisp"},
|
||||||
|
@ -173,7 +185,9 @@ var LanguagesByFilename = map[string][]string{
|
||||||
"delete.me": {"Text"},
|
"delete.me": {"Text"},
|
||||||
"descrip.mmk": {"Module Management System"},
|
"descrip.mmk": {"Module Management System"},
|
||||||
"descrip.mms": {"Module Management System"},
|
"descrip.mms": {"Module Management System"},
|
||||||
|
"dir_colors": {"dircolors"},
|
||||||
"encodings.dir": {"X Font Directory Index"},
|
"encodings.dir": {"X Font Directory Index"},
|
||||||
|
"eqnrc": {"Roff"},
|
||||||
"expr-dist": {"R"},
|
"expr-dist": {"R"},
|
||||||
"firestore.rules": {"Cloud Firestore Security Rules"},
|
"firestore.rules": {"Cloud Firestore Security Rules"},
|
||||||
"fonts.alias": {"X Font Directory Index"},
|
"fonts.alias": {"X Font Directory Index"},
|
||||||
|
@ -189,6 +203,7 @@ var LanguagesByFilename = map[string][]string{
|
||||||
"gvimrc": {"Vim script"},
|
"gvimrc": {"Vim script"},
|
||||||
"haproxy.cfg": {"HAProxy"},
|
"haproxy.cfg": {"HAProxy"},
|
||||||
"httpd.conf": {"ApacheConf"},
|
"httpd.conf": {"ApacheConf"},
|
||||||
|
"inputrc": {"Readline Config"},
|
||||||
"jsconfig.json": {"JSON with Comments"},
|
"jsconfig.json": {"JSON with Comments"},
|
||||||
"keep.me": {"Text"},
|
"keep.me": {"Text"},
|
||||||
"language-configuration.json": {"JSON with Comments"},
|
"language-configuration.json": {"JSON with Comments"},
|
||||||
|
@ -212,6 +227,9 @@ var LanguagesByFilename = map[string][]string{
|
||||||
"nim.cfg": {"Nim"},
|
"nim.cfg": {"Nim"},
|
||||||
"nvimrc": {"Vim script"},
|
"nvimrc": {"Vim script"},
|
||||||
"owh": {"Tcl"},
|
"owh": {"Tcl"},
|
||||||
|
"package.mask": {"Text"},
|
||||||
|
"package.use.mask": {"Text"},
|
||||||
|
"package.use.stable.mask": {"Text"},
|
||||||
"packages.config": {"XML"},
|
"packages.config": {"XML"},
|
||||||
"pom.xml": {"Maven POM"},
|
"pom.xml": {"Maven POM"},
|
||||||
"profile": {"Shell"},
|
"profile": {"Shell"},
|
||||||
|
@ -229,10 +247,15 @@ var LanguagesByFilename = map[string][]string{
|
||||||
"sshd_config": {"SSH Config"},
|
"sshd_config": {"SSH Config"},
|
||||||
"starfield": {"Tcl"},
|
"starfield": {"Tcl"},
|
||||||
"test.me": {"Text"},
|
"test.me": {"Text"},
|
||||||
|
"troffrc": {"Roff"},
|
||||||
|
"troffrc-end": {"Roff"},
|
||||||
"tsconfig.json": {"JSON with Comments"},
|
"tsconfig.json": {"JSON with Comments"},
|
||||||
|
"use.mask": {"Text"},
|
||||||
|
"use.stable.mask": {"Text"},
|
||||||
"vimrc": {"Vim script"},
|
"vimrc": {"Vim script"},
|
||||||
"wscript": {"Python"},
|
"wscript": {"Python"},
|
||||||
"xcompose": {"XCompose"},
|
"xcompose": {"XCompose"},
|
||||||
|
"yarn.lock": {"YAML"},
|
||||||
"zlogin": {"Shell"},
|
"zlogin": {"Shell"},
|
||||||
"zlogout": {"Shell"},
|
"zlogout": {"Shell"},
|
||||||
"zprofile": {"Shell"},
|
"zprofile": {"Shell"},
|
File diff suppressed because it is too large
Load diff
89
vendor/github.com/go-enry/go-enry/v2/data/groups.go
generated
vendored
Normal file
89
vendor/github.com/go-enry/go-enry/v2/data/groups.go
generated
vendored
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
|
package data
|
||||||
|
|
||||||
|
var LanguagesGroup = map[string]string{
|
||||||
|
"Alpine Abuild": "Shell",
|
||||||
|
"Apollo Guidance Computer": "Assembly",
|
||||||
|
"BibTeX": "TeX",
|
||||||
|
"Bison": "Yacc",
|
||||||
|
"Blade": "HTML",
|
||||||
|
"C2hs Haskell": "Haskell",
|
||||||
|
"Closure Templates": "HTML",
|
||||||
|
"ColdFusion CFC": "ColdFusion",
|
||||||
|
"Cython": "Python",
|
||||||
|
"ECLiPSe": "prolog",
|
||||||
|
"EJS": "HTML",
|
||||||
|
"Easybuild": "Python",
|
||||||
|
"Ecere Projects": "JavaScript",
|
||||||
|
"EditorConfig": "INI",
|
||||||
|
"Filterscript": "RenderScript",
|
||||||
|
"Gentoo Ebuild": "Shell",
|
||||||
|
"Gentoo Eclass": "Shell",
|
||||||
|
"Git Attributes": "INI",
|
||||||
|
"Git Config": "INI",
|
||||||
|
"Groovy Server Pages": "Groovy",
|
||||||
|
"HTML+Django": "HTML",
|
||||||
|
"HTML+ECR": "HTML",
|
||||||
|
"HTML+EEX": "HTML",
|
||||||
|
"HTML+ERB": "HTML",
|
||||||
|
"HTML+PHP": "HTML",
|
||||||
|
"HTML+Razor": "HTML",
|
||||||
|
"Haml": "HTML",
|
||||||
|
"Handlebars": "HTML",
|
||||||
|
"Ignore List": "INI",
|
||||||
|
"Isabelle ROOT": "Isabelle",
|
||||||
|
"JFlex": "Lex",
|
||||||
|
"JSON with Comments": "JSON",
|
||||||
|
"JSX": "JavaScript",
|
||||||
|
"Java Server Pages": "Java",
|
||||||
|
"JavaScript+ERB": "JavaScript",
|
||||||
|
"Jison": "Yacc",
|
||||||
|
"Jison Lex": "Lex",
|
||||||
|
"Latte": "HTML",
|
||||||
|
"Less": "CSS",
|
||||||
|
"Literate Agda": "Agda",
|
||||||
|
"Literate CoffeeScript": "CoffeeScript",
|
||||||
|
"Literate Haskell": "Haskell",
|
||||||
|
"M4Sugar": "M4",
|
||||||
|
"MUF": "Forth",
|
||||||
|
"Marko": "HTML",
|
||||||
|
"Motorola 68K Assembly": "Assembly",
|
||||||
|
"NPM Config": "INI",
|
||||||
|
"NumPy": "Python",
|
||||||
|
"OpenCL": "C",
|
||||||
|
"OpenRC runscript": "Shell",
|
||||||
|
"Parrot Assembly": "Parrot",
|
||||||
|
"Parrot Internal Representation": "Parrot",
|
||||||
|
"Pic": "Roff",
|
||||||
|
"PostCSS": "CSS",
|
||||||
|
"Pug": "HTML",
|
||||||
|
"Python console": "Python",
|
||||||
|
"Python traceback": "Python",
|
||||||
|
"RHTML": "HTML",
|
||||||
|
"Readline Config": "INI",
|
||||||
|
"Roff Manpage": "Roff",
|
||||||
|
"SCSS": "CSS",
|
||||||
|
"SSH Config": "INI",
|
||||||
|
"STON": "Smalltalk",
|
||||||
|
"Sage": "Python",
|
||||||
|
"Sass": "CSS",
|
||||||
|
"Scaml": "HTML",
|
||||||
|
"Slim": "HTML",
|
||||||
|
"Stylus": "CSS",
|
||||||
|
"SugarSS": "CSS",
|
||||||
|
"Svelte": "HTML",
|
||||||
|
"TSX": "TypeScript",
|
||||||
|
"Tcsh": "Shell",
|
||||||
|
"Twig": "HTML",
|
||||||
|
"Unified Parallel C": "C",
|
||||||
|
"Unix Assembly": "Assembly",
|
||||||
|
"Wget Config": "INI",
|
||||||
|
"X BitMap": "C",
|
||||||
|
"X PixMap": "C",
|
||||||
|
"XML Property List": "XML",
|
||||||
|
"cURL Config": "INI",
|
||||||
|
"fish": "Shell",
|
||||||
|
"nanorc": "INI",
|
||||||
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
package data
|
package data
|
||||||
|
|
||||||
import "github.com/src-d/enry/v2/data/rule"
|
import "github.com/go-enry/go-enry/v2/data/rule"
|
||||||
|
|
||||||
// Heuristics implements a rule-based content matching engine.
|
// Heuristics implements a rule-based content matching engine.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
package data
|
package data
|
||||||
|
|
||||||
|
@ -20,6 +20,7 @@ var LanguagesByInterpreter = map[string][]string{
|
||||||
"coffee": {"CoffeeScript"},
|
"coffee": {"CoffeeScript"},
|
||||||
"cperl": {"Perl"},
|
"cperl": {"Perl"},
|
||||||
"crystal": {"Crystal"},
|
"crystal": {"Crystal"},
|
||||||
|
"csh": {"Tcsh"},
|
||||||
"csi": {"Scheme"},
|
"csi": {"Scheme"},
|
||||||
"cvc4": {"SMT"},
|
"cvc4": {"SMT"},
|
||||||
"cwl-runner": {"Common Workflow Language"},
|
"cwl-runner": {"Common Workflow Language"},
|
||||||
|
@ -36,6 +37,7 @@ var LanguagesByInterpreter = map[string][]string{
|
||||||
"gawk": {"Awk"},
|
"gawk": {"Awk"},
|
||||||
"gerbv": {"Gerber Image"},
|
"gerbv": {"Gerber Image"},
|
||||||
"gerbview": {"Gerber Image"},
|
"gerbview": {"Gerber Image"},
|
||||||
|
"gjs": {"JavaScript"},
|
||||||
"gn": {"GN"},
|
"gn": {"GN"},
|
||||||
"gnuplot": {"Gnuplot"},
|
"gnuplot": {"Gnuplot"},
|
||||||
"gosh": {"Scheme"},
|
"gosh": {"Scheme"},
|
||||||
|
@ -57,6 +59,7 @@ var LanguagesByInterpreter = map[string][]string{
|
||||||
"lua": {"Lua", "Terra"},
|
"lua": {"Lua", "Terra"},
|
||||||
"macruby": {"Ruby"},
|
"macruby": {"Ruby"},
|
||||||
"make": {"Makefile"},
|
"make": {"Makefile"},
|
||||||
|
"makeinfo": {"Texinfo"},
|
||||||
"mathsat5": {"SMT"},
|
"mathsat5": {"SMT"},
|
||||||
"mawk": {"Awk"},
|
"mawk": {"Awk"},
|
||||||
"minised": {"sed"},
|
"minised": {"sed"},
|
||||||
|
@ -77,7 +80,7 @@ var LanguagesByInterpreter = map[string][]string{
|
||||||
"parrot": {"Parrot Assembly", "Parrot Internal Representation"},
|
"parrot": {"Parrot Assembly", "Parrot Internal Representation"},
|
||||||
"pdksh": {"Shell"},
|
"pdksh": {"Shell"},
|
||||||
"perl": {"Perl", "Pod"},
|
"perl": {"Perl", "Pod"},
|
||||||
"perl6": {"Perl 6", "Pod 6"},
|
"perl6": {"Pod 6", "Raku"},
|
||||||
"php": {"PHP"},
|
"php": {"PHP"},
|
||||||
"picolisp": {"PicoLisp"},
|
"picolisp": {"PicoLisp"},
|
||||||
"pike": {"Pike"},
|
"pike": {"Pike"},
|
||||||
|
@ -86,10 +89,13 @@ var LanguagesByInterpreter = map[string][]string{
|
||||||
"python": {"Python"},
|
"python": {"Python"},
|
||||||
"python2": {"Python"},
|
"python2": {"Python"},
|
||||||
"python3": {"Python"},
|
"python3": {"Python"},
|
||||||
|
"qjs": {"JavaScript"},
|
||||||
"qmake": {"QMake"},
|
"qmake": {"QMake"},
|
||||||
"r6rs": {"Scheme"},
|
"r6rs": {"Scheme"},
|
||||||
"racket": {"Racket"},
|
"racket": {"Racket"},
|
||||||
"rake": {"Ruby"},
|
"rake": {"Ruby"},
|
||||||
|
"raku": {"Raku"},
|
||||||
|
"rakudo": {"Raku"},
|
||||||
"rbx": {"Ruby"},
|
"rbx": {"Ruby"},
|
||||||
"rc": {"Shell"},
|
"rc": {"Shell"},
|
||||||
"regina": {"REXX"},
|
"regina": {"REXX"},
|
||||||
|
@ -112,6 +118,7 @@ var LanguagesByInterpreter = map[string][]string{
|
||||||
"swipl": {"Prolog"},
|
"swipl": {"Prolog"},
|
||||||
"tcc": {"C"},
|
"tcc": {"C"},
|
||||||
"tclsh": {"Tcl"},
|
"tclsh": {"Tcl"},
|
||||||
|
"tcsh": {"Tcsh"},
|
||||||
"ts-node": {"TypeScript"},
|
"ts-node": {"TypeScript"},
|
||||||
"v8": {"JavaScript"},
|
"v8": {"JavaScript"},
|
||||||
"v8-shell": {"JavaScript"},
|
"v8-shell": {"JavaScript"},
|
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
package data
|
package data
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@ var LanguagesMime = map[string]string{
|
||||||
"Ant Build System": "application/xml",
|
"Ant Build System": "application/xml",
|
||||||
"Apex": "text/x-java",
|
"Apex": "text/x-java",
|
||||||
"Asymptote": "text/x-kotlin",
|
"Asymptote": "text/x-kotlin",
|
||||||
|
"BibTeX": "text/x-stex",
|
||||||
"Brainfuck": "text/x-brainfuck",
|
"Brainfuck": "text/x-brainfuck",
|
||||||
"C": "text/x-csrc",
|
"C": "text/x-csrc",
|
||||||
"C#": "text/x-csharp",
|
"C#": "text/x-csharp",
|
||||||
|
@ -50,7 +51,7 @@ var LanguagesMime = map[string]string{
|
||||||
"Easybuild": "text/x-python",
|
"Easybuild": "text/x-python",
|
||||||
"Ecere Projects": "application/json",
|
"Ecere Projects": "application/json",
|
||||||
"EditorConfig": "text/x-properties",
|
"EditorConfig": "text/x-properties",
|
||||||
"Edje Data Collection": "application/json",
|
"Edje Data Collection": "text/x-c++src",
|
||||||
"Eiffel": "text/x-eiffel",
|
"Eiffel": "text/x-eiffel",
|
||||||
"Elm": "text/x-elm",
|
"Elm": "text/x-elm",
|
||||||
"Emacs Lisp": "text/x-common-lisp",
|
"Emacs Lisp": "text/x-common-lisp",
|
||||||
|
@ -146,7 +147,6 @@ var LanguagesMime = map[string]string{
|
||||||
"PLpgSQL": "text/x-sql",
|
"PLpgSQL": "text/x-sql",
|
||||||
"Pascal": "text/x-pascal",
|
"Pascal": "text/x-pascal",
|
||||||
"Perl": "text/x-perl",
|
"Perl": "text/x-perl",
|
||||||
"Perl 6": "text/x-perl",
|
|
||||||
"Pic": "text/troff",
|
"Pic": "text/troff",
|
||||||
"Pod": "text/x-perl",
|
"Pod": "text/x-perl",
|
||||||
"PowerShell": "application/x-powershell",
|
"PowerShell": "application/x-powershell",
|
||||||
|
@ -161,6 +161,7 @@ var LanguagesMime = map[string]string{
|
||||||
"RHTML": "application/x-erb",
|
"RHTML": "application/x-erb",
|
||||||
"RMarkdown": "text/x-gfm",
|
"RMarkdown": "text/x-gfm",
|
||||||
"RPM Spec": "text/x-rpm-spec",
|
"RPM Spec": "text/x-rpm-spec",
|
||||||
|
"Raku": "text/x-perl",
|
||||||
"Reason": "text/x-rustsrc",
|
"Reason": "text/x-rustsrc",
|
||||||
"Roff": "text/troff",
|
"Roff": "text/troff",
|
||||||
"Roff Manpage": "text/troff",
|
"Roff Manpage": "text/troff",
|
||||||
|
@ -174,6 +175,7 @@ var LanguagesMime = map[string]string{
|
||||||
"SQLPL": "text/x-sql",
|
"SQLPL": "text/x-sql",
|
||||||
"SRecode Template": "text/x-common-lisp",
|
"SRecode Template": "text/x-common-lisp",
|
||||||
"SVG": "text/xml",
|
"SVG": "text/xml",
|
||||||
|
"SWIG": "text/x-c++src",
|
||||||
"Sage": "text/x-python",
|
"Sage": "text/x-python",
|
||||||
"SaltStack": "text/x-yaml",
|
"SaltStack": "text/x-yaml",
|
||||||
"Sass": "text/x-sass",
|
"Sass": "text/x-sass",
|
||||||
|
@ -186,6 +188,7 @@ var LanguagesMime = map[string]string{
|
||||||
"Smarty": "text/x-smarty",
|
"Smarty": "text/x-smarty",
|
||||||
"Squirrel": "text/x-c++src",
|
"Squirrel": "text/x-c++src",
|
||||||
"Standard ML": "text/x-ocaml",
|
"Standard ML": "text/x-ocaml",
|
||||||
|
"Starlark": "text/x-python",
|
||||||
"Svelte": "text/html",
|
"Svelte": "text/html",
|
||||||
"Swift": "text/x-swift",
|
"Swift": "text/x-swift",
|
||||||
"SystemVerilog": "text/x-systemverilog",
|
"SystemVerilog": "text/x-systemverilog",
|
||||||
|
@ -203,9 +206,12 @@ var LanguagesMime = map[string]string{
|
||||||
"Unity3D Asset": "text/x-yaml",
|
"Unity3D Asset": "text/x-yaml",
|
||||||
"Uno": "text/x-csharp",
|
"Uno": "text/x-csharp",
|
||||||
"UnrealScript": "text/x-java",
|
"UnrealScript": "text/x-java",
|
||||||
|
"V": "text/x-go",
|
||||||
|
"VBA": "text/x-vb",
|
||||||
|
"VBScript": "text/vbscript",
|
||||||
"VHDL": "text/x-vhdl",
|
"VHDL": "text/x-vhdl",
|
||||||
"Verilog": "text/x-verilog",
|
"Verilog": "text/x-verilog",
|
||||||
"Visual Basic": "text/x-vb",
|
"Visual Basic .NET": "text/x-vb",
|
||||||
"Volt": "text/x-d",
|
"Volt": "text/x-d",
|
||||||
"WebAssembly": "text/x-common-lisp",
|
"WebAssembly": "text/x-common-lisp",
|
||||||
"WebIDL": "text/x-webidl",
|
"WebIDL": "text/x-webidl",
|
||||||
|
@ -214,6 +220,7 @@ var LanguagesMime = map[string]string{
|
||||||
"X PixMap": "text/x-csrc",
|
"X PixMap": "text/x-csrc",
|
||||||
"XC": "text/x-csrc",
|
"XC": "text/x-csrc",
|
||||||
"XML": "text/xml",
|
"XML": "text/xml",
|
||||||
|
"XML Property List": "text/xml",
|
||||||
"XPages": "text/xml",
|
"XPages": "text/xml",
|
||||||
"XProc": "text/xml",
|
"XProc": "text/xml",
|
||||||
"XQuery": "application/xquery",
|
"XQuery": "application/xquery",
|
560
vendor/github.com/go-enry/go-enry/v2/data/type.go
generated
vendored
Normal file
560
vendor/github.com/go-enry/go-enry/v2/data/type.go
generated
vendored
Normal file
|
@ -0,0 +1,560 @@
|
||||||
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
|
package data
|
||||||
|
|
||||||
|
var LanguagesType = map[string]int{
|
||||||
|
"1C Enterprise": 2,
|
||||||
|
"4D": 2,
|
||||||
|
"ABAP": 2,
|
||||||
|
"ABNF": 1,
|
||||||
|
"AGS Script": 2,
|
||||||
|
"AMPL": 2,
|
||||||
|
"ANTLR": 2,
|
||||||
|
"API Blueprint": 3,
|
||||||
|
"APL": 2,
|
||||||
|
"ASN.1": 1,
|
||||||
|
"ASP": 2,
|
||||||
|
"ATS": 2,
|
||||||
|
"ActionScript": 2,
|
||||||
|
"Ada": 2,
|
||||||
|
"Adobe Font Metrics": 1,
|
||||||
|
"Agda": 2,
|
||||||
|
"Alloy": 2,
|
||||||
|
"Alpine Abuild": 2,
|
||||||
|
"Altium Designer": 1,
|
||||||
|
"AngelScript": 2,
|
||||||
|
"Ant Build System": 1,
|
||||||
|
"ApacheConf": 1,
|
||||||
|
"Apex": 2,
|
||||||
|
"Apollo Guidance Computer": 2,
|
||||||
|
"AppleScript": 2,
|
||||||
|
"Arc": 2,
|
||||||
|
"AsciiDoc": 4,
|
||||||
|
"AspectJ": 2,
|
||||||
|
"Assembly": 2,
|
||||||
|
"Asymptote": 2,
|
||||||
|
"Augeas": 2,
|
||||||
|
"AutoHotkey": 2,
|
||||||
|
"AutoIt": 2,
|
||||||
|
"Awk": 2,
|
||||||
|
"Ballerina": 2,
|
||||||
|
"Batchfile": 2,
|
||||||
|
"Befunge": 2,
|
||||||
|
"BibTeX": 3,
|
||||||
|
"Bison": 2,
|
||||||
|
"BitBake": 2,
|
||||||
|
"Blade": 3,
|
||||||
|
"BlitzBasic": 2,
|
||||||
|
"BlitzMax": 2,
|
||||||
|
"Bluespec": 2,
|
||||||
|
"Boo": 2,
|
||||||
|
"Brainfuck": 2,
|
||||||
|
"Brightscript": 2,
|
||||||
|
"C": 2,
|
||||||
|
"C#": 2,
|
||||||
|
"C++": 2,
|
||||||
|
"C-ObjDump": 1,
|
||||||
|
"C2hs Haskell": 2,
|
||||||
|
"CLIPS": 2,
|
||||||
|
"CMake": 2,
|
||||||
|
"COBOL": 2,
|
||||||
|
"COLLADA": 1,
|
||||||
|
"CSON": 1,
|
||||||
|
"CSS": 3,
|
||||||
|
"CSV": 1,
|
||||||
|
"CWeb": 2,
|
||||||
|
"Cabal Config": 1,
|
||||||
|
"Cap'n Proto": 2,
|
||||||
|
"CartoCSS": 2,
|
||||||
|
"Ceylon": 2,
|
||||||
|
"Chapel": 2,
|
||||||
|
"Charity": 2,
|
||||||
|
"ChucK": 2,
|
||||||
|
"Cirru": 2,
|
||||||
|
"Clarion": 2,
|
||||||
|
"Clean": 2,
|
||||||
|
"Click": 2,
|
||||||
|
"Clojure": 2,
|
||||||
|
"Closure Templates": 3,
|
||||||
|
"Cloud Firestore Security Rules": 1,
|
||||||
|
"CoNLL-U": 1,
|
||||||
|
"CodeQL": 2,
|
||||||
|
"CoffeeScript": 2,
|
||||||
|
"ColdFusion": 2,
|
||||||
|
"ColdFusion CFC": 2,
|
||||||
|
"Common Lisp": 2,
|
||||||
|
"Common Workflow Language": 2,
|
||||||
|
"Component Pascal": 2,
|
||||||
|
"Cool": 2,
|
||||||
|
"Coq": 2,
|
||||||
|
"Cpp-ObjDump": 1,
|
||||||
|
"Creole": 4,
|
||||||
|
"Crystal": 2,
|
||||||
|
"Csound": 2,
|
||||||
|
"Csound Document": 2,
|
||||||
|
"Csound Score": 2,
|
||||||
|
"Cuda": 2,
|
||||||
|
"Cycript": 2,
|
||||||
|
"Cython": 2,
|
||||||
|
"D": 2,
|
||||||
|
"D-ObjDump": 1,
|
||||||
|
"DIGITAL Command Language": 2,
|
||||||
|
"DM": 2,
|
||||||
|
"DNS Zone": 1,
|
||||||
|
"DTrace": 2,
|
||||||
|
"Darcs Patch": 1,
|
||||||
|
"Dart": 2,
|
||||||
|
"DataWeave": 2,
|
||||||
|
"Dhall": 2,
|
||||||
|
"Diff": 1,
|
||||||
|
"DirectX 3D File": 1,
|
||||||
|
"Dockerfile": 2,
|
||||||
|
"Dogescript": 2,
|
||||||
|
"Dylan": 2,
|
||||||
|
"E": 2,
|
||||||
|
"EBNF": 1,
|
||||||
|
"ECL": 2,
|
||||||
|
"ECLiPSe": 2,
|
||||||
|
"EJS": 3,
|
||||||
|
"EML": 1,
|
||||||
|
"EQ": 2,
|
||||||
|
"Eagle": 1,
|
||||||
|
"Easybuild": 1,
|
||||||
|
"Ecere Projects": 1,
|
||||||
|
"EditorConfig": 1,
|
||||||
|
"Edje Data Collection": 1,
|
||||||
|
"Eiffel": 2,
|
||||||
|
"Elixir": 2,
|
||||||
|
"Elm": 2,
|
||||||
|
"Emacs Lisp": 2,
|
||||||
|
"EmberScript": 2,
|
||||||
|
"Erlang": 2,
|
||||||
|
"F#": 2,
|
||||||
|
"F*": 2,
|
||||||
|
"FIGlet Font": 1,
|
||||||
|
"FLUX": 2,
|
||||||
|
"Factor": 2,
|
||||||
|
"Fancy": 2,
|
||||||
|
"Fantom": 2,
|
||||||
|
"Faust": 2,
|
||||||
|
"Filebench WML": 2,
|
||||||
|
"Filterscript": 2,
|
||||||
|
"Formatted": 1,
|
||||||
|
"Forth": 2,
|
||||||
|
"Fortran": 2,
|
||||||
|
"FreeMarker": 2,
|
||||||
|
"Frege": 2,
|
||||||
|
"G-code": 2,
|
||||||
|
"GAML": 2,
|
||||||
|
"GAMS": 2,
|
||||||
|
"GAP": 2,
|
||||||
|
"GCC Machine Description": 2,
|
||||||
|
"GDB": 2,
|
||||||
|
"GDScript": 2,
|
||||||
|
"GLSL": 2,
|
||||||
|
"GN": 1,
|
||||||
|
"Game Maker Language": 2,
|
||||||
|
"Genie": 2,
|
||||||
|
"Genshi": 2,
|
||||||
|
"Gentoo Ebuild": 2,
|
||||||
|
"Gentoo Eclass": 2,
|
||||||
|
"Gerber Image": 1,
|
||||||
|
"Gettext Catalog": 4,
|
||||||
|
"Gherkin": 2,
|
||||||
|
"Git Attributes": 1,
|
||||||
|
"Git Config": 1,
|
||||||
|
"Glyph": 2,
|
||||||
|
"Glyph Bitmap Distribution Format": 1,
|
||||||
|
"Gnuplot": 2,
|
||||||
|
"Go": 2,
|
||||||
|
"Golo": 2,
|
||||||
|
"Gosu": 2,
|
||||||
|
"Grace": 2,
|
||||||
|
"Gradle": 1,
|
||||||
|
"Grammatical Framework": 2,
|
||||||
|
"Graph Modeling Language": 1,
|
||||||
|
"GraphQL": 1,
|
||||||
|
"Graphviz (DOT)": 1,
|
||||||
|
"Groovy": 2,
|
||||||
|
"Groovy Server Pages": 2,
|
||||||
|
"HAProxy": 1,
|
||||||
|
"HCL": 2,
|
||||||
|
"HLSL": 2,
|
||||||
|
"HTML": 3,
|
||||||
|
"HTML+Django": 3,
|
||||||
|
"HTML+ECR": 3,
|
||||||
|
"HTML+EEX": 3,
|
||||||
|
"HTML+ERB": 3,
|
||||||
|
"HTML+PHP": 3,
|
||||||
|
"HTML+Razor": 3,
|
||||||
|
"HTTP": 1,
|
||||||
|
"HXML": 1,
|
||||||
|
"Hack": 2,
|
||||||
|
"Haml": 3,
|
||||||
|
"Handlebars": 3,
|
||||||
|
"Harbour": 2,
|
||||||
|
"Haskell": 2,
|
||||||
|
"Haxe": 2,
|
||||||
|
"HiveQL": 2,
|
||||||
|
"HolyC": 2,
|
||||||
|
"Hy": 2,
|
||||||
|
"HyPhy": 2,
|
||||||
|
"IDL": 2,
|
||||||
|
"IGOR Pro": 2,
|
||||||
|
"INI": 1,
|
||||||
|
"IRC log": 1,
|
||||||
|
"Idris": 2,
|
||||||
|
"Ignore List": 1,
|
||||||
|
"Inform 7": 2,
|
||||||
|
"Inno Setup": 2,
|
||||||
|
"Io": 2,
|
||||||
|
"Ioke": 2,
|
||||||
|
"Isabelle": 2,
|
||||||
|
"Isabelle ROOT": 2,
|
||||||
|
"J": 2,
|
||||||
|
"JFlex": 2,
|
||||||
|
"JSON": 1,
|
||||||
|
"JSON with Comments": 1,
|
||||||
|
"JSON5": 1,
|
||||||
|
"JSONLD": 1,
|
||||||
|
"JSONiq": 2,
|
||||||
|
"JSX": 2,
|
||||||
|
"Jasmin": 2,
|
||||||
|
"Java": 2,
|
||||||
|
"Java Properties": 1,
|
||||||
|
"Java Server Pages": 2,
|
||||||
|
"JavaScript": 2,
|
||||||
|
"JavaScript+ERB": 2,
|
||||||
|
"Jison": 2,
|
||||||
|
"Jison Lex": 2,
|
||||||
|
"Jolie": 2,
|
||||||
|
"Jsonnet": 2,
|
||||||
|
"Julia": 2,
|
||||||
|
"Jupyter Notebook": 3,
|
||||||
|
"KRL": 2,
|
||||||
|
"KiCad Layout": 1,
|
||||||
|
"KiCad Legacy Layout": 1,
|
||||||
|
"KiCad Schematic": 1,
|
||||||
|
"Kit": 3,
|
||||||
|
"Kotlin": 2,
|
||||||
|
"LFE": 2,
|
||||||
|
"LLVM": 2,
|
||||||
|
"LOLCODE": 2,
|
||||||
|
"LSL": 2,
|
||||||
|
"LTspice Symbol": 1,
|
||||||
|
"LabVIEW": 2,
|
||||||
|
"Lasso": 2,
|
||||||
|
"Latte": 3,
|
||||||
|
"Lean": 2,
|
||||||
|
"Less": 3,
|
||||||
|
"Lex": 2,
|
||||||
|
"LilyPond": 2,
|
||||||
|
"Limbo": 2,
|
||||||
|
"Linker Script": 1,
|
||||||
|
"Linux Kernel Module": 1,
|
||||||
|
"Liquid": 3,
|
||||||
|
"Literate Agda": 2,
|
||||||
|
"Literate CoffeeScript": 2,
|
||||||
|
"Literate Haskell": 2,
|
||||||
|
"LiveScript": 2,
|
||||||
|
"Logos": 2,
|
||||||
|
"Logtalk": 2,
|
||||||
|
"LookML": 2,
|
||||||
|
"LoomScript": 2,
|
||||||
|
"Lua": 2,
|
||||||
|
"M": 2,
|
||||||
|
"M4": 2,
|
||||||
|
"M4Sugar": 2,
|
||||||
|
"MATLAB": 2,
|
||||||
|
"MAXScript": 2,
|
||||||
|
"MLIR": 2,
|
||||||
|
"MQL4": 2,
|
||||||
|
"MQL5": 2,
|
||||||
|
"MTML": 3,
|
||||||
|
"MUF": 2,
|
||||||
|
"Makefile": 2,
|
||||||
|
"Mako": 2,
|
||||||
|
"Markdown": 4,
|
||||||
|
"Marko": 3,
|
||||||
|
"Mask": 3,
|
||||||
|
"Mathematica": 2,
|
||||||
|
"Maven POM": 1,
|
||||||
|
"Max": 2,
|
||||||
|
"MediaWiki": 4,
|
||||||
|
"Mercury": 2,
|
||||||
|
"Meson": 2,
|
||||||
|
"Metal": 2,
|
||||||
|
"Microsoft Developer Studio Project": 1,
|
||||||
|
"MiniD": 2,
|
||||||
|
"Mirah": 2,
|
||||||
|
"Modelica": 2,
|
||||||
|
"Modula-2": 2,
|
||||||
|
"Modula-3": 2,
|
||||||
|
"Module Management System": 2,
|
||||||
|
"Monkey": 2,
|
||||||
|
"Moocode": 2,
|
||||||
|
"MoonScript": 2,
|
||||||
|
"Motorola 68K Assembly": 2,
|
||||||
|
"Muse": 4,
|
||||||
|
"Myghty": 2,
|
||||||
|
"NASL": 2,
|
||||||
|
"NCL": 2,
|
||||||
|
"NL": 1,
|
||||||
|
"NPM Config": 1,
|
||||||
|
"NSIS": 2,
|
||||||
|
"Nearley": 2,
|
||||||
|
"Nemerle": 2,
|
||||||
|
"NetLinx": 2,
|
||||||
|
"NetLinx+ERB": 2,
|
||||||
|
"NetLogo": 2,
|
||||||
|
"NewLisp": 2,
|
||||||
|
"Nextflow": 2,
|
||||||
|
"Nginx": 1,
|
||||||
|
"Nim": 2,
|
||||||
|
"Ninja": 1,
|
||||||
|
"Nit": 2,
|
||||||
|
"Nix": 2,
|
||||||
|
"Nu": 2,
|
||||||
|
"NumPy": 2,
|
||||||
|
"OCaml": 2,
|
||||||
|
"ObjDump": 1,
|
||||||
|
"Object Data Instance Notation": 1,
|
||||||
|
"ObjectScript": 2,
|
||||||
|
"Objective-C": 2,
|
||||||
|
"Objective-C++": 2,
|
||||||
|
"Objective-J": 2,
|
||||||
|
"Odin": 2,
|
||||||
|
"Omgrofl": 2,
|
||||||
|
"Opa": 2,
|
||||||
|
"Opal": 2,
|
||||||
|
"Open Policy Agent": 2,
|
||||||
|
"OpenCL": 2,
|
||||||
|
"OpenEdge ABL": 2,
|
||||||
|
"OpenQASM": 2,
|
||||||
|
"OpenRC runscript": 2,
|
||||||
|
"OpenSCAD": 2,
|
||||||
|
"OpenStep Property List": 1,
|
||||||
|
"OpenType Feature File": 1,
|
||||||
|
"Org": 4,
|
||||||
|
"Ox": 2,
|
||||||
|
"Oxygene": 2,
|
||||||
|
"Oz": 2,
|
||||||
|
"P4": 2,
|
||||||
|
"PHP": 2,
|
||||||
|
"PLSQL": 2,
|
||||||
|
"PLpgSQL": 2,
|
||||||
|
"POV-Ray SDL": 2,
|
||||||
|
"Pan": 2,
|
||||||
|
"Papyrus": 2,
|
||||||
|
"Parrot": 2,
|
||||||
|
"Parrot Assembly": 2,
|
||||||
|
"Parrot Internal Representation": 2,
|
||||||
|
"Pascal": 2,
|
||||||
|
"Pawn": 2,
|
||||||
|
"Pep8": 2,
|
||||||
|
"Perl": 2,
|
||||||
|
"Pic": 3,
|
||||||
|
"Pickle": 1,
|
||||||
|
"PicoLisp": 2,
|
||||||
|
"PigLatin": 2,
|
||||||
|
"Pike": 2,
|
||||||
|
"PlantUML": 1,
|
||||||
|
"Pod": 4,
|
||||||
|
"Pod 6": 4,
|
||||||
|
"PogoScript": 2,
|
||||||
|
"Pony": 2,
|
||||||
|
"PostCSS": 3,
|
||||||
|
"PostScript": 3,
|
||||||
|
"PowerBuilder": 2,
|
||||||
|
"PowerShell": 2,
|
||||||
|
"Prisma": 1,
|
||||||
|
"Processing": 2,
|
||||||
|
"Proguard": 1,
|
||||||
|
"Prolog": 2,
|
||||||
|
"Propeller Spin": 2,
|
||||||
|
"Protocol Buffer": 1,
|
||||||
|
"Public Key": 1,
|
||||||
|
"Pug": 3,
|
||||||
|
"Puppet": 2,
|
||||||
|
"Pure Data": 1,
|
||||||
|
"PureBasic": 2,
|
||||||
|
"PureScript": 2,
|
||||||
|
"Python": 2,
|
||||||
|
"Python console": 2,
|
||||||
|
"Python traceback": 1,
|
||||||
|
"QML": 2,
|
||||||
|
"QMake": 2,
|
||||||
|
"Quake": 2,
|
||||||
|
"R": 2,
|
||||||
|
"RAML": 3,
|
||||||
|
"RDoc": 4,
|
||||||
|
"REALbasic": 2,
|
||||||
|
"REXX": 2,
|
||||||
|
"RHTML": 3,
|
||||||
|
"RMarkdown": 4,
|
||||||
|
"RPC": 2,
|
||||||
|
"RPM Spec": 1,
|
||||||
|
"RUNOFF": 3,
|
||||||
|
"Racket": 2,
|
||||||
|
"Ragel": 2,
|
||||||
|
"Raku": 2,
|
||||||
|
"Rascal": 2,
|
||||||
|
"Raw token data": 1,
|
||||||
|
"Readline Config": 1,
|
||||||
|
"Reason": 2,
|
||||||
|
"Rebol": 2,
|
||||||
|
"Red": 2,
|
||||||
|
"Redcode": 2,
|
||||||
|
"Regular Expression": 1,
|
||||||
|
"Ren'Py": 2,
|
||||||
|
"RenderScript": 2,
|
||||||
|
"Rich Text Format": 3,
|
||||||
|
"Ring": 2,
|
||||||
|
"Riot": 3,
|
||||||
|
"RobotFramework": 2,
|
||||||
|
"Roff": 3,
|
||||||
|
"Roff Manpage": 3,
|
||||||
|
"Rouge": 2,
|
||||||
|
"Ruby": 2,
|
||||||
|
"Rust": 2,
|
||||||
|
"SAS": 2,
|
||||||
|
"SCSS": 3,
|
||||||
|
"SMT": 2,
|
||||||
|
"SPARQL": 1,
|
||||||
|
"SQF": 2,
|
||||||
|
"SQL": 1,
|
||||||
|
"SQLPL": 2,
|
||||||
|
"SRecode Template": 3,
|
||||||
|
"SSH Config": 1,
|
||||||
|
"STON": 1,
|
||||||
|
"SVG": 1,
|
||||||
|
"SWIG": 2,
|
||||||
|
"Sage": 2,
|
||||||
|
"SaltStack": 2,
|
||||||
|
"Sass": 3,
|
||||||
|
"Scala": 2,
|
||||||
|
"Scaml": 3,
|
||||||
|
"Scheme": 2,
|
||||||
|
"Scilab": 2,
|
||||||
|
"Self": 2,
|
||||||
|
"ShaderLab": 2,
|
||||||
|
"Shell": 2,
|
||||||
|
"ShellSession": 2,
|
||||||
|
"Shen": 2,
|
||||||
|
"Slash": 2,
|
||||||
|
"Slice": 2,
|
||||||
|
"Slim": 3,
|
||||||
|
"SmPL": 2,
|
||||||
|
"Smali": 2,
|
||||||
|
"Smalltalk": 2,
|
||||||
|
"Smarty": 2,
|
||||||
|
"Solidity": 2,
|
||||||
|
"SourcePawn": 2,
|
||||||
|
"Spline Font Database": 1,
|
||||||
|
"Squirrel": 2,
|
||||||
|
"Stan": 2,
|
||||||
|
"Standard ML": 2,
|
||||||
|
"Starlark": 2,
|
||||||
|
"Stata": 2,
|
||||||
|
"Stylus": 3,
|
||||||
|
"SubRip Text": 1,
|
||||||
|
"SugarSS": 3,
|
||||||
|
"SuperCollider": 2,
|
||||||
|
"Svelte": 3,
|
||||||
|
"Swift": 2,
|
||||||
|
"SystemVerilog": 2,
|
||||||
|
"TI Program": 2,
|
||||||
|
"TLA": 2,
|
||||||
|
"TOML": 1,
|
||||||
|
"TSQL": 2,
|
||||||
|
"TSX": 2,
|
||||||
|
"TXL": 2,
|
||||||
|
"Tcl": 2,
|
||||||
|
"Tcsh": 2,
|
||||||
|
"TeX": 3,
|
||||||
|
"Tea": 3,
|
||||||
|
"Terra": 2,
|
||||||
|
"Texinfo": 4,
|
||||||
|
"Text": 4,
|
||||||
|
"Textile": 4,
|
||||||
|
"Thrift": 2,
|
||||||
|
"Turing": 2,
|
||||||
|
"Turtle": 1,
|
||||||
|
"Twig": 3,
|
||||||
|
"Type Language": 1,
|
||||||
|
"TypeScript": 2,
|
||||||
|
"Unified Parallel C": 2,
|
||||||
|
"Unity3D Asset": 1,
|
||||||
|
"Unix Assembly": 2,
|
||||||
|
"Uno": 2,
|
||||||
|
"UnrealScript": 2,
|
||||||
|
"UrWeb": 2,
|
||||||
|
"V": 2,
|
||||||
|
"VBA": 2,
|
||||||
|
"VBScript": 2,
|
||||||
|
"VCL": 2,
|
||||||
|
"VHDL": 2,
|
||||||
|
"Vala": 2,
|
||||||
|
"Verilog": 2,
|
||||||
|
"Vim Snippet": 3,
|
||||||
|
"Vim script": 2,
|
||||||
|
"Visual Basic .NET": 2,
|
||||||
|
"Volt": 2,
|
||||||
|
"Vue": 3,
|
||||||
|
"Wavefront Material": 1,
|
||||||
|
"Wavefront Object": 1,
|
||||||
|
"Web Ontology Language": 1,
|
||||||
|
"WebAssembly": 2,
|
||||||
|
"WebIDL": 2,
|
||||||
|
"WebVTT": 1,
|
||||||
|
"Wget Config": 1,
|
||||||
|
"Windows Registry Entries": 1,
|
||||||
|
"Wollok": 2,
|
||||||
|
"World of Warcraft Addon Data": 1,
|
||||||
|
"X BitMap": 1,
|
||||||
|
"X Font Directory Index": 1,
|
||||||
|
"X PixMap": 1,
|
||||||
|
"X10": 2,
|
||||||
|
"XC": 2,
|
||||||
|
"XCompose": 1,
|
||||||
|
"XML": 1,
|
||||||
|
"XML Property List": 1,
|
||||||
|
"XPages": 1,
|
||||||
|
"XProc": 2,
|
||||||
|
"XQuery": 2,
|
||||||
|
"XS": 2,
|
||||||
|
"XSLT": 2,
|
||||||
|
"Xojo": 2,
|
||||||
|
"Xtend": 2,
|
||||||
|
"YAML": 1,
|
||||||
|
"YANG": 1,
|
||||||
|
"YARA": 2,
|
||||||
|
"YASnippet": 3,
|
||||||
|
"Yacc": 2,
|
||||||
|
"ZAP": 2,
|
||||||
|
"ZIL": 2,
|
||||||
|
"Zeek": 2,
|
||||||
|
"ZenScript": 2,
|
||||||
|
"Zephir": 2,
|
||||||
|
"Zig": 2,
|
||||||
|
"Zimpl": 2,
|
||||||
|
"cURL Config": 1,
|
||||||
|
"desktop": 1,
|
||||||
|
"dircolors": 1,
|
||||||
|
"eC": 2,
|
||||||
|
"edn": 1,
|
||||||
|
"fish": 2,
|
||||||
|
"mIRC Script": 2,
|
||||||
|
"mcfunction": 2,
|
||||||
|
"mupad": 2,
|
||||||
|
"nanorc": 1,
|
||||||
|
"nesC": 2,
|
||||||
|
"ooc": 2,
|
||||||
|
"q": 2,
|
||||||
|
"reStructuredText": 4,
|
||||||
|
"sed": 2,
|
||||||
|
"wdl": 2,
|
||||||
|
"wisp": 2,
|
||||||
|
"xBase": 2,
|
||||||
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
// Code generated by github.com/go-enry/go-enry/v2/internal/code-generator DO NOT EDIT.
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
// Extracted from github/linguist commit: 40992ba7f86889f80dfed3ba95e11e1082200bad
|
||||||
|
|
||||||
package data
|
package data
|
||||||
|
|
||||||
|
@ -19,8 +19,11 @@ var VendorMatchers = substring.Or(
|
||||||
substring.Regexp(`(^|/)ltsugar.m4`),
|
substring.Regexp(`(^|/)ltsugar.m4`),
|
||||||
substring.Regexp(`(^|/)ltversion.m4`),
|
substring.Regexp(`(^|/)ltversion.m4`),
|
||||||
substring.Regexp(`(^|/)lt~obsolete.m4`),
|
substring.Regexp(`(^|/)lt~obsolete.m4`),
|
||||||
|
substring.Regexp(`dotnet-install\.(ps1|sh)$`),
|
||||||
substring.Regexp(`cpplint.py`),
|
substring.Regexp(`cpplint.py`),
|
||||||
substring.Regexp(`node_modules/`),
|
substring.Regexp(`node_modules/`),
|
||||||
|
substring.Regexp(`(^|/)\.yarn/releases/`),
|
||||||
|
substring.Regexp(`(^|/)_esy$`),
|
||||||
substring.Regexp(`bower_components/`),
|
substring.Regexp(`bower_components/`),
|
||||||
substring.Regexp(`^rebar$`),
|
substring.Regexp(`^rebar$`),
|
||||||
substring.Regexp(`erlang.mk`),
|
substring.Regexp(`erlang.mk`),
|
|
@ -11,6 +11,6 @@
|
||||||
Upstream Linguist YAML files are used to generate datastructures for data
|
Upstream Linguist YAML files are used to generate datastructures for data
|
||||||
package.
|
package.
|
||||||
*/
|
*/
|
||||||
package enry // import "github.com/src-d/enry/v2"
|
package enry // import "github.com/go-enry/go-enry/v2"
|
||||||
|
|
||||||
//go:generate make code-generate
|
//go:generate make code-generate
|
8
vendor/github.com/src-d/enry/v2/go.mod → vendor/github.com/go-enry/go-enry/v2/go.mod
generated
vendored
8
vendor/github.com/src-d/enry/v2/go.mod → vendor/github.com/go-enry/go-enry/v2/go.mod
generated
vendored
|
@ -1,11 +1,11 @@
|
||||||
module github.com/src-d/enry/v2
|
module github.com/go-enry/go-enry/v2
|
||||||
|
|
||||||
go 1.12
|
go 1.14
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/src-d/go-oniguruma v1.1.0
|
github.com/go-enry/go-oniguruma v1.2.0
|
||||||
github.com/stretchr/testify v1.3.0
|
github.com/stretchr/testify v1.3.0
|
||||||
github.com/toqueteos/trie v1.0.0 // indirect
|
github.com/toqueteos/trie v1.0.0 // indirect
|
||||||
gopkg.in/toqueteos/substring.v1 v1.0.2
|
gopkg.in/toqueteos/substring.v1 v1.0.2
|
||||||
gopkg.in/yaml.v2 v2.2.2
|
gopkg.in/yaml.v2 v2.2.8
|
||||||
)
|
)
|
9
vendor/github.com/src-d/enry/v2/go.sum → vendor/github.com/go-enry/go-enry/v2/go.sum
generated
vendored
9
vendor/github.com/src-d/enry/v2/go.sum → vendor/github.com/go-enry/go-enry/v2/go.sum
generated
vendored
|
@ -1,9 +1,10 @@
|
||||||
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
|
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
|
github.com/go-enry/go-oniguruma v1.2.0 h1:oBO9XC1IDT9+AoWW5oFsa/7gFeOPacEqDbyXZKWXuDs=
|
||||||
|
github.com/go-enry/go-oniguruma v1.2.0/go.mod h1:bWDhYP+S6xZQgiRL7wlTScFYBe023B6ilRZbCAD5Hf4=
|
||||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||||
github.com/src-d/go-oniguruma v1.1.0 h1:EG+Nm5n2JqWUaCjtM0NtutPxU7ZN5Tp50GWrrV8bTww=
|
github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4=
|
||||||
github.com/src-d/go-oniguruma v1.1.0/go.mod h1:chVbff8kcVtmrhxtZ3yBVLLquXbzCS6DrxQaAK/CeqM=
|
|
||||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||||
github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
|
github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
|
||||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||||
|
@ -13,5 +14,5 @@ gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/toqueteos/substring.v1 v1.0.2 h1:urLqCeMm6x/eTuQa1oZerNw8N1KNOIp5hD5kGL7lFsE=
|
gopkg.in/toqueteos/substring.v1 v1.0.2 h1:urLqCeMm6x/eTuQa1oZerNw8N1KNOIp5hD5kGL7lFsE=
|
||||||
gopkg.in/toqueteos/substring.v1 v1.0.2/go.mod h1:Eb2Z1UYehlVK8LYW2WBVR2rwbujsz3aX8XDrM1vbNew=
|
gopkg.in/toqueteos/substring.v1 v1.0.2/go.mod h1:Eb2Z1UYehlVK8LYW2WBVR2rwbujsz3aX8XDrM1vbNew=
|
||||||
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
|
gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10=
|
||||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
|
@ -1,3 +1,5 @@
|
||||||
|
// +build flex
|
||||||
|
|
||||||
package flex
|
package flex
|
||||||
|
|
||||||
// #include <stdlib.h>
|
// #include <stdlib.h>
|
|
@ -5,7 +5,7 @@ package tokenizer
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
|
||||||
"github.com/src-d/enry/v2/regex"
|
"github.com/go-enry/go-enry/v2/regex"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Tokenize returns lexical tokens from content. The tokens returned match what
|
// Tokenize returns lexical tokens from content. The tokens returned match what
|
||||||
|
@ -18,10 +18,6 @@ func Tokenize(content []byte) []string {
|
||||||
content = content[:ByteLimit]
|
content = content[:ByteLimit]
|
||||||
}
|
}
|
||||||
|
|
||||||
// Copy the input so that changes wrought by the tokenization steps do not
|
|
||||||
// modify the caller's copy of the input. See #196.
|
|
||||||
content = append([]byte(nil), content...)
|
|
||||||
|
|
||||||
tokens := make([][]byte, 0, 50)
|
tokens := make([][]byte, 0, 50)
|
||||||
for _, extract := range extractTokens {
|
for _, extract := range extractTokens {
|
||||||
var extractedTokens [][]byte
|
var extractedTokens [][]byte
|
||||||
|
@ -162,7 +158,7 @@ func extractAndReplaceSGML(content []byte) ([]byte, [][]byte) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
token := append(match[1], '>')
|
token := append(append([]byte(nil), match[1]...), '>')
|
||||||
SGMLTokens = append(SGMLTokens, token)
|
SGMLTokens = append(SGMLTokens, token)
|
||||||
attributes := getSGMLAttributes(match[0])
|
attributes := getSGMLAttributes(match[0])
|
||||||
SGMLTokens = append(SGMLTokens, attributes...)
|
SGMLTokens = append(SGMLTokens, attributes...)
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
package tokenizer
|
package tokenizer
|
||||||
|
|
||||||
import "github.com/src-d/enry/v2/internal/tokenizer/flex"
|
import "github.com/go-enry/go-enry/v2/internal/tokenizer/flex"
|
||||||
|
|
||||||
// Tokenize returns lexical tokens from content. The tokens returned match what
|
// Tokenize returns lexical tokens from content. The tokens returned match what
|
||||||
// the Linguist library returns. At most the first ByteLimit bytes of content are tokenized.
|
// the Linguist library returns. At most the first ByteLimit bytes of content are tokenized.
|
|
@ -3,7 +3,7 @@
|
||||||
package regex
|
package regex
|
||||||
|
|
||||||
import (
|
import (
|
||||||
rubex "github.com/src-d/go-oniguruma"
|
rubex "github.com/go-enry/go-oniguruma"
|
||||||
)
|
)
|
||||||
|
|
||||||
type EnryRegexp = *rubex.Regexp
|
type EnryRegexp = *rubex.Regexp
|
|
@ -5,7 +5,7 @@ import (
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/src-d/enry/v2/data"
|
"github.com/go-enry/go-enry/v2/data"
|
||||||
)
|
)
|
||||||
|
|
||||||
const binSniffLen = 8000
|
const binSniffLen = 8000
|
||||||
|
@ -80,5 +80,9 @@ func GetColor(language string) string {
|
||||||
return color
|
return color
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if color, ok := data.LanguagesColor[GetLanguageGroup(language)]; ok {
|
||||||
|
return color
|
||||||
|
}
|
||||||
|
|
||||||
return "#cccccc"
|
return "#cccccc"
|
||||||
}
|
}
|
|
@ -1,5 +1,4 @@
|
||||||
## go-oniguruma
|
# go-oniguruma ![Test](https://github.com/go-enry/go-oniguruma/workflows/Test/badge.svg)
|
||||||
<a href="https://travis-ci.org/src-d/go-oniguruma"><img alt="Build Status" src="https://travis-ci.org/src-d/go-oniguruma.svg?branch=master" /></a>
|
|
||||||
|
|
||||||
This repository is a fork of [moovweb/rubex](https://github.com/moovweb/rubex/tree/go1) - a simple regular expression library (based on [oniguruma](https://github.com/kkos/oniguruma)) that supports Ruby's regex syntax.
|
This repository is a fork of [moovweb/rubex](https://github.com/moovweb/rubex/tree/go1) - a simple regular expression library (based on [oniguruma](https://github.com/kkos/oniguruma)) that supports Ruby's regex syntax.
|
||||||
|
|
||||||
|
@ -8,7 +7,9 @@ The _rubex_ was originally created by Zhigang Chen (zhigang.chen@moovweb.com or
|
||||||
By the benchmark tests in regexp, the library is 40% to 10X faster than Regexp on all but one test. Unlike Go's regexp, this library supports named capture groups and also allow `"\\1"` and `"\\k<name>"` in replacement strings.
|
By the benchmark tests in regexp, the library is 40% to 10X faster than Regexp on all but one test. Unlike Go's regexp, this library supports named capture groups and also allow `"\\1"` and `"\\k<name>"` in replacement strings.
|
||||||
The library calls the _oniguruma_ regex library for regex pattern searching. All replacement code is done in Go.
|
The library calls the _oniguruma_ regex library for regex pattern searching. All replacement code is done in Go.
|
||||||
|
|
||||||
### Install all (_oniguruma_ and _rubex_):
|
Install
|
||||||
|
-------
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
# linux (debian/ubuntu/...)
|
# linux (debian/ubuntu/...)
|
||||||
sudo apt-get install libonig-dev
|
sudo apt-get install libonig-dev
|
||||||
|
@ -16,5 +17,10 @@ sudo apt-get install libonig-dev
|
||||||
# osx (homebrew)
|
# osx (homebrew)
|
||||||
brew install oniguruma
|
brew install oniguruma
|
||||||
|
|
||||||
go install -i .
|
go get github.com/go-enry/go-oniguruma
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
License
|
||||||
|
-------
|
||||||
|
Apache License Version 2.0, see [LICENSE](LICENSE)
|
3
vendor/github.com/go-enry/go-oniguruma/go.mod
generated
vendored
Normal file
3
vendor/github.com/go-enry/go-oniguruma/go.mod
generated
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
module github.com/go-enry/go-oniguruma
|
||||||
|
|
||||||
|
go 1.14
|
61
vendor/github.com/src-d/enry/v2/CONTRIBUTING.md
generated
vendored
61
vendor/github.com/src-d/enry/v2/CONTRIBUTING.md
generated
vendored
|
@ -1,61 +0,0 @@
|
||||||
# source{d} Contributing Guidelines
|
|
||||||
|
|
||||||
source{d} projects accept contributions via GitHub pull requests.
|
|
||||||
This document outlines some of the
|
|
||||||
conventions on development workflow, commit message formatting, contact points,
|
|
||||||
and other resources to make it easier to get your contribution accepted.
|
|
||||||
|
|
||||||
## Certificate of Origin
|
|
||||||
|
|
||||||
By contributing to this project, you agree to the [Developer Certificate of
|
|
||||||
Origin (DCO)](DCO). This document was created by the Linux Kernel community and is a
|
|
||||||
simple statement that you, as a contributor, have the legal right to make the
|
|
||||||
contribution.
|
|
||||||
|
|
||||||
In order to show your agreement with the DCO you should include at the end of the commit message,
|
|
||||||
the following line: `Signed-off-by: John Doe <john.doe@example.com>`, using your real name.
|
|
||||||
|
|
||||||
This can be done easily using the [`-s`](https://github.com/git/git/blob/b2c150d3aa82f6583b9aadfecc5f8fa1c74aca09/Documentation/git-commit.txt#L154-L161) flag on the `git commit`.
|
|
||||||
|
|
||||||
If you find yourself pushed a few commits without `Signed-off-by`, you can still add it afterwards. We wrote a manual which can help: [fix-DCO.md](https://github.com/src-d/guide/blob/master/developer-community/fix-DCO.md).
|
|
||||||
|
|
||||||
## Support Channels
|
|
||||||
|
|
||||||
The official support channels, for both users and contributors, are:
|
|
||||||
|
|
||||||
- GitHub issues: each repository has its own list of issues.
|
|
||||||
- Slack: join the [source{d} Slack](https://join.slack.com/t/sourced-community/shared_invite/enQtMjc4Njk5MzEyNzM2LTFjNzY4NjEwZGEwMzRiNTM4MzRlMzQ4MmIzZjkwZmZlM2NjODUxZmJjNDI1OTcxNDAyMmZlNmFjODZlNTg0YWM) community.
|
|
||||||
|
|
||||||
*Before opening a new issue or submitting a new pull request, it's helpful to
|
|
||||||
search the project - it's likely that another user has already reported the
|
|
||||||
issue you're facing, or it's a known issue that we're already aware of.
|
|
||||||
|
|
||||||
|
|
||||||
## How to Contribute
|
|
||||||
|
|
||||||
Pull Requests (PRs) are the main and exclusive way to contribute code to source{d} projects.
|
|
||||||
In order for a PR to be accepted it needs to pass this list of requirements:
|
|
||||||
|
|
||||||
- The contribution must be correctly explained with natural language and providing a minimum working example that reproduces it.
|
|
||||||
- All PRs must be written idiomaticly:
|
|
||||||
- for Go: formatted according to [gofmt](https://golang.org/cmd/gofmt/), and without any warnings from [go lint](https://github.com/golang/lint) nor [go vet](https://golang.org/cmd/vet/)
|
|
||||||
- for other languages, similar constraints apply.
|
|
||||||
- They should in general include tests, and those shall pass.
|
|
||||||
- If the PR is a bug fix, it has to include a new unit test that fails before the patch is merged.
|
|
||||||
- If the PR is a new feature, it has to come with a suite of unit tests, that tests the new functionality.
|
|
||||||
- In any case, all the PRs have to pass the personal evaluation of at least one of the [maintainers](MAINTAINERS) of the project.
|
|
||||||
|
|
||||||
|
|
||||||
### Format of the commit message
|
|
||||||
|
|
||||||
Every commit message should describe what was changed, under which context and, if applicable, the GitHub issue it relates to:
|
|
||||||
|
|
||||||
```
|
|
||||||
plumbing: packp, Skip argument validations for unknown capabilities. Fixes #623
|
|
||||||
```
|
|
||||||
|
|
||||||
The format can be described more formally as follows:
|
|
||||||
|
|
||||||
```
|
|
||||||
<package>: <subpackage>, <what changed>. [Fixes #<issue-number>]
|
|
||||||
```
|
|
25
vendor/github.com/src-d/enry/v2/DCO
generated
vendored
25
vendor/github.com/src-d/enry/v2/DCO
generated
vendored
|
@ -1,25 +0,0 @@
|
||||||
Developer's Certificate of Origin 1.1
|
|
||||||
|
|
||||||
By making a contribution to this project, I certify that:
|
|
||||||
|
|
||||||
(a) The contribution was created in whole or in part by me and I
|
|
||||||
have the right to submit it under the open source license
|
|
||||||
indicated in the file; or
|
|
||||||
|
|
||||||
(b) The contribution is based upon previous work that, to the best
|
|
||||||
of my knowledge, is covered under an appropriate open source
|
|
||||||
license and I have the right under that license to submit that
|
|
||||||
work with modifications, whether created in whole or in part
|
|
||||||
by me, under the same open source license (unless I am
|
|
||||||
permitted to submit under a different license), as indicated
|
|
||||||
in the file; or
|
|
||||||
|
|
||||||
(c) The contribution was provided directly to me by some other
|
|
||||||
person who certified (a), (b) or (c) and I have not modified
|
|
||||||
it.
|
|
||||||
|
|
||||||
(d) I understand and agree that this project and the contribution
|
|
||||||
are public and that a record of the contribution (including all
|
|
||||||
personal information I submit with it, including my sign-off) is
|
|
||||||
maintained indefinitely and may be redistributed consistent with
|
|
||||||
this project or the open source license(s) involved.
|
|
1
vendor/github.com/src-d/enry/v2/MAINTAINERS
generated
vendored
1
vendor/github.com/src-d/enry/v2/MAINTAINERS
generated
vendored
|
@ -1 +0,0 @@
|
||||||
Alexander Bezzubov <alex@sourced.tech> (@bzz)
|
|
328
vendor/github.com/src-d/enry/v2/README.md
generated
vendored
328
vendor/github.com/src-d/enry/v2/README.md
generated
vendored
|
@ -1,328 +0,0 @@
|
||||||
# enry [![GoDoc](https://godoc.org/github.com/src-d/enry?status.svg)](https://godoc.org/github.com/src-d/enry) [![Build Status](https://travis-ci.com/src-d/enry.svg?branch=master)](https://travis-ci.com/src-d/enry) [![codecov](https://codecov.io/gh/src-d/enry/branch/master/graph/badge.svg)](https://codecov.io/gh/src-d/enry)
|
|
||||||
|
|
||||||
File programming language detector and toolbox to ignore binary or vendored files. *enry*, started as a port to _Go_ of the original [linguist](https://github.com/github/linguist) _Ruby_ library, that has an improved *2x performance*.
|
|
||||||
|
|
||||||
* [Installation](#installation)
|
|
||||||
* [Examples](#examples)
|
|
||||||
* [CLI](#cli)
|
|
||||||
* [Java bindings](#java-bindings)
|
|
||||||
* [Python bindings](#python-bindings)
|
|
||||||
* [Divergences from linguist](#divergences-from-linguist)
|
|
||||||
* [Benchmarks](#benchmarks)
|
|
||||||
* [Why Enry?](#why-enry)
|
|
||||||
* [Development](#development)
|
|
||||||
* [Sync with github/linguist upstream](#sync-with-githublinguist-upstream)
|
|
||||||
* [Misc](#misc)
|
|
||||||
* [Benchmark](#benchmark)
|
|
||||||
* [Faster regexp engine (optional)](#faster-regexp-engine-optional)
|
|
||||||
* [License](#license)
|
|
||||||
|
|
||||||
Installation
|
|
||||||
------------
|
|
||||||
|
|
||||||
The recommended way to install enry is to either [download a release](https://github.com/src-d/enry/releases) or
|
|
||||||
|
|
||||||
```
|
|
||||||
go get github.com/src-d/enry/cmd/enry
|
|
||||||
```
|
|
||||||
|
|
||||||
This project is now part of [source{d} Engine](https://sourced.tech/engine),
|
|
||||||
which provides the simplest way to get started with a single command.
|
|
||||||
Visit [sourced.tech/engine](https://sourced.tech/engine) for more information.
|
|
||||||
|
|
||||||
|
|
||||||
Examples
|
|
||||||
------------
|
|
||||||
|
|
||||||
```go
|
|
||||||
lang, safe := enry.GetLanguageByExtension("foo.go")
|
|
||||||
fmt.Println(lang, safe)
|
|
||||||
// result: Go true
|
|
||||||
|
|
||||||
lang, safe := enry.GetLanguageByContent("foo.m", []byte("<matlab-code>"))
|
|
||||||
fmt.Println(lang, safe)
|
|
||||||
// result: Matlab true
|
|
||||||
|
|
||||||
lang, safe := enry.GetLanguageByContent("bar.m", []byte("<objective-c-code>"))
|
|
||||||
fmt.Println(lang, safe)
|
|
||||||
// result: Objective-C true
|
|
||||||
|
|
||||||
// all strategies together
|
|
||||||
lang := enry.GetLanguage("foo.cpp", []byte("<cpp-code>"))
|
|
||||||
// result: C++ true
|
|
||||||
```
|
|
||||||
|
|
||||||
Note that the returned boolean value `safe` is set either to `true`, if there is only one possible language detected, or to `false` otherwise.
|
|
||||||
|
|
||||||
To get a list of possible languages for a given file, you can use the plural version of the detecting functions.
|
|
||||||
|
|
||||||
```go
|
|
||||||
langs := enry.GetLanguages("foo.h", []byte("<cpp-code>"))
|
|
||||||
// result: []string{"C", "C++", "Objective-C}
|
|
||||||
|
|
||||||
langs := enry.GetLanguagesByExtension("foo.asc", []byte("<content>"), nil)
|
|
||||||
// result: []string{"AGS Script", "AsciiDoc", "Public Key"}
|
|
||||||
|
|
||||||
langs := enry.GetLanguagesByFilename("Gemfile", []byte("<content>"), []string{})
|
|
||||||
// result: []string{"Ruby"}
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
CLI
|
|
||||||
------------
|
|
||||||
|
|
||||||
You can use enry as a command,
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ enry --help
|
|
||||||
enry v2.0.0 build: 05-08-2019_20_40_35 commit: 6ccf0b6, based on linguist commit: e456098
|
|
||||||
enry, A simple (and faster) implementation of github/linguist
|
|
||||||
usage: enry [-mode=(file|line|byte)] [-prog] <path>
|
|
||||||
enry [-mode=(file|line|byte)] [-prog] [-json] [-breakdown] <path>
|
|
||||||
enry [-mode=(file|line|byte)] [-prog] [-json] [-breakdown]
|
|
||||||
enry [-version]
|
|
||||||
```
|
|
||||||
|
|
||||||
and on repository root, it'll return an output similar to *linguist*'s output,
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ enry
|
|
||||||
97.71% Go
|
|
||||||
1.60% C
|
|
||||||
0.31% Shell
|
|
||||||
0.22% Java
|
|
||||||
0.07% Ruby
|
|
||||||
0.05% Makefile
|
|
||||||
0.04% Scala
|
|
||||||
0.01% Gnuplot
|
|
||||||
```
|
|
||||||
|
|
||||||
but not only the output; its flags are also the same as *linguist*'s ones,
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ enry --breakdown
|
|
||||||
97.71% Go
|
|
||||||
1.60% C
|
|
||||||
0.31% Shell
|
|
||||||
0.22% Java
|
|
||||||
0.07% Ruby
|
|
||||||
0.05% Makefile
|
|
||||||
0.04% Scala
|
|
||||||
0.01% Gnuplot
|
|
||||||
|
|
||||||
Scala
|
|
||||||
java/build.sbt
|
|
||||||
java/project/plugins.sbt
|
|
||||||
|
|
||||||
Java
|
|
||||||
java/src/main/java/tech/sourced/enry/Enry.java
|
|
||||||
java/src/main/java/tech/sourced/enry/GoUtils.java
|
|
||||||
java/src/main/java/tech/sourced/enry/Guess.java
|
|
||||||
java/src/test/java/tech/sourced/enry/EnryTest.java
|
|
||||||
|
|
||||||
Makefile
|
|
||||||
Makefile
|
|
||||||
java/Makefile
|
|
||||||
|
|
||||||
Go
|
|
||||||
benchmark_test.go
|
|
||||||
```
|
|
||||||
|
|
||||||
even the JSON flag,
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ enry --json | jq .
|
|
||||||
{
|
|
||||||
"C": [
|
|
||||||
"internal/tokenizer/flex/lex.linguist_yy.c",
|
|
||||||
"internal/tokenizer/flex/lex.linguist_yy.h",
|
|
||||||
"internal/tokenizer/flex/linguist.h",
|
|
||||||
"python/_c_enry.c",
|
|
||||||
"python/enry.c"
|
|
||||||
],
|
|
||||||
"Gnuplot": [
|
|
||||||
"benchmarks/plot-histogram.gp"
|
|
||||||
],
|
|
||||||
"Go": [
|
|
||||||
"benchmark_test.go",
|
|
||||||
```
|
|
||||||
|
|
||||||
Note that enry's CLI **_doesn't need a git repository to work_**, which is intentionally different from the linguist.
|
|
||||||
|
|
||||||
## Java bindings
|
|
||||||
|
|
||||||
|
|
||||||
Generated Java bindings using a C shared library and JNI are available under [`java`](https://github.com/src-d/enry/blob/master/java) and published on Maven at [tech.sourced:enry-java](https://mvnrepository.com/artifact/tech.sourced/enry-java) for macOS and linux.
|
|
||||||
|
|
||||||
|
|
||||||
## Python bindings
|
|
||||||
Generated Python bindings using a C shared library and cffi are not available yet and are WIP under [src-d/enry#154](https://github.com/src-d/enry/issues/154).
|
|
||||||
|
|
||||||
Divergences from linguist
|
|
||||||
------------
|
|
||||||
|
|
||||||
The `enry` library is based on the data from `github/linguist` version **v7.5.1**.
|
|
||||||
|
|
||||||
As opposed to linguist, `enry` [CLI tool](#cli) does *not* require a full Git repository in the filesystem in order to report languages.
|
|
||||||
|
|
||||||
Parsing [linguist/samples](https://github.com/github/linguist/tree/master/samples) the following `enry` results are different from linguist:
|
|
||||||
|
|
||||||
* [Heuristics for ".es" extension](https://github.com/github/linguist/blob/e761f9b013e5b61161481fcb898b59721ee40e3d/lib/linguist/heuristics.yml#L103) in JavaScript could not be parsed, due to unsupported backreference in RE2 regexp engine.
|
|
||||||
|
|
||||||
* [Heuristics for ".rno" extension](https://github.com/github/linguist/blob/3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d/lib/linguist/heuristics.yml#L365) in RUNOFF could not be parsed, due to unsupported lookahead in RE2 regexp engine.
|
|
||||||
|
|
||||||
* As of [Linguist v5.3.2](https://github.com/github/linguist/releases/tag/v5.3.2) it is using [flex-based scanner in C for tokenization](https://github.com/github/linguist/pull/3846). Enry still uses [extract_token](https://github.com/github/linguist/pull/3846/files#diff-d5179df0b71620e3fac4535cd1368d15L60) regex-based algorithm. See [#193](https://github.com/src-d/enry/issues/193).
|
|
||||||
|
|
||||||
* Bayesian classifier can't distinguish "SQL" from "PLpgSQL. See [#194](https://github.com/src-d/enry/issues/194).
|
|
||||||
|
|
||||||
* Detection of [generated files](https://github.com/github/linguist/blob/bf95666fc15e49d556f2def4d0a85338423c25f3/lib/linguist/generated.rb#L53) is not supported yet.
|
|
||||||
(Thus they are not excluded from CLI output). See [#213](https://github.com/src-d/enry/issues/213).
|
|
||||||
|
|
||||||
* XML detection strategy is not implemented. See [#192](https://github.com/src-d/enry/issues/192).
|
|
||||||
|
|
||||||
* Overriding languages and types though `.gitattributes` is not yet supported. See [#18](https://github.com/src-d/enry/issues/18).
|
|
||||||
|
|
||||||
* `enry` CLI output does NOT exclude `.gitignore`ed files and git submodules, as linguist does
|
|
||||||
|
|
||||||
In all the cases above that have an issue number - we plan to update enry to match Linguist behavior.
|
|
||||||
|
|
||||||
|
|
||||||
Benchmarks
|
|
||||||
------------
|
|
||||||
|
|
||||||
Enry's language detection has been compared with Linguist's one. In order to do that, Linguist's project directory [*linguist/samples*](https://github.com/github/linguist/tree/master/samples) was used as a set of files to run benchmarks against.
|
|
||||||
|
|
||||||
We got these results:
|
|
||||||
|
|
||||||
![histogram](benchmarks/histogram/distribution.png)
|
|
||||||
|
|
||||||
The histogram shows the number of files detected (y-axis) per time interval bucket (x-axis). As one can see, most of the files were detected faster by enry.
|
|
||||||
|
|
||||||
We found few cases where enry turns slower than linguist due to
|
|
||||||
Go regexp engine being slower than Ruby's, based on [oniguruma](https://github.com/kkos/oniguruma) library, written in C.
|
|
||||||
|
|
||||||
See [instructions](#misc) for running enry with oniguruma.
|
|
||||||
|
|
||||||
|
|
||||||
Why Enry?
|
|
||||||
------------
|
|
||||||
|
|
||||||
In the movie [My Fair Lady](https://en.wikipedia.org/wiki/My_Fair_Lady), [Professor Henry Higgins](http://www.imdb.com/character/ch0011719/?ref_=tt_cl_t2) is one of the main characters. Henry is a linguist and at the very beginning of the movie enjoys guessing the origin of people based on their accent.
|
|
||||||
|
|
||||||
"Enry Iggins" is how [Eliza Doolittle](http://www.imdb.com/character/ch0011720/?ref_=tt_cl_t1), [pronounces](https://www.youtube.com/watch?v=pwNKyTktDIE) the name of the Professor during the first half of the movie.
|
|
||||||
|
|
||||||
## Development
|
|
||||||
|
|
||||||
To build enry's CLI run:
|
|
||||||
|
|
||||||
make build
|
|
||||||
|
|
||||||
this will generate a binary in the project's root directory called `enry`.
|
|
||||||
|
|
||||||
To run the tests:
|
|
||||||
|
|
||||||
make test
|
|
||||||
|
|
||||||
|
|
||||||
### Sync with github/linguist upstream
|
|
||||||
|
|
||||||
*enry* re-uses parts of the original [github/linguist](https://github.com/github/linguist) to generate internal data structures.
|
|
||||||
In order to update to the latest release of linguist do:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ git clone https://github.com/github/linguist.git .linguist
|
|
||||||
$ cd .linguist; git checkout <release-tag>; cd ..
|
|
||||||
|
|
||||||
# put the new release's commit sha in the generator_test.go (to re-generate .gold test fixtures)
|
|
||||||
# https://github.com/src-d/enry/blob/13d3d66d37a87f23a013246a1b0678c9ee3d524b/internal/code-generator/generator/generator_test.go#L18
|
|
||||||
|
|
||||||
$ make code-generate
|
|
||||||
```
|
|
||||||
|
|
||||||
To stay in sync, enry needs to be updated when a new release of the linguist includes changes to any of the following files:
|
|
||||||
|
|
||||||
* [languages.yml](https://github.com/github/linguist/blob/master/lib/linguist/languages.yml)
|
|
||||||
* [heuristics.yml](https://github.com/github/linguist/blob/master/lib/linguist/heuristics.yml)
|
|
||||||
* [vendor.yml](https://github.com/github/linguist/blob/master/lib/linguist/vendor.yml)
|
|
||||||
* [documentation.yml](https://github.com/github/linguist/blob/master/lib/linguist/documentation.yml)
|
|
||||||
|
|
||||||
There is no automation for detecting the changes in the linguist project, so this process above has to be done manually from time to time.
|
|
||||||
|
|
||||||
When submitting a pull request syncing up to a new release, please make sure it only contains the changes in
|
|
||||||
the generated files (in [data](https://github.com/src-d/enry/blob/master/data) subdirectory).
|
|
||||||
|
|
||||||
Separating all the necessary "manual" code changes to a different PR that includes some background description and an update to the documentation on ["divergences from linguist"](##divergences-from-linguist) is very much appreciated as it simplifies the maintenance (review/release notes/etc).
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Misc
|
|
||||||
|
|
||||||
<details>
|
|
||||||
|
|
||||||
### Benchmark
|
|
||||||
|
|
||||||
All benchmark scripts are in [*benchmarks*](https://github.com/src-d/enry/blob/master/benchmarks) directory.
|
|
||||||
|
|
||||||
|
|
||||||
#### Dependencies
|
|
||||||
As benchmarks depend on Ruby and Github-Linguist gem make sure you have:
|
|
||||||
- Ruby (e.g using [`rbenv`](https://github.com/rbenv/rbenv)), [`bundler`](https://bundler.io/) installed
|
|
||||||
- Docker
|
|
||||||
- [native dependencies](https://github.com/github/linguist/#dependencies) installed
|
|
||||||
- Build the gem `cd .linguist && bundle install && rake build_gem && cd -`
|
|
||||||
- Install it `gem install --no-rdoc --no-ri --local .linguist/github-linguist-*.gem`
|
|
||||||
|
|
||||||
|
|
||||||
#### Quick benchmark
|
|
||||||
To run quicker benchmarks you can either:
|
|
||||||
|
|
||||||
make benchmarks
|
|
||||||
|
|
||||||
to get average times for the main detection function and strategies for the whole samples set or:
|
|
||||||
|
|
||||||
make benchmarks-samples
|
|
||||||
|
|
||||||
if you want to see measures per sample file.
|
|
||||||
|
|
||||||
|
|
||||||
#### Full benchmark
|
|
||||||
If you want to reproduce the same benchmarks as reported above:
|
|
||||||
- Make sure all [dependencies](#benchmark-dependencies) are installed
|
|
||||||
- Install [gnuplot](http://gnuplot.info) (in order to plot the histogram)
|
|
||||||
- Run `ENRY_TEST_REPO="$PWD/.linguist" benchmarks/run.sh` (takes ~15h)
|
|
||||||
|
|
||||||
It will run the benchmarks for enry and linguist, parse the output, create csv files and plot the histogram.
|
|
||||||
|
|
||||||
### Faster regexp engine (optional)
|
|
||||||
|
|
||||||
[Oniguruma](https://github.com/kkos/oniguruma) is CRuby's regular expression engine.
|
|
||||||
It is very fast and performs better than the one built into Go runtime. *enry* supports swapping
|
|
||||||
between those two engines thanks to [rubex](https://github.com/moovweb/rubex) project.
|
|
||||||
The typical overall speedup from using Oniguruma is 1.5-2x. However, it requires CGo and the external shared library.
|
|
||||||
On macOS with [Homebrew](https://brew.sh/), it is:
|
|
||||||
|
|
||||||
```
|
|
||||||
brew install oniguruma
|
|
||||||
```
|
|
||||||
|
|
||||||
On Ubuntu, it is
|
|
||||||
|
|
||||||
```
|
|
||||||
sudo apt install libonig-dev
|
|
||||||
```
|
|
||||||
|
|
||||||
To build enry with Oniguruma regexps use the `oniguruma` build tag
|
|
||||||
|
|
||||||
```
|
|
||||||
go get -v -t --tags oniguruma ./...
|
|
||||||
```
|
|
||||||
|
|
||||||
and then rebuild the project.
|
|
||||||
|
|
||||||
</details>
|
|
||||||
|
|
||||||
|
|
||||||
License
|
|
||||||
------------
|
|
||||||
|
|
||||||
Apache License, Version 2.0. See [LICENSE](LICENSE)
|
|
783
vendor/github.com/src-d/enry/v2/data/alias.go
generated
vendored
783
vendor/github.com/src-d/enry/v2/data/alias.go
generated
vendored
|
@ -1,783 +0,0 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
|
||||||
|
|
||||||
package data
|
|
||||||
|
|
||||||
import "strings"
|
|
||||||
|
|
||||||
// LanguageByAliasMap keeps alias for different languages and use the name of the languages as an alias too.
|
|
||||||
// All the keys (alias or not) are written in lower case and the whitespaces has been replaced by underscores.
|
|
||||||
var LanguageByAliasMap = map[string]string{
|
|
||||||
"1c_enterprise": "1C Enterprise",
|
|
||||||
"abap": "ABAP",
|
|
||||||
"abl": "OpenEdge ABL",
|
|
||||||
"abnf": "ABNF",
|
|
||||||
"abuild": "Alpine Abuild",
|
|
||||||
"acfm": "Adobe Font Metrics",
|
|
||||||
"aconf": "ApacheConf",
|
|
||||||
"actionscript": "ActionScript",
|
|
||||||
"actionscript3": "ActionScript",
|
|
||||||
"actionscript_3": "ActionScript",
|
|
||||||
"ada": "Ada",
|
|
||||||
"ada2005": "Ada",
|
|
||||||
"ada95": "Ada",
|
|
||||||
"adobe_composite_font_metrics": "Adobe Font Metrics",
|
|
||||||
"adobe_font_metrics": "Adobe Font Metrics",
|
|
||||||
"adobe_multiple_font_metrics": "Adobe Font Metrics",
|
|
||||||
"advpl": "xBase",
|
|
||||||
"afdko": "OpenType Feature File",
|
|
||||||
"agda": "Agda",
|
|
||||||
"ags": "AGS Script",
|
|
||||||
"ags_script": "AGS Script",
|
|
||||||
"ahk": "AutoHotkey",
|
|
||||||
"alloy": "Alloy",
|
|
||||||
"alpine_abuild": "Alpine Abuild",
|
|
||||||
"altium": "Altium Designer",
|
|
||||||
"altium_designer": "Altium Designer",
|
|
||||||
"amfm": "Adobe Font Metrics",
|
|
||||||
"ampl": "AMPL",
|
|
||||||
"angelscript": "AngelScript",
|
|
||||||
"ant_build_system": "Ant Build System",
|
|
||||||
"antlr": "ANTLR",
|
|
||||||
"apache": "ApacheConf",
|
|
||||||
"apacheconf": "ApacheConf",
|
|
||||||
"apex": "Apex",
|
|
||||||
"api_blueprint": "API Blueprint",
|
|
||||||
"apkbuild": "Alpine Abuild",
|
|
||||||
"apl": "APL",
|
|
||||||
"apollo_guidance_computer": "Apollo Guidance Computer",
|
|
||||||
"applescript": "AppleScript",
|
|
||||||
"arc": "Arc",
|
|
||||||
"arexx": "REXX",
|
|
||||||
"as3": "ActionScript",
|
|
||||||
"asciidoc": "AsciiDoc",
|
|
||||||
"asm": "Assembly",
|
|
||||||
"asn.1": "ASN.1",
|
|
||||||
"asp": "ASP",
|
|
||||||
"aspectj": "AspectJ",
|
|
||||||
"aspx": "ASP",
|
|
||||||
"aspx-vb": "ASP",
|
|
||||||
"assembly": "Assembly",
|
|
||||||
"asymptote": "Asymptote",
|
|
||||||
"ats": "ATS",
|
|
||||||
"ats2": "ATS",
|
|
||||||
"au3": "AutoIt",
|
|
||||||
"augeas": "Augeas",
|
|
||||||
"autoconf": "M4Sugar",
|
|
||||||
"autohotkey": "AutoHotkey",
|
|
||||||
"autoit": "AutoIt",
|
|
||||||
"autoit3": "AutoIt",
|
|
||||||
"autoitscript": "AutoIt",
|
|
||||||
"awk": "Awk",
|
|
||||||
"b3d": "BlitzBasic",
|
|
||||||
"ballerina": "Ballerina",
|
|
||||||
"bash": "Shell",
|
|
||||||
"bash_session": "ShellSession",
|
|
||||||
"bat": "Batchfile",
|
|
||||||
"batch": "Batchfile",
|
|
||||||
"batchfile": "Batchfile",
|
|
||||||
"befunge": "Befunge",
|
|
||||||
"bison": "Bison",
|
|
||||||
"bitbake": "BitBake",
|
|
||||||
"blade": "Blade",
|
|
||||||
"blitz3d": "BlitzBasic",
|
|
||||||
"blitzbasic": "BlitzBasic",
|
|
||||||
"blitzmax": "BlitzMax",
|
|
||||||
"blitzplus": "BlitzBasic",
|
|
||||||
"bluespec": "Bluespec",
|
|
||||||
"bmax": "BlitzMax",
|
|
||||||
"boo": "Boo",
|
|
||||||
"bplus": "BlitzBasic",
|
|
||||||
"brainfuck": "Brainfuck",
|
|
||||||
"brightscript": "Brightscript",
|
|
||||||
"bro": "Zeek",
|
|
||||||
"bsdmake": "Makefile",
|
|
||||||
"byond": "DM",
|
|
||||||
"c": "C",
|
|
||||||
"c#": "C#",
|
|
||||||
"c++": "C++",
|
|
||||||
"c++-objdump": "Cpp-ObjDump",
|
|
||||||
"c-objdump": "C-ObjDump",
|
|
||||||
"c2hs": "C2hs Haskell",
|
|
||||||
"c2hs_haskell": "C2hs Haskell",
|
|
||||||
"cabal": "Cabal Config",
|
|
||||||
"cabal_config": "Cabal Config",
|
|
||||||
"cap'n_proto": "Cap'n Proto",
|
|
||||||
"carto": "CartoCSS",
|
|
||||||
"cartocss": "CartoCSS",
|
|
||||||
"ceylon": "Ceylon",
|
|
||||||
"cfc": "ColdFusion CFC",
|
|
||||||
"cfm": "ColdFusion",
|
|
||||||
"cfml": "ColdFusion",
|
|
||||||
"chapel": "Chapel",
|
|
||||||
"charity": "Charity",
|
|
||||||
"chpl": "Chapel",
|
|
||||||
"chuck": "ChucK",
|
|
||||||
"cirru": "Cirru",
|
|
||||||
"clarion": "Clarion",
|
|
||||||
"clean": "Clean",
|
|
||||||
"click": "Click",
|
|
||||||
"clipper": "xBase",
|
|
||||||
"clips": "CLIPS",
|
|
||||||
"clojure": "Clojure",
|
|
||||||
"closure_templates": "Closure Templates",
|
|
||||||
"cloud_firestore_security_rules": "Cloud Firestore Security Rules",
|
|
||||||
"cmake": "CMake",
|
|
||||||
"cobol": "COBOL",
|
|
||||||
"coffee": "CoffeeScript",
|
|
||||||
"coffee-script": "CoffeeScript",
|
|
||||||
"coffeescript": "CoffeeScript",
|
|
||||||
"coldfusion": "ColdFusion",
|
|
||||||
"coldfusion_cfc": "ColdFusion CFC",
|
|
||||||
"coldfusion_html": "ColdFusion",
|
|
||||||
"collada": "COLLADA",
|
|
||||||
"common_lisp": "Common Lisp",
|
|
||||||
"common_workflow_language": "Common Workflow Language",
|
|
||||||
"component_pascal": "Component Pascal",
|
|
||||||
"conll": "CoNLL-U",
|
|
||||||
"conll-u": "CoNLL-U",
|
|
||||||
"conll-x": "CoNLL-U",
|
|
||||||
"console": "ShellSession",
|
|
||||||
"cool": "Cool",
|
|
||||||
"coq": "Coq",
|
|
||||||
"cperl": "Perl",
|
|
||||||
"cpp": "C++",
|
|
||||||
"cpp-objdump": "Cpp-ObjDump",
|
|
||||||
"creole": "Creole",
|
|
||||||
"crystal": "Crystal",
|
|
||||||
"csharp": "C#",
|
|
||||||
"cson": "CSON",
|
|
||||||
"csound": "Csound",
|
|
||||||
"csound-csd": "Csound Document",
|
|
||||||
"csound-orc": "Csound",
|
|
||||||
"csound-sco": "Csound Score",
|
|
||||||
"csound_document": "Csound Document",
|
|
||||||
"csound_score": "Csound Score",
|
|
||||||
"css": "CSS",
|
|
||||||
"csv": "CSV",
|
|
||||||
"cucumber": "Gherkin",
|
|
||||||
"cuda": "Cuda",
|
|
||||||
"cweb": "CWeb",
|
|
||||||
"cwl": "Common Workflow Language",
|
|
||||||
"cycript": "Cycript",
|
|
||||||
"cython": "Cython",
|
|
||||||
"d": "D",
|
|
||||||
"d-objdump": "D-ObjDump",
|
|
||||||
"darcs_patch": "Darcs Patch",
|
|
||||||
"dart": "Dart",
|
|
||||||
"dataweave": "DataWeave",
|
|
||||||
"dcl": "DIGITAL Command Language",
|
|
||||||
"delphi": "Component Pascal",
|
|
||||||
"desktop": "desktop",
|
|
||||||
"dhall": "Dhall",
|
|
||||||
"diff": "Diff",
|
|
||||||
"digital_command_language": "DIGITAL Command Language",
|
|
||||||
"django": "HTML+Django",
|
|
||||||
"dm": "DM",
|
|
||||||
"dns_zone": "DNS Zone",
|
|
||||||
"dockerfile": "Dockerfile",
|
|
||||||
"dogescript": "Dogescript",
|
|
||||||
"dosbatch": "Batchfile",
|
|
||||||
"dosini": "INI",
|
|
||||||
"dpatch": "Darcs Patch",
|
|
||||||
"dtrace": "DTrace",
|
|
||||||
"dtrace-script": "DTrace",
|
|
||||||
"dylan": "Dylan",
|
|
||||||
"e": "E",
|
|
||||||
"eagle": "Eagle",
|
|
||||||
"easybuild": "Easybuild",
|
|
||||||
"ebnf": "EBNF",
|
|
||||||
"ec": "eC",
|
|
||||||
"ecere_projects": "Ecere Projects",
|
|
||||||
"ecl": "ECL",
|
|
||||||
"eclipse": "ECLiPSe",
|
|
||||||
"ecr": "HTML+ECR",
|
|
||||||
"editor-config": "EditorConfig",
|
|
||||||
"editorconfig": "EditorConfig",
|
|
||||||
"edje_data_collection": "Edje Data Collection",
|
|
||||||
"edn": "edn",
|
|
||||||
"eeschema_schematic": "KiCad Schematic",
|
|
||||||
"eex": "HTML+EEX",
|
|
||||||
"eiffel": "Eiffel",
|
|
||||||
"ejs": "EJS",
|
|
||||||
"elisp": "Emacs Lisp",
|
|
||||||
"elixir": "Elixir",
|
|
||||||
"elm": "Elm",
|
|
||||||
"emacs": "Emacs Lisp",
|
|
||||||
"emacs_lisp": "Emacs Lisp",
|
|
||||||
"emberscript": "EmberScript",
|
|
||||||
"eml": "EML",
|
|
||||||
"eq": "EQ",
|
|
||||||
"erb": "HTML+ERB",
|
|
||||||
"erlang": "Erlang",
|
|
||||||
"f#": "F#",
|
|
||||||
"f*": "F*",
|
|
||||||
"factor": "Factor",
|
|
||||||
"fancy": "Fancy",
|
|
||||||
"fantom": "Fantom",
|
|
||||||
"figfont": "FIGlet Font",
|
|
||||||
"figlet_font": "FIGlet Font",
|
|
||||||
"filebench_wml": "Filebench WML",
|
|
||||||
"filterscript": "Filterscript",
|
|
||||||
"fish": "fish",
|
|
||||||
"flex": "Lex",
|
|
||||||
"flux": "FLUX",
|
|
||||||
"formatted": "Formatted",
|
|
||||||
"forth": "Forth",
|
|
||||||
"fortran": "Fortran",
|
|
||||||
"foxpro": "xBase",
|
|
||||||
"freemarker": "FreeMarker",
|
|
||||||
"frege": "Frege",
|
|
||||||
"fsharp": "F#",
|
|
||||||
"fstar": "F*",
|
|
||||||
"ftl": "FreeMarker",
|
|
||||||
"fundamental": "Text",
|
|
||||||
"g-code": "G-code",
|
|
||||||
"game_maker_language": "Game Maker Language",
|
|
||||||
"gams": "GAMS",
|
|
||||||
"gap": "GAP",
|
|
||||||
"gcc_machine_description": "GCC Machine Description",
|
|
||||||
"gdb": "GDB",
|
|
||||||
"gdscript": "GDScript",
|
|
||||||
"genie": "Genie",
|
|
||||||
"genshi": "Genshi",
|
|
||||||
"gentoo_ebuild": "Gentoo Ebuild",
|
|
||||||
"gentoo_eclass": "Gentoo Eclass",
|
|
||||||
"gerber_image": "Gerber Image",
|
|
||||||
"gettext_catalog": "Gettext Catalog",
|
|
||||||
"gf": "Grammatical Framework",
|
|
||||||
"gherkin": "Gherkin",
|
|
||||||
"git-ignore": "Ignore List",
|
|
||||||
"git_attributes": "Git Attributes",
|
|
||||||
"git_config": "Git Config",
|
|
||||||
"gitattributes": "Git Attributes",
|
|
||||||
"gitconfig": "Git Config",
|
|
||||||
"gitignore": "Ignore List",
|
|
||||||
"gitmodules": "Git Config",
|
|
||||||
"glsl": "GLSL",
|
|
||||||
"glyph": "Glyph",
|
|
||||||
"glyph_bitmap_distribution_format": "Glyph Bitmap Distribution Format",
|
|
||||||
"gn": "GN",
|
|
||||||
"gnuplot": "Gnuplot",
|
|
||||||
"go": "Go",
|
|
||||||
"golang": "Go",
|
|
||||||
"golo": "Golo",
|
|
||||||
"gosu": "Gosu",
|
|
||||||
"grace": "Grace",
|
|
||||||
"gradle": "Gradle",
|
|
||||||
"grammatical_framework": "Grammatical Framework",
|
|
||||||
"graph_modeling_language": "Graph Modeling Language",
|
|
||||||
"graphql": "GraphQL",
|
|
||||||
"graphviz_(dot)": "Graphviz (DOT)",
|
|
||||||
"groff": "Roff",
|
|
||||||
"groovy": "Groovy",
|
|
||||||
"groovy_server_pages": "Groovy Server Pages",
|
|
||||||
"gsp": "Groovy Server Pages",
|
|
||||||
"hack": "Hack",
|
|
||||||
"haml": "Haml",
|
|
||||||
"handlebars": "Handlebars",
|
|
||||||
"haproxy": "HAProxy",
|
|
||||||
"harbour": "Harbour",
|
|
||||||
"haskell": "Haskell",
|
|
||||||
"haxe": "Haxe",
|
|
||||||
"hbs": "Handlebars",
|
|
||||||
"hcl": "HCL",
|
|
||||||
"hiveql": "HiveQL",
|
|
||||||
"hlsl": "HLSL",
|
|
||||||
"holyc": "HolyC",
|
|
||||||
"html": "HTML",
|
|
||||||
"html+django": "HTML+Django",
|
|
||||||
"html+django/jinja": "HTML+Django",
|
|
||||||
"html+ecr": "HTML+ECR",
|
|
||||||
"html+eex": "HTML+EEX",
|
|
||||||
"html+erb": "HTML+ERB",
|
|
||||||
"html+jinja": "HTML+Django",
|
|
||||||
"html+php": "HTML+PHP",
|
|
||||||
"html+razor": "HTML+Razor",
|
|
||||||
"html+ruby": "RHTML",
|
|
||||||
"htmlbars": "Handlebars",
|
|
||||||
"htmldjango": "HTML+Django",
|
|
||||||
"http": "HTTP",
|
|
||||||
"hxml": "HXML",
|
|
||||||
"hy": "Hy",
|
|
||||||
"hylang": "Hy",
|
|
||||||
"hyphy": "HyPhy",
|
|
||||||
"i7": "Inform 7",
|
|
||||||
"idl": "IDL",
|
|
||||||
"idris": "Idris",
|
|
||||||
"ignore": "Ignore List",
|
|
||||||
"ignore_list": "Ignore List",
|
|
||||||
"igor": "IGOR Pro",
|
|
||||||
"igor_pro": "IGOR Pro",
|
|
||||||
"igorpro": "IGOR Pro",
|
|
||||||
"inc": "PHP",
|
|
||||||
"inform7": "Inform 7",
|
|
||||||
"inform_7": "Inform 7",
|
|
||||||
"ini": "INI",
|
|
||||||
"inno_setup": "Inno Setup",
|
|
||||||
"io": "Io",
|
|
||||||
"ioke": "Ioke",
|
|
||||||
"ipython_notebook": "Jupyter Notebook",
|
|
||||||
"irc": "IRC log",
|
|
||||||
"irc_log": "IRC log",
|
|
||||||
"irc_logs": "IRC log",
|
|
||||||
"isabelle": "Isabelle",
|
|
||||||
"isabelle_root": "Isabelle ROOT",
|
|
||||||
"j": "J",
|
|
||||||
"jasmin": "Jasmin",
|
|
||||||
"java": "Java",
|
|
||||||
"java_properties": "Java Properties",
|
|
||||||
"java_server_page": "Groovy Server Pages",
|
|
||||||
"java_server_pages": "Java Server Pages",
|
|
||||||
"javascript": "JavaScript",
|
|
||||||
"javascript+erb": "JavaScript+ERB",
|
|
||||||
"jflex": "JFlex",
|
|
||||||
"jison": "Jison",
|
|
||||||
"jison_lex": "Jison Lex",
|
|
||||||
"jolie": "Jolie",
|
|
||||||
"jruby": "Ruby",
|
|
||||||
"js": "JavaScript",
|
|
||||||
"json": "JSON",
|
|
||||||
"json5": "JSON5",
|
|
||||||
"json_with_comments": "JSON with Comments",
|
|
||||||
"jsonc": "JSON with Comments",
|
|
||||||
"jsoniq": "JSONiq",
|
|
||||||
"jsonld": "JSONLD",
|
|
||||||
"jsonnet": "Jsonnet",
|
|
||||||
"jsp": "Java Server Pages",
|
|
||||||
"jsx": "JSX",
|
|
||||||
"julia": "Julia",
|
|
||||||
"jupyter_notebook": "Jupyter Notebook",
|
|
||||||
"kicad_layout": "KiCad Layout",
|
|
||||||
"kicad_legacy_layout": "KiCad Legacy Layout",
|
|
||||||
"kicad_schematic": "KiCad Schematic",
|
|
||||||
"kit": "Kit",
|
|
||||||
"kotlin": "Kotlin",
|
|
||||||
"krl": "KRL",
|
|
||||||
"labview": "LabVIEW",
|
|
||||||
"lasso": "Lasso",
|
|
||||||
"lassoscript": "Lasso",
|
|
||||||
"latex": "TeX",
|
|
||||||
"latte": "Latte",
|
|
||||||
"lean": "Lean",
|
|
||||||
"less": "Less",
|
|
||||||
"lex": "Lex",
|
|
||||||
"lfe": "LFE",
|
|
||||||
"lhaskell": "Literate Haskell",
|
|
||||||
"lhs": "Literate Haskell",
|
|
||||||
"lilypond": "LilyPond",
|
|
||||||
"limbo": "Limbo",
|
|
||||||
"linker_script": "Linker Script",
|
|
||||||
"linux_kernel_module": "Linux Kernel Module",
|
|
||||||
"liquid": "Liquid",
|
|
||||||
"lisp": "Common Lisp",
|
|
||||||
"litcoffee": "Literate CoffeeScript",
|
|
||||||
"literate_agda": "Literate Agda",
|
|
||||||
"literate_coffeescript": "Literate CoffeeScript",
|
|
||||||
"literate_haskell": "Literate Haskell",
|
|
||||||
"live-script": "LiveScript",
|
|
||||||
"livescript": "LiveScript",
|
|
||||||
"llvm": "LLVM",
|
|
||||||
"logos": "Logos",
|
|
||||||
"logtalk": "Logtalk",
|
|
||||||
"lolcode": "LOLCODE",
|
|
||||||
"lookml": "LookML",
|
|
||||||
"loomscript": "LoomScript",
|
|
||||||
"ls": "LiveScript",
|
|
||||||
"lsl": "LSL",
|
|
||||||
"ltspice_symbol": "LTspice Symbol",
|
|
||||||
"lua": "Lua",
|
|
||||||
"m": "M",
|
|
||||||
"m4": "M4",
|
|
||||||
"m4sugar": "M4Sugar",
|
|
||||||
"macruby": "Ruby",
|
|
||||||
"make": "Makefile",
|
|
||||||
"makefile": "Makefile",
|
|
||||||
"mako": "Mako",
|
|
||||||
"man": "Roff",
|
|
||||||
"man-page": "Roff",
|
|
||||||
"man_page": "Roff",
|
|
||||||
"manpage": "Roff",
|
|
||||||
"markdown": "Markdown",
|
|
||||||
"marko": "Marko",
|
|
||||||
"markojs": "Marko",
|
|
||||||
"mask": "Mask",
|
|
||||||
"mathematica": "Mathematica",
|
|
||||||
"matlab": "MATLAB",
|
|
||||||
"maven_pom": "Maven POM",
|
|
||||||
"max": "Max",
|
|
||||||
"max/msp": "Max",
|
|
||||||
"maxmsp": "Max",
|
|
||||||
"maxscript": "MAXScript",
|
|
||||||
"mcfunction": "mcfunction",
|
|
||||||
"mdoc": "Roff",
|
|
||||||
"mediawiki": "MediaWiki",
|
|
||||||
"mercury": "Mercury",
|
|
||||||
"meson": "Meson",
|
|
||||||
"metal": "Metal",
|
|
||||||
"mf": "Makefile",
|
|
||||||
"minid": "MiniD",
|
|
||||||
"mirah": "Mirah",
|
|
||||||
"mma": "Mathematica",
|
|
||||||
"modelica": "Modelica",
|
|
||||||
"modula-2": "Modula-2",
|
|
||||||
"modula-3": "Modula-3",
|
|
||||||
"module_management_system": "Module Management System",
|
|
||||||
"monkey": "Monkey",
|
|
||||||
"moocode": "Moocode",
|
|
||||||
"moonscript": "MoonScript",
|
|
||||||
"motorola_68k_assembly": "Motorola 68K Assembly",
|
|
||||||
"mql4": "MQL4",
|
|
||||||
"mql5": "MQL5",
|
|
||||||
"mtml": "MTML",
|
|
||||||
"muf": "MUF",
|
|
||||||
"mumps": "M",
|
|
||||||
"mupad": "mupad",
|
|
||||||
"myghty": "Myghty",
|
|
||||||
"nanorc": "nanorc",
|
|
||||||
"nasm": "Assembly",
|
|
||||||
"ncl": "NCL",
|
|
||||||
"nearley": "Nearley",
|
|
||||||
"nemerle": "Nemerle",
|
|
||||||
"nesc": "nesC",
|
|
||||||
"netlinx": "NetLinx",
|
|
||||||
"netlinx+erb": "NetLinx+ERB",
|
|
||||||
"netlogo": "NetLogo",
|
|
||||||
"newlisp": "NewLisp",
|
|
||||||
"nextflow": "Nextflow",
|
|
||||||
"nginx": "Nginx",
|
|
||||||
"nginx_configuration_file": "Nginx",
|
|
||||||
"nim": "Nim",
|
|
||||||
"ninja": "Ninja",
|
|
||||||
"nit": "Nit",
|
|
||||||
"nix": "Nix",
|
|
||||||
"nixos": "Nix",
|
|
||||||
"njk": "HTML+Django",
|
|
||||||
"nl": "NL",
|
|
||||||
"node": "JavaScript",
|
|
||||||
"nroff": "Roff",
|
|
||||||
"nsis": "NSIS",
|
|
||||||
"nu": "Nu",
|
|
||||||
"numpy": "NumPy",
|
|
||||||
"nunjucks": "HTML+Django",
|
|
||||||
"nush": "Nu",
|
|
||||||
"nvim": "Vim script",
|
|
||||||
"obj-c": "Objective-C",
|
|
||||||
"obj-c++": "Objective-C++",
|
|
||||||
"obj-j": "Objective-J",
|
|
||||||
"objc": "Objective-C",
|
|
||||||
"objc++": "Objective-C++",
|
|
||||||
"objdump": "ObjDump",
|
|
||||||
"objective-c": "Objective-C",
|
|
||||||
"objective-c++": "Objective-C++",
|
|
||||||
"objective-j": "Objective-J",
|
|
||||||
"objectivec": "Objective-C",
|
|
||||||
"objectivec++": "Objective-C++",
|
|
||||||
"objectivej": "Objective-J",
|
|
||||||
"objectpascal": "Component Pascal",
|
|
||||||
"objectscript": "ObjectScript",
|
|
||||||
"objj": "Objective-J",
|
|
||||||
"ocaml": "OCaml",
|
|
||||||
"octave": "MATLAB",
|
|
||||||
"omgrofl": "Omgrofl",
|
|
||||||
"oncrpc": "RPC",
|
|
||||||
"ooc": "ooc",
|
|
||||||
"opa": "Opa",
|
|
||||||
"opal": "Opal",
|
|
||||||
"opencl": "OpenCL",
|
|
||||||
"openedge": "OpenEdge ABL",
|
|
||||||
"openedge_abl": "OpenEdge ABL",
|
|
||||||
"openrc": "OpenRC runscript",
|
|
||||||
"openrc_runscript": "OpenRC runscript",
|
|
||||||
"openscad": "OpenSCAD",
|
|
||||||
"opentype_feature_file": "OpenType Feature File",
|
|
||||||
"org": "Org",
|
|
||||||
"osascript": "AppleScript",
|
|
||||||
"ox": "Ox",
|
|
||||||
"oxygene": "Oxygene",
|
|
||||||
"oz": "Oz",
|
|
||||||
"p4": "P4",
|
|
||||||
"pan": "Pan",
|
|
||||||
"pandoc": "Markdown",
|
|
||||||
"papyrus": "Papyrus",
|
|
||||||
"parrot": "Parrot",
|
|
||||||
"parrot_assembly": "Parrot Assembly",
|
|
||||||
"parrot_internal_representation": "Parrot Internal Representation",
|
|
||||||
"pascal": "Pascal",
|
|
||||||
"pasm": "Parrot Assembly",
|
|
||||||
"pawn": "Pawn",
|
|
||||||
"pcbnew": "KiCad Layout",
|
|
||||||
"pep8": "Pep8",
|
|
||||||
"perl": "Perl",
|
|
||||||
"perl6": "Perl 6",
|
|
||||||
"perl_6": "Perl 6",
|
|
||||||
"php": "PHP",
|
|
||||||
"pic": "Pic",
|
|
||||||
"pickle": "Pickle",
|
|
||||||
"picolisp": "PicoLisp",
|
|
||||||
"piglatin": "PigLatin",
|
|
||||||
"pike": "Pike",
|
|
||||||
"pir": "Parrot Internal Representation",
|
|
||||||
"plpgsql": "PLpgSQL",
|
|
||||||
"plsql": "PLSQL",
|
|
||||||
"pod": "Pod",
|
|
||||||
"pod_6": "Pod 6",
|
|
||||||
"pogoscript": "PogoScript",
|
|
||||||
"pony": "Pony",
|
|
||||||
"posh": "PowerShell",
|
|
||||||
"postcss": "PostCSS",
|
|
||||||
"postscr": "PostScript",
|
|
||||||
"postscript": "PostScript",
|
|
||||||
"pot": "Gettext Catalog",
|
|
||||||
"pov-ray": "POV-Ray SDL",
|
|
||||||
"pov-ray_sdl": "POV-Ray SDL",
|
|
||||||
"povray": "POV-Ray SDL",
|
|
||||||
"powerbuilder": "PowerBuilder",
|
|
||||||
"powershell": "PowerShell",
|
|
||||||
"processing": "Processing",
|
|
||||||
"progress": "OpenEdge ABL",
|
|
||||||
"prolog": "Prolog",
|
|
||||||
"propeller_spin": "Propeller Spin",
|
|
||||||
"protobuf": "Protocol Buffer",
|
|
||||||
"protocol_buffer": "Protocol Buffer",
|
|
||||||
"protocol_buffers": "Protocol Buffer",
|
|
||||||
"public_key": "Public Key",
|
|
||||||
"pug": "Pug",
|
|
||||||
"puppet": "Puppet",
|
|
||||||
"pure_data": "Pure Data",
|
|
||||||
"purebasic": "PureBasic",
|
|
||||||
"purescript": "PureScript",
|
|
||||||
"pwsh": "PowerShell",
|
|
||||||
"pycon": "Python console",
|
|
||||||
"pyrex": "Cython",
|
|
||||||
"python": "Python",
|
|
||||||
"python3": "Python",
|
|
||||||
"python_console": "Python console",
|
|
||||||
"python_traceback": "Python traceback",
|
|
||||||
"q": "q",
|
|
||||||
"qmake": "QMake",
|
|
||||||
"qml": "QML",
|
|
||||||
"quake": "Quake",
|
|
||||||
"r": "R",
|
|
||||||
"racket": "Racket",
|
|
||||||
"ragel": "Ragel",
|
|
||||||
"ragel-rb": "Ragel",
|
|
||||||
"ragel-ruby": "Ragel",
|
|
||||||
"rake": "Ruby",
|
|
||||||
"raml": "RAML",
|
|
||||||
"rascal": "Rascal",
|
|
||||||
"raw": "Raw token data",
|
|
||||||
"raw_token_data": "Raw token data",
|
|
||||||
"razor": "HTML+Razor",
|
|
||||||
"rb": "Ruby",
|
|
||||||
"rbx": "Ruby",
|
|
||||||
"rdoc": "RDoc",
|
|
||||||
"realbasic": "REALbasic",
|
|
||||||
"reason": "Reason",
|
|
||||||
"rebol": "Rebol",
|
|
||||||
"red": "Red",
|
|
||||||
"red/system": "Red",
|
|
||||||
"redcode": "Redcode",
|
|
||||||
"regex": "Regular Expression",
|
|
||||||
"regexp": "Regular Expression",
|
|
||||||
"regular_expression": "Regular Expression",
|
|
||||||
"ren'py": "Ren'Py",
|
|
||||||
"renderscript": "RenderScript",
|
|
||||||
"renpy": "Ren'Py",
|
|
||||||
"restructuredtext": "reStructuredText",
|
|
||||||
"rexx": "REXX",
|
|
||||||
"rhtml": "RHTML",
|
|
||||||
"rich_text_format": "Rich Text Format",
|
|
||||||
"ring": "Ring",
|
|
||||||
"rmarkdown": "RMarkdown",
|
|
||||||
"robotframework": "RobotFramework",
|
|
||||||
"roff": "Roff",
|
|
||||||
"roff_manpage": "Roff Manpage",
|
|
||||||
"rouge": "Rouge",
|
|
||||||
"rpc": "RPC",
|
|
||||||
"rpcgen": "RPC",
|
|
||||||
"rpm_spec": "RPM Spec",
|
|
||||||
"rs-274x": "Gerber Image",
|
|
||||||
"rscript": "R",
|
|
||||||
"rss": "XML",
|
|
||||||
"rst": "reStructuredText",
|
|
||||||
"ruby": "Ruby",
|
|
||||||
"runoff": "RUNOFF",
|
|
||||||
"rust": "Rust",
|
|
||||||
"rusthon": "Python",
|
|
||||||
"sage": "Sage",
|
|
||||||
"salt": "SaltStack",
|
|
||||||
"saltstack": "SaltStack",
|
|
||||||
"saltstate": "SaltStack",
|
|
||||||
"sas": "SAS",
|
|
||||||
"sass": "Sass",
|
|
||||||
"scala": "Scala",
|
|
||||||
"scaml": "Scaml",
|
|
||||||
"scheme": "Scheme",
|
|
||||||
"scilab": "Scilab",
|
|
||||||
"scss": "SCSS",
|
|
||||||
"sed": "sed",
|
|
||||||
"self": "Self",
|
|
||||||
"sh": "Shell",
|
|
||||||
"shaderlab": "ShaderLab",
|
|
||||||
"shell": "Shell",
|
|
||||||
"shell-script": "Shell",
|
|
||||||
"shellsession": "ShellSession",
|
|
||||||
"shen": "Shen",
|
|
||||||
"slash": "Slash",
|
|
||||||
"slice": "Slice",
|
|
||||||
"slim": "Slim",
|
|
||||||
"smali": "Smali",
|
|
||||||
"smalltalk": "Smalltalk",
|
|
||||||
"smarty": "Smarty",
|
|
||||||
"sml": "Standard ML",
|
|
||||||
"smt": "SMT",
|
|
||||||
"snippet": "YASnippet",
|
|
||||||
"solidity": "Solidity",
|
|
||||||
"sourcemod": "SourcePawn",
|
|
||||||
"sourcepawn": "SourcePawn",
|
|
||||||
"soy": "Closure Templates",
|
|
||||||
"sparql": "SPARQL",
|
|
||||||
"specfile": "RPM Spec",
|
|
||||||
"spline_font_database": "Spline Font Database",
|
|
||||||
"splus": "R",
|
|
||||||
"sqf": "SQF",
|
|
||||||
"sql": "SQL",
|
|
||||||
"sqlpl": "SQLPL",
|
|
||||||
"squeak": "Smalltalk",
|
|
||||||
"squirrel": "Squirrel",
|
|
||||||
"srecode_template": "SRecode Template",
|
|
||||||
"ssh_config": "SSH Config",
|
|
||||||
"stan": "Stan",
|
|
||||||
"standard_ml": "Standard ML",
|
|
||||||
"stata": "Stata",
|
|
||||||
"ston": "STON",
|
|
||||||
"stylus": "Stylus",
|
|
||||||
"subrip_text": "SubRip Text",
|
|
||||||
"sugarss": "SugarSS",
|
|
||||||
"supercollider": "SuperCollider",
|
|
||||||
"svelte": "Svelte",
|
|
||||||
"svg": "SVG",
|
|
||||||
"swift": "Swift",
|
|
||||||
"systemverilog": "SystemVerilog",
|
|
||||||
"tcl": "Tcl",
|
|
||||||
"tcsh": "Tcsh",
|
|
||||||
"tea": "Tea",
|
|
||||||
"terra": "Terra",
|
|
||||||
"terraform": "HCL",
|
|
||||||
"tex": "TeX",
|
|
||||||
"text": "Text",
|
|
||||||
"textile": "Textile",
|
|
||||||
"thrift": "Thrift",
|
|
||||||
"ti_program": "TI Program",
|
|
||||||
"tl": "Type Language",
|
|
||||||
"tla": "TLA",
|
|
||||||
"toml": "TOML",
|
|
||||||
"troff": "Roff",
|
|
||||||
"ts": "TypeScript",
|
|
||||||
"tsql": "TSQL",
|
|
||||||
"tsx": "TSX",
|
|
||||||
"turing": "Turing",
|
|
||||||
"turtle": "Turtle",
|
|
||||||
"twig": "Twig",
|
|
||||||
"txl": "TXL",
|
|
||||||
"type_language": "Type Language",
|
|
||||||
"typescript": "TypeScript",
|
|
||||||
"udiff": "Diff",
|
|
||||||
"unified_parallel_c": "Unified Parallel C",
|
|
||||||
"unity3d_asset": "Unity3D Asset",
|
|
||||||
"unix_assembly": "Unix Assembly",
|
|
||||||
"uno": "Uno",
|
|
||||||
"unrealscript": "UnrealScript",
|
|
||||||
"ur": "UrWeb",
|
|
||||||
"ur/web": "UrWeb",
|
|
||||||
"urweb": "UrWeb",
|
|
||||||
"vala": "Vala",
|
|
||||||
"vb.net": "Visual Basic",
|
|
||||||
"vbnet": "Visual Basic",
|
|
||||||
"vcl": "VCL",
|
|
||||||
"verilog": "Verilog",
|
|
||||||
"vhdl": "VHDL",
|
|
||||||
"vim": "Vim script",
|
|
||||||
"vim_script": "Vim script",
|
|
||||||
"viml": "Vim script",
|
|
||||||
"visual_basic": "Visual Basic",
|
|
||||||
"volt": "Volt",
|
|
||||||
"vue": "Vue",
|
|
||||||
"wasm": "WebAssembly",
|
|
||||||
"wast": "WebAssembly",
|
|
||||||
"wavefront_material": "Wavefront Material",
|
|
||||||
"wavefront_object": "Wavefront Object",
|
|
||||||
"wdl": "wdl",
|
|
||||||
"web_ontology_language": "Web Ontology Language",
|
|
||||||
"webassembly": "WebAssembly",
|
|
||||||
"webidl": "WebIDL",
|
|
||||||
"webvtt": "WebVTT",
|
|
||||||
"winbatch": "Batchfile",
|
|
||||||
"windows_registry_entries": "Windows Registry Entries",
|
|
||||||
"wisp": "wisp",
|
|
||||||
"wollok": "Wollok",
|
|
||||||
"world_of_warcraft_addon_data": "World of Warcraft Addon Data",
|
|
||||||
"wsdl": "XML",
|
|
||||||
"x10": "X10",
|
|
||||||
"x_bitmap": "X BitMap",
|
|
||||||
"x_font_directory_index": "X Font Directory Index",
|
|
||||||
"x_pixmap": "X PixMap",
|
|
||||||
"xbase": "xBase",
|
|
||||||
"xbm": "X BitMap",
|
|
||||||
"xc": "XC",
|
|
||||||
"xcompose": "XCompose",
|
|
||||||
"xdr": "RPC",
|
|
||||||
"xhtml": "HTML",
|
|
||||||
"xml": "XML",
|
|
||||||
"xml+genshi": "Genshi",
|
|
||||||
"xml+kid": "Genshi",
|
|
||||||
"xojo": "Xojo",
|
|
||||||
"xpages": "XPages",
|
|
||||||
"xpm": "X PixMap",
|
|
||||||
"xproc": "XProc",
|
|
||||||
"xquery": "XQuery",
|
|
||||||
"xs": "XS",
|
|
||||||
"xsd": "XML",
|
|
||||||
"xsl": "XSLT",
|
|
||||||
"xslt": "XSLT",
|
|
||||||
"xten": "X10",
|
|
||||||
"xtend": "Xtend",
|
|
||||||
"yacc": "Yacc",
|
|
||||||
"yaml": "YAML",
|
|
||||||
"yang": "YANG",
|
|
||||||
"yara": "YARA",
|
|
||||||
"yas": "YASnippet",
|
|
||||||
"yasnippet": "YASnippet",
|
|
||||||
"yml": "YAML",
|
|
||||||
"zap": "ZAP",
|
|
||||||
"zeek": "Zeek",
|
|
||||||
"zenscript": "ZenScript",
|
|
||||||
"zephir": "Zephir",
|
|
||||||
"zig": "Zig",
|
|
||||||
"zil": "ZIL",
|
|
||||||
"zimpl": "Zimpl",
|
|
||||||
"zsh": "Shell",
|
|
||||||
}
|
|
||||||
|
|
||||||
// LanguageByAlias looks up the language name by it's alias or name.
|
|
||||||
// It mirrors the logic of github linguist and is needed e.g for heuristcs.yml
|
|
||||||
// that mixes names and aliases in a language field (see XPM example).
|
|
||||||
func LanguageByAlias(langOrAlias string) (lang string, ok bool) {
|
|
||||||
k := convertToAliasKey(langOrAlias)
|
|
||||||
lang, ok = LanguageByAliasMap[k]
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// convertToAliasKey converts language name to a key in LanguageByAliasMap.
|
|
||||||
// Following
|
|
||||||
// - internal.code-generator.generator.convertToAliasKey()
|
|
||||||
// - GetLanguageByAlias()
|
|
||||||
// conventions.
|
|
||||||
// It is here to avoid dependency on "generate" and "enry" packages.
|
|
||||||
func convertToAliasKey(langName string) string {
|
|
||||||
ak := strings.SplitN(langName, `,`, 2)[0]
|
|
||||||
ak = strings.Replace(ak, ` `, `_`, -1)
|
|
||||||
ak = strings.ToLower(ak)
|
|
||||||
return ak
|
|
||||||
}
|
|
7
vendor/github.com/src-d/enry/v2/data/commit.go
generated
vendored
7
vendor/github.com/src-d/enry/v2/data/commit.go
generated
vendored
|
@ -1,7 +0,0 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
|
||||||
|
|
||||||
package data
|
|
||||||
|
|
||||||
// linguist's commit from which files were generated.
|
|
||||||
var LinguistCommit = "3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d"
|
|
526
vendor/github.com/src-d/enry/v2/data/type.go
generated
vendored
526
vendor/github.com/src-d/enry/v2/data/type.go
generated
vendored
|
@ -1,526 +0,0 @@
|
||||||
// Code generated by github.com/src-d/enry/v2/internal/code-generator DO NOT EDIT.
|
|
||||||
// Extracted from github/linguist commit: 3a1bd3c3d3e741a8aaec4704f782e06f5cd2a00d
|
|
||||||
|
|
||||||
package data
|
|
||||||
|
|
||||||
var LanguagesType = map[string]int{
|
|
||||||
"1C Enterprise": 2,
|
|
||||||
"ABAP": 2,
|
|
||||||
"ABNF": 1,
|
|
||||||
"AGS Script": 2,
|
|
||||||
"AMPL": 2,
|
|
||||||
"ANTLR": 2,
|
|
||||||
"API Blueprint": 3,
|
|
||||||
"APL": 2,
|
|
||||||
"ASN.1": 1,
|
|
||||||
"ASP": 2,
|
|
||||||
"ATS": 2,
|
|
||||||
"ActionScript": 2,
|
|
||||||
"Ada": 2,
|
|
||||||
"Adobe Font Metrics": 1,
|
|
||||||
"Agda": 2,
|
|
||||||
"Alloy": 2,
|
|
||||||
"Alpine Abuild": 2,
|
|
||||||
"Altium Designer": 1,
|
|
||||||
"AngelScript": 2,
|
|
||||||
"Ant Build System": 1,
|
|
||||||
"ApacheConf": 1,
|
|
||||||
"Apex": 2,
|
|
||||||
"Apollo Guidance Computer": 2,
|
|
||||||
"AppleScript": 2,
|
|
||||||
"Arc": 2,
|
|
||||||
"AsciiDoc": 4,
|
|
||||||
"AspectJ": 2,
|
|
||||||
"Assembly": 2,
|
|
||||||
"Asymptote": 2,
|
|
||||||
"Augeas": 2,
|
|
||||||
"AutoHotkey": 2,
|
|
||||||
"AutoIt": 2,
|
|
||||||
"Awk": 2,
|
|
||||||
"Ballerina": 2,
|
|
||||||
"Batchfile": 2,
|
|
||||||
"Befunge": 2,
|
|
||||||
"Bison": 2,
|
|
||||||
"BitBake": 2,
|
|
||||||
"Blade": 3,
|
|
||||||
"BlitzBasic": 2,
|
|
||||||
"BlitzMax": 2,
|
|
||||||
"Bluespec": 2,
|
|
||||||
"Boo": 2,
|
|
||||||
"Brainfuck": 2,
|
|
||||||
"Brightscript": 2,
|
|
||||||
"C": 2,
|
|
||||||
"C#": 2,
|
|
||||||
"C++": 2,
|
|
||||||
"C-ObjDump": 1,
|
|
||||||
"C2hs Haskell": 2,
|
|
||||||
"CLIPS": 2,
|
|
||||||
"CMake": 2,
|
|
||||||
"COBOL": 2,
|
|
||||||
"COLLADA": 1,
|
|
||||||
"CSON": 1,
|
|
||||||
"CSS": 3,
|
|
||||||
"CSV": 1,
|
|
||||||
"CWeb": 2,
|
|
||||||
"Cabal Config": 1,
|
|
||||||
"Cap'n Proto": 2,
|
|
||||||
"CartoCSS": 2,
|
|
||||||
"Ceylon": 2,
|
|
||||||
"Chapel": 2,
|
|
||||||
"Charity": 2,
|
|
||||||
"ChucK": 2,
|
|
||||||
"Cirru": 2,
|
|
||||||
"Clarion": 2,
|
|
||||||
"Clean": 2,
|
|
||||||
"Click": 2,
|
|
||||||
"Clojure": 2,
|
|
||||||
"Closure Templates": 3,
|
|
||||||
"Cloud Firestore Security Rules": 1,
|
|
||||||
"CoNLL-U": 1,
|
|
||||||
"CoffeeScript": 2,
|
|
||||||
"ColdFusion": 2,
|
|
||||||
"ColdFusion CFC": 2,
|
|
||||||
"Common Lisp": 2,
|
|
||||||
"Common Workflow Language": 2,
|
|
||||||
"Component Pascal": 2,
|
|
||||||
"Cool": 2,
|
|
||||||
"Coq": 2,
|
|
||||||
"Cpp-ObjDump": 1,
|
|
||||||
"Creole": 4,
|
|
||||||
"Crystal": 2,
|
|
||||||
"Csound": 2,
|
|
||||||
"Csound Document": 2,
|
|
||||||
"Csound Score": 2,
|
|
||||||
"Cuda": 2,
|
|
||||||
"Cycript": 2,
|
|
||||||
"Cython": 2,
|
|
||||||
"D": 2,
|
|
||||||
"D-ObjDump": 1,
|
|
||||||
"DIGITAL Command Language": 2,
|
|
||||||
"DM": 2,
|
|
||||||
"DNS Zone": 1,
|
|
||||||
"DTrace": 2,
|
|
||||||
"Darcs Patch": 1,
|
|
||||||
"Dart": 2,
|
|
||||||
"DataWeave": 2,
|
|
||||||
"Dhall": 2,
|
|
||||||
"Diff": 1,
|
|
||||||
"Dockerfile": 2,
|
|
||||||
"Dogescript": 2,
|
|
||||||
"Dylan": 2,
|
|
||||||
"E": 2,
|
|
||||||
"EBNF": 1,
|
|
||||||
"ECL": 2,
|
|
||||||
"ECLiPSe": 2,
|
|
||||||
"EJS": 3,
|
|
||||||
"EML": 1,
|
|
||||||
"EQ": 2,
|
|
||||||
"Eagle": 1,
|
|
||||||
"Easybuild": 1,
|
|
||||||
"Ecere Projects": 1,
|
|
||||||
"EditorConfig": 1,
|
|
||||||
"Edje Data Collection": 1,
|
|
||||||
"Eiffel": 2,
|
|
||||||
"Elixir": 2,
|
|
||||||
"Elm": 2,
|
|
||||||
"Emacs Lisp": 2,
|
|
||||||
"EmberScript": 2,
|
|
||||||
"Erlang": 2,
|
|
||||||
"F#": 2,
|
|
||||||
"F*": 2,
|
|
||||||
"FIGlet Font": 1,
|
|
||||||
"FLUX": 2,
|
|
||||||
"Factor": 2,
|
|
||||||
"Fancy": 2,
|
|
||||||
"Fantom": 2,
|
|
||||||
"Filebench WML": 2,
|
|
||||||
"Filterscript": 2,
|
|
||||||
"Formatted": 1,
|
|
||||||
"Forth": 2,
|
|
||||||
"Fortran": 2,
|
|
||||||
"FreeMarker": 2,
|
|
||||||
"Frege": 2,
|
|
||||||
"G-code": 2,
|
|
||||||
"GAMS": 2,
|
|
||||||
"GAP": 2,
|
|
||||||
"GCC Machine Description": 2,
|
|
||||||
"GDB": 2,
|
|
||||||
"GDScript": 2,
|
|
||||||
"GLSL": 2,
|
|
||||||
"GN": 1,
|
|
||||||
"Game Maker Language": 2,
|
|
||||||
"Genie": 2,
|
|
||||||
"Genshi": 2,
|
|
||||||
"Gentoo Ebuild": 2,
|
|
||||||
"Gentoo Eclass": 2,
|
|
||||||
"Gerber Image": 1,
|
|
||||||
"Gettext Catalog": 4,
|
|
||||||
"Gherkin": 2,
|
|
||||||
"Git Attributes": 1,
|
|
||||||
"Git Config": 1,
|
|
||||||
"Glyph": 2,
|
|
||||||
"Glyph Bitmap Distribution Format": 1,
|
|
||||||
"Gnuplot": 2,
|
|
||||||
"Go": 2,
|
|
||||||
"Golo": 2,
|
|
||||||
"Gosu": 2,
|
|
||||||
"Grace": 2,
|
|
||||||
"Gradle": 1,
|
|
||||||
"Grammatical Framework": 2,
|
|
||||||
"Graph Modeling Language": 1,
|
|
||||||
"GraphQL": 1,
|
|
||||||
"Graphviz (DOT)": 1,
|
|
||||||
"Groovy": 2,
|
|
||||||
"Groovy Server Pages": 2,
|
|
||||||
"HAProxy": 1,
|
|
||||||
"HCL": 2,
|
|
||||||
"HLSL": 2,
|
|
||||||
"HTML": 3,
|
|
||||||
"HTML+Django": 3,
|
|
||||||
"HTML+ECR": 3,
|
|
||||||
"HTML+EEX": 3,
|
|
||||||
"HTML+ERB": 3,
|
|
||||||
"HTML+PHP": 3,
|
|
||||||
"HTML+Razor": 3,
|
|
||||||
"HTTP": 1,
|
|
||||||
"HXML": 1,
|
|
||||||
"Hack": 2,
|
|
||||||
"Haml": 3,
|
|
||||||
"Handlebars": 3,
|
|
||||||
"Harbour": 2,
|
|
||||||
"Haskell": 2,
|
|
||||||
"Haxe": 2,
|
|
||||||
"HiveQL": 2,
|
|
||||||
"HolyC": 2,
|
|
||||||
"Hy": 2,
|
|
||||||
"HyPhy": 2,
|
|
||||||
"IDL": 2,
|
|
||||||
"IGOR Pro": 2,
|
|
||||||
"INI": 1,
|
|
||||||
"IRC log": 1,
|
|
||||||
"Idris": 2,
|
|
||||||
"Ignore List": 1,
|
|
||||||
"Inform 7": 2,
|
|
||||||
"Inno Setup": 2,
|
|
||||||
"Io": 2,
|
|
||||||
"Ioke": 2,
|
|
||||||
"Isabelle": 2,
|
|
||||||
"Isabelle ROOT": 2,
|
|
||||||
"J": 2,
|
|
||||||
"JFlex": 2,
|
|
||||||
"JSON": 1,
|
|
||||||
"JSON with Comments": 1,
|
|
||||||
"JSON5": 1,
|
|
||||||
"JSONLD": 1,
|
|
||||||
"JSONiq": 2,
|
|
||||||
"JSX": 2,
|
|
||||||
"Jasmin": 2,
|
|
||||||
"Java": 2,
|
|
||||||
"Java Properties": 1,
|
|
||||||
"Java Server Pages": 2,
|
|
||||||
"JavaScript": 2,
|
|
||||||
"JavaScript+ERB": 2,
|
|
||||||
"Jison": 2,
|
|
||||||
"Jison Lex": 2,
|
|
||||||
"Jolie": 2,
|
|
||||||
"Jsonnet": 2,
|
|
||||||
"Julia": 2,
|
|
||||||
"Jupyter Notebook": 3,
|
|
||||||
"KRL": 2,
|
|
||||||
"KiCad Layout": 1,
|
|
||||||
"KiCad Legacy Layout": 1,
|
|
||||||
"KiCad Schematic": 1,
|
|
||||||
"Kit": 3,
|
|
||||||
"Kotlin": 2,
|
|
||||||
"LFE": 2,
|
|
||||||
"LLVM": 2,
|
|
||||||
"LOLCODE": 2,
|
|
||||||
"LSL": 2,
|
|
||||||
"LTspice Symbol": 1,
|
|
||||||
"LabVIEW": 2,
|
|
||||||
"Lasso": 2,
|
|
||||||
"Latte": 3,
|
|
||||||
"Lean": 2,
|
|
||||||
"Less": 3,
|
|
||||||
"Lex": 2,
|
|
||||||
"LilyPond": 2,
|
|
||||||
"Limbo": 2,
|
|
||||||
"Linker Script": 1,
|
|
||||||
"Linux Kernel Module": 1,
|
|
||||||
"Liquid": 3,
|
|
||||||
"Literate Agda": 2,
|
|
||||||
"Literate CoffeeScript": 2,
|
|
||||||
"Literate Haskell": 2,
|
|
||||||
"LiveScript": 2,
|
|
||||||
"Logos": 2,
|
|
||||||
"Logtalk": 2,
|
|
||||||
"LookML": 2,
|
|
||||||
"LoomScript": 2,
|
|
||||||
"Lua": 2,
|
|
||||||
"M": 2,
|
|
||||||
"M4": 2,
|
|
||||||
"M4Sugar": 2,
|
|
||||||
"MATLAB": 2,
|
|
||||||
"MAXScript": 2,
|
|
||||||
"MQL4": 2,
|
|
||||||
"MQL5": 2,
|
|
||||||
"MTML": 3,
|
|
||||||
"MUF": 2,
|
|
||||||
"Makefile": 2,
|
|
||||||
"Mako": 2,
|
|
||||||
"Markdown": 4,
|
|
||||||
"Marko": 3,
|
|
||||||
"Mask": 3,
|
|
||||||
"Mathematica": 2,
|
|
||||||
"Maven POM": 1,
|
|
||||||
"Max": 2,
|
|
||||||
"MediaWiki": 4,
|
|
||||||
"Mercury": 2,
|
|
||||||
"Meson": 2,
|
|
||||||
"Metal": 2,
|
|
||||||
"MiniD": 2,
|
|
||||||
"Mirah": 2,
|
|
||||||
"Modelica": 2,
|
|
||||||
"Modula-2": 2,
|
|
||||||
"Modula-3": 2,
|
|
||||||
"Module Management System": 2,
|
|
||||||
"Monkey": 2,
|
|
||||||
"Moocode": 2,
|
|
||||||
"MoonScript": 2,
|
|
||||||
"Motorola 68K Assembly": 2,
|
|
||||||
"Myghty": 2,
|
|
||||||
"NCL": 2,
|
|
||||||
"NL": 1,
|
|
||||||
"NSIS": 2,
|
|
||||||
"Nearley": 2,
|
|
||||||
"Nemerle": 2,
|
|
||||||
"NetLinx": 2,
|
|
||||||
"NetLinx+ERB": 2,
|
|
||||||
"NetLogo": 2,
|
|
||||||
"NewLisp": 2,
|
|
||||||
"Nextflow": 2,
|
|
||||||
"Nginx": 1,
|
|
||||||
"Nim": 2,
|
|
||||||
"Ninja": 1,
|
|
||||||
"Nit": 2,
|
|
||||||
"Nix": 2,
|
|
||||||
"Nu": 2,
|
|
||||||
"NumPy": 2,
|
|
||||||
"OCaml": 2,
|
|
||||||
"ObjDump": 1,
|
|
||||||
"ObjectScript": 2,
|
|
||||||
"Objective-C": 2,
|
|
||||||
"Objective-C++": 2,
|
|
||||||
"Objective-J": 2,
|
|
||||||
"Omgrofl": 2,
|
|
||||||
"Opa": 2,
|
|
||||||
"Opal": 2,
|
|
||||||
"OpenCL": 2,
|
|
||||||
"OpenEdge ABL": 2,
|
|
||||||
"OpenRC runscript": 2,
|
|
||||||
"OpenSCAD": 2,
|
|
||||||
"OpenType Feature File": 1,
|
|
||||||
"Org": 4,
|
|
||||||
"Ox": 2,
|
|
||||||
"Oxygene": 2,
|
|
||||||
"Oz": 2,
|
|
||||||
"P4": 2,
|
|
||||||
"PHP": 2,
|
|
||||||
"PLSQL": 2,
|
|
||||||
"PLpgSQL": 2,
|
|
||||||
"POV-Ray SDL": 2,
|
|
||||||
"Pan": 2,
|
|
||||||
"Papyrus": 2,
|
|
||||||
"Parrot": 2,
|
|
||||||
"Parrot Assembly": 2,
|
|
||||||
"Parrot Internal Representation": 2,
|
|
||||||
"Pascal": 2,
|
|
||||||
"Pawn": 2,
|
|
||||||
"Pep8": 2,
|
|
||||||
"Perl": 2,
|
|
||||||
"Perl 6": 2,
|
|
||||||
"Pic": 3,
|
|
||||||
"Pickle": 1,
|
|
||||||
"PicoLisp": 2,
|
|
||||||
"PigLatin": 2,
|
|
||||||
"Pike": 2,
|
|
||||||
"Pod": 4,
|
|
||||||
"Pod 6": 4,
|
|
||||||
"PogoScript": 2,
|
|
||||||
"Pony": 2,
|
|
||||||
"PostCSS": 3,
|
|
||||||
"PostScript": 3,
|
|
||||||
"PowerBuilder": 2,
|
|
||||||
"PowerShell": 2,
|
|
||||||
"Processing": 2,
|
|
||||||
"Prolog": 2,
|
|
||||||
"Propeller Spin": 2,
|
|
||||||
"Protocol Buffer": 1,
|
|
||||||
"Public Key": 1,
|
|
||||||
"Pug": 3,
|
|
||||||
"Puppet": 2,
|
|
||||||
"Pure Data": 1,
|
|
||||||
"PureBasic": 2,
|
|
||||||
"PureScript": 2,
|
|
||||||
"Python": 2,
|
|
||||||
"Python console": 2,
|
|
||||||
"Python traceback": 1,
|
|
||||||
"QML": 2,
|
|
||||||
"QMake": 2,
|
|
||||||
"Quake": 2,
|
|
||||||
"R": 2,
|
|
||||||
"RAML": 3,
|
|
||||||
"RDoc": 4,
|
|
||||||
"REALbasic": 2,
|
|
||||||
"REXX": 2,
|
|
||||||
"RHTML": 3,
|
|
||||||
"RMarkdown": 4,
|
|
||||||
"RPC": 2,
|
|
||||||
"RPM Spec": 1,
|
|
||||||
"RUNOFF": 3,
|
|
||||||
"Racket": 2,
|
|
||||||
"Ragel": 2,
|
|
||||||
"Rascal": 2,
|
|
||||||
"Raw token data": 1,
|
|
||||||
"Reason": 2,
|
|
||||||
"Rebol": 2,
|
|
||||||
"Red": 2,
|
|
||||||
"Redcode": 2,
|
|
||||||
"Regular Expression": 1,
|
|
||||||
"Ren'Py": 2,
|
|
||||||
"RenderScript": 2,
|
|
||||||
"Rich Text Format": 3,
|
|
||||||
"Ring": 2,
|
|
||||||
"RobotFramework": 2,
|
|
||||||
"Roff": 3,
|
|
||||||
"Roff Manpage": 3,
|
|
||||||
"Rouge": 2,
|
|
||||||
"Ruby": 2,
|
|
||||||
"Rust": 2,
|
|
||||||
"SAS": 2,
|
|
||||||
"SCSS": 3,
|
|
||||||
"SMT": 2,
|
|
||||||
"SPARQL": 1,
|
|
||||||
"SQF": 2,
|
|
||||||
"SQL": 1,
|
|
||||||
"SQLPL": 2,
|
|
||||||
"SRecode Template": 3,
|
|
||||||
"SSH Config": 1,
|
|
||||||
"STON": 1,
|
|
||||||
"SVG": 1,
|
|
||||||
"Sage": 2,
|
|
||||||
"SaltStack": 2,
|
|
||||||
"Sass": 3,
|
|
||||||
"Scala": 2,
|
|
||||||
"Scaml": 3,
|
|
||||||
"Scheme": 2,
|
|
||||||
"Scilab": 2,
|
|
||||||
"Self": 2,
|
|
||||||
"ShaderLab": 2,
|
|
||||||
"Shell": 2,
|
|
||||||
"ShellSession": 2,
|
|
||||||
"Shen": 2,
|
|
||||||
"Slash": 2,
|
|
||||||
"Slice": 2,
|
|
||||||
"Slim": 3,
|
|
||||||
"Smali": 2,
|
|
||||||
"Smalltalk": 2,
|
|
||||||
"Smarty": 2,
|
|
||||||
"Solidity": 2,
|
|
||||||
"SourcePawn": 2,
|
|
||||||
"Spline Font Database": 1,
|
|
||||||
"Squirrel": 2,
|
|
||||||
"Stan": 2,
|
|
||||||
"Standard ML": 2,
|
|
||||||
"Stata": 2,
|
|
||||||
"Stylus": 3,
|
|
||||||
"SubRip Text": 1,
|
|
||||||
"SugarSS": 3,
|
|
||||||
"SuperCollider": 2,
|
|
||||||
"Svelte": 3,
|
|
||||||
"Swift": 2,
|
|
||||||
"SystemVerilog": 2,
|
|
||||||
"TI Program": 2,
|
|
||||||
"TLA": 2,
|
|
||||||
"TOML": 1,
|
|
||||||
"TSQL": 2,
|
|
||||||
"TSX": 2,
|
|
||||||
"TXL": 2,
|
|
||||||
"Tcl": 2,
|
|
||||||
"Tcsh": 2,
|
|
||||||
"TeX": 3,
|
|
||||||
"Tea": 3,
|
|
||||||
"Terra": 2,
|
|
||||||
"Text": 4,
|
|
||||||
"Textile": 4,
|
|
||||||
"Thrift": 2,
|
|
||||||
"Turing": 2,
|
|
||||||
"Turtle": 1,
|
|
||||||
"Twig": 3,
|
|
||||||
"Type Language": 1,
|
|
||||||
"TypeScript": 2,
|
|
||||||
"Unified Parallel C": 2,
|
|
||||||
"Unity3D Asset": 1,
|
|
||||||
"Unix Assembly": 2,
|
|
||||||
"Uno": 2,
|
|
||||||
"UnrealScript": 2,
|
|
||||||
"UrWeb": 2,
|
|
||||||
"VCL": 2,
|
|
||||||
"VHDL": 2,
|
|
||||||
"Vala": 2,
|
|
||||||
"Verilog": 2,
|
|
||||||
"Vim script": 2,
|
|
||||||
"Visual Basic": 2,
|
|
||||||
"Volt": 2,
|
|
||||||
"Vue": 3,
|
|
||||||
"Wavefront Material": 1,
|
|
||||||
"Wavefront Object": 1,
|
|
||||||
"Web Ontology Language": 1,
|
|
||||||
"WebAssembly": 2,
|
|
||||||
"WebIDL": 2,
|
|
||||||
"WebVTT": 1,
|
|
||||||
"Windows Registry Entries": 1,
|
|
||||||
"Wollok": 2,
|
|
||||||
"World of Warcraft Addon Data": 1,
|
|
||||||
"X BitMap": 1,
|
|
||||||
"X Font Directory Index": 1,
|
|
||||||
"X PixMap": 1,
|
|
||||||
"X10": 2,
|
|
||||||
"XC": 2,
|
|
||||||
"XCompose": 1,
|
|
||||||
"XML": 1,
|
|
||||||
"XPages": 1,
|
|
||||||
"XProc": 2,
|
|
||||||
"XQuery": 2,
|
|
||||||
"XS": 2,
|
|
||||||
"XSLT": 2,
|
|
||||||
"Xojo": 2,
|
|
||||||
"Xtend": 2,
|
|
||||||
"YAML": 1,
|
|
||||||
"YANG": 1,
|
|
||||||
"YARA": 2,
|
|
||||||
"YASnippet": 3,
|
|
||||||
"Yacc": 2,
|
|
||||||
"ZAP": 2,
|
|
||||||
"ZIL": 2,
|
|
||||||
"Zeek": 2,
|
|
||||||
"ZenScript": 2,
|
|
||||||
"Zephir": 2,
|
|
||||||
"Zig": 2,
|
|
||||||
"Zimpl": 2,
|
|
||||||
"desktop": 1,
|
|
||||||
"eC": 2,
|
|
||||||
"edn": 1,
|
|
||||||
"fish": 2,
|
|
||||||
"mcfunction": 2,
|
|
||||||
"mupad": 2,
|
|
||||||
"nanorc": 1,
|
|
||||||
"nesC": 2,
|
|
||||||
"ooc": 2,
|
|
||||||
"q": 2,
|
|
||||||
"reStructuredText": 4,
|
|
||||||
"sed": 2,
|
|
||||||
"wdl": 2,
|
|
||||||
"wisp": 2,
|
|
||||||
"xBase": 2,
|
|
||||||
}
|
|
20
vendor/github.com/src-d/go-oniguruma/.travis.yml
generated
vendored
20
vendor/github.com/src-d/go-oniguruma/.travis.yml
generated
vendored
|
@ -1,20 +0,0 @@
|
||||||
dist: trusty
|
|
||||||
language: go
|
|
||||||
go:
|
|
||||||
- '1.11.x'
|
|
||||||
- '1.12.x'
|
|
||||||
|
|
||||||
env:
|
|
||||||
global:
|
|
||||||
- LD_LIBRARY_PATH="/usr/local/lib":${LD_LIBRARY_PATH}
|
|
||||||
- GO111MODULE=on
|
|
||||||
- ONIGURUMA_VERSION='6.9.1'
|
|
||||||
|
|
||||||
before_install: # install oniguruma manually as trusty has only ancient 5.x
|
|
||||||
- sudo apt-get install -y dpkg # dpkg >= 1.17.5ubuntu5.8 fixes https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/1730627
|
|
||||||
- wget "http://archive.ubuntu.com/ubuntu/pool/universe/libo/libonig/libonig5_${ONIGURUMA_VERSION}-1_amd64.deb"
|
|
||||||
- sudo dpkg -i "libonig5_${ONIGURUMA_VERSION}-1_amd64.deb"
|
|
||||||
- wget "http://archive.ubuntu.com/ubuntu/pool/universe/libo/libonig/libonig-dev_${ONIGURUMA_VERSION}-1_amd64.deb"
|
|
||||||
- sudo dpkg -i "libonig-dev_${ONIGURUMA_VERSION}-1_amd64.deb"
|
|
||||||
script:
|
|
||||||
- go test -v --cover -race
|
|
1
vendor/github.com/src-d/go-oniguruma/go.mod
generated
vendored
1
vendor/github.com/src-d/go-oniguruma/go.mod
generated
vendored
|
@ -1 +0,0 @@
|
||||||
module github.com/src-d/go-oniguruma
|
|
18
vendor/gopkg.in/yaml.v2/.travis.yml
generated
vendored
18
vendor/gopkg.in/yaml.v2/.travis.yml
generated
vendored
|
@ -1,12 +1,16 @@
|
||||||
language: go
|
language: go
|
||||||
|
|
||||||
go:
|
go:
|
||||||
- 1.4
|
- "1.4.x"
|
||||||
- 1.5
|
- "1.5.x"
|
||||||
- 1.6
|
- "1.6.x"
|
||||||
- 1.7
|
- "1.7.x"
|
||||||
- 1.8
|
- "1.8.x"
|
||||||
- 1.9
|
- "1.9.x"
|
||||||
- tip
|
- "1.10.x"
|
||||||
|
- "1.11.x"
|
||||||
|
- "1.12.x"
|
||||||
|
- "1.13.x"
|
||||||
|
- "tip"
|
||||||
|
|
||||||
go_import_path: gopkg.in/yaml.v2
|
go_import_path: gopkg.in/yaml.v2
|
||||||
|
|
14
vendor/gopkg.in/yaml.v2/decode.go
generated
vendored
14
vendor/gopkg.in/yaml.v2/decode.go
generated
vendored
|
@ -319,10 +319,14 @@ func (d *decoder) prepare(n *node, out reflect.Value) (newout reflect.Value, unm
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
// 400,000 decode operations is ~500kb of dense object declarations, or ~5kb of dense object declarations with 10000% alias expansion
|
// 400,000 decode operations is ~500kb of dense object declarations, or
|
||||||
|
// ~5kb of dense object declarations with 10000% alias expansion
|
||||||
alias_ratio_range_low = 400000
|
alias_ratio_range_low = 400000
|
||||||
// 4,000,000 decode operations is ~5MB of dense object declarations, or ~4.5MB of dense object declarations with 10% alias expansion
|
|
||||||
|
// 4,000,000 decode operations is ~5MB of dense object declarations, or
|
||||||
|
// ~4.5MB of dense object declarations with 10% alias expansion
|
||||||
alias_ratio_range_high = 4000000
|
alias_ratio_range_high = 4000000
|
||||||
|
|
||||||
// alias_ratio_range is the range over which we scale allowed alias ratios
|
// alias_ratio_range is the range over which we scale allowed alias ratios
|
||||||
alias_ratio_range = float64(alias_ratio_range_high - alias_ratio_range_low)
|
alias_ratio_range = float64(alias_ratio_range_high - alias_ratio_range_low)
|
||||||
)
|
)
|
||||||
|
@ -784,8 +788,7 @@ func (d *decoder) merge(n *node, out reflect.Value) {
|
||||||
case mappingNode:
|
case mappingNode:
|
||||||
d.unmarshal(n, out)
|
d.unmarshal(n, out)
|
||||||
case aliasNode:
|
case aliasNode:
|
||||||
an, ok := d.doc.anchors[n.value]
|
if n.alias != nil && n.alias.kind != mappingNode {
|
||||||
if ok && an.kind != mappingNode {
|
|
||||||
failWantMap()
|
failWantMap()
|
||||||
}
|
}
|
||||||
d.unmarshal(n, out)
|
d.unmarshal(n, out)
|
||||||
|
@ -794,8 +797,7 @@ func (d *decoder) merge(n *node, out reflect.Value) {
|
||||||
for i := len(n.children) - 1; i >= 0; i-- {
|
for i := len(n.children) - 1; i >= 0; i-- {
|
||||||
ni := n.children[i]
|
ni := n.children[i]
|
||||||
if ni.kind == aliasNode {
|
if ni.kind == aliasNode {
|
||||||
an, ok := d.doc.anchors[ni.value]
|
if ni.alias != nil && ni.alias.kind != mappingNode {
|
||||||
if ok && an.kind != mappingNode {
|
|
||||||
failWantMap()
|
failWantMap()
|
||||||
}
|
}
|
||||||
} else if ni.kind != mappingNode {
|
} else if ni.kind != mappingNode {
|
||||||
|
|
109
vendor/gopkg.in/yaml.v2/scannerc.go
generated
vendored
109
vendor/gopkg.in/yaml.v2/scannerc.go
generated
vendored
|
@ -626,30 +626,17 @@ func trace(args ...interface{}) func() {
|
||||||
func yaml_parser_fetch_more_tokens(parser *yaml_parser_t) bool {
|
func yaml_parser_fetch_more_tokens(parser *yaml_parser_t) bool {
|
||||||
// While we need more tokens to fetch, do it.
|
// While we need more tokens to fetch, do it.
|
||||||
for {
|
for {
|
||||||
// Check if we really need to fetch more tokens.
|
if parser.tokens_head != len(parser.tokens) {
|
||||||
need_more_tokens := false
|
// If queue is non-empty, check if any potential simple key may
|
||||||
|
// occupy the head position.
|
||||||
if parser.tokens_head == len(parser.tokens) {
|
head_tok_idx, ok := parser.simple_keys_by_tok[parser.tokens_parsed]
|
||||||
// Queue is empty.
|
if !ok {
|
||||||
need_more_tokens = true
|
break
|
||||||
} else {
|
} else if valid, ok := yaml_simple_key_is_valid(parser, &parser.simple_keys[head_tok_idx]); !ok {
|
||||||
// Check if any potential simple key may occupy the head position.
|
|
||||||
if !yaml_parser_stale_simple_keys(parser) {
|
|
||||||
return false
|
return false
|
||||||
|
} else if !valid {
|
||||||
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
for i := range parser.simple_keys {
|
|
||||||
simple_key := &parser.simple_keys[i]
|
|
||||||
if simple_key.possible && simple_key.token_number == parser.tokens_parsed {
|
|
||||||
need_more_tokens = true
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// We are finished.
|
|
||||||
if !need_more_tokens {
|
|
||||||
break
|
|
||||||
}
|
}
|
||||||
// Fetch the next token.
|
// Fetch the next token.
|
||||||
if !yaml_parser_fetch_next_token(parser) {
|
if !yaml_parser_fetch_next_token(parser) {
|
||||||
|
@ -678,11 +665,6 @@ func yaml_parser_fetch_next_token(parser *yaml_parser_t) bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove obsolete potential simple keys.
|
|
||||||
if !yaml_parser_stale_simple_keys(parser) {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check the indentation level against the current column.
|
// Check the indentation level against the current column.
|
||||||
if !yaml_parser_unroll_indent(parser, parser.mark.column) {
|
if !yaml_parser_unroll_indent(parser, parser.mark.column) {
|
||||||
return false
|
return false
|
||||||
|
@ -837,29 +819,30 @@ func yaml_parser_fetch_next_token(parser *yaml_parser_t) bool {
|
||||||
"found character that cannot start any token")
|
"found character that cannot start any token")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check the list of potential simple keys and remove the positions that
|
func yaml_simple_key_is_valid(parser *yaml_parser_t, simple_key *yaml_simple_key_t) (valid, ok bool) {
|
||||||
// cannot contain simple keys anymore.
|
if !simple_key.possible {
|
||||||
func yaml_parser_stale_simple_keys(parser *yaml_parser_t) bool {
|
return false, true
|
||||||
// Check for a potential simple key for each flow level.
|
|
||||||
for i := range parser.simple_keys {
|
|
||||||
simple_key := &parser.simple_keys[i]
|
|
||||||
|
|
||||||
// The specification requires that a simple key
|
|
||||||
//
|
|
||||||
// - is limited to a single line,
|
|
||||||
// - is shorter than 1024 characters.
|
|
||||||
if simple_key.possible && (simple_key.mark.line < parser.mark.line || simple_key.mark.index+1024 < parser.mark.index) {
|
|
||||||
|
|
||||||
// Check if the potential simple key to be removed is required.
|
|
||||||
if simple_key.required {
|
|
||||||
return yaml_parser_set_scanner_error(parser,
|
|
||||||
"while scanning a simple key", simple_key.mark,
|
|
||||||
"could not find expected ':'")
|
|
||||||
}
|
|
||||||
simple_key.possible = false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return true
|
|
||||||
|
// The 1.2 specification says:
|
||||||
|
//
|
||||||
|
// "If the ? indicator is omitted, parsing needs to see past the
|
||||||
|
// implicit key to recognize it as such. To limit the amount of
|
||||||
|
// lookahead required, the “:” indicator must appear at most 1024
|
||||||
|
// Unicode characters beyond the start of the key. In addition, the key
|
||||||
|
// is restricted to a single line."
|
||||||
|
//
|
||||||
|
if simple_key.mark.line < parser.mark.line || simple_key.mark.index+1024 < parser.mark.index {
|
||||||
|
// Check if the potential simple key to be removed is required.
|
||||||
|
if simple_key.required {
|
||||||
|
return false, yaml_parser_set_scanner_error(parser,
|
||||||
|
"while scanning a simple key", simple_key.mark,
|
||||||
|
"could not find expected ':'")
|
||||||
|
}
|
||||||
|
simple_key.possible = false
|
||||||
|
return false, true
|
||||||
|
}
|
||||||
|
return true, true
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if a simple key may start at the current position and add it if
|
// Check if a simple key may start at the current position and add it if
|
||||||
|
@ -879,13 +862,14 @@ func yaml_parser_save_simple_key(parser *yaml_parser_t) bool {
|
||||||
possible: true,
|
possible: true,
|
||||||
required: required,
|
required: required,
|
||||||
token_number: parser.tokens_parsed + (len(parser.tokens) - parser.tokens_head),
|
token_number: parser.tokens_parsed + (len(parser.tokens) - parser.tokens_head),
|
||||||
|
mark: parser.mark,
|
||||||
}
|
}
|
||||||
simple_key.mark = parser.mark
|
|
||||||
|
|
||||||
if !yaml_parser_remove_simple_key(parser) {
|
if !yaml_parser_remove_simple_key(parser) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
parser.simple_keys[len(parser.simple_keys)-1] = simple_key
|
parser.simple_keys[len(parser.simple_keys)-1] = simple_key
|
||||||
|
parser.simple_keys_by_tok[simple_key.token_number] = len(parser.simple_keys) - 1
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
@ -900,9 +884,10 @@ func yaml_parser_remove_simple_key(parser *yaml_parser_t) bool {
|
||||||
"while scanning a simple key", parser.simple_keys[i].mark,
|
"while scanning a simple key", parser.simple_keys[i].mark,
|
||||||
"could not find expected ':'")
|
"could not find expected ':'")
|
||||||
}
|
}
|
||||||
|
// Remove the key from the stack.
|
||||||
|
parser.simple_keys[i].possible = false
|
||||||
|
delete(parser.simple_keys_by_tok, parser.simple_keys[i].token_number)
|
||||||
}
|
}
|
||||||
// Remove the key from the stack.
|
|
||||||
parser.simple_keys[i].possible = false
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -912,7 +897,12 @@ const max_flow_level = 10000
|
||||||
// Increase the flow level and resize the simple key list if needed.
|
// Increase the flow level and resize the simple key list if needed.
|
||||||
func yaml_parser_increase_flow_level(parser *yaml_parser_t) bool {
|
func yaml_parser_increase_flow_level(parser *yaml_parser_t) bool {
|
||||||
// Reset the simple key on the next level.
|
// Reset the simple key on the next level.
|
||||||
parser.simple_keys = append(parser.simple_keys, yaml_simple_key_t{})
|
parser.simple_keys = append(parser.simple_keys, yaml_simple_key_t{
|
||||||
|
possible: false,
|
||||||
|
required: false,
|
||||||
|
token_number: parser.tokens_parsed + (len(parser.tokens) - parser.tokens_head),
|
||||||
|
mark: parser.mark,
|
||||||
|
})
|
||||||
|
|
||||||
// Increase the flow level.
|
// Increase the flow level.
|
||||||
parser.flow_level++
|
parser.flow_level++
|
||||||
|
@ -928,7 +918,9 @@ func yaml_parser_increase_flow_level(parser *yaml_parser_t) bool {
|
||||||
func yaml_parser_decrease_flow_level(parser *yaml_parser_t) bool {
|
func yaml_parser_decrease_flow_level(parser *yaml_parser_t) bool {
|
||||||
if parser.flow_level > 0 {
|
if parser.flow_level > 0 {
|
||||||
parser.flow_level--
|
parser.flow_level--
|
||||||
parser.simple_keys = parser.simple_keys[:len(parser.simple_keys)-1]
|
last := len(parser.simple_keys) - 1
|
||||||
|
delete(parser.simple_keys_by_tok, parser.simple_keys[last].token_number)
|
||||||
|
parser.simple_keys = parser.simple_keys[:last]
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
@ -1005,6 +997,8 @@ func yaml_parser_fetch_stream_start(parser *yaml_parser_t) bool {
|
||||||
// Initialize the simple key stack.
|
// Initialize the simple key stack.
|
||||||
parser.simple_keys = append(parser.simple_keys, yaml_simple_key_t{})
|
parser.simple_keys = append(parser.simple_keys, yaml_simple_key_t{})
|
||||||
|
|
||||||
|
parser.simple_keys_by_tok = make(map[int]int)
|
||||||
|
|
||||||
// A simple key is allowed at the beginning of the stream.
|
// A simple key is allowed at the beginning of the stream.
|
||||||
parser.simple_key_allowed = true
|
parser.simple_key_allowed = true
|
||||||
|
|
||||||
|
@ -1286,7 +1280,11 @@ func yaml_parser_fetch_value(parser *yaml_parser_t) bool {
|
||||||
simple_key := &parser.simple_keys[len(parser.simple_keys)-1]
|
simple_key := &parser.simple_keys[len(parser.simple_keys)-1]
|
||||||
|
|
||||||
// Have we found a simple key?
|
// Have we found a simple key?
|
||||||
if simple_key.possible {
|
if valid, ok := yaml_simple_key_is_valid(parser, simple_key); !ok {
|
||||||
|
return false
|
||||||
|
|
||||||
|
} else if valid {
|
||||||
|
|
||||||
// Create the KEY token and insert it into the queue.
|
// Create the KEY token and insert it into the queue.
|
||||||
token := yaml_token_t{
|
token := yaml_token_t{
|
||||||
typ: yaml_KEY_TOKEN,
|
typ: yaml_KEY_TOKEN,
|
||||||
|
@ -1304,6 +1302,7 @@ func yaml_parser_fetch_value(parser *yaml_parser_t) bool {
|
||||||
|
|
||||||
// Remove the simple key.
|
// Remove the simple key.
|
||||||
simple_key.possible = false
|
simple_key.possible = false
|
||||||
|
delete(parser.simple_keys_by_tok, simple_key.token_number)
|
||||||
|
|
||||||
// A simple key cannot follow another simple key.
|
// A simple key cannot follow another simple key.
|
||||||
parser.simple_key_allowed = false
|
parser.simple_key_allowed = false
|
||||||
|
|
2
vendor/gopkg.in/yaml.v2/yaml.go
generated
vendored
2
vendor/gopkg.in/yaml.v2/yaml.go
generated
vendored
|
@ -89,7 +89,7 @@ func UnmarshalStrict(in []byte, out interface{}) (err error) {
|
||||||
return unmarshal(in, out, true)
|
return unmarshal(in, out, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
// A Decorder reads and decodes YAML values from an input stream.
|
// A Decoder reads and decodes YAML values from an input stream.
|
||||||
type Decoder struct {
|
type Decoder struct {
|
||||||
strict bool
|
strict bool
|
||||||
parser *parser
|
parser *parser
|
||||||
|
|
1
vendor/gopkg.in/yaml.v2/yamlh.go
generated
vendored
1
vendor/gopkg.in/yaml.v2/yamlh.go
generated
vendored
|
@ -579,6 +579,7 @@ type yaml_parser_t struct {
|
||||||
|
|
||||||
simple_key_allowed bool // May a simple key occur at the current position?
|
simple_key_allowed bool // May a simple key occur at the current position?
|
||||||
simple_keys []yaml_simple_key_t // The stack of simple keys.
|
simple_keys []yaml_simple_key_t // The stack of simple keys.
|
||||||
|
simple_keys_by_tok map[int]int // possible simple_key indexes indexed by token_number
|
||||||
|
|
||||||
// Parser stuff
|
// Parser stuff
|
||||||
|
|
||||||
|
|
22
vendor/modules.txt
vendored
22
vendor/modules.txt
vendored
|
@ -205,6 +205,16 @@ github.com/gliderlabs/ssh
|
||||||
# github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a
|
# github.com/glycerine/go-unsnap-stream v0.0.0-20190901134440-81cf024a9e0a
|
||||||
## explicit
|
## explicit
|
||||||
github.com/glycerine/go-unsnap-stream
|
github.com/glycerine/go-unsnap-stream
|
||||||
|
# github.com/go-enry/go-enry/v2 v2.3.0
|
||||||
|
## explicit
|
||||||
|
github.com/go-enry/go-enry/v2
|
||||||
|
github.com/go-enry/go-enry/v2/data
|
||||||
|
github.com/go-enry/go-enry/v2/data/rule
|
||||||
|
github.com/go-enry/go-enry/v2/internal/tokenizer
|
||||||
|
github.com/go-enry/go-enry/v2/internal/tokenizer/flex
|
||||||
|
github.com/go-enry/go-enry/v2/regex
|
||||||
|
# github.com/go-enry/go-oniguruma v1.2.0
|
||||||
|
github.com/go-enry/go-oniguruma
|
||||||
# github.com/go-git/gcfg v1.5.0
|
# github.com/go-git/gcfg v1.5.0
|
||||||
github.com/go-git/gcfg
|
github.com/go-git/gcfg
|
||||||
github.com/go-git/gcfg/scanner
|
github.com/go-git/gcfg/scanner
|
||||||
|
@ -578,16 +588,6 @@ github.com/spf13/jwalterweatherman
|
||||||
github.com/spf13/pflag
|
github.com/spf13/pflag
|
||||||
# github.com/spf13/viper v1.4.0
|
# github.com/spf13/viper v1.4.0
|
||||||
github.com/spf13/viper
|
github.com/spf13/viper
|
||||||
# github.com/src-d/enry/v2 v2.1.0
|
|
||||||
## explicit
|
|
||||||
github.com/src-d/enry/v2
|
|
||||||
github.com/src-d/enry/v2/data
|
|
||||||
github.com/src-d/enry/v2/data/rule
|
|
||||||
github.com/src-d/enry/v2/internal/tokenizer
|
|
||||||
github.com/src-d/enry/v2/internal/tokenizer/flex
|
|
||||||
github.com/src-d/enry/v2/regex
|
|
||||||
# github.com/src-d/go-oniguruma v1.1.0
|
|
||||||
github.com/src-d/go-oniguruma
|
|
||||||
# github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2
|
# github.com/steveyen/gtreap v0.0.0-20150807155958-0abe01ef9be2
|
||||||
## explicit
|
## explicit
|
||||||
github.com/steveyen/gtreap
|
github.com/steveyen/gtreap
|
||||||
|
@ -803,7 +803,7 @@ gopkg.in/testfixtures.v2
|
||||||
gopkg.in/toqueteos/substring.v1
|
gopkg.in/toqueteos/substring.v1
|
||||||
# gopkg.in/warnings.v0 v0.1.2
|
# gopkg.in/warnings.v0 v0.1.2
|
||||||
gopkg.in/warnings.v0
|
gopkg.in/warnings.v0
|
||||||
# gopkg.in/yaml.v2 v2.2.4
|
# gopkg.in/yaml.v2 v2.2.8
|
||||||
gopkg.in/yaml.v2
|
gopkg.in/yaml.v2
|
||||||
# mvdan.cc/xurls/v2 v2.1.0
|
# mvdan.cc/xurls/v2 v2.1.0
|
||||||
## explicit
|
## explicit
|
||||||
|
|
Loading…
Reference in a new issue