https://github.com/nvlang/tag-to-code-lang
Map programming language tags to their full names
https://github.com/nvlang/tag-to-code-lang
Last synced: 22 days ago
JSON representation
Map programming language tags to their full names
- Host: GitHub
- URL: https://github.com/nvlang/tag-to-code-lang
- Owner: nvlang
- License: mit
- Created: 2024-07-11T21:50:49.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-06-08T00:30:11.000Z (25 days ago)
- Last Synced: 2025-06-08T01:29:24.374Z (25 days ago)
- Language: TypeScript
- Homepage:
- Size: 26.8 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
[
](https://github.com/nvlang/tag-to-code-lang)
[](https://npmjs.com/@nvl/tag-to-code-lang)
[](https://jsr.io/@nvl/tag-to-code-lang)
[](https://jsr.io/@nvl/tag-to-code-lang)
[](https://codecov.io/gh/nvlang/tag-to-code-lang)
## Getting Started
**Note:** This package is [ESM-only].
### Installation
#### Node.js (v16+)
```sh
pnpm add @nvl/tag-to-code-lang # If using PNPM
bun add @nvl/tag-to-code-lang # If using Bun
npm add @nvl/tag-to-code-lang # If using NPM
yarn add @nvl/tag-to-code-lang # If using Yarn
```#### Deno
```ts
import { tagToCodeLang } from 'https://esm.sh/@nvl/tag-to-code-lang@1';
```### Usage
```ts
import { tagToCodeLang } from '@nvl/tag-to-code-lang';console.log(tagToCodeLang('js')); // JavaScript
console.log(tagToCodeLang('ts')); // TypeScript
console.log(tagToCodeLang('rb')); // Ruby
console.log(tagToCodeLang('hs')); // Haskell
```Note that file extensions are not recognized, as there would be many collisions:
```ts
import { tagToCodeLang } from '@nvl/tag-to-code-lang';console.log(tagToCodeLang('.h')); // undefined
console.log(tagToCodeLang('h')); // undefined
console.log(tagToCodeLang('cpp')); // C++
console.log(tagToCodeLang('c')); // C
```If you believe a tag which is not currently recognized _should_ be recognized,
you can open an issue in the
[`github-linguist/linguist`](https://github.com/github-linguist/linguist)
repository asking for the tag to be added to the `aliases` property of the
language inside the
[`languages.yml`](https://github.com/github-linguist/linguist/blob/master/lib/linguist/languages.yml)
file.## Acknowledgments
This project is merely an interface to data provided by the [GitHub Linguist]
project.## Similar work
- `linguist-languages` ([NPM](https://www.npmjs.com/package/linguist-languages)
/ [GitHub](https://github.com/ikatyang/linguist-languages)): The
`languages.yml` file from the GitHub Linguist project, as a JSON object. I
would've used this project instead of creating a separate one with a similar
purpose (though for a more specific use case), but I couldn't get it to work
due to
[URL encoded characters in import paths](https://github.com/ikatyang/linguist-languages/issues/278).[GitHub Linguist]: https://github.com/github-linguist/linguist
[ESM-only]:
https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c