I love the Kate Text editor. I use it for pretty much all the programming projects I do. Kate has been around for long time now, about 20 years! At least earliest blog post for it I could find was written in 2004.
I wanted to go over my workflow with it, why I like it so much and hopefully get more people to try it out.
↫ Akseli Lahtinen
Programmers and developers tend to be very set in their ways and have their preferred workflows – which profession doesn’t, honestly – and since there’s such a wide variety of developer and programming tools out there, it feels like every single developer’s workflow and setup is entirely unique. Akseli Lahtinen, KDE developer and allround awesome person, details his setup using Kate, the venerable and feature-rich text editor from the KDE project.
As someone who can’t program, I can’t really compare his workflow to my own, but what I found interesting while reading his post is that there’s quite a bit of overlap between my previous work as a translator and his work as a developer. While the contents of each individual view inside his Kate window are obviously different, the setup of windows and tools I had when translating looked very similar.
This shouldn’t be surprising to me – after all, both translating and developing requires multiple work surfaces, language plugins, formatting tools, tons of keyboard shortcuts, and a whole load of browser tabs, PDF files, and other documents to find just the right translation or the perfect term, as well as a ton of background to make sure you understand the topic you’re translating about. Y’all have no idea how much I know about the deepest complex inner-workings and processes of some of the largest organisations in the world, just because I needed to study them and had access to their internal documentation and software.
I also read and studied way too many complex contracts, European law, and technical studies into medicine and healthcare treatments, and I guess developers and programmers do the same thing – just focusing on different subjects. What’s the best way to do this thing in the programming language I’m using? How does this library I want to integrate work? What are the API endpoints for this service I want to use?
It’s really not that different from translating, and that never really dawned on me until now.
I have a thing for text editors ever since my introduction to CygnusED Pro on the Amiga many years ago. Still, an astonishing >500 MB size for a text editor? What is next? a 500 MB image viewer?
The git repository with source code of kate https://invent.kde.org/utilities/kate/-/tree/master is 130 MB. kate is translated into many languages, the source code of each translation is ~ 1.3 MB. kate also comes with many plugins out of the box.
du -h ~/kde/build/kate
says 1.4 GB. That is without: any KDE frameworks, other KDE and non KDE libraries, without konsole and markdownpart. But the build uses the Debug CMake build configuration.
I’d love to see why one would use Kate rather than let’s say Visual Studio or Textpad on Windows, Visual Studio Code on Linux/Macos. However it’s nice to read about this, I had never heard of it.