From b4f33106b1879f41b6c184ab74e267987091bd72 Mon Sep 17 00:00:00 2001
From: Nick Treleaven
Contents
+of this program, and also in the chapter GNU General Public License. +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 @@ -505,56 +505,56 @@ Pascal, and others
You can obtain Geany from http://www.geany.org/ or perhaps also from +
You can obtain Geany from http://www.geany.org/ or perhaps also from your distribution. For a list of available packages, please see -http://www.geany.org/Download/ThirdPartyPackages.
+http://www.geany.org/Download/ThirdPartyPackages.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, GNU General Public License.
+code of this program and in the chapter, GNU General Public License.The included Scintilla library (found in the subdirectory -scintilla/) has its own license, which can be found in the chapter, -License for Scintilla and SciTE.
+scintilla/) has its own license, which can be found in the chapter, +License for Scintilla and SciTE.This documentation is available in HTML and text formats. -The latest version can always be found at http://www.geany.org/.
-If you want to contribute to it, see Contributing to this document.
+The latest version can always be found at http://www.geany.org/. +If you want to contribute to it, see Contributing to this document.
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.
There are many binary packages available. For an up-to-date but maybe -incomplete list see http://www.geany.org/Download/ThirdPartyPackages.
+incomplete list see http://www.geany.org/Download/ThirdPartyPackages.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 http://www.gtk.org, but very often +All these files are available at http://www.gtk.org, but very often your distro will provide development packages to save the trouble of building these yourself.
Furthermore you need, of course, a C and C++ compiler. The GNU versions of these tools are recommended.
-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.
Then run the following commands:
@@ -567,8 +567,8 @@ $ make % make installThe 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. @@ -576,7 +576,7 @@ The advantage of the Waf build system over the Autotools based build system is t 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 Waf Cache for details. +unchanged built files and only compile the changed code again. See Waf Cache for details. To build Geany with Waf as run:
$ ./waf configure @@ -586,13 +586,13 @@ $ ./waf build% ./waf install--Waf Cache
++-Waf Cache
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 WAFCACHE. +using the environment variable WAFCACHE. A possible location of the cache directory could be ~/.cache/waf. In order to make use of this, you first need to create this directory:
@@ -603,11 +603,11 @@ Bash and should be adjusted to your used shell):export WAFCACHE=/home/username/.cache/waf-Remember to replace username with your actual username.
+Remember to replace username with your actual username.
More information about the Waf cache feature are available at -http://code.google.com/p/waf/wiki/CacheObjectFiles.
--Cleaning the Cache
+http://code.google.com/p/waf/wiki/CacheObjectFiles. ++Cleaning the Cache
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 @@ -618,12 +618,12 @@ cached files:
$ find /home/username/.cache/waf -mtime +14 -exec rm {} \;This will delete all files in the cache directory which are older than 14 days.
-For details about the find command and its options, check its manual page.
+For details about the find command and its options, check its manual page.
-Custom installation
++-Custom installation
The configure script supports several common options, for a detailed list, type:
@@ -637,40 +637,40 @@ $ ./configure --helpYou may also want to read the INSTALL file for advanced installation options.
-
- See also Compile-time options.
+- See also Compile-time options.
-Dynamic linking loader support and VTE
++-Dynamic linking loader support and VTE
In the case that your system lacks dynamic linking loader support, you -probably want to pass the option --disable-vte to the configure +probably want to pass the option --disable-vte to the configure script. This prevents compiling Geany with dynamic linking loader -support for automatically loading libvte.so.4 if available.
+support for automatically loading libvte.so.4 if available.--Build problems
++Build problems
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.
--Installation prefix
++Installation prefix
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.
-Use the --print-prefix option to Geany to check - see Command line +
Use the --print-prefix option to Geany to check - see Command line options. The first path is the prefix.
-This is commonly /usr if you installed from a binary package, or -/usr/local if you build from source.
+This is commonly /usr if you installed from a binary package, or +/usr/local if you build from source.
-Usage
--Getting started
++Usage
++-Getting started
You can start Geany in the following ways:
From the Desktop Environment menu:
@@ -686,8 +686,8 @@ Return:-The Geany workspace
++-The Geany workspace
The Geany window is shown in the following figure:
![]()
The workspace has the following parts:
@@ -715,8 +715,8 @@ Return:The sizes of the sidebar and message window can be adjusted by dragging the dividers.
-Command line options
++Command line options
@@ -745,7 +745,7 @@ file foo.bar and place the cursor in line 7. --config=directory_name Use an alternate configuration directory. The default configuration directory is ~/.config/geany/ and that -is where geany.conf and other configuration files +is where geany.conf and other configuration files reside. none @@ -756,7 +756,7 @@ for snippets configuration).-g --generate-tags Generate a global tags file (see -Generating a global tags file). +Generating a global tags file).@@ -830,7 +830,7 @@ geany --socket-file=/tmp/geany-sock-2 -P --no-preprocessing @@ -812,7 +812,7 @@ authors to detect installation paths.--no-terminal 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 libvte.so.4 installed, +at startup. If you do not have libvte.so.4 installed, then terminal-support is automatically disabled. Only available if Geany was compiled with support for VTE. --vte-lib Specify explicitly the path including filename or only the filename to the VTE library, e.g. -/usr/lib/libvte.so or libvte.so. This option is +/usr/lib/libvte.so or libvte.so. This option is only needed when the auto-detection does not work. Only available if Geany was compiled with support for VTE. @@ -869,13 +869,13 @@ geany some_file.foo:55:4Geany supports all generic GTK options, a list is available on the help screen.
--General
--Startup
++General
++-Startup
At startup, Geany loads all files from the last time Geany was launched. You can disable this feature in the preferences dialog -(see General Startup preferences). If you specify some +(see General Startup preferences). 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 @@ -886,8 +886,8 @@ load files from the last session. To run a second instance of Geany, do not specify any filenames on the command-line, or disable opening files in a running instance using the appropriate command line option.
-Opening files from the command-line in a running instance
++-Opening files from the command-line in a running instance
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 @@ -896,22 +896,22 @@ such as a file manager.
geany some_file.foo:55:4-This would open the file some_file.foo with the cursor on line 55, +
This would open the file some_file.foo with the cursor on line 55, column 4.
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 Command line options.
+called Command line options.-Virtual terminal emulator widget (VTE)
-If you have installed libvte.so on your system, it is loaded +
+-Virtual terminal emulator widget (VTE)
+If you have installed libvte.so on your system, it is loaded automatically by Geany, and you will have a terminal widget in the notebook at the bottom.
-If Geany cannot find any libvte.so at startup, the terminal widget +
If Geany cannot find any libvte.so 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 Command line options.
+see the section called Command line options.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 @@ -928,26 +928,26 @@ should be found in the manual page of the shell. For zsh and bash you can use the argument --login.
Note
-Geany tries to load libvte.so. If this fails, it tries to load +
Geany tries to load libvte.so. 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.
It could be, that the library is called something else than -libvte.so (e.g. on FreeBSD 6.0 it is called libvte.so.8). If so +libvte.so (e.g. on FreeBSD 6.0 it is called libvte.so.8). If so please set a link to the correct file (as root):
# ln -s /usr/lib/libvte.so.X /usr/lib/libvte.soObviously, you have to adjust the paths and set X to the number of your -libvte.so.
+libvte.so.You can also specify the filename of the VTE library to use on the command -line (see the section called Command line options) or at compile time +line (see the section called Command line options) or at compile time by specifying the command line option --with-vte-module-path to ./configure.
--Defining own widget styles using .gtkrc-2.0
++Defining own widget styles using .gtkrc-2.0
You can define your widget style for many of Geany's GUI parts. To do this, just edit your .gtkrc-2.0 (usually found in your home directory on UNIX-like systems and in the etc subdirectory of your @@ -987,10 +987,10 @@ widget "GeanyPrefsDialog" style "geanyStyle"
-Documents
--Switching between documents
++-Documents
++Switching between documents
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 @@ -998,14 +998,14 @@ order. Its is not alphabetical as shown in the documents list (regardless of whether or not editor tabs are visible).
The tabs can be positioned at the top, bottom, left, or right of the main editing window, by a selection in the interface preferences.
-See the Notebook tab keybindings section for useful +
See the Notebook tab keybindings section for useful shortcuts including for Most-Recently-Used document switching.
-Character sets and Unicode Byte-Order-Mark (BOM)
--Using character sets
++Character sets and Unicode Byte-Order-Mark (BOM)
++-Using character sets
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, @@ -1051,8 +1051,8 @@ encoding when opening the file.
-In-file encoding specification
++In-file encoding specification
Geany detects meta tags of HTML files which contain charset information like:
@@ -1079,7 +1079,7 @@ Then you simply add such a line to the file and Geany will open it correctly the next time.Since Geany 0.15 you can also use lines which match the regular expression used to find the encoding string: -coding[\t ]*[:=][\t ]*([a-z0-9-]+)[\t ]*
+coding[\t ]*[:=][\t ]*([a-z0-9-]+)[\t ]*-Note
These specifications must be in the first 512 bytes of the file. @@ -1094,8 +1094,8 @@ Anything after the first 512 bytes will not be recognized.
# coding: ISO-8859-15--Special encoding "None"
++-Special encoding "None"
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 @@ -1104,10 +1104,10 @@ detection and open the file properly at least until the occurrence of the first NULL-byte. Using this encoding opens the file as it is without any character conversion.
-Unicode Byte-Order-Mark (BOM)
++Unicode Byte-Order-Mark (BOM)
Furthermore, Geany detects a Unicode Byte Order Mark (see -http://en.wikipedia.org/wiki/Byte_Order_Mark for details). Of course, +http://en.wikipedia.org/wiki/Byte_Order_Mark 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 @@ -1127,10 +1127,10 @@ safely ignore it.
-Editing
--Folding
++Editing
++-Folding
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 @@ -1144,7 +1144,7 @@ fold points.
Note
You can customize the folding icon and line styles - see the -filetypes.common Folding Settings.
+filetypes.common Folding Settings.If you don't like it or don't need it at all, you can simply disable folding support completely in the preferences dialog.
@@ -1159,8 +1159,8 @@ key while clicking on a fold symbol. That means, if the "Fold/Unfold all children of a fold point" option is enabled, pressing Shift will disable it for this click and vice versa.-Column mode editing (rectangular selections)
++-Column mode editing (rectangular selections)
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 @@ -1169,18 +1169,18 @@ Once a rectangular selection exists you can start editing the text within this selection and the modifications will be done for every line in the selection.
-Drag and drop of text
++-Drag and drop of text
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.
-Indentation
++-Indentation
Geany allows each document to indent either with a tab character or -multiple spaces. The default indent mode is set in the Editor Features +multiple spaces. The default indent mode is set in the Editor Features preferences (see the link for more information). But this can be overridden using either the Document->Indent Type menu, or by using the Detect from file indentation preference. When enabled, @@ -1198,8 +1198,8 @@ as follows:
on a line.-Auto-indentation
++-Auto-indentation
When enabled, auto-indentation happens when pressing Enter 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.
@@ -1219,8 +1219,8 @@ previous line. match the indentation of the line with the opening brace.-Bookmarks
++-Bookmarks
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.
@@ -1237,14 +1237,14 @@ together with the commands to switch from one editor tab to another (Ctrl-PgUp/PgDn and Ctrl-Tab) provides a particularly fast way to navigate around multiple files.