Nick Treleaven
f20b4e90f1
Merge revisions 2537:2558 from the custom-filetypes branch:
Note: this breaks the API. This commit is to restructure most of the filetypes code that affects the plugin API, custom filetype support is not implemented. Add filetypes_array to GeanyData for plugins to access a dynamic array of filetype pointers. Remove old filetypes array from API. Use a hash table for filetypes, using filetype::name keys. Replace filetypes_get_from_uid() with filetypes_lookup_by_name(). Store filetype::name instead of unique ID when saving sessions. Remove all filetype UID code. Add GEANY_MAX_BUILT_IN_FILETYPES. Remove GEANY_MAX_FILE_TYPES - use filetypes_array->len (or GEANY_MAX_BUILT_IN_FILETYPES) instead. Rename GEANY_FILETYPES_ALL GEANY_FILETYPES_NONE. Make Open dialog file filter work for filetypes added after GEANY_FILETYPES_NONE (really the None filetype should be made the first element in filetypes_array, but this would need rewriting quite a lot of code). Add deprecated aliases for GEANY_MAX_FILE_TYPES and GEANY_FILETYPES_ALL. Remove unused filetype::item field. Create FullFileType private type that 'inherits' from filetype (FullFileType* can be cast to filetype*). This is used in filetype_new() to hide filetype struct fields from the API. Remove radio_items[] and use FullFileType::menu_item instead. Make filetypes_detect_from_extension() work for all filetypes in filetypes_hash. Add filetype_new() to create and initialize a new filetype. Refactor open_session_file() from configuration_open_files(). Refactor get_session_file_string() from configuration_save_session_files(). Refactor create_set_filetype_menu() from filetypes_init(). Move print_filetypes() out of parse_command_line_options(); git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2559 ea778897-0a13-0410-b9d1-a72fbfd435f5
Geany - A fast and lightweight IDE ---------------------------------- About ----- Geany is a small and lightweight integrated development environment. It was developed to provide a small and fast IDE, which has only a few dependencies from other packages. Another goal was to be as independent as possible from a special Desktop Environment like KDE or GNOME. So it is using only the GTK2 toolkit and therefore you need only the GTK2 runtime libraries to run Geany. Features -------- The basic features of Geany are: - syntax highlighting - code completion - auto completion of often used constructs like if, for and while - auto completion of XML and HTML tags - call tips - folding - many supported filetypes like C, Java, PHP, HTML, Python, Perl, Pascal - symbol lists - embedded terminal emulation Requirements ------------ For compiling Geany yourself, you will need the GTK (>= 2.6.0) libraries and header files. You will also need its dependency libraries and header files, such as Pango, Glib and ATK. All these files are available at http://www.gtk.org. Furthermore you need, of course, a C compiler and the Make tool; a C++ compiler is also needed for the required Scintilla library included. The GNU versions of these tools are recommended. Installation ------------ Installing Geany is done by the following three commands: $ ./configure $ make $ make install For more configuration details run $ ./configure --help If there are any errors during compilation, check your build environment and try to find the error, otherwise contact one of the authors. Usage ----- To run Geany just type $ geany on a console or use the applications menu from your desktop environment. There a few command line options. See the manual page of Geany or run $ geany --help for details. Or look into the documention in the doc/ directory. The most important option probably is -c or --config, where you can specify an alternate configuration directory. Windows ------- Geany runs also under Windows. To download the binary with all necessary files, visit Geany's homepage. But you should know, that the Windows version is not yet well tested and there are some features missing: - build support (implemented but might be still buggy) - embedded terminal emulation (VTE) - Windows 9x users: in order to run Geany on Windows 95, 98 or ME you need to install the file SHFolder.dll either in the Geany installation directory or in your Windows directory. For more information please visit http://support.microsoft.com/kb/241733. License ------- Geany is distributed under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. A copy of this license can be found in the file COPYING included with the source code of this program. The included Scintilla library (found in the subdirectory scintilla/) has its own license, which can be found in the file scintilla/License.txt included with the source code of this program. Ideas, questions, patches and bug reports ----------------------------------------- See http://geany.uvena.de If you add something, or fix a bug, please send a patch (in 'diff -u' format) to the mailing list or one of the authors. Also see the HACKING file. -- 2005-2008 by Enrico Tröger, Nick Treleaven and Frank Lanitz enrico(dot)troeger(at)uvena(dot)de nick(dot)treleaven(at)btinternet(dot)com frank(at)frank(dot)uvena(dot)de
Description
Languages
C
55.7%
C++
32.9%
VHDL
3%
TeX
2.2%
Fortran
0.7%
Other
4.4%