- libgeany install dir was wrong on win32
- comdlg32 is required
- more headers need to be installed
- -fPIC is required on some platforms
- LINKFLAGS_cprogram now have to be applied to libgeany.dll
Instead of processing a template C source in the build system, generate
a list to be included by the preprocessor.
This simplifies the build system code as it now only generates the list
and doesn't take care of processing the template. It incidentally
fixes build on systems with 4.2BSD sed (at least OSX and FreeBSD) as it
removes some offending sed code.
In Waf, we need to add the new flags to CFLAGS *and* CXXFLAGS otherwise
the Scintilla build would break.
To keep it more reabable, we first populate a temporary list
geany_symbol_flags which is then added to CFLAGS and CXXFLAGS.
Concerning the quote FIXME: no further qoting is necessary here.
This makes it easier to define it consistently to what the compiler
and platform supports, and avoids having to include a special header
everywhere, which is some kind of a problem for separate libraries
like TagManager and especially Scintilla.
As we only use these macros from the source and not the headers, it
is fine for it to be defined to a configure-time check from the build
system.
Warning: Although Waf and Windows makefiles are updated they are not
tested an will probably required tuning.
Use the same variable style for simple interpolations ("$foo") than for
complex ones ("${foo}") instead of using the string style itself. This
gives a visual feedback for simple interpolations.
The (almost) black color of the inside of the bottleneck is a bit too high
contrast and doesn't fit the rest of the icon (the only black part of it).
Use the "lamp yellow" as the base and lower the L in HSL representation of
the color so it just looks as darker lamp material.
After making the bottleneck wider (by shifting the curve to the left), the
curve became flatter which looks strange. Make the curve a bit more round
in the middle.
Graphical applications on OS X are started using launchd and don't inherit
shell's environment variables so we don't get the PS1 value. Do the same
as the OS X terminal emulator which runs the shell as a login shell (and yes,
on OS X .bash_profile is read for shells started in the terminal application
instead of .bashrc).
On OS X Monospace 10 is too small (and using non-standard font).
As we already have a special OS X font for the editor, use this value
(having identical fonts both for the editor and VTE seems to be a
good default).
The argument quoting must be permissive (g_ascii_isspace() doesn't
handle '\v'), the program name to arguments separator must be fixed
to restrictive, and the leading spaces are somewhere between.
Also fixed the test program to check for exactly 2 arguments.
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.
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.
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.
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.
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.
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.