Skip to main content

Formatting JSON in Kate - KDE Editor

Some years ago, I wrote a post on Formatting XML in Kate - KDE Editor. This one  below is for JSON format. Like the XML one this one also makes use of a tool installed on your machine and is invoked from Kate as a filter.

TLDR; 


Kate is one awesome editor ( If you don't like Vim for its 'CLI'ness )

When working from the command line we can use a handy tool 'jq' to format JSON files and pretty print them. Well, the good news is we can use the same from within Kate as well

But it is a tedious task to use it when you have some content in Kate ( more so if it is an unsaved file ) and want to format it.

Incase, you don't have jq installed, simply hit
sudo apt-get install jq
and that will install it for you.

If you use jq you would do something like this,

  • Save File ( MySavedFile.xml )
  • Go to Command Line
  • cat MySavedFile.txt | jq '.' - > MySavedFile.txt
and then reload our file in Kate.

  • Select text ( Complete or Partial )
  • Hit 'Ctrl + \'  or go to Tools -> Filter Text
    • Incase your Kate does not have the option for 'Filter Text' under tools, you just need to enable the 'Text Filter' plugin.
    • Go to Settings -> Plugin -> Enable 'Text Filter' and you are done.
  • Type 'jq '.' -' and VoilĂ ! we have a formatted JSON
  • Incase, you don't wish to modify the existing text, make sure you select 'Copy the result instead of pasting it'

  • Another good thing is that Kate caches the jq command in the text filter so you don't have to type it in again and again. 


Tested with ,

Kate: 19.12.3
Qt: 5.12.8
KDE Development Platform: 5.68.0

on Ubuntu 20.04.3 LTS

Comments

Popular posts from this blog

Formatting XML in Kate - KDE Editor

TLDR;   Kate is one awesome editor ( If you don't like Vim for its 'CLI'ness ) When working from the command line we can use a handy tool ' xmllint ' to format XML files using its --format option. But it is a tedious task to use it when you have some content in Kate ( more so if it is an unsaved file ) and want to format it. Incase, you don't have xmllint installed, simply hit sudo apt-get install libxml2-utils and that will install it for you. If you use xmllint you would do something like this, Save File ( MySavedFile.xml ) Go to Command Line cat MySavedFile.txt | xmllint --format - > MySavedFile.txt and then reload our file in Kate . If you wish to remain in Kate and get this done then you would need to do, Select text ( Complete or Partial ) Hit ' Ctrl + \ '  or go to Tools -> Filter Text Incase your Kate does not have the option for 'Filter Text' under tools, you just need to enable the 'Text F...

Set default profile for Konsole on Ubuntu

The option for changing the default profile is not present in konsole (atleast not in Ubuntu 12.04 LTS). It is really irritating to switch profiles whenever I open a new tab. However, we can change it via the config file. The config file is usually present in the home folder /home/username/.kde/share/config/konsolerc It will look something like this, [$Version] update_info=konsole.upd:2.9.0-global-options [Colors] CurrentPalette=Forty Colors [Desktop Entry] DefaultProfile=NewDawn.profile [Favorite Profiles] Favorites=/home/username/.kde/share/apps/konsole/Shell.profile,/home/username/.kde/share/apps/konsole/NewDawn.profile [MainWindow] Height 900=901 State=AAAA/wAAAAD9AAAAAAAABf8AAANQAAAABAAAAAQAAAAIAAAACPwAAAAA ToolBarsMovable=Disabled Width 1600=1601 You can see in Favorite Profiles, I have added a profile named NewDawn apart from the default one named as Shell. My default profile was Shell.profile which I changed to NewDawn.profile by changing Defaul...