Enhance your code’s clarity with granular syntax highlighting.
This is a premium feature. You can unlock it by purchasing a full plugin license or a standalone Material Theme Language Additions license.
Overview
Language Additions significantly improves the IDE’s syntax highlighting by allowing you to individually colorize keywords, functions, and primitives. This creates a more readable and vibrant coding environment, helping you instantly distinguish between different code elements.
These additions are integrated directly into the Color Scheme settings pages for each supported language, titled <Language> Additions.
Supported Languages
Language Additions are currently available for several popular languages:
- Java
- Kotlin
- JavaScript
- TypeScript
- PHP
- Python
- Ruby
- Go
- Rust
Note: We plan to allow other plugin authors to contribute their own language additions in the future.
JavaScript / TypeScript
The following elements can be customized:
this,superif,else,for,while,doconstructorreturn,yieldnew,throwasync,awaittry,catch,finallyexport,import,require,from,default,moduledebuggerprototypenull,undefined,NaNtrue,falsevar,let,constfunction,staticget,setabstract,class,extends,implementsconsole,window,document,globalin,of,instanceof,typeof,aspublic,private,protected,readonlydeclare,namespacetype,interface,aliasany,unknown,neverkeyofenumnumber,string,boolean,object,symbol,bigint,voidsatisfies,using
Java
The following elements can be customized:
abstract,extends,implements,nativeassertbyte,short,int,long,float,double,char,boolean,voidclass,interfaceenumfor,while,doif,elsepackage,importinstanceofmodule,exports,requires,opens,provides,uses,with,transitivenewtrue,falsenullprivate,protected,publicreturnstaticfinalswitch,case,defaultsynchronized,volatile,transientthis,superthrow,throwstry,catch,finallyvar
PHP
The following elements can be customized:
echoexit,diefunctionnullprivate,public,protectedselfstatic,finaltrue,falseuse,namespace
Kotlin
The following keywords can be customized:
private,public,protected,internalsealed,override,openobject,companiondataoperator,infixthis,supernull,Unitimport,packagetrue,false
Python
The following elements can be customized:
True,False,Noneasasync,awaitclassdefif,elif,else,while,for,doimport,fromprintraisereturn,yieldtry,except,finallywith
Ruby
Keywords:
require,require_self,require_relativedefclassmodule,namespaceif,elsif,else,unlessprivate,protected,publicreturn,yieldraisecasewhenwhile,until,loopbegin,rescue,finallyselfnot,and,ordo
Primitives:
niltrue,false
Methods:
attr_reader,attr_writer,attr_accessor,attr_accessibleinitializenewputs
Go
Functions:
mainmakelen,capPrint,Println,Printf
Keywords:
import,packagefuncif,elseswitch,case,default,fallthroughfor,range,mapreturnvar,consttypedeferstructinterfacego,selectchan
Primitives:
niltrue,false
Rust
The following keywords and elements are customizable:
asasync,awaitcratedynenumexternfnif,elseimpllet,constloop,while,for,break,continuematchmodmovemut,refpubself,Selfstaticstructreturn,yieldtraittrue,falsetypeunsafeunionusewhere_
Advanced Toggles
Individual Language Additions can be enabled or disabled globally through the Advanced Settings page.
FAQ
Q: The feature doesn’t seem to be working. My keywords like var or this are the same color as the default keyword color, even though I’m using a different color scheme.
A: Since these are Additions, most color schemes are not natively aware of these specific entries and will fall back to the default keyword color defined by that scheme.
To fix this, you can manually customize the colors in the Language Additions settings page. If you’re a theme designer, you can include these color definitions in your exported schemes so that users who have the plugin installed can see your custom highlighting.