diff --git a/languages.yml b/languages.yml
--- a/languages.yml
+++ b/languages.yml
@@ -46,11 +46,19 @@
   tm_scope: source.bsl
   ace_mode: text
   language_id: 0
+4D:
+  type: programming
+  extensions:
+  - ".4dm"
+  tm_scope: source.4dm
+  ace_mode: text
+  language_id: 577529595
 ABAP:
   type: programming
   color: "#E8274B"
   extensions:
   - ".abap"
+  tm_scope: source.abap
   ace_mode: abap
   language_id: 1
 ABNF:
@@ -87,6 +95,7 @@
   color: "#9DC3FF"
   extensions:
   - ".g4"
+  tm_scope: source.antlr
   ace_mode: text
   language_id: 4
 API Blueprint:
@@ -175,6 +184,7 @@
   aliases:
   - ada95
   - ada2005
+  tm_scope: source.ada
   ace_mode: ada
   language_id: 11
 Adobe Font Metrics:
@@ -194,6 +204,7 @@
   color: "#315665"
   extensions:
   - ".agda"
+  tm_scope: source.agda
   ace_mode: text
   language_id: 12
 Alloy:
@@ -201,6 +212,7 @@
   color: "#64C800"
   extensions:
   - ".als"
+  tm_scope: source.alloy
   ace_mode: text
   language_id: 13
 Alpine Abuild:
@@ -290,6 +302,7 @@
   - ".scpt"
   interpreters:
   - osascript
+  tm_scope: source.applescript
   ace_mode: applescript
   color: "#101F1F"
   language_id: 19
@@ -328,6 +341,7 @@
   extensions:
   - ".asm"
   - ".a51"
+  - ".i"
   - ".inc"
   - ".nasm"
   tm_scope: source.assembly
@@ -388,6 +402,7 @@
   - gawk
   - mawk
   - nawk
+  tm_scope: source.awk
   ace_mode: text
   language_id: 28
 Ballerina:
@@ -416,12 +431,24 @@
   type: programming
   extensions:
   - ".befunge"
+  tm_scope: source.befunge
   ace_mode: text
   language_id: 30
+BibTeX:
+  type: markup
+  group: TeX
+  extensions:
+  - ".bib"
+  - ".bibtex"
+  tm_scope: text.bibtex
+  ace_mode: tex
+  codemirror_mode: stex
+  codemirror_mime_type: text/x-stex
+  language_id: 982188347
 Bison:
   type: programming
   group: Yacc
-  tm_scope: source.bison
+  tm_scope: source.yacc
   extensions:
   - ".bison"
   ace_mode: text
@@ -462,6 +489,7 @@
   - ".bmx"
   aliases:
   - bmax
+  tm_scope: source.blitzmax
   ace_mode: text
   language_id: 35
 Bluespec:
@@ -507,6 +535,7 @@
   - ".idc"
   interpreters:
   - tcc
+  tm_scope: source.c
   ace_mode: c_cpp
   codemirror_mode: clike
   codemirror_mime_type: text/x-csrc
@@ -527,6 +556,7 @@
   language_id: 42
 C++:
   type: programming
+  tm_scope: source.c++
   ace_mode: c_cpp
   codemirror_mode: clike
   codemirror_mime_type: text/x-c++src
@@ -585,6 +615,7 @@
   - ".cmake.in"
   filenames:
   - CMakeLists.txt
+  tm_scope: source.cmake
   ace_mode: text
   codemirror_mode: cmake
   codemirror_mime_type: text/x-cmake
@@ -597,6 +628,7 @@
   - ".ccp"
   - ".cobol"
   - ".cpy"
+  tm_scope: source.cobol
   ace_mode: cobol
   codemirror_mode: cobol
   codemirror_mime_type: text/x-cobol
@@ -688,6 +720,7 @@
   - chpl
   extensions:
   - ".chpl"
+  tm_scope: source.chapel
   ace_mode: text
   language_id: 55
 Charity:
@@ -709,6 +742,7 @@
 Cirru:
   type: programming
   color: "#ccccff"
+  tm_scope: source.cirru
   ace_mode: cirru
   extensions:
   - ".cirru"
@@ -740,6 +774,7 @@
   language_id: 61
 Clojure:
   type: programming
+  tm_scope: source.clojure
   ace_mode: clojure
   codemirror_mode: clojure
   codemirror_mime_type: text/x-clojure
@@ -898,6 +933,7 @@
   extensions:
   - ".coq"
   - ".v"
+  tm_scope: source.coq
   ace_mode: text
   language_id: 69
 Cpp-ObjDump:
@@ -990,6 +1026,7 @@
   - ".pxi"
   aliases:
   - pyrex
+  tm_scope: source.cython
   ace_mode: text
   codemirror_mode: python
   codemirror_mime_type: text/x-cython
@@ -1000,6 +1037,7 @@
   extensions:
   - ".d"
   - ".di"
+  tm_scope: source.d
   ace_mode: d
   codemirror_mode: d
   codemirror_mime_type: text/x-d
@@ -1068,6 +1106,7 @@
   - ".dart"
   interpreters:
   - dart
+  tm_scope: source.dart
   ace_mode: dart
   codemirror_mode: dart
   codemirror_mime_type: application/dart
@@ -1102,6 +1141,13 @@
   codemirror_mode: diff
   codemirror_mime_type: text/x-diff
   language_id: 88
+DirectX 3D File:
+  type: data
+  extensions:
+  - ".x"
+  ace_mode: text
+  tm_scope: none
+  language_id: 201049282
 Dockerfile:
   type: programming
   color: "#384d54"
@@ -1130,6 +1176,7 @@
   - ".dyl"
   - ".intr"
   - ".lid"
+  tm_scope: source.dylan
   ace_mode: text
   codemirror_mode: dylan
   codemirror_mime_type: text/x-dylan
@@ -1244,16 +1291,17 @@
   type: data
   extensions:
   - ".edc"
-  tm_scope: source.json
-  ace_mode: json
-  codemirror_mode: javascript
-  codemirror_mime_type: application/json
+  tm_scope: source.c++
+  ace_mode: c_cpp
+  codemirror_mode: clike
+  codemirror_mime_type: text/x-c++src
   language_id: 342840478
 Eiffel:
   type: programming
   color: "#946d57"
   extensions:
   - ".e"
+  tm_scope: source.eiffel
   ace_mode: eiffel
   codemirror_mode: eiffel
   codemirror_mime_type: text/x-eiffel
@@ -1264,6 +1312,7 @@
   extensions:
   - ".ex"
   - ".exs"
+  tm_scope: source.elixir
   ace_mode: elixir
   filenames:
   - mix.lock
@@ -1333,6 +1382,7 @@
   - rebar.config
   - rebar.config.lock
   - rebar.lock
+  tm_scope: source.erlang
   ace_mode: erlang
   codemirror_mode: erlang
   codemirror_mime_type: text/x-erlang
@@ -1390,6 +1440,7 @@
   filenames:
   - ".factor-boot-rc"
   - ".factor-rc"
+  tm_scope: source.factor
   ace_mode: text
   codemirror_mode: factor
   codemirror_mime_type: text/x-factor
@@ -1402,6 +1453,7 @@
   - ".fancypack"
   filenames:
   - Fakefile
+  tm_scope: source.fancy
   ace_mode: text
   language_id: 109
 Fantom:
@@ -1412,6 +1464,14 @@
   tm_scope: source.fan
   ace_mode: text
   language_id: 110
+Faust:
+  type: programming
+  color: "#c37240"
+  extensions:
+  - ".dsp"
+  tm_scope: source.faust
+  ace_mode: text
+  language_id: 622529198
 Filebench WML:
   type: programming
   extensions:
@@ -1447,6 +1507,7 @@
   - ".fr"
   - ".frt"
   - ".fs"
+  tm_scope: source.forth
   ace_mode: forth
   codemirror_mode: forth
   codemirror_mime_type: text/x-forth
@@ -1463,7 +1524,7 @@
   - ".f95"
   - ".for"
   - ".fpp"
-  tm_scope: source.fortran.modern
+  tm_scope: source.fortran
   ace_mode: text
   codemirror_mode: fortran
   codemirror_mime_type: text/x-fortran
@@ -1497,6 +1558,14 @@
   tm_scope: source.gcode
   ace_mode: gcode
   language_id: 117
+GAML:
+  type: programming
+  color: "#FFC766"
+  extensions:
+  - ".gaml"
+  tm_scope: none
+  ace_mode: text
+  language_id: 290345951
 GAMS:
   type: programming
   extensions:
@@ -1552,7 +1621,9 @@
   - ".fshader"
   - ".geo"
   - ".geom"
+  - ".glslf"
   - ".glslv"
+  - ".gs"
   - ".gshader"
   - ".shader"
   - ".tesc"
@@ -1561,6 +1632,7 @@
   - ".vrx"
   - ".vsh"
   - ".vshader"
+  tm_scope: source.glsl
   ace_mode: glsl
   language_id: 124
 GN:
@@ -1724,10 +1796,12 @@
   - ".gp"
   - ".gnu"
   - ".gnuplot"
+  - ".p"
   - ".plot"
   - ".plt"
   interpreters:
   - gnuplot
+  tm_scope: source.gnuplot
   ace_mode: text
   language_id: 131
 Go:
@@ -1737,6 +1811,7 @@
   - golang
   extensions:
   - ".go"
+  tm_scope: source.go
   ace_mode: golang
   codemirror_mode: go
   codemirror_mime_type: text/x-go
@@ -1812,6 +1887,7 @@
   language_id: 140
 Groovy:
   type: programming
+  tm_scope: source.groovy
   ace_mode: groovy
   codemirror_mode: groovy
   codemirror_mime_type: text/x-groovy
@@ -1993,7 +2069,9 @@
   codemirror_mode: php
   codemirror_mime_type: application/x-httpd-php
   extensions:
+  - ".hack"
   - ".hh"
+  - ".hhi"
   - ".php"
   tm_scope: source.hack
   color: "#878787"
@@ -2004,6 +2082,7 @@
   extensions:
   - ".haml"
   - ".haml.deface"
+  tm_scope: text.haml
   ace_mode: haml
   codemirror_mode: haml
   codemirror_mime_type: text/x-haml
@@ -2033,9 +2112,11 @@
   color: "#5e5086"
   extensions:
   - ".hs"
+  - ".hs-boot"
   - ".hsc"
   interpreters:
   - runhaskell
