Revision: 4516
http://geany.svn.sourceforge.net/geany/?rev=4516&view=rev
Author: eht16
Date: 2009-12-31 15:47:56 +0000 (Thu, 31 Dec 2009)
Log Message:
-----------
Add sci_find_text() to the plugin API.
Modified Paths:
--------------
trunk/ChangeLog
trunk/plugins/geanyfunctions.h
trunk/src/plugindata.h
trunk/src/plugins.c
trunk/src/sciwrappers.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-12-31 15:47:25 UTC (rev 4515)
+++ trunk/ChangeLog 2009-12-31 15:47:56 UTC (rev 4516)
@@ -2,6 +2,9 @@
* autogen.sh, configure.in, configure.ac:
Rename configure.in to configure.ac.
+ * plugins/geanyfunctions.h, src/plugins.c, src/plugindata.h,
+ src/sciwrappers.c:
+ Add sci_find_text() to the plugin API.
2009-12-29 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
Modified: trunk/plugins/geanyfunctions.h
===================================================================
--- trunk/plugins/geanyfunctions.h 2009-12-31 15:47:25 UTC (rev 4515)
+++ trunk/plugins/geanyfunctions.h 2009-12-31 15:47:56 UTC (rev 4516)
@@ -186,6 +186,8 @@
geany_functions->p_sci->is_marker_set_at_line
#define sci_goto_line \
geany_functions->p_sci->goto_line
+#define sci_find_text \
+ geany_functions->p_sci->find_text
#define templates_get_template_fileheader \
geany_functions->p_templates->get_template_fileheader
#define utils_str_equal \
Modified: trunk/src/plugindata.h
===================================================================
--- trunk/src/plugindata.h 2009-12-31 15:47:25 UTC (rev 4515)
+++ trunk/src/plugindata.h 2009-12-31 15:47:56 UTC (rev 4516)
@@ -50,7 +50,7 @@
enum {
/** The Application Programming Interface (API) version, incremented
* whenever any plugin data types are modified or appended to. */
- GEANY_API_VERSION = 166,
+ GEANY_API_VERSION = 167,
/** The Application Binary Interface (ABI) version, incremented whenever
* existing fields in the plugin data types have to be changed or reordered. */
@@ -347,6 +347,7 @@
void (*delete_marker_at_line) (struct _ScintillaObject *sci, gint line_number, gint marker);
gboolean (*is_marker_set_at_line) (struct _ScintillaObject *sci, gint line, gint marker);
void (*goto_line) (struct _ScintillaObject *sci, gint line, gboolean unfold);
+ gint (*find_text) (struct _ScintillaObject *sci, gint flags, struct Sci_TextToFind *ttf);
}
SciFuncs;
Modified: trunk/src/plugins.c
===================================================================
--- trunk/src/plugins.c 2009-12-31 15:47:25 UTC (rev 4515)
+++ trunk/src/plugins.c 2009-12-31 15:47:56 UTC (rev 4516)
@@ -180,7 +180,8 @@
&sci_set_marker_at_line,
&sci_delete_marker_at_line,
&sci_is_marker_set_at_line,
- &sci_goto_line
+ &sci_goto_line,
+ &sci_find_text
};
static TemplateFuncs template_funcs = {
Modified: trunk/src/sciwrappers.c
===================================================================
--- trunk/src/sciwrappers.c 2009-12-31 15:47:25 UTC (rev 4515)
+++ trunk/src/sciwrappers.c 2009-12-31 15:47:56 UTC (rev 4516)
@@ -799,6 +799,19 @@
}
+/** Find a text in the document.
+ * The @a ttf argument should be a pointer to a Sci_TextToFind structure which contains
+ * the text to find and the range in which the text should be searched.
+ *
+ * Please refer to the Scintilla documentation for a more detailed description.
+ *
+ * @param sci Scintilla widget.
+ * @param flags Bitmask of Scintilla search flags (@c SCFIND_*, see Scintilla documentation).
+ * @param ttf Pointer to a TextToFind structure which contains the text to find and the range.
+ * @return The position of the start of the found text if it succeeds, otherwise @c -1.
+ * The @c chrgText.cpMin and @c chrgText.cpMax members of @c TextToFind are filled in
+ * with the start and end positions of the found text.
+ */
gint sci_find_text(ScintillaObject *sci, gint flags, struct Sci_TextToFind *ttf)
{
return SSM(sci, SCI_FINDTEXT, flags, (long) ttf);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4515
http://geany.svn.sourceforge.net/geany/?rev=4515&view=rev
Author: eht16
Date: 2009-12-31 15:47:25 +0000 (Thu, 31 Dec 2009)
Log Message:
-----------
Rename configure.in to configure.ac.
Modified Paths:
--------------
trunk/ChangeLog
trunk/autogen.sh
Added Paths:
-----------
trunk/configure.ac
Removed Paths:
-------------
trunk/configure.in
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-12-29 18:45:49 UTC (rev 4514)
+++ trunk/ChangeLog 2009-12-31 15:47:25 UTC (rev 4515)
@@ -1,3 +1,9 @@
+2009-12-31 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
+
+ * autogen.sh, configure.in, configure.ac:
+ Rename configure.in to configure.ac.
+
+
2009-12-29 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c, src/plugins.c, src/plugindata.h,
Modified: trunk/autogen.sh
===================================================================
--- trunk/autogen.sh 2009-12-29 18:45:49 UTC (rev 4514)
+++ trunk/autogen.sh 2009-12-31 15:47:25 UTC (rev 4515)
@@ -6,7 +6,7 @@
DIE=0
-(test -f $srcdir/configure.in) || {
+(test -f $srcdir/configure.ac) || {
echo "**Error**: Directory "\`$srcdir\'" does not look like the top-level package directory"
exit 1
}
Copied: trunk/configure.ac (from rev 4514, trunk/configure.in)
===================================================================
--- trunk/configure.ac (rev 0)
+++ trunk/configure.ac 2009-12-31 15:47:25 UTC (rev 4515)
@@ -0,0 +1,312 @@
+dnl Process this file with autoconf to produce a configure script.
+dnl $Id$
+
+AC_INIT(configure.ac)
+AM_INIT_AUTOMAKE(geany, 0.19)
+
+m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
+
+AM_CONFIG_HEADER(config.h)
+
+AC_GNU_SOURCE
+AC_AIX
+AC_MINIX
+
+AC_PROG_CC
+
+AC_PROG_CXX
+# check for C++ compiler explicitly and fail if none is found, do this check
+# after AC_PROG_CXX has set the CXX environment variable
+AC_PATH_PROG([CXXCOMPILER], [$CXX])
+if ! test -x "${CXXCOMPILER}"
+then
+ AC_MSG_ERROR([No C++ compiler found. Please install a C++ compiler.])
+fi
+
+#AC_PROG_RANLIB
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_INTLTOOL
+
+# for plugins
+AC_DISABLE_STATIC
+AM_PROG_LIBTOOL
+LIBTOOL="$LIBTOOL --silent"
+
+# autoscan start
+
+# Checks for header files.
+AC_CHECK_HEADERS([fcntl.h fnmatch.h glob.h regex.h stdlib.h sys/time.h])
+
+# Checks for typedefs, structures, and compiler characteristics.
+AC_TYPE_OFF_T
+AC_TYPE_SIZE_T
+AC_STRUCT_TM
+
+# Checks for library functions.
+AC_CHECK_FUNCS([gethostname ftruncate fgetpos mkstemp regcomp strerror strstr])
+
+# autoscan end
+
+
+# get svn revision (try GIT first, then check for SVN)
+REVISION="r0"
+AC_PATH_PROG([GIT], [git])
+if test -d ".git" -a "x${GIT}" != "x" -a -x "${GIT}"
+then
+ REVISION=r`git svn find-rev origin/trunk 2>/dev/null ||
+ git svn find-rev trunk 2>/dev/null || git svn find-rev HEAD 2>/dev/null ||
+ git svn find-rev master 2>/dev/null || echo 0`
+fi
+if test "x${REVISION}" = "xr0"
+then
+ AC_PATH_PROG([SVN], [svn])
+ if test -d ".svn" -a "x${SVN}" != "x" -a -x "${SVN}"
+ then
+ REVISION=r`$SVN info|grep 'Last Changed Rev'|cut -d' ' -f4`
+ fi
+fi
+if test "x${REVISION}" != "xr0"
+then
+ # force debug mode for a SVN working copy
+ CFLAGS="-g -DGEANY_DEBUG $CFLAGS"
+else
+ REVISION="-1"
+fi
+AC_DEFINE_UNQUOTED([REVISION], "$REVISION", [subversion revision number])
+
+
+dnl Check for binary relocation support
+dnl taken from Inkscape (Hongli Lai <h.lai(a)chello.nl>)
+
+AC_ARG_ENABLE(binreloc,
+ [ --enable-binreloc compile with binary relocation support],
+ enable_binreloc=$enableval,enable_binreloc=no)
+
+AC_MSG_CHECKING(whether binary relocation support should be enabled)
+if test "$enable_binreloc" = "yes"; then
+ AC_MSG_RESULT(yes)
+ AC_MSG_CHECKING(for linker mappings at /proc/self/maps)
+ if test -e /proc/self/maps; then
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR(/proc/self/maps is not available. Binary relocation cannot be enabled.)
+ enable_binreloc="no"
+ fi
+
+elif test "$enable_binreloc" = "auto"; then
+ AC_MSG_RESULT(yes when available)
+ AC_MSG_CHECKING(for linker mappings at /proc/self/maps)
+ if test -e /proc/self/maps; then
+ AC_MSG_RESULT(yes)
+ enable_binreloc=yes
+
+ AC_MSG_CHECKING(whether everything is installed to the same prefix)
+ if test "$bindir" = '${exec_prefix}/bin' -a "$sbindir" = '${exec_prefix}/sbin' -a \
+ "$datadir" = '${prefix}/share' -a "$libdir" = '${exec_prefix}/lib' -a \
+ "$libexecdir" = '${exec_prefix}/libexec' -a "$sysconfdir" = '${prefix}/etc'
+ then
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_NOTICE(Binary relocation support will be disabled.)
+ enable_binreloc=no
+ fi
+
+ else
+ AC_MSG_RESULT(no)
+ enable_binreloc=no
+ fi
+
+elif test "$enable_binreloc" = "no"; then
+ AC_MSG_RESULT(no)
+else
+ AC_MSG_RESULT(no (unknown value "$enable_binreloc"))
+ enable_binreloc=no
+fi
+if test "$enable_binreloc" = "yes"; then
+ AC_DEFINE(ENABLE_BINRELOC,,[Use AutoPackage?])
+fi
+
+
+# GTK checks
+gtk_modules="gtk+-2.0 >= 2.8.0"
+PKG_CHECK_MODULES(GTK, [$gtk_modules])
+AC_SUBST(GTK_CFLAGS)
+AC_SUBST(GTK_LIBS)
+# GIO checks
+gio_modules="gio-2.0 >= 2.16"
+PKG_CHECK_MODULES(GIO, [$gio_modules], have_gio=1, have_gio=0)
+AC_SUBST(GIO_CFLAGS)
+AC_SUBST(GIO_LIBS)
+if test $have_gio = 1 ; then
+ AC_DEFINE(HAVE_GIO, 1, [Whether GIO is available])
+fi
+
+# --disable-deprecated switch for GTK2 purification
+AC_ARG_ENABLE(deprecated, [ --disable-deprecated Disable deprecated GTK functions. ],
+ [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
+
+# Plugins support
+AC_ARG_ENABLE(plugins, [AC_HELP_STRING([--disable-plugins], [compile without plugin support [default=no]])], , enable_plugins=yes)
+
+if test "x$enable_plugins" = "xyes" ; then
+ AC_DEFINE(HAVE_PLUGINS, 1, [Define if plugins are enabled.])
+ AM_CONDITIONAL(PLUGINS, true)
+else
+ AM_CONDITIONAL(PLUGINS, false)
+fi
+
+# Use included GNU regex library
+AC_ARG_ENABLE(gnu-regex, [AC_HELP_STRING([--enable-gnu-regex], [compile with included GNU regex library [default=no]])], , enable_gnu_regex=no)
+
+if test "x$enable_gnu_regex" = "xyes" ; then
+ AC_DEFINE(USE_INCLUDED_REGEX, 1, [Define if included GNU regex code should be used.])
+ AC_DEFINE(HAVE_REGCOMP, 1, [Define if you have the 'regcomp' function.])
+ AM_CONDITIONAL(USE_INCLUDED_REGEX, true)
+else
+ AM_CONDITIONAL(USE_INCLUDED_REGEX, false)
+fi
+
+case "${host}" in
+ *mingw*)
+ AC_CHECK_LIB(iberty, fnmatch, [], [
+ AC_MSG_ERROR([fnmatch does not present in libiberty. You need to update it, read http://www.geany.org/Support/CrossCompile for details.])
+ ])
+ AC_DEFINE_UNQUOTED([WIN32], 1, [we are cross compiling for WIN32])
+ want_vte="no"
+ want_socket="yes"
+ AC_DEFINE(HAVE_SOCKET, 1, [Define if you want to detect a running instance])
+ AC_EXEEXT
+ AM_CONDITIONAL(MINGW, true)
+ ;;
+ *)
+ AM_CONDITIONAL(MINGW, false)
+ ;;
+esac
+
+dnl skip check if already decided
+if test "x$want_socket" = "x"; then
+ # socket support
+ AC_ARG_ENABLE(socket, AC_HELP_STRING([--enable-socket],[enable if you want to detect a running instance [[default=yes]]]),
+ [want_socket="$enableval"], [want_socket="yes"])
+
+ if test "x$want_socket" = "xyes"; then
+ AC_DEFINE(HAVE_SOCKET, 1, [Define if you want to detect a running instance])
+ # this should bring in libsocket on Solaris:
+ AC_SEARCH_LIBS([connect],[socket],[],[],[])
+ fi
+fi
+
+dnl skip check if already decided
+if test "x$want_vte" = "x"; then
+ # VTE support
+ AC_ARG_ENABLE(vte, AC_HELP_STRING([--enable-vte],
+ [enable if you want virtual terminal support [[default=yes]]]),
+ [want_vte="$enableval"], [want_vte="yes"])
+ if test "x$want_vte" = "xyes"; then
+ AC_DEFINE(HAVE_VTE, 1, [Define if you want VTE support])
+ fi
+ AC_ARG_WITH(vte-module-path, AC_HELP_STRING([--with-vte-module-path=PATH],
+ [Path to a loadable libvte [[default=None]]]), [AC_DEFINE_UNQUOTED([VTE_MODULE_PATH],
+ ["$withval"], [Path to a loadable libvte])])
+fi
+
+GTK_VERSION=`$PKG_CONFIG --modversion gtk+-2.0`
+
+
+# GTK 2.10 printing support
+$PKG_CONFIG --exists 'gtk+-2.0 >= 2.10.0'
+if test "x$?" = "x0" ; then
+ enable_printing="yes"
+else
+ enable_printing="no (GTK >= 2.10 necessary)"
+fi
+
+
+# just for a laugh (it has absolutely no effect)
+AC_ARG_ENABLE(the-force, AC_HELP_STRING([--enable-the-force],
+ [enable if you are Luke Skywalker and the force is with you [[default=no]]]), [be_luke="$enableval"], [be_luke="no"])
+AC_MSG_CHECKING([whether the force is with you])
+if test "x$be_luke" = "xyes"; then
+ AC_MSG_RESULT([yes])
+else
+ AC_MSG_RESULT([no])
+fi
+
+# i18n
+GETTEXT_PACKAGE=geany
+AC_SUBST(GETTEXT_PACKAGE)
+AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
+
+ALL_LINGUAS="`sed -e '/^#/d' $srcdir/po/LINGUAS`" # take all languages found in file po/LINGUAS
+
+AM_GLIB_GNU_GETTEXT
+# workaround for intltool bug (http://bugzilla.gnome.org/show_bug.cgi?id=490845)
+if test "x$MSGFMT" = "xno"; then
+ AC_MSG_ERROR([msgfmt not found. Please install the gettext package.])
+fi
+
+
+# Set ${datadir}
+if test "x${datadir}" = 'x${prefix}/share' -o "x${datarootdir}" = 'x${prefix}/share'; then
+ if test "x${prefix}" = "xNONE"; then
+ prefix=${ac_default_prefix}
+ fi
+fi
+
+# Set ${docdir} if it is empty
+if test -z "${docdir}"; then
+ docdir='${datadir}/doc/${PACKAGE}'
+ AC_SUBST(docdir)
+fi
+
+GEANY_DATA_DIR=`eval echo ${datarootdir}/geany`
+AC_SUBST(GEANY_DATA_DIR)
+
+# intltool hack to define install_sh on Debian/Ubuntu systems
+if test "x$install_sh" = "x"; then
+ install_sh="`pwd`/install-sh"
+ AC_SUBST(install_sh)
+fi
+
+AC_OUTPUT([
+Makefile
+icons/Makefile
+icons/16x16/Makefile
+icons/48x48/Makefile
+icons/scalable/Makefile
+tagmanager/Makefile
+tagmanager/include/Makefile
+scintilla/Makefile
+scintilla/include/Makefile
+src/Makefile
+plugins/Makefile
+po/Makefile.in
+doc/Makefile
+doc/geany.1
+geany.spec
+geany.pc
+doc/Doxyfile
+])
+
+echo "----------------------------------------"
+echo "Install Geany in : ${prefix}"
+if test "x${build}" != "x" -a "x${target}" != "x"
+then
+ echo "Building Geany on : ${build}"
+ echo "Building Geany for : ${target}"
+fi
+echo "Using GTK version : ${GTK_VERSION}"
+echo "Build with GTK printing support : ${enable_printing}"
+echo "Build with plugin support : ${enable_plugins}"
+echo "Use virtual terminal support : ${want_vte}"
+echo "Use (UNIX domain) socket support : ${want_socket}"
+if test "${REVISION}" != "-1"
+then
+ echo "Compiling Subversion revision : ${REVISION}"
+fi
+echo ""
+echo "Configuration is done OK."
+echo ""
Deleted: trunk/configure.in
===================================================================
--- trunk/configure.in 2009-12-29 18:45:49 UTC (rev 4514)
+++ trunk/configure.in 2009-12-31 15:47:25 UTC (rev 4515)
@@ -1,312 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-dnl $Id$
-
-AC_INIT(configure.in)
-AM_INIT_AUTOMAKE(geany, 0.19)
-
-m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
-
-AM_CONFIG_HEADER(config.h)
-
-AC_GNU_SOURCE
-AC_AIX
-AC_MINIX
-
-AC_PROG_CC
-
-AC_PROG_CXX
-# check for C++ compiler explicitly and fail if none is found, do this check
-# after AC_PROG_CXX has set the CXX environment variable
-AC_PATH_PROG([CXXCOMPILER], [$CXX])
-if ! test -x "${CXXCOMPILER}"
-then
- AC_MSG_ERROR([No C++ compiler found. Please install a C++ compiler.])
-fi
-
-#AC_PROG_RANLIB
-AC_PROG_INSTALL
-AC_PROG_LN_S
-AC_PROG_INTLTOOL
-
-# for plugins
-AC_DISABLE_STATIC
-AM_PROG_LIBTOOL
-LIBTOOL="$LIBTOOL --silent"
-
-# autoscan start
-
-# Checks for header files.
-AC_CHECK_HEADERS([fcntl.h fnmatch.h glob.h regex.h stdlib.h sys/time.h])
-
-# Checks for typedefs, structures, and compiler characteristics.
-AC_TYPE_OFF_T
-AC_TYPE_SIZE_T
-AC_STRUCT_TM
-
-# Checks for library functions.
-AC_CHECK_FUNCS([gethostname ftruncate fgetpos mkstemp regcomp strerror strstr])
-
-# autoscan end
-
-
-# get svn revision (try GIT first, then check for SVN)
-REVISION="r0"
-AC_PATH_PROG([GIT], [git])
-if test -d ".git" -a "x${GIT}" != "x" -a -x "${GIT}"
-then
- REVISION=r`git svn find-rev origin/trunk 2>/dev/null ||
- git svn find-rev trunk 2>/dev/null || git svn find-rev HEAD 2>/dev/null ||
- git svn find-rev master 2>/dev/null || echo 0`
-fi
-if test "x${REVISION}" = "xr0"
-then
- AC_PATH_PROG([SVN], [svn])
- if test -d ".svn" -a "x${SVN}" != "x" -a -x "${SVN}"
- then
- REVISION=r`$SVN info|grep 'Last Changed Rev'|cut -d' ' -f4`
- fi
-fi
-if test "x${REVISION}" != "xr0"
-then
- # force debug mode for a SVN working copy
- CFLAGS="-g -DGEANY_DEBUG $CFLAGS"
-else
- REVISION="-1"
-fi
-AC_DEFINE_UNQUOTED([REVISION], "$REVISION", [subversion revision number])
-
-
-dnl Check for binary relocation support
-dnl taken from Inkscape (Hongli Lai <h.lai(a)chello.nl>)
-
-AC_ARG_ENABLE(binreloc,
- [ --enable-binreloc compile with binary relocation support],
- enable_binreloc=$enableval,enable_binreloc=no)
-
-AC_MSG_CHECKING(whether binary relocation support should be enabled)
-if test "$enable_binreloc" = "yes"; then
- AC_MSG_RESULT(yes)
- AC_MSG_CHECKING(for linker mappings at /proc/self/maps)
- if test -e /proc/self/maps; then
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- AC_MSG_ERROR(/proc/self/maps is not available. Binary relocation cannot be enabled.)
- enable_binreloc="no"
- fi
-
-elif test "$enable_binreloc" = "auto"; then
- AC_MSG_RESULT(yes when available)
- AC_MSG_CHECKING(for linker mappings at /proc/self/maps)
- if test -e /proc/self/maps; then
- AC_MSG_RESULT(yes)
- enable_binreloc=yes
-
- AC_MSG_CHECKING(whether everything is installed to the same prefix)
- if test "$bindir" = '${exec_prefix}/bin' -a "$sbindir" = '${exec_prefix}/sbin' -a \
- "$datadir" = '${prefix}/share' -a "$libdir" = '${exec_prefix}/lib' -a \
- "$libexecdir" = '${exec_prefix}/libexec' -a "$sysconfdir" = '${prefix}/etc'
- then
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- AC_MSG_NOTICE(Binary relocation support will be disabled.)
- enable_binreloc=no
- fi
-
- else
- AC_MSG_RESULT(no)
- enable_binreloc=no
- fi
-
-elif test "$enable_binreloc" = "no"; then
- AC_MSG_RESULT(no)
-else
- AC_MSG_RESULT(no (unknown value "$enable_binreloc"))
- enable_binreloc=no
-fi
-if test "$enable_binreloc" = "yes"; then
- AC_DEFINE(ENABLE_BINRELOC,,[Use AutoPackage?])
-fi
-
-
-# GTK checks
-gtk_modules="gtk+-2.0 >= 2.8.0"
-PKG_CHECK_MODULES(GTK, [$gtk_modules])
-AC_SUBST(GTK_CFLAGS)
-AC_SUBST(GTK_LIBS)
-# GIO checks
-gio_modules="gio-2.0 >= 2.16"
-PKG_CHECK_MODULES(GIO, [$gio_modules], have_gio=1, have_gio=0)
-AC_SUBST(GIO_CFLAGS)
-AC_SUBST(GIO_LIBS)
-if test $have_gio = 1 ; then
- AC_DEFINE(HAVE_GIO, 1, [Whether GIO is available])
-fi
-
-# --disable-deprecated switch for GTK2 purification
-AC_ARG_ENABLE(deprecated, [ --disable-deprecated Disable deprecated GTK functions. ],
- [GTK_CFLAGS="$GTK_CFLAGS -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"], [])
-
-# Plugins support
-AC_ARG_ENABLE(plugins, [AC_HELP_STRING([--disable-plugins], [compile without plugin support [default=no]])], , enable_plugins=yes)
-
-if test "x$enable_plugins" = "xyes" ; then
- AC_DEFINE(HAVE_PLUGINS, 1, [Define if plugins are enabled.])
- AM_CONDITIONAL(PLUGINS, true)
-else
- AM_CONDITIONAL(PLUGINS, false)
-fi
-
-# Use included GNU regex library
-AC_ARG_ENABLE(gnu-regex, [AC_HELP_STRING([--enable-gnu-regex], [compile with included GNU regex library [default=no]])], , enable_gnu_regex=no)
-
-if test "x$enable_gnu_regex" = "xyes" ; then
- AC_DEFINE(USE_INCLUDED_REGEX, 1, [Define if included GNU regex code should be used.])
- AC_DEFINE(HAVE_REGCOMP, 1, [Define if you have the 'regcomp' function.])
- AM_CONDITIONAL(USE_INCLUDED_REGEX, true)
-else
- AM_CONDITIONAL(USE_INCLUDED_REGEX, false)
-fi
-
-case "${host}" in
- *mingw*)
- AC_CHECK_LIB(iberty, fnmatch, [], [
- AC_MSG_ERROR([fnmatch does not present in libiberty. You need to update it, read http://www.geany.org/Support/CrossCompile for details.])
- ])
- AC_DEFINE_UNQUOTED([WIN32], 1, [we are cross compiling for WIN32])
- want_vte="no"
- want_socket="yes"
- AC_DEFINE(HAVE_SOCKET, 1, [Define if you want to detect a running instance])
- AC_EXEEXT
- AM_CONDITIONAL(MINGW, true)
- ;;
- *)
- AM_CONDITIONAL(MINGW, false)
- ;;
-esac
-
-dnl skip check if already decided
-if test "x$want_socket" = "x"; then
- # socket support
- AC_ARG_ENABLE(socket, AC_HELP_STRING([--enable-socket],[enable if you want to detect a running instance [[default=yes]]]),
- [want_socket="$enableval"], [want_socket="yes"])
-
- if test "x$want_socket" = "xyes"; then
- AC_DEFINE(HAVE_SOCKET, 1, [Define if you want to detect a running instance])
- # this should bring in libsocket on Solaris:
- AC_SEARCH_LIBS([connect],[socket],[],[],[])
- fi
-fi
-
-dnl skip check if already decided
-if test "x$want_vte" = "x"; then
- # VTE support
- AC_ARG_ENABLE(vte, AC_HELP_STRING([--enable-vte],
- [enable if you want virtual terminal support [[default=yes]]]),
- [want_vte="$enableval"], [want_vte="yes"])
- if test "x$want_vte" = "xyes"; then
- AC_DEFINE(HAVE_VTE, 1, [Define if you want VTE support])
- fi
- AC_ARG_WITH(vte-module-path, AC_HELP_STRING([--with-vte-module-path=PATH],
- [Path to a loadable libvte [[default=None]]]), [AC_DEFINE_UNQUOTED([VTE_MODULE_PATH],
- ["$withval"], [Path to a loadable libvte])])
-fi
-
-GTK_VERSION=`$PKG_CONFIG --modversion gtk+-2.0`
-
-
-# GTK 2.10 printing support
-$PKG_CONFIG --exists 'gtk+-2.0 >= 2.10.0'
-if test "x$?" = "x0" ; then
- enable_printing="yes"
-else
- enable_printing="no (GTK >= 2.10 necessary)"
-fi
-
-
-# just for a laugh (it has absolutely no effect)
-AC_ARG_ENABLE(the-force, AC_HELP_STRING([--enable-the-force],
- [enable if you are Luke Skywalker and the force is with you [[default=no]]]), [be_luke="$enableval"], [be_luke="no"])
-AC_MSG_CHECKING([whether the force is with you])
-if test "x$be_luke" = "xyes"; then
- AC_MSG_RESULT([yes])
-else
- AC_MSG_RESULT([no])
-fi
-
-# i18n
-GETTEXT_PACKAGE=geany
-AC_SUBST(GETTEXT_PACKAGE)
-AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
-
-ALL_LINGUAS="`sed -e '/^#/d' $srcdir/po/LINGUAS`" # take all languages found in file po/LINGUAS
-
-AM_GLIB_GNU_GETTEXT
-# workaround for intltool bug (http://bugzilla.gnome.org/show_bug.cgi?id=490845)
-if test "x$MSGFMT" = "xno"; then
- AC_MSG_ERROR([msgfmt not found. Please install the gettext package.])
-fi
-
-
-# Set ${datadir}
-if test "x${datadir}" = 'x${prefix}/share' -o "x${datarootdir}" = 'x${prefix}/share'; then
- if test "x${prefix}" = "xNONE"; then
- prefix=${ac_default_prefix}
- fi
-fi
-
-# Set ${docdir} if it is empty
-if test -z "${docdir}"; then
- docdir='${datadir}/doc/${PACKAGE}'
- AC_SUBST(docdir)
-fi
-
-GEANY_DATA_DIR=`eval echo ${datarootdir}/geany`
-AC_SUBST(GEANY_DATA_DIR)
-
-# intltool hack to define install_sh on Debian/Ubuntu systems
-if test "x$install_sh" = "x"; then
- install_sh="`pwd`/install-sh"
- AC_SUBST(install_sh)
-fi
-
-AC_OUTPUT([
-Makefile
-icons/Makefile
-icons/16x16/Makefile
-icons/48x48/Makefile
-icons/scalable/Makefile
-tagmanager/Makefile
-tagmanager/include/Makefile
-scintilla/Makefile
-scintilla/include/Makefile
-src/Makefile
-plugins/Makefile
-po/Makefile.in
-doc/Makefile
-doc/geany.1
-geany.spec
-geany.pc
-doc/Doxyfile
-])
-
-echo "----------------------------------------"
-echo "Install Geany in : ${prefix}"
-if test "x${build}" != "x" -a "x${target}" != "x"
-then
- echo "Building Geany on : ${build}"
- echo "Building Geany for : ${target}"
-fi
-echo "Using GTK version : ${GTK_VERSION}"
-echo "Build with GTK printing support : ${enable_printing}"
-echo "Build with plugin support : ${enable_plugins}"
-echo "Use virtual terminal support : ${want_vte}"
-echo "Use (UNIX domain) socket support : ${want_socket}"
-if test "${REVISION}" != "-1"
-then
- echo "Compiling Subversion revision : ${REVISION}"
-fi
-echo ""
-echo "Configuration is done OK."
-echo ""
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4513
http://geany.svn.sourceforge.net/geany/?rev=4513&view=rev
Author: eht16
Date: 2009-12-29 18:45:21 +0000 (Tue, 29 Dec 2009)
Log Message:
-----------
Add new style to change foreground and background colours for calltips (patch by Dimitar Zhekov, thanks, closes #2919229).
Modified Paths:
--------------
trunk/ChangeLog
trunk/data/filetypes.common
trunk/doc/geany.html
trunk/doc/geany.txt
trunk/src/highlighting.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-12-29 18:40:55 UTC (rev 4512)
+++ trunk/ChangeLog 2009-12-29 18:45:21 UTC (rev 4513)
@@ -16,6 +16,10 @@
* src/callbacks.c:
Show the Find/Goto dialogs if the corresponding toolbar buttons are
clicked but their text fields are not part of the toolbar (#2920807).
+ * data/filetypes.common, doc/geany.html, doc/geany.txt,
+ src/highlighting.c:
+ Add new style to change foreground and background colours for
+ calltips (patch by Dimitar Zhekov, thanks, closes #2919229).
2009-12-26 Frank Lanitz <frank(a)frank.uvena.de>
Modified: trunk/data/filetypes.common
===================================================================
--- trunk/data/filetypes.common 2009-12-29 18:40:55 UTC (rev 4512)
+++ trunk/data/filetypes.common 2009-12-29 18:45:21 UTC (rev 4513)
@@ -88,6 +88,10 @@
# second argument: amount of space to be drawn below the line's baseline
line_height=0;0;
+# 3rd argument is true to override default foreground of calltips
+# 4th argument is true to override default background of calltips
+calltips=0xc0c0c0;0xffffff;false;false
+
[settings]
# which characters should be skipped when moving (or included when deleting) to word boundaries
# should always include space and tab (\s\t)
Modified: trunk/doc/geany.html
===================================================================
--- trunk/doc/geany.html 2009-12-29 18:40:55 UTC (rev 4512)
+++ trunk/doc/geany.html 2009-12-29 18:45:21 UTC (rev 4513)
@@ -3,10 +3,10 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" />
<title>Geany</title>
<meta name="authors" content="Enrico Tröger Nick Treleaven Frank Lanitz" />
-<meta name="date" content="2009-12-02" />
+<meta name="date" content="2009-12-29" />
<style type="text/css">
/*
@@ -139,7 +139,7 @@
<br />Nick Treleaven
<br />Frank Lanitz</td></tr>
<tr><th class="docinfo-name">Date:</th>
-<td>2009-12-02</td></tr>
+<td>2009-12-29</td></tr>
<tr><th class="docinfo-name">Version:</th>
<td>0.19</td></tr>
</tbody>
@@ -149,339 +149,339 @@
License as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version. A copy of this
license can be found in the file COPYING included with the source code
-of this program, and also in the chapter <a class="reference" href="#gnu-general-public-license">GNU General Public License</a>.</p>
-<div class="contents topic">
-<p class="topic-title first"><a id="contents" name="contents">Contents</a></p>
+of this program, and also in the chapter <a class="reference internal" href="#gnu-general-public-license">GNU General Public License</a>.</p>
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
<ul class="simple">
-<li><a class="reference" href="#introduction" id="id12" name="id12">Introduction</a><ul>
-<li><a class="reference" href="#about-geany" id="id13" name="id13">About Geany</a></li>
-<li><a class="reference" href="#where-to-get-it" id="id14" name="id14">Where to get it</a></li>
-<li><a class="reference" href="#license" id="id15" name="id15">License</a></li>
-<li><a class="reference" href="#about-this-document" id="id16" name="id16">About this document</a></li>
+<li><a class="reference internal" href="#introduction" id="id12">Introduction</a><ul>
+<li><a class="reference internal" href="#about-geany" id="id13">About Geany</a></li>
+<li><a class="reference internal" href="#where-to-get-it" id="id14">Where to get it</a></li>
+<li><a class="reference internal" href="#license" id="id15">License</a></li>
+<li><a class="reference internal" href="#about-this-document" id="id16">About this document</a></li>
</ul>
</li>
-<li><a class="reference" href="#installation" id="id17" name="id17">Installation</a><ul>
-<li><a class="reference" href="#requirements" id="id18" name="id18">Requirements</a></li>
-<li><a class="reference" href="#binary-packages" id="id19" name="id19">Binary packages</a></li>
-<li><a class="reference" href="#source-compilation" id="id20" name="id20">Source compilation</a><ul>
-<li><a class="reference" href="#autotools-based-build-system" id="id21" name="id21">Autotools based build system</a></li>
-<li><a class="reference" href="#waf-based-build-system" id="id22" name="id22">Waf based build system</a><ul>
-<li><a class="reference" href="#waf-cache" id="id23" name="id23">Waf Cache</a><ul>
-<li><a class="reference" href="#cleaning-the-cache" id="id24" name="id24">Cleaning the Cache</a></li>
+<li><a class="reference internal" href="#installation" id="id17">Installation</a><ul>
+<li><a class="reference internal" href="#requirements" id="id18">Requirements</a></li>
+<li><a class="reference internal" href="#binary-packages" id="id19">Binary packages</a></li>
+<li><a class="reference internal" href="#source-compilation" id="id20">Source compilation</a><ul>
+<li><a class="reference internal" href="#autotools-based-build-system" id="id21">Autotools based build system</a></li>
+<li><a class="reference internal" href="#waf-based-build-system" id="id22">Waf based build system</a><ul>
+<li><a class="reference internal" href="#waf-cache" id="id23">Waf Cache</a><ul>
+<li><a class="reference internal" href="#cleaning-the-cache" id="id24">Cleaning the Cache</a></li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#custom-installation" id="id25" name="id25">Custom installation</a></li>
-<li><a class="reference" href="#dynamic-linking-loader-support-and-vte" id="id26" name="id26">Dynamic linking loader support and VTE</a></li>
-<li><a class="reference" href="#build-problems" id="id27" name="id27">Build problems</a></li>
+<li><a class="reference internal" href="#custom-installation" id="id25">Custom installation</a></li>
+<li><a class="reference internal" href="#dynamic-linking-loader-support-and-vte" id="id26">Dynamic linking loader support and VTE</a></li>
+<li><a class="reference internal" href="#build-problems" id="id27">Build problems</a></li>
</ul>
</li>
-<li><a class="reference" href="#installation-prefix" id="id28" name="id28">Installation prefix</a></li>
+<li><a class="reference internal" href="#installation-prefix" id="id28">Installation prefix</a></li>
</ul>
</li>
-<li><a class="reference" href="#usage" id="id29" name="id29">Usage</a><ul>
-<li><a class="reference" href="#getting-started" id="id30" name="id30">Getting started</a></li>
-<li><a class="reference" href="#the-geany-workspace" id="id31" name="id31">The Geany workspace</a></li>
-<li><a class="reference" href="#command-line-options" id="id32" name="id32">Command line options</a></li>
-<li><a class="reference" href="#general" id="id33" name="id33">General</a><ul>
-<li><a class="reference" href="#startup" id="id34" name="id34">Startup</a></li>
-<li><a class="reference" href="#opening-files-from-the-command-line-in-a-running-instance" id="id35" name="id35">Opening files from the command-line in a running instance</a></li>
-<li><a class="reference" href="#virtual-terminal-emulator-widget-vte" id="id36" name="id36">Virtual terminal emulator widget (VTE)</a></li>
-<li><a class="reference" href="#defining-own-widget-styles-using-gtkrc-2-0" id="id37" name="id37">Defining own widget styles using .gtkrc-2.0</a></li>
+<li><a class="reference internal" href="#usage" id="id29">Usage</a><ul>
+<li><a class="reference internal" href="#getting-started" id="id30">Getting started</a></li>
+<li><a class="reference internal" href="#the-geany-workspace" id="id31">The Geany workspace</a></li>
+<li><a class="reference internal" href="#command-line-options" id="id32">Command line options</a></li>
+<li><a class="reference internal" href="#general" id="id33">General</a><ul>
+<li><a class="reference internal" href="#startup" id="id34">Startup</a></li>
+<li><a class="reference internal" href="#opening-files-from-the-command-line-in-a-running-instance" id="id35">Opening files from the command-line in a running instance</a></li>
+<li><a class="reference internal" href="#virtual-terminal-emulator-widget-vte" id="id36">Virtual terminal emulator widget (VTE)</a></li>
+<li><a class="reference internal" href="#defining-own-widget-styles-using-gtkrc-2-0" id="id37">Defining own widget styles using .gtkrc-2.0</a></li>
</ul>
</li>
-<li><a class="reference" href="#documents" id="id38" name="id38">Documents</a><ul>
-<li><a class="reference" href="#switching-between-documents" id="id39" name="id39">Switching between documents</a></li>
+<li><a class="reference internal" href="#documents" id="id38">Documents</a><ul>
+<li><a class="reference internal" href="#switching-between-documents" id="id39">Switching between documents</a></li>
</ul>
</li>
-<li><a class="reference" href="#character-sets-and-unicode-byte-order-mark-bom" id="id40" name="id40">Character sets and Unicode Byte-Order-Mark (BOM)</a><ul>
-<li><a class="reference" href="#using-character-sets" id="id41" name="id41">Using character sets</a></li>
-<li><a class="reference" href="#in-file-encoding-specification" id="id42" name="id42">In-file encoding specification</a></li>
-<li><a class="reference" href="#special-encoding-none" id="id43" name="id43">Special encoding "None"</a></li>
-<li><a class="reference" href="#unicode-byte-order-mark-bom" id="id44" name="id44">Unicode Byte-Order-Mark (BOM)</a></li>
+<li><a class="reference internal" href="#character-sets-and-unicode-byte-order-mark-bom" id="id40">Character sets and Unicode Byte-Order-Mark (BOM)</a><ul>
+<li><a class="reference internal" href="#using-character-sets" id="id41">Using character sets</a></li>
+<li><a class="reference internal" href="#in-file-encoding-specification" id="id42">In-file encoding specification</a></li>
+<li><a class="reference internal" href="#special-encoding-none" id="id43">Special encoding "None"</a></li>
+<li><a class="reference internal" href="#unicode-byte-order-mark-bom" id="id44">Unicode Byte-Order-Mark (BOM)</a></li>
</ul>
</li>
-<li><a class="reference" href="#editing" id="id45" name="id45">Editing</a><ul>
-<li><a class="reference" href="#folding" id="id46" name="id46">Folding</a></li>
-<li><a class="reference" href="#column-mode-editing-rectangular-selections" id="id47" name="id47">Column mode editing (rectangular selections)</a></li>
-<li><a class="reference" href="#drag-and-drop-of-text" id="id48" name="id48">Drag and drop of text</a></li>
-<li><a class="reference" href="#indentation" id="id49" name="id49">Indentation</a></li>
-<li><a class="reference" href="#auto-indentation" id="id50" name="id50">Auto-indentation</a></li>
-<li><a class="reference" href="#bookmarks" id="id51" name="id51">Bookmarks</a></li>
-<li><a class="reference" href="#code-navigation-history" id="id52" name="id52">Code navigation history</a></li>
-<li><a class="reference" href="#sending-text-through-custom-commands" id="id53" name="id53">Sending text through custom commands</a></li>
-<li><a class="reference" href="#context-actions" id="id54" name="id54">Context actions</a></li>
-<li><a class="reference" href="#autocompletion" id="id55" name="id55">Autocompletion</a><ul>
-<li><a class="reference" href="#word-part-completion" id="id56" name="id56">Word part completion</a></li>
-<li><a class="reference" href="#scope-autocompletion" id="id57" name="id57">Scope autocompletion</a></li>
+<li><a class="reference internal" href="#editing" id="id45">Editing</a><ul>
+<li><a class="reference internal" href="#folding" id="id46">Folding</a></li>
+<li><a class="reference internal" href="#column-mode-editing-rectangular-selections" id="id47">Column mode editing (rectangular selections)</a></li>
+<li><a class="reference internal" href="#drag-and-drop-of-text" id="id48">Drag and drop of text</a></li>
+<li><a class="reference internal" href="#indentation" id="id49">Indentation</a></li>
+<li><a class="reference internal" href="#auto-indentation" id="id50">Auto-indentation</a></li>
+<li><a class="reference internal" href="#bookmarks" id="id51">Bookmarks</a></li>
+<li><a class="reference internal" href="#code-navigation-history" id="id52">Code navigation history</a></li>
+<li><a class="reference internal" href="#sending-text-through-custom-commands" id="id53">Sending text through custom commands</a></li>
+<li><a class="reference internal" href="#context-actions" id="id54">Context actions</a></li>
+<li><a class="reference internal" href="#autocompletion" id="id55">Autocompletion</a><ul>
+<li><a class="reference internal" href="#word-part-completion" id="id56">Word part completion</a></li>
+<li><a class="reference internal" href="#scope-autocompletion" id="id57">Scope autocompletion</a></li>
</ul>
</li>
-<li><a class="reference" href="#user-definable-snippets" id="id58" name="id58">User-definable snippets</a></li>
-<li><a class="reference" href="#inserting-unicode-characters" id="id59" name="id59">Inserting Unicode characters</a></li>
+<li><a class="reference internal" href="#user-definable-snippets" id="id58">User-definable snippets</a></li>
+<li><a class="reference internal" href="#inserting-unicode-characters" id="id59">Inserting Unicode characters</a></li>
</ul>
</li>
-<li><a class="reference" href="#search-replace-and-go-to" id="id60" name="id60">Search, replace and go to</a><ul>
-<li><a class="reference" href="#toolbar-entries" id="id61" name="id61">Toolbar entries</a><ul>
-<li><a class="reference" href="#search-bar" id="id62" name="id62">Search bar</a></li>
+<li><a class="reference internal" href="#search-replace-and-go-to" id="id60">Search, replace and go to</a><ul>
+<li><a class="reference internal" href="#toolbar-entries" id="id61">Toolbar entries</a><ul>
+<li><a class="reference internal" href="#search-bar" id="id62">Search bar</a></li>
</ul>
</li>
-<li><a class="reference" href="#find" id="id63" name="id63">Find</a><ul>
-<li><a class="reference" href="#matching-options" id="id64" name="id64">Matching options</a></li>
-<li><a class="reference" href="#find-all" id="id65" name="id65">Find all</a></li>
-<li><a class="reference" href="#change-font-in-search-dialog-text-fields" id="id66" name="id66">Change font in search dialog text fields</a></li>
+<li><a class="reference internal" href="#find" id="id63">Find</a><ul>
+<li><a class="reference internal" href="#matching-options" id="id64">Matching options</a></li>
+<li><a class="reference internal" href="#find-all" id="id65">Find all</a></li>
+<li><a class="reference internal" href="#change-font-in-search-dialog-text-fields" id="id66">Change font in search dialog text fields</a></li>
</ul>
</li>
-<li><a class="reference" href="#find-usage" id="id67" name="id67">Find usage</a></li>
-<li><a class="reference" href="#find-in-files" id="id68" name="id68">Find in files</a><ul>
-<li><a class="reference" href="#filtering-out-version-control-files" id="id69" name="id69">Filtering out version control files</a></li>
+<li><a class="reference internal" href="#find-usage" id="id67">Find usage</a></li>
+<li><a class="reference internal" href="#find-in-files" id="id68">Find in files</a><ul>
+<li><a class="reference internal" href="#filtering-out-version-control-files" id="id69">Filtering out version control files</a></li>
</ul>
</li>
-<li><a class="reference" href="#replace" id="id70" name="id70">Replace</a><ul>
-<li><a class="reference" href="#replace-all" id="id71" name="id71">Replace all</a></li>
+<li><a class="reference internal" href="#replace" id="id70">Replace</a><ul>
+<li><a class="reference internal" href="#replace-all" id="id71">Replace all</a></li>
</ul>
</li>
-<li><a class="reference" href="#go-to-tag-definition" id="id72" name="id72">Go to tag definition</a></li>
-<li><a class="reference" href="#go-to-tag-declaration" id="id73" name="id73">Go to tag declaration</a></li>
-<li><a class="reference" href="#go-to-line" id="id74" name="id74">Go to line</a></li>
-<li><a class="reference" href="#regular-expressions" id="id75" name="id75">Regular expressions</a></li>
+<li><a class="reference internal" href="#go-to-tag-definition" id="id72">Go to tag definition</a></li>
+<li><a class="reference internal" href="#go-to-tag-declaration" id="id73">Go to tag declaration</a></li>
+<li><a class="reference internal" href="#go-to-line" id="id74">Go to line</a></li>
+<li><a class="reference internal" href="#regular-expressions" id="id75">Regular expressions</a></li>
</ul>
</li>
-<li><a class="reference" href="#tags" id="id76" name="id76">Tags</a><ul>
-<li><a class="reference" href="#workspace-tags" id="id77" name="id77">Workspace tags</a></li>
-<li><a class="reference" href="#global-tags" id="id78" name="id78">Global tags</a><ul>
-<li><a class="reference" href="#default-global-tags-files" id="id79" name="id79">Default global tags files</a></li>
-<li><a class="reference" href="#global-tags-file-format" id="id80" name="id80">Global tags file format</a></li>
-<li><a class="reference" href="#generating-a-global-tags-file" id="id81" name="id81">Generating a global tags file</a></li>
+<li><a class="reference internal" href="#tags" id="id76">Tags</a><ul>
+<li><a class="reference internal" href="#workspace-tags" id="id77">Workspace tags</a></li>
+<li><a class="reference internal" href="#global-tags" id="id78">Global tags</a><ul>
+<li><a class="reference internal" href="#default-global-tags-files" id="id79">Default global tags files</a></li>
+<li><a class="reference internal" href="#global-tags-file-format" id="id80">Global tags file format</a></li>
+<li><a class="reference internal" href="#generating-a-global-tags-file" id="id81">Generating a global tags file</a></li>
</ul>
</li>
-<li><a class="reference" href="#ignore-tags" id="id82" name="id82">Ignore tags</a></li>
+<li><a class="reference internal" href="#ignore-tags" id="id82">Ignore tags</a></li>
</ul>
</li>
-<li><a class="reference" href="#preferences" id="id83" name="id83">Preferences</a><ul>
-<li><a class="reference" href="#general-startup-preferences" id="id84" name="id84">General Startup preferences</a><ul>
-<li><a class="reference" href="#id1" id="id85" name="id85">Startup</a></li>
-<li><a class="reference" href="#shutdown" id="id86" name="id86">Shutdown</a></li>
-<li><a class="reference" href="#paths" id="id87" name="id87">Paths</a></li>
+<li><a class="reference internal" href="#preferences" id="id83">Preferences</a><ul>
+<li><a class="reference internal" href="#general-startup-preferences" id="id84">General Startup preferences</a><ul>
+<li><a class="reference internal" href="#id1" id="id85">Startup</a></li>
+<li><a class="reference internal" href="#shutdown" id="id86">Shutdown</a></li>
+<li><a class="reference internal" href="#paths" id="id87">Paths</a></li>
</ul>
</li>
-<li><a class="reference" href="#general-miscellaneous-preferences" id="id88" name="id88">General Miscellaneous preferences</a><ul>
-<li><a class="reference" href="#miscellaneous" id="id89" name="id89">Miscellaneous</a></li>
-<li><a class="reference" href="#search" id="id90" name="id90">Search</a></li>
-<li><a class="reference" href="#projects" id="id91" name="id91">Projects</a></li>
+<li><a class="reference internal" href="#general-miscellaneous-preferences" id="id88">General Miscellaneous preferences</a><ul>
+<li><a class="reference internal" href="#miscellaneous" id="id89">Miscellaneous</a></li>
+<li><a class="reference internal" href="#search" id="id90">Search</a></li>
+<li><a class="reference internal" href="#projects" id="id91">Projects</a></li>
</ul>
</li>
-<li><a class="reference" href="#interface-preferences" id="id92" name="id92">Interface preferences</a><ul>
-<li><a class="reference" href="#sidebar" id="id93" name="id93">Sidebar</a></li>
-<li><a class="reference" href="#fonts" id="id94" name="id94">Fonts</a></li>
-<li><a class="reference" href="#editor-tabs" id="id95" name="id95">Editor tabs</a></li>
-<li><a class="reference" href="#tab-positions" id="id96" name="id96">Tab positions</a></li>
-<li><a class="reference" href="#id2" id="id97" name="id97">Miscellaneous</a></li>
+<li><a class="reference internal" href="#interface-preferences" id="id92">Interface preferences</a><ul>
+<li><a class="reference internal" href="#sidebar" id="id93">Sidebar</a></li>
+<li><a class="reference internal" href="#fonts" id="id94">Fonts</a></li>
+<li><a class="reference internal" href="#editor-tabs" id="id95">Editor tabs</a></li>
+<li><a class="reference internal" href="#tab-positions" id="id96">Tab positions</a></li>
+<li><a class="reference internal" href="#id2" id="id97">Miscellaneous</a></li>
</ul>
</li>
-<li><a class="reference" href="#toolbar-preferences" id="id98" name="id98">Toolbar preferences</a><ul>
-<li><a class="reference" href="#toolbar" id="id99" name="id99">Toolbar</a></li>
-<li><a class="reference" href="#appearance" id="id100" name="id100">Appearance</a></li>
+<li><a class="reference internal" href="#toolbar-preferences" id="id98">Toolbar preferences</a><ul>
+<li><a class="reference internal" href="#toolbar" id="id99">Toolbar</a></li>
+<li><a class="reference internal" href="#appearance" id="id100">Appearance</a></li>
</ul>
</li>
-<li><a class="reference" href="#editor-features-preferences" id="id101" name="id101">Editor Features preferences</a><ul>
-<li><a class="reference" href="#features" id="id102" name="id102">Features</a></li>
+<li><a class="reference internal" href="#editor-features-preferences" id="id101">Editor Features preferences</a><ul>
+<li><a class="reference internal" href="#features" id="id102">Features</a></li>
</ul>
</li>
-<li><a class="reference" href="#editor-indentation-preferences" id="id103" name="id103">Editor Indentation preferences</a><ul>
-<li><a class="reference" href="#indentation-group" id="id104" name="id104">Indentation group</a></li>
+<li><a class="reference internal" href="#editor-indentation-preferences" id="id103">Editor Indentation preferences</a><ul>
+<li><a class="reference internal" href="#indentation-group" id="id104">Indentation group</a></li>
</ul>
</li>
-<li><a class="reference" href="#editor-completions-preferences" id="id105" name="id105">Editor Completions preferences</a><ul>
-<li><a class="reference" href="#completions" id="id106" name="id106">Completions</a></li>
-<li><a class="reference" href="#auto-close-quotes-and-brackets" id="id107" name="id107">Auto-close quotes and brackets</a></li>
+<li><a class="reference internal" href="#editor-completions-preferences" id="id105">Editor Completions preferences</a><ul>
+<li><a class="reference internal" href="#completions" id="id106">Completions</a></li>
+<li><a class="reference internal" href="#auto-close-quotes-and-brackets" id="id107">Auto-close quotes and brackets</a></li>
</ul>
</li>
-<li><a class="reference" href="#editor-display-preferences" id="id108" name="id108">Editor Display preferences</a><ul>
-<li><a class="reference" href="#display" id="id109" name="id109">Display</a></li>
-<li><a class="reference" href="#long-line-marker" id="id110" name="id110">Long line marker</a></li>
+<li><a class="reference internal" href="#editor-display-preferences" id="id108">Editor Display preferences</a><ul>
+<li><a class="reference internal" href="#display" id="id109">Display</a></li>
+<li><a class="reference internal" href="#long-line-marker" id="id110">Long line marker</a></li>
</ul>
</li>
-<li><a class="reference" href="#files-preferences" id="id111" name="id111">Files preferences</a><ul>
-<li><a class="reference" href="#new-files" id="id112" name="id112">New files</a></li>
-<li><a class="reference" href="#saving-files" id="id113" name="id113">Saving files</a></li>
-<li><a class="reference" href="#id3" id="id114" name="id114">Miscellaneous</a></li>
+<li><a class="reference internal" href="#files-preferences" id="id111">Files preferences</a><ul>
+<li><a class="reference internal" href="#new-files" id="id112">New files</a></li>
+<li><a class="reference internal" href="#saving-files" id="id113">Saving files</a></li>
+<li><a class="reference internal" href="#id3" id="id114">Miscellaneous</a></li>
</ul>
</li>
-<li><a class="reference" href="#tools-preferences" id="id115" name="id115">Tools preferences</a><ul>
-<li><a class="reference" href="#tool-paths" id="id116" name="id116">Tool paths</a></li>
-<li><a class="reference" href="#commands" id="id117" name="id117">Commands</a></li>
+<li><a class="reference internal" href="#tools-preferences" id="id115">Tools preferences</a><ul>
+<li><a class="reference internal" href="#tool-paths" id="id116">Tool paths</a></li>
+<li><a class="reference internal" href="#commands" id="id117">Commands</a></li>
</ul>
</li>
-<li><a class="reference" href="#template-preferences" id="id118" name="id118">Template preferences</a><ul>
-<li><a class="reference" href="#template-data" id="id119" name="id119">Template data</a></li>
+<li><a class="reference internal" href="#template-preferences" id="id118">Template preferences</a><ul>
+<li><a class="reference internal" href="#template-data" id="id119">Template data</a></li>
</ul>
</li>
-<li><a class="reference" href="#keybinding-preferences" id="id120" name="id120">Keybinding preferences</a></li>
-<li><a class="reference" href="#printing-preferences" id="id121" name="id121">Printing preferences</a></li>
-<li><a class="reference" href="#terminal-vte-preferences" id="id122" name="id122">Terminal (VTE) preferences</a><ul>
-<li><a class="reference" href="#terminal-widget" id="id123" name="id123">Terminal widget</a></li>
+<li><a class="reference internal" href="#keybinding-preferences" id="id120">Keybinding preferences</a></li>
+<li><a class="reference internal" href="#printing-preferences" id="id121">Printing preferences</a></li>
+<li><a class="reference internal" href="#terminal-vte-preferences" id="id122">Terminal (VTE) preferences</a><ul>
+<li><a class="reference internal" href="#terminal-widget" id="id123">Terminal widget</a></li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#project-management" id="id124" name="id124">Project Management</a><ul>
-<li><a class="reference" href="#new-project" id="id125" name="id125">New Project</a></li>
-<li><a class="reference" href="#project-properties" id="id126" name="id126">Project Properties</a><ul>
-<li><a class="reference" href="#set-base-path-button" id="id127" name="id127">Set Base Path Button</a></li>
+<li><a class="reference internal" href="#project-management" id="id124">Project Management</a><ul>
+<li><a class="reference internal" href="#new-project" id="id125">New Project</a></li>
+<li><a class="reference internal" href="#project-properties" id="id126">Project Properties</a><ul>
+<li><a class="reference internal" href="#set-base-path-button" id="id127">Set Base Path Button</a></li>
</ul>
</li>
-<li><a class="reference" href="#open-project" id="id128" name="id128">Open Project</a></li>
-<li><a class="reference" href="#close-project" id="id129" name="id129">Close Project</a></li>
+<li><a class="reference internal" href="#open-project" id="id128">Open Project</a></li>
+<li><a class="reference internal" href="#close-project" id="id129">Close Project</a></li>
</ul>
</li>
-<li><a class="reference" href="#build-menu" id="id130" name="id130">Build Menu</a><ul>
-<li><a class="reference" href="#indicators" id="id131" name="id131">Indicators</a></li>
-<li><a class="reference" href="#default-build-menu-items" id="id132" name="id132">Default Build Menu Items</a><ul>
-<li><a class="reference" href="#compile" id="id133" name="id133">Compile</a></li>
-<li><a class="reference" href="#build" id="id134" name="id134">Build</a></li>
-<li><a class="reference" href="#make" id="id135" name="id135">Make</a></li>
-<li><a class="reference" href="#make-custom-target" id="id136" name="id136">Make custom target</a></li>
-<li><a class="reference" href="#make-object" id="id137" name="id137">Make object</a></li>
-<li><a class="reference" href="#next-error" id="id138" name="id138">Next Error</a></li>
-<li><a class="reference" href="#previous-error" id="id139" name="id139">Previous Error</a></li>
-<li><a class="reference" href="#execute" id="id140" name="id140">Execute</a></li>
-<li><a class="reference" href="#stopping-running-processes" id="id141" name="id141">Stopping running processes</a><ul>
-<li><a class="reference" href="#terminal-emulators" id="id142" name="id142">Terminal emulators</a></li>
+<li><a class="reference internal" href="#build-menu" id="id130">Build Menu</a><ul>
+<li><a class="reference internal" href="#indicators" id="id131">Indicators</a></li>
+<li><a class="reference internal" href="#default-build-menu-items" id="id132">Default Build Menu Items</a><ul>
+<li><a class="reference internal" href="#compile" id="id133">Compile</a></li>
+<li><a class="reference internal" href="#build" id="id134">Build</a></li>
+<li><a class="reference internal" href="#make" id="id135">Make</a></li>
+<li><a class="reference internal" href="#make-custom-target" id="id136">Make custom target</a></li>
+<li><a class="reference internal" href="#make-object" id="id137">Make object</a></li>
+<li><a class="reference internal" href="#next-error" id="id138">Next Error</a></li>
+<li><a class="reference internal" href="#previous-error" id="id139">Previous Error</a></li>
+<li><a class="reference internal" href="#execute" id="id140">Execute</a></li>
+<li><a class="reference internal" href="#stopping-running-processes" id="id141">Stopping running processes</a><ul>
+<li><a class="reference internal" href="#terminal-emulators" id="id142">Terminal emulators</a></li>
</ul>
</li>
-<li><a class="reference" href="#set-build-commands" id="id143" name="id143">Set Build Commands</a></li>
+<li><a class="reference internal" href="#set-build-commands" id="id143">Set Build Commands</a></li>
</ul>
</li>
-<li><a class="reference" href="#build-menu-configuration" id="id144" name="id144">Build Menu Configuration</a></li>
-<li><a class="reference" href="#build-menu-commands-dialog" id="id145" name="id145">Build Menu Commands Dialog</a><ul>
-<li><a class="reference" href="#substitutions-in-commands-and-working-directories" id="id146" name="id146">Substitutions in Commands and Working Directories</a></li>
-<li><a class="reference" href="#build-menu-keyboard-shortcuts" id="id147" name="id147">Build Menu Keyboard Shortcuts</a></li>
-<li><a class="reference" href="#configuration-files" id="id148" name="id148">Configuration Files</a></li>
+<li><a class="reference internal" href="#build-menu-configuration" id="id144">Build Menu Configuration</a></li>
+<li><a class="reference internal" href="#build-menu-commands-dialog" id="id145">Build Menu Commands Dialog</a><ul>
+<li><a class="reference internal" href="#substitutions-in-commands-and-working-directories" id="id146">Substitutions in Commands and Working Directories</a></li>
+<li><a class="reference internal" href="#build-menu-keyboard-shortcuts" id="id147">Build Menu Keyboard Shortcuts</a></li>
+<li><a class="reference internal" href="#configuration-files" id="id148">Configuration Files</a></li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#printing-support" id="id149" name="id149">Printing support</a></li>
-<li><a class="reference" href="#plugins" id="id150" name="id150">Plugins</a></li>
-<li><a class="reference" href="#keybindings" id="id151" name="id151">Keybindings</a><ul>
-<li><a class="reference" href="#switching-documents" id="id152" name="id152">Switching documents</a></li>
-<li><a class="reference" href="#configurable-keybindings" id="id153" name="id153">Configurable keybindings</a><ul>
-<li><a class="reference" href="#file-keybindings" id="id154" name="id154">File keybindings</a></li>
-<li><a class="reference" href="#editor-keybindings" id="id155" name="id155">Editor keybindings</a></li>
-<li><a class="reference" href="#clipboard-keybindings" id="id156" name="id156">Clipboard keybindings</a></li>
-<li><a class="reference" href="#select-keybindings" id="id157" name="id157">Select keybindings</a></li>
-<li><a class="reference" href="#insert-keybindings" id="id158" name="id158">Insert keybindings</a></li>
-<li><a class="reference" href="#format-keybindings" id="id159" name="id159">Format keybindings</a></li>
-<li><a class="reference" href="#settings-keybindings" id="id160" name="id160">Settings keybindings</a></li>
-<li><a class="reference" href="#search-keybindings" id="id161" name="id161">Search keybindings</a></li>
-<li><a class="reference" href="#go-to-keybindings" id="id162" name="id162">Go to keybindings</a></li>
-<li><a class="reference" href="#view-keybindings" id="id163" name="id163">View keybindings</a></li>
-<li><a class="reference" href="#focus-keybindings" id="id164" name="id164">Focus keybindings</a></li>
-<li><a class="reference" href="#notebook-tab-keybindings" id="id165" name="id165">Notebook tab keybindings</a></li>
-<li><a class="reference" href="#document-keybindings" id="id166" name="id166">Document keybindings</a></li>
-<li><a class="reference" href="#build-keybindings" id="id167" name="id167">Build keybindings</a></li>
-<li><a class="reference" href="#tools-keybindings" id="id168" name="id168">Tools keybindings</a></li>
-<li><a class="reference" href="#help-keybindings" id="id169" name="id169">Help keybindings</a></li>
+<li><a class="reference internal" href="#printing-support" id="id149">Printing support</a></li>
+<li><a class="reference internal" href="#plugins" id="id150">Plugins</a></li>
+<li><a class="reference internal" href="#keybindings" id="id151">Keybindings</a><ul>
+<li><a class="reference internal" href="#switching-documents" id="id152">Switching documents</a></li>
+<li><a class="reference internal" href="#configurable-keybindings" id="id153">Configurable keybindings</a><ul>
+<li><a class="reference internal" href="#file-keybindings" id="id154">File keybindings</a></li>
+<li><a class="reference internal" href="#editor-keybindings" id="id155">Editor keybindings</a></li>
+<li><a class="reference internal" href="#clipboard-keybindings" id="id156">Clipboard keybindings</a></li>
+<li><a class="reference internal" href="#select-keybindings" id="id157">Select keybindings</a></li>
+<li><a class="reference internal" href="#insert-keybindings" id="id158">Insert keybindings</a></li>
+<li><a class="reference internal" href="#format-keybindings" id="id159">Format keybindings</a></li>
+<li><a class="reference internal" href="#settings-keybindings" id="id160">Settings keybindings</a></li>
+<li><a class="reference internal" href="#search-keybindings" id="id161">Search keybindings</a></li>
+<li><a class="reference internal" href="#go-to-keybindings" id="id162">Go to keybindings</a></li>
+<li><a class="reference internal" href="#view-keybindings" id="id163">View keybindings</a></li>
+<li><a class="reference internal" href="#focus-keybindings" id="id164">Focus keybindings</a></li>
+<li><a class="reference internal" href="#notebook-tab-keybindings" id="id165">Notebook tab keybindings</a></li>
+<li><a class="reference internal" href="#document-keybindings" id="id166">Document keybindings</a></li>
+<li><a class="reference internal" href="#build-keybindings" id="id167">Build keybindings</a></li>
+<li><a class="reference internal" href="#tools-keybindings" id="id168">Tools keybindings</a></li>
+<li><a class="reference internal" href="#help-keybindings" id="id169">Help keybindings</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#id4" id="id170" name="id170">Configuration files</a><ul>
-<li><a class="reference" href="#tools-menu-items" id="id171" name="id171">Tools menu items</a></li>
-<li><a class="reference" href="#global-configuration-file" id="id172" name="id172">Global configuration file</a></li>
-<li><a class="reference" href="#filetype-definition-files" id="id173" name="id173">Filetype definition files</a><ul>
-<li><a class="reference" href="#custom-filetypes" id="id174" name="id174">Custom filetypes</a></li>
-<li><a class="reference" href="#system-files" id="id175" name="id175">System files</a></li>
-<li><a class="reference" href="#user-files" id="id176" name="id176">User files</a></li>
-<li><a class="reference" href="#format" id="id177" name="id177">Format</a><ul>
-<li><a class="reference" href="#styling-section" id="id178" name="id178">[styling] Section</a><ul>
-<li><a class="reference" href="#using-a-named-style" id="id179" name="id179">Using a named style</a></li>
+<li><a class="reference internal" href="#id4" id="id170">Configuration files</a><ul>
+<li><a class="reference internal" href="#tools-menu-items" id="id171">Tools menu items</a></li>
+<li><a class="reference internal" href="#global-configuration-file" id="id172">Global configuration file</a></li>
+<li><a class="reference internal" href="#filetype-definition-files" id="id173">Filetype definition files</a><ul>
+<li><a class="reference internal" href="#custom-filetypes" id="id174">Custom filetypes</a></li>
+<li><a class="reference internal" href="#system-files" id="id175">System files</a></li>
+<li><a class="reference internal" href="#user-files" id="id176">User files</a></li>
+<li><a class="reference internal" href="#format" id="id177">Format</a><ul>
+<li><a class="reference internal" href="#styling-section" id="id178">[styling] Section</a><ul>
+<li><a class="reference internal" href="#using-a-named-style" id="id179">Using a named style</a></li>
</ul>
</li>
-<li><a class="reference" href="#keywords-section" id="id180" name="id180">[keywords] Section</a></li>
-<li><a class="reference" href="#lexer-properties-section" id="id181" name="id181">[lexer_properties] Section</a></li>
-<li><a class="reference" href="#settings-section" id="id182" name="id182">[settings] Section</a></li>
-<li><a class="reference" href="#build-settings-section" id="id183" name="id183">[build_settings] Section</a></li>
+<li><a class="reference internal" href="#keywords-section" id="id180">[keywords] Section</a></li>
+<li><a class="reference internal" href="#lexer-properties-section" id="id181">[lexer_properties] Section</a></li>
+<li><a class="reference internal" href="#settings-section" id="id182">[settings] Section</a></li>
+<li><a class="reference internal" href="#build-settings-section" id="id183">[build_settings] Section</a></li>
</ul>
</li>
-<li><a class="reference" href="#special-file-filetypes-common" id="id184" name="id184">Special file filetypes.common</a><ul>
-<li><a class="reference" href="#named-styles-section" id="id185" name="id185">[named_styles] Section</a></li>
-<li><a class="reference" href="#id5" id="id186" name="id186">[styling] Section</a></li>
-<li><a class="reference" href="#id6" id="id187" name="id187">[settings] Section</a></li>
+<li><a class="reference internal" href="#special-file-filetypes-common" id="id184">Special file filetypes.common</a><ul>
+<li><a class="reference internal" href="#named-styles-section" id="id185">[named_styles] Section</a></li>
+<li><a class="reference internal" href="#id5" id="id186">[styling] Section</a></li>
+<li><a class="reference internal" href="#id6" id="id187">[settings] Section</a></li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#filetype-extensions" id="id188" name="id188">Filetype extensions</a></li>
-<li><a class="reference" href="#preferences-file-format" id="id189" name="id189">Preferences File Format</a><ul>
-<li><a class="reference" href="#hidden-preferences" id="id190" name="id190">Hidden preferences</a></li>
-<li><a class="reference" href="#build-menu-section" id="id191" name="id191">[build-menu] Section</a></li>
+<li><a class="reference internal" href="#filetype-extensions" id="id188">Filetype extensions</a></li>
+<li><a class="reference internal" href="#preferences-file-format" id="id189">Preferences File Format</a><ul>
+<li><a class="reference internal" href="#hidden-preferences" id="id190">Hidden preferences</a></li>
+<li><a class="reference internal" href="#build-menu-section" id="id191">[build-menu] Section</a></li>
</ul>
</li>
-<li><a class="reference" href="#project-file-format" id="id192" name="id192">Project File Format</a><ul>
-<li><a class="reference" href="#build-menu-additions" id="id193" name="id193">[build-menu] Additions</a></li>
+<li><a class="reference internal" href="#project-file-format" id="id192">Project File Format</a><ul>
+<li><a class="reference internal" href="#build-menu-additions" id="id193">[build-menu] Additions</a></li>
</ul>
</li>
-<li><a class="reference" href="#templates" id="id194" name="id194">Templates</a><ul>
-<li><a class="reference" href="#template-meta-data" id="id195" name="id195">Template meta data</a></li>
-<li><a class="reference" href="#file-templates" id="id196" name="id196">File templates</a><ul>
-<li><a class="reference" href="#custom-file-templates" id="id197" name="id197">Custom file templates</a></li>
-<li><a class="reference" href="#filetype-templates" id="id198" name="id198">Filetype templates</a></li>
+<li><a class="reference internal" href="#templates" id="id194">Templates</a><ul>
+<li><a class="reference internal" href="#template-meta-data" id="id195">Template meta data</a></li>
+<li><a class="reference internal" href="#file-templates" id="id196">File templates</a><ul>
+<li><a class="reference internal" href="#custom-file-templates" id="id197">Custom file templates</a></li>
+<li><a class="reference internal" href="#filetype-templates" id="id198">Filetype templates</a></li>
</ul>
</li>
-<li><a class="reference" href="#customizing-templates" id="id199" name="id199">Customizing templates</a><ul>
-<li><a class="reference" href="#template-wildcards" id="id200" name="id200">Template wildcards</a></li>
+<li><a class="reference internal" href="#customizing-templates" id="id199">Customizing templates</a><ul>
+<li><a class="reference internal" href="#template-wildcards" id="id200">Template wildcards</a></li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#customizing-the-toolbar" id="id201" name="id201">Customizing the toolbar</a><ul>
-<li><a class="reference" href="#manually-editing-of-the-toolbar-layout" id="id202" name="id202">Manually editing of the toolbar layout</a></li>
-<li><a class="reference" href="#available-toolbar-elements" id="id203" name="id203">Available toolbar elements</a></li>
+<li><a class="reference internal" href="#customizing-the-toolbar" id="id201">Customizing the toolbar</a><ul>
+<li><a class="reference internal" href="#manually-editing-of-the-toolbar-layout" id="id202">Manually editing of the toolbar layout</a></li>
+<li><a class="reference internal" href="#available-toolbar-elements" id="id203">Available toolbar elements</a></li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#plugin-documentation" id="id204" name="id204">Plugin documentation</a><ul>
-<li><a class="reference" href="#save-actions" id="id205" name="id205">Save Actions</a><ul>
-<li><a class="reference" href="#instant-save" id="id206" name="id206">Instant Save</a></li>
-<li><a class="reference" href="#backup-copy" id="id207" name="id207">Backup Copy</a></li>
+<li><a class="reference internal" href="#plugin-documentation" id="id204">Plugin documentation</a><ul>
+<li><a class="reference internal" href="#save-actions" id="id205">Save Actions</a><ul>
+<li><a class="reference internal" href="#instant-save" id="id206">Instant Save</a></li>
+<li><a class="reference internal" href="#backup-copy" id="id207">Backup Copy</a></li>
</ul>
</li>
</ul>
</li>
-<li><a class="reference" href="#contributing-to-this-document" id="id208" name="id208">Contributing to this document</a></li>
-<li><a class="reference" href="#scintilla-keyboard-commands" id="id209" name="id209">Scintilla keyboard commands</a><ul>
-<li><a class="reference" href="#keyboard-commands" id="id210" name="id210">Keyboard commands</a></li>
+<li><a class="reference internal" href="#contributing-to-this-document" id="id208">Contributing to this document</a></li>
+<li><a class="reference internal" href="#scintilla-keyboard-commands" id="id209">Scintilla keyboard commands</a><ul>
+<li><a class="reference internal" href="#keyboard-commands" id="id210">Keyboard commands</a></li>
</ul>
</li>
-<li><a class="reference" href="#tips-and-tricks" id="id211" name="id211">Tips and tricks</a><ul>
-<li><a class="reference" href="#document-notebook" id="id212" name="id212">Document notebook</a></li>
-<li><a class="reference" href="#editor" id="id213" name="id213">Editor</a></li>
-<li><a class="reference" href="#interface" id="id214" name="id214">Interface</a></li>
-<li><a class="reference" href="#gtk-related" id="id215" name="id215">GTK-related</a></li>
+<li><a class="reference internal" href="#tips-and-tricks" id="id211">Tips and tricks</a><ul>
+<li><a class="reference internal" href="#document-notebook" id="id212">Document notebook</a></li>
+<li><a class="reference internal" href="#editor" id="id213">Editor</a></li>
+<li><a class="reference internal" href="#interface" id="id214">Interface</a></li>
+<li><a class="reference internal" href="#gtk-related" id="id215">GTK-related</a></li>
</ul>
</li>
-<li><a class="reference" href="#compile-time-options" id="id216" name="id216">Compile-time options</a><ul>
-<li><a class="reference" href="#src-geany-h" id="id217" name="id217">src/geany.h</a></li>
-<li><a class="reference" href="#project-h" id="id218" name="id218">project.h</a></li>
-<li><a class="reference" href="#editor-h" id="id219" name="id219">editor.h</a></li>
-<li><a class="reference" href="#keyfile-c" id="id220" name="id220">keyfile.c</a></li>
-<li><a class="reference" href="#build-h" id="id221" name="id221">build.h</a></li>
-<li><a class="reference" href="#build-c" id="id222" name="id222">build.c</a></li>
+<li><a class="reference internal" href="#compile-time-options" id="id216">Compile-time options</a><ul>
+<li><a class="reference internal" href="#src-geany-h" id="id217">src/geany.h</a></li>
+<li><a class="reference internal" href="#project-h" id="id218">project.h</a></li>
+<li><a class="reference internal" href="#editor-h" id="id219">editor.h</a></li>
+<li><a class="reference internal" href="#keyfile-c" id="id220">keyfile.c</a></li>
+<li><a class="reference internal" href="#build-h" id="id221">build.h</a></li>
+<li><a class="reference internal" href="#build-c" id="id222">build.c</a></li>
</ul>
</li>
-<li><a class="reference" href="#gnu-general-public-license" id="id223" name="id223">GNU General Public License</a></li>
-<li><a class="reference" href="#license-for-scintilla-and-scite" id="id224" name="id224">License for Scintilla and SciTE</a></li>
+<li><a class="reference internal" href="#gnu-general-public-license" id="id223">GNU General Public License</a></li>
+<li><a class="reference internal" href="#license-for-scintilla-and-scite" id="id224">License for Scintilla and SciTE</a></li>
</ul>
</div>
-<div class="section">
-<h1><a class="toc-backref" href="#id12" id="introduction" name="introduction">Introduction</a></h1>
-<div class="section">
-<h2><a class="toc-backref" href="#id13" id="about-geany" name="about-geany">About Geany</a></h2>
+<div class="section" id="introduction">
+<h1><a class="toc-backref" href="#id12">Introduction</a></h1>
+<div class="section" id="about-geany">
+<h2><a class="toc-backref" href="#id13">About Geany</a></h2>
<p>Geany is a small and lightweight Integrated Development Environment. It
was developed to provide a small and fast IDE, which has only a few
dependencies on other packages. Another goal was to be as independent
@@ -504,56 +504,56 @@
<li>Plugin interface</li>
</ul>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id14" id="where-to-get-it" name="where-to-get-it">Where to get it</a></h2>
-<p>You can obtain Geany from <a class="reference" href="http://www.geany.org/">http://www.geany.org/</a> or perhaps also from
+<div class="section" id="where-to-get-it">
+<h2><a class="toc-backref" href="#id14">Where to get it</a></h2>
+<p>You can obtain Geany from <a class="reference external" href="http://www.geany.org/">http://www.geany.org/</a> or perhaps also from
your distribution. For a list of available packages, please see
-<a class="reference" href="http://www.geany.org/Download/ThirdPartyPackages">http://www.geany.org/Download/ThirdPartyPackages</a>.</p>
+<a class="reference external" href="http://www.geany.org/Download/ThirdPartyPackages">http://www.geany.org/Download/ThirdPartyPackages</a>.</p>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id15" id="license" name="license">License</a></h2>
+<div class="section" id="license">
+<h2><a class="toc-backref" href="#id15">License</a></h2>
<p>Geany is distributed under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version. A copy of this
license can be found in the file COPYING included with the source
-code of this program and in the chapter, <a class="reference" href="#gnu-general-public-license">GNU General Public License</a>.</p>
+code of this program and in the chapter, <a class="reference internal" href="#gnu-general-public-license">GNU General Public License</a>.</p>
<p>The included Scintilla library (found in the subdirectory
-<tt class="docutils literal"><span class="pre">scintilla/</span></tt>) has its own license, which can be found in the chapter,
-<a class="reference" href="#license-for-scintilla-and-scite">License for Scintilla and SciTE</a>.</p>
+<tt class="docutils literal">scintilla/</tt>) has its own license, which can be found in the chapter,
+<a class="reference internal" href="#license-for-scintilla-and-scite">License for Scintilla and SciTE</a>.</p>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id16" id="about-this-document" name="about-this-document">About this document</a></h2>
+<div class="section" id="about-this-document">
+<h2><a class="toc-backref" href="#id16">About this document</a></h2>
<p>This documentation is available in HTML and text formats.
-The latest version can always be found at <a class="reference" href="http://www.geany.org/">http://www.geany.org/</a>.</p>
-<p>If you want to contribute to it, see <a class="reference" href="#contributing-to-this-document">Contributing to this document</a>.</p>
+The latest version can always be found at <a class="reference external" href="http://www.geany.org/">http://www.geany.org/</a>.</p>
+<p>If you want to contribute to it, see <a class="reference internal" href="#contributing-to-this-document">Contributing to this document</a>.</p>
</div>
</div>
-<div class="section">
-<h1><a class="toc-backref" href="#id17" id="installation" name="installation">Installation</a></h1>
-<div class="section">
-<h2><a class="toc-backref" href="#id18" id="requirements" name="requirements">Requirements</a></h2>
+<div class="section" id="installation">
+<h1><a class="toc-backref" href="#id17">Installation</a></h1>
+<div class="section" id="requirements">
+<h2><a class="toc-backref" href="#id18">Requirements</a></h2>
<p>You will need the GTK (>= 2.8.0) libraries and their dependencies
(Pango, GLib and ATK). Your distro should provide packages for these,
usually installed by default. For Windows, you can download an installer
from the website which bundles these libraries.</p>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id19" id="binary-packages" name="binary-packages">Binary packages</a></h2>
+<div class="section" id="binary-packages">
+<h2><a class="toc-backref" href="#id19">Binary packages</a></h2>
<p>There are many binary packages available. For an up-to-date but maybe
-incomplete list see <a class="reference" href="http://www.geany.org/Download/ThirdPartyPackages">http://www.geany.org/Download/ThirdPartyPackages</a>.</p>
+incomplete list see <a class="reference external" href="http://www.geany.org/Download/ThirdPartyPackages">http://www.geany.org/Download/ThirdPartyPackages</a>.</p>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id20" id="source-compilation" name="source-compilation">Source compilation</a></h2>
+<div class="section" id="source-compilation">
+<h2><a class="toc-backref" href="#id20">Source compilation</a></h2>
<p>Compiling Geany is quite easy.
To do so, you need the GTK (>= 2.8.0) libraries and header files.
You also need the Pango, GLib and ATK libraries and header files.
-All these files are available at <a class="reference" href="http://www.gtk.org">http://www.gtk.org</a>, but very often
+All these files are available at <a class="reference external" href="http://www.gtk.org">http://www.gtk.org</a>, but very often
your distro will provide development packages to save the trouble of
building these yourself.</p>
<p>Furthermore you need, of course, a C and C++ compiler. The GNU versions
of these tools are recommended.</p>
-<div class="section">
-<h3><a class="toc-backref" href="#id21" id="autotools-based-build-system" name="autotools-based-build-system">Autotools based build system</a></h3>
+<div class="section" id="autotools-based-build-system">
+<h3><a class="toc-backref" href="#id21">Autotools based build system</a></h3>
<p>The Autotools based build system is very mature and has been well tested.
To use it, you just need the Make tool, preferably GNU Make.</p>
<p>Then run the following commands:</p>
@@ -566,8 +566,8 @@
% make install
</pre>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id22" id="waf-based-build-system" name="waf-based-build-system">Waf based build system</a></h3>
+<div class="section" id="waf-based-build-system">
+<h3><a class="toc-backref" href="#id22">Waf based build system</a></h3>
<p>The Waf build system is still quite young and under heavy development but already in a
usable state. In contrast to the Autotools system, Waf needs Python. So before using Waf, you need
to install Python on your system.
@@ -575,7 +575,7 @@
build process might be a bit faster. Especially when you use the Waf
cache feature for repetitive builds (e.g. when changing only a few source files
to test something) will become much faster since Waf will cache and re-use the
-unchanged built files and only compile the changed code again. See <a class="reference" href="#waf-cache">Waf Cache</a> for details.
+unchanged built files and only compile the changed code again. See <a class="reference internal" href="#waf-cache">Waf Cache</a> for details.
To build Geany with Waf as run:</p>
<pre class="literal-block">
$ ./waf configure
@@ -585,13 +585,13 @@
<pre class="literal-block">
% ./waf install
</pre>
-<div class="section">
-<h4><a class="toc-backref" href="#id23" id="waf-cache" name="waf-cache">Waf Cache</a></h4>
+<div class="section" id="waf-cache">
+<h4><a class="toc-backref" href="#id23">Waf Cache</a></h4>
<p>The Waf build system has a nice and interesting feature which can help to avoid
a lot of unnecessary rebuilding of unchanged code. This often happens when developing new features
or trying to debug something in Geany.
Waf is able to store and retrieve the object files from a cache. This cache is declared
-using the environment variable <tt class="docutils literal"><span class="pre">WAFCACHE</span></tt>.
+using the environment variable <tt class="docutils literal">WAFCACHE</tt>.
A possible location of the cache directory could be <tt class="docutils literal"><span class="pre">~/.cache/waf</span></tt>. In order to make use of
this, you first need to create this directory:</p>
<pre class="literal-block">
@@ -602,11 +602,11 @@
<pre class="literal-block">
export WAFCACHE=/home/username/.cache/waf
</pre>
-<p>Remember to replace <tt class="docutils literal"><span class="pre">username</span></tt> with your actual username.</p>
+<p>Remember to replace <tt class="docutils literal">username</tt> with your actual username.</p>
<p>More information about the Waf cache feature are available at
-<a class="reference" href="http://code.google.com/p/waf/wiki/CacheObjectFiles">http://code.google.com/p/waf/wiki/CacheObjectFiles</a>.</p>
-<div class="section">
-<h5><a class="toc-backref" href="#id24" id="cleaning-the-cache" name="cleaning-the-cache">Cleaning the Cache</a></h5>
+<a class="reference external" href="http://code.google.com/p/waf/wiki/CacheObjectFiles">http://code.google.com/p/waf/wiki/CacheObjectFiles</a>.</p>
+<div class="section" id="cleaning-the-cache">
+<h5><a class="toc-backref" href="#id24">Cleaning the Cache</a></h5>
<p>You should be careful about the size of the cache directory as it may
grow rapidly over time.
Waf doesn't do any cleaning or other house-keeping of the cache yet, so you need to keep it
@@ -617,12 +617,12 @@
$ find /home/username/.cache/waf -mtime +14 -exec rm {} \;
</pre>
<p>This will delete all files in the cache directory which are older than 14 days.</p>
-<p>For details about the <tt class="docutils literal"><span class="pre">find</span></tt> command and its options, check its manual page.</p>
+<p>For details about the <tt class="docutils literal">find</tt> command and its options, check its manual page.</p>
</div>
</div>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id25" id="custom-installation" name="custom-installation">Custom installation</a></h3>
+<div class="section" id="custom-installation">
+<h3><a class="toc-backref" href="#id25">Custom installation</a></h3>
<p>The configure script supports several common options, for a detailed
list, type:</p>
<pre class="literal-block">
@@ -636,40 +636,40 @@
<p>You may also want to read the INSTALL file for advanced installation
options.</p>
<ul class="simple">
-<li>See also <a class="reference" href="#compile-time-options">Compile-time options</a>.</li>
+<li>See also <a class="reference internal" href="#compile-time-options">Compile-time options</a>.</li>
</ul>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id26" id="dynamic-linking-loader-support-and-vte" name="dynamic-linking-loader-support-and-vte">Dynamic linking loader support and VTE</a></h3>
+<div class="section" id="dynamic-linking-loader-support-and-vte">
+<h3><a class="toc-backref" href="#id26">Dynamic linking loader support and VTE</a></h3>
<p>In the case that your system lacks dynamic linking loader support, you
-probably want to pass the option <tt class="docutils literal"><span class="pre">--disable-vte</span></tt> to the <tt class="docutils literal"><span class="pre">configure</span></tt>
+probably want to pass the option <tt class="docutils literal"><span class="pre">--disable-vte</span></tt> to the <tt class="docutils literal">configure</tt>
script. This prevents compiling Geany with dynamic linking loader
-support for automatically loading <tt class="docutils literal"><span class="pre">libvte.so.4</span></tt> if available.</p>
+support for automatically loading <tt class="docutils literal">libvte.so.4</tt> if available.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id27" id="build-problems" name="build-problems">Build problems</a></h3>
+<div class="section" id="build-problems">
+<h3><a class="toc-backref" href="#id27">Build problems</a></h3>
<p>If there are any errors during compilation, check your build
environment and try to find the error, otherwise contact the mailing
list or one the authors. Sometimes you might need to ask for specific
help from your distribution.</p>
</div>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id28" id="installation-prefix" name="installation-prefix">Installation prefix</a></h2>
+<div class="section" id="installation-prefix">
+<h2><a class="toc-backref" href="#id28">Installation prefix</a></h2>
<p>If you want to edit any of Geany's system configuration files after
installation you will need to know the installation prefix. Usually this
is not necessary as you can just use per user configuration files and
you will not need root permissions.</p>
-<p>Use the <tt class="docutils literal"><span class="pre">--print-prefix</span></tt> option to Geany to check - see <a class="reference" href="#command-line-options">Command line
+<p>Use the <tt class="docutils literal"><span class="pre">--print-prefix</span></tt> option to Geany to check - see <a class="reference internal" href="#command-line-options">Command line
options</a>. The first path is the prefix.</p>
-<p>This is commonly <tt class="docutils literal"><span class="pre">/usr</span></tt> if you installed from a binary package, or
-<tt class="docutils literal"><span class="pre">/usr/local</span></tt> if you build from source.</p>
+<p>This is commonly <tt class="docutils literal">/usr</tt> if you installed from a binary package, or
+<tt class="docutils literal">/usr/local</tt> if you build from source.</p>
</div>
</div>
-<div class="section">
-<h1><a class="toc-backref" href="#id29" id="usage" name="usage">Usage</a></h1>
-<div class="section">
-<h2><a class="toc-backref" href="#id30" id="getting-started" name="getting-started">Getting started</a></h2>
+<div class="section" id="usage">
+<h1><a class="toc-backref" href="#id29">Usage</a></h1>
+<div class="section" id="getting-started">
+<h2><a class="toc-backref" href="#id30">Getting started</a></h2>
<p>You can start Geany in the following ways:</p>
<ul>
<li><p class="first">From the Desktop Environment menu:</p>
@@ -685,8 +685,8 @@
</li>
</ul>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id31" id="the-geany-workspace" name="the-geany-workspace">The Geany workspace</a></h2>
+<div class="section" id="the-geany-workspace">
+<h2><a class="toc-backref" href="#id31">The Geany workspace</a></h2>
<p>The Geany window is shown in the following figure:</p>
<img alt="./images/main_window.png" src="./images/main_window.png" />
<p>The workspace has the following parts:</p>
@@ -714,8 +714,8 @@
<p>The sizes of the sidebar and message window can be adjusted by
dragging the dividers.</p>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id32" id="command-line-options" name="command-line-options">Command line options</a></h2>
+<div class="section" id="command-line-options">
+<h2><a class="toc-backref" href="#id32">Command line options</a></h2>
<table border="1" class="docutils">
<colgroup>
<col width="9%" />
@@ -744,7 +744,7 @@
<td>--config=directory_name</td>
<td>Use an alternate configuration directory. The default
configuration directory is <tt class="docutils literal"><span class="pre">~/.config/geany/</span></tt> and that
-is where <tt class="docutils literal"><span class="pre">geany.conf</span></tt> and other configuration files
+is where <tt class="docutils literal">geany.conf</tt> and other configuration files
reside.</td>
</tr>
<tr><td><em>none</em></td>
@@ -755,7 +755,7 @@
<tr><td>-g</td>
<td>--generate-tags</td>
<td>Generate a global tags file (see
-<a class="reference" href="#generating-a-global-tags-file">Generating a global tags file</a>).</td>
+<a class="reference internal" href="#generating-a-global-tags-file">Generating a global tags file</a>).</td>
</tr>
<tr><td>-P</td>
<td>--no-preprocessing</td>
@@ -800,7 +800,7 @@
<td>--no-terminal</td>
<td>Do not load terminal support. Use this option if you do
not want to load the virtual terminal emulator widget
-at startup. If you do not have <tt class="docutils literal"><span class="pre">libvte.so.4</span></tt> installed,
+at startup. If you do not have <tt class="docutils literal">libvte.so.4</tt> installed,
then terminal-support is automatically disabled. Only
available if Geany was compiled with support for VTE.</td>
</tr>
@@ -818,7 +818,7 @@
<td>--vte-lib</td>
<td>Specify explicitly the path including filename or only
the filename to the VTE library, e.g.
-<tt class="docutils literal"><span class="pre">/usr/lib/libvte.so</span></tt> or <tt class="docutils literal"><span class="pre">libvte.so</span></tt>. This option is
+<tt class="docutils literal">/usr/lib/libvte.so</tt> or <tt class="docutils literal">libvte.so</tt>. This option is
only needed when the auto-detection does not work. Only
available if Geany was compiled with support for VTE.</td>
</tr>
@@ -857,13 +857,13 @@
<p>Geany supports all generic GTK options, a list is available on the
help screen.</p>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id33" id="general" name="general">General</a></h2>
-<div class="section">
-<h3><a class="toc-backref" href="#id34" id="startup" name="startup">Startup</a></h3>
+<div class="section" id="general">
+<h2><a class="toc-backref" href="#id33">General</a></h2>
+<div class="section" id="startup">
+<h3><a class="toc-backref" href="#id34">Startup</a></h3>
<p>At startup, Geany loads all files from the last time Geany was
launched. You can disable this feature in the preferences dialog
-(see <a class="reference" href="#general-startup-preferences">General Startup preferences</a>). If you specify some
+(see <a class="reference internal" href="#general-startup-preferences">General Startup preferences</a>). If you specify some
files on the command line, only these files will be opened, but you
can find the files from the last session in the file menu under the
"Recent files" item. By default this contains the last 10 recently
@@ -874,8 +874,8 @@
do not specify any filenames on the command-line, or disable opening
files in a running instance using the appropriate command line option.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id35" id="opening-files-from-the-command-line-in-a-running-instance" name="opening-files-from-the-command-line-in-a-running-instance">Opening files from the command-line in a running instance</a></h3>
+<div class="section" id="opening-files-from-the-command-line-in-a-running-instance">
+<h3><a class="toc-backref" href="#id35">Opening files from the command-line in a running instance</a></h3>
<p>Geany detects if there is an an instance of itself already running and opens files
from the command-line in that instance. So, Geany can
be used to view and edit files by opening them from other programs
@@ -884,22 +884,22 @@
<pre class="literal-block">
geany some_file.foo:55:4
</pre>
-<p>This would open the file <tt class="docutils literal"><span class="pre">some_file.foo</span></tt> with the cursor on line 55,
+<p>This would open the file <tt class="docutils literal">some_file.foo</tt> with the cursor on line 55,
column 4.</p>
<p>If you do not like this for some reason, you can disable using the first
instance by using the appropriate command line option -- see the section
-called <a class="reference" href="#command-line-options">Command line options</a>.</p>
+called <a class="reference internal" href="#command-line-options">Command line options</a>.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id36" id="virtual-terminal-emulator-widget-vte" name="virtual-terminal-emulator-widget-vte">Virtual terminal emulator widget (VTE)</a></h3>
-<p>If you have installed <tt class="docutils literal"><span class="pre">libvte.so</span></tt> on your system, it is loaded
+<div class="section" id="virtual-terminal-emulator-widget-vte">
+<h3><a class="toc-backref" href="#id36">Virtual terminal emulator widget (VTE)</a></h3>
+<p>If you have installed <tt class="docutils literal">libvte.so</tt> on your system, it is loaded
automatically by Geany, and you will have a terminal widget in the
notebook at the bottom.</p>
-<p>If Geany cannot find any <tt class="docutils literal"><span class="pre">libvte.so</span></tt> at startup, the terminal widget
+<p>If Geany cannot find any <tt class="docutils literal">libvte.so</tt> at startup, the terminal widget
will not be loaded. So there is no need to install the package containing
this file in order to run Geany. Additionally, you can disable the use
of the terminal widget by command line option, for more information
-see the section called <a class="reference" href="#command-line-options">Command line options</a>.</p>
+see the section called <a class="reference internal" href="#command-line-options">Command line options</a>.</p>
<p>You can use this terminal (from now on called VTE) much as you would
a terminal program like xterm. There is basic clipboard support. You
can paste the contents of the clipboard by pressing the right mouse
@@ -916,26 +916,26 @@
you can use the argument <tt class="docutils literal"><span class="pre">--login</span></tt>.</p>
<div class="note">
<p class="first admonition-title">Note</p>
-<p class="last">Geany tries to load <tt class="docutils literal"><span class="pre">libvte.so</span></tt>. If this fails, it tries to load
+<p class="last">Geany tries to load <tt class="docutils literal">libvte.so</tt>. If this fails, it tries to load
some other filenames. If this fails too, you should check whether you
installed libvte correctly. Again note, Geany will run without this
library.</p>
</div>
<p>It could be, that the library is called something else than
-<tt class="docutils literal"><span class="pre">libvte.so</span></tt> (e.g. on FreeBSD 6.0 it is called <tt class="docutils literal"><span class="pre">libvte.so.8</span></tt>). If so
+<tt class="docutils literal">libvte.so</tt> (e.g. on FreeBSD 6.0 it is called <tt class="docutils literal">libvte.so.8</tt>). If so
please set a link to the correct file (as root):</p>
<pre class="literal-block">
# ln -s /usr/lib/libvte.so.X /usr/lib/libvte.so
</pre>
<p>Obviously, you have to adjust the paths and set X to the number of your
-<tt class="docutils literal"><span class="pre">libvte.so</span></tt>.</p>
+<tt class="docutils literal">libvte.so</tt>.</p>
<p>You can also specify the filename of the VTE library to use on the command
-line (see the section called <a class="reference" href="#command-line-options">Command line options</a>) or at compile time
+line (see the section called <a class="reference internal" href="#command-line-options">Command line options</a>) or at compile time
by specifying the command line option <tt class="docutils literal"><span class="pre">--with-vte-module-path</span></tt> to
./configure.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id37" id="defining-own-widget-styles-using-gtkrc-2-0" name="defining-own-widget-styles-using-gtkrc-2-0">Defining own widget styles using .gtkrc-2.0</a></h3>
+<div class="section" id="defining-own-widget-styles-using-gtkrc-2-0">
+<h3><a class="toc-backref" href="#id37">Defining own widget styles using .gtkrc-2.0</a></h3>
<p>You can define your widget style for many of Geany's GUI parts. To
do this, just edit your <tt class="docutils literal"><span class="pre">.gtkrc-2.0</span></tt> (usually found in your home
directory on UNIX-like systems and in the etc subdirectory of your
@@ -975,10 +975,10 @@
</pre>
</div>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id38" id="documents" name="documents">Documents</a></h2>
-<div class="section">
-<h3><a class="toc-backref" href="#id39" id="switching-between-documents" name="switching-between-documents">Switching between documents</a></h3>
+<div class="section" id="documents">
+<h2><a class="toc-backref" href="#id38">Documents</a></h2>
+<div class="section" id="switching-between-documents">
+<h3><a class="toc-backref" href="#id39">Switching between documents</a></h3>
<p>The documents list and the editor tabs are two different ways
to switch between documents using the mouse. When you hit the key
combination to move between tabs, the order is determined by the tab
@@ -986,14 +986,14 @@
(regardless of whether or not editor tabs are visible).</p>
<p>The tabs can be positioned at the top, bottom, left, or right of the
main editing window, by a selection in the interface preferences.</p>
-<p>See the <a class="reference" href="#notebook-tab-keybindings">Notebook tab keybindings</a> section for useful
+<p>See the <a class="reference internal" href="#notebook-tab-keybindings">Notebook tab keybindings</a> section for useful
shortcuts including for Most-Recently-Used document switching.</p>
</div>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id40" id="character-sets-and-unicode-byte-order-mark-bom" name="character-sets-and-unicode-byte-order-mark-bom">Character sets and Unicode Byte-Order-Mark (BOM)</a></h2>
-<div class="section">
-<h3><a class="toc-backref" href="#id41" id="using-character-sets" name="using-character-sets">Using character sets</a></h3>
+<div class="section" id="character-sets-and-unicode-byte-order-mark-bom">
+<h2><a class="toc-backref" href="#id40">Character sets and Unicode Byte-Order-Mark (BOM)</a></h2>
+<div class="section" id="using-character-sets">
+<h3><a class="toc-backref" href="#id41">Using character sets</a></h3>
<p>Geany provides support for detecting and converting character sets. So
you can open and save files in different character sets, and even
convert a file from one character set to another. To do this,
@@ -1039,8 +1039,8 @@
</li>
</ul>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id42" id="in-file-encoding-specification" name="in-file-encoding-specification">In-file encoding specification</a></h3>
+<div class="section" id="in-file-encoding-specification">
+<h3><a class="toc-backref" href="#id42">In-file encoding specification</a></h3>
<p>Geany detects meta tags of HTML files which contain charset information
like:</p>
<pre class="literal-block">
@@ -1067,7 +1067,7 @@
correctly the next time.</p>
<p>Since Geany 0.15 you can also use lines which match the
regular expression used to find the encoding string:
-<tt class="docutils literal"><span class="pre">coding[\t</span> <span class="pre">]*[:=][\t</span> <span class="pre">]*([a-z0-9-]+)[\t</span> <span class="pre">]*</span></tt></p>
+<tt class="docutils literal"><span class="pre">coding[\t</span> <span class="pre">]*[:=][\t</span> <span class="pre">]*([a-z0-9-]+)[\t</span> ]*</tt></p>
<div class="note">
<p class="first admonition-title">Note</p>
<p class="last">These specifications must be in the first 512 bytes of the file.
@@ -1082,8 +1082,8 @@
# coding: ISO-8859-15
</pre>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id43" id="special-encoding-none" name="special-encoding-none">Special encoding "None"</a></h3>
+<div class="section" id="special-encoding-none">
+<h3><a class="toc-backref" href="#id43">Special encoding "None"</a></h3>
<p>There is a special encoding "None" which uses no
encoding. It is useful when you know that Geany cannot auto-detect
the encoding of a file and it is not displayed correctly. Especially
@@ -1092,10 +1092,10 @@
of the first NULL-byte. Using this encoding opens the file as it is
without any character conversion.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id44" id="unicode-byte-order-mark-bom" name="unicode-byte-order-mark-bom">Unicode Byte-Order-Mark (BOM)</a></h3>
+<div class="section" id="unicode-byte-order-mark-bom">
+<h3><a class="toc-backref" href="#id44">Unicode Byte-Order-Mark (BOM)</a></h3>
<p>Furthermore, Geany detects a Unicode Byte Order Mark (see
-<a class="reference" href="http://en.wikipedia.org/wiki/Byte_Order_Mark">http://en.wikipedia.org/wiki/Byte_Order_Mark</a> for details). Of course,
+<a class="reference external" href="http://en.wikipedia.org/wiki/Byte_Order_Mark">http://en.wikipedia.org/wiki/Byte_Order_Mark</a> for details). Of course,
this feature is only available if the opened file is in a Unicode
encoding. The Byte Order Mark helps to detect the encoding of a file,
e.g. whether it is UTF-16LE or UTF-16BE and so on. On Unix-like systems
@@ -1115,10 +1115,10 @@
</div>
</div>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id45" id="editing" name="editing">Editing</a></h2>
-<div class="section">
-<h3><a class="toc-backref" href="#id46" id="folding" name="folding">Folding</a></h3>
+<div class="section" id="editing">
+<h2><a class="toc-backref" href="#id45">Editing</a></h2>
+<div class="section" id="folding">
+<h3><a class="toc-backref" href="#id46">Folding</a></h3>
<p>Geany provides basic code folding support. Folding means the ability to
show and hide parts of the text in the current file. You can hide
unimportant code sections and concentrate on the parts you are working on
@@ -1142,8 +1142,8 @@
children of a fold point" option is enabled, pressing Shift will disable
it for this click and vice versa.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id47" id="column-mode-editing-rectangular-selections" name="column-mode-editing-rectangular-selections">Column mode editing (rectangular selections)</a></h3>
+<div class="section" id="column-mode-editing-rectangular-selections">
+<h3><a class="toc-backref" href="#id47">Column mode editing (rectangular selections)</a></h3>
<p>There is basic support for column mode editing. To use it, create a
rectangular selection by holding down the Control and Shift keys
(or Control and Alt if it doesn't work) while
@@ -1153,18 +1153,18 @@
this selection and the modifications will be done for every line in the
selection.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id48" id="drag-and-drop-of-text" name="drag-and-drop-of-text">Drag and drop of text</a></h3>
+<div class="section" id="drag-and-drop-of-text">
+<h3><a class="toc-backref" href="#id48">Drag and drop of text</a></h3>
<p>If you drag selected text in the editor widget of Geany the text is
moved to the position where the mouse pointer is when releasing the
mouse button. Holding Control when releasing the mouse button will
copy the text instead. This behaviour was changed in Geany 0.11 -
before the selected text was copied to the new position.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id49" id="indentation" name="indentation">Indentation</a></h3>
+<div class="section" id="indentation">
+<h3><a class="toc-backref" href="#id49">Indentation</a></h3>
<p>Geany allows each document to indent either with a tab character or
-multiple spaces. The default indent mode is set in the <a class="reference" href="#editor-features-preferences">Editor Features
+multiple spaces. The default indent mode is set in the <a class="reference internal" href="#editor-features-preferences">Editor Features
preferences</a> (see the link for more information). But
this can be overridden using either the <em>Document->Indent Type</em> menu,
or by using the <em>Detect from file</em> indentation preference. When enabled,
@@ -1182,8 +1182,8 @@
on a line.</dd>
</dl>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id50" id="auto-indentation" name="auto-indentation">Auto-indentation</a></h3>
+<div class="section" id="auto-indentation">
+<h3><a class="toc-backref" href="#id50">Auto-indentation</a></h3>
<p>When enabled, auto-indentation happens when pressing <em>Enter</em> in the
Editor. It adds a certain amount of indentation to the new line so the
user doesn't always have to indent each line manually.</p>
@@ -1203,8 +1203,8 @@
match the indentation of the line with the opening brace.</dd>
</dl>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id51" id="bookmarks" name="bookmarks">Bookmarks</a></h3>
+<div class="section" id="bookmarks">
+<h3><a class="toc-backref" href="#id51">Bookmarks</a></h3>
<p>Geany provides a handy bookmarking feature that lets you mark one
or more lines in a document, and return the cursor to them using a
key combination.</p>
@@ -1221,14 +1221,14 @@
(Ctrl-PgUp/PgDn and Ctrl-Tab) provides a particularly fast way to
navigate around multiple files.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id52" id="code-navigation-history" name="code-navigation-history">Code navigation history</a></h3>
+<div class="section" id="code-navigation-history">
+<h3><a class="toc-backref" href="#id52">Code navigation history</a></h3>
<p>To ease navigation in source files and especially between
different files, Geany lets you jump between different navigation
points. Currently, this works for the following:</p>
<ul class="simple">
-<li><a class="reference" href="#go-to-tag-declaration">Go to tag declaration</a></li>
-<li><a class="reference" href="#go-to-tag-definition">Go to tag definition</a></li>
+<li><a class="reference internal" href="#go-to-tag-declaration">Go to tag declaration</a></li>
+<li><a class="reference internal" href="#go-to-tag-definition">Go to tag definition</a></li>
<li>Symbol list items</li>
<li>Build errors</li>
<li>Message items</li>
@@ -1240,8 +1240,8 @@
location". This makes it easier to navigate in e.g. foreign code
and between different files.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id53" id="sending-text-through-custom-commands" name="sending-text-through-custom-commands">Sending text through custom commands</a></h3>
+<div class="section" id="sending-text-through-custom-commands">
+<h3><a class="toc-backref" href="#id53">Sending text through custom commands</a></h3>
<p>You can define several custom commands in Geany and send the current
selection to one of these commands using the "Edit->Format->Send
Selection to" menu or keybindings.
@@ -1259,17 +1259,17 @@
some command line options. To delete a command, just clear the text
entry and press OK. It will be deleted automatically.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id54" id="context-actions" name="context-actions">Context actions</a></h3>
+<div class="section" id="context-actions">
+<h3><a class="toc-backref" href="#id54">Context actions</a></h3>
<p>You can execute the context action command on the current word at the
cursor position or the available selection. This word or selection
can be used as an argument to the command.
The context action is invoked by a menu entry in the popup menu of the
editor and also a keyboard shortcut (see the section called
-<a class="reference" href="#keybindings">Keybindings</a>).</p>
+<a class="reference internal" href="#keybindings">Keybindings</a>).</p>
<p>The command can be specified in the preferences dialog and also for
each filetype (see "context_action_cmd" in the section called
-<a class="reference" href="#format">Format</a>). When the context action is invoked, the filetype
+<a class="reference internal" href="#format">Format</a>). When the context action is invoked, the filetype
specific command is used if available, otherwise the command
specified in the preferences dialog is executed.</p>
<p>The current word or selection can be referred with the wildcard "%s"
@@ -1284,19 +1284,19 @@
<p>when executing the command, the %s is substituted by the word near
the cursor position or by the current selection. If the cursor is at
the word "echo", a browser window will open(assumed your browser is
-called firefox) and it will open the address: <a class="reference" href="http://www.php.net/echo">http://www.php.net/echo</a>.</p>
+called firefox) and it will open the address: <a class="reference external" href="http://www.php.net/echo">http://www.php.net/echo</a>.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id55" id="autocompletion" name="autocompletion">Autocompletion</a></h3>
+<div class="section" id="autocompletion">
+<h3><a class="toc-backref" href="#id55">Autocompletion</a></h3>
<p>Geany can offer a list of possible completions for symbols defined in the
tags and for all words in a document.</p>
<p>The autocompletion list for symbols is presented when the first few
-characters of the symbol are typed (configurable, see <a class="reference" href="#editor-completions-preferences">Editor Completions
+characters of the symbol are typed (configurable, see <a class="reference internal" href="#editor-completions-preferences">Editor Completions
preferences</a>, default 4) or when the <em>Complete word</em>
-keybinding is pressed (configurable, see <a class="reference" href="#editor-keybindings">Editor keybindings</a>,
+keybinding is pressed (configurable, see <a class="reference internal" href="#editor-keybindings">Editor keybindings</a>,
default Ctrl-Space).</p>
<p>When the defined keybinding is typed and the <em>Autocomplete all words in
-document</em> preference (in <a class="reference" href="#editor-completions-preferences">Editor Completions preferences</a>)
+document</em> preference (in <a class="reference internal" href="#editor-completions-preferences">Editor Completions preferences</a>)
is selected then the autocompletion list will show all matching words
in the document, if there are no matching symbols.</p>
<p>If you don't want to use autocompletion it can be dismissed until
@@ -1308,13 +1308,13 @@
item on the autocompletion list can be chosen from the list by pressing
Enter/Return. You can also double-click to select an item. The sequence
will be completed to match the chosen item, and if the <em>Drop rest of
-word on completion</em> preference is set (in <a class="reference" href="#editor-completions-preferences">Editor Completions
+word on completion</em> preference is set (in <a class="reference internal" href="#editor-completions-preferences">Editor Completions
preferences</a>) then any characters after the cursor that match
a symbol or word are deleted.</p>
-<div class="section">
-<h4><a class="toc-backref" href="#id56" id="word-part-completion" name="word-part-completion">Word part completion</a></h4>
+<div class="section" id="word-part-completion">
+<h4><a class="toc-backref" href="#id56">Word part completion</a></h4>
<p>By default, pressing Tab will complete the selected item by word part;
-useful e.g. for adding the prefix <tt class="docutils literal"><span class="pre">gtk_combo_box_entry_</span></tt> without typing it
+useful e.g. for adding the prefix <tt class="docutils literal">gtk_combo_box_entry_</tt> without typing it
manually:</p>
<ul class="simple">
<li>gtk_com<TAB></li>
@@ -1323,12 +1323,12 @@
<li>gtk_combo_box_entry_<s><ENTER></li>
<li>gtk_combo_box_entry_set_text_column</li>
</ul>
-<p>The key combination can be changed from Tab - See <a class="reference" href="#editor-keybindings">Editor keybindings</a>.
+<p>The key combination can be changed from Tab - See <a class="reference internal" href="#editor-keybindings">Editor keybindings</a>.
If you clear/change the key combination for word part completion, Tab
will complete the whole word instead, like Enter.</p>
</div>
-<div class="section">
-<h4><a class="toc-backref" href="#id57" id="scope-autocompletion" name="scope-autocompletion">Scope autocompletion</a></h4>
+<div class="section" id="scope-autocompletion">
+<h4><a class="toc-backref" href="#id57">Scope autocompletion</a></h4>
<p>E.g.:</p>
<pre class="literal-block">
struct
@@ -1337,7 +1337,7 @@
char c;
} foo;
</pre>
-<p>When you type <tt class="docutils literal"><span class="pre">foo.</span></tt> it will show an autocompletion list with 'i' and
+<p>When you type <tt class="docutils literal">foo.</tt> it will show an autocompletion list with 'i' and
'c' symbols.</p>
<p>It only works for languages that set parent scope names for e.g. struct
members. Currently this means C-like languages. The C tag parser only
@@ -1345,27 +1345,27 @@
in local scope.</p>
</div>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id58" id="user-definable-snippets" name="user-definable-snippets">User-definable snippets</a></h3>
+<div class="section" id="user-definable-snippets">
+<h3><a class="toc-backref" href="#id58">User-definable snippets</a></h3>
<p>Snippets are small strings or code constructs which can be replaced or
completed to a more complex string. So you can save a lot of time when
typing common strings and letting Geany do the work for you.
To know what to complete or replace Geany reads a configuration file
-called <tt class="docutils literal"><span class="pre">snippets.conf</span></tt> at startup.</p>
+called <tt class="docutils literal">snippets.conf</tt> at startup.</p>
<p>Maybe you need to often type your name, so define a snippet like this:</p>
<pre class="literal-block">
[Default]
myname=Enrico Tröger
</pre>
-<p>Every time you write <tt class="docutils literal"><span class="pre">myname</span></tt> <TAB> in Geany, it will replace "myname"
+<p>Every time you write <tt class="docutils literal">myname</tt> <TAB> in Geany, it will replace "myname"
with "Enrico Tröger". The key to start autocompletion can be changed
in the preferences dialog, by default it is TAB. The corresponding keybinding
-is called <tt class="docutils literal"><span class="pre">Complete</span> <span class="pre">snippet</span></tt>.</p>
+is called <tt class="docutils literal">Complete snippet</tt>.</p>
<p>The system-wide configuration file can be found in
-<tt class="docutils literal"><span class="pre">$prefix/share/geany</span></tt>, where <tt class="docutils literal"><span class="pre">$prefix</span></tt> is the path where Geany is
-installed (see <a class="reference" href="#installation-prefix">Installation prefix</a>). It is not recommended to edit the
+<tt class="docutils literal">$prefix/share/geany</tt>, where <tt class="docutils literal">$prefix</tt> is the path where Geany is
+installed (see <a class="reference internal" href="#installation-prefix">Installation prefix</a>). It is not recommended to edit the
system-wide file, because it will be overridden when Geany is updated.</p>
-<p>To change the settings, copy the file from <tt class="docutils literal"><span class="pre">$prefix/share/geany</span></tt>
+<p>To change the settings, copy the file from <tt class="docutils literal">$prefix/share/geany</tt>
in your configuration directory (usually <tt class="docutils literal"><span class="pre">~/.config/geany/</span></tt>).</p>
<p>For example:</p>
<pre class="literal-block">
@@ -1376,15 +1376,15 @@
configuration directory. Alternatively, you can create a file
<tt class="docutils literal"><span class="pre">~/.config/geany/snippets.conf</span></tt> and add only these settings you want
to change. All missing settings will be read from the global snippets
-file in <tt class="docutils literal"><span class="pre">$prefix/share/geany</span></tt>.</p>
-<p>The file <tt class="docutils literal"><span class="pre">snippets.conf</span></tt> contains sections defining snippets that
+file in <tt class="docutils literal">$prefix/share/geany</tt>.</p>
+<p>The file <tt class="docutils literal">snippets.conf</tt> contains sections defining snippets that
are available for particular filetypes and in general.</p>
<p>The two sections "Default" and "Special" apply to all filetypes.
"Default" contains all snippets which are available for every
filetype and "Special" contains snippets which can only be used in
other snippets. So you can define often used parts of snippets and
just use the special snippet as a placeholder (see the
-<tt class="docutils literal"><span class="pre">snippets.conf</span></tt> for details).</p>
+<tt class="docutils literal">snippets.conf</tt> for details).</p>
<p>You can define sections with the name of a filetype eg "C++". The
snippets in that section are only available for use in files with that
filetype. Snippets in filetype sections will hide snippets with the
@@ -1414,7 +1414,7 @@
<tr><td>%cursor%</td>
<td>Place the cursor at this position after completion has
been done. You can define multiple %cursor% wildcards
-and use the keybinding <tt class="docutils literal"><span class="pre">Move</span> <span class="pre">cursor</span> <span class="pre">in</span> <span class="pre">snippet</span></tt> to jump
+and use the keybinding <tt class="docutils literal">Move cursor in snippet</tt> to jump
to the next defined cursor position in the completed
snippet.</td>
</tr>
@@ -1428,17 +1428,17 @@
<p>Snippet names must not contain spaces otherwise they won't
work correctly. But beside that you can define almost any
string as a snippet and use it later in Geany. It is not limited
-to existing contructs of certain programming languages(like <tt class="docutils literal"><span class="pre">if</span></tt>,
-<tt class="docutils literal"><span class="pre">for</span></tt>, <tt class="docutils literal"><span class="pre">switch</span></tt>). Define whatever you need.</p>
+to existing contructs of certain programming languages(like <tt class="docutils literal">if</tt>,
+<tt class="docutils literal">for</tt>, <tt class="docutils literal">switch</tt>). Define whatever you need.</p>
<p>Since Geany 0.15 you can also use most of the available templates wildcards
-listed in <a class="reference" href="#template-wildcards">Template wildcards</a>. All wildcards which are listed as
+listed in <a class="reference internal" href="#template-wildcards">Template wildcards</a>. All wildcards which are listed as
<cite>available in snippets</cite> can be used. For instance to improve the above example:</p>
<pre class="literal-block">
[Default]
myname=My name is {developer}
</pre>
-<p>this will replace <tt class="docutils literal"><span class="pre">myname</span></tt> with "My name is " and the value of the template
-preference <tt class="docutils literal"><span class="pre">developer</span></tt>.</p>
+<p>this will replace <tt class="docutils literal">myname</tt> with "My name is " and the value of the template
+preference <tt class="docutils literal">developer</tt>.</p>
<p>You can change the way Geany recognizes the word to complete,
that is how the start and end of a word is recognised when the
snippet completion is requested. The section "Special" may
@@ -1447,14 +1447,14 @@
default characters or define it to add or remove characters to fit your
needs.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id59" id="inserting-unicode-characters" name="inserting-unicode-characters">Inserting Unicode characters</a></h3>
+<div class="section" id="inserting-unicode-characters">
+<h3><a class="toc-backref" href="#id59">Inserting Unicode characters</a></h3>
<p>With GTK 2.10 and above, you can insert Unicode code points by hitting
Ctrl-Shift-u, then still holding Ctrl-Shift, type some hex digits representing
the code point for the character you want, then let go of Ctrl-Shift and
hit Enter or Return.</p>
<p>For this to work in Geany, you'll need to first unbind Ctrl-Shift-u
-in the <a class="reference" href="#keybinding-preferences">keybinding preferences</a>, then restart Geany.
+in the <a class="reference internal" href="#keybinding-preferences">keybinding preferences</a>, then restart Geany.
Note that it works slightly differently from other GTK applications,
in that you'll need to continue to hold down the Ctrl and Shift keys
while typing the code point hex digits.</p>
@@ -1463,8 +1463,8 @@
keys conflict with other Geany keybindings.</p>
</div>
</div>
-<div class="section">
-<h2><a class="toc-backref" href="#id60" id="search-replace-and-go-to" name="search-replace-and-go-to">Search, replace and go to</a></h2>
+<div class="section" id="search-replace-and-go-to">
+<h2><a class="toc-backref" href="#id60">Search, replace and go to</a></h2>
<p>This section describes search-related commands from the Search menu
and the editor window's popup menu:</p>
<ul class="simple">
@@ -1477,38 +1477,38 @@
<li>Go to line</li>
</ul>
<p>* These items are available from the editor window's popup menu, or by
-using a keyboard shortcut (see <a class="reference" href="#search-keybindings">Search keybindings</a>).</p>
-<div class="section">
-<h3><a class="toc-backref" href="#id61" id="toolbar-entries" name="toolbar-entries">Toolbar entries</a></h3>
+using a keyboard shortcut (see <a class="reference internal" href="#search-keybindings">Search keybindings</a>).</p>
+<div class="section" id="toolbar-entries">
+<h3><a class="toc-backref" href="#id61">Toolbar entries</a></h3>
<p>There are also two toolbar entries:</p>
<ul class="simple">
<li>Search bar</li>
<li>Go to line entry</li>
</ul>
-<p>There are keybindings to focus each of these - see <a class="reference" href="#focus-keybindings">Focus
+<p>There are keybindings to focus each of these - see <a class="reference internal" href="#focus-keybindings">Focus
keybindings</a>. Pressing Escape will then focus the editor.</p>
-<div class="section">
-<h4><a class="toc-backref" href="#id62" id="search-bar" name="search-bar">Search bar</a></h4>
+<div class="section" id="search-bar">
+<h4><a class="toc-backref" href="#id62">Search bar</a></h4>
<p>The quickest way to find some text is to use the search bar entry in
the toolbar. This performs a case-insensitive search in the current
document whilst you type. Pressing Enter will search again.</p>
</div>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id63" id="find" name="find">Find</a></h3>
+<div class="section" id="find">
+<h3><a class="toc-backref" href="#id63">Find</a></h3>
<p>The Find dialog is used for finding text in one or more open documents.</p>
<img alt="./images/find_dialog.png" src="./images/find_dialog.png" />
-<div class="section">
-<h4><a class="toc-backref" href="#id64" id="matching-options" name="matching-options">Matching options</a></h4>
+<div class="section" id="matching-options">
+<h4><a class="toc-backref" href="#id64">Matching options</a></h4>
<p>The syntax for the Use regular expressions option is shown in
-<a class="reference" href="#regular-expressions">Regular expressions</a>.</p>
+<a class="reference internal" href="#regular-expressions">Regular expressions</a>.</p>
<p>The Use escape sequences option will transform any escaped characters
into their UTF-8 equivalent. For example, \t will be transformed into
a tab character. Other recognized symbols are: \\, \n, \r, \uXXXX
(Unicode characters).</p>
</div>
-<div class="section">
-<h4><a class="toc-backref" href="#id65" id="find-all" name="find-all">Find all</a></h4>
+<div class="section" id="find-all">
+<h4><a class="toc-backref" href="#id65">Find all</a></h4>
<p>To find all matches, click on the Find All expander. This will reveal
several options:</p>
<ul class="simple">
@@ -1523,8 +1523,8 @@
colored box. These markers can be removed by selecting the
Remove Markers command from the Document menu.</p>
</div>
-<div class="section">
-<h4><a class="toc-backref" href="#id66" id="change-font-in-search-dialog-text-fields" name="change-font-in-search-dialog-text-fields">Change font in search dialog text fields</a></h4>
+<div class="section" id="change-font-in-search-dialog-text-fields">
+<h4><a class="toc-backref" href="#id66">Change font in search dialog text fields</a></h4>
<p>All search related dialogs use a Monospace for the text input fields to
increase the readability of input text. This is useful when you are
typing input such as regular expressions with spaces, periods and commas which
@@ -1545,8 +1545,8 @@
for the search dialogs.</p>
</div>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id67" id="find-usage" name="find-usage">Find usage</a></h3>
+<div class="section" id="find-usage">
+<h3><a class="toc-backref" href="#id67">Find usage</a></h3>
<p>Find usage searches all open files. It is similar to the Find All In
Session option in the Find dialog.</p>
<p>If there is a selection, then it is used as the search text; otherwise
@@ -1555,8 +1555,8 @@
click position when the popup menu is used. The search results are
shown in the Messages tab of the Message Window.</p>
</div>
-<div class="section">
-<h3><a class="toc-backref" href="#id68" id="find-in-files" name="find-in-files">Find in files</a></h3>
+<div class="section" id="find-in-files">
+<h3><a class="toc-backref" href="#id68">Find in files</a></h3>
<p>Find in files is a more powerful version of Find usage that searches
all files in a certain directory using the Grep tool. The Grep tool
must be correctly set in Preferences to the path of the system's Grep
@@ -1567,30 +1567,30 @@
and the search results are converted back to UTF-8.
The Extra options field is used to pass any additional arguments to
the grep tool.</p>
-<div class="section">
-<h4><a class="toc-backref" href="#id69" id="filtering-out-version-control-files" name="filtering-out-version-control-files">Filtering out version control files</a></h4>
+<div class="section" id="filtering-out-version-control-files">
+<h4><a class="toc-backref" href="#id69">Filtering out version control files</a></h4>
<p>When using the <em>Recurse in subfolders</em> option with a directory that's
under version control, you can set the <em>Extra options</em> field to use
grep's <tt class="docutils literal"><span class="pre">--exclude</span></tt> flag to filter out filenames.</p>
<p>SVN Example: <tt class="docutils literal"><span class="pre">--exclude=*.svn-base</span></tt></p>
<p>The --exclude argument only matches the file name part, not the path. If
you have GNU Grep >= 2.5.2 you can use the <tt class="docutils literal"><span class="pre">--exclude-dir</span></tt> argument to
-filter out CVS and hidden directories like <tt class="docutils literal"><span class="pre">.svn</span></tt>.</p>
@@ Diff output truncated at 100000 characters. @@
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4512
http://geany.svn.sourceforge.net/geany/?rev=4512&view=rev
Author: eht16
Date: 2009-12-29 18:40:55 +0000 (Tue, 29 Dec 2009)
Log Message:
-----------
Show the Find/Goto dialogs if the corresponding toolbar buttons are clicked but their text fields are not part of the toolbar (#2920807).
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/callbacks.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-12-29 18:40:39 UTC (rev 4511)
+++ trunk/ChangeLog 2009-12-29 18:40:55 UTC (rev 4512)
@@ -13,6 +13,9 @@
including scope information.
* data/filetypes.restructuredtext:
Add the default comment character sequence for reStructuredText.
+ * src/callbacks.c:
+ Show the Find/Goto dialogs if the corresponding toolbar buttons are
+ clicked but their text fields are not part of the toolbar (#2920807).
2009-12-26 Frank Lanitz <frank(a)frank.uvena.de>
Modified: trunk/src/callbacks.c
===================================================================
--- trunk/src/callbacks.c 2009-12-29 18:40:39 UTC (rev 4511)
+++ trunk/src/callbacks.c 2009-12-29 18:40:55 UTC (rev 4512)
@@ -613,6 +613,8 @@
if (search_data.search_bar)
ui_set_search_entry_background(entry, result);
}
+ else
+ on_find1_activate(NULL, NULL);
}
@@ -1316,6 +1318,8 @@
on_toolbutton_goto_entry_activate(NULL, text, NULL);
}
+ else
+ on_go_to_line_activate(NULL, NULL);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4511
http://geany.svn.sourceforge.net/geany/?rev=4511&view=rev
Author: eht16
Date: 2009-12-29 18:40:39 +0000 (Tue, 29 Dec 2009)
Log Message:
-----------
Add the default comment character sequence for reStructuredText.
Modified Paths:
--------------
trunk/ChangeLog
trunk/data/filetypes.restructuredtext
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-12-29 18:37:47 UTC (rev 4510)
+++ trunk/ChangeLog 2009-12-29 18:40:39 UTC (rev 4511)
@@ -11,6 +11,8 @@
Rewrite and extend the Python tags parsing script to use
Python's inspect module to read symbols from Python modules
including scope information.
+ * data/filetypes.restructuredtext:
+ Add the default comment character sequence for reStructuredText.
2009-12-26 Frank Lanitz <frank(a)frank.uvena.de>
Modified: trunk/data/filetypes.restructuredtext
===================================================================
--- trunk/data/filetypes.restructuredtext 2009-12-29 18:37:47 UTC (rev 4510)
+++ trunk/data/filetypes.restructuredtext 2009-12-29 18:40:39 UTC (rev 4511)
@@ -10,7 +10,7 @@
#wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
# if only single comment char is supported like # in this file, leave comment_close blank
-#comment_open=#
+comment_open=..
#comment_close=
# this is an alternative way, so multiline comments are used
#comment_open=/*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4510
http://geany.svn.sourceforge.net/geany/?rev=4510&view=rev
Author: eht16
Date: 2009-12-29 18:37:47 +0000 (Tue, 29 Dec 2009)
Log Message:
-----------
Rewrite and extend the Python tags parsing script to use Python's inspect module to read symbols from Python modules including scope information.
Modified Paths:
--------------
trunk/ChangeLog
trunk/scripts/create_py_tags.py
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-12-29 18:35:30 UTC (rev 4509)
+++ trunk/ChangeLog 2009-12-29 18:37:47 UTC (rev 4510)
@@ -7,6 +7,10 @@
* src/callbacks.c, src/plugins.c, src/plugins.h:
Fix sensitivity of the Edit->Plugin Preferences menu item
if plugins are loaded which do not provide a configuration dialog.
+ * scripts/create_py_tags.py:
+ Rewrite and extend the Python tags parsing script to use
+ Python's inspect module to read symbols from Python modules
+ including scope information.
2009-12-26 Frank Lanitz <frank(a)frank.uvena.de>
Modified: trunk/scripts/create_py_tags.py
===================================================================
--- trunk/scripts/create_py_tags.py 2009-12-29 18:35:30 UTC (rev 4509)
+++ trunk/scripts/create_py_tags.py 2009-12-29 18:37:47 UTC (rev 4510)
@@ -12,48 +12,115 @@
# them into data/python.tags (internal tagmanager format).
# If called without command line arguments, a preset of common Python libs is used.
-import sys, re, os, datetime
+import datetime
+import imp
+import inspect
+import os
+import re
+import string
+import sys
+import types
# (from tagmanager/tm_tag.c:32)
TA_NAME = '%c' % 200,
TA_TYPE = '%c' % 204
TA_ARGLIST = '%c' % 205
+TA_SCOPE = '%c' % 206
# TMTagType (tagmanager/tm_tag.h:47)
TYPE_CLASS = '%d' % 1
TYPE_FUNCTION = '%d' % 128
tag_filename = 'data/python.tags'
-matcher = re.compile('^[ \t]*(def|class)[ \t]+([a-zA-Z0-9_]+)[ \t]*(\(.*\))[:]')
+tag_regexp = '^[ \t]*(def|class)[ \t]+([a-zA-Z0-9_]+)[ \t]*(\(.*\))[:]'
class Parser:
#----------------------------------------------------------------------
def __init__(self):
- self.tags = []
+ self.tags = {}
+ self.re_matcher = re.compile(tag_regexp)
#----------------------------------------------------------------------
- def add_tag(self, tag):
+ def _get_superclass(self, c):
"""
+ Python class base-finder
+ (found on http://mail.python.org/pipermail/python-list/2002-November/173949.html)
+
+ @param c (object)
+ @return superclass (object)
+ """
+ try:
+ #~ TODO print inspect.getmro(c)
+ if type(c) == types.ClassType:
+ return c.__bases__[0].__name__
+ else:
+ return c.__mro__[1].__name__
+ except Exception, e:
+ return ''
+
+ #----------------------------------------------------------------------
+ def _formatargspec(self, args, varargs=None, varkw=None, defaults=None,
+ formatarg=str,
+ formatvarargs=lambda name: '*' + name,
+ formatvarkw=lambda name: '**' + name,
+ formatvalue=lambda value: '=' + repr(value),
+ join=inspect.joinseq):
+ """Format an argument spec from the 4 values returned by getargspec.
+
+ The first four arguments are (args, varargs, varkw, defaults). The
+ other four arguments are the corresponding optional formatting functions
+ that are called to turn names and values into strings. The ninth
+ argument is an optional function to format the sequence of arguments."""
+ specs = []
+ if defaults:
+ firstdefault = len(args) - len(defaults)
+ for i in range(len(args)):
+ spec = inspect.strseq(args[i], formatarg, join)
+ if defaults and i >= firstdefault:
+ d = defaults[i - firstdefault]
+ # this is the difference from the original formatargspec() function
+ # to use nicer names then the default repr() output
+ if hasattr(d, '__name__'):
+ d = d.__name__
+ spec = spec + formatvalue(d)
+ specs.append(spec)
+ if varargs is not None:
+ specs.append(formatvarargs(varargs))
+ if varkw is not None:
+ specs.append(formatvarkw(varkw))
+ return '(' + string.join(specs, ', ') + ')'
+
+ #----------------------------------------------------------------------
+ def _add_tag(self, obj, tag_type, parent=''):
+ """
Verify the found tag name and if it is valid, add it to the list
- @param tag (str)
+ @param obj (instance)
+ @param tag_type (str)
+ @param parent (str)
"""
- end_pos = tag.find(TA_TYPE)
- tagname = tag[0:(end_pos+1)]
+ args = ''
+ scope = ''
+ try:
+ args = apply(self._formatargspec, inspect.getargspec(obj))
+ except TypeError, KeyError:
+ pass
+ if parent:
+ if tag_type == TYPE_CLASS:
+ args = '(%s)' % parent
+ else:
+ scope = '%s%s' % (TA_SCOPE, parent)
+ tagname = obj.__name__
# check for duplicates
- if len(tagname) < 5:
+ if len(tagname) < 4:
# skip short tags
return
- for test in self.tags:
- if test.startswith(tagname):
- # check whether we find a tag line which starts with the same name,
- # include the separating TA_TYPE character to ensure we don't match
- # writelines() and write()
- return
- self.tags.append(tag)
+ tag = '%s%s%s%s%s%s\n' % (tagname, TA_TYPE, tag_type, TA_ARGLIST, args, scope)
+ if not tagname in self.tags:
+ self.tags[tagname] = tag
#----------------------------------------------------------------------
def process_file(self, filename):
@@ -63,46 +130,66 @@
@param filename (str)
"""
try:
- fp = open(filename, 'r')
- except:
- sys.stderr.write('Cannot open %s\n' % filename)
- return
- for line in fp:
- m = matcher.match(line)
- if m:
- tag_type_str, name, args = m.groups()
- if not name or name[0] == '_':
+ module = imp.load_source('tags_file_module', filename)
+ except Exception, e:
+ module = None
+
+ if module:
+ symbols = inspect.getmembers(module, callable)
+ for obj_name, obj in symbols:
+ try:
+ name = obj.__name__
+ except AttributeError:
+ name = obj_name
+ if not name or name.startswith('_'):
# skip non-public tags
continue;
- if tag_type_str == 'class':
- tag_type = TYPE_CLASS
- else:
- tag_type = TYPE_FUNCTION
- args = args.strip()
- # tagnameTA_TYPEtypeTA_ARGLISTarglist\n
- s = name + TA_TYPE + tag_type + TA_ARGLIST + args + '\n'
- self.add_tag(s)
- #~ # maybe for later use, with a more sophisticated algo to retrieve the API
- #~ scope = ''
- #~ return_value = ''
- #~ # tagnameTA_TYPEtypeTA_ARGLISTarglistTA_SCOPEscopeTA_VARTYPEreturn_value\n
- #~ s = name + TA_TYPE + type + TA_ARGLIST + args + TA_SCOPE + scope + TA_VARTYPE + return_value + '\n'
+ if inspect.isfunction(obj):
+ self._add_tag(obj, TYPE_FUNCTION)
+ elif inspect.isclass(obj):
+ self._add_tag(obj, TYPE_CLASS, self._get_superclass(obj))
+ methods = inspect.getmembers(obj, inspect.ismethod)
+ for m_name, m_obj in methods:
+ # skip non-public tags
+ if m_name.startswith('_') or not inspect.ismethod(m_obj):
+ continue
+ self._add_tag(m_obj, TYPE_FUNCTION, name)
+ else:
+ # plain regular expression based parsing
+ fp = open(filename)
+ for line in fp:
+ m = self.re_matcher.match(line)
+ if m:
+ tag_type_str, tagname, args = m.groups()
+ if not tagname or tagname.startswith('_'):
+ # skip non-public tags
+ continue;
+ if tag_type_str == 'class':
+ tag_type = TYPE_CLASS
+ else:
+ tag_type = TYPE_FUNCTION
+ args = args.strip()
+ tag = '%s%s%s%s%s\n' % (tagname, TA_TYPE, tag_type, TA_ARGLIST, args)
+ if not tagname in self.tags:
+ self.tags[tagname] = tag
+ fp.close()
#----------------------------------------------------------------------
- def tags_to_file(self, filename):
+ def write_to_file(self, filename):
"""
Sort the found tags and write them into the file specified by filename
@param filename (str)
"""
+ result = self.tags.values()
# sort the tags
- self.tags.sort()
+ result.sort()
# write them
fp = open(filename, 'wb')
fp.write(
'# format=tagmanager - Automatically generated file - do not edit (created on %s)\n' % \
datetime.datetime.now().ctime())
- for s in self.tags:
+ for s in result:
if not s == '\n': # skip empty lines
fp.write(s)
fp.close()
@@ -151,7 +238,7 @@
for filename in args:
parser.process_file(filename)
- parser.tags_to_file(tag_filename)
+ parser.write_to_file(tag_filename)
if __name__ == '__main__':
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4508
http://geany.svn.sourceforge.net/geany/?rev=4508&view=rev
Author: eht16
Date: 2009-12-29 18:23:54 +0000 (Tue, 29 Dec 2009)
Log Message:
-----------
Add editor_get_eol_char_name(), editor_get_eol_char_len() and editor_get_eol_char() to the plugin API.
Modified Paths:
--------------
trunk/ChangeLog
trunk/plugins/geanyfunctions.h
trunk/src/editor.c
trunk/src/plugindata.h
trunk/src/plugins.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-12-26 14:13:35 UTC (rev 4507)
+++ trunk/ChangeLog 2009-12-29 18:23:54 UTC (rev 4508)
@@ -1,3 +1,11 @@
+2009-12-29 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
+
+ * src/editor.c, src/plugins.c, src/plugindata.h,
+ plugins/geanyfunctions.h:
+ Add editor_get_eol_char_name(), editor_get_eol_char_len() and
+ editor_get_eol_char() to the plugin API.
+
+
2009-12-26 Frank Lanitz <frank(a)frank.uvena.de>
* doc/plugins.dox:
Modified: trunk/plugins/geanyfunctions.h
===================================================================
--- trunk/plugins/geanyfunctions.h 2009-12-26 14:13:35 UTC (rev 4507)
+++ trunk/plugins/geanyfunctions.h 2009-12-29 18:23:54 UTC (rev 4508)
@@ -80,6 +80,12 @@
geany_functions->p_editor->set_indent_type
#define editor_get_word_at_pos \
geany_functions->p_editor->get_word_at_pos
+#define editor_get_eol_char_name \
+ geany_functions->p_editor->get_eol_char_name
+#define editor_get_eol_char_len \
+ geany_functions->p_editor->get_eol_char_len
+#define editor_get_eol_char \
+ geany_functions->p_editor->get_eol_char
#define scintilla_send_message \
geany_functions->p_scintilla->send_message
#define scintilla_new \
Modified: trunk/src/editor.c
===================================================================
--- trunk/src/editor.c 2009-12-26 14:13:35 UTC (rev 4507)
+++ trunk/src/editor.c 2009-12-29 18:23:54 UTC (rev 4508)
@@ -4254,6 +4254,16 @@
}
+/**
+ * Retrieves the localized name (for displaying) of the used end of line characters
+ * (LF, CR/LF, CR) in the given editor.
+ * If @a editor is @c NULL, the default end of line characters are used.
+ *
+ * @param editor The editor to operate on, or @c NULL to query the default value.
+ * @return The name of the end of line characters.
+ *
+ * @since 0.19
+ */
const gchar *editor_get_eol_char_name(GeanyEditor *editor)
{
gint mode = file_prefs.default_eol_character;
@@ -4265,7 +4275,16 @@
}
-/* returns the end-of-line character(s) length of the specified editor */
+/**
+ * Retrieves the length of the used end of line characters (LF, CR/LF, CR) in the given editor.
+ * If @a editor is @c NULL, the default end of line characters are used.
+ * The returned value is 1 for CR and LF and 2 for CR/LF.
+ *
+ * @param editor The editor to operate on, or @c NULL to query the default value.
+ * @return The length of the end of line characters.
+ *
+ * @since 0.19
+ */
gint editor_get_eol_char_len(GeanyEditor *editor)
{
gint mode = file_prefs.default_eol_character;
@@ -4281,7 +4300,16 @@
}
-/* returns the end-of-line character(s) of the specified editor */
+/**
+ * Retrieves the used end of line characters (LF, CR/LF, CR) in the given editor.
+ * If @a editor is @c NULL, the default end of line characters are used.
+ * The returned value is either "\n", "\r\n" or "\r".
+ *
+ * @param editor The editor to operate on, or @c NULL to query the default value.
+ * @return The end of line characters.
+ *
+ * @since 0.19
+ */
const gchar *editor_get_eol_char(GeanyEditor *editor)
{
gint mode = file_prefs.default_eol_character;
Modified: trunk/src/plugindata.h
===================================================================
--- trunk/src/plugindata.h 2009-12-26 14:13:35 UTC (rev 4507)
+++ trunk/src/plugindata.h 2009-12-29 18:23:54 UTC (rev 4508)
@@ -50,7 +50,7 @@
enum {
/** The Application Programming Interface (API) version, incremented
* whenever any plugin data types are modified or appended to. */
- GEANY_API_VERSION = 165,
+ GEANY_API_VERSION = 166,
/** The Application Binary Interface (ABI) version, incremented whenever
* existing fields in the plugin data types have to be changed or reordered. */
@@ -559,8 +559,9 @@
void (*set_indent_type)(struct GeanyEditor *editor, GeanyIndentType type);
gchar* (*get_word_at_pos) (struct GeanyEditor *editor, gint pos, const gchar *wordchars);
- /* Remember to convert any GeanyDocument or ScintillaObject pointers in any
- * appended functions to GeanyEditor pointers. */
+ const gchar* (*get_eol_char_name) (struct GeanyEditor *editor);
+ gint (*get_eol_char_len) (struct GeanyEditor *editor);
+ const gchar* (*get_eol_char) (struct GeanyEditor *editor);
}
EditorFuncs;
Modified: trunk/src/plugins.c
===================================================================
--- trunk/src/plugins.c 2009-12-26 14:13:35 UTC (rev 4507)
+++ trunk/src/plugins.c 2009-12-29 18:23:54 UTC (rev 4508)
@@ -117,7 +117,10 @@
&editor_indicator_set_on_line,
&editor_indicator_clear,
&editor_set_indent_type,
- &editor_get_word_at_pos
+ &editor_get_word_at_pos,
+ &editor_get_eol_char_name,
+ &editor_get_eol_char_len,
+ &editor_get_eol_char
};
static ScintillaFuncs scintilla_funcs = {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.