• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

build-aux/H09-Oct-2021-16,82912,531

ctags/H03-May-2022-78,78959,390

data/H03-May-2022-35,66134,288

doc/H03-May-2022-5,3923,991

icons/H03-May-2022-7,7356,796

m4/H09-Oct-2021-10,8839,697

plugins/H03-May-2022-7,1555,474

po/H09-Oct-2021-307,286239,587

scintilla/H03-May-2022-85,93471,451

scripts/H03-May-2022-461354

src/H03-May-2022-74,03251,854

tests/H03-May-2022-29,73923,006

AUTHORSH A D09-Oct-2021406 1511

COPYINGH A D09-Oct-202117.6 KiB341281

ChangeLogH A D09-Oct-20211.8 MiB54,10339,337

ChangeLog.pre-1-22H A D09-Oct-2021733.1 KiB19,68114,631

HACKINGH A D09-Oct-202130.7 KiB798629

INSTALLH A D09-Oct-20217.6 KiB183143

Makefile.amH A D09-Oct-20212.7 KiB9168

Makefile.inH A D03-May-202234.4 KiB1,077962

NEWSH A D09-Oct-2021115.6 KiB2,7542,361

READMEH A D09-Oct-20214.6 KiB139102

README.I18NH A D09-Oct-20213.5 KiB9165

README.PackagersH A D09-Oct-20213.6 KiB8470

THANKSH A D09-Oct-20219.9 KiB177170

TODOH A D09-Oct-20211.5 KiB4637

aclocal.m4H A D09-Oct-202181.2 KiB2,3292,117

autogen.shH A D09-Oct-20212.7 KiB10281

config.h.inH A D09-Oct-20217.3 KiB286200

configureH A D09-Oct-2021748.8 KiB26,02221,684

configure.acH A D09-Oct-20215.4 KiB192162

geany.desktop.inH A D09-Oct-2021565 1413

geany.exe.manifestH A D09-Oct-2021767 2523

geany.nsi.inH A D09-Oct-202116 KiB472413

geany.pc.inH A D09-Oct-2021383 1513

geany_private.rcH A D09-Oct-20211,012 3933

README

1Geany - A fast and lightweight IDE
2----------------------------------
3
4
5About
6-----
7Geany is a small and lightweight integrated development environment.
8It was developed to provide a small and fast IDE, which has only a
9few dependencies from other packages. Another goal was to be as independent
10as possible from a special Desktop Environment like KDE or GNOME. So it
11is using only the GTK+ toolkit and therefore you need only the
12GTK+ runtime libraries to run Geany.
13
14
15Features
16--------
17The basic features of Geany are:
18
19- syntax highlighting
20- code completion
21- auto completion of often used constructs like if, for and while
22- auto completion of XML and HTML tags
23- call tips
24- folding
25- many supported filetypes like C, Java, PHP, HTML, Python, Perl, Pascal
26- symbol lists
27- embedded terminal emulation
28- extensibility through plugins
29
30
31Installation from distribution packages
32---------------------------------------
33Using distribution packages on Linux, BSD and similar distributions
34is the easiest and recommended way. This way you will also benefit
35from automatic Geany updates by the package manager of the distribution.
36
37Packages are available for most distributions including Debian, Fedora, Ubuntu
38and many more.
39
40
41Installation on Mac OS and Windows
42----------------------------------
43Prebuilt binary packages for Mac OS and Windows can be found on
44https://www.geany.org.
45
46
47Installation from sources
48-------------------------
49
50Requirements
51++++++++++++
52For compiling Geany yourself, you will need the GTK3 libraries and
53header files. You will also need its dependency libraries and header
54files, such as Pango, Glib and ATK. All these files are available at
55https://www.gtk.org.
56
57Furthermore you need, of course, a C compiler and the Make tool; a C++
58compiler is also needed for the required Scintilla library included. The
59GNU versions of these tools are recommended.
60
61
62To build the user manual you need *rst2html* from Docutils. A pre-built
63version of the manual is available in distribution tarballs and will be used as
64fallback if *rst2html* is missing. When building from Git however, that
65pre-built version is not included and *rst2html* is required by default.
66You can explicitly disable building the user manual using the
67``--disable-html-docs`` *configure* flag, but this will result in not
68installing a local version of the user manual, and Geany will then try
69and open the online version instead when requested.
70
71
72.. note::
73    Building Geany from source on Mac OS and Windows is more complicated
74    and is out of scope of this document. For more information on
75    building instructions for these platforms, please check the wiki
76    at https://wiki.geany.org/howtos/.
77
78Installing from a Git clone
79+++++++++++++++++++++++++++
80
81Install Autotools (*automake*, *autoconf* and *libtool*), *intltool*,
82and the GLib development files **before** running any of the following
83commands, as well as *rst2html* from Docutils (see above for details).
84Then, run ``./autogen.sh`` and then follow the instructions for
85`installing from a release tarball`_.
86
87Installing from a release tarball
88+++++++++++++++++++++++++++++++++
89
90Run the the following three commands::
91
92    $ ./configure
93    $ make
94    (as root, or using sudo)
95    % make install
96
97For more configuration details run ``./configure --help``.
98
99If there are any errors during compilation, check your build environment
100and try to find the error, otherwise contact the mailing list or one of
101the authors.
102
103See the manual for details (geany.txt/geany.html).
104
105
106Usage
107-----
108To run Geany just type::
109
110    $ geany
111
112on a console or use the applications menu from your desktop environment.
113For command line options, see the manual page of Geany or run::
114
115    $ geany --help
116
117for details. Or look into the documentation in the *doc/* directory.
118The most important option probably is ``-c`` or ``--config``, where you can
119specify an alternate configuration directory.
120
121
122License
123-------
124Geany is distributed under the terms of the GNU General Public License
125as published by the Free Software Foundation; either version 2 of the
126License, or (at your option) any later version.  A copy of this license
127can be found in the file COPYING included with the source code of this
128program.
129The included Scintilla library (found in the subdirectory scintilla/)
130has its own license, which can be found in the file scintilla/License.txt
131included with the source code of this program.
132
133
134Ideas, questions, patches and bug reports
135-----------------------------------------
136See https://www.geany.org/.
137If you add something, or fix a bug, please create a pull request at
138https://github.com/geany/geany/. Also see the HACKING file.
139

README.I18N

1Quick Guide for new translations
2--------------------------------
3
4If you would like to translate Geany into another language, have a look at the
5language statistics page at [1] first to see if your desired language already
6exists. If it already exists, please read the "Notes for updating translations"
7section. Otherwise, get the Git version of Geany, change to the po directory and
8start the new translation with:
9
10$ msginit -l ll_CC -o ll.po -i geany.pot
11
12Fill in ll with the language code and CC with the country code. For example, to
13translate Geany into Italian you would type:
14
15$ msginit -l it_IT -o it.po -i geany.pot
16
17This will create a file it.po. This file can be opened with a text editor
18(e.g. Geany ;-)) or a graphical program like PoEdit [2]. There are also several
19other GUI programs for working on translations.
20
21You don't need to modify the file po/LINGUAS, it is regenerated automatically on
22the next build.
23
24When you have finished editing the file, check the file with:
25
26$ msgfmt -c --check-accelerators=_ it.po
27
28Please ensure you also translate the mnemonic letters (strings containing a
29"_" before a letter, also called "accelerators" on some platforms/toolkits).
30When the user wishes to activate a menu item using their keyboard, they will
31use this letter to pick an item from the menu.
32
33Here are a few notes on picking which letter to use:
34
35* Always follow platform/toolkit conventions (for example "t" for "Cut") even
36if they don't necessarily seem obvious.
37* Try to choose the first letter of the command name, where this is the most
38appropriate letter (for example "S" for "Save"), assuming it's not already
39used in the same menu.
40* Try not to use the same character more than once in the same menu as this
41will cause the user to have to press the mnemonic's key multiple times to
42select the correct menu item.
43* If there is no letter in the text that can easily be entered from a keyboard
44then choose another character that can be, and put it in parenthesis after the
45translated text.
46* Try not to change which letter is used whenever possible as it is not
47user-configurable and users may have become accustomed to using the existing
48mnemonic key.
49
50You can also use intl_stats.sh, e.g. by running the following command in the top
51source directory of Geany:
52
53$ po/intl_stats.sh -a it
54
55This will print some information about the Italian translation and checks for
56menu accelerators.
57
58When you have finished your work - which doesn't mean you finished the
59translation, you will not have to work alone - send the file to the translation
60mailing list [3] or directly to Frank Lanitz [4] and he will add the translation
61to Geany then.
62
63It is a good idea to let any translator and Frank know before you start or while
64translating, because they can give you hints on translating and Frank can ensure
65that a translation is not already in progress.
66
67
68Notes for updating translations
69-------------------------------
70
71If you want to update an existing translation, please contact the translation
72mailing list [3] and/or Frank Lanitz [4] directly. He is supervising all
73translation issues and will contact the maintainer of the translation you want
74to update to avoid any conflicts.
75
76Some translation statistics can be found at:
77http://i18n.geany.org/
78
79
80I18n mailing list
81-----------------
82
83There is also a mailing list dedicated to translation issues. Please visit
84https://www.geany.org/Support/MailingList#geany-i18 for more information.
85
86
87[1] http://i18n.geany.org/
88[2] http://www.poedit.net/
89[3] https://www.geany.org/Support/MailingList#geany-i18
90[4] Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
91

README.Packagers

1Notes for package maintainers
2-----------------------------
3
4
5About this file
6---------------
7The following notes are intended for package maintainers. These are not
8meant as strict rules but only as hints and ideas to make a package
9maintainer's life a little bit easier.
10So it doesn't make much sense to include this file in any created
11packages for general distribution.
12
13
14Packaging hints
15---------------
16If the final file size of the created packaged is a problem, you might
17ignore some files and don't package them or put them into a separate
18package. This can be easily done (without any further complications)
19with the translations files(files in %prefix/share/locale/).
20Another possibility is to skip the tags files in the data/ subdirectory.
21These are only for auto completion of global symbols. If the files are
22missing Geany just doesn't provide these global symbol auto completion
23but all other things will work anyways.
24You can also skip packaging the full HTML documentation including
25images. But if you do so, please include at least the text form of the
26manual.
27What you shouldn't skip in your package: the filetype.* files in the
28data/ subdirectory, these files are important. If they are missing,
29Geany still has a fallback mechanism for syntax highlighting (if
30filetypes.common is installed) but several other features for certain
31filetypes will fail (mainly build support).
32
33For 32 bit builds targeting systems which support large filesystems
34(eg XFS) it may be necessary to build with -D_FILE_OFFSET_BITS=64.
35
36
37Testing your package
38--------------------
39There are a few things to take care of when you create a package:
40- Please check whether you include the following files:
41  ScintillaLicense.txt, README, manual.txt, COPYING.
42  ScintillaLicense.txt is the name of the installed file in the doc/
43  directory. In the source distribution, this file can be found in
44  scintilla/License.txt.
45  The file COPYING is the GPLv2 license text and should(have to?) be
46  included in your package.
47- Start Geany after it was installed out of your package. Pass the
48  command line argument "-v" to see whether Geany complains about
49  missing files.
50- Check whether the help menu item (Help->Help or F1) works and opens
51  the local installed HTML documentation in your browser (if it opens
52  the manual on the website you didn't install the HTML manual correctly
53  and Geany falls back to the online manual).
54- Check the About dialog (Help->About) whether it displays the full
55  GPLv2 license text on the last tab("License").
56
57
58Feedback
59--------
60If you have to modify anything to package the Geany sources for your
61distribution/target and these changes might be generally useful, please
62report your changes to us(the Geany developers) so we can apply them.
63Such changes could be removing/adding any files, modifying the autotools
64configuration, any modifications to some "meta" files (like
65geany.desktop, images/icons, ...) or even if you have to
66modify the source code to fix broken compilation or something like this.
67Please inform us about changes you made, so maybe you don't have to
68change it again with the next release and we can fix it in Geany itself
69so others could also benefit from these changes.
70
71
72Announce your packages
73---------------------
74After finishing your package creation, feel free to drop a note on
75Geany's mailing list or directly to us (the Geany developers) to
76inform us about it. If you wish, we can also add a link on Geany's
77website to your package.
78
79
80Geany announcements
81-------------------
82Package maintainers are encouraged to subscribe to the Geany mailing
83list to stay informed about major changes and of course, new releases.
84