1August 16, 2010 (ntrel)
2  Fix building against recent Geany trunk (patch from Enrico Tröger,
3  thanks).
4
5September 29, 2009 (ntrel)
6  Update to API 159.
7
8September 24, 2009 (ntrel)
9  Use new plugin_configure_single() instead of using
10  plugin_configure() wrongly.
11  Fix wrong ABI mismatch error message format.
12
13September 16, 2009 (ntrel)
14  Fix possible memory leak; use keybindings_set_item() so we don't
15  leave Geany to free our memory (bad practice).
16
17September 1, 2009 (ntrel)
18  Try loading system support library if user library fails.
19  Check support library ABI version matches.
20
21August 31, 2009 (ntrel)
22  Print support library path if Geany is in debug mode.
23
24August 28, 2009 (ntrel)
25  Upgrade to API 153 except for plugin_key_group change (TODO). This
26  removes the "make" tool field, "exec" project field, "BUILD_RUN2"
27  keybinding, filetype build commands - the latter might be readded
28  if/when the API makes it possible.
29  Remove obsolete usage of plugin_key_group symbol.
30
31July 15, 2009 (ntrel)
32  Update to API 146 (but require 147).
33
34July 13, 2009 (ntrel)
35  Fix using datadir for scripts.
36
37June 24, 2009 (eht16)
38  Build libdir and datadir paths on Windows using the installation
39  directory as prefix. This still can be improved.
40
41June 23, 2009 (ntrel)
42  Look for support library in LIBDIR/geany-plugins/geanylua.
43  Read scripts from DATADIR/geany-plugins/geanylua.
44  Init plugin_key_group fields to zero in case support library is not
45  found.
46  Make Help script look in:
47  $prefix/share/doc/geany-plugins/geanylua/ - but $prefix is currently
48  Geany's install prefix, which works in most cases. Really this
49  should be fixed by exposing GeanyLua's $DOCDIR to Lua scripts.
50
51June 19, 2009 (ntrel)
52  Move to geany-plugins project, add i18n support.
53  Rename from GeanyLua to 'Lua Script'.
54  Temporarily fix plugin_configure().
55
56December 5, 2008 (ntrel)
57  Update to Geany API v115.
58
59September 17, 2008 (eht16)
60  Fix to work with Geany API v93.
61
62September 11, 2008 (ntrel)
63  Fix wrong argument for "project-close" signal.
64  Fix document signal callbacks to use document pointers.
65
66August 8, 2008 (ntrel)
67  Fix to work with Geany API v86.
68
69August 7, 2008 (ntrel)
70  Use $(mkdir_p) instead of $(MKDIR_P) in Makefile, so it works with
71  automake <= 1.96.
72
73July 17, 2008 (ntrel)
74  Fix use of old app macro.
75  Fix segfault in last commit in glspi_init() (oops).
76  Don't install .svn subdirectories in examples.
77
78July 15, 2008 (ntrel)
79  Fix for GeanyEditor changes.
80
81July 11, 2008 (ntrel)
82  Use plugin_init(), plugin_cleanup().
83  Add macro for main_widgets, fix project access.
84  Require Lua >= 5.1, not 5.1.2.
85
86July 10, 2008 (ntrel)
87  Convert doc_array usage to documents_array.
88
89July 2, 2008 (ntrel)
90  Update to use document pointers.
91  Update MY_GEANY_API_VER now we use p_document->close().
92  Update for new PLUGIN_ macro names.
93  Add comment about reloading in glspi_open().
94  Rename GeanyCallbacks, geany_callbacks symbol.
95  Rename document -> GeanyDocument.
96
97July 1, 2008 (ntrel)
98  Begin updating for Geany 0.15 API changes.
99  Use main_widgets instead of old app.
100  Include some Geany headers due to moved definitions.
101  Add glspi_geany_functions.
102  Use new _prefs structs.
103  Update DOCS macro usage for documents_array.
104
105Mar 24, 2008
106  Released version 0.7.0
107
108Mar 23, 2008
109  Added a new examples folder "work" with three new scripts:
110    edit-test-script.lua; run-test-script.lua; install-test-script.lua
111  These should make it a little easier for users to develop and save
112  their own personal scripts.
113  Also added "examples/edit/calculator.lua" -
114  The idea came from the "Plugin Wishlist" on the Geany website, only
115  this one can even do some fancy stuff like 'sqrt(pi^2*sin(rad(45)))'
116
117Mar 14, 2008
118  Revised configure.in and Makefile.am to support Geany's new header
119  installation and pkg-config features, so the build configuration
120  no longer requires the --with-geany-src option.
121
122Mar 13, 2008
123  Added support for Geany's new built-in keybinding API.
124  This means that scripts can now take advantage of Geany's
125  preferences system to configure keybindings.
126  See ./docs/geanylua-keys.html for more info.
127
128Feb 21, 2008
129  Code cleanup to quiet some compiler warnings.
130  Fix to compile with -DGEANY_DISABLE_DEPRECATED flag.
131
132Feb 21, 2008
133  New function: optimize() disables line info and elapsed time counter
134  for scripts that need all the CPU time they can get.
135  Also found and fixed a nasty crash bug in the filter-parsing code for
136  the pickfile() function.
137
138Feb 20, 2008
139  Added a copy of Enrico Colombini and Thomas Lauer's "Lua Short Reference"
140  to the GeanyLua docs. This provides a convenient and concise guide to the
141  Lua language and its core libraries.
142
143Feb 19, 2008
144  Removed gtk_main_iteration() loop from glspi_run_script() in glspi_run.c.
145  I am not even sure why it was there, possibly it was needed for something,
146  but maybe it just seemed like a good idea at the time. It was causing some
147  scripts to hang under certain conditions, particularly when event scripts
148  were invoked while the GeanyDebug plugin was running.
149
150Feb 12, 2008
151  Fixed missing symbols in Win32 library.
152  ( Thanks to Joerg Desch for reporting. )
153
154Jan 28, 2008
155  Released version 0.6.1
156  Note that the pre-compiled binaries availiable on the website are now
157  statically linked to Lua-5.1.3 instead of 5.1.2. This was a bugfix-only
158  release of Lua, and since most of the bugs were fairly obscure and trivial,
159  it really shouldn't affect GeanyLua at all.
160
161Jan 28, 2008
162  Fixed "make install" bug where ~/.geany/plugins/geanylua was not getting
163  created, which caused the installation to fail if the directory didn't
164  already exist. ( Thanks to Harri Koskinen for reporting. )
165
166Jan 22, 2008
167  Added the ability to show a calltip for the keygrab() function.
168  It might not seem like much, but I think it is a big improvement
169  over the previous "typing while blind" limitation.
170
171Jan 21, 2008
172  Released version 0.6.0
173
174Jan 19, 2008
175  New function: keygrab() intercepts the next keystroke from Geany, useful for
176  creating "chained" keybindings. ( Thanks to John Gabriele for suggesting. )
177
178Jan 17, 2008
179  Fix missing *.vbs files from "make dist"
180
181Jan 16, 2008
182  Major change - All of the core functionality has been moved into a support
183  library named "libgeanylua.so" and now the "geanylua.so" plugin is only a
184  thin wrapper around the core. This was done to bypass the local-binding
185  restriction placed on plugins by Geany, which prevented Lua API functions
186  from being referenced from binary Lua modules.
187
188Jan 14, 2008
189  Major code refactoring, trying to hide as many globally-visible symbols
190  as possible. There is a good chance that this might introduce a bug or
191  two, but I also found and fixed a bug in the choose() function, so
192  at least maybe it won't be a total loss.
193
194Jan 13, 2008
195  Cleaned up the documentation.
196
197Jan 12, 2008
198  Added some code to help with repainting the GUI during lengthy operations,
199  using the low-level GDK paint functions instead of the usual GTK main loop.
200  This should help keep the window painted while still preventing too much
201  user interaction while a script is running.
202
203Jan 11, 2008
204  The timeout measurement now pauses the timer while dialogs are displayed,
205  rather than setting the timer back to zero for each dialog. Actually it
206  considers the time spent as 1/10 of a second, to keep timeouts working
207  even if you create an endless loop with a dialog inside. But even still,
208  you might need to click a lot of buttons before the timer expires!
209
210Jan 10, 2008
211  Revamped the ugly and broken goto_error() function. Trying to parse the
212  filename and line number from the builtin error messages was just wrong,
213  and couldn't possibly be reliable since Lua truncates long path names when
214  it formats the message. So now we store the filename and line number from
215  our debug_hook() in case the filename changes if the script calls Lua's
216  dofile() function or something. That is a really slow way to do things,
217  since we strcmp() the filenames every time the interpreter executes a line.
218  But for now it's the only way I know how, and at least now it's working.
219
220Jan 8, 2008
221  The "geanylua.c" file was getting a bit too large to navigate easily,
222  so I moved most of the lua-related code into a new file, "glspi_run.c"
223  Added some new features to the filename-to-menu-label generator, a trailing
224  underscore in the filename will create an ellipsis after for the menu label,
225  e.g. "Files_.lua" becomes "Files..."  Also, any two-digit prefix followed
226  by a dot is now stripped off, this gives more control over the position of
227  menu items, e.g. "01.Zebra.lua" and "02.Apple.lua" creates the "Zebra" label
228  before the "Apple" label.
229
230Jan 7, 2008
231  Just after releasing 0.5.2, I found a mistake in the "gsdlg.c" file
232  that prevented the timeout reset for dialogs from working correctly.
233  It should be fixed now.
234
235Jan 7, 2008
236  Released version 0.5.2
237  Revised licensing clause to allow users the possibility of
238  choosing GPL-v2 or later versions.
239
240Jan 6, 2008
241  New function: yield() allows lengthy script operations to call
242  gtk_main_iteration() occasionaly to prevent the IDE from appearing
243  frozen. I imagine there might be cases where using this function
244  might be a very bad idea, since it allows the user and the script
245  to interact with Geany at the same time.
246
247Jan 4, 2008
248  Partially fixed the long-standing problem that a faulty script can
249  potentially lock up Geany. Scripts are now given a maximum of fifteen
250  seconds to complete before generating an error. This fix is not totally
251  idiot-proof, but it should provide adequate protection against endless loops.
252  ( Be warned - it might still be possible to hang up a script in some other
253    ways which can't currently be detected. )
254  Also added a timeout() function to allow script authors to increase or even
255  completely disable the timeout if needed.
256
257Jan 2, 2008
258  Released version 0.5.1
259  Fix to compile against Geany-SVN-r2145 (API Ver 37)
260  Moved all #include's for geany source headers above the evil "pluginmacros.h"
261  so maybe this bug won't bite me again.
262
263Jan 1, 2008
264  Released version 0.5.0
265
266Jan 1, 2008
267  Added files "win32-install.vbs" and "win32-uninstall.vbs" to hopefully
268  simplify windows installation. Likewise, added the file "install.sh"
269  to the pre-compiled Linux-x86 archive.
270
271Dec. 28, 2007
272  New function: rescan() rebuilds the "Tools->Lua Scripts" menu
273  so you can update your menus on-the-fly.
274
275Dec. 26, 2007
276  New function: launch() spawns a new process and returns immediately,
277  unlike Lua's standard execute() function which waits for the child
278  process to terminate before returning.
279
280Dec. 24, 2007
281  Completed (?) changing the makefile over to use autotools.
282  IMPORTANT NOTE: The new name of the script folder is now
283  .../plugins/geanylua instead of the old name of .../plugins/lua,
284  so you should move any of your own custom scripts into the new folder.
285
286Dec. 23, 2007
287  Following Enrico's suggestion, I converted code over to use
288  the "pluginmacors.h" macros.
289
290Dec. 18, 2007
291  Added keycmd() function to activate geany menu commands, per GeanyKeyCommand
292  enum in geany/src/keybindings.h
293
294Dec 15, 2007
295  Fixed a bad bug where menu items were not getting removed when
296  the plugin was disabled in plugin manager.
297
298Nov 29, 2007
299  Added function wkdir() to get/set the current working directory.
300
301Nov 26, 2007
302  Fixed a bug in the count() function - it was including documents that
303  were already closed.
304
305Nov 24, 2007
306  Added a new module "dialog" to provide a more flexible means for creating
307  custom dialog boxes. See gsdlg* sources and ./docs/geanylua-input.html .
308
309Nov 21, 2007
310  Added support for project opened/saved/closed event scripts.
311  These events receive a global variable, "geany.project" which
312  is a thin Lua wrapper around the GKeyFile object. Also added
313  a new Lua "keyfile" module to manipulate this type of object.
314
315Nov 20, 2007
316  Added PLUGIN_AUTHOR define for API compatibility.
317  Added a function to display a customized configure dialog for Geany's new
318  plugin manager.
319
320Nov 19, 2007
321  Released "Development snapshot" (geanylua-2007-11-19.tar.gz)
322
323Nov 7, 2007
324  Added some filesystem-related functions:
325    basename(); dirname(); dirlist(); stat(); and dirsep constant.
326
327Nov 6, 2007
328   Added support for two new 'event' scripts, "init.lua" and "cleanup.lua"
329   that run (respectively) when the plugin is loaded and unloaded.
330
331Nov 5, 2007
332  New function: signal() to send signals to Geany widgets,
333  mostly to activate builtin menu commands.
334
335
336Nov 4, 2007
337  Renamed source files from lua_* to glspi_* ( Geany Lua Scripting Plug In )
338
339
340Nov 3, 2007
341  New function: xsel() to get/set the primary X selection.
342
343
344Nov 2, 2007
345  New function: appinfo() to retrieve various Geany folder locations and
346  preferences, etc.
347
348
349Nov 1, 2007
350  New function: pickfile() to access the standard GTK file chooser
351  open/save dialogs.
352
353
354Oct 31, 2007
355  Added the ability to launch scripts from accelerator-key bindings
356  by using specially-formatted comment tags. Now your favorite script
357  can be right at your fingertips!
358
359
360Oct 15, 2007
361  Changed makefile to use pkg-config for Lua.
362
363
364Oct 13, 2007
365  Bumped versions: plugin=0.3, API=20 to correspond with "official"
366  Geany 0.12 release.
367
368
369Oct 10, 2007
370  Revised conditional to use GTK_MESSAGE_INFO instead of GTK_MESSAGE_OTHER
371  for all GTK versions before 2.10.
372
373
374Sept 20, 2007
375  Added an "open" button to the script error dialog, to give the user an
376  option to revise faulty scripts.
377
378
379Sept 11, 2007:
380  Revised geany.open() function to reflect svn~1870 API changes.
381
382
383Sept 5, 2007:
384  Initial release. (Version 0.1)
385
386