Skip to content

KDE Blogs 

Wednesday, 3 March 2004

More KTextEditor

Being on holidays certainly gives you time to reflect on what new features you'd like in your text editor :) I've come up with something which I hope will help make using a text editor a better experience by providing more assistance to the user... input filtering. It came to me when I was thinking of cleaner ways to do code templates. At the moment, I think you have to use a keyboard shortcut to insert code templates? Anyway, this will make it easier for the 3rd party app developer to e.g. respond to "for " and insert a template. It will also make immutable text a possibility, something requested in a comment to my last blog. In fact it will make it possible to enforce valid structure on a document, though I personally think that would be too restrictive. Immutable text could be appropriately highlighted, and the cursor could move around it in a logical manner, so that the for ( ; ; ) { } template could be navigated more easily. Other ideas on the go are improved text navigation eg. easier use of code folding (previews of folded code? auto-expand modes?) and the ability to add a custom widget to the top and/or bottom right-hand corners. I've also decided to improve the idea I had for syntax highlighting by giving each text range a "state" variable, and associate a specific highlighting style to a state, then the developer just has to change the state of a range to make it look different. I'm also taking requests for whatever text decorations you'd like to see available in the next kate - I'm thinking of borrowing some ideas from css, just let me know which ones you think would be useful. Furthermore, I'm planning to extend on code completion by adding syntax highlighting to the dropdown, expanding the info presented, allowing several different filtering and sorting rules (eg. by inheritance; by access (public/protected etc); alphanumerical; and hiding / disabling completions which don't fit the current context), and integrating (somehow - ideas?) summary documentation for the highlighted method. My flight calls, gotta go... someone should sponsor KDE developers going on long-haul international flights so they can hack from business class! Economy is way too cramped... Read More
Tuesday, 2 March 2004

ADSL from tomorrow, look out XPath and KJSEmbed here I come

Rich  | 
My ISP confirmed last night that my ADSL should be working from tomorrow, so I'll be getting back to work on XPath and KJSEmbed. Hurray!
Monday, 1 March 2004

Qt bindings for libusb

I've committed Qt bindings for libusb - see http://sourceforge.net/projects/libusb/ This includes API docs and unit tests. This isn't released yet, so you'll need to suck down the CVS version. I'm a bit worried that the bindings aren't really Qt-ish enough, because I'm not very experienced with class design. So I'm taking advice (and patches!). You'll need to provide fairly specific advice though - at least the interface needs to be specific. Read More
Thursday, 26 February 2004

The Future of KTextEditor

I've been working on something pretty big for katepart for a while now, but it's just struck home how widely applicable this new idea will be for apps utilising the KTextEditor api. The whole thing started when I was looking for a way to enable custom programmatic syntax highlighting. I first implemented a smart cursor which retained its relative location while the text around it was edited; then extended this into a pair of smart cursors to define a "range" of text. These objects give forth plenty of useful, convenient signals, such as changed(), moved(), etc. This looked like a promising way of implementing custom HL. Yesterday, it struck me how these smart cursors could replace most of the clumsy mechanisms used today to interface with text editors. As it stands, most 3rd party apps like KDevelop, Quanta etc. all maintain an externally parsed version of the document's buffer. This is not only inefficient, but the hooks to enable on-the-fly parsing (rather than delayed / background parsing) are not there, so there is always some lag time with the parsed versions. Here's how I envisage this new interface would work: Read More
Wednesday, 25 February 2004

KDE Branding

Datschge  | 
The following post is mostly a response to Aaron's comments in his latest blog entry. It's basically about the reason why I like KDE and why I do the contributions I do, so it might be an interesting albeit highly theoretical read. Read More
Tuesday, 24 February 2004

I hate moving too

Rich  | 
I just moved house (like aseigo) and I second his thought on how much it sucks. My ISP was due to reconnect me to my ADSL today, but this morning I got a call saying it could be another week. Arghhhhhh! Read More
Tuesday, 24 February 2004

One little feature...

"One little feature that would make Kexi a next step to be a killerapp", said Lucijan to me today. Yes, I hope so. What do you think about following feature that works database-transparently?: [image:358,middle] Read More
Monday, 23 February 2004

success begets ignorance

Aseigo  | 
during the last week of moving house (while still working, of course..) i haven't had much contact with my usual "peer group", including the KDE people. let me just say that in their absence from my life i'm beginning to remember how amazing all those guys are. instead, i've been in contact primarily with people who randomly pop up or who come in through the office during the work day. with Linux and KDE taking off, education is definitely lagging behind. ignorance is frustrating, but at least it (unlike stupidity) is curable. some examples of the ignorance i've run into this week: Read More
Sunday, 22 February 2004

Playing with the Switch and Foreach Statements

Tjansen  | 
I've been thinking about C's control statements (if, while, switch, for etc) for a little while, and I think there's some room for improvements in the later two... switch The C# guys have made two interesting modifications to C's switch statement: fall-through is only allowed when there's no statement after the case (thus if a statement follows a case, there must be a break or similar jump statement). And it added the 'goto case' statement that can be used for fall-through effects. Here's a C# snippet: Read More
Friday, 20 February 2004

Working on more than one thing at a time

Mattr  | 
Recently, I've decided to find something else in the KDE project that interests me, familiarize myself with its inner workings, and start hacking on it. I've come up with a couple of things, mostly KIO, and KOffice (KWord, KSpread, and Kexi to be exact). The problem that I've run into is one of time management. Now that I have a full time job, I don't exactly have the amount of time that I can devote to hacking KDE that I used to when i was still in university. I'm curious to know how people manage their time with working on more than one piece of KDE at a time. Read More