+  tm_scope: source.haskell
   ace_mode: haskell
   codemirror_mode: haskell
   codemirror_mime_type: text/x-haskell
@@ -2055,6 +2136,7 @@
   type: programming
   extensions:
   - ".q"
+  - ".hql"
   color: "#dce200"
   tm_scope: source.hql
   ace_mode: sql
@@ -2094,18 +2176,20 @@
   extensions:
   - ".pro"
   - ".dlm"
+  tm_scope: source.idl
   ace_mode: text
   codemirror_mode: idl
   codemirror_mime_type: text/x-idl
   language_id: 161
 IGOR Pro:
   type: programming
+  color: "#0000cc"
   extensions:
   - ".ipf"
   aliases:
   - igor
   - igorpro
-  tm_scope: none
+  tm_scope: source.igor
   ace_mode: text
   language_id: 162
 INI:
@@ -2113,6 +2197,7 @@
   extensions:
   - ".ini"
   - ".cfg"
+  - ".dof"
   - ".lektorproject"
   - ".prefs"
   - ".pro"
@@ -2194,7 +2279,7 @@
   type: programming
   extensions:
   - ".iss"
-  tm_scope: none
+  tm_scope: source.inno
   ace_mode: text
   language_id: 167
 Io:
@@ -2204,6 +2289,7 @@
   - ".io"
   interpreters:
   - io
+  tm_scope: source.io
   ace_mode: io
   language_id: 168
 Ioke:
@@ -2213,6 +2299,7 @@
   - ".ik"
   interpreters:
   - ioke
+  tm_scope: source.ioke
   ace_mode: text
   language_id: 169
 Isabelle:
@@ -2363,6 +2450,7 @@
   language_id: 180
 Java:
   type: programming
+  tm_scope: source.java
   ace_mode: java
   codemirror_mode: clike
   codemirror_mime_type: text/x-java
@@ -2405,6 +2493,7 @@
   - ".js"
   - "._js"
   - ".bones"
+  - ".cjs"
   - ".es"
   - ".es6"
   - ".frag"
@@ -2427,8 +2516,10 @@
   interpreters:
   - chakra
   - d8
+  - gjs
   - js
   - node
+  - qjs
   - rhino
   - v8
   - v8-shell
@@ -2486,6 +2577,7 @@
   interpreters:
   - julia
   color: "#a270ba"
+  tm_scope: source.julia
   ace_mode: julia
   codemirror_mode: julia
   codemirror_mime_type: text/x-julia
@@ -2578,6 +2670,7 @@
   type: programming
   extensions:
   - ".ll"
+  tm_scope: source.llvm
   ace_mode: text
   color: "#185619"
   language_id: 191
@@ -2591,6 +2684,7 @@
   language_id: 192
 LSL:
   type: programming
+  tm_scope: source.lsl
   ace_mode: lsl
   extensions:
   - ".lsl"
@@ -2625,7 +2719,6 @@
   - ".las"
   - ".lasso8"
   - ".lasso9"
-  - ".ldml"
   tm_scope: file.lasso
   aliases:
   - lassoscript
@@ -2646,6 +2739,7 @@
   extensions:
   - ".lean"
   - ".hlean"
+  tm_scope: source.lean
   ace_mode: text
   language_id: 197
 Less:
@@ -2666,7 +2760,7 @@
   extensions:
   - ".l"
   - ".lex"
-  tm_scope: none
+  tm_scope: source.lex
   ace_mode: text
   language_id: 199
 LilyPond:
@@ -2674,6 +2768,7 @@
   extensions:
   - ".ly"
   - ".ily"
+  tm_scope: source.lilypond
   ace_mode: text
   language_id: 200
 Limbo:
@@ -2752,6 +2847,7 @@
   - "._ls"
   filenames:
   - Slakefile
+  tm_scope: source.livescript
   ace_mode: livescript
   codemirror_mode: livescript
   codemirror_mime_type: text/x-livescript
@@ -2770,6 +2866,7 @@
   extensions:
   - ".lgt"
   - ".logtalk"
+  tm_scope: source.logtalk
   ace_mode: text
   language_id: 210
 LookML:
@@ -2793,6 +2890,7 @@
   language_id: 212
 Lua:
   type: programming
+  tm_scope: source.lua
   ace_mode: lua
   codemirror_mode: lua
   codemirror_mime_type: text/x-lua
@@ -2804,6 +2902,7 @@
   - ".p8"
   - ".pd_lua"
   - ".rbxs"
+  - ".rockspec"
   - ".wlua"
   interpreters:
   - lua
@@ -2824,7 +2923,7 @@
   type: programming
   extensions:
   - ".m4"
-  tm_scope: none
+  tm_scope: source.m4
   ace_mode: text
   language_id: 215
 M4Sugar:
@@ -2836,7 +2935,7 @@
   - ".m4"
   filenames:
   - configure.ac
-  tm_scope: none
+  tm_scope: source.m4
   ace_mode: text
   language_id: 216
 MATLAB:
@@ -2847,6 +2946,7 @@
   extensions:
   - ".matlab"
   - ".m"
+  tm_scope: source.matlab
   ace_mode: matlab
   codemirror_mode: octave
   codemirror_mime_type: text/x-octave
@@ -2860,6 +2960,14 @@
   tm_scope: source.maxscript
   ace_mode: text
   language_id: 217
