@cindex Javascript mode
@cindex Awk mode
Emacs has programming language modes for Lisp, Scheme, the
-Scheme-based DSSSL expression language, Ada, ASM, AWK, C, C++,
+Scheme-based DSSSL expression language, Ada, ASM, AWK, C, C++, C#,
Fortran, Icon, IDL (CORBA), IDLWAVE, Java, Javascript, M4, Makefiles,
Metafont (@TeX{}'s companion for font creation), Modula2, Object
Pascal, Objective-C, Octave, Pascal, Perl, Pike, PostScript, Prolog,
-Python, Ruby, Simula, SQL, Tcl, Verilog, and VHDL@. An alternative
-mode for Perl is called CPerl mode. Modes are also available for the
-scripting languages of the common GNU and Unix shells, and
-MS-DOS/MS-Windows @samp{BAT} files, and for makefiles, DNS master
-files, and various sorts of configuration files.
+Python, Ruby, Simula, SQL, Tcl, TypeScript, Verilog, and VHDL@. An
+alternative mode for Perl is called CPerl mode. Modes are also
+available for the scripting languages of the common GNU and Unix
+shells, and MS-DOS/MS-Windows @samp{BAT} files, and for makefiles,
+JSON, DNS master files, and various sorts of configuration files.
Ideally, Emacs should have a major mode for each programming
language that you might want to edit. If it doesn't have a mode for