2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-09-29 07:42:13 +00:00
|
|
|
|
Geany 0.9
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Enrico Tröger
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Nick Treleaven
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Frank Lanitz
|
|
|
|
|
|
|
|
|
|
Copyright <20> 2005-2006
|
|
|
|
|
|
|
|
|
|
This document 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
|
2006-08-09 17:18:25 +00:00
|
|
|
|
program and see Appendix B.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
Table of Contents
|
|
|
|
|
1. Introduction
|
|
|
|
|
|
2006-04-27 17:53:06 +00:00
|
|
|
|
1.1. About Geany
|
|
|
|
|
1.2. About this document
|
2006-06-04 13:10:16 +00:00
|
|
|
|
1.3. Where to get it
|
2006-04-27 17:53:06 +00:00
|
|
|
|
1.4. License
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
2. Installation
|
|
|
|
|
|
|
|
|
|
2.1. Requirements
|
2006-08-09 17:18:25 +00:00
|
|
|
|
2.2. Source compilation
|
|
|
|
|
2.3. Binary packages
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
2.3.1. Fedora
|
|
|
|
|
2.3.2. Debian
|
|
|
|
|
2.3.3. SuSE
|
2006-04-27 17:53:06 +00:00
|
|
|
|
2.3.4. Gentoo
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
3. Usage
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.1. Getting started
|
2006-06-04 13:10:16 +00:00
|
|
|
|
3.2. Command line options
|
2005-11-22 12:26:26 +00:00
|
|
|
|
3.3. General
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
|
|
|
|
3.3.1. Startup
|
2006-09-29 07:42:13 +00:00
|
|
|
|
3.3.2. Opening files from the command-line in a
|
|
|
|
|
running instance
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.3.3. Virtual terminal emulator widget (VTE)
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.4. Character sets and Unicode Byte-Order-Mark (BOM)
|
|
|
|
|
3.5. Search, replace and go to
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.5.1. Find
|
|
|
|
|
3.5.2. Find usage
|
|
|
|
|
3.5.3. Find in files
|
|
|
|
|
3.5.4. Replace
|
|
|
|
|
3.5.5. Go to tag definition
|
|
|
|
|
3.5.6. Go to tag declaration
|
|
|
|
|
3.5.7. Go to line
|
|
|
|
|
3.5.8. Regular expressions
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.6. Preferences
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.6.1. Compile time options
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7. Build system
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.1. Compile
|
|
|
|
|
3.7.2. Build
|
|
|
|
|
3.7.3. Make all
|
|
|
|
|
3.7.4. Make custom target
|
|
|
|
|
3.7.5. Make object
|
|
|
|
|
3.7.6. Execute
|
|
|
|
|
3.7.7. Set Includes and Arguments
|
|
|
|
|
3.7.8. Indicators
|
|
|
|
|
3.7.9. File type configuration settings
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.8. Printing support
|
|
|
|
|
3.9. Keybindings
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4. Configuration files
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1. Filetype definition files
|
|
|
|
|
|
|
|
|
|
4.1.1. Format
|
|
|
|
|
4.1.2. Special file filetypes.common
|
|
|
|
|
|
|
|
|
|
4.2. Filetype extensions
|
|
|
|
|
4.3. Templates
|
|
|
|
|
|
|
|
|
|
A. Scintilla keyboard commands
|
|
|
|
|
|
|
|
|
|
A.1. Keyboard commands
|
|
|
|
|
|
|
|
|
|
B. GNU General Public License
|
|
|
|
|
|
|
|
|
|
B.1. Preamble
|
|
|
|
|
B.2. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND
|
2006-07-01 17:41:46 +00:00
|
|
|
|
MODIFICATION
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.1. Section 0
|
|
|
|
|
B.2.2. Section 1
|
|
|
|
|
B.2.3. Section 2
|
|
|
|
|
B.2.4. Section 3
|
|
|
|
|
B.2.5. Section 4
|
|
|
|
|
B.2.6. Section 5
|
|
|
|
|
B.2.7. Section 6
|
|
|
|
|
B.2.8. Section 7
|
|
|
|
|
B.2.9. Section 8
|
|
|
|
|
B.2.10. Section 9
|
|
|
|
|
B.2.11. Section 10
|
|
|
|
|
B.2.12. Section 11 NO WARRANTY
|
|
|
|
|
B.2.13. Section 12
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.3. How to Apply These Terms to Your New Programs
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
C. License for Scintilla and SciTE
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
List of Tables
|
2006-06-04 13:10:16 +00:00
|
|
|
|
3-1. Command line Options
|
2005-11-22 12:26:26 +00:00
|
|
|
|
3-2. Regular expressions
|
2005-12-21 19:42:55 +00:00
|
|
|
|
3-3. Compile time options
|
2006-06-04 13:10:16 +00:00
|
|
|
|
3-4. Keybindings action table
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4-1. General settings
|
|
|
|
|
4-2. Build settings
|
|
|
|
|
4-3. General settings
|
|
|
|
|
4-4. Template wildcards
|
|
|
|
|
A-1. Scintilla keyboard commands
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
List of Figures
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3-1. Find dialog
|
2005-11-22 12:26:26 +00:00
|
|
|
|
3-2. General tab in preferences dialog
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3-3. Interface tab in preferences dialog
|
|
|
|
|
3-4. Toolbar tab in preferences dialog
|
|
|
|
|
3-5. Editor tab in preferences dialog
|
|
|
|
|
3-6. Tools tab in preferences dialog
|
|
|
|
|
3-7. Template tab in preferences dialog
|
|
|
|
|
3-8. Keybinding tab in preferences dialog
|
|
|
|
|
3-9. VTE tab in preferences dialog
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
List of Examples
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4-1. Comment indentation
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
Chapter 1. Introduction
|
|
|
|
|
|
2006-04-27 17:53:06 +00:00
|
|
|
|
1.1. About Geany
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Geany is a small and lightweight Integrated Development
|
|
|
|
|
Environment. It was developed to provide a small and fast IDE,
|
2005-11-22 12:26:26 +00:00
|
|
|
|
which has only a few dependencies from other packages. Another
|
|
|
|
|
goal was to be as independent as possible from a special
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Desktop Environment like KDE or GNOME, so Geany only requires
|
|
|
|
|
the GTK2 toolkit and therefore you only need the GTK2 runtime
|
|
|
|
|
libraries installed to run it.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
The basic features of Geany are:
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
* Syntax highlighting
|
|
|
|
|
* Code completion
|
|
|
|
|
* Auto completion of often used constructs like if, for and
|
2005-11-22 12:26:26 +00:00
|
|
|
|
while
|
2006-06-04 13:10:16 +00:00
|
|
|
|
* Auto completion of XML and HTML tags
|
|
|
|
|
* Call tips
|
|
|
|
|
* Many supported filetypes like C, Java, PHP, HTML, Python,
|
2005-11-22 12:26:26 +00:00
|
|
|
|
Perl, Pascal
|
2006-06-04 13:10:16 +00:00
|
|
|
|
* Tag/Symbol lists
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-04-27 17:53:06 +00:00
|
|
|
|
1.2. About this document
|
|
|
|
|
|
|
|
|
|
This documentation is available in various formats like HTML,
|
|
|
|
|
text and PDF. The latest version is always available at
|
|
|
|
|
http://geany.uvena.de.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
1.3. Where to get it
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
You can obtain Geany from http://geany.uvena.de or perhaps
|
2005-11-22 12:26:26 +00:00
|
|
|
|
from your distributor.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-04-27 17:53:06 +00:00
|
|
|
|
1.4. License
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
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
|
2006-08-09 17:18:25 +00:00
|
|
|
|
COPYING included with the source code of this program or see
|
|
|
|
|
Appendix B.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
|
|
|
|
|
The included Scintilla library (found in the subdirectory
|
|
|
|
|
scintilla/) has its own license, which can be found in the
|
2006-08-09 17:18:25 +00:00
|
|
|
|
appendix (see Appendix C).
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
Chapter 2. Installation
|
|
|
|
|
|
|
|
|
|
2.1. Requirements
|
|
|
|
|
|
|
|
|
|
For compiling Geany yourself, you will need the GTK (>= 2.6.0)
|
|
|
|
|
libraries and header files. You will also need the Pango, Glib
|
|
|
|
|
and ATK libraries and header files. All these files are
|
|
|
|
|
available at http://www.gtk.org.
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Furthermore you need, of course, a C compiler and the Make
|
|
|
|
|
tool; a C++ compiler is also required for the included
|
|
|
|
|
Scintilla library. The GNU versions of these tools are
|
|
|
|
|
recommended.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
2.2. Source compilation
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
Compiling Geany is quite easy. The following should do it:
|
|
|
|
|
% ./configure
|
|
|
|
|
% make
|
|
|
|
|
% make install
|
|
|
|
|
|
|
|
|
|
The configure script supports several common options, for a
|
|
|
|
|
detailed list, type
|
|
|
|
|
% ./configure --help
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
In the case that your system lacks dynamic linking loader
|
2005-12-21 19:42:55 +00:00
|
|
|
|
support, you probably want to pass the option --disable-vte to
|
|
|
|
|
the configure script. This prevents compiling Geany with
|
|
|
|
|
dynamic linking loader support to automatically load
|
|
|
|
|
libvte.so.4 if available.
|
|
|
|
|
|
|
|
|
|
Geany has been successfully compiled and tested under Debian
|
|
|
|
|
3.1 Sarge, Debian 3.2 Etch, Fedora Core 4, LinuxFromScratch
|
2006-06-04 13:10:16 +00:00
|
|
|
|
and FreeBSD 6.0. It also compiles under Microsoft Windows(TM),
|
2005-12-21 19:42:55 +00:00
|
|
|
|
but there are lots of changes to the makefiles necessary.
|
|
|
|
|
|
2005-11-22 12:26:26 +00:00
|
|
|
|
If there are any errors during compilation, check your build
|
|
|
|
|
environment and try to find the error, otherwise contact the
|
|
|
|
|
author at <enrico.troeger@uvena.de>.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
2.3. Binary packages
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
2.3.1. Fedora
|
|
|
|
|
|
2006-04-27 17:53:06 +00:00
|
|
|
|
You can use the Fedora Core 4 repository from
|
|
|
|
|
http://naturidentisch.de/packages/fc4/.
|
2006-09-29 07:42:13 +00:00
|
|
|
|
|
|
|
|
|
You can also use the Fedora Core 5 repository from
|
|
|
|
|
http://naturidentisch.de/packages/fc5/.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
2.3.2. Debian
|
|
|
|
|
|
2006-09-29 07:42:13 +00:00
|
|
|
|
Geany is available through the official Debian archives.
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
2006-09-29 07:42:13 +00:00
|
|
|
|
apt-get install geany
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
2.3.3. SuSE
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Packages for SuSE are not yet available.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-04-27 17:53:06 +00:00
|
|
|
|
2.3.4. Gentoo
|
|
|
|
|
|
2006-09-29 07:42:13 +00:00
|
|
|
|
An ebuild for Gentoo can be found on http://bugs.gentoo.de.
|
2006-04-27 17:53:06 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2005-11-22 12:26:26 +00:00
|
|
|
|
Chapter 3. Usage
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.1. Getting started
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
You can start Geany in the following ways:
|
|
|
|
|
|
|
|
|
|
* From the Desktop Environment menu
|
|
|
|
|
Choose in your application menu of your used Desktop
|
|
|
|
|
Environment: Development->Geany.
|
|
|
|
|
* From the command line
|
|
|
|
|
To start Geany from a command line, type the following and
|
|
|
|
|
press Return:
|
|
|
|
|
% geany
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
3.2. Command line options
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Table 3-1. Command line Options
|
2005-11-22 12:26:26 +00:00
|
|
|
|
Short option Long option Function
|
2006-09-29 07:42:13 +00:00
|
|
|
|
-s --no-session Don't load the previous session's files.
|
2005-12-21 19:42:55 +00:00
|
|
|
|
-n --no-ctags Do not load auto completion and call tip data.
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Use this option if you do not want to use them.
|
2006-04-27 17:53:06 +00:00
|
|
|
|
-m --no-msgwin Do not show the message window. Use this option
|
|
|
|
|
if you do not need compiler messages or VTE support.
|
2006-09-29 07:42:13 +00:00
|
|
|
|
-i --new-instance Do not open files in a running instance,
|
|
|
|
|
force opening a new instance.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
-t --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,
|
|
|
|
|
then terminal-support is automatically disabled.
|
2006-01-27 19:11:30 +00:00
|
|
|
|
-l --vte-lib Specify explicitly the path including filename or
|
|
|
|
|
only the filename to the VTE library, e.g. /usr/lib/libvte.so
|
2006-06-04 13:10:16 +00:00
|
|
|
|
or libvte.so. This option is only needed when the
|
2006-01-27 19:11:30 +00:00
|
|
|
|
autodetection does not work.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
-c directory_name --config=directory_name Use an alternate
|
|
|
|
|
configuration directory. Default configuration directory is
|
2006-06-04 13:10:16 +00:00
|
|
|
|
~/.geany/ and there resides geany.conf and other configuration
|
2005-11-22 12:26:26 +00:00
|
|
|
|
files.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
-d --debug Run Geany in debug mode, which means being verbose
|
2005-11-22 12:26:26 +00:00
|
|
|
|
and printing lots of information.
|
|
|
|
|
-? --help Show help information and exit.
|
|
|
|
|
-v --version Show version information and exit.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
[files ...] Open all given files at startup. This option
|
2005-11-22 12:26:26 +00:00
|
|
|
|
causes Geany to ignore loading stored files from the last
|
|
|
|
|
session (if enabled).
|
|
|
|
|
Geany supports all generic GTK options, a list is available on
|
|
|
|
|
the help screen.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.3. General
|
|
|
|
|
|
2005-12-21 19:42:55 +00:00
|
|
|
|
3.3.1. Startup
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
At startup, Geany loads the first 15 files from the last time
|
2005-11-22 12:26:26 +00:00
|
|
|
|
Geany was launched. You can disable this feature in the
|
2005-12-21 19:42:55 +00:00
|
|
|
|
preferences dialog(see Figure 3-2). If you specify some files
|
2006-06-04 13:10:16 +00:00
|
|
|
|
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. This contains the last 15
|
|
|
|
|
recently opened files. It may be that Geany loads not exactly
|
|
|
|
|
15 session files, this depends on the compile time option
|
|
|
|
|
GEANY_SESSION_FILES; the default is 15. For details see
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Section 3.6.1.
|
2006-09-29 07:42:13 +00:00
|
|
|
|
|
|
|
|
|
You can start several instances of Geany, but only the first
|
|
|
|
|
will 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.
|
2005-12-21 19:42:55 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-09-29 07:42:13 +00:00
|
|
|
|
3.3.2. Opening files from the command-line in a running instance
|
2006-04-27 17:53:06 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Geany detects an already running instance of itself and opens
|
2006-09-29 07:42:13 +00:00
|
|
|
|
files from the command-line in the already running instance.
|
|
|
|
|
So, Geany can be used to view and edit files by opening them
|
|
|
|
|
from other programs such as a file manager. If you do not like
|
|
|
|
|
this for some reason, you can disable using the first instance
|
|
|
|
|
by using the appropriate command line option - see Section
|
|
|
|
|
3.2.
|
2006-04-27 17:53:06 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.3.3. Virtual terminal emulator widget (VTE)
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
|
|
|
|
If you have installed libvte.so in your system, it is loaded
|
2006-06-04 13:10:16 +00:00
|
|
|
|
automatically by Geany, and you will have a terminal widget in
|
|
|
|
|
the notebook at the bottom.
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
|
|
|
|
If Geany cannot find 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
|
2006-06-04 13:10:16 +00:00
|
|
|
|
can disable the use of the terminal widget by command line
|
2005-12-21 19:42:55 +00:00
|
|
|
|
option, for more information see Section 3.2.
|
|
|
|
|
|
|
|
|
|
You can use this terminal (from now on called VTE) nearly as
|
2006-06-04 13:10:16 +00:00
|
|
|
|
an usual terminal program like xterm. There is basic clipboard
|
|
|
|
|
support. You can paste the contents of the clipboard by
|
|
|
|
|
pressing the right mouse button to open the popup menu and
|
|
|
|
|
choosing Paste. To copy text from the VTE, just select the
|
|
|
|
|
desired text and then press the right mouse button and choose
|
|
|
|
|
Copy from the popup menu. On systems running the X Window
|
|
|
|
|
System you can paste the last selected text by pressing the
|
|
|
|
|
middle mouse button in the VTE (on 2-button mice, the middle
|
|
|
|
|
button can often be simulated by pressing both mouse buttons
|
|
|
|
|
together).
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
|
|
|
|
Geany tries to load libvte.so. If this fails, it tries to load
|
|
|
|
|
libvte.so.4. If this fails too, you should check whether you
|
2006-06-04 13:10:16 +00:00
|
|
|
|
installed libvte correctly. Again, Geany also runs without
|
|
|
|
|
this library.
|
|
|
|
|
|
|
|
|
|
It could be, that the library is called something else than
|
|
|
|
|
libvte.so.4 (e.g. on FreeBSD 6.0 it is called libvte.so.8). So
|
|
|
|
|
please set a link to the correct file (as root).
|
2005-12-21 19:42:55 +00:00
|
|
|
|
# ln -s /usr/lib/libvte.so.X /usr/lib/libvte.so.4
|
|
|
|
|
|
|
|
|
|
Obviously, you have to adjust the paths and set X to the
|
|
|
|
|
number of your libvte.so.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.4. Character sets and Unicode Byte-Order-Mark (BOM)
|
|
|
|
|
|
|
|
|
|
Geany provides support for detecting and converting character
|
|
|
|
|
sets. So you can open and save files in different character
|
|
|
|
|
sets and even can convert a file from a character set to
|
|
|
|
|
another one. To do this, Geany uses the character conversion
|
|
|
|
|
capabilities of the GLib.
|
|
|
|
|
|
|
|
|
|
Furthermore, Geany detects an Unicode Byte Order Mark (see
|
|
|
|
|
http://en.wikipedia.org/wiki/Byte_Order_Mark for details). Of
|
|
|
|
|
course, this feature is only available if the opened file is
|
|
|
|
|
in an 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 using a Byte Order
|
|
|
|
|
Mark could cause some problems, e.g. the gcc stops with stray
|
|
|
|
|
errors, PHP does not parse a script containing a BOM and
|
|
|
|
|
script files starting with a she-bang maybe cannot be started.
|
|
|
|
|
In the status bar you can easily see whether the file starts
|
|
|
|
|
with a BOM or not. If you want to set a BOM for a file or if
|
|
|
|
|
you want to remove it from a file, just use the document menu
|
|
|
|
|
and toggle the checkbox.
|
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
|
|
|
|
If you are unsure what a BOM is or if you do not understand
|
|
|
|
|
where to use it, then it is not important for you and you can
|
|
|
|
|
safely ignore it.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5. Search, replace and go to
|
|
|
|
|
|
|
|
|
|
This section describes search-related commands from the Search
|
|
|
|
|
menu and the editor window's popup menu:
|
|
|
|
|
|
|
|
|
|
* Find
|
|
|
|
|
* Find usage *
|
|
|
|
|
* Find in files
|
|
|
|
|
* Replace
|
|
|
|
|
* Go to tag definition *
|
|
|
|
|
* Go to tag declaration *
|
|
|
|
|
* Go to line
|
|
|
|
|
|
|
|
|
|
* These items are available from the editor window's popup
|
|
|
|
|
menu, or by using a keyboard shortcut (see Section 3.9).
|
|
|
|
|
_________________________________________________________
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.5.1. Find
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
The Find dialog is used for finding text within the current
|
|
|
|
|
document. The syntax for the "Use regular expressions" option
|
|
|
|
|
is shown in Table 3-2.
|
|
|
|
|
|
|
|
|
|
Figure 3-1. Find dialog
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
[find_dialog.jpg]
|
2006-08-09 17:18:25 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5.2. Find usage
|
|
|
|
|
|
|
|
|
|
Find usage searches all open files. If there is a selection,
|
|
|
|
|
then it is used as the search text; otherwise the current word
|
|
|
|
|
is used. The current word is either taken from the word
|
|
|
|
|
nearest the edit cursor, or the word underneath the popup menu
|
|
|
|
|
click position when the popup menu is used. The search results
|
|
|
|
|
are shown in the Messages window.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5.3. Find in files
|
|
|
|
|
|
|
|
|
|
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 utility.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5.4. Replace
|
|
|
|
|
|
|
|
|
|
The Replace dialog has the same options for finding text as
|
|
|
|
|
the Find dialog. There is also a "Replace in all files"
|
|
|
|
|
option, which is used with the Replace All button to perform
|
|
|
|
|
the replacement for all open files.
|
|
|
|
|
|
|
|
|
|
The "Use regular expressions" option applies both to the
|
|
|
|
|
search string and to the replacement text; for the latter back
|
|
|
|
|
references can be used - see the entry for '\n' in Table 3-2.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5.5. Go to tag definition
|
|
|
|
|
|
|
|
|
|
If the current word is the name of a function and the file
|
|
|
|
|
containing the function definition (a.k.a. function body) is
|
|
|
|
|
open, Go to tag definition will switch to that file and go to
|
|
|
|
|
the corresponding line number. The current word is either
|
|
|
|
|
taken from the word nearest the edit cursor, or the word
|
|
|
|
|
underneath the popup menu click position when the popup menu
|
|
|
|
|
is used.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5.6. Go to tag declaration
|
|
|
|
|
|
|
|
|
|
Like Go to tag definition, but for a forward function
|
|
|
|
|
declaration (a.k.a. function prototype) instead of a function
|
|
|
|
|
definition.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5.7. Go to line
|
|
|
|
|
|
|
|
|
|
Go to a particular line number in the current file.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.5.8. Regular expressions
|
|
|
|
|
|
|
|
|
|
You can use regular expressions in the Find and Replace
|
|
|
|
|
dialogs by selecting the "Use regular expressions" check box.
|
|
|
|
|
The syntax is POSIX-like, as described below in Table 3-2.
|
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
|
|
|
|
Searching backwards with regular expressions is not supported.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
Table 3-2. Regular expressions
|
|
|
|
|
In a regular expression, the following characters are
|
|
|
|
|
interpreted:
|
|
|
|
|
. Matches any character.
|
2006-08-09 17:18:25 +00:00
|
|
|
|
( This marks the start of a region for tagging a match.
|
|
|
|
|
) This marks the end of a tagged region.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
\n Where n is 1 through 9 refers to the first through ninth
|
|
|
|
|
tagged region when replacing. For example, if the search
|
2006-08-09 17:18:25 +00:00
|
|
|
|
string was Fred([1-9])XXX and the replace string was Sam\1YYY,
|
|
|
|
|
when applied to Fred2XXX this would generate Sam2YYY.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
\< This matches the start of a word.
|
|
|
|
|
\> This matches the end of a word.
|
|
|
|
|
\x This allows you to use a character x that would otherwise
|
|
|
|
|
have a special meaning. For example, \[ would be interpreted
|
2006-08-09 17:18:25 +00:00
|
|
|
|
as [ and not as the start of a character set. Use \\ for a
|
|
|
|
|
literal backslash.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
[...] This indicates a set of characters, for example, [abc]
|
|
|
|
|
means any of the characters a, b or c. You can also use
|
|
|
|
|
ranges, for example [a-z] for any lower case character.
|
|
|
|
|
[^...] The complement of the characters in the set. For
|
|
|
|
|
example, [^A-Za-z] means any character except an alphabetic
|
|
|
|
|
character.
|
2006-08-09 17:18:25 +00:00
|
|
|
|
^ This matches the start of a line (unless used inside a set,
|
|
|
|
|
see above).
|
2005-11-22 12:26:26 +00:00
|
|
|
|
$ This matches the end of a line.
|
|
|
|
|
* This matches 0 or more times. For example, Sa*m matches Sm,
|
|
|
|
|
Sam, Saam, Saaam and so on.
|
|
|
|
|
+ This matches 1 or more times. For example, Sa+m matches Sam,
|
|
|
|
|
Saam, Saaam and so on.
|
2006-08-09 17:18:25 +00:00
|
|
|
|
|
|
|
|
|
Note Partial POSIX compatibility
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Note that the POSIX '?' regular expression character for
|
|
|
|
|
optional matching is not supported by the Find and Replace
|
|
|
|
|
dialogs.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.6. Preferences
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
should be written
|
|
|
|
|
|
|
|
|
|
Figure 3-2. General tab in preferences dialog
|
|
|
|
|
|
|
|
|
|
[pref_dialog_gen.jpg]
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Figure 3-3. Interface tab in preferences dialog
|
|
|
|
|
|
|
|
|
|
[pref_dialog_interface.jpg]
|
|
|
|
|
|
|
|
|
|
Figure 3-4. Toolbar tab in preferences dialog
|
|
|
|
|
|
|
|
|
|
[pref_dialog_toolbar.jpg]
|
|
|
|
|
|
|
|
|
|
Figure 3-5. Editor tab in preferences dialog
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
[pref_dialog_edit.jpg]
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Figure 3-6. Tools tab in preferences dialog
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
[pref_dialog_tools.jpg]
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Figure 3-7. Template tab in preferences dialog
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
[pref_dialog_templ.jpg]
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Figure 3-8. Keybinding tab in preferences dialog
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
[pref_dialog_keys.jpg]
|
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
For more information see Section 3.9.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Figure 3-9. VTE tab in preferences dialog
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
|
|
|
|
[pref_dialog_vte.jpg]
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.6.1. Compile time options
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
There are some options which can only be changed at compile
|
|
|
|
|
time. To change these options, edit the file src/geany.h. Look
|
|
|
|
|
for a block of lines starting with "#define GEANY_*". Any
|
|
|
|
|
definitions which are not listed here should not be changed.
|
2005-12-21 19:42:55 +00:00
|
|
|
|
|
|
|
|
|
Table 3-3. Compile time options
|
|
|
|
|
Option Description Default
|
2006-06-04 13:10:16 +00:00
|
|
|
|
GEANY_MAX_OPEN_FILES The limit to how many files can be open
|
|
|
|
|
at the same time. 25
|
2005-12-21 19:42:55 +00:00
|
|
|
|
GEANY_SESSION_FILES How many files should be reopened from the
|
|
|
|
|
last run. Obviously, the value should be smaller than
|
|
|
|
|
GEANY_MAX_OPEN_FILES. 15
|
2006-06-04 13:10:16 +00:00
|
|
|
|
GEANY_WORDCHARS These characters define word boundaries. (look
|
|
|
|
|
at sourcecode)
|
|
|
|
|
GEANY_MAX_AUTOCOMPLETE_WORDS How many auto completion
|
2005-12-21 19:42:55 +00:00
|
|
|
|
suggestions should Geany provide. 30
|
2006-06-04 13:10:16 +00:00
|
|
|
|
GEANY_STRING_UNTITLED A string used as the default name for
|
|
|
|
|
new files. Be aware that the string can be translated, so
|
|
|
|
|
change it only if you know what you are doing. untitled
|
|
|
|
|
GEANY_CHECK_FILE_DELAY Time in seconds between checking a file
|
|
|
|
|
for external changes. 30
|
2006-04-27 17:53:06 +00:00
|
|
|
|
GEANY_WINDOW_MINIMAL_WIDTH The minimal width of the main
|
|
|
|
|
window. 620
|
|
|
|
|
GEANY_WINDOW_MINIMAL_HEIGHT The minimal height of the main
|
|
|
|
|
window. 440
|
|
|
|
|
GEANY_WINDOW_DEFAULT_WIDTH The default width of the main
|
|
|
|
|
window at the first start. 900
|
|
|
|
|
GEANY_WINDOW_DEFAULT_HEIGHT The default height of the main
|
|
|
|
|
window at the first start. 600
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Default values
|
|
|
|
|
GEANY_DEFAULT_TOOLS_MAKE The make tool. This can also include
|
|
|
|
|
a path. "make"
|
|
|
|
|
GEANY_DEFAULT_TOOLS_TERMINAL A terminal emulator. It has to
|
|
|
|
|
accept the command line option "-e". This can also include a
|
|
|
|
|
path. "xterm"
|
|
|
|
|
GEANY_DEFAULT_TOOLS_BROWSER A web browser. This can also
|
|
|
|
|
include a path. "mozilla"
|
|
|
|
|
GEANY_DEFAULT_TOOLS_PRINTCMD A printing tool. It should be
|
|
|
|
|
able to accept and process plain text files. This can also
|
|
|
|
|
include a path. "lpr"
|
2006-08-09 17:18:25 +00:00
|
|
|
|
GEANY_DEFAULT_TOOLS_GREP A grep tool. It should be compatible
|
|
|
|
|
with GNU grep. This can also include a path. "grep"
|
2006-07-01 17:41:46 +00:00
|
|
|
|
GEANY_DEFAULT_MRU_LENGHTH The length of the "Recent files"
|
|
|
|
|
list. "10"
|
|
|
|
|
GEANY_DEFAULT_FONT_SYMBOL_LIST The font used in sidebar to
|
|
|
|
|
show symbols and open files. "Cursor 8"
|
|
|
|
|
GEANY_DEFAULT_FONT_MSG_WINDOW The font used in the messages
|
|
|
|
|
window. "Cursor 8"
|
|
|
|
|
GEANY_DEFAULT_FONT_EDITOR The font used in the editor window.
|
|
|
|
|
"Courier New 9"
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7. Build system
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Geany has an integrated build system. Firstly this means that
|
|
|
|
|
the current source file will be saved before it is processed.
|
|
|
|
|
This is for convenience so that you don't need to keep saving
|
|
|
|
|
small changes to the current file before building.
|
|
|
|
|
|
|
|
|
|
Secondly the output for Compile, Build and Make actions will
|
|
|
|
|
be captured in the Compiler notebook tab of the messages
|
2006-06-04 13:10:16 +00:00
|
|
|
|
window (assuming you have it visible). If there are any
|
|
|
|
|
warnings or errors with line numbers shown in the Compiler
|
|
|
|
|
output tab, you can double click on them and Geany will switch
|
|
|
|
|
to the relevant source file (if it is open) and mark the line
|
2006-08-09 17:18:25 +00:00
|
|
|
|
number so the problem can be corrected. Geany will also set
|
|
|
|
|
indicators for warnings or errors with line numbers.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
Depending on the current file's filetype, the Build menu will
|
|
|
|
|
contain the following items:
|
|
|
|
|
|
|
|
|
|
* Compile
|
|
|
|
|
* Build
|
2006-08-09 17:18:25 +00:00
|
|
|
|
* Make all
|
|
|
|
|
* Make custom target
|
|
|
|
|
* Make object
|
2006-06-04 13:10:16 +00:00
|
|
|
|
* Execute
|
|
|
|
|
* Set Includes and Arguments
|
|
|
|
|
_________________________________________________________
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.1. Compile
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-07-01 17:41:46 +00:00
|
|
|
|
The Compile command has different uses for different kinds of
|
|
|
|
|
files.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-07-01 17:41:46 +00:00
|
|
|
|
For compilable languages such as C and C++, the Compile
|
|
|
|
|
command is setup to compile the current source file into a
|
|
|
|
|
binary object file.
|
|
|
|
|
|
|
|
|
|
Java source files will be compiled to class file bytecode.
|
|
|
|
|
Interpreted languages such as Perl, Python, Ruby will compile
|
|
|
|
|
to bytecode if the language supports it, or will run a syntax
|
|
|
|
|
check, or failing that will run the file in its language
|
|
|
|
|
interpreter.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.2. Build
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
For compilable languages such as C and C++, the Build command
|
|
|
|
|
will link the current source file's equivalent object file
|
|
|
|
|
into an executable. If the object file does not exist, the
|
|
|
|
|
source will be compiled and linked in one step, producing just
|
|
|
|
|
the executable binary.
|
|
|
|
|
|
|
|
|
|
Interpreted languages do not use the Build command.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.3. Make all
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
This effectively runs "make all" in the same directory as the
|
2006-08-09 17:18:25 +00:00
|
|
|
|
current file.
|
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
|
|
|
|
For each of the Make commands, The Make tool path must be
|
|
|
|
|
correctly set in the Tools tab of the Preferences dialog.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.4. Make custom target
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
This is similar to running 'Make all' but you will be prompted
|
|
|
|
|
for the make target name to be passed to the Make tool. For
|
|
|
|
|
example, typing 'clean' in the dialog prompt will run "make
|
|
|
|
|
clean".
|
2006-06-04 13:10:16 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.5. Make object
|
|
|
|
|
|
|
|
|
|
Make object will run "make current_file.o" in the same
|
|
|
|
|
directory as the current file, using its prefix for
|
|
|
|
|
'current_file'. It is useful for compiling just the current
|
|
|
|
|
file without building the whole project.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
3.7.6. Execute
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
Execute will run the corresponding executable file, shell
|
|
|
|
|
script or interpreted script in a terminal window. Note that
|
|
|
|
|
the Terminal tool path must be correctly set in the Tools tab
|
|
|
|
|
of the Preferences dialog - you can use any terminal program
|
2006-07-01 17:41:46 +00:00
|
|
|
|
that runs a Bourne compatible shell.
|
|
|
|
|
|
|
|
|
|
After your program or script has finished executing, you will
|
|
|
|
|
be prompted to press the return key. This allows you to review
|
|
|
|
|
any text output from the program before the terminal window is
|
|
|
|
|
closed.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.7. Set Includes and Arguments
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
By default the Compile and Build commands invoke the compiler
|
|
|
|
|
and linker with only the basic arguments needed by all
|
|
|
|
|
programs. Using Set Includes and Arguments you can add any
|
|
|
|
|
include paths and compile flags for the compiler, any library
|
|
|
|
|
names and paths for the linker, and any arguments you want to
|
2006-07-01 17:41:46 +00:00
|
|
|
|
use when running Execute.
|
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
|
|
|
|
If you are using the Build command to compile and link in one
|
|
|
|
|
step, you will need to set both the compiler arguments and the
|
|
|
|
|
linker arguments in the linker command setting.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
These settings are not saved when Geany is shut down. See
|
|
|
|
|
below for how to set permanent arguments.
|
|
|
|
|
|
|
|
|
|
If you need complex settings for your build system, or several
|
2006-08-09 17:18:25 +00:00
|
|
|
|
different settings, then writing a Makefile and using the Make
|
|
|
|
|
commands is recommended.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.8. Indicators
|
2006-07-01 17:41:46 +00:00
|
|
|
|
|
|
|
|
|
Indicators are red squiggly underlines which are used to
|
|
|
|
|
highlight errors which occured while compiling the current
|
|
|
|
|
file. So you can easily see where your code failed to compile.
|
|
|
|
|
To remove the indicators, just click on "Remove all
|
|
|
|
|
indicators" in the document file menu.
|
|
|
|
|
|
|
|
|
|
If you do not like this feature, you can disable it in the
|
|
|
|
|
preferences dialog.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.7.9. File type configuration settings
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
You can set the commands to run for compiling, building or
|
|
|
|
|
executing by opening the relevant filetypes.* configuration
|
2006-07-01 17:41:46 +00:00
|
|
|
|
file, and checking the [build_settings] section. See Section
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1 for more information.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.8. Printing support
|
2006-07-01 17:41:46 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Geany has basic printing support. This means you can print a
|
2006-07-01 17:41:46 +00:00
|
|
|
|
file by passing the filename of the current file to a command
|
|
|
|
|
which actually prints the file. However, the printed document
|
|
|
|
|
contains no syntax highlighting. You can adjust the command to
|
|
|
|
|
which the filename is passed in the preferences dialog. The
|
|
|
|
|
default command is:
|
|
|
|
|
% lpr %f
|
|
|
|
|
|
|
|
|
|
%f will be substituted by the filename of the current file.
|
|
|
|
|
Geany will not show errors from the command itself, so you
|
|
|
|
|
should make sure that it works before(e.g. by trying to
|
|
|
|
|
execute it from the command line).
|
|
|
|
|
|
|
|
|
|
A nicer example, which I prefer is:
|
|
|
|
|
% a2ps -1 --medium=A4 -o - %f | xfprint4
|
|
|
|
|
|
|
|
|
|
But this depends on a2ps and xfprint4. As a replacement for
|
|
|
|
|
xfprint4, gtklp or similar programs can be used.
|
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
|
|
|
|
The printing support of Geany will be improved in the future.
|
|
|
|
|
With GTK 2.10, better printing (including syntax highlighting)
|
|
|
|
|
will be possible.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
3.9. Keybindings
|
|
|
|
|
|
|
|
|
|
Geany supports the default keyboard shortcuts for the
|
|
|
|
|
Scintilla editing widget. For a list of these commands, see
|
|
|
|
|
Appendix A. The Scintilla keyboard shortcuts will be
|
|
|
|
|
overridden by any custom keybindings with the same keyboard
|
|
|
|
|
shortcut.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
For all actions listed below you can define your own
|
|
|
|
|
keybindings. Open the Preferences dialog, select the desired
|
|
|
|
|
action and click on change. In the opening dialog you can
|
|
|
|
|
press any key combination you want and it will be saved when
|
|
|
|
|
you press OK. You can define only one key combination for one
|
|
|
|
|
action.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
Some of the default key combinations cannot be changed, e.g.
|
|
|
|
|
menu_new or menu_open. These are set by GTK and should be
|
|
|
|
|
kept, but you can still add other key combinations for these
|
|
|
|
|
actions. For example to execute menu_open by default Ctrl-O is
|
|
|
|
|
set, but you can also define Alt-O, so that the file open
|
|
|
|
|
dialog is shown by pressing either Ctrl-O or Alt-O.
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
The following table lists all customizable keyboard shortcuts.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
Table 3-4. Keybindings action table
|
|
|
|
|
Action Description
|
|
|
|
|
Menu items
|
2006-07-01 17:41:46 +00:00
|
|
|
|
New Creates a new file.
|
|
|
|
|
Open Opens a file.
|
|
|
|
|
Save Saves the current file.
|
|
|
|
|
Save all Saves all open files.
|
|
|
|
|
Close all Closes all open files.
|
|
|
|
|
Close Closes the current file.
|
|
|
|
|
Reload file Reloads the current file. All unsaved changes will
|
|
|
|
|
be lost.
|
|
|
|
|
Print Prints the current file.
|
|
|
|
|
Undo Undoes the last action.
|
|
|
|
|
Redo Redoes the last action.
|
|
|
|
|
Select all Makes a selection of all text in the current
|
|
|
|
|
document.
|
|
|
|
|
Preferences Opens preferences dialog.
|
|
|
|
|
Find Next Finds next result.
|
|
|
|
|
Find Previous Finds previous result.
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Replace Opens the Replace dialog.
|
|
|
|
|
Find in files Opens the Find in files dialog.
|
|
|
|
|
Go to line Opens the Go to line dialog.
|
|
|
|
|
Show Colour Chooser Opens the Colour Chooser dialog.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Fullscreen Switches to fullscreen mode.
|
|
|
|
|
Toggle Messages Window Toggles the message window (status and
|
2006-06-04 13:10:16 +00:00
|
|
|
|
compiler messages) on and off.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Toggle Sidebar Shows or hides the sidebar.
|
|
|
|
|
Zoom In Zooms in the text
|
|
|
|
|
Zoom Out Zooms out the text
|
|
|
|
|
Replace tabs by space Replaces all tabs with the right amount
|
|
|
|
|
of spaces.
|
|
|
|
|
Fold all Folds all contractible code blocks.
|
|
|
|
|
Unfold all Unfolds all contracted code blocks.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Build options
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Compile Compiles the current file.
|
|
|
|
|
Build Builds (compiles if necessary and links) the current
|
|
|
|
|
file.
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Make all Builds the current file with the Make tool.
|
|
|
|
|
Make custom target Builds the current file with the Make tool
|
|
|
|
|
and a given target.
|
|
|
|
|
Make object Compiles the current file with the Make tool.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Run Executes the current file in a terminal emulation.
|
|
|
|
|
Run (alternative command) Executes the current file in a
|
|
|
|
|
terminal emulation.
|
|
|
|
|
Build options Opens the build options dialog.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Miscellaneous
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Reload symbol list Reloads the tag/symbol list.
|
|
|
|
|
Switch to Editor Switches to editor widget.
|
|
|
|
|
Switch to Scribble Switches to scribble widget.
|
|
|
|
|
Switch to VTE Switches to VTE widget.
|
|
|
|
|
Switch to left document Switches to the previous open
|
|
|
|
|
document.
|
|
|
|
|
Switch to right document Switches to the next open document.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Editing operations
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Duplicate line or selection Duplicates the current line or
|
|
|
|
|
selection.
|
|
|
|
|
Comment line Comments current line or selection.
|
|
|
|
|
Complete word Shows auto completion list.
|
|
|
|
|
Show calltip Shows call tips for the current function or
|
2006-06-04 13:10:16 +00:00
|
|
|
|
method.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Show macro list Shows a list of available macros and variables
|
2006-06-04 13:10:16 +00:00
|
|
|
|
in the workspace.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Suppress auto completion If you type something like if or for
|
2006-06-04 13:10:16 +00:00
|
|
|
|
and press this key, it will not be auto completed.
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Find Usage Finds all occurrences of the current word (near the
|
|
|
|
|
keyboard cursor) and displays them in the messages window.
|
|
|
|
|
Go to tag definition Jump to the definition of the current
|
|
|
|
|
word (near the keyboard cursor). If the definition cannot be
|
|
|
|
|
found (e.g. the relevant file is not open) Geany will beep and
|
|
|
|
|
do nothing. Used for function definitions.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
Go to tag declaration Jump to the declaration of the current
|
2006-08-09 17:18:25 +00:00
|
|
|
|
word (near the keyboard cursor). If the declaration cannot be
|
|
|
|
|
found (e.g. the relevant file is not open) Geany will beep and
|
|
|
|
|
do nothing. Used for function prototypes.
|
2006-06-04 13:10:16 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Chapter 4. Configuration files
|
|
|
|
|
|
|
|
|
|
4.1. Filetype definition files
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
The system-wide configuration files can be found in
|
|
|
|
|
$prefix/share/geany and are called filetypes.$ext, where
|
|
|
|
|
$prefix is the path where Geany is installed (commonly
|
|
|
|
|
/usr/local) and $ext is the name of the filetype. For every
|
|
|
|
|
filetype there is a corresponding definition file. There is
|
|
|
|
|
one exception: filetypes.common - this file is for general
|
|
|
|
|
settings, which are not specific to a certain filetype. It is
|
|
|
|
|
not recommended to edit the system-wide files, because they
|
|
|
|
|
will be overridden when Geany is updated.
|
|
|
|
|
|
|
|
|
|
To change the settings, copy a file from $prefix/share/geany
|
|
|
|
|
to the subdirectory filedefs in your configuration directory
|
|
|
|
|
(usually ~/.geany/).
|
|
|
|
|
|
|
|
|
|
For example:
|
|
|
|
|
% cp /usr/local/share/geany/filetypes.c /home/username/.geany/filedefs/
|
|
|
|
|
|
|
|
|
|
Then you can edit the file and the changes are also available
|
|
|
|
|
after an update of Geany because they reside in your
|
|
|
|
|
configuration directory. Alternatively, you can create a file
|
|
|
|
|
~/.geany/filedefs/filetypes.X and add only these settings you
|
|
|
|
|
want to change. All missing settings will be read from the
|
|
|
|
|
corresponding global definition file in $prefix/share/geany.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1.1. Format
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1.1.1. [styling] Section
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
In this section the colours for syntax highlighting are
|
|
|
|
|
defined. The format is always:
|
|
|
|
|
key=forground_colour;background_colour;bold;italic
|
|
|
|
|
|
|
|
|
|
Colours have to be specified as RGB hex values prefixed 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.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1.1.2. [keywords] Section
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
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 can only add
|
|
|
|
|
or remove keywords to/from an existing list.
|
|
|
|
|
|
|
|
|
|
Important
|
|
|
|
|
|
|
|
|
|
The keywords list must be in one line without line ending
|
|
|
|
|
characters.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1.1.3. [settings] Section
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Table 4-1. General settings
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Key Description Example
|
|
|
|
|
wordchars Word delimiting characters. These characters define
|
|
|
|
|
word boundaries. (look at sourcecode)
|
|
|
|
|
comment_open A character or string which is used to comment
|
|
|
|
|
code. If you want to use multiline comments, also set
|
|
|
|
|
comment_close, otherwise leave it empty. comment_open=/*
|
|
|
|
|
comment_close If multiline comments are used, this is the
|
|
|
|
|
character or string to close the comment. comment_close=*/
|
|
|
|
|
comment_use_indent 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 indentation of the line.
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Example 4-1. Comment indentation
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
comment_use_indent=true would generate this if a line is
|
|
|
|
|
commented (e.g. with Ctrl-D)
|
|
|
|
|
#command_example();
|
|
|
|
|
|
|
|
|
|
comment_use_indent=false would generate this if a line is
|
|
|
|
|
commented (e.g. with Ctrl-D)
|
|
|
|
|
#command_example();
|
|
|
|
|
|
|
|
|
|
Note
|
|
|
|
|
|
|
|
|
|
This setting only works for single line comments.
|
|
|
|
|
comment_use_indent=true
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1.1.4. [build_settings] Section
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Table 4-2. Build settings
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Key Description Example
|
|
|
|
|
compiler 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 sends output
|
|
|
|
|
to the compiler message window.
|
|
|
|
|
|
|
|
|
|
You should quote the filename to also support filenames with
|
|
|
|
|
spaces. The following wildcards for filenames are available:
|
|
|
|
|
|
|
|
|
|
* %f - complete filename without path
|
|
|
|
|
* %e - filename without path and without extension
|
|
|
|
|
|
|
|
|
|
compiler=gcc -Wall -c "%f"
|
|
|
|
|
linker 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 Geany. This
|
|
|
|
|
item works well with GNU gcc, but may be problematic with
|
|
|
|
|
other compilers (esp. with the linker). linker=gcc -Wall "%f"
|
|
|
|
|
run_cmd Use this item to execute your file. It has to have
|
|
|
|
|
been built already. 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. run_cmd="./%e"
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.1.2. Special file filetypes.common
|
2006-06-04 13:10:16 +00:00
|
|
|
|
|
|
|
|
|
There is a special filetype definition file called
|
|
|
|
|
filetypes.common. This file defines some general
|
|
|
|
|
non-filetype-specific settings.
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Table 4-3. General settings
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Key Description Example
|
2006-09-29 07:42:13 +00:00
|
|
|
|
selection The style for colouring selected text. The format
|
|
|
|
|
is:
|
|
|
|
|
|
|
|
|
|
* Foreground colour
|
|
|
|
|
* Background colour
|
|
|
|
|
* Use foreground colour
|
|
|
|
|
* Use background colour
|
|
|
|
|
|
|
|
|
|
The colours are only set if the 3rd or 4th argument is true.
|
|
|
|
|
When the colours are not overridden, the default is a dark
|
|
|
|
|
grey background with syntax highlighted foreground text.
|
|
|
|
|
selection=0xc0c0c0;0x00007F;true;true
|
2006-06-04 13:10:16 +00:00
|
|
|
|
brace_good The style for brace highlighting when a matching
|
|
|
|
|
brace was found. brace_good=0xff0000;0xFFFFFF;true;false
|
|
|
|
|
brace_bad The style for brace highlighting when no matching
|
|
|
|
|
brace was found. brace_bad=0x0000ff;0xFFFFFF;true;false
|
2006-08-09 17:18:25 +00:00
|
|
|
|
caret The style for colouring the caret(the blinking cursor).
|
|
|
|
|
Only the first argument is interpreted.
|
|
|
|
|
caret=0x000000;0x0;false;false
|
2006-06-04 13:10:16 +00:00
|
|
|
|
current_line The style for colouring the background of the
|
|
|
|
|
current line. Only the second argument is interpreted.
|
2006-09-29 07:42:13 +00:00
|
|
|
|
current_line=0x0;0xe5e5e5;false;false
|
|
|
|
|
indent_guide The style for colouring the indentation guides.
|
|
|
|
|
Only the first and second arguments are interpreted.
|
|
|
|
|
indent_guide=0xc0c0c0;0xffffff;false;false
|
|
|
|
|
white_space The style for colouring the white space if it is
|
|
|
|
|
shown. The first both arguments define the foreground and
|
|
|
|
|
background colours, the third argument sets whether to use the
|
|
|
|
|
defined colours or to use the colours defined by each filetype
|
|
|
|
|
for the white space. white_space=0xc0c0c0;0xffffff;true;false
|
2006-06-04 13:10:16 +00:00
|
|
|
|
folding_style The style of folding icons. Only first and
|
|
|
|
|
second arguments are used.
|
|
|
|
|
|
|
|
|
|
Valid values for the first argument are:
|
|
|
|
|
|
|
|
|
|
* 1 - for boxes
|
|
|
|
|
* 2 - for circles
|
|
|
|
|
|
|
|
|
|
Valid values for the second argument are:
|
|
|
|
|
|
|
|
|
|
* 1 - for straight lines
|
|
|
|
|
* 2 - for curved lines
|
|
|
|
|
|
|
|
|
|
folding_style=1;1;false;false
|
2006-07-01 17:41:46 +00:00
|
|
|
|
invert_all Whether to invert all defined colours. This is
|
|
|
|
|
useful if you like a dark background colour(e.g. black) and do
|
|
|
|
|
not want to change every single line. Please note, at time of
|
|
|
|
|
writing this was only tested with the C syntax highlighting.
|
|
|
|
|
|
|
|
|
|
Only first argument is interpreted. Set it to 1 to invert all
|
|
|
|
|
colours.
|
|
|
|
|
invert_all=0;0;false;false
|
2006-06-04 13:10:16 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
4.2. Filetype extensions
|
|
|
|
|
|
|
|
|
|
You can override the default extensions that Geany uses for
|
|
|
|
|
each filetype using the filetype_extensions.conf file.
|
|
|
|
|
|
|
|
|
|
To override the system-wide configuration file, copy it from
|
|
|
|
|
$prefix/share/geany to your configuration directory, usually
|
|
|
|
|
~/.geany/. $prefix is the path where Geany is installed
|
|
|
|
|
(commonly /usr/local).
|
|
|
|
|
|
|
|
|
|
For example:
|
|
|
|
|
% cp /usr/local/share/geany/filetype_extensions.conf /home/username/.ge
|
|
|
|
|
any/
|
|
|
|
|
|
|
|
|
|
Then edit it and remove all the lines for filetype extensions
|
|
|
|
|
that you do not want to override. The remaining lines can be
|
|
|
|
|
edited after the = sign, using a semi-colon separated list of
|
|
|
|
|
patterns which should be matched for that filetype.
|
|
|
|
|
|
|
|
|
|
For example, to set the filetype extensions for Make, the
|
|
|
|
|
/home/username/.geany/filetype_extensions.conf file should
|
|
|
|
|
look like:
|
|
|
|
|
|
|
|
|
|
[Extensions] Make=Makefile*;*.mk;Buildfile;
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
4.3. Templates
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
Geany supports several templates for file headers, multiline
|
2006-06-04 13:10:16 +00:00
|
|
|
|
comments (frame comments), function descriptions, a typical
|
|
|
|
|
ChangeLog entry and a short GPL notice. To use these
|
|
|
|
|
templates, just open the Edit menu or open the popup menu by
|
2005-11-22 12:26:26 +00:00
|
|
|
|
right-clicking in the editor widget, and choose "Insert
|
|
|
|
|
Comments" and insert templates as you want.
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Some templates (like file header or ChangeLog entry) will
|
2005-11-22 12:26:26 +00:00
|
|
|
|
always be inserted at the top of the file.
|
|
|
|
|
|
|
|
|
|
To insert a function description, the cursor must be inside of
|
|
|
|
|
the function, so that the function name can be determined
|
|
|
|
|
automatically. The description will be positioned correctly
|
|
|
|
|
one line above the function, just check it out. If the cursor
|
|
|
|
|
is not inside of a function or the function name cannot be
|
|
|
|
|
determined, you cannot insert a function description.
|
|
|
|
|
|
|
|
|
|
Each template can be customized to your needs. The templates
|
|
|
|
|
are in the configuration directory, which is in ~/.geany/ (see
|
2006-06-04 13:10:16 +00:00
|
|
|
|
Section 3.2 for further information about the configuration
|
2005-11-22 12:26:26 +00:00
|
|
|
|
directory). Just open the desired template with an editor
|
|
|
|
|
(ideally Geany ;-) ) and edit the template as your needs.
|
|
|
|
|
There are some wildcards which will be automatically replaced
|
|
|
|
|
by Geany at startup.
|
|
|
|
|
|
|
|
|
|
All wildcards must be enclosed by "{" and "}", e.g. {date}.
|
|
|
|
|
|
2006-06-04 13:10:16 +00:00
|
|
|
|
In the configuration dialog you can find a tab "Templates"
|
2006-08-09 17:18:25 +00:00
|
|
|
|
(see Figure 3-7). You can define the default values which will
|
2006-06-04 13:10:16 +00:00
|
|
|
|
be inserted in the templates. You should restart Geany after
|
|
|
|
|
making changes, because they are only read at startup.
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
Since Geany 0.3 there are also templates for creating new
|
|
|
|
|
files. They can be found in ~/.geany/, too. All template files
|
|
|
|
|
for creating new files begin with template.filetype. followed
|
|
|
|
|
by the filetype. At creating a new file with a filetype
|
|
|
|
|
template, the template for the fileheader is automatically
|
2006-06-04 13:10:16 +00:00
|
|
|
|
prepended. Please note that the complete behaviour is still
|
2005-11-22 12:26:26 +00:00
|
|
|
|
under development and will probably be changed in one of the
|
|
|
|
|
next releases. Sorry.
|
|
|
|
|
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Table 4-4. Template wildcards
|
2005-11-22 12:26:26 +00:00
|
|
|
|
Wildcard Description Available in following templates
|
|
|
|
|
developer The name of the developer. filetypes, file header,
|
|
|
|
|
function description, ChangeLog entry
|
2006-08-09 17:18:25 +00:00
|
|
|
|
initial The developer's initials, e.g. "ET" for Enrico Tröger
|
2006-06-04 13:10:16 +00:00
|
|
|
|
or "JFD" for John Foobar Doe. filetypes, file header, function
|
|
|
|
|
description, ChangeLog entry
|
2005-11-22 12:26:26 +00:00
|
|
|
|
mail The email address of the developer. file header, function
|
|
|
|
|
description, ChangeLog entry
|
2006-06-04 13:10:16 +00:00
|
|
|
|
company The company the developer is working for. filetypes,
|
|
|
|
|
file header, function description, ChangeLog entry
|
2005-11-22 12:26:26 +00:00
|
|
|
|
year The current year in the format: YYYY filetypes, file
|
|
|
|
|
header, function description, ChangeLog entry
|
|
|
|
|
version The initial version of a new file. filetypes, file
|
|
|
|
|
header, function description, ChangeLog entry
|
|
|
|
|
date The current date in the format: YYYY-MM-DD filetypes,
|
|
|
|
|
file header, function description, ChangeLog entry
|
|
|
|
|
untitled The string "untitled" (this will be translated to
|
|
|
|
|
your locale), used in filetype templates filetypes, file
|
|
|
|
|
header, function description, ChangeLog entry
|
2006-09-29 07:42:13 +00:00
|
|
|
|
geanyversion The actual Geany version, e.g. "Geany 0.9"
|
2006-04-27 17:53:06 +00:00
|
|
|
|
filetypes, file header, function description, ChangeLog entry
|
2005-11-22 12:26:26 +00:00
|
|
|
|
datetime The current date and time in the format: DD.MM.YYYY
|
|
|
|
|
HH:mm:ss ZZZZ file header, function description
|
|
|
|
|
filename The filename of the current file. Only available for
|
|
|
|
|
the file header template. file header
|
|
|
|
|
gpl This wildcard inserts a short GPL notice. file header
|
2006-06-04 13:10:16 +00:00
|
|
|
|
functionname The function name of the function at the cursor
|
2005-11-22 12:26:26 +00:00
|
|
|
|
position. This wildcard will only be replaced in the function
|
|
|
|
|
description template. function description
|
|
|
|
|
If you need any other wildcards or a special date/time format,
|
|
|
|
|
please email the author <enrico.troeger@uvena.de>.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Appendix A. Scintilla keyboard commands
|
|
|
|
|
|
|
|
|
|
A.1. Keyboard commands
|
|
|
|
|
|
|
|
|
|
Keyboard commands for Scintilla mostly follow common Windows
|
|
|
|
|
and GTK+ conventions. All move keys (arrows, page up/down,
|
|
|
|
|
home and end) allows to extend or reduce the stream selection
|
|
|
|
|
when holding the Shift key, and the rectangular selection when
|
|
|
|
|
holding the Shift and Alt keys. Some keys may not be available
|
|
|
|
|
with some national keyboards or because they are taken by the
|
|
|
|
|
system such as by a window manager on GTK+. Keyboard
|
|
|
|
|
equivalents of menu commands are listed in the menus. Some
|
|
|
|
|
less common commands with no menu equivalent are:
|
|
|
|
|
|
|
|
|
|
Table A-1. Scintilla keyboard commands
|
|
|
|
|
Action Shortcut key
|
|
|
|
|
Magnify text size. Ctrl+Keypad+
|
|
|
|
|
Reduce text size. Ctrl+Keypad-
|
|
|
|
|
Restore text size to normal. Ctrl+Keypad/
|
|
|
|
|
Indent block. Tab
|
|
|
|
|
Dedent block. Shift+Tab
|
|
|
|
|
Delete to start of word. Ctrl+BackSpace
|
|
|
|
|
Delete to end of word. Ctrl+Delete
|
|
|
|
|
Delete to start of line. Ctrl+Shift+BackSpace
|
|
|
|
|
Delete to end of line. Ctrl+Shift+Delete
|
|
|
|
|
Go to start of document. Ctrl+Home
|
|
|
|
|
Extend selection to start of document. Ctrl+Shift+Home
|
|
|
|
|
Go to start of display line. Alt+Home
|
|
|
|
|
Extend selection to start of display line. Alt+Shift+Home
|
|
|
|
|
Go to end of document. Ctrl+End
|
|
|
|
|
Extend selection to end of document. Ctrl+Shift+End
|
|
|
|
|
Go to end of display line. Alt+End
|
|
|
|
|
Extend selection to end of display line. Alt+Shift+End
|
|
|
|
|
Scroll up. Ctrl+Up
|
|
|
|
|
Scroll down. Ctrl+Down
|
|
|
|
|
Line cut. Ctrl+L
|
|
|
|
|
Line copy. Ctrl+Shift+T
|
|
|
|
|
Line delete. Ctrl+Shift+L
|
|
|
|
|
Line transpose with previous. Ctrl+T
|
|
|
|
|
Selection duplicate. Ctrl+D
|
|
|
|
|
Previous paragraph. Shift extends selection. Ctrl+[
|
|
|
|
|
Next paragraph. Shift extends selection. Ctrl+]
|
|
|
|
|
Previous word. Shift extends selection. Ctrl+Left
|
|
|
|
|
Next word. Shift extends selection. Ctrl+Right
|
|
|
|
|
Previous word part. Shift extends selection Ctrl+/
|
|
|
|
|
Next word part. Shift extends selection. Ctrl+\
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
|
|
|
|
Appendix B. GNU General Public License
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.1. Preamble
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
The licenses for most software are designed to take away your
|
|
|
|
|
freedom to share and change it. By contrast, the GNU General
|
|
|
|
|
Public License is intended to guarantee your freedom to share
|
|
|
|
|
and change free software - to make sure the software is free
|
|
|
|
|
for all its users. This General Public License applies to most
|
|
|
|
|
of the Free Software Foundation's software and to any other
|
|
|
|
|
program whose authors commit to using it. (Some other Free
|
|
|
|
|
Software Foundation software is covered by the GNU Library
|
|
|
|
|
General Public License instead.) You can apply it to your
|
|
|
|
|
programs, too.
|
|
|
|
|
|
|
|
|
|
When we speak of free software, we are referring to freedom,
|
|
|
|
|
not price. Our General Public Licenses are designed to make
|
|
|
|
|
sure that you have the freedom to distribute copies of free
|
|
|
|
|
software (and charge for this service if you wish), that you
|
|
|
|
|
receive source code or can get it if you want it, that you can
|
|
|
|
|
change the software or use pieces of it in new free programs;
|
|
|
|
|
and that you know you can do these things.
|
|
|
|
|
|
|
|
|
|
To protect your rights, we need to make restrictions that
|
|
|
|
|
forbid anyone to deny you these rights or to ask you to
|
|
|
|
|
surrender the rights. These restrictions translate to certain
|
|
|
|
|
responsibilities for you if you distribute copies of the
|
|
|
|
|
software, or if you modify it.
|
|
|
|
|
|
|
|
|
|
For example, if you distribute copies of such a program,
|
|
|
|
|
whether gratis or for a fee, you must give the recipients all
|
|
|
|
|
the rights that you have. You must make sure that they, too,
|
|
|
|
|
receive or can get the source code. And you must show them
|
|
|
|
|
these terms so they know their rights.
|
|
|
|
|
|
|
|
|
|
We protect your rights with two steps:
|
|
|
|
|
|
|
|
|
|
1. copyright the software, and
|
|
|
|
|
2. offer you this license which gives you legal permission to
|
|
|
|
|
copy, distribute and/or modify the software.
|
|
|
|
|
|
|
|
|
|
Also, for each author's protection and ours, we want to make
|
|
|
|
|
certain that everyone understands that there is no warranty
|
|
|
|
|
for this free software. If the software is modified by someone
|
|
|
|
|
else and passed on, we want its recipients to know that what
|
|
|
|
|
they have is not the original, so that any problems introduced
|
|
|
|
|
by others will not reflect on the original authors'
|
|
|
|
|
reputations.
|
|
|
|
|
|
|
|
|
|
Finally, any free program is threatened constantly by software
|
|
|
|
|
patents. We wish to avoid the danger that redistributors of a
|
|
|
|
|
free program will individually obtain patent licenses, in
|
|
|
|
|
effect making the program proprietary. To prevent this, we
|
|
|
|
|
have made it clear that any patent must be licensed for
|
|
|
|
|
everyone's free use or not licensed at all.
|
|
|
|
|
|
|
|
|
|
The precise terms and conditions for copying, distribution and
|
|
|
|
|
modification follow.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.1. Section 0
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
This License applies to any program or other work which
|
|
|
|
|
contains a notice placed by the copyright holder saying it may
|
|
|
|
|
be distributed under the terms of this General Public License.
|
|
|
|
|
The "Program", below, refers to any such program or work, and
|
|
|
|
|
a "work based on the Program " means either the Program or any
|
|
|
|
|
derivative work under copyright law: that is to say, a work
|
|
|
|
|
containing the Program or a portion of it, either verbatim or
|
|
|
|
|
with modifications and/or translated into another language.
|
|
|
|
|
(Hereinafter, translation is included without limitation in
|
|
|
|
|
the term "modification ".) Each licensee is addressed as
|
|
|
|
|
"you".
|
|
|
|
|
|
|
|
|
|
Activities other than copying, distribution and modification
|
|
|
|
|
are not covered by this License; they are outside its scope.
|
|
|
|
|
The act of running the Program is not restricted, and the
|
|
|
|
|
output from the Program is covered only if its contents
|
|
|
|
|
constitute a work based on the Program (independent of having
|
|
|
|
|
been made by running the Program). Whether that is true
|
|
|
|
|
depends on what the Program does.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.2. Section 1
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
You may copy and distribute verbatim copies of the Program's
|
|
|
|
|
source code as you receive it, in any medium, provided that
|
|
|
|
|
you conspicuously and appropriately publish on each copy an
|
|
|
|
|
appropriate copyright notice and disclaimer of warranty; keep
|
|
|
|
|
intact all the notices that refer to this License and to the
|
|
|
|
|
absence of any warranty; and give any other recipients of the
|
|
|
|
|
Program a copy of this License along with the Program.
|
|
|
|
|
|
|
|
|
|
You may charge a fee for the physical act of transferring a
|
|
|
|
|
copy, and you may at your option offer warranty protection in
|
|
|
|
|
exchange for a fee.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.3. Section 2
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
You may modify your copy or copies of the Program or any
|
|
|
|
|
portion of it, thus forming a work based on the Program, and
|
|
|
|
|
copy and distribute such modifications or work under the terms
|
|
|
|
|
of Section 1 above, provided that you also meet all of these
|
|
|
|
|
conditions:
|
|
|
|
|
|
|
|
|
|
1. You must cause the modified files to carry prominent
|
|
|
|
|
notices stating that you changed the files and the date of
|
|
|
|
|
any change.
|
|
|
|
|
2. You must cause any work that you distribute or publish,
|
|
|
|
|
that in whole or in part contains or is derived from the
|
|
|
|
|
Program or any part thereof, to be licensed as a whole at
|
|
|
|
|
no charge to all third parties under the terms of this
|
|
|
|
|
License.
|
|
|
|
|
3. If the modified program normally reads commands
|
|
|
|
|
interactively when run, you must cause it, when started
|
|
|
|
|
running for such interactive use in the most ordinary way,
|
|
|
|
|
to print or display an announcement including an
|
|
|
|
|
appropriate copyright notice and a notice that there is no
|
|
|
|
|
warranty (or else, saying that you provide a warranty) and
|
|
|
|
|
that users may redistribute the program under these
|
|
|
|
|
conditions, and telling the user how to view a copy of
|
|
|
|
|
this License.
|
|
|
|
|
|
|
|
|
|
Note Exception:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
If the Program itself is interactive but does not normally
|
|
|
|
|
print such an announcement, your work based on the Program is
|
|
|
|
|
not required to print an announcement.)
|
|
|
|
|
|
|
|
|
|
These requirements apply to the modified work as a whole. If
|
|
|
|
|
identifiable sections of that work are not derived from the
|
|
|
|
|
Program, and can be reasonably considered independent and
|
|
|
|
|
separate works in themselves, then this License, and its
|
|
|
|
|
terms, do not apply to those sections when you distribute them
|
|
|
|
|
as separate works. But when you distribute the same sections
|
|
|
|
|
as part of a whole which is a work based on the Program, the
|
|
|
|
|
distribution of the whole must be on the terms of this
|
|
|
|
|
License, whose permissions for other licensees extend to the
|
|
|
|
|
entire whole, and thus to each and every part regardless of
|
|
|
|
|
who wrote it.
|
|
|
|
|
|
|
|
|
|
Thus, it is not the intent of this section to claim rights or
|
|
|
|
|
contest your rights to work written entirely by you; rather,
|
|
|
|
|
the intent is to exercise the right to control the
|
|
|
|
|
distribution of derivative or collective works based on the
|
|
|
|
|
Program.
|
|
|
|
|
|
|
|
|
|
In addition, mere aggregation of another work not based on the
|
|
|
|
|
Program with the Program (or with a work based on the Program)
|
|
|
|
|
on a volume of a storage or distribution medium does not bring
|
|
|
|
|
the other work under the scope of this License.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.4. Section 3
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
You may copy and distribute the Program (or a work based on
|
|
|
|
|
it, under Section 2 in object code or executable form under
|
|
|
|
|
the terms of Sections 1 and 2 above provided that you also do
|
|
|
|
|
one of the following:
|
|
|
|
|
|
|
|
|
|
1. Accompany it with the complete corresponding
|
|
|
|
|
machine-readable source code, which must be distributed
|
|
|
|
|
under the terms of Sections 1 and 2 above on a medium
|
|
|
|
|
customarily used for software interchange; or,
|
|
|
|
|
2. Accompany it with a written offer, valid for at least
|
|
|
|
|
three years, to give any third party, for a charge no more
|
|
|
|
|
than your cost of physically performing source
|
|
|
|
|
distribution, a complete machine-readable copy of the
|
|
|
|
|
corresponding source code, to be distributed under the
|
|
|
|
|
terms of Sections 1 and 2 above on a medium customarily
|
|
|
|
|
used for software interchange; or,
|
|
|
|
|
3. Accompany it with the information you received as to the
|
|
|
|
|
offer to distribute corresponding source code. (This
|
|
|
|
|
alternative is allowed only for noncommercial distribution
|
|
|
|
|
and only if you received the program in object code or
|
|
|
|
|
executable form with such an offer, in accord with
|
|
|
|
|
Subsection b above.)
|
|
|
|
|
|
|
|
|
|
The source code for a work means the preferred form of the
|
|
|
|
|
work for making modifications to it. For an executable work,
|
|
|
|
|
complete source code means all the source code for all modules
|
|
|
|
|
it contains, plus any associated interface definition files,
|
|
|
|
|
plus the scripts used to control compilation and installation
|
|
|
|
|
of the executable. However, as a special exception, the source
|
|
|
|
|
code distributed need not include anything that is normally
|
|
|
|
|
distributed (in either source or binary form) with the major
|
|
|
|
|
components (compiler, kernel, and so on) of the operating
|
|
|
|
|
system on which the executable runs, unless that component
|
|
|
|
|
itself accompanies the executable.
|
|
|
|
|
|
|
|
|
|
If distribution of executable or object code is made by
|
|
|
|
|
offering access to copy from a designated place, then offering
|
|
|
|
|
equivalent access to copy the source code from the same place
|
|
|
|
|
counts as distribution of the source code, even though third
|
|
|
|
|
parties are not compelled to copy the source along with the
|
|
|
|
|
object code.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.5. Section 4
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
You may not copy, modify, sublicense, or distribute the
|
|
|
|
|
Program except as expressly provided under this License. Any
|
|
|
|
|
attempt otherwise to copy, modify, sublicense or distribute
|
|
|
|
|
the Program is void, and will automatically terminate your
|
|
|
|
|
rights under this License. However, parties who have received
|
|
|
|
|
copies, or rights, from you under this License will not have
|
|
|
|
|
their licenses terminated so long as such parties remain in
|
|
|
|
|
full compliance.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.6. Section 5
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
You are not required to accept this License, since you have
|
|
|
|
|
not signed it. However, nothing else grants you permission to
|
|
|
|
|
modify or distribute the Program or its derivative works.
|
|
|
|
|
These actions are prohibited by law if you do not accept this
|
|
|
|
|
License. Therefore, by modifying or distributing the Program
|
|
|
|
|
(or any work based on the Program), you indicate your
|
|
|
|
|
acceptance of this License to do so, and all its terms and
|
|
|
|
|
conditions for copying, distributing or modifying the Program
|
|
|
|
|
or works based on it.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.7. Section 6
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
Each time you redistribute the Program (or any work based on
|
|
|
|
|
the Program), the recipient automatically receives a license
|
|
|
|
|
from the original licensor to copy, distribute or modify the
|
|
|
|
|
Program subject to these terms and conditions. You may not
|
|
|
|
|
impose any further restrictions on the recipients' exercise of
|
|
|
|
|
the rights granted herein. You are not responsible for
|
|
|
|
|
enforcing compliance by third parties to this License.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.8. Section 7
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
If, as a consequence of a court judgment or allegation of
|
|
|
|
|
patent infringement or for any other reason (not limited to
|
|
|
|
|
patent issues), conditions are imposed on you (whether by
|
|
|
|
|
court order, agreement or otherwise) that contradict the
|
|
|
|
|
conditions of this License, they do not excuse you from the
|
|
|
|
|
conditions of this License. If you cannot distribute so as to
|
|
|
|
|
satisfy simultaneously your obligations under this License and
|
|
|
|
|
any other pertinent obligations, then as a consequence you may
|
|
|
|
|
not distribute the Program at all. For example, if a patent
|
|
|
|
|
license would not permit royalty-free redistribution of the
|
|
|
|
|
Program by all those who receive copies directly or indirectly
|
|
|
|
|
through you, then the only way you could satisfy both it and
|
|
|
|
|
this License would be to refrain entirely from distribution of
|
|
|
|
|
the Program.
|
|
|
|
|
|
|
|
|
|
If any portion of this section is held invalid or
|
|
|
|
|
unenforceable under any particular circumstance, the balance
|
|
|
|
|
of the section is intended to apply and the section as a whole
|
|
|
|
|
is intended to apply in other circumstances.
|
|
|
|
|
|
|
|
|
|
It is not the purpose of this section to induce you to
|
|
|
|
|
infringe any patents or other property right claims or to
|
|
|
|
|
contest validity of any such claims; this section has the sole
|
|
|
|
|
purpose of protecting the integrity of the free software
|
|
|
|
|
distribution system, which is implemented by public license
|
|
|
|
|
practices. Many people have made generous contributions to the
|
|
|
|
|
wide range of software distributed through that system in
|
|
|
|
|
reliance on consistent application of that system; it is up to
|
|
|
|
|
the author/donor to decide if he or she is willing to
|
|
|
|
|
distribute software through any other system and a licensee
|
|
|
|
|
cannot impose that choice.
|
|
|
|
|
|
|
|
|
|
This section is intended to make thoroughly clear what is
|
|
|
|
|
believed to be a consequence of the rest of this License.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.9. Section 8
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
If the distribution and/or use of the Program is restricted in
|
|
|
|
|
certain countries either by patents or by copyrighted
|
|
|
|
|
interfaces, the original copyright holder who places the
|
|
|
|
|
Program under this License may add an explicit geographical
|
|
|
|
|
distribution limitation excluding those countries, so that
|
|
|
|
|
distribution is permitted only in or among countries not thus
|
|
|
|
|
excluded. In such case, this License incorporates the
|
|
|
|
|
limitation as if written in the body of this License.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.10. Section 9
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
The Free Software Foundation may publish revised and/or new
|
|
|
|
|
versions of the General Public License from time to time. Such
|
|
|
|
|
new versions will be similar in spirit to the present version,
|
|
|
|
|
but may differ in detail to address new problems or concerns.
|
|
|
|
|
|
|
|
|
|
Each version is given a distinguishing version number. If the
|
|
|
|
|
Program specifies a version number of this License which
|
|
|
|
|
applies to it and "any later version", you have the option of
|
|
|
|
|
following the terms and conditions either of that version or
|
|
|
|
|
of any later version published by the Free Software
|
|
|
|
|
Foundation. If the Program does not specify a version number
|
|
|
|
|
of this License, you may choose any version ever published by
|
|
|
|
|
the Free Software Foundation.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.11. Section 10
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
If you wish to incorporate parts of the Program into other
|
|
|
|
|
free programs whose distribution conditions are different,
|
|
|
|
|
write to the author to ask for permission. For software which
|
|
|
|
|
is copyrighted by the Free Software Foundation, write to the
|
|
|
|
|
Free Software Foundation; we sometimes make exceptions for
|
|
|
|
|
this. Our decision will be guided by the two goals of
|
|
|
|
|
preserving the free status of all derivatives of our free
|
|
|
|
|
software and of promoting the sharing and reuse of software
|
|
|
|
|
generally.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.12. Section 11 NO WARRANTY
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
|
|
|
|
|
WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
|
|
|
|
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
|
|
|
|
|
COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS
|
|
|
|
|
IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
|
|
|
|
|
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
|
|
|
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
|
|
|
|
|
ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
|
|
|
|
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME
|
|
|
|
|
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.2.13. Section 12
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
|
|
|
|
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
|
|
|
|
|
MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE
|
|
|
|
|
LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
|
|
|
|
|
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
|
|
|
|
|
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO
|
|
|
|
|
LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES
|
|
|
|
|
SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM
|
|
|
|
|
TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR
|
|
|
|
|
OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
|
|
|
|
DAMAGES.
|
|
|
|
|
|
|
|
|
|
END OF TERMS AND CONDITIONS
|
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
B.3. How to Apply These Terms to Your New Programs
|
2005-11-22 12:26:26 +00:00
|
|
|
|
|
|
|
|
|
If you develop a new program, and you want it to be of the
|
|
|
|
|
greatest possible use to the public, the best way to achieve
|
|
|
|
|
this is to make it free software which everyone can
|
|
|
|
|
redistribute and change under these terms.
|
|
|
|
|
|
|
|
|
|
To do so, attach the following notices to the program. It is
|
|
|
|
|
safest to attach them to the start of each source file to most
|
|
|
|
|
effectively convey the exclusion of warranty; and each file
|
|
|
|
|
should have at least the "copyright" line and a pointer to
|
|
|
|
|
where the full notice is found.
|
|
|
|
|
|
|
|
|
|
<one line to give the program's name and a brief idea of what
|
|
|
|
|
it does.> Copyright (C) <year> <name of author>
|
|
|
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
|
|
|
modify it 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.
|
|
|
|
|
|
|
|
|
|
This program is distributed in the hope that it will be
|
|
|
|
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
|
|
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
|
|
|
PURPOSE. See the GNU General Public License for more details.
|
|
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public
|
|
|
|
|
License along with this program; if not, write to the Free
|
|
|
|
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
|
|
|
MA 02111-1307 USA
|
|
|
|
|
|
|
|
|
|
Also add information on how to contact you by electronic and
|
|
|
|
|
paper mail.
|
|
|
|
|
|
|
|
|
|
If the program is interactive, make it output a short notice
|
|
|
|
|
like this when it starts in an interactive mode:
|
|
|
|
|
|
|
|
|
|
Gnomovision version 69, Copyright (C) year name of author
|
|
|
|
|
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
|
|
|
|
|
type `show w'. This is free software, and you are welcome to
|
|
|
|
|
redistribute it under certain conditions; type `show c' for
|
|
|
|
|
details.
|
|
|
|
|
|
|
|
|
|
The hypothetical commands `show w' and `show c' should show
|
|
|
|
|
the appropriate parts of the General Public License. Of
|
|
|
|
|
course, the commands you use may be called something other
|
|
|
|
|
than `show w' and `show c'; they could even be mouse-clicks or
|
|
|
|
|
menu items--whatever suits your program.
|
|
|
|
|
|
|
|
|
|
You should also get your employer (if you work as a
|
|
|
|
|
programmer) or your school, if any, to sign a "copyright
|
|
|
|
|
disclaimer" for the program, if necessary. Here is a sample;
|
|
|
|
|
alter the names:
|
|
|
|
|
|
|
|
|
|
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
|
|
|
|
program `Gnomovision' (which makes passes at compilers)
|
|
|
|
|
written by James Hacker.
|
|
|
|
|
|
|
|
|
|
<signature of Ty Coon>, 1 April 1989 Ty Coon, President of
|
|
|
|
|
Vice
|
|
|
|
|
|
|
|
|
|
This General Public License does not permit incorporating your
|
|
|
|
|
program into proprietary programs. If your program is a
|
|
|
|
|
subroutine library, you may consider it more useful to permit
|
|
|
|
|
linking proprietary applications with the library. If this is
|
|
|
|
|
what you want to do, use the GNU Library General Public
|
|
|
|
|
License instead of this License.
|
2006-07-01 17:41:46 +00:00
|
|
|
|
_________________________________________________________
|
|
|
|
|
|
2006-08-09 17:18:25 +00:00
|
|
|
|
Appendix C. License for Scintilla and SciTE
|
2006-07-01 17:41:46 +00:00
|
|
|
|
|
|
|
|
|
Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org>
|
|
|
|
|
|
|
|
|
|
All Rights Reserved
|
|
|
|
|
|
|
|
|
|
Permission to use, copy, modify, and distribute this software
|
|
|
|
|
and its documentation for any purpose and without fee is
|
|
|
|
|
hereby granted, provided that the above copyright notice
|
|
|
|
|
appear in all copies and that both that copyright notice and
|
|
|
|
|
this permission notice appear in supporting documentation.
|
|
|
|
|
|
|
|
|
|
NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
|
|
|
|
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
|
|
|
AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY
|
|
|
|
|
SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
|
|
|
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
|
|
|
|
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
|
|
|
|
|
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
|
|
|
PERFORMANCE OF THIS SOFTWARE.
|