+MLIR:
+  type: programming
+  color: "#5EC8DB"
+  extensions:
+  - ".mlir"
+  tm_scope: source.mlir
+  ace_mode: text
+  language_id: 448253929
 MQL4:
   type: programming
   color: "#62A8D6"
@@ -2928,6 +3036,7 @@
   - mkfile
   interpreters:
   - make
+  tm_scope: source.makefile
   ace_mode: makefile
   codemirror_mode: cmake
   codemirror_mime_type: text/x-cmake
@@ -2997,6 +3106,7 @@
   - ".wlt"
   aliases:
   - mma
+  tm_scope: source.mathematica
   ace_mode: text
   codemirror_mode: mathematica
   codemirror_mime_type: text/x-mathematica
@@ -3066,6 +3176,13 @@
   codemirror_mode: clike
   codemirror_mime_type: text/x-c++src
   language_id: 230
+Microsoft Developer Studio Project:
+  type: data
+  extensions:
+  - ".dsp"
+  tm_scope: none
+  ace_mode: text
+  language_id: 800983837
 MiniD:
   type: programming
   searchable: false
@@ -3145,16 +3262,34 @@
   - ".moon"
   interpreters:
   - moon
+  tm_scope: source.moonscript
   ace_mode: text
   language_id: 238
 Motorola 68K Assembly:
   type: programming
   group: Assembly
+  aliases:
+  - m68k
   extensions:
-  - ".X68"
+  - ".asm"
+  - ".i"
+  - ".inc"
+  - ".s"
+  - ".x68"
   tm_scope: source.m68k
   ace_mode: assembly_x86
   language_id: 477582706
+Muse:
+  type: prose
+  extensions:
+  - ".muse"
+  tm_scope: text.muse
+  ace_mode: text
+  wrap: true
+  language_id: 474864066
+  aliases:
+  - amusewiki
+  - emacs muse
 Myghty:
   type: programming
   extensions:
@@ -3177,11 +3312,22 @@
   tm_scope: none
   ace_mode: text
   language_id: 241
+NPM Config:
+  type: data
+  group: INI
+  aliases:
+  - npmrc
+  filenames:
+  - ".npmrc"
+  tm_scope: source.ini.npmrc
+  ace_mode: text
+  language_id: 685022663
 NSIS:
   type: programming
   extensions:
   - ".nsi"
   - ".nsh"
+  tm_scope: source.nsis
   ace_mode: text
   codemirror_mode: nsis
   codemirror_mime_type: text/x-nsis
@@ -3200,6 +3346,7 @@
   color: "#3d3c6e"
   extensions:
   - ".n"
+  tm_scope: source.nemerle
   ace_mode: text
   language_id: 243
 NetLinx:
@@ -3364,6 +3511,13 @@
   tm_scope: objdump.x86asm
   ace_mode: assembly_x86
   language_id: 256
+Object Data Instance Notation:
+  type: data
+  extensions:
+  - ".odin"
+  tm_scope: source.odin-ehr
+  ace_mode: text
+  language_id: 985227236
 ObjectScript:
   type: programming
   extensions:
@@ -3414,6 +3568,17 @@
   tm_scope: source.js.objj
   ace_mode: text
   language_id: 259
+Odin:
+  type: programming
+  color: "#60AFFE"
+  aliases:
+  - odinlang
+  - odin-lang
+  extensions:
+  - ".odin"
+  tm_scope: source.odin
+  ace_mode: text
+  language_id: 889244082
 Omgrofl:
   type: programming
   extensions:
@@ -3426,6 +3591,7 @@
   type: programming
   extensions:
   - ".opa"
+  tm_scope: source.opa
   ace_mode: text
   language_id: 261
 Opal:
@@ -3436,6 +3602,13 @@
   tm_scope: source.opal
   ace_mode: text
   language_id: 262
+Open Policy Agent:
+  type: programming
+  ace_mode: text
+  extensions:
+  - ".rego"
+  language_id: 840483232
+  tm_scope: source.rego
 OpenCL:
   type: programming
   group: C
@@ -3479,6 +3652,13 @@
   tm_scope: source.scad
   ace_mode: scad
   language_id: 266
+OpenStep Property List:
+  type: data
+  extensions:
+  - ".plist"
+  tm_scope: source.plist
+  ace_mode: text
+  language_id: 598917541
 OpenType Feature File:
   type: data
   aliases:
@@ -3602,6 +3782,7 @@
   extensions:
   - ".pov"
   - ".inc"
+  tm_scope: source.pov-ray sdl
   ace_mode: text
   language_id: 275
 Pan:
@@ -3665,6 +3846,7 @@
   - ".pp"
   interpreters:
   - instantfpc
+  tm_scope: source.pascal
   ace_mode: pascal
   codemirror_mode: pascal
   codemirror_mime_type: text/x-pascal
@@ -3716,30 +3898,6 @@
   aliases:
   - cperl
   language_id: 282
-Perl 6:
-  type: programming
-  color: "#0000fb"
-  extensions:
-  - ".6pl"
-  - ".6pm"
-  - ".nqp"
-  - ".p6"
-  - ".p6l"
-  - ".p6m"
-  - ".pl"
-  - ".pl6"
-  - ".pm"
-  - ".pm6"
-  - ".t"
-  interpreters:
-  - perl6
-  aliases:
-  - perl6
-  tm_scope: source.perl6fe
-  ace_mode: perl
-  codemirror_mode: perl
-  codemirror_mime_type: text/x-perl
-  language_id: 283
 Pic:
   type: markup
   group: Roff
