SF.net SVN: geany: [401] trunk

eht16 at users.sourceforge.net eht16 at xxxxx
Sat Jun 3 17:14:15 UTC 2006


Revision: 401
Author:   eht16
Date:     2006-06-03 10:14:09 -0700 (Sat, 03 Jun 2006)
ViewCVS:  http://svn.sourceforge.net/geany/?rev=401&view=rev

Log Message:
-----------
Added documentation for filetype definition files and definable keyboard shortcuts.

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/doc/geany.docbook
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2006-06-03 17:06:53 UTC (rev 400)
+++ trunk/ChangeLog	2006-06-03 17:14:09 UTC (rev 401)
@@ -1,6 +1,8 @@
 2006-06-03  Enrico Troeger  <enrico.troeger at uvena.de>
 
  * src/sci_cb.c: Fixed bug in auto completion of constructs.
+ * doc/geany.docbook: Added documentation for filetype definition files
+                      and definable keyboard shortcuts.
 
 
 2006-06-03  Nick Treleaven  <nick.treleaven at btinternet.com>

Modified: trunk/doc/geany.docbook
===================================================================
--- trunk/doc/geany.docbook	2006-06-03 17:06:53 UTC (rev 400)
+++ trunk/doc/geany.docbook	2006-06-03 17:14:09 UTC (rev 401)
@@ -845,11 +845,291 @@
 				</table>
 			</para>
 		</section>
-		<section>
-			<title>File types</title>
+		<section id="filetypes">
+			<title>Filetype definition files</title>
 			<para>
-				should be written
+				All colour definitions and other filetype specific settings are stored in the
+				filetype definition files. Those settings are colours for syntax highlighting,
+				general settings like comment characters or word delimiter characters as well as
+				compiler and linker settings.
 			</para>
