소스 검색

feat: Add some file extensions

This adds file extensions for Kusto, Malloy, SPARQL and Zig.

Signed-off-by: Jonathan <vanillajonathan@users.noreply.github.com>
Jonathan 2 년 전
부모
커밋
29c7ca33d1
1개의 변경된 파일27개의 추가작업 그리고 17개의 파일을 삭제
  1. 27 17
      src/info/filetype.rs

+ 27 - 17
src/info/filetype.rs

@@ -122,6 +122,7 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "psd"        => FileType::Image,
     "pxm"        => FileType::Image,
     "raw"        => FileType::Image,
+    "qoi"        => FileType::Image,
     "stl"        => FileType::Image,
     "svg"        => FileType::Image,
     "tif"        => FileType::Image,
@@ -149,7 +150,7 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "webm"       => FileType::Video,
     "wmv"        => FileType::Video,
     /* Music files */
-    "aac"        => FileType::Music,
+    "aac"        => FileType::Music, // Advanced Audio Coding
     "m4a"        => FileType::Music,
     "mka"        => FileType::Music,
     "mp2"        => FileType::Music,
@@ -169,11 +170,14 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "wv"         => FileType::Lossless,
     /* Cryptology files */
     "asc"        => FileType::Crypto, // GnuPG ASCII armored file
+    "cer"        => FileType::Crypto,
+    "crt"        => FileType::Crypto,
+    "csr"        => FileType::Crypto, // PKCS#10 Certificate Signing Request
     "gpg"        => FileType::Crypto, // GnuPG encrypted file
     "kbx"        => FileType::Crypto, // GnuPG keybox
     "md5"        => FileType::Crypto, // MD5 checksum
     "p12"        => FileType::Crypto, // PKCS#12 certificate (Netscape)
-    "pem"        => FileType::Crypto, // Privacy enhanced mail certificate
+    "pem"        => FileType::Crypto, // Privacy-Enhanced Mail certificate
     "pfx"        => FileType::Crypto, // PKCS#12 certificate (Microsoft)
     "pgp"        => FileType::Crypto, // PGP security key
     "pub"        => FileType::Crypto, // Public key
@@ -201,29 +205,29 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "pdf"        => FileType::Document,
     "ppt"        => FileType::Document,
     "pptx"       => FileType::Document,
-    "rtf"        => FileType::Document,
+    "rtf"        => FileType::Document, // Rich Text Format
     "xls"        => FileType::Document,
     "xlsm"       => FileType::Document,
     "xlsx"       => FileType::Document,
     /* Compressed/archive files */
-    "7z"         => FileType::Compressed,
+    "7z"         => FileType::Compressed, // 7-Zip
     "ar"         => FileType::Compressed,
     "arj"        => FileType::Compressed,
-    "br"         => FileType::Compressed,
+    "br"         => FileType::Compressed, // Brotli
     "bz"         => FileType::Compressed,
-    "bz2"        => FileType::Compressed,
+    "bz2"        => FileType::Compressed, // bzip2
     "bz3"        => FileType::Compressed,
     "cpio"       => FileType::Compressed,
-    "deb"        => FileType::Compressed,
+    "deb"        => FileType::Compressed, // Debian
     "dmg"        => FileType::Compressed,
-    "gz"         => FileType::Compressed,
+    "gz"         => FileType::Compressed, // gzip
     "iso"        => FileType::Compressed,
     "lz"         => FileType::Compressed,
     "lz4"        => FileType::Compressed,
     "lzh"        => FileType::Compressed,
     "lzma"       => FileType::Compressed,
     "lzo"        => FileType::Compressed,
-    "phar"       => FileType::Compressed,
+    "phar"       => FileType::Compressed, // PHP PHAR
     "qcow"       => FileType::Compressed,
     "qcow2"      => FileType::Compressed,
     "rar"        => FileType::Compressed,
@@ -240,10 +244,11 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "xz"         => FileType::Compressed,
     "vdi"        => FileType::Compressed,
     "vhd"        => FileType::Compressed,
+    "vhdx"       => FileType::Compressed,
     "vmdk"       => FileType::Compressed,
     "z"          => FileType::Compressed,
     "zip"        => FileType::Compressed,
-    "zst"        => FileType::Compressed,
+    "zst"        => FileType::Compressed, // Zstandard
     /* Temporary files */
     "bak"        => FileType::Temp,
     "bk"         => FileType::Temp,
@@ -258,7 +263,7 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "tmp"        => FileType::Temp,
     /* Compiler output files */
     "a"          => FileType::Compiled, // Unix static library
-    "bundle"     => FileType::Compiled, // Mac OS X application bundle
+    "bundle"     => FileType::Compiled, // macOS application bundle
     "class"      => FileType::Compiled, // Java class file
     "cma"        => FileType::Compiled, // OCaml bytecode library
     "cmi"        => FileType::Compiled, // OCaml interface
@@ -294,6 +299,7 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "csx"        => FileType::Source, // C#
     "cu"         => FileType::Source, // CUDA
     "cxx"        => FileType::Source, // C/C++
+    "cypher"     => FileType::Source, // Cypher (query language)
     "d"          => FileType::Source, // D
     "dart"       => FileType::Source, // Dart
     "di"         => FileType::Source, // D
@@ -311,27 +317,29 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "gradle"     => FileType::Source, // Gradle
     "groovy"     => FileType::Source, // Groovy
     "gvy"        => FileType::Source, // Groovy
-    "h"          => FileType::Source, // C/C++
-    "h++"        => FileType::Source, // C/C++
-    "hpp"        => FileType::Source, // C/C++
+    "h"          => FileType::Source, // C/C++ header
+    "h++"        => FileType::Source, // C/C++ header
+    "hpp"        => FileType::Source, // C/C++ header
     "hs"         => FileType::Source, // Haskell
-    "htc"        => FileType::Source, // Javascript
-    "hxx"        => FileType::Source, // C/C++
+    "htc"        => FileType::Source, // JavaScript
+    "hxx"        => FileType::Source, // C/C++ header
     "inc"        => FileType::Source,
     "inl"        => FileType::Source, // C/C++ Microsoft
     "ipynb"      => FileType::Source, // Jupyter Notebook
     "java"       => FileType::Source, // Java
     "jl"         => FileType::Source, // Julia
-    "js"         => FileType::Source, // Javascript
+    "js"         => FileType::Source, // JavaScript
     "jsx"        => FileType::Source, // React
     "kt"         => FileType::Source, // Kotlin
     "kts"        => FileType::Source, // Kotlin
+    "kusto"      => FileType::Source, // Kusto (query language)
     "less"       => FileType::Source, // less
     "lhs"        => FileType::Source, // Haskell
     "lisp"       => FileType::Source, // Lisp
     "ltx"        => FileType::Source, // LaTeX
     "lua"        => FileType::Source, // Lua
     "m"          => FileType::Source, // Matlab
+    "malloy"     => FileType::Source, // Malloy (query language)
     "matlab"     => FileType::Source, // Matlab
     "ml"         => FileType::Source, // OCaml
     "mli"        => FileType::Source, // OCaml
@@ -353,6 +361,7 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "r"          => FileType::Source, // R
     "rb"         => FileType::Source, // Ruby
     "rs"         => FileType::Source, // Rust
+    "rq"         => FileType::Source, // SPARQL (query language)
     "sass"       => FileType::Source, // Sass
     "scala"      => FileType::Source, // Scala
     "scss"       => FileType::Source, // Sass
@@ -364,6 +373,7 @@ const EXTENSION_TYPES: Map<&'static str, FileType> = phf_map! {
     "v"          => FileType::Source, // V
     "vb"         => FileType::Source, // Visual Basic
     "vsh"        => FileType::Source, // Vertex shader
+    "zig"        => FileType::Source, // Zig
 };
 
 impl FileType {