[prev in list] [next in list] [prev in thread] [next in thread] 

List:       ktexteditor-devel
Subject:    Re: Adding Textmate-like snippets to Kate
From:       Matt Rogers <mattr () kde ! org>
Date:       2008-01-25 0:07:51
Message-ID: 200801241807.53938.mattr () kde ! org
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


On Thursday 24 January 2008 05:10:14 pm Dominik Haumann wrote:
> On Thursday 24 January 2008, Matt Rogers wrote:
> > On Thu, Jan 24, 2008 at 09:18:07PM +0100, Anders Lund wrote:
> > > On Thursday 24 January 2008, Matt Rogers wrote:
> > > > Hi,
> > > >
> > > > I'm in the process of adding textmate-like snippet support to
> > > > KTextEditor based implementations in the form of a KTextEditor
> > > > plugin. The behavior I want to implement is described at
> > > > http://macromates.com/textmate/manual/snippets#snippets. After
> > > > looking at how KatePart is implemented, I have a few questions.
> > > >
> > > > Does the template interface support what I want to do? I think it's
> > > > basically the same thing, only rather than working with whole files,
> > > > i'm working with little bits of text.
> > >
> > > The template interface can replace macros in the inserted text, so it
> > > looks like you want that for variables. I used it in the kate file
> > > template plugin, so look there for an example.
> >
> > ok, I'll take a look at it. Thanks for the pointer. :)
> >
> > > > I was initially thinking that I would install an event filter on a
> > > > KTextEditor::View object, but since KatePart does that already, will
> > > > that work without interfering with other things in KatePart?
> > >
> > > Why would you want an event filter? for changes in the text, use the
> > > textChanged() signal.
> >
> > Because the textChanged() signal does not exist in the KTextEditor
> > interfaces and I'd prefer not to depend exclusively on Kate.
>
> KTE::View signals
> textInserted (KTextEditor::View *view, const KTextEditor::Cursor &position,
>   const QString &text);
>
> cursorPositionChanged (KTextEditor::View *view,
>   const KTextEditor::Cursor &newPosition)
>
> KTE::Document signals:
> textChanged (KTextEditor::Document *document);
> textInserted (KTextEditor::Document *document,
>   const KTextEditor::Range &range);
> textRemoved (KTextEditor::Document *document,
>   const KTextEditor::Range &range);
> textChanged (KTextEditor::Document *document,
>   const KTextEditor::Range &oldRange, const KTextEditor::Range 
&newRange);
>
> See also:
> http://api.kde.org/4.x-api/kdelibs-apidocs/interfaces/ktexteditor/html/clas
>sKTextEditor_1_1View.html
>

hmm, I must have missed those when I looked at the apidocs.

> > I also need to know when keys like Tab and Backspace are hit.
>
> Backspace -> maybe textRemoved?
> There is no way afaik to get a TAB keypress but an event filter...
>

This is what I thought. Thanks. :)
--
Matt



["signature.asc" (application/pgp-signature)]

_______________________________________________
KTextEditor-Devel mailing list
KTextEditor-Devel@kde.org
https://mail.kde.org/mailman/listinfo/ktexteditor-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic