Branch: refs/heads/document-messages
Author: Nick Treleaven <nick.treleaven(a)btinternet.com>
Committer: Nick Treleaven <nick.treleaven(a)btinternet.com>
Date: Wed, 25 Apr 2012 14:54:56
Commit: a56373cabdceafb9e282ee5e287b5b3c7ce25b9f
https://github.com/geany/geany/commit/a56373cabdceafb9e282ee5e287b5b3c7ce25…
Log Message:
-----------
Support PREFIX* in ignore.tags
Modified Paths:
--------------
doc/geany.html
doc/geany.txt
…
[View More]tagmanager/options.c
Modified: doc/geany.html
6 files changed, 5 insertions(+), 1 deletions(-)
===================================================================
@@ -2106,6 +2106,10 @@ <h2 class="subtitle" id="a-fast-light-gtk-ide">A fast, light, GTK+ IDE</h2>
identifiers is replaced by the second identifiers for parsing purposes.</blockquote>
<p>For even more detailed information please read the manual page of
Exuberant Ctags.</p>
+<p>Geany extends Ctags with a '*' character suffix - this means use
+prefix matching, e.g. G_GNUC_* will match G_GNUC_NULL_TERMINATED, etc.
+Note that prefix match items should be put after other items to ensure
+that items like G_GNUC_PRINTF+ get parsed correctly.</p>
</div>
</div>
<div class="section" id="preferences">
@@ -6772,7 +6776,7 @@ <h2 class="subtitle" id="a-fast-light-gtk-ide">A fast, light, GTK+ IDE</h2>
<div class="footer">
<hr class="footer" />
<a class="reference external" href="geany.txt">View document source</a>.
-Generated on: 2012-04-24 15:38 UTC.
+Generated on: 2012-04-25 14:39 UTC.
Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
</div>
Modified: doc/geany.txt
5 files changed, 5 insertions(+), 0 deletions(-)
===================================================================
@@ -1704,6 +1704,11 @@ manual page:
For even more detailed information please read the manual page of
Exuberant Ctags.
+Geany extends Ctags with a '*' character suffix - this means use
+prefix matching, e.g. G_GNUC_* will match G_GNUC_NULL_TERMINATED, etc.
+Note that prefix match items should be put after other items to ensure
+that items like G_GNUC_PRINTF+ get parsed correctly.
+
Preferences
-----------
Modified: tagmanager/options.c
9 files changed, 7 insertions(+), 2 deletions(-)
===================================================================
@@ -175,11 +175,16 @@ extern boolean isIgnoreToken (const char *const name,
for (i = 0 ; i < len ; ++i)
{
vString *token = vStringNewInit (c_tags_ignore[i]);
+ const size_t tokenLen = vStringLength (token);
+ if (tokenLen >= 2 && vStringChar (token, tokenLen - 1) == '*' &&
+ strncmp (vStringValue (token), name, tokenLen - 1) == 0)
+ {
+ result = TRUE;
+ break;
+ }
if (strncmp (vStringValue (token), name, nameLen) == 0)
{
- const size_t tokenLen = vStringLength (token);
-
if (nameLen == tokenLen)
{
result = TRUE;
@@ Diff output truncated at 100000 characters. @@
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
[View Less]
Branch: refs/heads/document-messages
Author: Nick Treleaven <nick.treleaven(a)btinternet.com>
Committer: Nick Treleaven <nick.treleaven(a)btinternet.com>
Date: Tue, 24 Apr 2012 15:41:18
Commit: 003185f897069ab44277dce8ecfa91f790785bd9
https://github.com/geany/geany/commit/003185f897069ab44277dce8ecfa91f790785…
Log Message:
-----------
Grep isn't required for tag file generation; remove replacing c99.tags
This removes 'Replacing the default C/C++…
[View More] tags file' - we should
not encourage users to do this as it's unnecessary and error-prone
when updating Geany.
Modified Paths:
--------------
doc/geany.html
doc/geany.txt
Modified: doc/geany.html
688 files changed, 346 insertions(+), 342 deletions(-)
===================================================================
No diff available, check online
Modified: doc/geany.txt
34 files changed, 12 insertions(+), 22 deletions(-)
===================================================================
@@ -1593,6 +1593,8 @@ Different tag attributes like the return value or the argument list
are separated with different characters indicating the type of the
following argument.
+Pipe-separated format
+*********************
The Pipe-separated format is easier to read and write.
There is one tag per line and different tag attributes are separated
by the pipe character (``|``). A line looks like::
@@ -1637,12 +1639,15 @@ Example for the wxD library for the D programming language::
geany -g wxd.d.tags /home/username/wxd/wx/*.d
-*Generating C/C++ tag files:*
+Generating C/C++ tag files
+**************************
+You may need to first setup the `C ignore.tags`_ file.
-For C/C++ tag files, gcc and grep are required, so that header files
-can be preprocessed to include any other headers they depend upon.
+For C/C++ tag files gcc is required by default, so that header files
+can be preprocessed to include any other headers they depend upon. If
+you do not want this, use the ``-P`` option described above.
-For C/C++ files, the environment variable CFLAGS should be set with
+For preprocessing, the environment variable CFLAGS should be set with
appropriate ``-I/path`` include paths. The following example works with
the bash shell, generating tags for the GnomeUI library::
@@ -1653,28 +1658,13 @@ You can adapt this command to use CFLAGS and header files appropriate
for whichever libraries you want.
-*Replacing the default C/C++ tags file:*
-
-Geany currently uses a default global tags file c99.tags for
-C and C++, commonly installed in /usr/share/geany. This file can
-be replaced with one containing tags parsed from a different set
-of header files. When Geany is next started, your custom tags file
-will be loaded instead of the default c99.tags. You should keep a
-copy of the generated tags file because it will get overwritten when
-upgrading Geany.
-
-*Generating tag files on Windows:*
-
-This works basically the same as on other platforms but you need to make
-sure you have grep installed and Geany can find it, i.e. it must be
-in the PATH environment variable. To test this, open a console window
-and type ``grep`` and see whether it is executed.
-If it is, then you can create a tags file like the following::
+Generating tag files on Windows
+*******************************
+This works basically the same as on other platforms::
"c:\program files\geany\bin\geany" -g c:\mytags.php.tags c:\code\somefile.php
-
C ignore.tags
^^^^^^^^^^^^^
@@ Diff output truncated at 100000 characters. @@
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
[View Less]