Simplify createLanguage (#7509)

This commit is contained in:
fisker Cheung authored and GitHub committed 2020-02-17 16:39:08 +02:00
1 parent d2de524571
commit 2bfaa7c2cf
8 files changed
+24 -48

No files matched your search

+4 -8
View File
@@ -5,26 +5,22 @@ const options = require("./options");
const createLanguage = require("../utils/create-language");
const languages = [
createLanguage(require("linguist-languages/data/CSS"), data => ({
...data,
createLanguage(require("linguist-languages/data/CSS"), () => ({
since: "1.4.0",
parsers: ["css"],
vscodeLanguageIds: ["css"]
})),
createLanguage(require("linguist-languages/data/PostCSS"), data => ({
...data,
createLanguage(require("linguist-languages/data/PostCSS"), () => ({
since: "1.4.0",
parsers: ["css"],
vscodeLanguageIds: ["postcss"]
})),
createLanguage(require("linguist-languages/data/Less"), data => ({
...data,
createLanguage(require("linguist-languages/data/Less"), () => ({
since: "1.4.0",
parsers: ["less"],
vscodeLanguageIds: ["less"]
})),
createLanguage(require("linguist-languages/data/SCSS"), data => ({
...data,
createLanguage(require("linguist-languages/data/SCSS"), () => ({
since: "1.4.0",
parsers: ["scss"],
vscodeLanguageIds: ["scss"]
+1 -2
View File
@@ -5,8 +5,7 @@ const options = require("./options");
const createLanguage = require("../utils/create-language");
const languages = [
createLanguage(require("linguist-languages/data/GraphQL"), data => ({
...data,
createLanguage(require("linguist-languages/data/GraphQL"), () => ({
since: "1.5.0",
parsers: ["graphql"],
vscodeLanguageIds: ["graphql"]
+1 -2
View File
@@ -4,8 +4,7 @@ const printer = require("./printer-glimmer");
const createLanguage = require("../utils/create-language");
const languages = [
createLanguage(require("linguist-languages/data/Handlebars"), data => ({
...data,
createLanguage(require("linguist-languages/data/Handlebars"), () => ({
since: null, // unreleased
parsers: ["glimmer"],
vscodeLanguageIds: ["handlebars"]
+3 -7
View File
@@ -5,8 +5,7 @@ const createLanguage = require("../utils/create-language");
const options = require("./options");
const languages = [
createLanguage(require("linguist-languages/data/HTML"), data => ({
...data,
createLanguage(require("linguist-languages/data/HTML"), () => ({
name: "Angular",
since: "1.15.0",
parsers: ["angular"],
@@ -15,7 +14,6 @@ const languages = [
filenames: []
})),
createLanguage(require("linguist-languages/data/HTML"), data => ({
...data,
since: "1.15.0",
parsers: ["html"],
vscodeLanguageIds: ["html"],
@@ -23,8 +21,7 @@ const languages = [
".mjml" // MJML is considered XML in Linguist but it should be formatted as HTML
])
})),
createLanguage(require("linguist-languages/data/HTML"), data => ({
...data,
createLanguage(require("linguist-languages/data/HTML"), () => ({
name: "Lightning Web Components",
since: "1.17.0",
parsers: ["lwc"],
@@ -32,8 +29,7 @@ const languages = [
extensions: [],
filenames: []
})),
createLanguage(require("linguist-languages/data/Vue"), data => ({
...data,
createLanguage(require("linguist-languages/data/Vue"), () => ({
since: "1.10.0",
parsers: ["vue"],
vscodeLanguageIds: ["vue"]
+6 -15
View File
@@ -7,14 +7,12 @@ const createLanguage = require("../utils/create-language");
const languages = [
createLanguage(require("linguist-languages/data/JavaScript"), data => ({
...data,
since: "0.0.0",
parsers: ["babel", "flow"],
vscodeLanguageIds: ["javascript", "mongo"],
interpreters: data.interpreters.concat(["nodejs"])
})),
createLanguage(require("linguist-languages/data/JavaScript"), data => ({
...data,
createLanguage(require("linguist-languages/data/JavaScript"), () => ({
name: "Flow",
since: "0.0.0",
parsers: ["babel", "flow"],
@@ -23,26 +21,22 @@ const languages = [
filenames: [],
extensions: [".js.flow"]
})),
createLanguage(require("linguist-languages/data/JSX"), data => ({
...data,
createLanguage(require("linguist-languages/data/JSX"), () => ({
since: "0.0.0",
parsers: ["babel", "flow"],
vscodeLanguageIds: ["javascriptreact"]
})),
createLanguage(require("linguist-languages/data/TypeScript"), data => ({
...data,
createLanguage(require("linguist-languages/data/TypeScript"), () => ({
since: "1.4.0",
parsers: ["typescript", "babel-ts"],
vscodeLanguageIds: ["typescript"]
})),
createLanguage(require("linguist-languages/data/TSX"), data => ({
...data,
createLanguage(require("linguist-languages/data/TSX"), () => ({
since: "1.4.0",
parsers: ["typescript", "babel-ts"],
vscodeLanguageIds: ["typescriptreact"]
})),
createLanguage(require("linguist-languages/data/JSON"), data => ({
...data,
createLanguage(require("linguist-languages/data/JSON"), () => ({
name: "JSON.stringify",
since: "1.13.0",
parsers: ["json-stringify"],
@@ -51,7 +45,6 @@ const languages = [
filenames: ["package.json", "package-lock.json", "composer.json"]
})),
createLanguage(require("linguist-languages/data/JSON"), data => ({
...data,
since: "1.5.0",
parsers: ["json"],
vscodeLanguageIds: ["json"],
@@ -60,15 +53,13 @@ const languages = [
createLanguage(
require("linguist-languages/data/JSON with Comments"),
data => ({
...data,
since: "1.5.0",
parsers: ["json"],
vscodeLanguageIds: ["jsonc"],
filenames: data.filenames.concat([".eslintrc"])
})
),
createLanguage(require("linguist-languages/data/JSON5"), data => ({
...data,
createLanguage(require("linguist-languages/data/JSON5"), () => ({
since: "1.13.0",
parsers: ["json5"],
vscodeLanguageIds: ["json5"]
+1 -3
View File
@@ -6,15 +6,13 @@ const createLanguage = require("../utils/create-language");
const languages = [
createLanguage(require("linguist-languages/data/Markdown"), data => ({
...data,
since: "1.8.0",
parsers: ["remark"],
vscodeLanguageIds: ["markdown"],
filenames: data.filenames.concat(["README"]),
extensions: data.extensions.filter(extension => extension !== ".mdx")
})),
createLanguage(require("linguist-languages/data/Markdown"), data => ({
...data,
createLanguage(require("linguist-languages/data/Markdown"), () => ({
name: "MDX",
since: "1.15.0",
parsers: ["mdx"],
+1 -2
View File
@@ -5,8 +5,7 @@ const options = require("./options");
const createLanguage = require("../utils/create-language");
const languages = [
createLanguage(require("linguist-languages/data/YAML"), data => ({
...data,
createLanguage(require("linguist-languages/data/YAML"), () => ({
since: "1.14.0",
parsers: ["yaml"],
vscodeLanguageIds: ["yaml"]
+7 -9
View File
@@ -1,12 +1,10 @@
"use strict";
module.exports = function(linguistData, transform) {
const language = {};
for (const key in linguistData) {
const newKey = key === "languageId" ? "linguistLanguageId" : key;
language[newKey] = linguistData[key];
}
return transform(language);
module.exports = function(linguistData, override) {
const { languageId, ...rest } = linguistData;
return {
linguistLanguageId: languageId,
...rest,
...override(linguistData)
};
};