6983 Commits

Author SHA1 Message Date
Colomban Wendling
98717999d0 Fortran: add missing block and endblock keywords 2014-02-23 20:02:56 +01:00
Colomban Wendling
ef4c72501e Fortran: generate fake tags for anonymous structures, interfaces and enums
This allows both to show those anonymous elements, as well as giving a
parent to their children, fixing display in the symbols tree.
2014-02-23 20:02:55 +01:00
Colomban Wendling
9520e7f7d7 Fortran: parse Fortran 2003 enums
Allow for not-yet-standard enum naming using `:: name` syntax, see
http://docs.cray.com/books/S-3692-51/html-S-3692-51/z970507905n9123.html

Test cases contributed by Adam Hirst, thanks.
2014-02-23 20:01:30 +01:00
Colomban Wendling
329b2cb401 Fortran: don't generate tags for interface content 2014-02-23 19:38:34 +01:00
Colomban Wendling
26d2ef8d99 Merge branch 'win32-quote-spawn-args'
Closes bug #943 and PR #180.
2014-02-19 16:15:52 +01:00
Colomban Wendling
044120e87c Windows: properly initialize errno before checking it
errno is never reset to 0 by the system libraries, so if we test
its value we need to reset it to 0 before the call that may change
it to something else.
2014-02-19 15:56:24 +01:00
Colomban Wendling
0ebf6ab82e Windows: convert the spawned command to locale encoding
Converting to locale encoding is required to allows non-ASCII
characters in the command, e.g. in the file names.
2014-02-19 15:54:51 +01:00
Colomban Wendling
6af27eeb7a Windows: add a debug to show the command as it is run 2014-02-19 15:53:25 +01:00
Colomban Wendling
5c893e9b0e Windows: fix spawning commands with spaces
Fix spawnning command under Windows when they contain spaces in both
the executable and the arguments.  Apparently system() quoting is
unexpected, and doesn't work properly if there is more than 2 quotes
in the whole command.

To work this around, spawn the command through `cmd.exe /S /C`.
2014-02-19 15:53:25 +01:00
Colomban Wendling
5a67a4f64c Fortran: report interfaces 2014-02-18 19:33:39 +01:00
Colomban Wendling
29336ffed0 Fortran: display components 2014-02-18 19:11:47 +01:00
Colomban Wendling
362a5cc654 Fortran: properly report scope for programs, subroutines and types
To do this we change the internal types to only use types matched by
symbols_get_current_scope().  This is a bit of a hack, but the tag
types were already questionable and simply mapped to ones the
TagManager know.

This however merges Functions and Subroutines under the same top-level
item in the symbol list.
2014-02-18 19:04:37 +01:00
Colomban Wendling
7d76063282 Fortran: fix handling of pointer association operator
Test case contributed by Adam Hirst, thanks.

Closes #1030.
2014-02-17 23:17:35 +01:00
Adam Hirst
1c0fa99e1d Support F2003 array syntax and F2008 coarrays
Fortran 2003 allows '[' and ']' as array constructors in addition to
the legacy '(/' and '/)'. Fortran 2008 allows '[]' as part of a
CODIMENSION specifier, which can either be `codimension[]` in
the type-spec; or as either `variable[]` or `variable()[]` in
the entry-spec.

Credit to Colomban Wendling for the skipOverSquares logic, and
treating `codimension` as a special-case.