@@ -3784,6 +3942,7 @@
   - ".pmod"
   interpreters:
   - pike
+  tm_scope: source.pike
   ace_mode: text
   language_id: 287
 Pod:
@@ -3830,6 +3989,7 @@
   group: CSS
   extensions:
   - ".pcss"
+  - ".postcss"
   ace_mode: text
   language_id: 262764437
 PostScript:
@@ -3838,6 +3998,7 @@
   extensions:
   - ".ps"
   - ".eps"
+  - ".epsi"
   - ".pfa"
   tm_scope: source.postscript
   aliases:
@@ -3858,6 +4019,7 @@
 PowerShell:
   type: programming
   color: "#012456"
+  tm_scope: source.powershell
   ace_mode: powershell
   codemirror_mode: powershell
   codemirror_mime_type: application/x-powershell
@@ -3871,13 +4033,28 @@
   interpreters:
   - pwsh
   language_id: 293
+Prisma:
+  type: data
+  extensions:
+  - ".prisma"
+  tm_scope: source.prisma
+  ace_mode: text
+  language_id: 499933428
 Processing:
   type: programming
   color: "#0096D8"
   extensions:
   - ".pde"
+  tm_scope: source.processing
   ace_mode: text
   language_id: 294
+Proguard:
+  type: data
+  extensions:
+  - ".pro"
+  tm_scope: none
+  ace_mode: text
+  language_id: 716513858
 Prolog:
   type: programming
   color: "#74283c"
@@ -3973,13 +4150,13 @@
   language_id: 302
 Python:
   type: programming
+  tm_scope: source.python
   ace_mode: python
   codemirror_mode: python
   codemirror_mime_type: text/x-python
   color: "#3572A5"
   extensions:
   - ".py"
-  - ".bzl"
   - ".cgi"
   - ".fcgi"
   - ".gyp"
@@ -3992,28 +4169,25 @@
   - ".pyt"
   - ".pyw"
   - ".rpy"
+  - ".smk"
   - ".spec"
   - ".tac"
   - ".wsgi"
   - ".xpy"
   filenames:
   - ".gclient"
-  - BUCK
-  - BUILD
-  - BUILD.bazel
   - DEPS
   - SConscript
   - SConstruct
   - Snakefile
-  - WORKSPACE
   - wscript
   interpreters:
   - python
   - python2
   - python3
   aliases:
-  - rusthon
   - python3
+  - rusthon
   language_id: 303
 Python console:
   type: programming
@@ -4033,6 +4207,14 @@
   tm_scope: text.python.traceback
   ace_mode: text
   language_id: 304
+QL:
+  type: programming
+  extensions:
+  - ".ql"
+  - ".qll"
+  tm_scope: source.ql
+  ace_mode: text
+  language_id: 424259634
 QML:
   type: programming
   color: "#44a51c"
@@ -4049,6 +4231,7 @@
   - ".pri"
   interpreters:
   - qmake
+  tm_scope: source.qmake
   ace_mode: text
   language_id: 306
 Quake:
@@ -4076,6 +4259,7 @@
   - expr-dist
   interpreters:
   - Rscript
+  tm_scope: source.r
   ace_mode: r
   codemirror_mode: r
   codemirror_mime_type: text/x-rsrc
@@ -4174,6 +4358,7 @@
   extensions:
   - ".rnh"
   - ".rno"
+  wrap: true
   tm_scope: text.runoff
   ace_mode: text
   language_id: 315
@@ -4201,6 +4386,33 @@
   tm_scope: none
   ace_mode: text
   language_id: 317
+Raku:
+  type: programming
+  color: "#0000fb"
+  extensions:
+  - ".6pl"
+  - ".6pm"
+  - ".nqp"
+  - ".p6"
+  - ".p6l"
+  - ".p6m"
+  - ".pl"
+  - ".pl6"
+  - ".pm"
+  - ".pm6"
+  - ".t"
+  interpreters:
+  - perl6
+  - raku
+  - rakudo
+  aliases:
+  - perl6
+  - perl-6
+  tm_scope: source.perl6fe
+  ace_mode: perl
+  codemirror_mode: perl
+  codemirror_mime_type: text/x-perl
+  language_id: 283
 Rascal:
   type: programming
   color: "#fffaa0"
@@ -4218,9 +4430,21 @@
   tm_scope: none
   ace_mode: text
   language_id: 318
+Readline Config:
+  type: data
+  group: INI
+  aliases:
+  - inputrc
+  - readline
+  filenames:
+  - ".inputrc"
+  - inputrc
+  tm_scope: source.inputrc
+  ace_mode: text
+  language_id: 538732839
 Reason:
   type: programming
-  group: OCaml
+  color: "#ff5847"
   ace_mode: rust
   codemirror_mode: rust
   codemirror_mime_type: text/x-rustsrc
@@ -4305,6 +4529,14 @@
   tm_scope: source.ring
   ace_mode: text
   language_id: 431
+Riot:
+  type: markup
+  color: "#A71E49"
+  ace_mode: html
+  extensions:
+  - ".riot"
+  tm_scope: text.html.riot
+  language_id: 878396783
 RobotFramework:
   type: programming
   extensions:
