mirror of
https://github.com/sourcebot-dev/sourcebot.git
synced 2025-12-12 04:15:30 +00:00
feat: add all 800 linguist language icons (#129)
* feat: add all 800 linguist language icons This uses existing svg icons for common languages, then falls back on the iconify library for the remaining 600 languages. * move icon component to ui components --------- Co-authored-by: Brendan Kellam <bshizzle1234@gmail.com>
This commit is contained in:
parent
1ba4e8215d
commit
0b78ffd2d1
7 changed files with 881 additions and 86 deletions
|
|
@ -34,6 +34,7 @@
|
||||||
"@codemirror/state": "^6.4.1",
|
"@codemirror/state": "^6.4.1",
|
||||||
"@codemirror/view": "^6.33.0",
|
"@codemirror/view": "^6.33.0",
|
||||||
"@hookform/resolvers": "^3.9.0",
|
"@hookform/resolvers": "^3.9.0",
|
||||||
|
"@iconify/react": "^5.1.0",
|
||||||
"@radix-ui/react-dropdown-menu": "^2.1.1",
|
"@radix-ui/react-dropdown-menu": "^2.1.1",
|
||||||
"@radix-ui/react-icons": "^1.3.0",
|
"@radix-ui/react-icons": "^1.3.0",
|
||||||
"@radix-ui/react-label": "^2.1.0",
|
"@radix-ui/react-label": "^2.1.0",
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,9 @@ import { cn, getRepoCodeHostInfo } from "@/lib/utils";
|
||||||
import { SetStateAction, useCallback, useEffect, useState } from "react";
|
import { SetStateAction, useCallback, useEffect, useState } from "react";
|
||||||
import { Entry } from "./entry";
|
import { Entry } from "./entry";
|
||||||
import { Filter } from "./filter";
|
import { Filter } from "./filter";
|
||||||
import { getLanguageIcon } from "./languageIcons";
|
|
||||||
import Image from "next/image";
|
import Image from "next/image";
|
||||||
import { LaptopIcon, QuestionMarkCircledIcon } from "@radix-ui/react-icons";
|
import { LaptopIcon } from "@radix-ui/react-icons";
|
||||||
|
import { FileIcon } from "@/components/ui/fileIcon";
|
||||||
|
|
||||||
interface FilePanelProps {
|
interface FilePanelProps {
|
||||||
matches: SearchResultFile[];
|
matches: SearchResultFile[];
|
||||||
|
|
@ -58,16 +58,9 @@ export const FilterPanel = ({
|
||||||
"Language",
|
"Language",
|
||||||
matches,
|
matches,
|
||||||
(key) => {
|
(key) => {
|
||||||
const iconSrc = getLanguageIcon(key);
|
const Icon = (
|
||||||
const Icon = iconSrc ? (
|
<FileIcon language={key} />
|
||||||
<Image
|
)
|
||||||
src={iconSrc}
|
|
||||||
alt={key}
|
|
||||||
className="w-4 h-4 flex-shrink-0"
|
|
||||||
/>
|
|
||||||
) : (
|
|
||||||
<QuestionMarkCircledIcon className="w-4 h-4 flex-shrink-0" />
|
|
||||||
);
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
key,
|
key,
|
||||||
|
|
|
||||||
37
packages/web/src/components/ui/fileIcon/fileIcon.tsx
Normal file
37
packages/web/src/components/ui/fileIcon/fileIcon.tsx
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
'use client';
|
||||||
|
|
||||||
|
import { getFileIconSvg } from "./fileIconSvg";
|
||||||
|
import { getFileIconIconify } from "./fileIconIconify"
|
||||||
|
import Image from "next/image";
|
||||||
|
import { QuestionMarkCircledIcon } from "@radix-ui/react-icons";
|
||||||
|
import { Icon } from '@iconify/react';
|
||||||
|
|
||||||
|
interface FileIconProps {
|
||||||
|
language: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const FileIcon = ({ language }: FileIconProps) => {
|
||||||
|
const iconSvg = getFileIconSvg(language);
|
||||||
|
let iconifyName = null;
|
||||||
|
if (!iconSvg) {
|
||||||
|
iconifyName = getFileIconIconify(language);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (iconSvg) {
|
||||||
|
return (
|
||||||
|
<Image
|
||||||
|
src={iconSvg}
|
||||||
|
alt={language}
|
||||||
|
className="w-4 h-4 flex-shrink-0"
|
||||||
|
/>
|
||||||
|
)
|
||||||
|
} else if (iconifyName) {
|
||||||
|
return (
|
||||||
|
<Icon icon={iconifyName} className="w-4 h-4 flex-shrink-0" />
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
return (
|
||||||
|
<QuestionMarkCircledIcon className="w-4 h-4 flex-shrink-0" />
|
||||||
|
)
|
||||||
|
}
|
||||||
|
};
|
||||||
760
packages/web/src/components/ui/fileIcon/fileIconIconify.ts
Normal file
760
packages/web/src/components/ui/fileIcon/fileIconIconify.ts
Normal file
|
|
@ -0,0 +1,760 @@
|
||||||
|
// https://github.com/github-linguist/linguist/blob/main/lib/linguist/languages.yml
|
||||||
|
export const getFileIconIconify = (language: string): string | null => {
|
||||||
|
// icons from:
|
||||||
|
// https://icon-sets.iconify.design/?&list=icons
|
||||||
|
const languageIconMap: { [key: string]: string | null } = {
|
||||||
|
"1C Enterprise": null,
|
||||||
|
"2-Dimensional Array": null,
|
||||||
|
"4D": null,
|
||||||
|
"ABAP": "file-icons:abap",
|
||||||
|
"ABAP CDS": "file-icons:abap",
|
||||||
|
"ABNF": null,
|
||||||
|
"AGS Script": "vscode-icons:file-type-c3",
|
||||||
|
"AIDL": null,
|
||||||
|
"AL": "vscode-icons:file-type-al",
|
||||||
|
"AMPL": "file-icons:ampl",
|
||||||
|
"ANTLR": "vscode-icons:file-type-antlr",
|
||||||
|
"API Blueprint": "vscode-icons:file-type-apib",
|
||||||
|
"APL": "vscode-icons:file-type-apl",
|
||||||
|
"ASL": null,
|
||||||
|
"ASN.1": null,
|
||||||
|
"ASP.NET": "vscode-icons:file-type-asp",
|
||||||
|
"ATS": "vscode-icons:file-type-ats",
|
||||||
|
"ActionScript": "vscode-icons:file-type-actionscript",
|
||||||
|
"Ada": "vscode-icons:file-type-ada",
|
||||||
|
"Adblock Filter List": null,
|
||||||
|
"Adobe Font Metrics": "simple-icons:adobefonts",
|
||||||
|
"Agda": "file-icons:agda",
|
||||||
|
"Alloy": "file-icons:alloy",
|
||||||
|
"Alpine Abuild": "file-icons:alpine-linux",
|
||||||
|
"Altium Designer": "simple-icons:altiumdesigner",
|
||||||
|
"AngelScript": "file-icons:angelscript",
|
||||||
|
"Ant Build System": "file-icons:apache-ant",
|
||||||
|
"Antlers": null,
|
||||||
|
"ApacheConf": "vscode-icons:file-type-apache",
|
||||||
|
"Apex": "vscode-icons:file-type-java",
|
||||||
|
"Apollo Guidance Computer": "file-icons:assembly-generic",
|
||||||
|
"AppleScript": "vscode-icons:file-type-applescript",
|
||||||
|
"Arc": null,
|
||||||
|
"AsciiDoc": "vscode-icons:file-type-asciidoc",
|
||||||
|
"AspectJ": null,
|
||||||
|
"Assembly": "file-icons:assembly-generic",
|
||||||
|
"Astro": "vscode-icons:file-type-astro",
|
||||||
|
"Asymptote": "file-icons:asymptote",
|
||||||
|
"Augeas": "file-icons:augeas",
|
||||||
|
"AutoHotkey": "file-icons:autohotkey",
|
||||||
|
"AutoIt": "file-icons:autoit",
|
||||||
|
"Avro IDL": "vscode-icons:file-type-apache",
|
||||||
|
"Awk": "vscode-icons:file-type-awk",
|
||||||
|
"B4X": null,
|
||||||
|
"BASIC": "devicon:visualbasic",
|
||||||
|
"BQN": null,
|
||||||
|
"Ballerina": "vscode-icons:file-type-ballerina",
|
||||||
|
"Batchfile": "vscode-icons:file-type-bat",
|
||||||
|
"Beef": null,
|
||||||
|
"Befunge": "vscode-icons:file-type-befunge",
|
||||||
|
"Berry": null,
|
||||||
|
"BibTeX": "file-icons:bibtex",
|
||||||
|
"Bicep": "vscode-icons:file-type-bicep",
|
||||||
|
"Bikeshed": "file-icons:bikeshed",
|
||||||
|
"Bison": "file-icons:bison",
|
||||||
|
"BitBake": null,
|
||||||
|
"Blade": "vscode-icons:file-type-blade",
|
||||||
|
"BlitzBasic": "vscode-icons:file-type-blitzbasic",
|
||||||
|
"BlitzMax": null,
|
||||||
|
"Bluespec": "file-icons:bluespec",
|
||||||
|
"Bluespec BH": "file-icons:bluespec",
|
||||||
|
"Boo": "file-icons:boo",
|
||||||
|
"Boogie": null,
|
||||||
|
"Brainfuck": "file-icons:brainfuck",
|
||||||
|
"BrighterScript": null,
|
||||||
|
"Brightscript": null,
|
||||||
|
"Browserslist": "file-icons:browserslist",
|
||||||
|
"C": "vscode-icons:file-type-c",
|
||||||
|
"C#": "vscode-icons:file-type-csharp",
|
||||||
|
"C++": "vscode-icons:file-type-cpp",
|
||||||
|
"C-ObjDump": null,
|
||||||
|
"C2hs Haskell": "vscode-icons:file-type-haskell",
|
||||||
|
"CAP CDS": null,
|
||||||
|
"CIL": null,
|
||||||
|
"CLIPS": "file-icons:clips",
|
||||||
|
"CMake": "vscode-icons:file-type-cmake",
|
||||||
|
"COBOL": "vscode-icons:file-type-cobol",
|
||||||
|
"CODEOWNERS": "vscode-icons:file-type-codeowners",
|
||||||
|
"COLLADA": null,
|
||||||
|
"CSON": "file-icons:config-coffeescript",
|
||||||
|
"CSS": "vscode-icons:file-type-css",
|
||||||
|
"CSV": "vscode-icons:file-type-excel",
|
||||||
|
"CUE": null,
|
||||||
|
"CWeb": null,
|
||||||
|
"Cabal Config": "vscode-icons:file-type-cabal",
|
||||||
|
"Caddyfile": "vscode-icons:file-type-caddy",
|
||||||
|
"Cadence": null,
|
||||||
|
"Cairo": "file-icons:cairo",
|
||||||
|
"Cairo Zero": "file-icons:cairo",
|
||||||
|
"CameLIGO": null,
|
||||||
|
"Cap'n Proto": null,
|
||||||
|
"Carbon": "devicon:carbon",
|
||||||
|
"CartoCSS": null,
|
||||||
|
"Ceylon": "vscode-icons:file-type-ceylon",
|
||||||
|
"Chapel": "file-icons:chapel",
|
||||||
|
"Charity": null,
|
||||||
|
"Checksums": null,
|
||||||
|
"ChucK": "file-icons:chuck",
|
||||||
|
"Circom": null,
|
||||||
|
"Cirru": "file-icons:cirru",
|
||||||
|
"Clarion": "file-icons:clarion",
|
||||||
|
"Clarity": "devicon:clarity",
|
||||||
|
"Classic ASP": "vscode-icons:file-type-asp",
|
||||||
|
"Clean": null,
|
||||||
|
"Click": "file-icons:click",
|
||||||
|
"Clojure": "vscode-icons:file-type-clojure",
|
||||||
|
"Closure Templates": null,
|
||||||
|
"Cloud Firestore Security Rules": null,
|
||||||
|
"CoNLL-U": null,
|
||||||
|
"CodeQL": "vscode-icons:file-type-codeql",
|
||||||
|
"CoffeeScript": "vscode-icons:file-type-coffeescript",
|
||||||
|
"ColdFusion": "file-icons:coldfusion",
|
||||||
|
"ColdFusion CFC": "file-icons:coldfusion",
|
||||||
|
"Common Lisp": "file-icons:common-lisp",
|
||||||
|
"Common Workflow Language": "file-icons:cwl",
|
||||||
|
"Component Pascal": "file-icons:component-pascal",
|
||||||
|
"Cool": null,
|
||||||
|
"Coq": "file-icons:coq",
|
||||||
|
"Cpp-ObjDump": null,
|
||||||
|
"Creole": "file-icons:creole",
|
||||||
|
"Crystal": "vscode-icons:file-type-crystal",
|
||||||
|
"Csound": "file-icons:csound",
|
||||||
|
"Csound Document": "file-icons:csound",
|
||||||
|
"Csound Score": "file-icons:csound",
|
||||||
|
"Cuda": "vscode-icons:file-type-cuda",
|
||||||
|
"Cue Sheet": null,
|
||||||
|
"Curry": "file-icons:curry",
|
||||||
|
"Cycript": null,
|
||||||
|
"Cylc": null,
|
||||||
|
"Cypher": null,
|
||||||
|
"Cython": "file-icons:cython",
|
||||||
|
"D": "vscode-icons:file-type-dlang",
|
||||||
|
"D-ObjDump": "vscode-icons:file-type-dlang",
|
||||||
|
"D2": null,
|
||||||
|
"DIGITAL Command Language": null,
|
||||||
|
"DM": null,
|
||||||
|
"DNS Zone": null,
|
||||||
|
"DTrace": null,
|
||||||
|
"Dafny": "file-icons:dafny",
|
||||||
|
"Darcs Patch": "file-icons:darcs-patch",
|
||||||
|
"Dart": "vscode-icons:file-type-dartlang",
|
||||||
|
"DataWeave": "file-icons:dataweave",
|
||||||
|
"Debian Package Control File": "vscode-icons:file-type-debian",
|
||||||
|
"DenizenScript": null,
|
||||||
|
"Dhall": "vscode-icons:file-type-dhall",
|
||||||
|
"Diff": "vscode-icons:file-type-diff",
|
||||||
|
"DirectX 3D File": null,
|
||||||
|
"Dockerfile": "vscode-icons:file-type-docker",
|
||||||
|
"Dogescript": "file-icons:dogescript",
|
||||||
|
"Dotenv": "vscode-icons:file-type-dotenv",
|
||||||
|
"Dune": null,
|
||||||
|
"Dylan": "vscode-icons:file-type-dylan",
|
||||||
|
"E": null,
|
||||||
|
"E-mail": null,
|
||||||
|
"EBNF": null,
|
||||||
|
"ECL": null,
|
||||||
|
"ECLiPSe": "devicon:eclipse",
|
||||||
|
"EJS": "vscode-icons:file-type-ejs",
|
||||||
|
"EQ": "file-icons:eq",
|
||||||
|
"Eagle": "file-icons:eagle",
|
||||||
|
"Earthly": "vscode-icons:file-type-earthly",
|
||||||
|
"Easybuild": "file-icons:easybuild",
|
||||||
|
"Ecere Projects": "file-icons:ecere",
|
||||||
|
"Ecmarkup": null,
|
||||||
|
"Edge": "file-icons:edge",
|
||||||
|
"EdgeQL": null,
|
||||||
|
"EditorConfig": "file-icons:editorconfig",
|
||||||
|
"Edje Data Collection": null,
|
||||||
|
"Eiffel": "file-icons:eiffel",
|
||||||
|
"Elixir": "vscode-icons:file-type-elixir",
|
||||||
|
"Elm": "vscode-icons:file-type-elm",
|
||||||
|
"Elvish": null,
|
||||||
|
"Elvish Transcript": null,
|
||||||
|
"Emacs Lisp": "file-icons:emacs",
|
||||||
|
"EmberScript": "file-icons:emberscript",
|
||||||
|
"Erlang": "vscode-icons:file-type-erlang",
|
||||||
|
"Euphoria": null,
|
||||||
|
"F#": "vscode-icons:file-type-fsharp",
|
||||||
|
"F*": null,
|
||||||
|
"FIGlet Font": null,
|
||||||
|
"FIRRTL": null,
|
||||||
|
"FLUX": "file-icons:flux",
|
||||||
|
"Factor": "file-icons:factor",
|
||||||
|
"Fancy": "file-icons:fancy",
|
||||||
|
"Fantom": "file-icons:fantom",
|
||||||
|
"Faust": "file-icons:faust",
|
||||||
|
"Fennel": null,
|
||||||
|
"Filebench WML": null,
|
||||||
|
"Filterscript": null,
|
||||||
|
"Fluent": null,
|
||||||
|
"Formatted": null,
|
||||||
|
"Forth": null,
|
||||||
|
"Fortran": "vscode-icons:file-type-fortran",
|
||||||
|
"Fortran Free Form": "vscode-icons:file-type-fortran",
|
||||||
|
"FreeBASIC": null,
|
||||||
|
"FreeMarker": "vscode-icons:file-type-freemarker",
|
||||||
|
"Frege": "file-icons:frege",
|
||||||
|
"Futhark": "file-icons:futhark",
|
||||||
|
"G-code": "vscode-icons:file-type-gcode",
|
||||||
|
"GAML": null,
|
||||||
|
"GAMS": "file-icons:gams",
|
||||||
|
"GAP": "file-icons:gap",
|
||||||
|
"GCC Machine Description": "devicon:gcc",
|
||||||
|
"GDB": "file-icons:gdb",
|
||||||
|
"GDScript": "file-icons:gdb",
|
||||||
|
"GEDCOM": null,
|
||||||
|
"GLSL": "vscode-icons:file-type-glsl",
|
||||||
|
"GN": "vscode-icons:file-type-python",
|
||||||
|
"GSC": null,
|
||||||
|
"Game Maker Language": null,
|
||||||
|
"Gemfile.lock": "file-icons:rubygems",
|
||||||
|
"Gemini": null,
|
||||||
|
"Genero 4gl": null,
|
||||||
|
"Genero per": null,
|
||||||
|
"Genie": null,
|
||||||
|
"Genshi": "file-icons:genshi",
|
||||||
|
"Gentoo Ebuild": "file-icons:gentoo",
|
||||||
|
"Gentoo Eclass": "file-icons:gentoo",
|
||||||
|
"Gerber Image": null,
|
||||||
|
"Gettext Catalog": null,
|
||||||
|
"Gherkin": null,
|
||||||
|
"Git Attributes": "vscode-icons:file-type-git",
|
||||||
|
"Git Config": "vscode-icons:file-type-git",
|
||||||
|
"Git Revision List": "vscode-icons:file-type-git",
|
||||||
|
"Gleam": "vscode-icons:file-type-gleam",
|
||||||
|
"Glimmer JS": null,
|
||||||
|
"Glimmer TS": null,
|
||||||
|
"Glyph": "file-icons:glyphs",
|
||||||
|
"Glyph Bitmap Distribution Format": "file-icons:glyphs",
|
||||||
|
"Gnuplot": "vscode-icons:file-type-gnuplot",
|
||||||
|
"Go": "vscode-icons:file-type-go",
|
||||||
|
"Go Checksums": "vscode-icons:file-type-go",
|
||||||
|
"Go Module": "vscode-icons:file-type-go",
|
||||||
|
"Go Workspace": "vscode-icons:file-type-go",
|
||||||
|
"Godot Resource": "vscode-icons:file-type-godot",
|
||||||
|
"Golo": "file-icons:golo",
|
||||||
|
"Gosu": "file-icons:gosu",
|
||||||
|
"Grace": null,
|
||||||
|
"Gradle": "vscode-icons:file-type-gradle",
|
||||||
|
"Gradle Kotlin DSL": "vscode-icons:file-type-gradle",
|
||||||
|
"Grammatical Framework": null,
|
||||||
|
"Graph Modeling Language": null,
|
||||||
|
"GraphQL": "vscode-icons:file-type-graphql",
|
||||||
|
"Graphviz (DOT)": "file-icons:graphviz",
|
||||||
|
"Groovy": "vscode-icons:file-type-groovy",
|
||||||
|
"Groovy Server Pages": "vscode-icons:file-type-groovy",
|
||||||
|
"HAProxy": null,
|
||||||
|
"HCL": "simple-icons:hcl",
|
||||||
|
"HLSL": "vscode-icons:file-type-hlsl",
|
||||||
|
"HOCON": null,
|
||||||
|
"HTML": "vscode-icons:file-type-html",
|
||||||
|
"HTML+ECR": "vscode-icons:file-type-html",
|
||||||
|
"HTML+EEX": "vscode-icons:file-type-html",
|
||||||
|
"HTML+ERB": "vscode-icons:file-type-html",
|
||||||
|
"HTML+PHP": "vscode-icons:file-type-html",
|
||||||
|
"HTML+Razor": "vscode-icons:file-type-html",
|
||||||
|
"HTTP": "vscode-icons:file-type-http",
|
||||||
|
"HXML": null,
|
||||||
|
"Hack": "file-icons:hack",
|
||||||
|
"Haml": "vscode-icons:file-type-haml",
|
||||||
|
"Handlebars": "vscode-icons:file-type-handlebars",
|
||||||
|
"Harbour": "vscode-icons:file-type-harbour",
|
||||||
|
"Hare": null,
|
||||||
|
"Haskell": "vscode-icons:file-type-haskell",
|
||||||
|
"Haxe": "vscode-icons:file-type-haxe",
|
||||||
|
"HiveQL": null,
|
||||||
|
"HolyC": "file-icons:templeos",
|
||||||
|
"Hosts File": null,
|
||||||
|
"Hy": "vscode-icons:file-type-hy",
|
||||||
|
"HyPhy": null,
|
||||||
|
"IDL": "file-icons:idl",
|
||||||
|
"IGOR Pro": "file-icons:igor-pro",
|
||||||
|
"INI": "vscode-icons:file-type-ini",
|
||||||
|
"IRC log": null,
|
||||||
|
"Idris": "vscode-icons:file-type-idris",
|
||||||
|
"Ignore List": "vscode-icons:file-type-git",
|
||||||
|
"ImageJ Macro": "simple-icons:imagej",
|
||||||
|
"Imba": "file-icons:imba",
|
||||||
|
"Inform 7": "file-icons:inform7",
|
||||||
|
"Ink": "vscode-icons:file-type-ink",
|
||||||
|
"Inno Setup": "vscode-icons:file-type-innosetup",
|
||||||
|
"Io": "vscode-icons:file-type-io",
|
||||||
|
"Ioke": "file-icons:ioke",
|
||||||
|
"Isabelle": "file-icons:isabelle",
|
||||||
|
"Isabelle ROOT": "file-icons:isabelle",
|
||||||
|
"J": null,
|
||||||
|
"JAR Manifest": "vscode-icons:file-type-java",
|
||||||
|
"JCL": null,
|
||||||
|
"JFlex": null,
|
||||||
|
"JSON": "vscode-icons:file-type-json",
|
||||||
|
"JSON with Comments": "vscode-icons:file-type-json",
|
||||||
|
"JSON5": "vscode-icons:file-type-json5",
|
||||||
|
"JSONLD": "vscode-icons:file-type-json",
|
||||||
|
"JSONiq": "vscode-icons:file-type-json",
|
||||||
|
"Janet": "vscode-icons:file-type-janet",
|
||||||
|
"Jasmin": null,
|
||||||
|
"Java": "vscode-icons:file-type-java",
|
||||||
|
"Java Properties": "vscode-icons:file-type-java",
|
||||||
|
"Java Server Pages": "vscode-icons:file-type-java",
|
||||||
|
"Java Template Engine": "vscode-icons:file-type-java",
|
||||||
|
"JavaScript": "vscode-icons:file-type-js",
|
||||||
|
"JavaScript+ERB": "vscode-icons:file-type-js",
|
||||||
|
"Jest Snapshot": "vscode-icons:file-type-jest-snapshot",
|
||||||
|
"JetBrains MPS": "logos:jetbrains-icon",
|
||||||
|
"Jinja": "vscode-icons:file-type-jinja",
|
||||||
|
"Jison": "file-icons:jison",
|
||||||
|
"Jison Lex": "file-icons:jison",
|
||||||
|
"Jolie": "file-icons:jolie",
|
||||||
|
"Jsonnet": "vscode-icons:file-type-jsonnet",
|
||||||
|
"Julia": "vscode-icons:file-type-julia",
|
||||||
|
"Julia REPL": "vscode-icons:file-type-julia",
|
||||||
|
"Jupyter Notebook": "vscode-icons:file-type-jupyter",
|
||||||
|
"Just": null,
|
||||||
|
"KRL": "file-icons:krl",
|
||||||
|
"Kaitai Struct": "file-icons:kaitai",
|
||||||
|
"KakouneScript": null,
|
||||||
|
"KerboScript": null,
|
||||||
|
"KiCad Layout": "file-icons:kicad",
|
||||||
|
"KiCad Legacy Layout": "file-icons:kicad",
|
||||||
|
"KiCad Schematic": "file-icons:kicad",
|
||||||
|
"Kickstart": null,
|
||||||
|
"Kit": null,
|
||||||
|
"Kotlin": "vscode-icons:file-type-kotlin",
|
||||||
|
"Kusto": "vscode-icons:file-type-kusto",
|
||||||
|
"LFE": "file-icons:lfe",
|
||||||
|
"LLVM": "file-icons:llvm",
|
||||||
|
"LOLCODE": "vscode-icons:file-type-lolcode",
|
||||||
|
"LSL": "vscode-icons:file-type-lsl",
|
||||||
|
"LTspice Symbol": "simple-icons:ltspice",
|
||||||
|
"LabVIEW": "file-icons:labview",
|
||||||
|
"Lark": "file-icons:lark",
|
||||||
|
"Lasso": "file-icons:lasso",
|
||||||
|
"Latte": null,
|
||||||
|
"Lean": "file-icons:lean",
|
||||||
|
"Lean 4": "file-icons:lean",
|
||||||
|
"Less": "vscode-icons:file-type-less",
|
||||||
|
"Lex": "vscode-icons:file-type-lex",
|
||||||
|
"LigoLANG": null,
|
||||||
|
"LilyPond": "vscode-icons:file-type-lilypond",
|
||||||
|
"Limbo": null,
|
||||||
|
"Linker Script": "vscode-icons:file-type-text",
|
||||||
|
"Linux Kernel Module": "devicon:linux",
|
||||||
|
"Liquid": "vscode-icons:file-type-liquid",
|
||||||
|
"Literate Agda": "file-icons:agda",
|
||||||
|
"Literate CoffeeScript": "vscode-icons:file-type-coffeescript",
|
||||||
|
"Literate Haskell": "vscode-icons:file-type-haskell",
|
||||||
|
"LiveCode Script": null,
|
||||||
|
"LiveScript": "vscode-icons:file-type-livescript",
|
||||||
|
"Logos": null,
|
||||||
|
"Logtalk": "file-icons:logtalk",
|
||||||
|
"LookML": "file-icons:lookml",
|
||||||
|
"LoomScript": null,
|
||||||
|
"Lua": "vscode-icons:file-type-lua",
|
||||||
|
"Luau": "vscode-icons:file-type-luau",
|
||||||
|
"M": null,
|
||||||
|
"M4": null,
|
||||||
|
"M4Sugar": null,
|
||||||
|
"MATLAB": "vscode-icons:file-type-matlab",
|
||||||
|
"MAXScript": "vscode-icons:file-type-maxscript",
|
||||||
|
"MDX": "vscode-icons:file-type-mdx",
|
||||||
|
"MLIR": null,
|
||||||
|
"MQL4": null,
|
||||||
|
"MQL5": null,
|
||||||
|
"MTML": null,
|
||||||
|
"MUF": null,
|
||||||
|
"Macaulay2": "file-icons:macaulay2",
|
||||||
|
"Makefile": "vscode-icons:file-type-makefile",
|
||||||
|
"Mako": "file-icons:mako",
|
||||||
|
"Markdown": "vscode-icons:file-type-markdown",
|
||||||
|
"Marko": "vscode-icons:file-type-marko",
|
||||||
|
"Mask": null,
|
||||||
|
"Mathematica": "file-icons:mathematica",
|
||||||
|
"Maven POM": "vscode-icons:file-type-maven",
|
||||||
|
"Max": "file-icons:max",
|
||||||
|
"Mercury": null,
|
||||||
|
"Mermaid": "vscode-icons:file-type-mermaid",
|
||||||
|
"Meson": "vscode-icons:file-type-meson",
|
||||||
|
"Metal": "file-icons:metal",
|
||||||
|
"Microsoft Developer Studio Project": null,
|
||||||
|
"Microsoft Visual Studio Solution": null,
|
||||||
|
"MiniD": null,
|
||||||
|
"MiniYAML": "vscode-icons:file-type-yaml",
|
||||||
|
"Mint": "file-icons:mint",
|
||||||
|
"Mirah": "file-icons:mirah",
|
||||||
|
"Modelica": "file-icons:modelica",
|
||||||
|
"Modula-2": "file-icons:modula-2",
|
||||||
|
"Modula-3": "file-icons:modula-3",
|
||||||
|
"Module Management System": null,
|
||||||
|
"Mojo": "vscode-icons:file-type-mojo",
|
||||||
|
"Monkey": "file-icons:monkey",
|
||||||
|
"Monkey C": "file-icons:monkey",
|
||||||
|
"Moocode": null,
|
||||||
|
"MoonBit": null,
|
||||||
|
"MoonScript": null,
|
||||||
|
"Motoko": null,
|
||||||
|
"Motorola 68K Assembly": "file-icons:assembly-motorola",
|
||||||
|
"Move": null,
|
||||||
|
"Muse": null,
|
||||||
|
"Mustache": "vscode-icons:file-type-mustache",
|
||||||
|
"Myghty": null,
|
||||||
|
"NASL": null,
|
||||||
|
"NCL": null,
|
||||||
|
"NEON": "file-icons:neon",
|
||||||
|
"NL": null,
|
||||||
|
"NMODL": null,
|
||||||
|
"NPM Config": "vscode-icons:file-type-npm",
|
||||||
|
"NSIS": "file-icons:nsis",
|
||||||
|
"NWScript": "file-icons:nwscript",
|
||||||
|
"Nasal": null,
|
||||||
|
"Nearley": null,
|
||||||
|
"Nemerle": "file-icons:nemerle",
|
||||||
|
"NetLinx": "file-icons:netlinx",
|
||||||
|
"NetLinx+ERB": "file-icons:netlinx",
|
||||||
|
"NetLogo": "file-icons:netlogo",
|
||||||
|
"NewLisp": "file-icons:lisp",
|
||||||
|
"Nextflow": "vscode-icons:file-type-nextflow",
|
||||||
|
"Nginx": "vscode-icons:file-type-nginx",
|
||||||
|
"Nim": "vscode-icons:file-type-nim",
|
||||||
|
"Ninja": "vscode-icons:file-type-ninja",
|
||||||
|
"Nit": null,
|
||||||
|
"Nix": "vscode-icons:file-type-nix",
|
||||||
|
"Noir": null,
|
||||||
|
"Nu": null,
|
||||||
|
"NumPy": "vscode-icons:file-type-numpy",
|
||||||
|
"Nunjucks": "vscode-icons:file-type-nunjucks",
|
||||||
|
"Nushell": "vscode-icons:file-type-shell",
|
||||||
|
"OASv2-json": "vscode-icons:file-type-json",
|
||||||
|
"OASv2-yaml": "vscode-icons:file-type-yaml",
|
||||||
|
"OASv3-json": "vscode-icons:file-type-json",
|
||||||
|
"OASv3-yaml": "vscode-icons:file-type-yaml",
|
||||||
|
"OCaml": "vscode-icons:file-type-ocaml",
|
||||||
|
"Oberon": "file-icons:oberon",
|
||||||
|
"ObjDump": null,
|
||||||
|
"Object Data Instance Notation": null,
|
||||||
|
"ObjectScript": null,
|
||||||
|
"Objective-C": "vscode-icons:file-type-objectivec",
|
||||||
|
"Objective-C++": "vscode-icons:file-type-objectivecpp",
|
||||||
|
"Objective-J": null,
|
||||||
|
"Odin": "file-icons:odin",
|
||||||
|
"Omgrofl": null,
|
||||||
|
"Opa": "file-icons:opa",
|
||||||
|
"Opal": null,
|
||||||
|
"Open Policy Agent": "file-icons:openpolicyagent",
|
||||||
|
"OpenAPI Specification v2": "file-icons:openapi",
|
||||||
|
"OpenAPI Specification v3": "file-icons:openapi",
|
||||||
|
"OpenCL": "vscode-icons:file-type-opencl",
|
||||||
|
"OpenEdge ABL": null,
|
||||||
|
"OpenQASM": null,
|
||||||
|
"OpenRC runscript": null,
|
||||||
|
"OpenSCAD": "vscode-icons:file-type-openscad",
|
||||||
|
"OpenStep Property List": null,
|
||||||
|
"OpenType Feature File": null,
|
||||||
|
"Option List": null,
|
||||||
|
"Org": "vscode-icons:file-type-org",
|
||||||
|
"Ox": null,
|
||||||
|
"Oxygene": "file-icons:oxygene",
|
||||||
|
"Oz": "file-icons:oz",
|
||||||
|
"P4": "file-icons:p4",
|
||||||
|
"PDDL": "vscode-icons:file-type-pddl",
|
||||||
|
"PEG.js": "file-icons:pegjs",
|
||||||
|
"PHP": "vscode-icons:file-type-php",
|
||||||
|
"PLSQL": "vscode-icons:file-type-plsql",
|
||||||
|
"PLpgSQL": null,
|
||||||
|
"POV-Ray SDL": "file-icons:pov-ray",
|
||||||
|
"Pact": null,
|
||||||
|
"Pan": null,
|
||||||
|
"Papyrus": "file-icons:papyrus",
|
||||||
|
"Parrot": "file-icons:parrot",
|
||||||
|
"Parrot Assembly": "file-icons:assembly-generic",
|
||||||
|
"Parrot Internal Representation": null,
|
||||||
|
"Pascal": "file-icons:pascal",
|
||||||
|
"Pawn": null,
|
||||||
|
"Pep8": "vscode-icons:file-type-python",
|
||||||
|
"Perl": "vscode-icons:file-type-perl",
|
||||||
|
"Pic": null,
|
||||||
|
"Pickle": "file-icons:pickle",
|
||||||
|
"PicoLisp": "file-icons:picolisp",
|
||||||
|
"PigLatin": null,
|
||||||
|
"Pike": "file-icons:pike",
|
||||||
|
"Pip Requirements": "vscode-icons:file-type-pip",
|
||||||
|
"Pkl": null,
|
||||||
|
"PlantUML": "vscode-icons:file-type-plantuml",
|
||||||
|
"Pod": "vscode-icons:file-type-perl",
|
||||||
|
"Pod 6": "vscode-icons:file-type-perl",
|
||||||
|
"PogoScript": "file-icons:pogoscript",
|
||||||
|
"Polar": null,
|
||||||
|
"Pony": "vscode-icons:file-type-pony",
|
||||||
|
"Portugol": null,
|
||||||
|
"PostCSS": "vscode-icons:file-type-postcss",
|
||||||
|
"PostScript": "file-icons:postscript",
|
||||||
|
"PowerBuilder": "file-icons:powerbuilder",
|
||||||
|
"PowerShell": "vscode-icons:file-type-powershell",
|
||||||
|
"Praat": null,
|
||||||
|
"Prisma": "vscode-icons:file-type-prisma",
|
||||||
|
"Processing": "vscode-icons:file-type-processinglang",
|
||||||
|
"Procfile": "vscode-icons:file-type-procfile",
|
||||||
|
"Proguard": null,
|
||||||
|
"Prolog": "vscode-icons:file-type-prolog",
|
||||||
|
"Promela": null,
|
||||||
|
"Propeller Spin": "file-icons:propeller",
|
||||||
|
"Protocol Buffer": "vscode-icons:file-type-protobuf",
|
||||||
|
"Protocol Buffer Text Format": "vscode-icons:file-type-protobuf",
|
||||||
|
"Public Key": "vscode-icons:file-type-key",
|
||||||
|
"Pug": "vscode-icons:file-type-pug",
|
||||||
|
"Puppet": "vscode-icons:file-type-puppet",
|
||||||
|
"Pure Data": null,
|
||||||
|
"PureBasic": "file-icons:purebasic",
|
||||||
|
"PureScript": "vscode-icons:file-type-purescript",
|
||||||
|
"Pyret": "vscode-icons:file-type-pyret",
|
||||||
|
"Python": "vscode-icons:file-type-python",
|
||||||
|
"Python console": "vscode-icons:file-type-python",
|
||||||
|
"Python traceback": "vscode-icons:file-type-python",
|
||||||
|
"Q#": "vscode-icons:file-type-qsharp",
|
||||||
|
"QML": "vscode-icons:file-type-qml",
|
||||||
|
"QMake": null,
|
||||||
|
"Qt Script": "file-icons:qt",
|
||||||
|
"Quake": null,
|
||||||
|
"QuickBASIC": null,
|
||||||
|
"R": "vscode-icons:file-type-r",
|
||||||
|
"RAML": "vscode-icons:file-type-raml",
|
||||||
|
"RBS": null,
|
||||||
|
"RDoc": "file-icons:rdoc",
|
||||||
|
"REALbasic": "file-icons:realbasic",
|
||||||
|
"REXX": "vscode-icons:file-type-rexx",
|
||||||
|
"RMarkdown": "file-icons:rmarkdown",
|
||||||
|
"RON": "vscode-icons:file-type-ron",
|
||||||
|
"RPC": null,
|
||||||
|
"RPGLE": null,
|
||||||
|
"RPM Spec": "devicon:redhat-wordmark",
|
||||||
|
"RUNOFF": null,
|
||||||
|
"Racket": "vscode-icons:file-type-racket",
|
||||||
|
"Ragel": null,
|
||||||
|
"Raku": "vscode-icons:file-type-raku",
|
||||||
|
"Rascal": "file-icons:rascal",
|
||||||
|
"Raw token data": null,
|
||||||
|
"ReScript": "vscode-icons:file-type-rescript",
|
||||||
|
"Readline Config": null,
|
||||||
|
"Reason": "vscode-icons:file-type-reason",
|
||||||
|
"ReasonLIGO": null,
|
||||||
|
"Rebol": "file-icons:rebol",
|
||||||
|
"Record Jar": null,
|
||||||
|
"Red": "file-icons:red",
|
||||||
|
"Redcode": null,
|
||||||
|
"Redirect Rules": null,
|
||||||
|
"Regular Expression": null,
|
||||||
|
"Ren'Py": "devicon:renpy",
|
||||||
|
"RenderScript": null,
|
||||||
|
"Rez": null,
|
||||||
|
"Rich Text Format": null,
|
||||||
|
"Ring": "file-icons:ring",
|
||||||
|
"Riot": "vscode-icons:file-type-riot",
|
||||||
|
"RobotFramework": "vscode-icons:file-type-robotframework",
|
||||||
|
"Roc": null,
|
||||||
|
"Roff": "file-icons:manpage",
|
||||||
|
"Roff Manpage": "file-icons:manpage",
|
||||||
|
"Rouge": null,
|
||||||
|
"RouterOS Script": null,
|
||||||
|
"Ruby": "vscode-icons:file-type-ruby",
|
||||||
|
"Rust": "vscode-icons:file-type-rust",
|
||||||
|
"SAS": "vscode-icons:file-type-sas",
|
||||||
|
"SCSS": "vscode-icons:file-type-scss",
|
||||||
|
"SELinux Policy": "devicon:linux",
|
||||||
|
"SMT": null,
|
||||||
|
"SPARQL": "vscode-icons:file-type-sparql",
|
||||||
|
"SQF": "vscode-icons:file-type-sqf",
|
||||||
|
"SQL": "vscode-icons:file-type-sql",
|
||||||
|
"SQLPL": null,
|
||||||
|
"SRecode Template": null,
|
||||||
|
"SSH Config": null,
|
||||||
|
"STAR": null,
|
||||||
|
"STL": null,
|
||||||
|
"STON": null,
|
||||||
|
"SVG": "vscode-icons:file-type-svg",
|
||||||
|
"SWIG": "vscode-icons:file-type-swig",
|
||||||
|
"Sage": "file-icons:sage",
|
||||||
|
"SaltStack": "vscode-icons:file-type-saltstack",
|
||||||
|
"Sass": "vscode-icons:file-type-sass",
|
||||||
|
"Scala": "vscode-icons:file-type-scala",
|
||||||
|
"Scaml": null,
|
||||||
|
"Scenic": null,
|
||||||
|
"Scheme": "file-icons:scheme",
|
||||||
|
"Scilab": "vscode-icons:file-type-scilab",
|
||||||
|
"Self": "file-icons:self",
|
||||||
|
"ShaderLab": "vscode-icons:file-type-shaderlab",
|
||||||
|
"Shell": "vscode-icons:file-type-shell",
|
||||||
|
"ShellCheck Config": "file-icons:shellcheck",
|
||||||
|
"ShellSession": "vscode-icons:file-type-shell",
|
||||||
|
"Shen": "file-icons:shen",
|
||||||
|
"Sieve": null,
|
||||||
|
"Simple File Verification": null,
|
||||||
|
"Singularity": null,
|
||||||
|
"Slash": "file-icons:slash",
|
||||||
|
"Slice": "vscode-icons:file-type-slice",
|
||||||
|
"Slim": "vscode-icons:file-type-slim",
|
||||||
|
"Slint": "vscode-icons:file-type-slint",
|
||||||
|
"SmPL": null,
|
||||||
|
"Smali": null,
|
||||||
|
"Smalltalk": null,
|
||||||
|
"Smarty": "vscode-icons:file-type-smarty",
|
||||||
|
"Smithy": null,
|
||||||
|
"Snakemake": "vscode-icons:file-type-snakemake",
|
||||||
|
"Solidity": "vscode-icons:file-type-solidity",
|
||||||
|
"Soong": null,
|
||||||
|
"SourcePawn": null,
|
||||||
|
"Spline Font Database": null,
|
||||||
|
"Squirrel": "vscode-icons:file-type-squirrel",
|
||||||
|
"Stan": "vscode-icons:file-type-stan",
|
||||||
|
"Standard ML": null,
|
||||||
|
"Starlark": null,
|
||||||
|
"Stata": "vscode-icons:file-type-stata",
|
||||||
|
"StringTemplate": null,
|
||||||
|
"Stylus": "vscode-icons:file-type-stylus",
|
||||||
|
"SubRip Text": null,
|
||||||
|
"SugarSS": null,
|
||||||
|
"SuperCollider": "file-icons:supercollider",
|
||||||
|
"Svelte": "vscode-icons:file-type-svelte",
|
||||||
|
"Sway": null,
|
||||||
|
"Sweave": null,
|
||||||
|
"Swift": "vscode-icons:file-type-swift",
|
||||||
|
"SystemVerilog": "vscode-icons:file-type-systemverilog",
|
||||||
|
"TI Program": null,
|
||||||
|
"TL-Verilog": "vscode-icons:file-type-verilog",
|
||||||
|
"TLA": "file-icons:tla",
|
||||||
|
"TOML": "vscode-icons:file-type-toml",
|
||||||
|
"TSPLIB data": null,
|
||||||
|
"TSQL": null,
|
||||||
|
"TSV": null,
|
||||||
|
"TSX": "vscode-icons:file-type-reactts",
|
||||||
|
"TXL": "file-icons:txl",
|
||||||
|
"Tact": null,
|
||||||
|
"Talon": null,
|
||||||
|
"Tcl": "vscode-icons:file-type-tcl",
|
||||||
|
"Tcsh": null,
|
||||||
|
"TeX": "vscode-icons:file-type-tex",
|
||||||
|
"Tea": null,
|
||||||
|
"Terra": "vscode-icons:file-type-terraform",
|
||||||
|
"Terraform Template": "vscode-icons:file-type-terraform",
|
||||||
|
"Texinfo": "vscode-icons:file-type-tex",
|
||||||
|
"Text": "vscode-icons:file-type-text",
|
||||||
|
"TextGrid": null,
|
||||||
|
"TextMate Properties": "file-icons:textmate",
|
||||||
|
"Textile": "vscode-icons:file-type-textile",
|
||||||
|
"Thrift": null,
|
||||||
|
"Toit": "vscode-icons:file-type-toit",
|
||||||
|
"Turing": "file-icons:turing",
|
||||||
|
"Turtle": null,
|
||||||
|
"Twig": "vscode-icons:file-type-twig",
|
||||||
|
"Type Language": null,
|
||||||
|
"TypeScript": null,
|
||||||
|
"TypeSpec": "vscode-icons:file-type-typescript",
|
||||||
|
"Typst": null,
|
||||||
|
"Unified Parallel C": null,
|
||||||
|
"Unity3D Asset": "devicon:unity",
|
||||||
|
"Unix Assembly": "file-icons:assembly-generic",
|
||||||
|
"Uno": "file-icons:uno",
|
||||||
|
"UnrealScript": "file-icons:unrealscript",
|
||||||
|
"UrWeb": "file-icons:urweb",
|
||||||
|
"V": null,
|
||||||
|
"VBA": "vscode-icons:file-type-vba",
|
||||||
|
"VBScript": "vscode-icons:file-type-vb",
|
||||||
|
"VCL": "file-icons:vcl",
|
||||||
|
"VHDL": "vscode-icons:file-type-vhdl",
|
||||||
|
"Vala": "vscode-icons:file-type-vala",
|
||||||
|
"Valve Data Format": null,
|
||||||
|
"Velocity Template Language": "vscode-icons:file-type-velocity",
|
||||||
|
"Verilog": "vscode-icons:file-type-verilog",
|
||||||
|
"Vim Help File": "vscode-icons:file-type-vim",
|
||||||
|
"Vim Script": "vscode-icons:file-type-vim",
|
||||||
|
"Vim Snippet": "vscode-icons:file-type-vim",
|
||||||
|
"Visual Basic .NET": "vscode-icons:file-type-vbproj",
|
||||||
|
"Visual Basic 6.0": "vscode-icons:file-type-vbproj",
|
||||||
|
"Volt": "vscode-icons:file-type-volt",
|
||||||
|
"Vue": "vscode-icons:file-type-vue",
|
||||||
|
"Vyper": "vscode-icons:file-type-vyper",
|
||||||
|
"WDL": "file-icons:wdl",
|
||||||
|
"WGSL": "vscode-icons:file-type-wgsl",
|
||||||
|
"Wavefront Material": null,
|
||||||
|
"Wavefront Object": null,
|
||||||
|
"Web Ontology Language": null,
|
||||||
|
"WebAssembly": "file-icons:webassembly",
|
||||||
|
"WebAssembly Interface Type": "file-icons:webassembly",
|
||||||
|
"WebIDL": null,
|
||||||
|
"WebVTT": "file-icons:webvtt",
|
||||||
|
"Wget Config": "file-icons:wget",
|
||||||
|
"Whiley": null,
|
||||||
|
"Wikitext": "vscode-icons:file-type-wikitext",
|
||||||
|
"Win32 Message File": "devicon:windows8",
|
||||||
|
"Windows Registry Entries": "devicon:windows8",
|
||||||
|
"Witcher Script": null,
|
||||||
|
"Wollok": null,
|
||||||
|
"World of Warcraft Addon Data": null,
|
||||||
|
"Wren": null,
|
||||||
|
"X BitMap": null,
|
||||||
|
"X Font Directory Index": null,
|
||||||
|
"X PixMap": null,
|
||||||
|
"X10": "file-icons:x10",
|
||||||
|
"XC": null,
|
||||||
|
"XCompose": null,
|
||||||
|
"XML": "vscode-icons:file-type-xml",
|
||||||
|
"XML Property List": "vscode-icons:file-type-xml",
|
||||||
|
"XPages": "file-icons:xpages",
|
||||||
|
"XProc": null,
|
||||||
|
"XQuery": "vscode-icons:file-type-xquery",
|
||||||
|
"XS": null,
|
||||||
|
"XSLT": "vscode-icons:file-type-excel",
|
||||||
|
"Xojo": null,
|
||||||
|
"Xonsh": null,
|
||||||
|
"Xtend": "file-icons:xtend",
|
||||||
|
"YAML": "vscode-icons:file-type-yaml",
|
||||||
|
"YANG": "vscode-icons:file-type-yang",
|
||||||
|
"YARA": "file-icons:yara",
|
||||||
|
"YASnippet": null,
|
||||||
|
"Yacc": "vscode-icons:file-type-yacc",
|
||||||
|
"Yul": null,
|
||||||
|
"ZAP": null,
|
||||||
|
"ZIL": null,
|
||||||
|
"Zeek": null,
|
||||||
|
"ZenScript": null,
|
||||||
|
"Zephir": "file-icons:zephir",
|
||||||
|
"Zig": "vscode-icons:file-type-zig",
|
||||||
|
"Zimpl": null,
|
||||||
|
"cURL Config": "file-icons:curl",
|
||||||
|
"crontab": "eos-icons:cronjob",
|
||||||
|
"desktop": null,
|
||||||
|
"dircolors": null,
|
||||||
|
"eC": "file-icons:ec",
|
||||||
|
"edn": null,
|
||||||
|
"fish": null,
|
||||||
|
"hoon": null,
|
||||||
|
"iCalendar": null,
|
||||||
|
"jq": null,
|
||||||
|
"kvlang": null,
|
||||||
|
"mIRC Script": "file-icons:mirc",
|
||||||
|
"mcfunction": null,
|
||||||
|
"mupad": "file-icons:mupad",
|
||||||
|
"nanorc": null,
|
||||||
|
"nesC": null,
|
||||||
|
"omnetpp-msg": null,
|
||||||
|
"omnetpp-ned": null,
|
||||||
|
"ooc": "file-icons:ooc",
|
||||||
|
"q": null,
|
||||||
|
"reStructuredText": "file-icons:restructuredtext",
|
||||||
|
"robots.txt": "vscode-icons:file-type-text",
|
||||||
|
"sed": null,
|
||||||
|
"templ": "vscode-icons:file-type-templ",
|
||||||
|
"vCard": null,
|
||||||
|
"wisp": null,
|
||||||
|
"xBase": null,
|
||||||
|
};
|
||||||
|
if (languageIconMap[language]) {
|
||||||
|
return languageIconMap[language];
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
@ -32,79 +32,70 @@ import PowershellIcon from "@/public/languages/file_type_powershell.svg";
|
||||||
import TexIcon from "@/public/languages/file_type_tex.svg";
|
import TexIcon from "@/public/languages/file_type_tex.svg";
|
||||||
import AssemblyIcon from "@/public/languages/file_type_assembly.svg";
|
import AssemblyIcon from "@/public/languages/file_type_assembly.svg";
|
||||||
|
|
||||||
export const getLanguageIcon = (language: string) => {
|
/**
|
||||||
switch (language.toLowerCase()) {
|
* Get the SVG icon for a linguist language
|
||||||
case "tsx":
|
* https://github.com/github-linguist/linguist/blob/main/lib/linguist/languages.yml
|
||||||
case "typescript":
|
*/
|
||||||
return TypeScriptIcon;
|
export const getFileIconSvg = (language: string): any | null => {
|
||||||
case "jsx":
|
const languageIconMap: { [key: string]: any } = {
|
||||||
case "javascript":
|
"Assembly": AssemblyIcon,
|
||||||
return JavaScriptIcon;
|
"C": CIcon,
|
||||||
case "go":
|
"C#": CSharpIcon,
|
||||||
return GoIcon;
|
"C++": CppIcon,
|
||||||
case "markdown":
|
"CSS": CSSIcon,
|
||||||
return MarkdownIcon;
|
"Dart": DartIcon,
|
||||||
case "c":
|
"GN": PythonIcon,
|
||||||
return CIcon;
|
"Go": GoIcon,
|
||||||
case "c++":
|
"HTML+ECR": HTMLIcon,
|
||||||
return CppIcon;
|
"HTML+EEX": HTMLIcon,
|
||||||
case "python":
|
"HTML+ERB": HTMLIcon,
|
||||||
return PythonIcon;
|
"HTML+PHP": HTMLIcon,
|
||||||
case "c#":
|
"HTML+Razor": HTMLIcon,
|
||||||
return CSharpIcon;
|
"Haskell": HaskellIcon,
|
||||||
case "html":
|
"Html": HTMLIcon,
|
||||||
return HTMLIcon;
|
"JSON with Comments": JSONIcon,
|
||||||
case "css":
|
"JSON5": JSONIcon,
|
||||||
return CSSIcon;
|
"JSONLD": JSONIcon,
|
||||||
case "java":
|
"JSONiq": JSONIcon,
|
||||||
return JavaIcon;
|
"Java": JavaIcon,
|
||||||
case "json with comments":
|
"Java Properties": JavaIcon,
|
||||||
case "json":
|
"Java Server Pages": JavaIcon,
|
||||||
return JSONIcon;
|
"Java Template Engine": JavaIcon,
|
||||||
case "ruby":
|
"JavaScript": JavaScriptIcon,
|
||||||
return RubyIcon;
|
"JavaScript+ERB": JavaIcon,
|
||||||
case "rust":
|
"Json": JSONIcon,
|
||||||
return RustIcon;
|
"Julia": JuliaIcon,
|
||||||
case "yaml":
|
"Kotlin": KotlinIcon,
|
||||||
return YAMLIcon;
|
"Lua": LuaIcon,
|
||||||
case "kotlin":
|
"MATLAB": MatlabIcon,
|
||||||
return KotlinIcon;
|
"Markdown": MarkdownIcon,
|
||||||
case "swift":
|
"OASv2-json": JSONIcon,
|
||||||
return SwiftIcon;
|
"OASv2-yaml": YAMLIcon,
|
||||||
case "php":
|
"OASv3-json": JSONIcon,
|
||||||
return PHPIcon;
|
"OASv3-yaml": YAMLIcon,
|
||||||
case "r":
|
"OCaml": OcamlIcon,
|
||||||
return RIcon;
|
"Objective-C": ObjectiveCIcon,
|
||||||
case "matlab":
|
"PHP": PHPIcon,
|
||||||
return MatlabIcon;
|
"Pep8": PythonIcon,
|
||||||
case "objective-c":
|
"Perl": PerlIcon,
|
||||||
return ObjectiveCIcon;
|
"PowerShell": PowershellIcon,
|
||||||
case "lua":
|
"Python": PythonIcon,
|
||||||
return LuaIcon;
|
"Python console": PythonIcon,
|
||||||
case "dart":
|
"Python traceback": PythonIcon,
|
||||||
return DartIcon;
|
"R": RIcon,
|
||||||
case "haskell":
|
"Ruby": RubyIcon,
|
||||||
return HaskellIcon;
|
"Rust": RustIcon,
|
||||||
case "perl":
|
"Shell": ShellIcon,
|
||||||
return PerlIcon;
|
"Swift": SwiftIcon,
|
||||||
case "makefile":
|
"Tex": TexIcon,
|
||||||
case "shell":
|
"Text": TextIcon,
|
||||||
return ShellIcon;
|
"Typescript": TypeScriptIcon,
|
||||||
case "zig":
|
"YAML": YAMLIcon,
|
||||||
return ZigIcon;
|
"Zig": ZigIcon
|
||||||
case "julia":
|
};
|
||||||
return JuliaIcon;
|
if (language in languageIconMap) {
|
||||||
case "ocaml":
|
return languageIconMap[language as keyof typeof languageIconMap];
|
||||||
return OcamlIcon;
|
} else {
|
||||||
case "text":
|
return null;
|
||||||
return TextIcon;
|
|
||||||
case "powershell":
|
|
||||||
return PowershellIcon;
|
|
||||||
case "tex":
|
|
||||||
return TexIcon;
|
|
||||||
case "assembly":
|
|
||||||
return AssemblyIcon;
|
|
||||||
default:
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
1
packages/web/src/components/ui/fileIcon/index.ts
Normal file
1
packages/web/src/components/ui/fileIcon/index.ts
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
export * from "./fileIcon";
|
||||||
12
yarn.lock
12
yarn.lock
|
|
@ -683,6 +683,18 @@
|
||||||
resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3"
|
resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3"
|
||||||
integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==
|
integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==
|
||||||
|
|
||||||
|
"@iconify/react@^5.1.0":
|
||||||
|
version "5.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@iconify/react/-/react-5.1.0.tgz#99fcfbb383dd8da84f6cf7b009faf7c71773631c"
|
||||||
|
integrity sha512-vj2wzalywy23DR37AnsogMPIkDa1nKEqITjxpH4z44tiLV869Mh7VyydD4/t0yJLEs9tsxlrPWtXvMOe1Lcd5g==
|
||||||
|
dependencies:
|
||||||
|
"@iconify/types" "^2.0.0"
|
||||||
|
|
||||||
|
"@iconify/types@^2.0.0":
|
||||||
|
version "2.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@iconify/types/-/types-2.0.0.tgz#ab0e9ea681d6c8a1214f30cd741fe3a20cc57f57"
|
||||||
|
integrity sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==
|
||||||
|
|
||||||
"@img/sharp-darwin-arm64@0.33.5":
|
"@img/sharp-darwin-arm64@0.33.5":
|
||||||
version "0.33.5"
|
version "0.33.5"
|
||||||
resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz#ef5b5a07862805f1e8145a377c8ba6e98813ca08"
|
resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz#ef5b5a07862805f1e8145a377c8ba6e98813ca08"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue