Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Enabling Liquid templating syntax highlight in webStorm/phpStorm

I wonder if someone managed to enable the Liquid templating engine syntax highlighting in WebStorm IDE, I work a lot on Shopify stores and really like using Webstorm for that purpose. Did anyone managed to get this working?

I found some resources regarding this issue on JetBrain's forum though it didn't quite got me anywhere, there is one dude who suggested using 'tmBundle' and that might work if you do some dark magic.

The thread is: RUBY-7210 and the official plugin request: JetBrain's plugins: Liquid Templating language request

like image 423
Ilia luk Avatar asked Mar 18 '15 13:03

Ilia luk


3 Answers

I've found out that Twig have a very similar syntax to Liquid, enabling the Twig plugin will highlight Liquid syntax and will keep the HTML highlight/autocomplete/emmet functionality working as opposed to the "textMate Liquid bundle".

Go to Settings > Editor > File Types find "Twig" on that list and associate Liquid files with it by adding *.liquid to the registered patterns section.

If you can't find Twig, download the official plugin from the "Browse repositores" or in the "install JetBrains plugin". If you can't find it there then download the plugin and install it manually by pressing "install plugin from disk": https://plugins.jetbrains.com/plugin/7303?pr=

You will also want to associate *.scss.liquid to .scss files, *.css.liquid to .css files and *.js.liquid to .js files so that Twig wouldn't run on those type of files.

The end result works like a charm! it's the best solution yet until some official plugin will come out, hope it helps someone.

like image 97
Ilia luk Avatar answered Nov 09 '22 21:11

Ilia luk


To follow up on Ilia luk's answer, PHP Storm now has Twig support built in—just enable the plug-in if it isn't already.

like image 32
Chris Bauer Avatar answered Nov 09 '22 21:11

Chris Bauer


Adding to the styles for Shopify, since it adds JSON for settings. Enable JSON wrapping between schema tags in

Settings > Editor > Language Injections

Click add/plus button. Then add settings

Language ID = JSON

Places Patterns = + twigCustomStatement("schema")

like image 25
JoeyPi Avatar answered Nov 09 '22 21:11

JoeyPi