6853 Commits

Author SHA1 Message Date
Colomban Wendling
f3852dc13c Merge branch 'scintilla-update' 2013-04-27 18:38:26 +02:00
Colomban Wendling
564ef98f9c Update for new Scintilla styles 2013-04-27 18:30:17 +02:00
Colomban Wendling
e88c03d266 Update Scintilla to version 3.3.1 2013-04-27 18:29:44 +02:00
Colomban Wendling
2dd389a14a Fix our Scintilla patch
It got corrupted for some reason I don't get, but it's now fixed.
2013-04-27 15:32:17 +02:00
Matthew Brush
0f614dd885 Remove reference to removed "menu_view_editor1" (oops) 2013-04-26 23:56:16 -07:00
Matthew Brush
1ee35c68cd Flatten-out the View menu
Rationale:
----------
* Existing View menu already contained Editor-related options
  like "Change Font" and Zoom controls, so it makes sense to
  group all of the View-related items together.
* Anecdotally, some users have been unable to easily discover
  the Color Schemes changer dialog because it was nested under
  a submenu.
* Distinction between "Editor" (Scintilla) and "Editor" (All
  of Geany) is likely non-obvious to most users, especially
  new users exploring the menus.
* There's not very many items to cause scrolling on low-res
  monitors, and the View menu still has less items than the
  Document menu.
2013-04-26 16:13:46 -07:00
Matthew Brush
e0245df568 Make "Create" button default for New Project dialog
So it activates when you press the enter/return key in one of the
entries.
2013-04-26 14:56:55 -07:00
Atanas Beloborodov
a3da0467d4 Add version check around deprecated g_thread_init() call.
g_thread_init has been deprecated since GLib version 2.32
2013-04-25 17:30:09 -07:00
Enrico Troeger
9edd4f4a90 For now disable detecion of MSVC on Windows 2013-04-24 22:05:56 +02:00
Enrico Tröger
0d6101f0ca Merge pull request #133 from gentoo90/waf
Update waf to version 1.7.10 and fix wscript to fit new API
2013-04-24 12:45:19 -07:00
Colomban Wendling
ea87576ee4 Remove use of global variables in custom commands code 2013-04-22 20:24:20 +02:00
Colomban Wendling
5868c6991c Fix leaks upon symbol list updating 2013-04-22 20:20:53 +02:00
Colomban Wendling
776c77d6b6 Use GLib version of C99's snprintf() 2013-04-22 20:18:18 +02:00
Colomban Wendling
659276730a Don't use deprecated gtk_icon_set_render_icon() on GTK3 2013-04-22 20:18:18 +02:00
Eugene Arshinov
e8443b19f7 rewrite_reflow: Remove a check inside line breaking implementation that caused breaking to occur too early 2013-04-21 11:45:09 +10:00
Eugene Arshinov
7e732bddc8 rewrite_reflow: Remove no longer used sci_lines_split function that wrapped SCI_LINESSPLIT 2013-04-21 11:45:09 +10:00
Eugene Arshinov
cc5e6d2a19 rewrite_reflow: Reimplement split_line function to achieve consistency with the "Line breaking" option 2013-04-21 11:45:09 +10:00
Eugene Arshinov
40fb3aa64d rewrite_reflow: Create sci_get_position_from_col function to wrap Scintilla's SCI_FINDCOLUMN command. 2013-04-21 11:45:09 +10:00
Eugene Arshinov
390646a412 rewrite_reflow: Extract split_line function
Extract `split_line` function from `reflow_lines` to reimplement it in
the future without using SCI_SPLITLINES to achieve the
behaviour consistent with the "Line breaking" option.
2013-04-21 11:45:09 +10:00
Frank Lanitz
57dca02303 Documentation: Adding a short note about finding Geany at Windows inside application menu 2013-04-20 10:27:51 +02:00
Frank Lanitz
971f147c08 Documentation: Replace some \t with space 2013-04-20 10:27:51 +02:00
Colomban Wendling
c986eeee99 PHP: show namespaces and traits in the symbol list 2013-04-17 17:07:47 +02:00
Colomban Wendling
8b3142ef4d PHP: use "::" as the scope separator 2013-04-17 17:07:18 +02:00
Frank Lanitz
377f75f291 Adding *.aux and *.bib as default (La)TeX file types 2013-04-16 13:06:08 +02:00
Colomban Wendling
33c84f739d PHP: parse traits
http://www.php.net/manual/en/language.oop5.traits.php
2013-04-15 19:17:57 +02:00
Colomban Wendling
77c45aa82b PHP: support non-ASCII characters in identifiers
http://www.php.net/manual/en/language.variables.basics.php
2013-04-15 19:17:57 +02:00
Colomban Wendling
38c5616200 PHP: leave PHP mode inside single line comments
If "?>" appears in a single-line PHP comment it leaves PHP mode.
http://www.php.net/manual/en/language.basic-syntax.comments.php
2013-04-15 19:17:57 +02:00
Colomban Wendling
387d6e1909 PHP: don't include the leading "$" in variable names 2013-04-15 19:17:57 +02:00
Colomban Wendling
b5cd5343fa PHP: fix parsing functions arguments list containing comment or strings
Instead of hand-parsing the argument list and possibly choking inside
comments, strings, heredoc, etc., use the normal token mechanism and
simply convert the tokens to a string representation as the argument
list.  This technique might perhaps lead to some missing characters in
the argument list representation in the (unlikely) case a token
appearing in the argument list is reported as a generic type for which
it is impossible to know the correct string representation, but this
could always be fixed by adding a specific token type and is anyway
less problematic than maybe breaking further parsing of the document.
2013-04-15 19:17:57 +02:00
Colomban Wendling
444745f71e Added new macro for reading last character of vString.
Import of CTags revision 719.
2013-04-15 19:17:57 +02:00
Colomban Wendling
8086129c9c PHP: parse namespaces
PHP namespaces don't work anything like a block, so the implementation
is specific and not combined with scope management.  Namespaces cannot
be nested, and they may apply either to the rest of the file (until the
next namespace declaration, if any) or to a specific block.

