Spotlight: Kate Scripting
Hey ho everyone.
Dominik asked me to blog about a feature in Kate that is still (sadly!) pretty unknown and seldom used: Kate Scripting. As you should know you can script KatePart completely via JavaScript. As those articles explain, it’s rather simple to write functions and put them into a file to have them reusable. But what for those write-use-throwaway kind of cases, where you simply need to get a job done quickly and don’t want to go through the overhead of writing some full fledged, documented, action-binded, localized script?
Read MoreSpotlight: Kate Scripting
Hey ho everyone.
Dominik asked me to blog about a feature in Kate that is still (sadly!) pretty unknown and seldom used: Kate Scripting. As you should know you can script KatePart completely via JavaScript. As those articles explain, it’s rather simple to write functions and put them into a file to have them reusable. But what for those write-use-throwaway kind of cases, where you simply need to get a job done quickly and don’t want to go through the overhead of writing some full fledged, documented, action-binded, localized script?
Read MoreThe Mission of KDE’s Wikis
KDE has three wikis: TechBase, Community and UserBase. The separation has the following meaning according to http://wiki.kde.org:
- TechBase: The primary place for high quality technical information about KDE targeted at 3rd party developers, ISVs and system administrators.
- Community: The working area for the KDE community. It provides a place for sharing information within the community and coordinating community teams.
- UserBase: The home for KDE users and enthusiasts. It provides high quality information for end users on how to use KDE applications.
So TechBase is a source of mostly technical information. This includes step-by-step howtos for all sorts of KDE development as well as the feature plans and schedules for KDE releases and so forth. It’s mainly static content. Think of a howto for a Plasma Widget or a howto for building KDE. The content usually is valid for a long time, mostly even for years. For those of you longer in the KDE project, TechBase is the same as our good old developer.kde.org page (and we’ve never put arbitrary content there). The only difference is, that it’s now maintained as wiki.
Read MoreJoin Kate Development!
The Wheel of Time turns… meaning that the Kate Project has quite along history by now. The Kate Project was started back in December 2000, so it’s almost 10 years old. Development sometimes continues with a fast pace; and at other times there is almost no progress for weeks. But all in all, looking back at those 10 years, we can proudly tell you that the project is very much alive. Let’s take a look at the traffic of our mailing list:
Read MoreMovingRanges moving on ;)
As with any new code, during adoption bottlenecks show up.
For example the rendering of text lines with many ranges inside was quiet slow. This is now partly addressed by Milian Wolff, thanks a lot.
An other bottleneck was the assumption, that it is fast enough to hash the ranges just by their block and iterate over all of them to search the ranges matching a specific line. This does scale well enough for KatePart itself, but KDevelop creates multi-thousand ranges for small documents. To improve this, an internal special mapping was implemented by David Nolden for ranges which don’t span more than one line. For them an efficient line => range mapping is easy and not to costly.
Read MoreThe Holy Church of Kate!
KDE 4.5: SmartRange => MovingRange
Dominik already blogged about the issues we have in KatePart with the current SmartRange/SmartCursor/Smart* interfaces that were designed during the early KDE 4.0 release.
Given that large amounts of the internal implementation are exposed to the outside in the interfaces, there was no feasible way to fix the issues with them. The problem with the not thread-safe behaviour could have been prevented by just stating the plain fact that multi-threaded access to the ranges doesn’t work, even thought there is a mutex in the interface exposed which should be locked to gain this safety. Still the real problems of the unchangable bad implemenation and design choices would have remained.
Read MoreGSoC – Swap Files for Kate
Hello,
As mid-term evaluations have started, I would like to show my current state of GSoC project, because I’ve never found the time to do it.
The swap file feature is implemented, except for the view differences feature and few TODOs. Some more testing need to be done, though. Below are some screenshots of how it works.
When you start editing in a document, a swap file for the document is created (“.swp.originalFileName”). If Kate crashes and the user didn’t save the changes, the swap file remains on the disk.
Read MoreAkademy 2010 – Best experience so far
My first Akademy was the greatest thing I’ve ever experienced. I remember I was quite unsure a month ago, wheter to come or not, but finally decided and booked my flight and hotel. In my first day, I was very shy and didn’t know what to do, but people came and talked to me and everything got better. The talks had very interesting topics and the speakers did their job professionally. I also want to congratulate the organization team, for making everything happen as scheduled.
Read Morekate-editor.org shaping up
kate-editor.org now contains all articles from the old page still applicable to Kate in KDE 4 and in addition all blog entries of Dominik which are Kate centric.
Beside that it will aggregate the blog entries of Milian for Kate ;)
Still, a lot of work is needed. We already got an offer for help to beautify the page by a web designer, still content writers are missing. You have a nice short post about how to use Kate best? You have some howto? Just contact us or me in private. We can either give you an account on the page or just add your content if you like that more.
Read More