@@ -4345,8 +4577,11 @@
   - ".rno"
   - ".tmac"
   filenames:
+  - eqnrc
   - mmn
   - mmt
+  - troffrc
+  - troffrc-end
   tm_scope: text.roff
   aliases:
   - groff
@@ -4357,6 +4592,7 @@
   - mdoc
   - nroff
   - troff
+  wrap: true
   ace_mode: text
   codemirror_mode: troff
   codemirror_mime_type: text/troff
@@ -4385,6 +4621,7 @@
   - ".9"
   - ".man"
   - ".mdoc"
+  wrap: true
   tm_scope: text.roff
   ace_mode: text
   codemirror_mode: troff
@@ -4402,6 +4639,7 @@
   language_id: 325
 Ruby:
   type: programming
+  tm_scope: source.ruby
   ace_mode: ruby
   codemirror_mode: ruby
   codemirror_mime_type: text/x-ruby
@@ -4425,6 +4663,7 @@
   - ".podspec"
   - ".rabl"
   - ".rake"
+  - ".rbi"
   - ".rbuild"
   - ".rbw"
   - ".rbx"
@@ -4451,7 +4690,7 @@
   - Deliverfile
   - Fastfile
   - Gemfile
-  # Gemfile.lock is not valid ruby
+  # Gemfile.lock is not valid Ruby.
   # - Gemfile.lock
   - Guardfile
   - Jarfile
@@ -4470,6 +4709,7 @@
   extensions:
   - ".rs"
   - ".rs.in"
+  tm_scope: source.rust
   ace_mode: rust
   codemirror_mode: rust
   codemirror_mime_type: text/x-rustsrc
@@ -4594,11 +4834,20 @@
   type: data
   extensions:
   - ".svg"
-  tm_scope: text.xml
+  tm_scope: text.xml.svg
   ace_mode: xml
   codemirror_mode: xml
   codemirror_mime_type: text/xml
   language_id: 337
+SWIG:
+  type: programming
+  extensions:
+  - ".i"
+  tm_scope: source.c++
+  ace_mode: c_cpp
+  codemirror_mode: clike
+  codemirror_mime_type: text/x-c++src
+  language_id: 1066250075
 Sage:
   type: programming
   group: Python
@@ -4635,6 +4884,7 @@
   language_id: 340
 Scala:
   type: programming
+  tm_scope: source.scala
   ace_mode: scala
   codemirror_mode: clike
   codemirror_mime_type: text/x-scala
@@ -4673,6 +4923,7 @@
   - csi
   - gosh
   - r6rs
+  tm_scope: source.scheme
   ace_mode: scheme
   codemirror_mode: scheme
   codemirror_mime_type: text/x-scheme
@@ -4683,6 +4934,7 @@
   - ".sci"
   - ".sce"
   - ".tst"
+  tm_scope: source.scilab
   ace_mode: text
   language_id: 344
 Self:
@@ -4760,6 +5012,7 @@
   - rc
   - sh
   - zsh
+  tm_scope: source.shell
   ace_mode: sh
   codemirror_mode: shell
   codemirror_mime_type: text/x-sh
@@ -4810,6 +5063,16 @@
   codemirror_mode: slim
   codemirror_mime_type: text/x-slim
   language_id: 350
+SmPL:
+  type: programming
+  extensions:
+  - ".cocci"
+  aliases:
+  - coccinelle
+  ace_mode: text
+  tm_scope: source.smpl
+  color: "#c94949"
+  language_id: 164123055
 Smali:
   type: programming
   extensions:
@@ -4825,6 +5088,7 @@
   - ".cs"
   aliases:
   - squeak
+  tm_scope: source.smalltalk
   ace_mode: text
   codemirror_mode: smalltalk
   codemirror_mime_type: text/x-stsrc
@@ -4852,7 +5116,7 @@
   extensions:
   - ".sp"
   - ".inc"
-  tm_scope: source.sp
+  tm_scope: source.sourcepawn
   ace_mode: text
   language_id: 354
 Spline Font Database:
@@ -4895,6 +5159,24 @@
   codemirror_mode: mllike
   codemirror_mime_type: text/x-ocaml
   language_id: 357
+Starlark:
+  type: programming
+  tm_scope: source.python
+  ace_mode: python
+  codemirror_mode: python
+  codemirror_mime_type: text/x-python
+  color: "#76d275"
+  extensions:
+  - ".bzl"
+  filenames:
+  - BUCK
+  - BUILD
+  - BUILD.bazel
+  - WORKSPACE
+  aliases:
+  - bazel
+  - bzl
+  language_id: 960266174
 Stata:
   type: programming
   extensions:
@@ -4905,6 +5187,7 @@
   - ".mata"
   - ".matah"
   - ".sthlp"
+  tm_scope: source.stata
   ace_mode: text
   language_id: 358
 Stylus:
@@ -4957,6 +5240,7 @@
   color: "#ffac45"
   extensions:
   - ".swift"
+  tm_scope: source.swift
   ace_mode: text
   codemirror_mode: swift
   codemirror_mime_type: text/x-swift
@@ -4968,6 +5252,7 @@
   - ".sv"
   - ".svh"
   - ".vh"
+  tm_scope: source.systemverilog
   ace_mode: verilog
   codemirror_mode: verilog
   codemirror_mime_type: text/x-systemverilog
