Hi,
I have two possible situations that I need to differentiate between, and I'm not sure how to do it - The first situation is the user deletes selected text by overwriting it with a new character. The second is the user deletes selected text by pressing backspace/delete, and then enters a new character. I thought this would be fairly easy, but I've been trying to figure it out for awhile and haven't gotten anywhere. Does anyone have any ideas for how I could accomplish this?
Thanks, Alex
Am 01.12.2011 20:57, schrieb Meyer:
I have two possible situations that I need to differentiate between, and I'm not sure how to do it - The first situation is the user deletes selected text by overwriting it with a new character. The second is the user deletes selected text by pressing backspace/delete, and then enters a new character. I thought this would be fairly easy, but I've been trying to figure it out for awhile and haven't gotten anywhere. Does anyone have any ideas for how I could accomplish this?
Can you go into more details in which context you need that information?
Cheers, Frank
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!
Alex
On Thu, Dec 1, 2011 at 3:40 PM, Frank Lanitz frank@frank.uvena.de wrote:
Am 01.12.2011 20:57, schrieb Meyer:
I have two possible situations that I need to differentiate between, and I'm not sure how to do it - The first situation is the user deletes selected text by overwriting it with a new character. The second is the user deletes selected text by pressing backspace/delete, and then enters a new character. I thought this would be fairly easy, but I've been trying to figure it out for awhile and haven't gotten anywhere. Does anyone have any ideas for how I could accomplish this?
Can you go into more details in which context you need that information?
Cheers, Frank
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
On Fri, Dec 2, 2011 at 10:54 AM, Meyer 3m.meyer@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.
Cheers Lex
Alex
On Thu, Dec 1, 2011 at 3:40 PM, Frank Lanitz frank@frank.uvena.de wrote:
Am 01.12.2011 20:57, schrieb Meyer:
I have two possible situations that I need to differentiate between, and I'm not sure how to do it - The first situation is the user deletes selected text by overwriting it with a new character. The second is the user deletes selected text by pressing backspace/delete, and then enters a new character. I thought this would be fairly easy, but I've been trying to figure it out for awhile and haven't gotten anywhere. Does anyone have any ideas for how I could accomplish this?
Can you go into more details in which context you need that information?
Cheers, Frank
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
D'oh. I had tried that first, but incorrectly I guess and came to the conclusion that you couldn't use keybindings with just a single character. I suppose I shouldn't have given up so quickly, it's working perfectly now.
Thanks! Alex
On Thu, Dec 1, 2011 at 7:20 PM, Lex Trotman elextr@gmail.com wrote:
On Fri, Dec 2, 2011 at 10:54 AM, Meyer 3m.meyer@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.
Cheers Lex
Alex
On Thu, Dec 1, 2011 at 3:40 PM, Frank Lanitz frank@frank.uvena.de
wrote:
Am 01.12.2011 20:57, schrieb Meyer:
I have two possible situations that I need to differentiate between,
and
I'm not sure how to do it - The first situation is the user deletes selected text by overwriting it with a new character. The second is
the
user deletes selected text by pressing backspace/delete, and then
enters
a new character. I thought this would be fairly easy, but I've been trying to figure it out for awhile and haven't gotten anywhere. Does anyone have any ideas for how I could accomplish this?
Can you go into more details in which context you need that information?
Cheers, Frank
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Hi Alex,
I'm also really keen for this feature, so could I please request a recent copy of the plugin? Perhaps you could update your repo on github? I'd like to start using it right away, and could help to fix any bugs.
I also really think that this should to be added to the 'Auto-close quotes and brackets' feature in core Geany, since it is the expected behavior for any user coming from TextMate or Gedit.
Regards, Nathan
On Thu, Dec 1, 2011 at 7:20 PM, Lex Trotman elextr@gmail.com wrote:
On Fri, Dec 2, 2011 at 10:54 AM, Meyer 3m.meyer@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.
Cheers Lex
Alex
On Thu, Dec 1, 2011 at 3:40 PM, Frank Lanitz frank@frank.uvena.de
wrote:
Am 01.12.2011 20:57, schrieb Meyer:
I have two possible situations that I need to differentiate between,
and
I'm not sure how to do it - The first situation is the user deletes selected text by overwriting it with a new character. The second is
the
user deletes selected text by pressing backspace/delete, and then
enters
a new character. I thought this would be fairly easy, but I've been trying to figure it out for awhile and haven't gotten anywhere. Does anyone have any ideas for how I could accomplish this?
Can you go into more details in which context you need that
information?
Cheers, Frank
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Hi,
I've started integrating my plugin into the Addons plugin. As of now, it adds two check boxes to the Addons preferences to enable wrapping text automatically (just by hitting apostrophe) and wrapping text by hitting a key combo. The first method seems to work, the second should work but you can't define the wrap combos yet. I've just put that on my github repo, and should have time tomorrow to finish it up.
Cheers, Alex
On Thu, Dec 1, 2011 at 10:44 PM, Nathan Broadbent nathan.f77@gmail.comwrote:
Hi Alex,
I'm also really keen for this feature, so could I please request a recent copy of the plugin? Perhaps you could update your repo on github? I'd like to start using it right away, and could help to fix any bugs.
I also really think that this should to be added to the 'Auto-close quotes and brackets' feature in core Geany, since it is the expected behavior for any user coming from TextMate or Gedit.
Regards, Nathan
On Thu, Dec 1, 2011 at 7:20 PM, Lex Trotman elextr@gmail.com wrote:
On Fri, Dec 2, 2011 at 10:54 AM, Meyer 3m.meyer@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.
Cheers Lex
Alex
On Thu, Dec 1, 2011 at 3:40 PM, Frank Lanitz frank@frank.uvena.de
wrote:
Am 01.12.2011 20:57, schrieb Meyer:
I have two possible situations that I need to differentiate
between, and
I'm not sure how to do it - The first situation is the user deletes selected text by overwriting it with a new character. The second
is the
user deletes selected text by pressing backspace/delete, and then
enters
a new character. I thought this would be fairly easy, but I've been trying to figure it out for awhile and haven't gotten anywhere. Does anyone have any ideas for how I could accomplish this?
Can you go into more details in which context you need that
information?
Cheers, Frank
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Am 02.12.2011 01:20, schrieb Lex Trotman:
On Fri, Dec 2, 2011 at 10:54 AM, Meyer 3m.meyer@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#af601d8beb39bf80...
On Thu, 1 Dec 2011 14:57:25 -0500 Meyer 3m.meyer@gmail.com wrote:
I have two possible situations that I need to differentiate between [...] The first situation is the user deletes selected text by overwriting it with a new character. The second is the user deletes selected text by pressing backspace/delete, and then enters a new character. [...] how I could accomplish this?
You can't. The underlying scintilla events are identical.
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 [...]
Ignore keybindings and see extrasel key-press-event. Remember to check scintilla_get_current() against the widget.
Somebody (nathan.f77@gmail.com Nathan Broadbent?) recently asked the exactly same question, and probably works on the same thing. Check the mailing list archive.