Last part of bug #1023.
2014-02-15 15:48:31 +01:00
Dimitar Zhekov
20f12872e2 re-fix regex error message parsing (match count returns # of subgroups) 2014-02-15 11:46:23 +11:00
Colomban Wendling
497bfaed46 Fortran: fix line continuation inside comments
Fix improperly handling '&' at the end of the first comment line after
a non-comment line as a line continuation.

Part of bug #1023.
2014-02-15 00:33:05 +01:00
Colomban Wendling
f22c028ca4 Merge branch 'aphirst/patch-1'
Closes PR#209.
2014-02-14 19:32:17 +01:00
Adam Hirst
e1b115ee52 Added tests for the inclusion of ASSOCIATE in the tag manager 2014-02-14 19:31:08 +01:00
Adam Hirst
2085e8a57c Symbol browser breaks with END ASSOCIATE
Related to bug #1023.
2014-02-14 19:30:24 +01:00
Dimitar Zhekov
df9a1b15c6 fix regex error message parsing (GRegex indexes subgroups, not matches) 2014-02-14 10:08:15 +11:00
Colomban Wendling
b1d6291f7d Fix unused warning when building without VTE support 2014-02-11 18:15:43 +01:00
elextr
5d3b2f6269 Fix crash if document closed while custom command is executing
Custom command callback never checked that the doc was still valid.
Can still paste in the wrong doc if user closes and opens while
the command is running, but not crash.
2014-02-10 12:19:45 +11:00
Enrico Tröger
09c2315bc4 Change expected tag kind for Python imports in tests since the parser has changed
This fixes the tests which failed because I changed the parsing yesterday to
classify Python as externvars and not as namespace tags anymore.
2014-02-09 09:26:36 +01:00
Enrico Tröger
3d9908df8c Set tag kind for Python imports to externvar and map them in the symbol list.
This fixes 'Go to Tag definition' for parsed Python imports as before the import
statement was chosen as the definition while we prefer the class definition as
target.
2014-02-08 10:26:08 +01:00
Enrico Tröger
c4b0f0f74d Add new symbol list category "Extern variables"
This is a requirement for an upcoming Python parser fix. This new category
will be currently only used by Python, C and D parsers. Before this change,
in C & D extern variables were sorted into the category "Other", now they
have their own category.
2014-02-08 10:23:30 +01:00
Frank Lanitz
c3aeb73194 Minimal update of Spanish translation to fix misstranslated string. 2014-02-02 21:53:27 +01:00
Frank Lanitz
465378d72a Update of Italian translation 2014-01-30 23:20:48 +01:00
Matthew Brush
986c59aecb Use GeanyFiletypeGroupID enum in a few places
Also move the `group_menus` global variable to the top of the file
with the other globals.
2014-01-28 17:16:50 -08:00
Colomban Wendling
6a85a50d21 Replace bare CTags parser ID numbers with an enumeration
Avoid using magic numbers in the source for better readability and
easier maintenance.
2014-01-29 01:34:26 +01:00
Matthew Brush
576be4ca3b Reformat builtin filetype initialization code into tabular format
* Add an initialization function ft_init()
* Add a function-like macro to call ft_init() with shorter arguments
* Search and replace old code with FT_INIT() usage
* Layout into columns and add documentation above
2014-01-28 15:32:08 -08:00
Matthew Brush
c674f0660a Cleanup filetype_make_title() a bit and use it more
* Adds TITLE_NONE, TITLE_SCRIPT and TITLE_DOCUMENT.
* Only a few filetype titles were tweaked but we should review the
  rest as we could use TITLE_SCRIPT and TITLE_DOCUMENT a lot more
  probably.
* Make filetype_make_title() not care about GeanyFiletype type and
  return result instead of internally setting ft state.
2014-01-28 15:20:03 -08:00
Frank Lanitz
8449b5f9b1 Minor update of German translation 2014-01-26 22:31:51 +01:00
Colomban Wendling
d40932ce4d C++: mitigate matching error on generics containing an expression
Mitigate parse error with generics like `foo<X<Y> x;` by avoiding
matching past a semicolon (";") or open curly brace ("{"), which
can't be part of the generic.  This isn't a proper fix, but mitigates
the impact of such constructs.
2014-01-23 14:17:43 +01:00
elextr
f227076dc4 Improve Asciidoc title parsing
1) Prevent parsing titles inside delimited blocks
2) Always detect -- lines as open block delimiters not titles
3) Support single line titles
2014-01-23 21:07:37 +11:00
Colomban Wendling
c2dcec7107 Don't use G_LIKELY() in macros commonly used in g_return_if_fail()
g_return_if_fail() puts itself its condition in a G_LIKELY() clause,
and nested G_LIKELY() lead to warnings about shadowed variables, as
well as not being of any use.

Also, hiding G_LIKELY() in a macro may lead to unexpected use of it
which may hint the compiler incorrectly.
2014-01-22 17:38:29 +01:00
Colomban Wendling
7473e4b1d9 Add defensive checks for function receiving a GeanyDocument argument
Always check the passed-in GeanyDocument argument is a valid one, not
to possibly work on an invalid document.
2014-01-22 17:38:29 +01:00
elextr
c4549b1e73 Add new automake products to .gitignore
Newer automake creates .dirstamp and config.h.in~
2014-01-22 09:45:02 +11:00
elextr
5d62030667 Fix "leaks" of geany_run_script (bug 975)
In build_run_cmd() the script was not deleted when any one of
several errors occurred.  The errors are not related to script
contents so it makes no sense to leave the script.

Also fixes failure to delete script if a working dir was set.
2014-01-22 09:15:25 +11:00
Matthew Brush
df4770362f Merge pull request #205 from aphirst/fortran-keywords
Corrections and Amendments to the Fortran "filetype" files
2014-01-20 07:41:53 -08:00
Adam Hirst
05dda6b001 Updated keywords and intrinsic functions in accordance with the Fortran 2008 standard. 2014-01-20 15:21:36 +00:00
Adam Hirst
10ac2816af Removed years-old typo from the keyword list. 2014-01-20 15:20:12 +00:00
Colomban Wendling
7c6f48e4f5 Workaround a slowness in multi-column combo boxes under GTK3
Always set the combo boxes' wrap-width after their models are fully
filled to work around dramatic slowness described in GTK bug
https://bugzilla.gnome.org/show_bug.cgi?id=722388
2014-01-18 03:13:05 +01:00
Colomban Wendling
5975931be8 Add a section on how to add a test for a parser in HACKING 2014-01-14 22:26:54 +01:00
Colomban Wendling
7205b83abf Update NEWS for Rust filetype 2014-01-14 21:14:37 +01:00
Colomban Wendling
e549562792 Merge branch 'SiegeLord/rust'
Closes PR#181.
2014-01-14 21:09:10 +01:00
SiegeLord
416c3daecc Clean up Rust ctag tests and make them more comprehensive 2014-01-14 12:50:38 -05:00
Colomban Wendling
370666865b Add Rust tests to the makefile 2014-01-14 12:50:38 -05:00
dobkeratops
09cb24c7c7 Add Rust ctag tests 2014-01-14 12:50:38 -05:00
SiegeLord
828df0ab5f Add shebang filetype detection for Rust 2014-01-14 12:50:38 -05:00
SiegeLord
3d7ade4e02 Integrate the Rust lexer with the rest of Geany's functionality 2014-01-14 12:50:38 -05:00