Skip to content

Posts 

GSoC – Kate Code Folding (some more details about folding)

Tuesday, 26 July 2011  | Adrian Lungu
Hi! Yesterday I received a comment on my previous blog post that it would be nice to give some more technical details about the folding. Initially, this was a comment response, but because it proved to be pretty interesting and more of you read the articles than the comments, I decided to post it as an article :) Here are some details that you could find interesting: Kate’s folding is based on a real / virtual line system. All the folded block’s lines have the same virtual line (they are literally folded under the first block’s line). But how are these blocks defined? Kate uses the file extension to determine what defines a block (special characters like “{“ or “}”, text alignment and so on). Kate’s highlight sends some info about these to Kate’s code folding. Let’s call them “document’s anchors”. This info is rudimentary. It is mentioned only the type of anchor (encoded as a number greater than 0 if it is a start anchor and lower than 0 if it is an end anchor) and its position in the document (real position). I use this info to build the “folding nodes” (I will detail them later) and to keep their position updated as well. So, here we have the first data structure: the “line mapping”. Line mapping is a QMap <line_number, QVector > and contains an entry for each document line that has at least one anchor I was talking about earlier. If this structure is updated correctly, then I am sure that all the folding nodes have their position set correctly and I don’t need to worry about that. Read More

Kate Vi Input Mode – GSoC 2011

Tuesday, 26 July 2011  | Svyatoslav Kuzmich | Tags:  planet
I want to introduce you my GSoC-2011 project. I was working on improvement the vi input mode for the Kate part. There are a lot of improvements for normal mode. Now it’s able to use jump list by pressing ctrl-i/ctrl-o in normal mode like in vim. And now not only registers but also marks, and jumps stored in the config of the session. H, M and L commands moves cursor to the first(Home), Middle and Last line of the screen. To go to the any percent of the document you can use the % command by typing the number of percent(1-100) before it. gk and gj motions will make you able to go visual(display) lines up and down. It’s useful when you using line wrap. Read More

You, KDE!

Monday, 25 July 2011  | Dominik Haumann | Tags:  planet
For me, it (still) feels very unnatural to talk about us as KDE. I’m still thinking in terms of the KDE community; and the KDE Project releases the KDE Desktop (or just KDE). I’m also fine with the KDE Workspace and other specialized variants. However, the login manager now also shows the term KDE Plasma Workspace. In my very own humble opinion, this is already too much of buzz words. At university, I’m helping out with system administration. And since I’m very familiar with KDE, I fix all KDE related issues (and usually enjoy doing so). We have lots of colleagues that never used KDE. Now, try to explain the term Plasma… Well, it’s a desktop shell – also too complex. It’s the desktop, with all the icons and panels. That’s more understandable :) But next, a dialog pops up with some status messages: Akonadi. Well, try to explain the term Akonadi. It’s similar with other technologies. Explain what Nepomuk is doing with the difference to Strigi… When I try to explain what’s happening, and what all these components do, I sometimes feel pretty much stupid uncomfortable using these words. Read More

GSoC 2011 – Kate Code Folding – (Try Kate’s new code folding)

Sunday, 24 July 2011  | Adrian Lungu
Hi everyone! Kate’s new code folding was merged with the master branch. :) You can try it by yourself. If you do find any bugs, please send a bug report on KDE’s bug tracker or leave a comment here. I will use a test unit to solve those bugs, so I will need a full backtrace and some info to help me replicate it. Please notice that there are no new features added yet – just the basic code folding. Read More

Kate Modeline Editor

Saturday, 23 July 2011  | Dominik Haumann | Tags:  planet
As you may know, Kate supports the concept of document variables, also known as modelines. In short, document variables can be used to set Kate settings local to a file. For instance, this is useful for settings specific indenter options than the ones defined in Kate’s settings dialog. Assume you work on two projects, the first indents with spaces and the second with tabs, then you can simply add a modeline that contains the specific document variables that set the specific indentation properties. Read More

GSoC 2011 – Kate Code Folding – week 5 (New Code Folding is taking shape)

Wednesday, 13 July 2011  | Adrian Lungu
Hey! The new code folding is taking shape. Actually it is implemented. :) The next step will be testing it (and debugging, if necessary) and implementing some new features. Also there are some keyboard shortcuts that didn’t worked so well on the previous version and they need to be fixed too. If you want to help us with the testing, you can download my clone and play a little with code folding. Also, if you have some ideas about the new features that Kate’s folding should have, let me know. If it is possible and there is time, they will be implemented. Greetings, Adrian Read More

KDE 4.6.5 > StarCraft 2

Sunday, 10 July 2011  | Christoph Cullmann | Tags:  planet
I normally enjoy StarCraft 2 in the evening a bit or like now, if it is raining and I have no fun in any more real work. But just now and some days ago, it has again proven, KDE > StarCraft 2. Just again, StarCraft 2 (played with wine, thanks a lot wine team, you do a great job!) got sluggish and then terminated. A quick dmesg call shows the cause. Like last time, the OOM killer got me. Read More

Kate in KDE 4.7

Saturday, 9 July 2011  | Dominik Haumann | Tags:  planet
Now that the next version of the KDE platform is branched, it’s time to have a look at all the changes in Kate in KDE 4.7. More than 150 wishes and issues have been resolved. A detailed list of the resolved issues can be found in the KDE bug tracker. All Kate development is done in the KDE git infrastructure as submodule of kdebase. It is very straight forward to build Kate within a few minutes according to our excellent documentation. New Search Plugin with the ability to search in files on disk or opened files (will replace the Find in Files plugin in KDE 4.8). Plugin improvements: Build Plugin., GDB Plugin Kate’s tab bar plugins gained several new features. Swap files: If lost data is found, documents are marked as read-only. Further noteworthy changes: Improved printing, change of line ending triggers modified flag, fixed shortcut issues, fixed auto completion popup, and more. Current State of Kate Read More

GSoC 2011 – Kate Code Folding – week 4 (Integrating the folding algorithm)

Monday, 4 July 2011  | Adrian Lungu
Hi! I bring good news about Kate’s folding today. The algorithm was implemented and tested successfully. ;) As I mentioned in the previous article, I implemented it in a new (simpler) project. It is a Qt project (developed using Qt Creator) and you can find it in my Kate clone, “tree_alg” folder. Actually, I have implemented two folding algorithms: one that uses a tree that changes itself dynamically whenever you insert or delete a node, and one based on stack that rebuilds the entire folding tree whenever you insert or delete a node. I needed two algorithms because I wanted to implement an automatic testing mechanism and for that I needed a way to test the output. The second algorithm was easier to be implemented and it was very stable (bug-less) from the beginning, so it was great to use it for my testing. Read More

Kate plugin updates part 3

Tuesday, 28 June 2011  | Kåre Särs | Tags:  planet
Well I’m not sure this really qualifies as an update, because it is actually a new plugin. And the plugin I’m talking about is the Search plugin. This is going to be mostly a series of screen-shots. The first shot contains the “new” feature differentiating itself from the other one. You can now select to search in the currently open files. This is especially good if you are working on files on a remote server. Read More