[Geany-devel] (no subject)
Frank Lanitz
frank at xxxxx
Fri Dec 2 09:28:58 UTC 2011
Am 02.12.2011 01:20, schrieb Lex Trotman:
> On Fri, Dec 2, 2011 at 10:54 AM, Meyer <3m.meyer at gmail.com> wrote:
>> Sure. I want to be able to select text, and then insert a character (e.g.
>> an apostrophe) before and after the selection just by pressing the
>> apostrophe key. Since the normal behavior when a character is pressed while
>> text is selected is to delete the text and insert a character, I need to
>> know when that happens - then I could undo the delete and insert my
>> characters. If it was two separate events though - delete then insert - I
>> won't want to do anything.
>>
>> I have it working now, but it seems awfully hackish: when one of the
>> characters I might insert is pressed, I store the current position of the
>> cursor and undo the last event. If the new cursor position is the same
>> place as the old one, then it was a "overwrite" event. Otherwise, it was
>> delete then insert.
>>
>> So, any ideas for how I could do this would be much appreciated!
>
> I assume you are writing a plugin.
>
> You should use the keybinding system to capture the apostrophe before
> it goes to scintilla so you can detect and do anything you want.
You could also use editor_nodify signal [1]. E.g. used in GeanyLaTeX
plugin for doing something similar.
Cheers,
Frank
[1]
http://www.geany.org/manual/reference/pluginsignals_8c.html#af601d8beb39bf8082ddd1c09c74ce892
More information about the Devel
mailing list