+			<para>
+				The files can be found in <filename>$prefix/share/geany</filename> and are called
+				<filename>filetypes.$ext</filename>. Where $prefix is the path where
+				<application>&app;</application> is	installed, commonly
+				<filename>/usr/local</filename>filename>, and $ext is the name of the filetype.
+				There is for every filetype a corresponding defintion file. There is one exception:
+				<filename>filetypes.common</filename> - in this file are general settings, which
+				are specific to a certain filetype. It is not recommend to edit this files, because
+				while updating Geany the will be overridden.
+			</para>
+			<para>
+				To change the settings, copy a file from <filename>$prefix/share/geany</filename>
+				to the subdirectory <filename>filedefs</filename> in your configuration directory
+				(usually <filename>~/.geany/</filename>).
+			</para>
+			<para>
+				 For example:
+				 <screen><prompt>%</prompt> <userinput><command>cp /usr/local/share/geany/filetypes.c /home/username/.geany/filedefs/</command></userinput></screen>
+				 Then you can edit the file and the changes are also available after an update of
+				 <application>&app;</application> because they reside in your configuration
+				 directory. Alternatively, you can create a file
+				 <filename>~/.geany/filedefs/filetypes.X</filename> and add only these settings you
+				 want to change. All missing settings will be read from the corresponding global
+				 defintion file in <filename>$prefix/share/geany</filename>.
+			</para>
+			<section id="filetypes_format">
+				<title>Format</title>
+				<section>
+					<title>Section [styling]</title>
+					<para>
+						In this section the colours for syntax highlighting are defined.
+						The format is always:
+						<constant>key=forground_colour;background_colour;bold;italic</constant>
+					</para>
+					<para>
+						Colours have to be specified as RGB hex values introduced by 0x. For
+						example red is 0xff0000, blue is 0x0000ff. The values are case-insensitive,
+						but it is a good idea to use small letters. Bold and italic are flags and
+						should only be "true" or "false". If their value is something other than
+						"true" or "false", "false" is assumed.
+					</para>
+				</section>
+				<section>
+					<title>Section [keywords]</title>
+					<para>
+						This section contains keys for different keyword lists specific	to the
+						filetype. Some filetypes do not support keywords, so adding a new key will
+						not work. You only could add or remove keywords to/from the list.
+						<important><para>The keywords list must be in one line without line ending
+						characters.</para></important>
+					</para>
+				</section>
+				<section>
+					<title>Section [settings]</title>
+					<para>
+						<table frame="all">
+							<title>General settings</title>
+							<tgroup cols="3">
+								<?dbhtml cellpadding="4" ?>
+								<?dbhtml cellspacing="0" ?>
+								<thead>
+									<row>
+										<entry>Key</entry>
+										<entry>Description</entry>
+										<entry>Example</entry>
+									</row>
+								</thead>
+								<tbody>
+									<row>
+										<entry>wordchars</entry>
+										<entry>Word delimiting characters. These characters define
+											   word boundaries.
+										</entry>
+										<entry>(look at sourcecode)</entry>
+									</row>
+									<row>
+										<entry>comment_open</entry>
+										<entry>A character or string which is used to comment code.
+											   If you want to use multiline comments, set also
+											   comment_close, otherwise leave it empty.
+										</entry>
+										<entry>comment_open=/*</entry>
+									</row>
+									<row>
+										<entry>comment_close</entry>
+										<entry>If multiline comments are used, this is the character
+											   or string to close the comment.
+										</entry>
+										<entry>comment_close=*/</entry>
+									</row>
+									<row>
+										<entry>comment_use_indent</entry>
+										<entry>Set this to false if a comment character or string
+											   should start at column 0 of a line. If set to true
+											   it uses any indention of the line.
+											   <para><example><title>Comment indention</title>
+											   <para>
+											   comment_use_indent=true would generate this if a line
+											   if commented(e.g. with
+											   <keycombo><keycap>Ctrl</keycap><keycap>D</keycap></keycombo>)
+											   <programlisting>	#command_example();</programlisting>
+											   comment_use_indent=false would generate this if a line
+											   if commented(e.g. with
+											   <keycombo><keycap>Ctrl</keycap><keycap>D</keycap></keycombo>)
+											   <programlisting>#command_example();</programlisting>
+											   </para></example></para>
+											   <note><para>
+													This setting works only for single line comments.
+											   </para></note>
+										</entry>
+										<entry>comment_use_indent=true</entry>
+									</row>
+								</tbody>
+							</tgroup>
+						</table>
+					</para>
+				</section>
+				<section>
+					<title>Section [build_settings]</title>
+					<para>
+						<table frame="all">
+							<title>Build settings</title>
+							<tgroup cols="3">
+								<?dbhtml cellpadding="4" ?>
+								<?dbhtml cellspacing="0" ?>
+								<thead>
+									<row>
+										<entry>Key</entry>
+										<entry>Description</entry>
+										<entry>Example</entry>
+									</row>
+								</thead>
+								<tbody>
+									<row>
+										<entry>compiler</entry>
+										<entry>
+											   This item specifies the command to compile source code
+											   files. But it is also possible to use it with
+											   interpreted languages like Perl or Python. With these
+											   filetypes you can use this option as a kind of syntax
+											   parser, which does his output in the compiler message
+											   window.
+											<para>You should quote the filename to support also
+											   filenames with spaces. The following wildcards for
+											   filenames are available:
+											</para>
+											<para>
+											   <itemizedlist>
+												<listitem><para>
+													%f - complete filename without path
+												</para></listitem>
+												<listitem><para>
+													%e - filename without path and without extension
+												</para></listitem>
+											   </itemizedlist>
+											</para>
+										</entry>
+										<entry>compiler=gcc -Wall -c "%f"</entry>
+									</row>
+									<row>
+										<entry>linker</entry>
+										<entry>This item specifies the command to link the file.
+											   If the file is not already compiled, it will be
+											   compiled while linking. The -o option is
+											   automatically added by
+											   <application>&app;</application>. This item works
+											   well with the gcc, but may be problemtic with other
+											   compilers(resp. linker).
+										</entry>
+										<entry>linker=gcc -Wall "%f"</entry>
+									</row>
+									<row>
+										<entry>run_cmd</entry>
+										<entry>Use this item to execute your file. It has to been
+											   built. Use the %e wildcard to have only the name of
+											   the executable(i.e. without extension) or use the %f
+											   wildcard if you need the complete filename, e.g.
+											   for shell scripts.
+										</entry>
+										<entry>run_cmd="./%e"</entry>
+									</row>
+								</tbody>
+							</tgroup>
+						</table>
+					</para>
+				</section>
+			</section>
+			<section id="filetypes_common">
+				<title>Special file filetypes.common</title>
+				<para>There is a special filetype definition file called
+					  <filename>filetypes.common</filename>. In this file are some general none
+					  filetype-specific settings defined.
+				</para>
+				<para>
+					<table frame="all">
+						<title>General settings</title>
+						<tgroup cols="3">
+							<?dbhtml cellpadding="4" ?>
+							<?dbhtml cellspacing="0" ?>
+							<thead>
+								<row>
+									<entry>Key</entry>
+									<entry>Description</entry>
+									<entry>Example</entry>
+								</row>
+							</thead>
+							<tbody>
+								<row>
+									<entry>default</entry>
+									<entry>The default style for text(e.g. for files without
+										   filetype). For the detailed format, please see above
+										   "Section [styling]".
+									</entry>
+									<entry>default=0x000000;0xffffff;false;false</entry>
+								</row>
+								<row>
+									<entry>selection</entry>
+									<entry>The style for colouring selections. Only foreground and
+										   background colour are interpreted.
+									</entry>
+									<entry>selection=0xc0c0c0;0x00007F;false;false</entry>
+								</row>
+								<row>
+									<entry>brace_good</entry>
+									<entry>The style for brace highlighting. It is used if a
+										   matching brace was found.
+									</entry>
+									<entry>brace_good=0xff0000;0xFFFFFF;true;false</entry>
+								</row>
+								<row>
+									<entry>brace_bad</entry>
+									<entry>The style for brace highlighting. It is used if no
+										   matching brace was found.
+									</entry>
+									<entry>brace_bad=0x0000ff;0xFFFFFF;true;false</entry>
+								</row>
+								<row>
+									<entry>current_line</entry>
+									<entry>The style for colouring the background of the current
+										   line. Only the second argument is interpreted.
+									</entry>
+									<entry>current_line=0x0;0xE5E5E5;false;false</entry>
+								</row>
+								<row>
+									<entry>folding_style</entry>
+									<entry>The style of folding icons. Only first and second
+										   arguments are used.
+										   <para>
+											Valid values for the first argument areare:
+											<itemizedlist>
+												<listitem><para>
+													1 - for boxes
+												</para></listitem>
+												<listitem><para>
+													2 - for circles
+												</para></listitem>
+											</itemizedlist>
+										   </para>
+										   <para>
+											Valid values for the second argument areare:
+											<itemizedlist>
+												<listitem><para>
+													1 - for straight lines
+												</para></listitem>
+												<listitem><para>
+													2 - for curved lines
+												</para></listitem>
+											</itemizedlist>
+										   </para>
+									</entry>
+									<entry>folding_style=1;1;false;false</entry>
+								</row>
+							</tbody>
+						</tgroup>
+					</table>
+				</para>
+			</section>
 		</section>
 		<section>
 			<title>Templates</title>


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Commits mailing list