7939 Commits

Author SHA1 Message Date
Dimitar Zhekov
ac00cc0ff6 Add working directory to the "execute" test 2015-04-01 21:45:25 +03:00
Dimitar Zhekov
8745ba58ae Fix Windows attempts to run 2+ unquoted tokens as a program
When passed Foo Bar Qux as a command line, Windows will try to run
Foo.exe Bar Qux, then "Foo Bar.exe" Qux, and last "Foo Bar Qux.exe",
for maximum flexibility. Quoting Foo supresses this behaviour.
2015-04-01 21:16:23 +03:00
Frank Lanitz
d4f707bb78 Small update of German translation 2015-03-31 07:10:31 +02:00
Dimitar Zhekov
47a7b507a7 Remove the unneeded win32_spawn() and win32_get_exit_status()
These are not part of the plugin interface, and are not used in Geany
any more after the spawn changes.
2015-03-30 20:33:55 +03:00
Dimitar Zhekov
7bebf64f3d Fix SPAWN_UNBUFFERED description 2015-03-29 13:51:07 +03:00
Dimitar Zhekov
b3f3bfeee0 Alter utils.c to use the new spawning module
Also simplified the utils_open_browser() loop.
2015-03-29 13:47:13 +03:00
Dimitar Zhekov
0aee6de045 Single-quote file name in the default printing command under Unix 2015-03-28 13:35:20 +02:00
Dimitar Zhekov
44dc8a1c2e Fix a small leak and the checks for output/errors from the child
In particular, if the child is executed successfully, and did not emit
anything to stderr, an empty output is considered valid. The original
tried to check, and leave the selection unchanged on empty output, but
it did not always work.
2015-03-28 13:13:27 +02:00
Colomban Wendling
ca02c593e7 Merge pull request #445 from bengtan/erlang-fishman-ctags
Implement Erlang ctags
2015-03-27 14:44:55 +01:00
Beng Tan
3e6cea696a Update Erlang ctags test. 2015-03-27 11:03:17 +08:00
Beng Tan
36d1db4bc7 Change kind names for Erlang ctags parser
... so the tags will appear in Geany.
2015-03-27 10:56:25 +08:00
Colomban Wendling
1cea0b6a79 Merge pull request #411 from techee/shadows
Use consistent shadows across Geany
2015-03-26 22:53:29 +01:00
Dimitar Zhekov
f5cad4365a Fix a small leak and re-utf8 of grep cmd / extra options in Messages
ixed a small memory leak (argv_prefix) introduced with the spawning
change. Simplified the utf8_dir handling, there's no reason to re-
convert it to utf-8. Restored the original grep command display in
Messages (as entered in Tools vs. found by g_find_program_in_path),
but fixed the re-utf8-izing of the command and extra options.
Grouped in one commit, since these changes affect the same lines,
and are actually small.
2015-03-26 18:31:08 +02:00
Dimitar Zhekov
a3af98cfc9 Altered keyfile.c to use the new spawning module
In particular, changed the default printcmd not to "single quote paths
on Win32 for g_spawn_command_line_async", but use the native double
quotes. Also fixed it not to g_strconcat(NULL, ...) if lpr is missing
under Unix. It works, but glib says the first string must not be NULL,
and the command becomes wrong anyway.
2015-03-23 20:02:43 +02:00
Dimitar Zhekov
6e92c5f64a Altered tools.c to work with the new spawning module
The tools (from Edit -> Format -> Send Selection to) are now spawned
synchronously, which guarantees that both the document and it's
selection will be unchanged when the tool completes.
2015-03-23 19:46:04 +02:00
Enrico Tröger
0f179331ef Add a popup menu to the plugin list in the plugin manager dialog
This makes it easier to reach plugins' configure, keybindings and help
functions.
2015-03-23 15:16:44 +01:00
Jiří Techet
1a36eeaf4d Use consistent shadows across Geany
In principle, any scrolled window should have GTK_SHADOW_IN so the scrollbars
are not above the surface and there is a frame around the scrolled area.

