107 Commits

Author SHA1 Message Date
Nick Treleaven
b9f0304f57 Add 'Edit->Plugin Preferences' menu item and keybinding.
Don't include plugindata.h in pluginutils.h because it redefines the
GEANY() macro for plugin use.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4386 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-28 18:06:16 +00:00
Nick Treleaven
078a9cdc7d Add 'Move line(s) up/down' keybindings.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4354 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-22 11:28:59 +00:00
Nick Treleaven
225dd7d4dd Add 'Switch to Messages' focus keybinding.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4347 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-20 16:59:00 +00:00
Nick Treleaven
af8d96f077 Add 'Select to previous/next word part' keybindings.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4346 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-20 16:01:07 +00:00
Nick Treleaven
c21db70d46 Fix typo GEANY_KEYS_GOTO_[NEXT|PREV]WORDSTART -> WORDPART.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4345 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-20 15:45:07 +00:00
Nick Treleaven
42119d8f3b Add 'Word part completion' keybinding so keys other than Tab can be
used, or to clear/change the combination so Tab does full completion
like before.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4344 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-20 15:35:44 +00:00
Nick Treleaven
f453cc456e Add GeanyKeyGroup callback support, which allow keybinding callbacks
to be ignored if inappropriate so a later keybinding with the same
key combination can intercept it. (Also group callbacks are usually
tidier than separate callbacks).
Remove special handling for GEANY_KEYS_EDIT_COMPLETESNIPPET.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4300 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-10-12 11:50:45 +00:00
Nick Treleaven
1ec744da6c Use GEANY_PRIVATE to hide some fields from plugins.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4128 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-08-26 14:56:05 +00:00
Nick Treleaven
43620e7ce4 Remove GeanyKeyGroup struct from the API - plugins should not set
these fields.
Make keybindings_set_item() duplicate the name and label fields
(needed by GeanyLua) and return a keybinding pointer.
Add keybindings_get_item() to the API (in case it's useful).
Move some keybinding code out of plugin source files.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4123 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-08-25 16:55:56 +00:00
Nick Treleaven
330e6aae6b Merged trunk r4115 to build-system.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@4116 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-08-24 12:00:26 +00:00
Nick Treleaven
770d40ab98 Update PLUGIN_KEY_GROUP() macro so it doesn't allocate any
GeanyKeyBinding or GeanyKeyGroup structs, so we don't need to break
the ABI when adding fields to them.
Add plugin_set_key_group() for plugins to dynamically set a
keybinding group (e.g. for the Lua script plugin). Used in Split
Window plugin as an example.
Improve keybinding docs a little.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4115 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-08-24 11:35:13 +00:00
Lex Trotman
95b90f2c4a Merged trunk r4110 to build-system
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@4111 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-08-18 23:45:32 +00:00
Nick Treleaven
b5e8d97a71 Fix updating main menu accelerators after changing keybindings
(thanks to Lex Trotman).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4105 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-08-18 13:57:07 +00:00
Lex Trotman
081e9e768f Merged trunk to build-system
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@4101 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-08-17 04:27:07 +00:00
Nick Treleaven
aa89783b74 Add 'Reflow lines/paragraph' keybinding, defaults to Ctrl-J.
Heavily based on a patch by Eugene Arshinov (thanks).
Add sci_lines_split(), sci_lines_join(), sci_text_width(),
editor_strip_line_trailing_spaces().



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4025 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-24 15:44:14 +00:00
Lex Trotman
28d96a3909 Merge with trunk
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@4020 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-24 00:59:12 +00:00
Enrico Tröger
39a74c5a18 Continue unifying usage of @a and @c markup elements in API docs.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4010 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-21 22:12:13 +00:00
Lex Trotman
9164392983 Merge with trunk
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@3983 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-17 04:55:35 +00:00
Nick Treleaven
8c7f40f3f9 Add 'Mark All' keybinding.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3949 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-10 15:17:27 +00:00
Lex Trotman
1726e57092 Configurable Build Menu Alpha
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@3941 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-09 06:49:42 +00:00
Enrico Tröger
baef23dc2c Make the Scintilla keybindings 'Delete to end of line' and 'Go to end of display line' configurable.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3905 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-06-29 19:46:49 +00:00
Enrico Tröger
6ae141fac0 Replace our own GEANY_KEYS_MODIFIER_MASK by gtk_accelerator_get_default_mod_mask() which gives the same result.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3715 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-21 20:51:53 +00:00
Enrico Tröger
59079283f2 Add 'Send Selection to Terminal' command to the Edit->Format menu (initial patch by David Gleich, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3601 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-25 23:28:01 +00:00
Enrico Tröger
8c5c5bb27c Reorder some keybindings.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3483 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-18 18:19:09 +00:00
Enrico Tröger
bd2d677d84 Support multiple %cursor% wildcards in Snippets. To switch between %cursor% wildcards, use the new keybinding 'Move cursor in snippet' (patch by Thomas Martitz, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3461 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-11 21:05:03 +00:00
Enrico Tröger
39a6eb455e Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3446 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-04 18:30:42 +00:00
Nick Treleaven
943f07d07a Add dialog for switching to last used tab, which disappears when
releasing the modifier key. (Useful once MRU switching is
implemented).
Connect window key-press-event in keybindings.c.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3436 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-02 13:37:40 +00:00
Enrico Tröger
71dbd0f2d6 Make 'Previous/Next word part' keybindings configurable.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3011 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-26 18:29:42 +00:00
Nick Treleaven
a134c529c2 Rename KeyCallback GeanyKeyCallback.
Rename KeyBinding GeanyKeyBinding.
Rename KeyBindingGroup GeanyKeyGroup.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2869 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-08 18:05:53 +00:00
Nick Treleaven
3d24008b34 Add Find Document Usage popup menu command & keybinding.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2786 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-17 16:42:03 +00:00
Nick Treleaven
27c5665d01 Add 'Switch to Compiler' keybinding (useful when checking build
progress).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2752 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-03 17:37:00 +00:00
Nick Treleaven
e49c35299a Add Go to Start/End of Line keybindings (#1996175).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2730 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-27 17:54:36 +00:00
Nick Treleaven
9386d36f25 Add keybindings for Previous Message, Previous Error commands
(#1931125).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2728 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-26 16:39:41 +00:00
Enrico Tröger
4ded2fe4b0 Add keybindings for Line wrapping, Line breaking, Toggle fold and Replace Spaces by tabs.
Refactor different document keybindings callback functions into cb_func_document_action().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2710 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-19 15:58:10 +00:00
Nick Treleaven
081adcc55c Add note about allowing appending of keybindings to groups without
breaking the API.
Undo unnecessary ABI change.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2395 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-24 13:40:01 +00:00
Enrico Tröger
1cf46e4c8e Add shortcut to switch to the sidebar.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2390 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-23 16:32:36 +00:00
Nick Treleaven
664ee2f75d Make KeyBinding name and label fields non-const strings so they can
be freed by any plugins that need to use malloc'd strings.
Document KeyCallback typedef.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2345 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-14 17:23:24 +00:00
Nick Treleaven
4472929989 Check plugin keybinding group name is valid.
Ignore plugin keybinding groups with no elements defined.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2339 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-13 17:12:18 +00:00
Nick Treleaven
2c19fe8e14 Break down Edit, Editing, Tags, Other keybinding groups into Editor,
Clipboard, Select, Format, Insert groups and rename GEANY_KEYS_*
accordingly.
Group most keybinding callbacks together according to keybinding
group.
Add underscore for GEANY_KEYGROUP_*.
Set main menu widget with keybindings_set_item() - this is still
ignored for now. Popup menu accels are set separately.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2323 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-12 13:37:39 +00:00
Nick Treleaven
83f7b5770d Move snippet completion keybindings into Editing group.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2322 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-10 17:30:27 +00:00
Nick Treleaven
e57535bb8d Load keybindings keyfile after plugins have loaded at startup, so
their shortcuts are also loaded. Still to do: loading individual
plugin keybindings after startup.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2321 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-10 13:54:47 +00:00
Nick Treleaven
824a05083f Make keybindings_send_command() take guint parameters, not gint.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2319 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-10 13:29:35 +00:00
Nick Treleaven
5f43e01f17 Add keybindings_set_item() to the plugin API and update the HTML
Characters plugin.
Rename KBCallback, cmd_id, cb_func with clearer names.
Add KeyBinding::menu_item field for setting accelerators (currently
does nothing).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2318 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-10 13:23:57 +00:00
Nick Treleaven
747d2d2bf4 Add support for plugin keybindings using the PLUGIN_KEY_GROUP()
macro. Note: plugin keybindings are not yet loaded from the keyfile.
Add a plugin keybinding for 'Insert Special HTML Characters'.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2315 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-07 18:00:22 +00:00
Nick Treleaven
76603930b6 Add documentation for keybindings structs.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2313 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-07 17:23:35 +00:00
Nick Treleaven
ee26ac9254 Change keybindings code to use keybinding groups, each with a
separate enum set, which will make the plugin ABI more stable,
and lay the groundwork for plugin keybindings support.
Note: this breaks the plugin API.
Disable setting menu accelerators (temporary).
Disable Keyboard Shortcuts dialog (temporary).
Disable snippets completion (temporary).
Disable focus commands in the VTE (temporary).
Make Tags group use separate cb_func_tags callback.
Rename keybindings_cmd() to keybindings_send_command().
Add keybindings_lookup_item().


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/plugin-keybindings@2297 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-29 19:30:28 +00:00
Enrico Tröger
b7bfb2743a Replace all C++-style comments with usual C-like multi-line comments.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2287 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-27 13:17:29 +00:00
Enrico Tröger
85f73129c0 Apply patch from Daniel Richard G. to fix to fix several compiler warnings, C89 violations and minor code problems (thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2267 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-20 11:24:23 +00:00
Enrico Tröger
7a85f3ae69 Fix broken compilation with GTK < 2.10.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2255 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-13 09:30:20 +00:00
Enrico Tröger
6532339f1a Use a modifiers mask to ignore unwanted modifiers(caps lock, num lock) when handling key presses (maybe fixes #1891276).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2253 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-12 15:49:54 +00:00