@@ -5039,6 +5324,7 @@
   interpreters:
   - tclsh
   - wish
+  tm_scope: source.tcl
   ace_mode: tcl
   codemirror_mode: tcl
   codemirror_mime_type: text/x-tcl
@@ -5049,6 +5335,9 @@
   extensions:
   - ".tcsh"
   - ".csh"
+  interpreters:
+  - tcsh
+  - csh
   tm_scope: source.shell
   ace_mode: sh
   codemirror_mode: shell
@@ -5060,6 +5349,7 @@
   ace_mode: tex
   codemirror_mode: stex
   codemirror_mime_type: text/x-stex
+  tm_scope: text.tex.latex
   wrap: true
   aliases:
   - latex
@@ -5067,7 +5357,6 @@
   - ".tex"
   - ".aux"
   - ".bbx"
-  - ".bib"
   - ".cbx"
   - ".cls"
   - ".dtx"
@@ -5092,12 +5381,25 @@
   extensions:
   - ".t"
   color: "#00004c"
+  tm_scope: source.terra
   ace_mode: lua
   codemirror_mode: lua
   codemirror_mime_type: text/x-lua
   interpreters:
   - lua
   language_id: 371
+Texinfo:
+  type: prose
+  wrap: true
+  extensions:
+  - ".texinfo"
+  - ".texi"
+  - ".txi"
+  ace_mode: text
+  tm_scope: text.texinfo
+  interpreters:
+  - makeinfo
+  language_id: 988020015
 Text:
   type: prose
   wrap: true
@@ -5127,9 +5429,14 @@
   - go.mod
   - go.sum
   - keep.me
+  - package.mask
+  - package.use.mask
+  - package.use.stable.mask
   - read.me
   - readme.1st
   - test.me
+  - use.mask
+  - use.stable.mask
   tm_scope: none
   ace_mode: text
   language_id: 372
@@ -5220,6 +5527,7 @@
   extensions:
   - ".anim"
   - ".asset"
+  - ".mask"
   - ".mat"
   - ".meta"
   - ".prefab"
@@ -5265,6 +5573,46 @@
   tm_scope: source.ur
   ace_mode: text
   language_id: 383
+V:
+  type: programming
+  color: "#5d87bd"
+  aliases:
+  - vlang
+  extensions:
+  - ".v"
+  tm_scope: source.v
+  ace_mode: golang
+  codemirror_mode: go
+  codemirror_mime_type: text/x-go
+  language_id: 603371597
+VBA:
+  type: programming
+  color: "#867db1"
+  extensions:
+  - ".bas"
+  - ".cls"
+  - ".frm"
+  - ".frx"
+  - ".vba"
+  tm_scope: source.vbnet
+  aliases:
+  - vb6
+  - visual basic 6
+  - visual basic for applications
+  ace_mode: text
+  codemirror_mode: vb
+  codemirror_mime_type: text/x-vb
+  language_id: 399230729
+VBScript:
+  type: programming
+  color: "#15dcdc"
+  extensions:
+  - ".vbs"
+  tm_scope: source.vbnet
+  ace_mode: text
+  codemirror_mode: vbscript
+  codemirror_mime_type: text/vbscript
+  language_id: 408016005
 VCL:
   type: programming
   color: "#148AA8"
@@ -5285,6 +5633,7 @@
   - ".vhs"
   - ".vht"
   - ".vhw"
+  tm_scope: source.vhdl
   ace_mode: vhdl
   codemirror_mode: vhdl
   codemirror_mime_type: text/x-vhdl
@@ -5295,6 +5644,7 @@
   extensions:
   - ".vala"
   - ".vapi"
+  tm_scope: source.vala
   ace_mode: vala
   language_id: 386
 Verilog:
@@ -5303,10 +5653,25 @@
   extensions:
   - ".v"
   - ".veo"
+  tm_scope: source.verilog
   ace_mode: verilog
   codemirror_mode: verilog
   codemirror_mime_type: text/x-verilog
   language_id: 387
+Vim Snippet:
+  type: markup
+  aliases:
+  - SnipMate
+  - UltiSnip
+  - UltiSnips
+  - NeoSnippet
+  extensions:
+  - ".snip"
+  - ".snippet"
+  - ".snippets"
+  tm_scope: source.vim-snippet
+  ace_mode: text
+  language_id: 81265970
 Vim script:
   type: programming
   color: "#199f4b"
@@ -5329,22 +5694,18 @@
   - vimrc
   ace_mode: text
   language_id: 388
-Visual Basic:
+Visual Basic .NET:
   type: programming
   color: "#945db7"
   extensions:
   - ".vb"
-  - ".bas"
-  - ".cls"
-  - ".frm"
-  - ".frx"
-  - ".vba"
   - ".vbhtml"
-  - ".vbs"
-  tm_scope: source.vbnet
   aliases:
-  - vb.net
+  - visual basic
   - vbnet
+  - vb .net
+  - vb.net
+  tm_scope: source.vbnet
   ace_mode: text
   codemirror_mode: vb
   codemirror_mime_type: text/x-vb
@@ -5419,6 +5780,16 @@
   tm_scope: source.vtt
   ace_mode: text
   language_id: 658679714