Namespaces applying to the rest of the file:

	namespace Foo;
	/* code in namespace Foo */
	namespace Bar\Baz;
	/* code in namespace Bar\Baz */

Namespaces applying to blocks:

	namespace Foo {
		/* code in namespace Foo */
	}
	namespace Bar\Baz {
		/* code in namespace Bar\Baz */
	}
	namespace {
		/* code in root namespace */
	}
2013-04-15 18:55:52 +02:00
Colomban Wendling
c2e4111aaf PHP: parse HereDoc and NowDoc strings 2013-04-15 18:55:14 +02:00
Colomban Wendling
258c4fa65d PHP: generate tags for local variables (disabled by default) 2013-04-15 18:54:42 +02:00
Colomban Wendling
1c3fd55818 PHP: fix generating variable tags for rvalues
Only generate tags for variable declarations without assignments inside
classes and interfaces not to get fooled by rvalues.

This prevents generation of a "$bar" tag for something like:

	$foo = $bar;

while still generating "$bar" tag for:

	class Foo {
		var $bar;
	}
2013-04-15 18:53:59 +02:00
Colomban Wendling
af47ccf98d PHP: report anonymous functions as functions rather than variables
Generate a full function tag for anonymous functions:

	$anon = function($arg1, $arg2) {
		/* ... */
	};
2013-04-15 18:53:07 +02:00
Colomban Wendling
5798f47ea0 PHP: make some arguments const 2013-04-15 18:52:14 +02:00
Colomban Wendling
bdb98f0132 PHP: fix parsing of functions returning a reference
Fix parsing of functions declarations with a leading ampersand (&),
used to make the function return a reference:

	function &foo($arg1, $arg2) {
		/* ... */
	}
2013-04-15 18:51:26 +02:00
Colomban Wendling
d283eb243c PHP: parse and report interfaces 2013-04-15 18:47:54 +02:00
Colomban Wendling
23339dd509 PHP: report class inheritance 2013-04-15 18:43:22 +02:00
Colomban Wendling
f5d315809d PHP: report visibility and implementation type
Report visibility (private/protected/public) and implementation
(abstract or not) for every tag for which it makes sense.
2013-04-15 18:42:08 +02:00
Colomban Wendling
be07870e97 Rewrite the PHP parser as a non-regex parser
Rewrite the PHP parser as a real parser, not using regexes.  This is
more complex but allows for better parsing.

Visible changes:
* Scope reporting;
* Variables inside functions are no longer reported (this is a
  deliberate choice, but can be easily changed);
* Only the PHP part is parsed (e.g. it doesn't report JavaScript
  functions anymore);
* Function arguments spanning several lines are properly reported;
* Interfaces are not yet parsed.

Otherwise the new parser should behave like the old one, at least
where it used to be right.  Parsing of more constructs and reporting
more details is planned.
2013-04-15 18:36:24 +02:00
Matthew Brush
4e03e466e7 Improve Statusbar Template documentation
Mainly listing the available placeholders instead of pointing the
poor user deep into Geany's code.
2013-04-14 19:03:58 -07:00
Matthew Brush
d452d0b737 Cleanup statusbar template code a bit
* Unhardcode "pos" and "style" statusbar messages which were only
enabled when GEANY_DEBUG is defined and make them real possible
format chars.

* Move needless global "statusbar_template" into UIPrefs structure
with the other UI preferences, removing (now) pointless ui_finalize()
function.

* Rename "add_statusbar_statistics" to "create_statusbar_statistics"
and make it return a gchar* instead of passing in a GString argument
to update. Fixes a one-time "leak" of the GString and makes the code a
little easier to follow.

* Move the default statusbar template string to the top of the file
and use it as the default for the various preferences so the user has
something to base their customizations off of. TODO: check that the
N_() translations stuff works OK.
2013-04-14 19:03:58 -07:00
Igor Shaula
666f471c78 Update waf to version 1.7.10 and fix wscript to fit new API 2013-04-14 15:02:36 +03:00
Enrico Troeger
029d78536c Don't try to set std_out and std_err if they are NULL 2013-04-14 13:22:41 +02:00
Colomban Wendling
5412a244ba Fix crash with bulk pattern replacements (introduced with c83a93e)
"regex_match_text" and "regex_matches" being globals, performing
several searches and then the replacements separately lead to them
having unexpected values, resulting in incorrect behavior and crash.

Fix this by removing the globals and instead make the search functions
return match details.  Not only this fixes the issue, but also make the
code a lot more maintainable by not having globals introducing side
effects (proof of them being an issue is that c83a93e inadvertently
broke things bad).
2013-04-13 17:06:47 +02:00
Frank Lanitz
920969ebb1 Update of Lithuanian translation 2013-04-11 20:19:37 +02:00
Colomban Wendling
d453fe33fe Add support for loading Vi and CTags tag files
This allows to load tag files in the CTags format, which is compatible
with Vi format.

References:
 * http://ctags.sourceforge.net/FORMAT
 * http://ctags.sourceforge.net/ctags.html#TAG%20FILE%20FORMAT
2013-04-03 22:10:33 +02:00
Duncan de Wet
223b2507f2 Added some more SQL keywords 2013-03-29 18:38:33 +13:00
Nick Treleaven
99d06abea8 Use widget parameter in on_find_usage() for consistency 2013-03-25 15:57:58 +00:00