The only exception are the elements of the main window where adding
GTK_SHADOW_IN causes there are too many shadows (or lines in 2D themes)
around the windows and the result isn't nice. So use GTK_SHADOW_NONE
for all main editor scrolled windows. (One additional exception is the
Help->Credits page which is gray and the extra frame doesn't look good.)

Replace frame around VTE with GtkViewport to avoid the extra line around.

Raise the second editor from the splitwindow plugin so it's at the same
level as the main editor.
2015-03-22 15:32:54 +01:00
Dimitar Zhekov
3566baa608 Alter printing.c to use the new spawning module 2015-03-21 19:58:11 +02:00
Dimitar Zhekov
353b748cf7 Alter callbacks.c to use the new spawning module 2015-03-21 19:45:38 +02:00
Dimitar Zhekov
a3f4170a4b Alter templates.c to use the new spawning module 2015-03-21 19:36:14 +02:00
Dimitar Zhekov
74171cca50 Alter search.c to use the new spawning module
Also enabled the Grep tool setting to be used as a command line,
instead of an executable name only, and fixed a small bug where the
search text displayed in Messages was re-utf8-ed.
2015-03-19 20:03:33 +02:00
Dimitar Zhekov
4a0ea0ce1f Do not reallocate the build output/error text received by spawn 2015-03-19 19:08:46 +02:00
Dimitar Zhekov
3b723b8ce0 Fix a memory leak when checking a spawn command line 2015-03-19 19:03:59 +02:00
Colomban Wendling
f35614757b Mark an argument const 2015-03-17 14:09:31 +01:00
Dimitar Zhekov
faa6cd8614 Clarify that a spawn stdout/stderr cb may modify the passed string 2015-03-16 22:25:54 +02:00
Dimitar Zhekov
dccd421a79 Don't check a spawned command line twice under Unix 2015-03-16 22:23:28 +02:00
Dimitar Zhekov
05415e53b6 Unify the build command spawning
Also, don't check build_spawn_cmd() cmd argument under Unix, since it
may be valid shell command rejected by glib g_shell_parse_argv().
2015-03-16 22:10:30 +02:00
Colomban Wendling
9c829aeb3c make: Fix parsing of empty continuation lines 2015-03-16 14:55:50 +01:00
Colomban Wendling
aae13ed26d Merge pull request #444 from techee/handle
Geany icon improvements
2015-03-16 02:01:58 +01:00
Jiří Techet
243480b83d Regenerate png/ico icons from svg and add the 32x32 size
The 32x32 size can be created by downsampling the 48x48
icon by gtk at runtime but the result will be worse than
doing the same directly from the svg icon (48->32
conversion means downsampling by 1.5 which can introduce
some moire artifacts and loss of information). Since
32x32 are quite commonly used, it makes sense to ship
this icon size with Geany.

The png files have been optimized by pngoptim to remove
metadata and compress the icon better.
2015-03-16 01:49:16 +01:00
Jiří Techet
34f911939c Make the geany icon bottleneck a bit wider
This way the non-highlighted part can still be shown.
2015-03-16 01:49:11 +01:00
Jiří Techet
45a375caeb Fix geany icon handle
The handle of the lamp icon looks strange. While
the image of the lamp itself is taken from top,
the handle looks it's taken from bottom.

Fix this by moving the wide part of the handle
down and moving the "shine" line to copy the
outer edge. Also adjust the handle curves a bit
to connect the lamp in a more natural way.
2015-03-16 01:48:34 +01:00
Colomban Wendling
78a45805f1 autotools: Fix make dist after Scintilla makefile.win32 move
8ebac60901c239a7dc36461a077139595bed12b8 moved the makefile.win32,
so we need to use the new location.
2015-03-15 15:38:47 +01:00
Colomban Wendling
ae7ecde1df autotools: Fix generating geanyfunctions.h in out-of-tree builds 2015-03-15 15:38:42 +01:00
Jiří Techet
fc766eda22 Fix visual problems around the bottle neck
The Light sublayer of the Lamp layer covers the lamp border
partly so it appears cut off. In addition, the Shine sublayer
doesn't follow the border properly. Adjust the curves in both
of these sublayers to fix the problem.
2015-03-15 10:57:00 +01:00
Jiří Techet
2199158b15 Subdivide the icon into layers for better navigation
No visual change.
2015-03-15 10:56:52 +01:00
Beng Tan
9721faff62 Add (and fix) ctags unit tests for Erlang. 2015-03-15 15:55:45 +08:00
Beng Tan
b0c5d221a5 Implement Erlang ctags.
Using erlang.c from fishman/ctags.
2015-03-15 13:41:23 +08:00
Dimitar Zhekov
690cb922be Alter build.c to use the new spawning module
The wrong and misleading "Failed to change the working directory" is
changed to a generic "Invalid working directory".

Under Windows, the build commands are run directly as command lines,
while under Unix, /bin/sh is used - for compatibility, and because
that's probably what a *nix user expects.

The run script is always run as a command line, since it contains it's
own shell, and because that lets us specify %c under Windows. In fact,
%c (or "%c") should probably be the default, since CreateProcess()
runs batch files with the default shell, instead of some our value.

Also changed build_spawn_cmd() and build_run_cmd() to void, since
their return values are not used anywhere.
2015-03-14 21:36:05 +02:00
Colomban Wendling
07aeafab81 autotools: Fix installation directory of plugins on Windows
For some reason we expect the plugins directly inside `$(libdir)` on
Windows instead of `$(libdir)/geany`, so install the plugins there on
Windows.
2015-03-11 02:39:45 +01:00
Colomban Wendling
2bfd394803 Don't export on_motion_event() callback unnecessarily 2015-03-10 23:17:08 +01:00
Colomban Wendling
bc013ae9fe Rename LIBGEANY_LIBS to LIBGEANY_LDFLAGS and only use it on libgeany.la
The flags in this variables are used to tune the linker behavior on the
final libgeany (currently set the version information), so should only
used on really linked libraries, not Libtool helper libraries.
2015-03-10 23:16:49 +01:00
Colomban Wendling
361bf702e0 Explicitly cast string literals to non-constant pointers 2015-03-10 23:10:06 +01:00
Colomban Wendling
a264b7ab77 Properly initialize Libtool 2015-03-10 23:10:06 +01:00
Matthew Brush
bcc7a35c06 Don't export GtkBuilder callbacks anymore
They are connected inside the library now rather than using GModule to
find the symbols. Mark local callback handlers as static since they
aren't global or exported anymore, they should be static. Since they're
static now, all of the forward-declarations of the functions local to
callbacks.c are pointless, so just remove them.
2015-03-10 23:10:06 +01:00
Matthew Brush
1d64d5211f Replace dynamic exports with codegen for GtkBuilder callbacks
This prevents having to export those callbacks and put them in the
global namespace. Also, use inline shell script in Makefile.am instead
of a Python script which should be more portable (by default) and gets
rid of the helper script.
2015-03-10 23:10:06 +01:00
Matthew Brush
eb36500ac4 Improve Autotools build system for libgeany
Checks if the compiler supports -fvisibility and the linker supports
-dynamic-list arguments and use them instead of hardcoding. The new
geany-lib.m4 also accomodates future use of Libtool versioning.
2015-03-10 23:10:06 +01:00
Matthew Brush
d33758da92 Move Geany's core into a library (libgeany)
This will allow plugins to link against the core when accessing API
functions, now that the macro/struct/funcptr stuff is gone.

Also convert the helper libraries into Libtool helper libraries as
linking a shared library against static libraries is (apparently) not
portable.
2015-03-10 23:09:46 +01:00
Matthew Brush
860df27696 Remove struct/macro/funcptr linkage control for plugin API
Add rest of headers needed for declarations of all public API
functions. Add HAVE_PLUGINS define to geanyplugins.h since some headers
need this and it should always be valid for this header.
geanyfunctions.h left for source-level backwards compatibility for
plugins which might `#include` this header directly. I don't know why
they do it, but some Geany-Plugins do this.
2015-03-10 22:06:47 +01:00
Matthew Brush
1e630e6f12 Remove redundant GEANY_EXPORT_SYMBOL usage in callbacks.h
It only needs to be specified in one place for each function.
2015-03-10 22:06:47 +01:00