+Wget Config:
+  type: data
+  group: INI
+  aliases:
+  - wgetrc
+  filenames:
+  - ".wgetrc"
+  tm_scope: source.wgetrc
+  ace_mode: text
+  language_id: 668457123
 Windows Registry Entries:
   type: data
   extensions:
@@ -5509,6 +5880,7 @@
   language_id: 225167241
 XML:
   type: data
+  tm_scope: text.xml
   ace_mode: xml
   codemirror_mode: xml
   codemirror_mime_type: text/xml
@@ -5564,7 +5936,6 @@
   - ".odd"
   - ".osm"
   - ".pkgproj"
-  - ".plist"
   - ".pluginspec"
   - ".proj"
   - ".props"
@@ -5580,15 +5951,9 @@
   - ".shproj"
   - ".srdf"
   - ".storyboard"
-  - ".stTheme"
   - ".sublime-snippet"
   - ".targets"
-  - ".tmCommand"
   - ".tml"
-  - ".tmLanguage"
-  - ".tmPreferences"
-  - ".tmSnippet"
-  - ".tmTheme"
   - ".ts"
   - ".tsx"
   - ".ui"
@@ -5632,6 +5997,22 @@
   - Web.config
   - packages.config
   language_id: 399
+XML Property List:
+  type: data
+  group: XML
+  extensions:
+  - ".plist"
+  - ".stTheme"
+  - ".tmCommand"
+  - ".tmLanguage"
+  - ".tmPreferences"
+  - ".tmSnippet"
+  - ".tmTheme"
+  tm_scope: text.xml.plist
+  ace_mode: xml
+  codemirror_mode: xml
+  codemirror_mime_type: text/xml
+  language_id: 75622871
 XPages:
   type: data
   extensions:
@@ -5704,6 +6085,7 @@
   type: programming
   extensions:
   - ".xtend"
+  tm_scope: source.xtend
   ace_mode: text
   language_id: 406
 YAML:
@@ -5720,6 +6102,7 @@
   - ".syntax"
   - ".yaml"
   - ".yaml-tmlanguage"
+  - ".yaml.sed"
   - ".yml.mysql"
   filenames:
   - ".clang-format"
@@ -5763,7 +6146,7 @@
   - ".y"
   - ".yacc"
   - ".yy"
-  tm_scope: source.bison
+  tm_scope: source.yacc
   ace_mode: text
   color: "#4B6C4B"
   language_id: 409
@@ -5828,6 +6211,17 @@
   tm_scope: none
   ace_mode: text
   language_id: 411
+cURL Config:
+  type: data
+  group: INI
+  aliases:
+  - curlrc
+  filenames:
+  - ".curlrc"
+  - _curlrc
+  tm_scope: source.curlrc
+  ace_mode: text
+  language_id: 992375436
 desktop:
   type: data
   extensions:
@@ -5836,6 +6230,20 @@
   tm_scope: source.desktop
   ace_mode: text
   language_id: 412
+dircolors:
+  type: data
+  extensions:
+  - ".dircolors"
+  filenames:
+  - ".dir_colors"
+  - ".dircolors"
+  - DIR_COLORS
+  - _dir_colors
+  - _dircolors
+  - dir_colors
+  tm_scope: source.dircolors
+  ace_mode: text
+  language_id: 691605112
 eC:
   type: programming
   color: "#913960"
@@ -5864,6 +6272,14 @@
   tm_scope: source.fish
   ace_mode: text
   language_id: 415
+mIRC Script:
+  type: programming
+  color: "#926059"
+  extensions:
+  - ".mrc"
+  tm_scope: source.mrc
+  ace_mode: text
+  language_id: 517654727
 mcfunction:
   type: programming
   color: "#E22837"
@@ -5876,6 +6292,7 @@
   type: programming
   extensions:
   - ".mu"
+  tm_scope: source.mupad
   ace_mode: text
   language_id: 416
 nanorc:
@@ -5902,6 +6319,7 @@
   color: "#b0b77e"
   extensions:
   - ".ooc"
+  tm_scope: source.ooc
   ace_mode: text
   language_id: 418
 q:
@@ -5922,6 +6340,7 @@
   - ".rest"
   - ".rest.txt"
   - ".rst.txt"
+  tm_scope: text.restructuredtext
   ace_mode: text
   codemirror_mode: rst
   codemirror_mime_type: text/x-rst
diff --git a/lingo.cabal b/lingo.cabal
--- a/lingo.cabal
+++ b/lingo.cabal
@@ -1,7 +1,7 @@
 cabal-version:       2.4
 build-type:          Custom
 name:                lingo
-version:             0.3.0.0
+version:             0.3.1.0
 synopsis:            File extension based programming language detection
 description:         Lingo uses github/linguist's language registry to enable fast detection of a file path's programming langauge based on extension or filename.
 homepage:            https://github.com/tclem/lingo-haskell
diff --git a/test/Spec.hs b/test/Spec.hs
--- a/test/Spec.hs
+++ b/test/Spec.hs
@@ -27,6 +27,6 @@
 
   describe "languages" $
     it "parsed languages.yml" $ do
-      length languages `shouldBe` 519
-      length languagesByExtension `shouldBe` 1117
-      length languagesByFileName `shouldBe` 234
+      length languages `shouldBe` 550
+      length languagesByExtension `shouldBe` 1151
+      length languagesByFileName `shouldBe` 254
