Add plugin_languages_aliases options #343
This commit is contained in:
@@ -51,6 +51,7 @@ For better results, it's advised to add either your surnames and eventually no-r
|
|||||||
plugin_languages_ignored: html, css # List of languages to ignore
|
plugin_languages_ignored: html, css # List of languages to ignore
|
||||||
plugin_languages_skipped: my-test-repo # List of repositories to skip
|
plugin_languages_skipped: my-test-repo # List of repositories to skip
|
||||||
plugin_languages_colors: "0:orange, javascript:#ff0000, ..." # Make most used languages orange and JavaScript red
|
plugin_languages_colors: "0:orange, javascript:#ff0000, ..." # Make most used languages orange and JavaScript red
|
||||||
|
plugin_languages_aliases: "JavaScript:JS, TypeScript:TS, ..." # Customize languages names with aliases
|
||||||
plugin_languages_details: bytes-size, percentage # Additionally display total bytes size and percentage
|
plugin_languages_details: bytes-size, percentage # Additionally display total bytes size and percentage
|
||||||
plugin_la nguages_threshold: 2% # Hides all languages less than 2%
|
plugin_la nguages_threshold: 2% # Hides all languages less than 2%
|
||||||
plugin_languages_limit: 8 # Display up to 8 languages
|
plugin_languages_limit: 8 # Display up to 8 languages
|
||||||
|
|||||||
@@ -17,11 +17,13 @@ export default async function({login, data, imports, q, rest, account}, {enabled
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Load inputs
|
//Load inputs
|
||||||
let {ignored, skipped, colors, details, threshold, limit, indepth, sections, "recent.load":_recent_load, "recent.days":_recent_days} = imports.metadata.plugins.languages.inputs({data, account, q})
|
let {ignored, skipped, colors, aliases, details, threshold, limit, indepth, sections, "recent.load":_recent_load, "recent.days":_recent_days} = imports.metadata.plugins.languages.inputs({data, account, q})
|
||||||
threshold = (Number(threshold.replace(/%$/, "")) || 0) / 100
|
threshold = (Number(threshold.replace(/%$/, "")) || 0) / 100
|
||||||
skipped.push(...data.shared["repositories.skipped"])
|
skipped.push(...data.shared["repositories.skipped"])
|
||||||
if (!limit)
|
if (!limit)
|
||||||
limit = Infinity
|
limit = Infinity
|
||||||
|
console.log(aliases, aliases.split(",").filter(alias => /^[\s\S]+:[\s\S]+$/.test(alias)).map(alias => alias.trim().split(":")))
|
||||||
|
aliases = Object.fromEntries(aliases.split(",").filter(alias => /^[\s\S]+:[\s\S]+$/.test(alias)).map(alias => alias.trim().split(":")).map(([key, value]) => [key.toLocaleLowerCase(), value]))
|
||||||
|
|
||||||
//Custom colors
|
//Custom colors
|
||||||
const colorsets = JSON.parse(`${await imports.fs.readFile(`${imports.__module(import.meta.url)}/colorsets.json`)}`)
|
const colorsets = JSON.parse(`${await imports.fs.readFile(`${imports.__module(import.meta.url)}/colorsets.json`)}`)
|
||||||
@@ -77,6 +79,13 @@ export default async function({login, data, imports, q, rest, account}, {enabled
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log(aliases)
|
||||||
|
//Apply aliases
|
||||||
|
for (const section of ["favorites", "recent"])
|
||||||
|
for (const language of languages[section])
|
||||||
|
if (language.name.toLocaleLowerCase() in aliases)
|
||||||
|
language.name = aliases[language.name.toLocaleLowerCase()]
|
||||||
|
|
||||||
//Results
|
//Results
|
||||||
return languages
|
return languages
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,10 +61,18 @@ inputs:
|
|||||||
type: array
|
type: array
|
||||||
format:
|
format:
|
||||||
- comma-separated
|
- comma-separated
|
||||||
- /((?<index>[0-9])|(?<language>[-+a-z0-9#])):(?<color>#?[-a-z0-9]+)/
|
- /((?<index>[0-9])|(?<language>[-+a-z0-9#]+)):(?<color>#?[-a-z0-9]+)/
|
||||||
default: github
|
default: github
|
||||||
example: javascript:red, 0:blue, 1:#ff00aa
|
example: javascript:red, 0:blue, 1:#ff00aa
|
||||||
|
|
||||||
|
# Overrides default languages name
|
||||||
|
# Use `${language}:${alias}` to change the name of language (e.g. "javascript:JS" to make JavaScript render as "JS", case of left operand ignored)
|
||||||
|
plugin_languages_aliases:
|
||||||
|
description: Custom languages names
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
example: javascript:JS typescript:TS
|
||||||
|
|
||||||
# Languages additional details
|
# Languages additional details
|
||||||
plugin_languages_details:
|
plugin_languages_details:
|
||||||
description: Additional details
|
description: Additional details
|
||||||
|
|||||||
Reference in New Issue
Block a user