[anjuta/python-support] language-support-python: Initial import



commit d46b9eac9b4bfc9b876c31407297e1bbcee62e0d
Author: Johannes Schmid <jhs gnome org>
Date:   Sun Aug 1 18:53:15 2010 +0200

    language-support-python: Initial import

 configure.in                                       |    4 +-
 plugins/Makefile.am                                |    3 +-
 plugins/language-support-python/.deps/plugin.Plo   | 1570 +++++++++++++++++
 .../.deps/python-assist.Plo                        | 1535 +++++++++++++++++
 .../language-support-python/.deps/python-utils.Plo | 1427 ++++++++++++++++
 plugins/language-support-python/Makefile.am        |   47 +
 .../anjuta-python-autocomplete.py                  |   71 +
 plugins/language-support-python/plugin.c           | 1806 ++++++++++++++++++++
 plugins/language-support-python/plugin.h           |   87 +
 plugins/language-support-python/python-assist.c    | 1070 ++++++++++++
 plugins/language-support-python/python-assist.h    |   86 +
 .../python-plugin-properties.ui                    |  520 ++++++
 .../python-plugin.plugin.in                        |    5 +
 plugins/language-support-python/python-plugin.xml  |   24 +
 plugins/language-support-python/python-utils.c     |   78 +
 plugins/language-support-python/python-utils.h     |   28 +
 plugins/language-support-python/python_plugin.png  |  Bin 0 -> 2946 bytes
 17 files changed, 8357 insertions(+), 4 deletions(-)
---
diff --git a/configure.in b/configure.in
index 3774ad8..ed33a9b 100644
--- a/configure.in
+++ b/configure.in
@@ -867,9 +867,6 @@ plugins/project-wizard/templates/sdl/Makefile
 plugins/project-wizard/templates/sdl/src/Makefile
 plugins/project-wizard/templates/sdl/po/Makefile
 plugins/project-wizard/templates/licenses/Makefile
-plugins/project-wizard/templates/gnome-applet/Makefile
-plugins/project-wizard/templates/gnome-applet/src/Makefile
-plugins/project-wizard/templates/gnome-applet/po/Makefile
 plugins/project-wizard/templates/library/Makefile
 plugins/project-wizard/templates/library/src/Makefile
 plugins/project-wizard/templates/library/po/Makefile
@@ -882,6 +879,7 @@ plugins/run-program/Makefile
 plugins/starter/Makefile
 plugins/language-support-js/Makefile
 plugins/language-support-vala/Makefile
+plugins/language-support-python/Makefile
 anjuta.desktop.in
 manuals/Makefile
 manuals/reference/Makefile
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index ed7161b..9ef5bd3 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -36,6 +36,7 @@ SUBDIRS = . \
 	starter \
 	js-debugger \
 	language-support-js \
-	language-support-vala
+	language-support-vala \
+	language-support-python
 
 -include $(top_srcdir)/git.mk
diff --git a/plugins/language-support-python/.deps/plugin.Plo b/plugins/language-support-python/.deps/plugin.Plo
new file mode 100644
index 0000000..bda5a97
--- /dev/null
+++ b/plugins/language-support-python/.deps/plugin.Plo
@@ -0,0 +1,1570 @@
+plugin.lo: plugin.c ../../config.h /usr/include/ctype.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h /usr/include/bits/types.h \
+ /usr/include/bits/typesizes.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/xlocale.h /usr/include/stdlib.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stddef.h \
+ /usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
+ /usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
+ /usr/include/bits/select.h /usr/include/bits/sigset.h \
+ /usr/include/bits/time.h /usr/include/sys/sysmacros.h \
+ /usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
+ ../../libanjuta/anjuta-shell.h /usr/include/glib-2.0/glib-object.h \
+ /usr/include/glib-2.0/gobject/gboxed.h \
+ /usr/include/glib-2.0/gobject/gtype.h /usr/include/glib-2.0/glib.h \
+ /usr/include/glib-2.0/glib/galloca.h /usr/include/glib-2.0/glib/gtypes.h \
+ /usr/lib64/glib-2.0/include/glibconfig.h \
+ /usr/include/glib-2.0/glib/gmacros.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/syslimits.h \
+ /usr/include/limits.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/float.h \
+ /usr/include/glib-2.0/glib/garray.h \
+ /usr/include/glib-2.0/glib/gasyncqueue.h \
+ /usr/include/glib-2.0/glib/gthread.h /usr/include/glib-2.0/glib/gerror.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stdarg.h \
+ /usr/include/glib-2.0/glib/gquark.h /usr/include/glib-2.0/glib/gutils.h \
+ /usr/include/glib-2.0/glib/gatomic.h \
+ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \
+ /usr/include/bits/signum.h /usr/include/bits/siginfo.h \
+ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \
+ /usr/include/bits/sigstack.h /usr/include/sys/ucontext.h \
+ /usr/include/bits/sigthread.h /usr/include/glib-2.0/glib/gbase64.h \
+ /usr/include/glib-2.0/glib/gbitlock.h \
+ /usr/include/glib-2.0/glib/gbookmarkfile.h \
+ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \
+ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \
+ /usr/include/glib-2.0/glib/gchecksum.h \
+ /usr/include/glib-2.0/glib/gcompletion.h \
+ /usr/include/glib-2.0/glib/gconvert.h \
+ /usr/include/glib-2.0/glib/gdataset.h /usr/include/glib-2.0/glib/gdate.h \
+ /usr/include/glib-2.0/glib/gdir.h \
+ /usr/include/glib-2.0/glib/gfileutils.h \
+ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \
+ /usr/include/glib-2.0/glib/ghostutils.h \
+ /usr/include/glib-2.0/glib/giochannel.h \
+ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \
+ /usr/include/glib-2.0/glib/gslist.h /usr/include/glib-2.0/glib/gstring.h \
+ /usr/include/glib-2.0/glib/gunicode.h \
+ /usr/include/glib-2.0/glib/gkeyfile.h \
+ /usr/include/glib-2.0/glib/gmappedfile.h \
+ /usr/include/glib-2.0/glib/gmarkup.h \
+ /usr/include/glib-2.0/glib/gmessages.h \
+ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \
+ /usr/include/glib-2.0/glib/gpattern.h \
+ /usr/include/glib-2.0/glib/gprimes.h /usr/include/glib-2.0/glib/gqsort.h \
+ /usr/include/glib-2.0/glib/gqueue.h /usr/include/glib-2.0/glib/grand.h \
+ /usr/include/glib-2.0/glib/grel.h /usr/include/glib-2.0/glib/gregex.h \
+ /usr/include/glib-2.0/glib/gscanner.h \
+ /usr/include/glib-2.0/glib/gsequence.h \
+ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \
+ /usr/include/glib-2.0/glib/gstrfuncs.h \
+ /usr/include/glib-2.0/glib/gtestutils.h \
+ /usr/include/glib-2.0/glib/gthreadpool.h \
+ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \
+ /usr/include/glib-2.0/glib/gurifuncs.h \
+ /usr/include/glib-2.0/glib/gvarianttype.h \
+ /usr/include/glib-2.0/glib/gvariant.h \
+ /usr/include/glib-2.0/gobject/genums.h \
+ /usr/include/glib-2.0/gobject/gobject.h \
+ /usr/include/glib-2.0/gobject/gvalue.h \
+ /usr/include/glib-2.0/gobject/gparam.h \
+ /usr/include/glib-2.0/gobject/gclosure.h \
+ /usr/include/glib-2.0/gobject/gsignal.h \
+ /usr/include/glib-2.0/gobject/gmarshal.h \
+ /usr/include/glib-2.0/gobject/gparamspecs.h \
+ /usr/include/glib-2.0/gobject/gsourceclosure.h \
+ /usr/include/glib-2.0/gobject/gtypemodule.h \
+ /usr/include/glib-2.0/gobject/gtypeplugin.h \
+ /usr/include/glib-2.0/gobject/gvaluearray.h \
+ /usr/include/glib-2.0/gobject/gvaluetypes.h \
+ /usr/include/gtk-2.0/gtk/gtk.h /usr/include/gtk-2.0/gdk/gdk.h \
+ /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h \
+ /usr/include/glib-2.0/gio/gio.h /usr/include/glib-2.0/gio/giotypes.h \
+ /usr/include/glib-2.0/gio/gioenums.h \
+ /usr/include/glib-2.0/gio/gappinfo.h \
+ /usr/include/glib-2.0/gio/gasyncresult.h \
+ /usr/include/glib-2.0/gio/gasyncinitable.h \
+ /usr/include/glib-2.0/gio/ginitable.h \
+ /usr/include/glib-2.0/gio/gbufferedinputstream.h \
+ /usr/include/glib-2.0/gio/gfilterinputstream.h \
+ /usr/include/glib-2.0/gio/ginputstream.h \
+ /usr/include/glib-2.0/gio/gbufferedoutputstream.h \
+ /usr/include/glib-2.0/gio/gfilteroutputstream.h \
+ /usr/include/glib-2.0/gio/goutputstream.h \
+ /usr/include/glib-2.0/gio/gcancellable.h \
+ /usr/include/glib-2.0/gio/gcontenttype.h \
+ /usr/include/glib-2.0/gio/gconverter.h \
+ /usr/include/glib-2.0/gio/gconverterinputstream.h \
+ /usr/include/glib-2.0/gio/gconverteroutputstream.h \
+ /usr/include/glib-2.0/gio/gcharsetconverter.h \
+ /usr/include/glib-2.0/gio/gdatainputstream.h \
+ /usr/include/glib-2.0/gio/gdataoutputstream.h \
+ /usr/include/glib-2.0/gio/gdrive.h \
+ /usr/include/glib-2.0/gio/gemblemedicon.h \
+ /usr/include/glib-2.0/gio/gicon.h /usr/include/glib-2.0/gio/gemblem.h \
+ /usr/include/glib-2.0/gio/gfile.h \
+ /usr/include/glib-2.0/gio/gfileattribute.h \
+ /usr/include/glib-2.0/gio/gfileenumerator.h \
+ /usr/include/glib-2.0/gio/gfileicon.h \
+ /usr/include/glib-2.0/gio/gfileinfo.h \
+ /usr/include/glib-2.0/gio/gfileinputstream.h \
+ /usr/include/glib-2.0/gio/gfilemonitor.h \
+ /usr/include/glib-2.0/gio/gfilenamecompleter.h \
+ /usr/include/glib-2.0/gio/gfileoutputstream.h \
+ /usr/include/glib-2.0/gio/ginetaddress.h \
+ /usr/include/glib-2.0/gio/ginetsocketaddress.h \
+ /usr/include/glib-2.0/gio/gsocketaddress.h \
+ /usr/include/glib-2.0/gio/gioenumtypes.h \
+ /usr/include/glib-2.0/gio/gioerror.h \
+ /usr/include/glib-2.0/gio/giomodule.h /usr/include/glib-2.0/gmodule.h \
+ /usr/include/glib-2.0/gio/gioscheduler.h \
+ /usr/include/glib-2.0/gio/giostream.h \
+ /usr/include/glib-2.0/gio/gfileiostream.h \
+ /usr/include/glib-2.0/gio/gloadableicon.h \
+ /usr/include/glib-2.0/gio/gmemoryinputstream.h \
+ /usr/include/glib-2.0/gio/gmemoryoutputstream.h \
+ /usr/include/glib-2.0/gio/gmount.h \
+ /usr/include/glib-2.0/gio/gmountoperation.h \
+ /usr/include/glib-2.0/gio/gnativevolumemonitor.h \
+ /usr/include/glib-2.0/gio/gvolumemonitor.h \
+ /usr/include/glib-2.0/gio/gnetworkaddress.h \
+ /usr/include/glib-2.0/gio/gnetworkservice.h \
+ /usr/include/glib-2.0/gio/gresolver.h \
+ /usr/include/glib-2.0/gio/gseekable.h \
+ /usr/include/glib-2.0/gio/gsimpleasyncresult.h \
+ /usr/include/glib-2.0/gio/gsocket.h \
+ /usr/include/glib-2.0/gio/gsocketaddressenumerator.h \
+ /usr/include/glib-2.0/gio/gsocketclient.h \
+ /usr/include/glib-2.0/gio/gsocketconnectable.h \
+ /usr/include/glib-2.0/gio/gsocketconnection.h \
+ /usr/include/glib-2.0/gio/gsocketcontrolmessage.h \
+ /usr/include/glib-2.0/gio/gsocketlistener.h \
+ /usr/include/glib-2.0/gio/gsocketservice.h \
+ /usr/include/glib-2.0/gio/gtcpconnection.h \
+ /usr/include/glib-2.0/gio/gthreadedsocketservice.h \
+ /usr/include/glib-2.0/gio/gsrvtarget.h \
+ /usr/include/glib-2.0/gio/gthemedicon.h /usr/include/glib-2.0/gio/gvfs.h \
+ /usr/include/glib-2.0/gio/gvolume.h \
+ /usr/include/glib-2.0/gio/gzlibcompressor.h \
+ /usr/include/glib-2.0/gio/gzlibdecompressor.h \
+ /usr/include/gtk-2.0/gdk/gdkscreen.h /usr/include/cairo/cairo.h \
+ /usr/include/cairo/cairo-version.h /usr/include/cairo/cairo-features.h \
+ /usr/include/cairo/cairo-deprecated.h \
+ /usr/include/gtk-2.0/gdk/gdktypes.h /usr/include/pango-1.0/pango/pango.h \
+ /usr/include/pango-1.0/pango/pango-attributes.h \
+ /usr/include/pango-1.0/pango/pango-font.h \
+ /usr/include/pango-1.0/pango/pango-coverage.h \
+ /usr/include/pango-1.0/pango/pango-types.h \
+ /usr/include/pango-1.0/pango/pango-gravity.h \
+ /usr/include/pango-1.0/pango/pango-matrix.h \
+ /usr/include/pango-1.0/pango/pango-script.h \
+ /usr/include/pango-1.0/pango/pango-language.h \
+ /usr/include/pango-1.0/pango/pango-bidi-type.h \
+ /usr/include/pango-1.0/pango/pango-break.h \
+ /usr/include/pango-1.0/pango/pango-item.h \
+ /usr/include/pango-1.0/pango/pango-context.h \
+ /usr/include/pango-1.0/pango/pango-fontmap.h \
+ /usr/include/pango-1.0/pango/pango-fontset.h \
+ /usr/include/pango-1.0/pango/pango-engine.h \
+ /usr/include/pango-1.0/pango/pango-glyph.h \
+ /usr/include/pango-1.0/pango/pango-enum-types.h \
+ /usr/include/pango-1.0/pango/pango-features.h \
+ /usr/include/pango-1.0/pango/pango-glyph-item.h \
+ /usr/include/pango-1.0/pango/pango-layout.h \
+ /usr/include/pango-1.0/pango/pango-tabs.h \
+ /usr/include/pango-1.0/pango/pango-renderer.h \
+ /usr/include/pango-1.0/pango/pango-utils.h /usr/include/stdio.h \
+ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/include/bits/stdio.h /usr/lib64/gtk-2.0/include/gdkconfig.h \
+ /usr/include/gtk-2.0/gdk/gdkdisplay.h \
+ /usr/include/gtk-2.0/gdk/gdkevents.h /usr/include/gtk-2.0/gdk/gdkcolor.h \
+ /usr/include/gtk-2.0/gdk/gdkdnd.h /usr/include/gtk-2.0/gdk/gdkinput.h \
+ /usr/include/gtk-2.0/gdk/gdkcairo.h /usr/include/gtk-2.0/gdk/gdkpixbuf.h \
+ /usr/include/gtk-2.0/gdk/gdkrgb.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-features.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-core.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-transform.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-animation.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-io.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-loader.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h \
+ /usr/include/pango-1.0/pango/pangocairo.h \
+ /usr/include/gtk-2.0/gdk/gdkcursor.h \
+ /usr/include/gtk-2.0/gdk/gdkdisplaymanager.h \
+ /usr/include/gtk-2.0/gdk/gdkdrawable.h /usr/include/gtk-2.0/gdk/gdkgc.h \
+ /usr/include/gtk-2.0/gdk/gdkenumtypes.h \
+ /usr/include/gtk-2.0/gdk/gdkfont.h /usr/include/gtk-2.0/gdk/gdkimage.h \
+ /usr/include/gtk-2.0/gdk/gdkkeys.h /usr/include/gtk-2.0/gdk/gdkpango.h \
+ /usr/include/gtk-2.0/gdk/gdkpixmap.h \
+ /usr/include/gtk-2.0/gdk/gdkproperty.h \
+ /usr/include/gtk-2.0/gdk/gdkregion.h \
+ /usr/include/gtk-2.0/gdk/gdkselection.h \
+ /usr/include/gtk-2.0/gdk/gdkspawn.h \
+ /usr/include/gtk-2.0/gdk/gdktestutils.h \
+ /usr/include/gtk-2.0/gdk/gdkwindow.h \
+ /usr/include/gtk-2.0/gdk/gdkvisual.h \
+ /usr/include/gtk-2.0/gtk/gtkaboutdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkaccelgroup.h \
+ /usr/include/gtk-2.0/gtk/gtkenums.h /usr/include/gtk-2.0/gtk/gtkbin.h \
+ /usr/include/gtk-2.0/gtk/gtkcontainer.h \
+ /usr/include/gtk-2.0/gtk/gtkwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkobject.h \
+ /usr/include/gtk-2.0/gtk/gtktypeutils.h \
+ /usr/include/gtk-2.0/gtk/gtktypebuiltins.h \
+ /usr/include/gtk-2.0/gtk/gtkdebug.h \
+ /usr/include/gtk-2.0/gtk/gtkadjustment.h \
+ /usr/include/gtk-2.0/gtk/gtkstyle.h \
+ /usr/include/gtk-2.0/gtk/gtksettings.h /usr/include/gtk-2.0/gtk/gtkrc.h \
+ /usr/include/atk-1.0/atk/atk.h /usr/include/atk-1.0/atk/atkobject.h \
+ /usr/include/atk-1.0/atk/atkstate.h \
+ /usr/include/atk-1.0/atk/atkrelationtype.h \
+ /usr/include/atk-1.0/atk/atkaction.h \
+ /usr/include/atk-1.0/atk/atkcomponent.h \
+ /usr/include/atk-1.0/atk/atkutil.h \
+ /usr/include/atk-1.0/atk/atkdocument.h \
+ /usr/include/atk-1.0/atk/atkeditabletext.h \
+ /usr/include/atk-1.0/atk/atktext.h \
+ /usr/include/atk-1.0/atk/atkgobjectaccessible.h \
+ /usr/include/atk-1.0/atk/atkhyperlink.h \
+ /usr/include/atk-1.0/atk/atkhyperlinkimpl.h \
+ /usr/include/atk-1.0/atk/atkhypertext.h \
+ /usr/include/atk-1.0/atk/atkimage.h \
+ /usr/include/atk-1.0/atk/atknoopobject.h \
+ /usr/include/atk-1.0/atk/atknoopobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkplug.h \
+ /usr/include/atk-1.0/atk/atkregistry.h \
+ /usr/include/atk-1.0/atk/atkobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkrelation.h \
+ /usr/include/atk-1.0/atk/atkrelationset.h \
+ /usr/include/atk-1.0/atk/atkselection.h \
+ /usr/include/atk-1.0/atk/atksocket.h \
+ /usr/include/atk-1.0/atk/atkstateset.h \
+ /usr/include/atk-1.0/atk/atkstreamablecontent.h \
+ /usr/include/atk-1.0/atk/atktable.h /usr/include/atk-1.0/atk/atkmisc.h \
+ /usr/include/atk-1.0/atk/atkvalue.h \
+ /usr/include/gtk-2.0/gtk/gtkaccellabel.h \
+ /usr/include/gtk-2.0/gtk/gtklabel.h /usr/include/gtk-2.0/gtk/gtkmisc.h \
+ /usr/include/gtk-2.0/gtk/gtkmenu.h \
+ /usr/include/gtk-2.0/gtk/gtkmenushell.h \
+ /usr/include/gtk-2.0/gtk/gtkaccelmap.h \
+ /usr/include/gtk-2.0/gtk/gtkaccessible.h \
+ /usr/include/gtk-2.0/gtk/gtkaction.h \
+ /usr/include/gtk-2.0/gtk/gtkactiongroup.h \
+ /usr/include/gtk-2.0/gtk/gtkactivatable.h \
+ /usr/include/gtk-2.0/gtk/gtkalignment.h \
+ /usr/include/gtk-2.0/gtk/gtkarrow.h \
+ /usr/include/gtk-2.0/gtk/gtkaspectframe.h \
+ /usr/include/gtk-2.0/gtk/gtkframe.h \
+ /usr/include/gtk-2.0/gtk/gtkassistant.h \
+ /usr/include/gtk-2.0/gtk/gtkbbox.h /usr/include/gtk-2.0/gtk/gtkbox.h \
+ /usr/include/gtk-2.0/gtk/gtkbindings.h \
+ /usr/include/gtk-2.0/gtk/gtkbuildable.h \
+ /usr/include/gtk-2.0/gtk/gtkbuilder.h \
+ /usr/include/gtk-2.0/gtk/gtkbutton.h /usr/include/gtk-2.0/gtk/gtkimage.h \
+ /usr/include/gtk-2.0/gtk/gtkcalendar.h \
+ /usr/include/gtk-2.0/gtk/gtksignal.h \
+ /usr/include/gtk-2.0/gtk/gtkmarshal.h \
+ /usr/include/gtk-2.0/gtk/gtkcelleditable.h \
+ /usr/include/gtk-2.0/gtk/gtkcelllayout.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderer.h \
+ /usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodel.h \
+ /usr/include/gtk-2.0/gtk/gtktreesortable.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderertext.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererspin.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h \
+ /usr/include/gtk-2.0/gtk/gtkcellview.h \
+ /usr/include/gtk-2.0/gtk/gtkcheckbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktogglebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkitem.h \
+ /usr/include/gtk-2.0/gtk/gtkclipboard.h \
+ /usr/include/gtk-2.0/gtk/gtkselection.h \
+ /usr/include/gtk-2.0/gtk/gtktextiter.h \
+ /usr/include/gtk-2.0/gtk/gtktexttag.h \
+ /usr/include/gtk-2.0/gtk/gtktextchild.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorsel.h \
+ /usr/include/gtk-2.0/gtk/gtkvbox.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorseldialog.h \
+ /usr/include/gtk-2.0/gtk/gtkcombobox.h \
+ /usr/include/gtk-2.0/gtk/gtktreeview.h /usr/include/gtk-2.0/gtk/gtkdnd.h \
+ /usr/include/gtk-2.0/gtk/gtkentry.h \
+ /usr/include/gtk-2.0/gtk/gtkeditable.h \
+ /usr/include/gtk-2.0/gtk/gtkimcontext.h \
+ /usr/include/gtk-2.0/gtk/gtkentrybuffer.h \
+ /usr/include/gtk-2.0/gtk/gtkentrycompletion.h \
+ /usr/include/gtk-2.0/gtk/gtkliststore.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodelfilter.h \
+ /usr/include/gtk-2.0/gtk/gtkcomboboxentry.h \
+ /usr/include/gtk-2.0/gtk/gtkdrawingarea.h \
+ /usr/include/gtk-2.0/gtk/gtkeventbox.h \
+ /usr/include/gtk-2.0/gtk/gtkexpander.h \
+ /usr/include/gtk-2.0/gtk/gtkfixed.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooser.h \
+ /usr/include/gtk-2.0/gtk/gtkfilefilter.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkhbox.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkfontbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkfontsel.h /usr/include/gtk-2.0/gtk/gtkgc.h \
+ /usr/include/gtk-2.0/gtk/gtkhandlebox.h \
+ /usr/include/gtk-2.0/gtk/gtkhbbox.h /usr/include/gtk-2.0/gtk/gtkhpaned.h \
+ /usr/include/gtk-2.0/gtk/gtkpaned.h /usr/include/gtk-2.0/gtk/gtkhruler.h \
+ /usr/include/gtk-2.0/gtk/gtkruler.h /usr/include/gtk-2.0/gtk/gtkhscale.h \
+ /usr/include/gtk-2.0/gtk/gtkscale.h /usr/include/gtk-2.0/gtk/gtkrange.h \
+ /usr/include/gtk-2.0/gtk/gtkhscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkhseparator.h \
+ /usr/include/gtk-2.0/gtk/gtkseparator.h \
+ /usr/include/gtk-2.0/gtk/gtkhsv.h \
+ /usr/include/gtk-2.0/gtk/gtkiconfactory.h \
+ /usr/include/gtk-2.0/gtk/gtkicontheme.h \
+ /usr/include/gtk-2.0/gtk/gtkiconview.h \
+ /usr/include/gtk-2.0/gtk/gtktooltip.h \
+ /usr/include/gtk-2.0/gtk/gtkimagemenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkimcontextsimple.h \
+ /usr/include/gtk-2.0/gtk/gtkimmulticontext.h \
+ /usr/include/gtk-2.0/gtk/gtkinfobar.h \
+ /usr/include/gtk-2.0/gtk/gtkinvisible.h \
+ /usr/include/gtk-2.0/gtk/gtklayout.h \
+ /usr/include/gtk-2.0/gtk/gtklinkbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkmain.h /usr/include/gtk-2.0/gtk/gtkmenubar.h \
+ /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoolitem.h \
+ /usr/include/gtk-2.0/gtk/gtktooltips.h \
+ /usr/include/gtk-2.0/gtk/gtksizegroup.h \
+ /usr/include/gtk-2.0/gtk/gtkmessagedialog.h \
+ /usr/include/gtk-2.0/gtk/gtkmodules.h \
+ /usr/include/gtk-2.0/gtk/gtkmountoperation.h \
+ /usr/include/gtk-2.0/gtk/gtknotebook.h \
+ /usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkorientable.h \
+ /usr/include/gtk-2.0/gtk/gtkpagesetup.h \
+ /usr/include/gtk-2.0/gtk/gtkpapersize.h \
+ /usr/include/gtk-2.0/gtk/gtkplug.h /usr/include/gtk-2.0/gtk/gtksocket.h \
+ /usr/include/gtk-2.0/gtk/gtkprintcontext.h \
+ /usr/include/gtk-2.0/gtk/gtkprintoperation.h \
+ /usr/include/gtk-2.0/gtk/gtkprintsettings.h \
+ /usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h \
+ /usr/include/gtk-2.0/gtk/gtkprogressbar.h \
+ /usr/include/gtk-2.0/gtk/gtkprogress.h \
+ /usr/include/gtk-2.0/gtk/gtkradioaction.h \
+ /usr/include/gtk-2.0/gtk/gtktoggleaction.h \
+ /usr/include/gtk-2.0/gtk/gtkradiobutton.h \
+ /usr/include/gtk-2.0/gtk/gtkradiomenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentaction.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentmanager.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooser.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentfilter.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkscalebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkscrolledwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkvscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkviewport.h \
+ /usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h \
+ /usr/include/gtk-2.0/gtk/gtkshow.h \
+ /usr/include/gtk-2.0/gtk/gtkspinbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkspinner.h \
+ /usr/include/gtk-2.0/gtk/gtkstatusbar.h \
+ /usr/include/gtk-2.0/gtk/gtkstatusicon.h \
+ /usr/include/gtk-2.0/gtk/gtkstock.h /usr/include/gtk-2.0/gtk/gtktable.h \
+ /usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtktextbuffer.h \
+ /usr/include/gtk-2.0/gtk/gtktexttagtable.h \
+ /usr/include/gtk-2.0/gtk/gtktextmark.h \
+ /usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h \
+ /usr/include/gtk-2.0/gtk/gtktextview.h \
+ /usr/include/gtk-2.0/gtk/gtktoolbar.h \
+ /usr/include/gtk-2.0/gtk/gtkpixmap.h \
+ /usr/include/gtk-2.0/gtk/gtktoolitemgroup.h \
+ /usr/include/gtk-2.0/gtk/gtktoolpalette.h \
+ /usr/include/gtk-2.0/gtk/gtktoolshell.h \
+ /usr/include/gtk-2.0/gtk/gtktestutils.h \
+ /usr/include/gtk-2.0/gtk/gtktreednd.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodelsort.h \
+ /usr/include/gtk-2.0/gtk/gtktreeselection.h \
+ /usr/include/gtk-2.0/gtk/gtktreestore.h \
+ /usr/include/gtk-2.0/gtk/gtkuimanager.h \
+ /usr/include/gtk-2.0/gtk/gtkvbbox.h \
+ /usr/include/gtk-2.0/gtk/gtkversion.h \
+ /usr/include/gtk-2.0/gtk/gtkvolumebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkvpaned.h \
+ /usr/include/gtk-2.0/gtk/gtkvruler.h \
+ /usr/include/gtk-2.0/gtk/gtkvscale.h \
+ /usr/include/gtk-2.0/gtk/gtkvseparator.h \
+ /usr/include/gtk-2.0/gtk/gtktext.h /usr/include/gtk-2.0/gtk/gtktree.h \
+ /usr/include/gtk-2.0/gtk/gtktreeitem.h \
+ /usr/include/gtk-2.0/gtk/gtkclist.h /usr/include/gtk-2.0/gtk/gtkcombo.h \
+ /usr/include/gtk-2.0/gtk/gtkctree.h /usr/include/gtk-2.0/gtk/gtkcurve.h \
+ /usr/include/gtk-2.0/gtk/gtkfilesel.h \
+ /usr/include/gtk-2.0/gtk/gtkgamma.h \
+ /usr/include/gtk-2.0/gtk/gtkinputdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkitemfactory.h \
+ /usr/include/gtk-2.0/gtk/gtklist.h \
+ /usr/include/gtk-2.0/gtk/gtklistitem.h \
+ /usr/include/gtk-2.0/gtk/gtkoldeditable.h \
+ /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
+ /usr/include/gtk-2.0/gtk/gtkpreview.h \
+ /usr/include/gtk-2.0/gtk/gtktipsquery.h ../../libanjuta/anjuta-status.h \
+ ../../libanjuta/anjuta-ui.h ../../libanjuta/anjuta-preferences.h \
+ /usr/include/glib-2.0/glib/gi18n.h /usr/include/libintl.h \
+ /usr/include/locale.h /usr/include/bits/locale.h /usr/include/string.h \
+ /usr/include/bits/string.h /usr/include/bits/string2.h \
+ /usr/include/gtk-2.0/gdk/gdkkeysyms.h \
+ ../../libanjuta/anjuta-preferences-dialog.h \
+ ../../libanjuta/anjuta-plugin-manager.h \
+ ../../libanjuta/anjuta-plugin-description.h \
+ ../../libanjuta/anjuta-profile-manager.h \
+ ../../libanjuta/anjuta-profile.h ../../libanjuta/anjuta-session.h \
+ ../../libanjuta/anjuta-save-prompt.h ../../libanjuta/anjuta-debug.h \
+ ../../libanjuta/interfaces/ianjuta-iterable.h \
+ ../../libanjuta/interfaces/ianjuta-document.h \
+ ../../libanjuta/interfaces/ianjuta-document-manager.h \
+ ../../libanjuta/interfaces/ianjuta-editor.h \
+ ../../libanjuta/interfaces/ianjuta-file.h \
+ ../../libanjuta/interfaces/ianjuta-editor-cell.h \
+ ../../libanjuta/interfaces/ianjuta-editor-language.h \
+ ../../libanjuta/interfaces/ianjuta-editor-selection.h \
+ ../../libanjuta/interfaces/ianjuta-editor-assist.h \
+ ../../libanjuta/interfaces/ianjuta-provider.h \
+ ../../libanjuta/interfaces/ianjuta-preferences.h \
+ ../../libanjuta/interfaces/ianjuta-symbol.h \
+ ../../libanjuta/interfaces/ianjuta-language.h plugin.h \
+ ../../libanjuta/anjuta-plugin.h ../../libanjuta/anjuta-utils.h \
+ ../../libanjuta/interfaces/ianjuta-symbol-manager.h \
+ ../../libanjuta/anjuta-async-notify.h \
+ ../../libanjuta/interfaces/ianjuta-symbol-query.h \
+ ../../libanjuta/interfaces/ianjuta-file-manager.h \
+ ../../libanjuta/interfaces/ianjuta-project-manager.h \
+ ../../libanjuta/anjuta-project.h \
+ ../../libanjuta/interfaces/ianjuta-project.h python-assist.h \
+ python-utils.h
+
+../../config.h:
+
+/usr/include/ctype.h:
+
+/usr/include/features.h:
+
+/usr/include/sys/cdefs.h:
+
+/usr/include/bits/wordsize.h:
+
+/usr/include/gnu/stubs.h:
+
+/usr/include/gnu/stubs-64.h:
+
+/usr/include/bits/types.h:
+
+/usr/include/bits/typesizes.h:
+
+/usr/include/endian.h:
+
+/usr/include/bits/endian.h:
+
+/usr/include/bits/byteswap.h:
+
+/usr/include/xlocale.h:
+
+/usr/include/stdlib.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stddef.h:
+
+/usr/include/bits/waitflags.h:
+
+/usr/include/bits/waitstatus.h:
+
+/usr/include/sys/types.h:
+
+/usr/include/time.h:
+
+/usr/include/sys/select.h:
+
+/usr/include/bits/select.h:
+
+/usr/include/bits/sigset.h:
+
+/usr/include/bits/time.h:
+
+/usr/include/sys/sysmacros.h:
+
+/usr/include/bits/pthreadtypes.h:
+
+/usr/include/alloca.h:
+
+../../libanjuta/anjuta-shell.h:
+
+/usr/include/glib-2.0/glib-object.h:
+
+/usr/include/glib-2.0/gobject/gboxed.h:
+
+/usr/include/glib-2.0/gobject/gtype.h:
+
+/usr/include/glib-2.0/glib.h:
+
+/usr/include/glib-2.0/glib/galloca.h:
+
+/usr/include/glib-2.0/glib/gtypes.h:
+
+/usr/lib64/glib-2.0/include/glibconfig.h:
+
+/usr/include/glib-2.0/glib/gmacros.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/limits.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/syslimits.h:
+
+/usr/include/limits.h:
+
+/usr/include/bits/posix1_lim.h:
+
+/usr/include/bits/local_lim.h:
+
+/usr/include/linux/limits.h:
+
+/usr/include/bits/posix2_lim.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/float.h:
+
+/usr/include/glib-2.0/glib/garray.h:
+
+/usr/include/glib-2.0/glib/gasyncqueue.h:
+
+/usr/include/glib-2.0/glib/gthread.h:
+
+/usr/include/glib-2.0/glib/gerror.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stdarg.h:
+
+/usr/include/glib-2.0/glib/gquark.h:
+
+/usr/include/glib-2.0/glib/gutils.h:
+
+/usr/include/glib-2.0/glib/gatomic.h:
+
+/usr/include/glib-2.0/glib/gbacktrace.h:
+
+/usr/include/signal.h:
+
+/usr/include/bits/signum.h:
+
+/usr/include/bits/siginfo.h:
+
+/usr/include/bits/sigaction.h:
+
+/usr/include/bits/sigcontext.h:
+
+/usr/include/bits/sigstack.h:
+
+/usr/include/sys/ucontext.h:
+
+/usr/include/bits/sigthread.h:
+
+/usr/include/glib-2.0/glib/gbase64.h:
+
+/usr/include/glib-2.0/glib/gbitlock.h:
+
+/usr/include/glib-2.0/glib/gbookmarkfile.h:
+
+/usr/include/glib-2.0/glib/gcache.h:
+
+/usr/include/glib-2.0/glib/glist.h:
+
+/usr/include/glib-2.0/glib/gmem.h:
+
+/usr/include/glib-2.0/glib/gslice.h:
+
+/usr/include/glib-2.0/glib/gchecksum.h:
+
+/usr/include/glib-2.0/glib/gcompletion.h:
+
+/usr/include/glib-2.0/glib/gconvert.h:
+
+/usr/include/glib-2.0/glib/gdataset.h:
+
+/usr/include/glib-2.0/glib/gdate.h:
+
+/usr/include/glib-2.0/glib/gdir.h:
+
+/usr/include/glib-2.0/glib/gfileutils.h:
+
+/usr/include/glib-2.0/glib/ghash.h:
+
+/usr/include/glib-2.0/glib/ghook.h:
+
+/usr/include/glib-2.0/glib/ghostutils.h:
+
+/usr/include/glib-2.0/glib/giochannel.h:
+
+/usr/include/glib-2.0/glib/gmain.h:
+
+/usr/include/glib-2.0/glib/gpoll.h:
+
+/usr/include/glib-2.0/glib/gslist.h:
+
+/usr/include/glib-2.0/glib/gstring.h:
+
+/usr/include/glib-2.0/glib/gunicode.h:
+
+/usr/include/glib-2.0/glib/gkeyfile.h:
+
+/usr/include/glib-2.0/glib/gmappedfile.h:
+
+/usr/include/glib-2.0/glib/gmarkup.h:
+
+/usr/include/glib-2.0/glib/gmessages.h:
+
+/usr/include/glib-2.0/glib/gnode.h:
+
+/usr/include/glib-2.0/glib/goption.h:
+
+/usr/include/glib-2.0/glib/gpattern.h:
+
+/usr/include/glib-2.0/glib/gprimes.h:
+
+/usr/include/glib-2.0/glib/gqsort.h:
+
+/usr/include/glib-2.0/glib/gqueue.h:
+
+/usr/include/glib-2.0/glib/grand.h:
+
+/usr/include/glib-2.0/glib/grel.h:
+
+/usr/include/glib-2.0/glib/gregex.h:
+
+/usr/include/glib-2.0/glib/gscanner.h:
+
+/usr/include/glib-2.0/glib/gsequence.h:
+
+/usr/include/glib-2.0/glib/gshell.h:
+
+/usr/include/glib-2.0/glib/gspawn.h:
+
+/usr/include/glib-2.0/glib/gstrfuncs.h:
+
+/usr/include/glib-2.0/glib/gtestutils.h:
+
+/usr/include/glib-2.0/glib/gthreadpool.h:
+
+/usr/include/glib-2.0/glib/gtimer.h:
+
+/usr/include/glib-2.0/glib/gtree.h:
+
+/usr/include/glib-2.0/glib/gurifuncs.h:
+
+/usr/include/glib-2.0/glib/gvarianttype.h:
+
+/usr/include/glib-2.0/glib/gvariant.h:
+
+/usr/include/glib-2.0/gobject/genums.h:
+
+/usr/include/glib-2.0/gobject/gobject.h:
+
+/usr/include/glib-2.0/gobject/gvalue.h:
+
+/usr/include/glib-2.0/gobject/gparam.h:
+
+/usr/include/glib-2.0/gobject/gclosure.h:
+
+/usr/include/glib-2.0/gobject/gsignal.h:
+
+/usr/include/glib-2.0/gobject/gmarshal.h:
+
+/usr/include/glib-2.0/gobject/gparamspecs.h:
+
+/usr/include/glib-2.0/gobject/gsourceclosure.h:
+
+/usr/include/glib-2.0/gobject/gtypemodule.h:
+
+/usr/include/glib-2.0/gobject/gtypeplugin.h:
+
+/usr/include/glib-2.0/gobject/gvaluearray.h:
+
+/usr/include/glib-2.0/gobject/gvaluetypes.h:
+
+/usr/include/gtk-2.0/gtk/gtk.h:
+
+/usr/include/gtk-2.0/gdk/gdk.h:
+
+/usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:
+
+/usr/include/glib-2.0/gio/gio.h:
+
+/usr/include/glib-2.0/gio/giotypes.h:
+
+/usr/include/glib-2.0/gio/gioenums.h:
+
+/usr/include/glib-2.0/gio/gappinfo.h:
+
+/usr/include/glib-2.0/gio/gasyncresult.h:
+
+/usr/include/glib-2.0/gio/gasyncinitable.h:
+
+/usr/include/glib-2.0/gio/ginitable.h:
+
+/usr/include/glib-2.0/gio/gbufferedinputstream.h:
+
+/usr/include/glib-2.0/gio/gfilterinputstream.h:
+
+/usr/include/glib-2.0/gio/ginputstream.h:
+
+/usr/include/glib-2.0/gio/gbufferedoutputstream.h:
+
+/usr/include/glib-2.0/gio/gfilteroutputstream.h:
+
+/usr/include/glib-2.0/gio/goutputstream.h:
+
+/usr/include/glib-2.0/gio/gcancellable.h:
+
+/usr/include/glib-2.0/gio/gcontenttype.h:
+
+/usr/include/glib-2.0/gio/gconverter.h:
+
+/usr/include/glib-2.0/gio/gconverterinputstream.h:
+
+/usr/include/glib-2.0/gio/gconverteroutputstream.h:
+
+/usr/include/glib-2.0/gio/gcharsetconverter.h:
+
+/usr/include/glib-2.0/gio/gdatainputstream.h:
+
+/usr/include/glib-2.0/gio/gdataoutputstream.h:
+
+/usr/include/glib-2.0/gio/gdrive.h:
+
+/usr/include/glib-2.0/gio/gemblemedicon.h:
+
+/usr/include/glib-2.0/gio/gicon.h:
+
+/usr/include/glib-2.0/gio/gemblem.h:
+
+/usr/include/glib-2.0/gio/gfile.h:
+
+/usr/include/glib-2.0/gio/gfileattribute.h:
+
+/usr/include/glib-2.0/gio/gfileenumerator.h:
+
+/usr/include/glib-2.0/gio/gfileicon.h:
+
+/usr/include/glib-2.0/gio/gfileinfo.h:
+
+/usr/include/glib-2.0/gio/gfileinputstream.h:
+
+/usr/include/glib-2.0/gio/gfilemonitor.h:
+
+/usr/include/glib-2.0/gio/gfilenamecompleter.h:
+
+/usr/include/glib-2.0/gio/gfileoutputstream.h:
+
+/usr/include/glib-2.0/gio/ginetaddress.h:
+
+/usr/include/glib-2.0/gio/ginetsocketaddress.h:
+
+/usr/include/glib-2.0/gio/gsocketaddress.h:
+
+/usr/include/glib-2.0/gio/gioenumtypes.h:
+
+/usr/include/glib-2.0/gio/gioerror.h:
+
+/usr/include/glib-2.0/gio/giomodule.h:
+
+/usr/include/glib-2.0/gmodule.h:
+
+/usr/include/glib-2.0/gio/gioscheduler.h:
+
+/usr/include/glib-2.0/gio/giostream.h:
+
+/usr/include/glib-2.0/gio/gfileiostream.h:
+
+/usr/include/glib-2.0/gio/gloadableicon.h:
+
+/usr/include/glib-2.0/gio/gmemoryinputstream.h:
+
+/usr/include/glib-2.0/gio/gmemoryoutputstream.h:
+
+/usr/include/glib-2.0/gio/gmount.h:
+
+/usr/include/glib-2.0/gio/gmountoperation.h:
+
+/usr/include/glib-2.0/gio/gnativevolumemonitor.h:
+
+/usr/include/glib-2.0/gio/gvolumemonitor.h:
+
+/usr/include/glib-2.0/gio/gnetworkaddress.h:
+
+/usr/include/glib-2.0/gio/gnetworkservice.h:
+
+/usr/include/glib-2.0/gio/gresolver.h:
+
+/usr/include/glib-2.0/gio/gseekable.h:
+
+/usr/include/glib-2.0/gio/gsimpleasyncresult.h:
+
+/usr/include/glib-2.0/gio/gsocket.h:
+
+/usr/include/glib-2.0/gio/gsocketaddressenumerator.h:
+
+/usr/include/glib-2.0/gio/gsocketclient.h:
+
+/usr/include/glib-2.0/gio/gsocketconnectable.h:
+
+/usr/include/glib-2.0/gio/gsocketconnection.h:
+
+/usr/include/glib-2.0/gio/gsocketcontrolmessage.h:
+
+/usr/include/glib-2.0/gio/gsocketlistener.h:
+
+/usr/include/glib-2.0/gio/gsocketservice.h:
+
+/usr/include/glib-2.0/gio/gtcpconnection.h:
+
+/usr/include/glib-2.0/gio/gthreadedsocketservice.h:
+
+/usr/include/glib-2.0/gio/gsrvtarget.h:
+
+/usr/include/glib-2.0/gio/gthemedicon.h:
+
+/usr/include/glib-2.0/gio/gvfs.h:
+
+/usr/include/glib-2.0/gio/gvolume.h:
+
+/usr/include/glib-2.0/gio/gzlibcompressor.h:
+
+/usr/include/glib-2.0/gio/gzlibdecompressor.h:
+
+/usr/include/gtk-2.0/gdk/gdkscreen.h:
+
+/usr/include/cairo/cairo.h:
+
+/usr/include/cairo/cairo-version.h:
+
+/usr/include/cairo/cairo-features.h:
+
+/usr/include/cairo/cairo-deprecated.h:
+
+/usr/include/gtk-2.0/gdk/gdktypes.h:
+
+/usr/include/pango-1.0/pango/pango.h:
+
+/usr/include/pango-1.0/pango/pango-attributes.h:
+
+/usr/include/pango-1.0/pango/pango-font.h:
+
+/usr/include/pango-1.0/pango/pango-coverage.h:
+
+/usr/include/pango-1.0/pango/pango-types.h:
+
+/usr/include/pango-1.0/pango/pango-gravity.h:
+
+/usr/include/pango-1.0/pango/pango-matrix.h:
+
+/usr/include/pango-1.0/pango/pango-script.h:
+
+/usr/include/pango-1.0/pango/pango-language.h:
+
+/usr/include/pango-1.0/pango/pango-bidi-type.h:
+
+/usr/include/pango-1.0/pango/pango-break.h:
+
+/usr/include/pango-1.0/pango/pango-item.h:
+
+/usr/include/pango-1.0/pango/pango-context.h:
+
+/usr/include/pango-1.0/pango/pango-fontmap.h:
+
+/usr/include/pango-1.0/pango/pango-fontset.h:
+
+/usr/include/pango-1.0/pango/pango-engine.h:
+
+/usr/include/pango-1.0/pango/pango-glyph.h:
+
+/usr/include/pango-1.0/pango/pango-enum-types.h:
+
+/usr/include/pango-1.0/pango/pango-features.h:
+
+/usr/include/pango-1.0/pango/pango-glyph-item.h:
+
+/usr/include/pango-1.0/pango/pango-layout.h:
+
+/usr/include/pango-1.0/pango/pango-tabs.h:
+
+/usr/include/pango-1.0/pango/pango-renderer.h:
+
+/usr/include/pango-1.0/pango/pango-utils.h:
+
+/usr/include/stdio.h:
+
+/usr/include/libio.h:
+
+/usr/include/_G_config.h:
+
+/usr/include/wchar.h:
+
+/usr/include/bits/stdio_lim.h:
+
+/usr/include/bits/sys_errlist.h:
+
+/usr/include/bits/stdio.h:
+
+/usr/lib64/gtk-2.0/include/gdkconfig.h:
+
+/usr/include/gtk-2.0/gdk/gdkdisplay.h:
+
+/usr/include/gtk-2.0/gdk/gdkevents.h:
+
+/usr/include/gtk-2.0/gdk/gdkcolor.h:
+
+/usr/include/gtk-2.0/gdk/gdkdnd.h:
+
+/usr/include/gtk-2.0/gdk/gdkinput.h:
+
+/usr/include/gtk-2.0/gdk/gdkcairo.h:
+
+/usr/include/gtk-2.0/gdk/gdkpixbuf.h:
+
+/usr/include/gtk-2.0/gdk/gdkrgb.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-features.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-core.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-transform.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-animation.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-io.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-loader.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h:
+
+/usr/include/pango-1.0/pango/pangocairo.h:
+
+/usr/include/gtk-2.0/gdk/gdkcursor.h:
+
+/usr/include/gtk-2.0/gdk/gdkdisplaymanager.h:
+
+/usr/include/gtk-2.0/gdk/gdkdrawable.h:
+
+/usr/include/gtk-2.0/gdk/gdkgc.h:
+
+/usr/include/gtk-2.0/gdk/gdkenumtypes.h:
+
+/usr/include/gtk-2.0/gdk/gdkfont.h:
+
+/usr/include/gtk-2.0/gdk/gdkimage.h:
+
+/usr/include/gtk-2.0/gdk/gdkkeys.h:
+
+/usr/include/gtk-2.0/gdk/gdkpango.h:
+
+/usr/include/gtk-2.0/gdk/gdkpixmap.h:
+
+/usr/include/gtk-2.0/gdk/gdkproperty.h:
+
+/usr/include/gtk-2.0/gdk/gdkregion.h:
+
+/usr/include/gtk-2.0/gdk/gdkselection.h:
+
+/usr/include/gtk-2.0/gdk/gdkspawn.h:
+
+/usr/include/gtk-2.0/gdk/gdktestutils.h:
+
+/usr/include/gtk-2.0/gdk/gdkwindow.h:
+
+/usr/include/gtk-2.0/gdk/gdkvisual.h:
+
+/usr/include/gtk-2.0/gtk/gtkaboutdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccelgroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkenums.h:
+
+/usr/include/gtk-2.0/gtk/gtkbin.h:
+
+/usr/include/gtk-2.0/gtk/gtkcontainer.h:
+
+/usr/include/gtk-2.0/gtk/gtkwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkobject.h:
+
+/usr/include/gtk-2.0/gtk/gtktypeutils.h:
+
+/usr/include/gtk-2.0/gtk/gtktypebuiltins.h:
+
+/usr/include/gtk-2.0/gtk/gtkdebug.h:
+
+/usr/include/gtk-2.0/gtk/gtkadjustment.h:
+
+/usr/include/gtk-2.0/gtk/gtkstyle.h:
+
+/usr/include/gtk-2.0/gtk/gtksettings.h:
+
+/usr/include/gtk-2.0/gtk/gtkrc.h:
+
+/usr/include/atk-1.0/atk/atk.h:
+
+/usr/include/atk-1.0/atk/atkobject.h:
+
+/usr/include/atk-1.0/atk/atkstate.h:
+
+/usr/include/atk-1.0/atk/atkrelationtype.h:
+
+/usr/include/atk-1.0/atk/atkaction.h:
+
+/usr/include/atk-1.0/atk/atkcomponent.h:
+
+/usr/include/atk-1.0/atk/atkutil.h:
+
+/usr/include/atk-1.0/atk/atkdocument.h:
+
+/usr/include/atk-1.0/atk/atkeditabletext.h:
+
+/usr/include/atk-1.0/atk/atktext.h:
+
+/usr/include/atk-1.0/atk/atkgobjectaccessible.h:
+
+/usr/include/atk-1.0/atk/atkhyperlink.h:
+
+/usr/include/atk-1.0/atk/atkhyperlinkimpl.h:
+
+/usr/include/atk-1.0/atk/atkhypertext.h:
+
+/usr/include/atk-1.0/atk/atkimage.h:
+
+/usr/include/atk-1.0/atk/atknoopobject.h:
+
+/usr/include/atk-1.0/atk/atknoopobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkplug.h:
+
+/usr/include/atk-1.0/atk/atkregistry.h:
+
+/usr/include/atk-1.0/atk/atkobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkrelation.h:
+
+/usr/include/atk-1.0/atk/atkrelationset.h:
+
+/usr/include/atk-1.0/atk/atkselection.h:
+
+/usr/include/atk-1.0/atk/atksocket.h:
+
+/usr/include/atk-1.0/atk/atkstateset.h:
+
+/usr/include/atk-1.0/atk/atkstreamablecontent.h:
+
+/usr/include/atk-1.0/atk/atktable.h:
+
+/usr/include/atk-1.0/atk/atkmisc.h:
+
+/usr/include/atk-1.0/atk/atkvalue.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccellabel.h:
+
+/usr/include/gtk-2.0/gtk/gtklabel.h:
+
+/usr/include/gtk-2.0/gtk/gtkmisc.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenushell.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccelmap.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccessible.h:
+
+/usr/include/gtk-2.0/gtk/gtkaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkactiongroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkactivatable.h:
+
+/usr/include/gtk-2.0/gtk/gtkalignment.h:
+
+/usr/include/gtk-2.0/gtk/gtkarrow.h:
+
+/usr/include/gtk-2.0/gtk/gtkaspectframe.h:
+
+/usr/include/gtk-2.0/gtk/gtkframe.h:
+
+/usr/include/gtk-2.0/gtk/gtkassistant.h:
+
+/usr/include/gtk-2.0/gtk/gtkbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkbindings.h:
+
+/usr/include/gtk-2.0/gtk/gtkbuildable.h:
+
+/usr/include/gtk-2.0/gtk/gtkbuilder.h:
+
+/usr/include/gtk-2.0/gtk/gtkbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkimage.h:
+
+/usr/include/gtk-2.0/gtk/gtkcalendar.h:
+
+/usr/include/gtk-2.0/gtk/gtksignal.h:
+
+/usr/include/gtk-2.0/gtk/gtkmarshal.h:
+
+/usr/include/gtk-2.0/gtk/gtkcelleditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkcelllayout.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderer.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodel.h:
+
+/usr/include/gtk-2.0/gtk/gtktreesortable.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderertext.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererspin.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellview.h:
+
+/usr/include/gtk-2.0/gtk/gtkcheckbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktogglebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkclipboard.h:
+
+/usr/include/gtk-2.0/gtk/gtkselection.h:
+
+/usr/include/gtk-2.0/gtk/gtktextiter.h:
+
+/usr/include/gtk-2.0/gtk/gtktexttag.h:
+
+/usr/include/gtk-2.0/gtk/gtktextchild.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorsel.h:
+
+/usr/include/gtk-2.0/gtk/gtkvbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorseldialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkcombobox.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeview.h:
+
+/usr/include/gtk-2.0/gtk/gtkdnd.h:
+
+/usr/include/gtk-2.0/gtk/gtkentry.h:
+
+/usr/include/gtk-2.0/gtk/gtkeditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkimcontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkentrybuffer.h:
+
+/usr/include/gtk-2.0/gtk/gtkentrycompletion.h:
+
+/usr/include/gtk-2.0/gtk/gtkliststore.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodelfilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkcomboboxentry.h:
+
+/usr/include/gtk-2.0/gtk/gtkdrawingarea.h:
+
+/usr/include/gtk-2.0/gtk/gtkeventbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkexpander.h:
+
+/usr/include/gtk-2.0/gtk/gtkfixed.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooser.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilefilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkhbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkfontbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkfontsel.h:
+
+/usr/include/gtk-2.0/gtk/gtkgc.h:
+
+/usr/include/gtk-2.0/gtk/gtkhandlebox.h:
+
+/usr/include/gtk-2.0/gtk/gtkhbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkhpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkhruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkhscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkrange.h:
+
+/usr/include/gtk-2.0/gtk/gtkhscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkhseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtkhsv.h:
+
+/usr/include/gtk-2.0/gtk/gtkiconfactory.h:
+
+/usr/include/gtk-2.0/gtk/gtkicontheme.h:
+
+/usr/include/gtk-2.0/gtk/gtkiconview.h:
+
+/usr/include/gtk-2.0/gtk/gtktooltip.h:
+
+/usr/include/gtk-2.0/gtk/gtkimagemenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkimcontextsimple.h:
+
+/usr/include/gtk-2.0/gtk/gtkimmulticontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkinfobar.h:
+
+/usr/include/gtk-2.0/gtk/gtkinvisible.h:
+
+/usr/include/gtk-2.0/gtk/gtklayout.h:
+
+/usr/include/gtk-2.0/gtk/gtklinkbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkmain.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenubar.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolitem.h:
+
+/usr/include/gtk-2.0/gtk/gtktooltips.h:
+
+/usr/include/gtk-2.0/gtk/gtksizegroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkmessagedialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkmodules.h:
+
+/usr/include/gtk-2.0/gtk/gtkmountoperation.h:
+
+/usr/include/gtk-2.0/gtk/gtknotebook.h:
+
+/usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkorientable.h:
+
+/usr/include/gtk-2.0/gtk/gtkpagesetup.h:
+
+/usr/include/gtk-2.0/gtk/gtkpapersize.h:
+
+/usr/include/gtk-2.0/gtk/gtkplug.h:
+
+/usr/include/gtk-2.0/gtk/gtksocket.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintcontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintoperation.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintsettings.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h:
+
+/usr/include/gtk-2.0/gtk/gtkprogressbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkprogress.h:
+
+/usr/include/gtk-2.0/gtk/gtkradioaction.h:
+
+/usr/include/gtk-2.0/gtk/gtktoggleaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiobutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiomenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentmanager.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooser.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentfilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkscalebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkscrolledwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkvscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkviewport.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkshow.h:
+
+/usr/include/gtk-2.0/gtk/gtkspinbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkspinner.h:
+
+/usr/include/gtk-2.0/gtk/gtkstatusbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkstatusicon.h:
+
+/usr/include/gtk-2.0/gtk/gtkstock.h:
+
+/usr/include/gtk-2.0/gtk/gtktable.h:
+
+/usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtktextbuffer.h:
+
+/usr/include/gtk-2.0/gtk/gtktexttagtable.h:
+
+/usr/include/gtk-2.0/gtk/gtktextmark.h:
+
+/usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h:
+
+/usr/include/gtk-2.0/gtk/gtktextview.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkpixmap.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolitemgroup.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolpalette.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolshell.h:
+
+/usr/include/gtk-2.0/gtk/gtktestutils.h:
+
+/usr/include/gtk-2.0/gtk/gtktreednd.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodelsort.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeselection.h:
+
+/usr/include/gtk-2.0/gtk/gtktreestore.h:
+
+/usr/include/gtk-2.0/gtk/gtkuimanager.h:
+
+/usr/include/gtk-2.0/gtk/gtkvbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkversion.h:
+
+/usr/include/gtk-2.0/gtk/gtkvolumebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkvpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkvruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkvscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkvseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtktext.h:
+
+/usr/include/gtk-2.0/gtk/gtktree.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkclist.h:
+
+/usr/include/gtk-2.0/gtk/gtkcombo.h:
+
+/usr/include/gtk-2.0/gtk/gtkctree.h:
+
+/usr/include/gtk-2.0/gtk/gtkcurve.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilesel.h:
+
+/usr/include/gtk-2.0/gtk/gtkgamma.h:
+
+/usr/include/gtk-2.0/gtk/gtkinputdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkitemfactory.h:
+
+/usr/include/gtk-2.0/gtk/gtklist.h:
+
+/usr/include/gtk-2.0/gtk/gtklistitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkoldeditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkoptionmenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkpreview.h:
+
+/usr/include/gtk-2.0/gtk/gtktipsquery.h:
+
+../../libanjuta/anjuta-status.h:
+
+../../libanjuta/anjuta-ui.h:
+
+../../libanjuta/anjuta-preferences.h:
+
+/usr/include/glib-2.0/glib/gi18n.h:
+
+/usr/include/libintl.h:
+
+/usr/include/locale.h:
+
+/usr/include/bits/locale.h:
+
+/usr/include/string.h:
+
+/usr/include/bits/string.h:
+
+/usr/include/bits/string2.h:
+
+/usr/include/gtk-2.0/gdk/gdkkeysyms.h:
+
+../../libanjuta/anjuta-preferences-dialog.h:
+
+../../libanjuta/anjuta-plugin-manager.h:
+
+../../libanjuta/anjuta-plugin-description.h:
+
+../../libanjuta/anjuta-profile-manager.h:
+
+../../libanjuta/anjuta-profile.h:
+
+../../libanjuta/anjuta-session.h:
+
+../../libanjuta/anjuta-save-prompt.h:
+
+../../libanjuta/anjuta-debug.h:
+
+../../libanjuta/interfaces/ianjuta-iterable.h:
+
+../../libanjuta/interfaces/ianjuta-document.h:
+
+../../libanjuta/interfaces/ianjuta-document-manager.h:
+
+../../libanjuta/interfaces/ianjuta-editor.h:
+
+../../libanjuta/interfaces/ianjuta-file.h:
+
+../../libanjuta/interfaces/ianjuta-editor-cell.h:
+
+../../libanjuta/interfaces/ianjuta-editor-language.h:
+
+../../libanjuta/interfaces/ianjuta-editor-selection.h:
+
+../../libanjuta/interfaces/ianjuta-editor-assist.h:
+
+../../libanjuta/interfaces/ianjuta-provider.h:
+
+../../libanjuta/interfaces/ianjuta-preferences.h:
+
+../../libanjuta/interfaces/ianjuta-symbol.h:
+
+../../libanjuta/interfaces/ianjuta-language.h:
+
+plugin.h:
+
+../../libanjuta/anjuta-plugin.h:
+
+../../libanjuta/anjuta-utils.h:
+
+../../libanjuta/interfaces/ianjuta-symbol-manager.h:
+
+../../libanjuta/anjuta-async-notify.h:
+
+../../libanjuta/interfaces/ianjuta-symbol-query.h:
+
+../../libanjuta/interfaces/ianjuta-file-manager.h:
+
+../../libanjuta/interfaces/ianjuta-project-manager.h:
+
+../../libanjuta/anjuta-project.h:
+
+../../libanjuta/interfaces/ianjuta-project.h:
+
+python-assist.h:
+
+python-utils.h:
diff --git a/plugins/language-support-python/.deps/python-assist.Plo b/plugins/language-support-python/.deps/python-assist.Plo
new file mode 100644
index 0000000..e21b506
--- /dev/null
+++ b/plugins/language-support-python/.deps/python-assist.Plo
@@ -0,0 +1,1535 @@
+python-assist.lo: python-assist.c /usr/include/ctype.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h /usr/include/bits/types.h \
+ /usr/include/bits/typesizes.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/xlocale.h /usr/include/string.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stddef.h \
+ /usr/include/bits/string.h /usr/include/bits/string2.h \
+ /usr/include/stdlib.h /usr/include/unistd.h \
+ /usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
+ /usr/include/bits/confname.h /usr/include/getopt.h \
+ /usr/include/sys/stat.h /usr/include/time.h /usr/include/bits/stat.h \
+ ../../libanjuta/anjuta-debug.h ../../libanjuta/interfaces/ianjuta-file.h \
+ /usr/include/glib-2.0/glib-object.h \
+ /usr/include/glib-2.0/gobject/gboxed.h \
+ /usr/include/glib-2.0/gobject/gtype.h /usr/include/glib-2.0/glib.h \
+ /usr/include/glib-2.0/glib/galloca.h /usr/include/glib-2.0/glib/gtypes.h \
+ /usr/lib64/glib-2.0/include/glibconfig.h \
+ /usr/include/glib-2.0/glib/gmacros.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/syslimits.h \
+ /usr/include/limits.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/float.h \
+ /usr/include/glib-2.0/glib/garray.h \
+ /usr/include/glib-2.0/glib/gasyncqueue.h \
+ /usr/include/glib-2.0/glib/gthread.h /usr/include/glib-2.0/glib/gerror.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stdarg.h \
+ /usr/include/glib-2.0/glib/gquark.h /usr/include/glib-2.0/glib/gutils.h \
+ /usr/include/glib-2.0/glib/gatomic.h \
+ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \
+ /usr/include/bits/sigset.h /usr/include/bits/signum.h \
+ /usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
+ /usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
+ /usr/include/sys/ucontext.h /usr/include/bits/pthreadtypes.h \
+ /usr/include/bits/sigthread.h /usr/include/glib-2.0/glib/gbase64.h \
+ /usr/include/glib-2.0/glib/gbitlock.h \
+ /usr/include/glib-2.0/glib/gbookmarkfile.h /usr/include/bits/time.h \
+ /usr/include/glib-2.0/glib/gcache.h /usr/include/glib-2.0/glib/glist.h \
+ /usr/include/glib-2.0/glib/gmem.h /usr/include/glib-2.0/glib/gslice.h \
+ /usr/include/glib-2.0/glib/gchecksum.h \
+ /usr/include/glib-2.0/glib/gcompletion.h \
+ /usr/include/glib-2.0/glib/gconvert.h \
+ /usr/include/glib-2.0/glib/gdataset.h /usr/include/glib-2.0/glib/gdate.h \
+ /usr/include/glib-2.0/glib/gdir.h \
+ /usr/include/glib-2.0/glib/gfileutils.h \
+ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \
+ /usr/include/glib-2.0/glib/ghostutils.h \
+ /usr/include/glib-2.0/glib/giochannel.h \
+ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \
+ /usr/include/glib-2.0/glib/gslist.h /usr/include/glib-2.0/glib/gstring.h \
+ /usr/include/glib-2.0/glib/gunicode.h \
+ /usr/include/glib-2.0/glib/gkeyfile.h \
+ /usr/include/glib-2.0/glib/gmappedfile.h \
+ /usr/include/glib-2.0/glib/gmarkup.h \
+ /usr/include/glib-2.0/glib/gmessages.h \
+ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \
+ /usr/include/glib-2.0/glib/gpattern.h \
+ /usr/include/glib-2.0/glib/gprimes.h /usr/include/glib-2.0/glib/gqsort.h \
+ /usr/include/glib-2.0/glib/gqueue.h /usr/include/glib-2.0/glib/grand.h \
+ /usr/include/glib-2.0/glib/grel.h /usr/include/glib-2.0/glib/gregex.h \
+ /usr/include/glib-2.0/glib/gscanner.h \
+ /usr/include/glib-2.0/glib/gsequence.h \
+ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \
+ /usr/include/glib-2.0/glib/gstrfuncs.h \
+ /usr/include/glib-2.0/glib/gtestutils.h \
+ /usr/include/glib-2.0/glib/gthreadpool.h \
+ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \
+ /usr/include/glib-2.0/glib/gurifuncs.h \
+ /usr/include/glib-2.0/glib/gvarianttype.h \
+ /usr/include/glib-2.0/glib/gvariant.h \
+ /usr/include/glib-2.0/gobject/genums.h \
+ /usr/include/glib-2.0/gobject/gobject.h \
+ /usr/include/glib-2.0/gobject/gvalue.h \
+ /usr/include/glib-2.0/gobject/gparam.h \
+ /usr/include/glib-2.0/gobject/gclosure.h \
+ /usr/include/glib-2.0/gobject/gsignal.h \
+ /usr/include/glib-2.0/gobject/gmarshal.h \
+ /usr/include/glib-2.0/gobject/gparamspecs.h \
+ /usr/include/glib-2.0/gobject/gsourceclosure.h \
+ /usr/include/glib-2.0/gobject/gtypemodule.h \
+ /usr/include/glib-2.0/gobject/gtypeplugin.h \
+ /usr/include/glib-2.0/gobject/gvaluearray.h \
+ /usr/include/glib-2.0/gobject/gvaluetypes.h \
+ /usr/include/glib-2.0/gio/gio.h /usr/include/glib-2.0/gio/giotypes.h \
+ /usr/include/glib-2.0/gio/gioenums.h \
+ /usr/include/glib-2.0/gio/gappinfo.h \
+ /usr/include/glib-2.0/gio/gasyncresult.h \
+ /usr/include/glib-2.0/gio/gasyncinitable.h \
+ /usr/include/glib-2.0/gio/ginitable.h \
+ /usr/include/glib-2.0/gio/gbufferedinputstream.h \
+ /usr/include/glib-2.0/gio/gfilterinputstream.h \
+ /usr/include/glib-2.0/gio/ginputstream.h \
+ /usr/include/glib-2.0/gio/gbufferedoutputstream.h \
+ /usr/include/glib-2.0/gio/gfilteroutputstream.h \
+ /usr/include/glib-2.0/gio/goutputstream.h \
+ /usr/include/glib-2.0/gio/gcancellable.h \
+ /usr/include/glib-2.0/gio/gcontenttype.h \
+ /usr/include/glib-2.0/gio/gconverter.h \
+ /usr/include/glib-2.0/gio/gconverterinputstream.h \
+ /usr/include/glib-2.0/gio/gconverteroutputstream.h \
+ /usr/include/glib-2.0/gio/gcharsetconverter.h \
+ /usr/include/glib-2.0/gio/gdatainputstream.h \
+ /usr/include/glib-2.0/gio/gdataoutputstream.h \
+ /usr/include/glib-2.0/gio/gdrive.h \
+ /usr/include/glib-2.0/gio/gemblemedicon.h \
+ /usr/include/glib-2.0/gio/gicon.h /usr/include/glib-2.0/gio/gemblem.h \
+ /usr/include/glib-2.0/gio/gfile.h \
+ /usr/include/glib-2.0/gio/gfileattribute.h \
+ /usr/include/glib-2.0/gio/gfileenumerator.h \
+ /usr/include/glib-2.0/gio/gfileicon.h \
+ /usr/include/glib-2.0/gio/gfileinfo.h \
+ /usr/include/glib-2.0/gio/gfileinputstream.h \
+ /usr/include/glib-2.0/gio/gfilemonitor.h \
+ /usr/include/glib-2.0/gio/gfilenamecompleter.h \
+ /usr/include/glib-2.0/gio/gfileoutputstream.h \
+ /usr/include/glib-2.0/gio/ginetaddress.h \
+ /usr/include/glib-2.0/gio/ginetsocketaddress.h \
+ /usr/include/glib-2.0/gio/gsocketaddress.h \
+ /usr/include/glib-2.0/gio/gioenumtypes.h \
+ /usr/include/glib-2.0/gio/gioerror.h \
+ /usr/include/glib-2.0/gio/giomodule.h /usr/include/glib-2.0/gmodule.h \
+ /usr/include/glib-2.0/gio/gioscheduler.h \
+ /usr/include/glib-2.0/gio/giostream.h \
+ /usr/include/glib-2.0/gio/gfileiostream.h \
+ /usr/include/glib-2.0/gio/gloadableicon.h \
+ /usr/include/glib-2.0/gio/gmemoryinputstream.h \
+ /usr/include/glib-2.0/gio/gmemoryoutputstream.h \
+ /usr/include/glib-2.0/gio/gmount.h \
+ /usr/include/glib-2.0/gio/gmountoperation.h \
+ /usr/include/glib-2.0/gio/gnativevolumemonitor.h \
+ /usr/include/glib-2.0/gio/gvolumemonitor.h \
+ /usr/include/glib-2.0/gio/gnetworkaddress.h \
+ /usr/include/glib-2.0/gio/gnetworkservice.h \
+ /usr/include/glib-2.0/gio/gresolver.h \
+ /usr/include/glib-2.0/gio/gseekable.h \
+ /usr/include/glib-2.0/gio/gsimpleasyncresult.h \
+ /usr/include/glib-2.0/gio/gsocket.h \
+ /usr/include/glib-2.0/gio/gsocketaddressenumerator.h \
+ /usr/include/glib-2.0/gio/gsocketclient.h \
+ /usr/include/glib-2.0/gio/gsocketconnectable.h \
+ /usr/include/glib-2.0/gio/gsocketconnection.h \
+ /usr/include/glib-2.0/gio/gsocketcontrolmessage.h \
+ /usr/include/glib-2.0/gio/gsocketlistener.h \
+ /usr/include/glib-2.0/gio/gsocketservice.h \
+ /usr/include/glib-2.0/gio/gtcpconnection.h \
+ /usr/include/glib-2.0/gio/gthreadedsocketservice.h \
+ /usr/include/glib-2.0/gio/gsrvtarget.h \
+ /usr/include/glib-2.0/gio/gthemedicon.h /usr/include/glib-2.0/gio/gvfs.h \
+ /usr/include/glib-2.0/gio/gvolume.h \
+ /usr/include/glib-2.0/gio/gzlibcompressor.h \
+ /usr/include/glib-2.0/gio/gzlibdecompressor.h \
+ ../../libanjuta/interfaces/ianjuta-editor-cell.h \
+ ../../libanjuta/interfaces/ianjuta-editor.h \
+ /usr/include/gtk-2.0/gtk/gtk.h /usr/include/gtk-2.0/gdk/gdk.h \
+ /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h \
+ /usr/include/gtk-2.0/gdk/gdkscreen.h /usr/include/cairo/cairo.h \
+ /usr/include/cairo/cairo-version.h /usr/include/cairo/cairo-features.h \
+ /usr/include/cairo/cairo-deprecated.h \
+ /usr/include/gtk-2.0/gdk/gdktypes.h /usr/include/pango-1.0/pango/pango.h \
+ /usr/include/pango-1.0/pango/pango-attributes.h \
+ /usr/include/pango-1.0/pango/pango-font.h \
+ /usr/include/pango-1.0/pango/pango-coverage.h \
+ /usr/include/pango-1.0/pango/pango-types.h \
+ /usr/include/pango-1.0/pango/pango-gravity.h \
+ /usr/include/pango-1.0/pango/pango-matrix.h \
+ /usr/include/pango-1.0/pango/pango-script.h \
+ /usr/include/pango-1.0/pango/pango-language.h \
+ /usr/include/pango-1.0/pango/pango-bidi-type.h \
+ /usr/include/pango-1.0/pango/pango-break.h \
+ /usr/include/pango-1.0/pango/pango-item.h \
+ /usr/include/pango-1.0/pango/pango-context.h \
+ /usr/include/pango-1.0/pango/pango-fontmap.h \
+ /usr/include/pango-1.0/pango/pango-fontset.h \
+ /usr/include/pango-1.0/pango/pango-engine.h \
+ /usr/include/pango-1.0/pango/pango-glyph.h \
+ /usr/include/pango-1.0/pango/pango-enum-types.h \
+ /usr/include/pango-1.0/pango/pango-features.h \
+ /usr/include/pango-1.0/pango/pango-glyph-item.h \
+ /usr/include/pango-1.0/pango/pango-layout.h \
+ /usr/include/pango-1.0/pango/pango-tabs.h \
+ /usr/include/pango-1.0/pango/pango-renderer.h \
+ /usr/include/pango-1.0/pango/pango-utils.h /usr/include/stdio.h \
+ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/include/bits/stdio.h /usr/lib64/gtk-2.0/include/gdkconfig.h \
+ /usr/include/gtk-2.0/gdk/gdkdisplay.h \
+ /usr/include/gtk-2.0/gdk/gdkevents.h /usr/include/gtk-2.0/gdk/gdkcolor.h \
+ /usr/include/gtk-2.0/gdk/gdkdnd.h /usr/include/gtk-2.0/gdk/gdkinput.h \
+ /usr/include/gtk-2.0/gdk/gdkcairo.h /usr/include/gtk-2.0/gdk/gdkpixbuf.h \
+ /usr/include/gtk-2.0/gdk/gdkrgb.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-features.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-core.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-transform.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-animation.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-io.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-loader.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h \
+ /usr/include/pango-1.0/pango/pangocairo.h \
+ /usr/include/gtk-2.0/gdk/gdkcursor.h \
+ /usr/include/gtk-2.0/gdk/gdkdisplaymanager.h \
+ /usr/include/gtk-2.0/gdk/gdkdrawable.h /usr/include/gtk-2.0/gdk/gdkgc.h \
+ /usr/include/gtk-2.0/gdk/gdkenumtypes.h \
+ /usr/include/gtk-2.0/gdk/gdkfont.h /usr/include/gtk-2.0/gdk/gdkimage.h \
+ /usr/include/gtk-2.0/gdk/gdkkeys.h /usr/include/gtk-2.0/gdk/gdkpango.h \
+ /usr/include/gtk-2.0/gdk/gdkpixmap.h \
+ /usr/include/gtk-2.0/gdk/gdkproperty.h \
+ /usr/include/gtk-2.0/gdk/gdkregion.h \
+ /usr/include/gtk-2.0/gdk/gdkselection.h \
+ /usr/include/gtk-2.0/gdk/gdkspawn.h \
+ /usr/include/gtk-2.0/gdk/gdktestutils.h \
+ /usr/include/gtk-2.0/gdk/gdkwindow.h \
+ /usr/include/gtk-2.0/gdk/gdkvisual.h \
+ /usr/include/gtk-2.0/gtk/gtkaboutdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkaccelgroup.h \
+ /usr/include/gtk-2.0/gtk/gtkenums.h /usr/include/gtk-2.0/gtk/gtkbin.h \
+ /usr/include/gtk-2.0/gtk/gtkcontainer.h \
+ /usr/include/gtk-2.0/gtk/gtkwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkobject.h \
+ /usr/include/gtk-2.0/gtk/gtktypeutils.h \
+ /usr/include/gtk-2.0/gtk/gtktypebuiltins.h \
+ /usr/include/gtk-2.0/gtk/gtkdebug.h \
+ /usr/include/gtk-2.0/gtk/gtkadjustment.h \
+ /usr/include/gtk-2.0/gtk/gtkstyle.h \
+ /usr/include/gtk-2.0/gtk/gtksettings.h /usr/include/gtk-2.0/gtk/gtkrc.h \
+ /usr/include/atk-1.0/atk/atk.h /usr/include/atk-1.0/atk/atkobject.h \
+ /usr/include/atk-1.0/atk/atkstate.h \
+ /usr/include/atk-1.0/atk/atkrelationtype.h \
+ /usr/include/atk-1.0/atk/atkaction.h \
+ /usr/include/atk-1.0/atk/atkcomponent.h \
+ /usr/include/atk-1.0/atk/atkutil.h \
+ /usr/include/atk-1.0/atk/atkdocument.h \
+ /usr/include/atk-1.0/atk/atkeditabletext.h \
+ /usr/include/atk-1.0/atk/atktext.h \
+ /usr/include/atk-1.0/atk/atkgobjectaccessible.h \
+ /usr/include/atk-1.0/atk/atkhyperlink.h \
+ /usr/include/atk-1.0/atk/atkhyperlinkimpl.h \
+ /usr/include/atk-1.0/atk/atkhypertext.h \
+ /usr/include/atk-1.0/atk/atkimage.h \
+ /usr/include/atk-1.0/atk/atknoopobject.h \
+ /usr/include/atk-1.0/atk/atknoopobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkplug.h \
+ /usr/include/atk-1.0/atk/atkregistry.h \
+ /usr/include/atk-1.0/atk/atkobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkrelation.h \
+ /usr/include/atk-1.0/atk/atkrelationset.h \
+ /usr/include/atk-1.0/atk/atkselection.h \
+ /usr/include/atk-1.0/atk/atksocket.h \
+ /usr/include/atk-1.0/atk/atkstateset.h \
+ /usr/include/atk-1.0/atk/atkstreamablecontent.h \
+ /usr/include/atk-1.0/atk/atktable.h /usr/include/atk-1.0/atk/atkmisc.h \
+ /usr/include/atk-1.0/atk/atkvalue.h \
+ /usr/include/gtk-2.0/gtk/gtkaccellabel.h \
+ /usr/include/gtk-2.0/gtk/gtklabel.h /usr/include/gtk-2.0/gtk/gtkmisc.h \
+ /usr/include/gtk-2.0/gtk/gtkmenu.h \
+ /usr/include/gtk-2.0/gtk/gtkmenushell.h \
+ /usr/include/gtk-2.0/gtk/gtkaccelmap.h \
+ /usr/include/gtk-2.0/gtk/gtkaccessible.h \
+ /usr/include/gtk-2.0/gtk/gtkaction.h \
+ /usr/include/gtk-2.0/gtk/gtkactiongroup.h \
+ /usr/include/gtk-2.0/gtk/gtkactivatable.h \
+ /usr/include/gtk-2.0/gtk/gtkalignment.h \
+ /usr/include/gtk-2.0/gtk/gtkarrow.h \
+ /usr/include/gtk-2.0/gtk/gtkaspectframe.h \
+ /usr/include/gtk-2.0/gtk/gtkframe.h \
+ /usr/include/gtk-2.0/gtk/gtkassistant.h \
+ /usr/include/gtk-2.0/gtk/gtkbbox.h /usr/include/gtk-2.0/gtk/gtkbox.h \
+ /usr/include/gtk-2.0/gtk/gtkbindings.h \
+ /usr/include/gtk-2.0/gtk/gtkbuildable.h \
+ /usr/include/gtk-2.0/gtk/gtkbuilder.h \
+ /usr/include/gtk-2.0/gtk/gtkbutton.h /usr/include/gtk-2.0/gtk/gtkimage.h \
+ /usr/include/gtk-2.0/gtk/gtkcalendar.h \
+ /usr/include/gtk-2.0/gtk/gtksignal.h \
+ /usr/include/gtk-2.0/gtk/gtkmarshal.h \
+ /usr/include/gtk-2.0/gtk/gtkcelleditable.h \
+ /usr/include/gtk-2.0/gtk/gtkcelllayout.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderer.h \
+ /usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodel.h \
+ /usr/include/gtk-2.0/gtk/gtktreesortable.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderertext.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererspin.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h \
+ /usr/include/gtk-2.0/gtk/gtkcellview.h \
+ /usr/include/gtk-2.0/gtk/gtkcheckbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktogglebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkitem.h \
+ /usr/include/gtk-2.0/gtk/gtkclipboard.h \
+ /usr/include/gtk-2.0/gtk/gtkselection.h \
+ /usr/include/gtk-2.0/gtk/gtktextiter.h \
+ /usr/include/gtk-2.0/gtk/gtktexttag.h \
+ /usr/include/gtk-2.0/gtk/gtktextchild.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorsel.h \
+ /usr/include/gtk-2.0/gtk/gtkvbox.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorseldialog.h \
+ /usr/include/gtk-2.0/gtk/gtkcombobox.h \
+ /usr/include/gtk-2.0/gtk/gtktreeview.h /usr/include/gtk-2.0/gtk/gtkdnd.h \
+ /usr/include/gtk-2.0/gtk/gtkentry.h \
+ /usr/include/gtk-2.0/gtk/gtkeditable.h \
+ /usr/include/gtk-2.0/gtk/gtkimcontext.h \
+ /usr/include/gtk-2.0/gtk/gtkentrybuffer.h \
+ /usr/include/gtk-2.0/gtk/gtkentrycompletion.h \
+ /usr/include/gtk-2.0/gtk/gtkliststore.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodelfilter.h \
+ /usr/include/gtk-2.0/gtk/gtkcomboboxentry.h \
+ /usr/include/gtk-2.0/gtk/gtkdrawingarea.h \
+ /usr/include/gtk-2.0/gtk/gtkeventbox.h \
+ /usr/include/gtk-2.0/gtk/gtkexpander.h \
+ /usr/include/gtk-2.0/gtk/gtkfixed.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooser.h \
+ /usr/include/gtk-2.0/gtk/gtkfilefilter.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkhbox.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkfontbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkfontsel.h /usr/include/gtk-2.0/gtk/gtkgc.h \
+ /usr/include/gtk-2.0/gtk/gtkhandlebox.h \
+ /usr/include/gtk-2.0/gtk/gtkhbbox.h /usr/include/gtk-2.0/gtk/gtkhpaned.h \
+ /usr/include/gtk-2.0/gtk/gtkpaned.h /usr/include/gtk-2.0/gtk/gtkhruler.h \
+ /usr/include/gtk-2.0/gtk/gtkruler.h /usr/include/gtk-2.0/gtk/gtkhscale.h \
+ /usr/include/gtk-2.0/gtk/gtkscale.h /usr/include/gtk-2.0/gtk/gtkrange.h \
+ /usr/include/gtk-2.0/gtk/gtkhscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkhseparator.h \
+ /usr/include/gtk-2.0/gtk/gtkseparator.h \
+ /usr/include/gtk-2.0/gtk/gtkhsv.h \
+ /usr/include/gtk-2.0/gtk/gtkiconfactory.h \
+ /usr/include/gtk-2.0/gtk/gtkicontheme.h \
+ /usr/include/gtk-2.0/gtk/gtkiconview.h \
+ /usr/include/gtk-2.0/gtk/gtktooltip.h \
+ /usr/include/gtk-2.0/gtk/gtkimagemenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkimcontextsimple.h \
+ /usr/include/gtk-2.0/gtk/gtkimmulticontext.h \
+ /usr/include/gtk-2.0/gtk/gtkinfobar.h \
+ /usr/include/gtk-2.0/gtk/gtkinvisible.h \
+ /usr/include/gtk-2.0/gtk/gtklayout.h \
+ /usr/include/gtk-2.0/gtk/gtklinkbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkmain.h /usr/include/gtk-2.0/gtk/gtkmenubar.h \
+ /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoolitem.h \
+ /usr/include/gtk-2.0/gtk/gtktooltips.h \
+ /usr/include/gtk-2.0/gtk/gtksizegroup.h \
+ /usr/include/gtk-2.0/gtk/gtkmessagedialog.h \
+ /usr/include/gtk-2.0/gtk/gtkmodules.h \
+ /usr/include/gtk-2.0/gtk/gtkmountoperation.h \
+ /usr/include/gtk-2.0/gtk/gtknotebook.h \
+ /usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkorientable.h \
+ /usr/include/gtk-2.0/gtk/gtkpagesetup.h \
+ /usr/include/gtk-2.0/gtk/gtkpapersize.h \
+ /usr/include/gtk-2.0/gtk/gtkplug.h /usr/include/gtk-2.0/gtk/gtksocket.h \
+ /usr/include/gtk-2.0/gtk/gtkprintcontext.h \
+ /usr/include/gtk-2.0/gtk/gtkprintoperation.h \
+ /usr/include/gtk-2.0/gtk/gtkprintsettings.h \
+ /usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h \
+ /usr/include/gtk-2.0/gtk/gtkprogressbar.h \
+ /usr/include/gtk-2.0/gtk/gtkprogress.h \
+ /usr/include/gtk-2.0/gtk/gtkradioaction.h \
+ /usr/include/gtk-2.0/gtk/gtktoggleaction.h \
+ /usr/include/gtk-2.0/gtk/gtkradiobutton.h \
+ /usr/include/gtk-2.0/gtk/gtkradiomenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentaction.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentmanager.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooser.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentfilter.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkscalebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkscrolledwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkvscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkviewport.h \
+ /usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h \
+ /usr/include/gtk-2.0/gtk/gtkshow.h \
+ /usr/include/gtk-2.0/gtk/gtkspinbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkspinner.h \
+ /usr/include/gtk-2.0/gtk/gtkstatusbar.h \
+ /usr/include/gtk-2.0/gtk/gtkstatusicon.h \
+ /usr/include/gtk-2.0/gtk/gtkstock.h /usr/include/gtk-2.0/gtk/gtktable.h \
+ /usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtktextbuffer.h \
+ /usr/include/gtk-2.0/gtk/gtktexttagtable.h \
+ /usr/include/gtk-2.0/gtk/gtktextmark.h \
+ /usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h \
+ /usr/include/gtk-2.0/gtk/gtktextview.h \
+ /usr/include/gtk-2.0/gtk/gtktoolbar.h \
+ /usr/include/gtk-2.0/gtk/gtkpixmap.h \
+ /usr/include/gtk-2.0/gtk/gtktoolitemgroup.h \
+ /usr/include/gtk-2.0/gtk/gtktoolpalette.h \
+ /usr/include/gtk-2.0/gtk/gtktoolshell.h \
+ /usr/include/gtk-2.0/gtk/gtktestutils.h \
+ /usr/include/gtk-2.0/gtk/gtktreednd.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodelsort.h \
+ /usr/include/gtk-2.0/gtk/gtktreeselection.h \
+ /usr/include/gtk-2.0/gtk/gtktreestore.h \
+ /usr/include/gtk-2.0/gtk/gtkuimanager.h \
+ /usr/include/gtk-2.0/gtk/gtkvbbox.h \
+ /usr/include/gtk-2.0/gtk/gtkversion.h \
+ /usr/include/gtk-2.0/gtk/gtkvolumebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkvpaned.h \
+ /usr/include/gtk-2.0/gtk/gtkvruler.h \
+ /usr/include/gtk-2.0/gtk/gtkvscale.h \
+ /usr/include/gtk-2.0/gtk/gtkvseparator.h \
+ /usr/include/gtk-2.0/gtk/gtktext.h /usr/include/gtk-2.0/gtk/gtktree.h \
+ /usr/include/gtk-2.0/gtk/gtktreeitem.h \
+ /usr/include/gtk-2.0/gtk/gtkclist.h /usr/include/gtk-2.0/gtk/gtkcombo.h \
+ /usr/include/gtk-2.0/gtk/gtkctree.h /usr/include/gtk-2.0/gtk/gtkcurve.h \
+ /usr/include/gtk-2.0/gtk/gtkfilesel.h \
+ /usr/include/gtk-2.0/gtk/gtkgamma.h \
+ /usr/include/gtk-2.0/gtk/gtkinputdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkitemfactory.h \
+ /usr/include/gtk-2.0/gtk/gtklist.h \
+ /usr/include/gtk-2.0/gtk/gtklistitem.h \
+ /usr/include/gtk-2.0/gtk/gtkoldeditable.h \
+ /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
+ /usr/include/gtk-2.0/gtk/gtkpreview.h \
+ /usr/include/gtk-2.0/gtk/gtktipsquery.h \
+ ../../libanjuta/interfaces/ianjuta-iterable.h \
+ ../../libanjuta/interfaces/ianjuta-editor-selection.h \
+ ../../libanjuta/interfaces/ianjuta-editor-tip.h \
+ ../../libanjuta/interfaces/ianjuta-document.h \
+ ../../libanjuta/interfaces/ianjuta-symbol-manager.h \
+ ../../libanjuta/anjuta-async-notify.h \
+ ../../libanjuta/interfaces/ianjuta-symbol.h \
+ ../../libanjuta/interfaces/ianjuta-symbol-query.h \
+ ../../libanjuta/interfaces/ianjuta-document-manager.h \
+ ../../libanjuta/interfaces/ianjuta-project-manager.h \
+ ../../libanjuta/anjuta-project.h \
+ ../../libanjuta/interfaces/ianjuta-project.h python-assist.h \
+ ../../libanjuta/anjuta-preferences.h /usr/include/glib-2.0/glib/gi18n.h \
+ /usr/include/libintl.h /usr/include/locale.h /usr/include/bits/locale.h \
+ /usr/include/gtk-2.0/gdk/gdkkeysyms.h \
+ ../../libanjuta/anjuta-preferences-dialog.h \
+ ../../libanjuta/anjuta-plugin-manager.h ../../libanjuta/anjuta-status.h \
+ ../../libanjuta/anjuta-plugin-description.h \
+ ../../libanjuta/interfaces/ianjuta-editor-assist.h \
+ ../../libanjuta/interfaces/ianjuta-provider.h python-utils.h
+
+/usr/include/ctype.h:
+
+/usr/include/features.h:
+
+/usr/include/sys/cdefs.h:
+
+/usr/include/bits/wordsize.h:
+
+/usr/include/gnu/stubs.h:
+
+/usr/include/gnu/stubs-64.h:
+
+/usr/include/bits/types.h:
+
+/usr/include/bits/typesizes.h:
+
+/usr/include/endian.h:
+
+/usr/include/bits/endian.h:
+
+/usr/include/bits/byteswap.h:
+
+/usr/include/xlocale.h:
+
+/usr/include/string.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stddef.h:
+
+/usr/include/bits/string.h:
+
+/usr/include/bits/string2.h:
+
+/usr/include/stdlib.h:
+
+/usr/include/unistd.h:
+
+/usr/include/bits/posix_opt.h:
+
+/usr/include/bits/environments.h:
+
+/usr/include/bits/confname.h:
+
+/usr/include/getopt.h:
+
+/usr/include/sys/stat.h:
+
+/usr/include/time.h:
+
+/usr/include/bits/stat.h:
+
+../../libanjuta/anjuta-debug.h:
+
+../../libanjuta/interfaces/ianjuta-file.h:
+
+/usr/include/glib-2.0/glib-object.h:
+
+/usr/include/glib-2.0/gobject/gboxed.h:
+
+/usr/include/glib-2.0/gobject/gtype.h:
+
+/usr/include/glib-2.0/glib.h:
+
+/usr/include/glib-2.0/glib/galloca.h:
+
+/usr/include/glib-2.0/glib/gtypes.h:
+
+/usr/lib64/glib-2.0/include/glibconfig.h:
+
+/usr/include/glib-2.0/glib/gmacros.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/limits.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/syslimits.h:
+
+/usr/include/limits.h:
+
+/usr/include/bits/posix1_lim.h:
+
+/usr/include/bits/local_lim.h:
+
+/usr/include/linux/limits.h:
+
+/usr/include/bits/posix2_lim.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/float.h:
+
+/usr/include/glib-2.0/glib/garray.h:
+
+/usr/include/glib-2.0/glib/gasyncqueue.h:
+
+/usr/include/glib-2.0/glib/gthread.h:
+
+/usr/include/glib-2.0/glib/gerror.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stdarg.h:
+
+/usr/include/glib-2.0/glib/gquark.h:
+
+/usr/include/glib-2.0/glib/gutils.h:
+
+/usr/include/glib-2.0/glib/gatomic.h:
+
+/usr/include/glib-2.0/glib/gbacktrace.h:
+
+/usr/include/signal.h:
+
+/usr/include/bits/sigset.h:
+
+/usr/include/bits/signum.h:
+
+/usr/include/bits/siginfo.h:
+
+/usr/include/bits/sigaction.h:
+
+/usr/include/bits/sigcontext.h:
+
+/usr/include/bits/sigstack.h:
+
+/usr/include/sys/ucontext.h:
+
+/usr/include/bits/pthreadtypes.h:
+
+/usr/include/bits/sigthread.h:
+
+/usr/include/glib-2.0/glib/gbase64.h:
+
+/usr/include/glib-2.0/glib/gbitlock.h:
+
+/usr/include/glib-2.0/glib/gbookmarkfile.h:
+
+/usr/include/bits/time.h:
+
+/usr/include/glib-2.0/glib/gcache.h:
+
+/usr/include/glib-2.0/glib/glist.h:
+
+/usr/include/glib-2.0/glib/gmem.h:
+
+/usr/include/glib-2.0/glib/gslice.h:
+
+/usr/include/glib-2.0/glib/gchecksum.h:
+
+/usr/include/glib-2.0/glib/gcompletion.h:
+
+/usr/include/glib-2.0/glib/gconvert.h:
+
+/usr/include/glib-2.0/glib/gdataset.h:
+
+/usr/include/glib-2.0/glib/gdate.h:
+
+/usr/include/glib-2.0/glib/gdir.h:
+
+/usr/include/glib-2.0/glib/gfileutils.h:
+
+/usr/include/glib-2.0/glib/ghash.h:
+
+/usr/include/glib-2.0/glib/ghook.h:
+
+/usr/include/glib-2.0/glib/ghostutils.h:
+
+/usr/include/glib-2.0/glib/giochannel.h:
+
+/usr/include/glib-2.0/glib/gmain.h:
+
+/usr/include/glib-2.0/glib/gpoll.h:
+
+/usr/include/glib-2.0/glib/gslist.h:
+
+/usr/include/glib-2.0/glib/gstring.h:
+
+/usr/include/glib-2.0/glib/gunicode.h:
+
+/usr/include/glib-2.0/glib/gkeyfile.h:
+
+/usr/include/glib-2.0/glib/gmappedfile.h:
+
+/usr/include/glib-2.0/glib/gmarkup.h:
+
+/usr/include/glib-2.0/glib/gmessages.h:
+
+/usr/include/glib-2.0/glib/gnode.h:
+
+/usr/include/glib-2.0/glib/goption.h:
+
+/usr/include/glib-2.0/glib/gpattern.h:
+
+/usr/include/glib-2.0/glib/gprimes.h:
+
+/usr/include/glib-2.0/glib/gqsort.h:
+
+/usr/include/glib-2.0/glib/gqueue.h:
+
+/usr/include/glib-2.0/glib/grand.h:
+
+/usr/include/glib-2.0/glib/grel.h:
+
+/usr/include/glib-2.0/glib/gregex.h:
+
+/usr/include/glib-2.0/glib/gscanner.h:
+
+/usr/include/glib-2.0/glib/gsequence.h:
+
+/usr/include/glib-2.0/glib/gshell.h:
+
+/usr/include/glib-2.0/glib/gspawn.h:
+
+/usr/include/glib-2.0/glib/gstrfuncs.h:
+
+/usr/include/glib-2.0/glib/gtestutils.h:
+
+/usr/include/glib-2.0/glib/gthreadpool.h:
+
+/usr/include/glib-2.0/glib/gtimer.h:
+
+/usr/include/glib-2.0/glib/gtree.h:
+
+/usr/include/glib-2.0/glib/gurifuncs.h:
+
+/usr/include/glib-2.0/glib/gvarianttype.h:
+
+/usr/include/glib-2.0/glib/gvariant.h:
+
+/usr/include/glib-2.0/gobject/genums.h:
+
+/usr/include/glib-2.0/gobject/gobject.h:
+
+/usr/include/glib-2.0/gobject/gvalue.h:
+
+/usr/include/glib-2.0/gobject/gparam.h:
+
+/usr/include/glib-2.0/gobject/gclosure.h:
+
+/usr/include/glib-2.0/gobject/gsignal.h:
+
+/usr/include/glib-2.0/gobject/gmarshal.h:
+
+/usr/include/glib-2.0/gobject/gparamspecs.h:
+
+/usr/include/glib-2.0/gobject/gsourceclosure.h:
+
+/usr/include/glib-2.0/gobject/gtypemodule.h:
+
+/usr/include/glib-2.0/gobject/gtypeplugin.h:
+
+/usr/include/glib-2.0/gobject/gvaluearray.h:
+
+/usr/include/glib-2.0/gobject/gvaluetypes.h:
+
+/usr/include/glib-2.0/gio/gio.h:
+
+/usr/include/glib-2.0/gio/giotypes.h:
+
+/usr/include/glib-2.0/gio/gioenums.h:
+
+/usr/include/glib-2.0/gio/gappinfo.h:
+
+/usr/include/glib-2.0/gio/gasyncresult.h:
+
+/usr/include/glib-2.0/gio/gasyncinitable.h:
+
+/usr/include/glib-2.0/gio/ginitable.h:
+
+/usr/include/glib-2.0/gio/gbufferedinputstream.h:
+
+/usr/include/glib-2.0/gio/gfilterinputstream.h:
+
+/usr/include/glib-2.0/gio/ginputstream.h:
+
+/usr/include/glib-2.0/gio/gbufferedoutputstream.h:
+
+/usr/include/glib-2.0/gio/gfilteroutputstream.h:
+
+/usr/include/glib-2.0/gio/goutputstream.h:
+
+/usr/include/glib-2.0/gio/gcancellable.h:
+
+/usr/include/glib-2.0/gio/gcontenttype.h:
+
+/usr/include/glib-2.0/gio/gconverter.h:
+
+/usr/include/glib-2.0/gio/gconverterinputstream.h:
+
+/usr/include/glib-2.0/gio/gconverteroutputstream.h:
+
+/usr/include/glib-2.0/gio/gcharsetconverter.h:
+
+/usr/include/glib-2.0/gio/gdatainputstream.h:
+
+/usr/include/glib-2.0/gio/gdataoutputstream.h:
+
+/usr/include/glib-2.0/gio/gdrive.h:
+
+/usr/include/glib-2.0/gio/gemblemedicon.h:
+
+/usr/include/glib-2.0/gio/gicon.h:
+
+/usr/include/glib-2.0/gio/gemblem.h:
+
+/usr/include/glib-2.0/gio/gfile.h:
+
+/usr/include/glib-2.0/gio/gfileattribute.h:
+
+/usr/include/glib-2.0/gio/gfileenumerator.h:
+
+/usr/include/glib-2.0/gio/gfileicon.h:
+
+/usr/include/glib-2.0/gio/gfileinfo.h:
+
+/usr/include/glib-2.0/gio/gfileinputstream.h:
+
+/usr/include/glib-2.0/gio/gfilemonitor.h:
+
+/usr/include/glib-2.0/gio/gfilenamecompleter.h:
+
+/usr/include/glib-2.0/gio/gfileoutputstream.h:
+
+/usr/include/glib-2.0/gio/ginetaddress.h:
+
+/usr/include/glib-2.0/gio/ginetsocketaddress.h:
+
+/usr/include/glib-2.0/gio/gsocketaddress.h:
+
+/usr/include/glib-2.0/gio/gioenumtypes.h:
+
+/usr/include/glib-2.0/gio/gioerror.h:
+
+/usr/include/glib-2.0/gio/giomodule.h:
+
+/usr/include/glib-2.0/gmodule.h:
+
+/usr/include/glib-2.0/gio/gioscheduler.h:
+
+/usr/include/glib-2.0/gio/giostream.h:
+
+/usr/include/glib-2.0/gio/gfileiostream.h:
+
+/usr/include/glib-2.0/gio/gloadableicon.h:
+
+/usr/include/glib-2.0/gio/gmemoryinputstream.h:
+
+/usr/include/glib-2.0/gio/gmemoryoutputstream.h:
+
+/usr/include/glib-2.0/gio/gmount.h:
+
+/usr/include/glib-2.0/gio/gmountoperation.h:
+
+/usr/include/glib-2.0/gio/gnativevolumemonitor.h:
+
+/usr/include/glib-2.0/gio/gvolumemonitor.h:
+
+/usr/include/glib-2.0/gio/gnetworkaddress.h:
+
+/usr/include/glib-2.0/gio/gnetworkservice.h:
+
+/usr/include/glib-2.0/gio/gresolver.h:
+
+/usr/include/glib-2.0/gio/gseekable.h:
+
+/usr/include/glib-2.0/gio/gsimpleasyncresult.h:
+
+/usr/include/glib-2.0/gio/gsocket.h:
+
+/usr/include/glib-2.0/gio/gsocketaddressenumerator.h:
+
+/usr/include/glib-2.0/gio/gsocketclient.h:
+
+/usr/include/glib-2.0/gio/gsocketconnectable.h:
+
+/usr/include/glib-2.0/gio/gsocketconnection.h:
+
+/usr/include/glib-2.0/gio/gsocketcontrolmessage.h:
+
+/usr/include/glib-2.0/gio/gsocketlistener.h:
+
+/usr/include/glib-2.0/gio/gsocketservice.h:
+
+/usr/include/glib-2.0/gio/gtcpconnection.h:
+
+/usr/include/glib-2.0/gio/gthreadedsocketservice.h:
+
+/usr/include/glib-2.0/gio/gsrvtarget.h:
+
+/usr/include/glib-2.0/gio/gthemedicon.h:
+
+/usr/include/glib-2.0/gio/gvfs.h:
+
+/usr/include/glib-2.0/gio/gvolume.h:
+
+/usr/include/glib-2.0/gio/gzlibcompressor.h:
+
+/usr/include/glib-2.0/gio/gzlibdecompressor.h:
+
+../../libanjuta/interfaces/ianjuta-editor-cell.h:
+
+../../libanjuta/interfaces/ianjuta-editor.h:
+
+/usr/include/gtk-2.0/gtk/gtk.h:
+
+/usr/include/gtk-2.0/gdk/gdk.h:
+
+/usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:
+
+/usr/include/gtk-2.0/gdk/gdkscreen.h:
+
+/usr/include/cairo/cairo.h:
+
+/usr/include/cairo/cairo-version.h:
+
+/usr/include/cairo/cairo-features.h:
+
+/usr/include/cairo/cairo-deprecated.h:
+
+/usr/include/gtk-2.0/gdk/gdktypes.h:
+
+/usr/include/pango-1.0/pango/pango.h:
+
+/usr/include/pango-1.0/pango/pango-attributes.h:
+
+/usr/include/pango-1.0/pango/pango-font.h:
+
+/usr/include/pango-1.0/pango/pango-coverage.h:
+
+/usr/include/pango-1.0/pango/pango-types.h:
+
+/usr/include/pango-1.0/pango/pango-gravity.h:
+
+/usr/include/pango-1.0/pango/pango-matrix.h:
+
+/usr/include/pango-1.0/pango/pango-script.h:
+
+/usr/include/pango-1.0/pango/pango-language.h:
+
+/usr/include/pango-1.0/pango/pango-bidi-type.h:
+
+/usr/include/pango-1.0/pango/pango-break.h:
+
+/usr/include/pango-1.0/pango/pango-item.h:
+
+/usr/include/pango-1.0/pango/pango-context.h:
+
+/usr/include/pango-1.0/pango/pango-fontmap.h:
+
+/usr/include/pango-1.0/pango/pango-fontset.h:
+
+/usr/include/pango-1.0/pango/pango-engine.h:
+
+/usr/include/pango-1.0/pango/pango-glyph.h:
+
+/usr/include/pango-1.0/pango/pango-enum-types.h:
+
+/usr/include/pango-1.0/pango/pango-features.h:
+
+/usr/include/pango-1.0/pango/pango-glyph-item.h:
+
+/usr/include/pango-1.0/pango/pango-layout.h:
+
+/usr/include/pango-1.0/pango/pango-tabs.h:
+
+/usr/include/pango-1.0/pango/pango-renderer.h:
+
+/usr/include/pango-1.0/pango/pango-utils.h:
+
+/usr/include/stdio.h:
+
+/usr/include/libio.h:
+
+/usr/include/_G_config.h:
+
+/usr/include/wchar.h:
+
+/usr/include/bits/stdio_lim.h:
+
+/usr/include/bits/sys_errlist.h:
+
+/usr/include/bits/stdio.h:
+
+/usr/lib64/gtk-2.0/include/gdkconfig.h:
+
+/usr/include/gtk-2.0/gdk/gdkdisplay.h:
+
+/usr/include/gtk-2.0/gdk/gdkevents.h:
+
+/usr/include/gtk-2.0/gdk/gdkcolor.h:
+
+/usr/include/gtk-2.0/gdk/gdkdnd.h:
+
+/usr/include/gtk-2.0/gdk/gdkinput.h:
+
+/usr/include/gtk-2.0/gdk/gdkcairo.h:
+
+/usr/include/gtk-2.0/gdk/gdkpixbuf.h:
+
+/usr/include/gtk-2.0/gdk/gdkrgb.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-features.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-core.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-transform.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-animation.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-io.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-loader.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h:
+
+/usr/include/pango-1.0/pango/pangocairo.h:
+
+/usr/include/gtk-2.0/gdk/gdkcursor.h:
+
+/usr/include/gtk-2.0/gdk/gdkdisplaymanager.h:
+
+/usr/include/gtk-2.0/gdk/gdkdrawable.h:
+
+/usr/include/gtk-2.0/gdk/gdkgc.h:
+
+/usr/include/gtk-2.0/gdk/gdkenumtypes.h:
+
+/usr/include/gtk-2.0/gdk/gdkfont.h:
+
+/usr/include/gtk-2.0/gdk/gdkimage.h:
+
+/usr/include/gtk-2.0/gdk/gdkkeys.h:
+
+/usr/include/gtk-2.0/gdk/gdkpango.h:
+
+/usr/include/gtk-2.0/gdk/gdkpixmap.h:
+
+/usr/include/gtk-2.0/gdk/gdkproperty.h:
+
+/usr/include/gtk-2.0/gdk/gdkregion.h:
+
+/usr/include/gtk-2.0/gdk/gdkselection.h:
+
+/usr/include/gtk-2.0/gdk/gdkspawn.h:
+
+/usr/include/gtk-2.0/gdk/gdktestutils.h:
+
+/usr/include/gtk-2.0/gdk/gdkwindow.h:
+
+/usr/include/gtk-2.0/gdk/gdkvisual.h:
+
+/usr/include/gtk-2.0/gtk/gtkaboutdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccelgroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkenums.h:
+
+/usr/include/gtk-2.0/gtk/gtkbin.h:
+
+/usr/include/gtk-2.0/gtk/gtkcontainer.h:
+
+/usr/include/gtk-2.0/gtk/gtkwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkobject.h:
+
+/usr/include/gtk-2.0/gtk/gtktypeutils.h:
+
+/usr/include/gtk-2.0/gtk/gtktypebuiltins.h:
+
+/usr/include/gtk-2.0/gtk/gtkdebug.h:
+
+/usr/include/gtk-2.0/gtk/gtkadjustment.h:
+
+/usr/include/gtk-2.0/gtk/gtkstyle.h:
+
+/usr/include/gtk-2.0/gtk/gtksettings.h:
+
+/usr/include/gtk-2.0/gtk/gtkrc.h:
+
+/usr/include/atk-1.0/atk/atk.h:
+
+/usr/include/atk-1.0/atk/atkobject.h:
+
+/usr/include/atk-1.0/atk/atkstate.h:
+
+/usr/include/atk-1.0/atk/atkrelationtype.h:
+
+/usr/include/atk-1.0/atk/atkaction.h:
+
+/usr/include/atk-1.0/atk/atkcomponent.h:
+
+/usr/include/atk-1.0/atk/atkutil.h:
+
+/usr/include/atk-1.0/atk/atkdocument.h:
+
+/usr/include/atk-1.0/atk/atkeditabletext.h:
+
+/usr/include/atk-1.0/atk/atktext.h:
+
+/usr/include/atk-1.0/atk/atkgobjectaccessible.h:
+
+/usr/include/atk-1.0/atk/atkhyperlink.h:
+
+/usr/include/atk-1.0/atk/atkhyperlinkimpl.h:
+
+/usr/include/atk-1.0/atk/atkhypertext.h:
+
+/usr/include/atk-1.0/atk/atkimage.h:
+
+/usr/include/atk-1.0/atk/atknoopobject.h:
+
+/usr/include/atk-1.0/atk/atknoopobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkplug.h:
+
+/usr/include/atk-1.0/atk/atkregistry.h:
+
+/usr/include/atk-1.0/atk/atkobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkrelation.h:
+
+/usr/include/atk-1.0/atk/atkrelationset.h:
+
+/usr/include/atk-1.0/atk/atkselection.h:
+
+/usr/include/atk-1.0/atk/atksocket.h:
+
+/usr/include/atk-1.0/atk/atkstateset.h:
+
+/usr/include/atk-1.0/atk/atkstreamablecontent.h:
+
+/usr/include/atk-1.0/atk/atktable.h:
+
+/usr/include/atk-1.0/atk/atkmisc.h:
+
+/usr/include/atk-1.0/atk/atkvalue.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccellabel.h:
+
+/usr/include/gtk-2.0/gtk/gtklabel.h:
+
+/usr/include/gtk-2.0/gtk/gtkmisc.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenushell.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccelmap.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccessible.h:
+
+/usr/include/gtk-2.0/gtk/gtkaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkactiongroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkactivatable.h:
+
+/usr/include/gtk-2.0/gtk/gtkalignment.h:
+
+/usr/include/gtk-2.0/gtk/gtkarrow.h:
+
+/usr/include/gtk-2.0/gtk/gtkaspectframe.h:
+
+/usr/include/gtk-2.0/gtk/gtkframe.h:
+
+/usr/include/gtk-2.0/gtk/gtkassistant.h:
+
+/usr/include/gtk-2.0/gtk/gtkbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkbindings.h:
+
+/usr/include/gtk-2.0/gtk/gtkbuildable.h:
+
+/usr/include/gtk-2.0/gtk/gtkbuilder.h:
+
+/usr/include/gtk-2.0/gtk/gtkbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkimage.h:
+
+/usr/include/gtk-2.0/gtk/gtkcalendar.h:
+
+/usr/include/gtk-2.0/gtk/gtksignal.h:
+
+/usr/include/gtk-2.0/gtk/gtkmarshal.h:
+
+/usr/include/gtk-2.0/gtk/gtkcelleditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkcelllayout.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderer.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodel.h:
+
+/usr/include/gtk-2.0/gtk/gtktreesortable.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderertext.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererspin.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellview.h:
+
+/usr/include/gtk-2.0/gtk/gtkcheckbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktogglebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkclipboard.h:
+
+/usr/include/gtk-2.0/gtk/gtkselection.h:
+
+/usr/include/gtk-2.0/gtk/gtktextiter.h:
+
+/usr/include/gtk-2.0/gtk/gtktexttag.h:
+
+/usr/include/gtk-2.0/gtk/gtktextchild.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorsel.h:
+
+/usr/include/gtk-2.0/gtk/gtkvbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorseldialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkcombobox.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeview.h:
+
+/usr/include/gtk-2.0/gtk/gtkdnd.h:
+
+/usr/include/gtk-2.0/gtk/gtkentry.h:
+
+/usr/include/gtk-2.0/gtk/gtkeditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkimcontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkentrybuffer.h:
+
+/usr/include/gtk-2.0/gtk/gtkentrycompletion.h:
+
+/usr/include/gtk-2.0/gtk/gtkliststore.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodelfilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkcomboboxentry.h:
+
+/usr/include/gtk-2.0/gtk/gtkdrawingarea.h:
+
+/usr/include/gtk-2.0/gtk/gtkeventbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkexpander.h:
+
+/usr/include/gtk-2.0/gtk/gtkfixed.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooser.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilefilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkhbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkfontbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkfontsel.h:
+
+/usr/include/gtk-2.0/gtk/gtkgc.h:
+
+/usr/include/gtk-2.0/gtk/gtkhandlebox.h:
+
+/usr/include/gtk-2.0/gtk/gtkhbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkhpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkhruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkhscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkrange.h:
+
+/usr/include/gtk-2.0/gtk/gtkhscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkhseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtkhsv.h:
+
+/usr/include/gtk-2.0/gtk/gtkiconfactory.h:
+
+/usr/include/gtk-2.0/gtk/gtkicontheme.h:
+
+/usr/include/gtk-2.0/gtk/gtkiconview.h:
+
+/usr/include/gtk-2.0/gtk/gtktooltip.h:
+
+/usr/include/gtk-2.0/gtk/gtkimagemenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkimcontextsimple.h:
+
+/usr/include/gtk-2.0/gtk/gtkimmulticontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkinfobar.h:
+
+/usr/include/gtk-2.0/gtk/gtkinvisible.h:
+
+/usr/include/gtk-2.0/gtk/gtklayout.h:
+
+/usr/include/gtk-2.0/gtk/gtklinkbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkmain.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenubar.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolitem.h:
+
+/usr/include/gtk-2.0/gtk/gtktooltips.h:
+
+/usr/include/gtk-2.0/gtk/gtksizegroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkmessagedialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkmodules.h:
+
+/usr/include/gtk-2.0/gtk/gtkmountoperation.h:
+
+/usr/include/gtk-2.0/gtk/gtknotebook.h:
+
+/usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkorientable.h:
+
+/usr/include/gtk-2.0/gtk/gtkpagesetup.h:
+
+/usr/include/gtk-2.0/gtk/gtkpapersize.h:
+
+/usr/include/gtk-2.0/gtk/gtkplug.h:
+
+/usr/include/gtk-2.0/gtk/gtksocket.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintcontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintoperation.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintsettings.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h:
+
+/usr/include/gtk-2.0/gtk/gtkprogressbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkprogress.h:
+
+/usr/include/gtk-2.0/gtk/gtkradioaction.h:
+
+/usr/include/gtk-2.0/gtk/gtktoggleaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiobutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiomenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentmanager.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooser.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentfilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkscalebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkscrolledwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkvscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkviewport.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkshow.h:
+
+/usr/include/gtk-2.0/gtk/gtkspinbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkspinner.h:
+
+/usr/include/gtk-2.0/gtk/gtkstatusbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkstatusicon.h:
+
+/usr/include/gtk-2.0/gtk/gtkstock.h:
+
+/usr/include/gtk-2.0/gtk/gtktable.h:
+
+/usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtktextbuffer.h:
+
+/usr/include/gtk-2.0/gtk/gtktexttagtable.h:
+
+/usr/include/gtk-2.0/gtk/gtktextmark.h:
+
+/usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h:
+
+/usr/include/gtk-2.0/gtk/gtktextview.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkpixmap.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolitemgroup.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolpalette.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolshell.h:
+
+/usr/include/gtk-2.0/gtk/gtktestutils.h:
+
+/usr/include/gtk-2.0/gtk/gtktreednd.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodelsort.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeselection.h:
+
+/usr/include/gtk-2.0/gtk/gtktreestore.h:
+
+/usr/include/gtk-2.0/gtk/gtkuimanager.h:
+
+/usr/include/gtk-2.0/gtk/gtkvbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkversion.h:
+
+/usr/include/gtk-2.0/gtk/gtkvolumebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkvpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkvruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkvscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkvseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtktext.h:
+
+/usr/include/gtk-2.0/gtk/gtktree.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkclist.h:
+
+/usr/include/gtk-2.0/gtk/gtkcombo.h:
+
+/usr/include/gtk-2.0/gtk/gtkctree.h:
+
+/usr/include/gtk-2.0/gtk/gtkcurve.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilesel.h:
+
+/usr/include/gtk-2.0/gtk/gtkgamma.h:
+
+/usr/include/gtk-2.0/gtk/gtkinputdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkitemfactory.h:
+
+/usr/include/gtk-2.0/gtk/gtklist.h:
+
+/usr/include/gtk-2.0/gtk/gtklistitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkoldeditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkoptionmenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkpreview.h:
+
+/usr/include/gtk-2.0/gtk/gtktipsquery.h:
+
+../../libanjuta/interfaces/ianjuta-iterable.h:
+
+../../libanjuta/interfaces/ianjuta-editor-selection.h:
+
+../../libanjuta/interfaces/ianjuta-editor-tip.h:
+
+../../libanjuta/interfaces/ianjuta-document.h:
+
+../../libanjuta/interfaces/ianjuta-symbol-manager.h:
+
+../../libanjuta/anjuta-async-notify.h:
+
+../../libanjuta/interfaces/ianjuta-symbol.h:
+
+../../libanjuta/interfaces/ianjuta-symbol-query.h:
+
+../../libanjuta/interfaces/ianjuta-document-manager.h:
+
+../../libanjuta/interfaces/ianjuta-project-manager.h:
+
+../../libanjuta/anjuta-project.h:
+
+../../libanjuta/interfaces/ianjuta-project.h:
+
+python-assist.h:
+
+../../libanjuta/anjuta-preferences.h:
+
+/usr/include/glib-2.0/glib/gi18n.h:
+
+/usr/include/libintl.h:
+
+/usr/include/locale.h:
+
+/usr/include/bits/locale.h:
+
+/usr/include/gtk-2.0/gdk/gdkkeysyms.h:
+
+../../libanjuta/anjuta-preferences-dialog.h:
+
+../../libanjuta/anjuta-plugin-manager.h:
+
+../../libanjuta/anjuta-status.h:
+
+../../libanjuta/anjuta-plugin-description.h:
+
+../../libanjuta/interfaces/ianjuta-editor-assist.h:
+
+../../libanjuta/interfaces/ianjuta-provider.h:
+
+python-utils.h:
diff --git a/plugins/language-support-python/.deps/python-utils.Plo b/plugins/language-support-python/.deps/python-utils.Plo
new file mode 100644
index 0000000..59b562e
--- /dev/null
+++ b/plugins/language-support-python/.deps/python-utils.Plo
@@ -0,0 +1,1427 @@
+python-utils.lo: python-utils.c \
+ ../../libanjuta/interfaces/ianjuta-editor-cell.h \
+ /usr/include/glib-2.0/glib-object.h \
+ /usr/include/glib-2.0/gobject/gboxed.h \
+ /usr/include/glib-2.0/gobject/gtype.h /usr/include/glib-2.0/glib.h \
+ /usr/include/glib-2.0/glib/galloca.h /usr/include/glib-2.0/glib/gtypes.h \
+ /usr/lib64/glib-2.0/include/glibconfig.h \
+ /usr/include/glib-2.0/glib/gmacros.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stddef.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/syslimits.h \
+ /usr/include/limits.h /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/float.h \
+ /usr/include/glib-2.0/glib/garray.h \
+ /usr/include/glib-2.0/glib/gasyncqueue.h \
+ /usr/include/glib-2.0/glib/gthread.h /usr/include/glib-2.0/glib/gerror.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stdarg.h \
+ /usr/include/glib-2.0/glib/gquark.h /usr/include/glib-2.0/glib/gutils.h \
+ /usr/include/glib-2.0/glib/gatomic.h \
+ /usr/include/glib-2.0/glib/gbacktrace.h /usr/include/signal.h \
+ /usr/include/bits/sigset.h /usr/include/bits/types.h \
+ /usr/include/bits/typesizes.h /usr/include/bits/signum.h \
+ /usr/include/time.h /usr/include/bits/siginfo.h \
+ /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h \
+ /usr/include/bits/sigstack.h /usr/include/sys/ucontext.h \
+ /usr/include/bits/pthreadtypes.h /usr/include/bits/sigthread.h \
+ /usr/include/glib-2.0/glib/gbase64.h \
+ /usr/include/glib-2.0/glib/gbitlock.h \
+ /usr/include/glib-2.0/glib/gbookmarkfile.h /usr/include/bits/time.h \
+ /usr/include/xlocale.h /usr/include/glib-2.0/glib/gcache.h \
+ /usr/include/glib-2.0/glib/glist.h /usr/include/glib-2.0/glib/gmem.h \
+ /usr/include/glib-2.0/glib/gslice.h \
+ /usr/include/glib-2.0/glib/gchecksum.h \
+ /usr/include/glib-2.0/glib/gcompletion.h \
+ /usr/include/glib-2.0/glib/gconvert.h \
+ /usr/include/glib-2.0/glib/gdataset.h /usr/include/glib-2.0/glib/gdate.h \
+ /usr/include/glib-2.0/glib/gdir.h \
+ /usr/include/glib-2.0/glib/gfileutils.h \
+ /usr/include/glib-2.0/glib/ghash.h /usr/include/glib-2.0/glib/ghook.h \
+ /usr/include/glib-2.0/glib/ghostutils.h \
+ /usr/include/glib-2.0/glib/giochannel.h \
+ /usr/include/glib-2.0/glib/gmain.h /usr/include/glib-2.0/glib/gpoll.h \
+ /usr/include/glib-2.0/glib/gslist.h /usr/include/glib-2.0/glib/gstring.h \
+ /usr/include/glib-2.0/glib/gunicode.h \
+ /usr/include/glib-2.0/glib/gkeyfile.h \
+ /usr/include/glib-2.0/glib/gmappedfile.h \
+ /usr/include/glib-2.0/glib/gmarkup.h \
+ /usr/include/glib-2.0/glib/gmessages.h \
+ /usr/include/glib-2.0/glib/gnode.h /usr/include/glib-2.0/glib/goption.h \
+ /usr/include/glib-2.0/glib/gpattern.h \
+ /usr/include/glib-2.0/glib/gprimes.h /usr/include/glib-2.0/glib/gqsort.h \
+ /usr/include/glib-2.0/glib/gqueue.h /usr/include/glib-2.0/glib/grand.h \
+ /usr/include/glib-2.0/glib/grel.h /usr/include/glib-2.0/glib/gregex.h \
+ /usr/include/glib-2.0/glib/gscanner.h \
+ /usr/include/glib-2.0/glib/gsequence.h \
+ /usr/include/glib-2.0/glib/gshell.h /usr/include/glib-2.0/glib/gspawn.h \
+ /usr/include/glib-2.0/glib/gstrfuncs.h \
+ /usr/include/glib-2.0/glib/gtestutils.h \
+ /usr/include/glib-2.0/glib/gthreadpool.h \
+ /usr/include/glib-2.0/glib/gtimer.h /usr/include/glib-2.0/glib/gtree.h \
+ /usr/include/glib-2.0/glib/gurifuncs.h \
+ /usr/include/glib-2.0/glib/gvarianttype.h \
+ /usr/include/glib-2.0/glib/gvariant.h \
+ /usr/include/glib-2.0/gobject/genums.h \
+ /usr/include/glib-2.0/gobject/gobject.h \
+ /usr/include/glib-2.0/gobject/gvalue.h \
+ /usr/include/glib-2.0/gobject/gparam.h \
+ /usr/include/glib-2.0/gobject/gclosure.h \
+ /usr/include/glib-2.0/gobject/gsignal.h \
+ /usr/include/glib-2.0/gobject/gmarshal.h \
+ /usr/include/glib-2.0/gobject/gparamspecs.h \
+ /usr/include/glib-2.0/gobject/gsourceclosure.h \
+ /usr/include/glib-2.0/gobject/gtypemodule.h \
+ /usr/include/glib-2.0/gobject/gtypeplugin.h \
+ /usr/include/glib-2.0/gobject/gvaluearray.h \
+ /usr/include/glib-2.0/gobject/gvaluetypes.h \
+ ../../libanjuta/interfaces/ianjuta-editor.h \
+ /usr/include/gtk-2.0/gtk/gtk.h /usr/include/gtk-2.0/gdk/gdk.h \
+ /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h \
+ /usr/include/glib-2.0/gio/gio.h /usr/include/glib-2.0/gio/giotypes.h \
+ /usr/include/glib-2.0/gio/gioenums.h \
+ /usr/include/glib-2.0/gio/gappinfo.h \
+ /usr/include/glib-2.0/gio/gasyncresult.h \
+ /usr/include/glib-2.0/gio/gasyncinitable.h \
+ /usr/include/glib-2.0/gio/ginitable.h \
+ /usr/include/glib-2.0/gio/gbufferedinputstream.h \
+ /usr/include/glib-2.0/gio/gfilterinputstream.h \
+ /usr/include/glib-2.0/gio/ginputstream.h \
+ /usr/include/glib-2.0/gio/gbufferedoutputstream.h \
+ /usr/include/glib-2.0/gio/gfilteroutputstream.h \
+ /usr/include/glib-2.0/gio/goutputstream.h \
+ /usr/include/glib-2.0/gio/gcancellable.h \
+ /usr/include/glib-2.0/gio/gcontenttype.h \
+ /usr/include/glib-2.0/gio/gconverter.h \
+ /usr/include/glib-2.0/gio/gconverterinputstream.h \
+ /usr/include/glib-2.0/gio/gconverteroutputstream.h \
+ /usr/include/glib-2.0/gio/gcharsetconverter.h \
+ /usr/include/glib-2.0/gio/gdatainputstream.h \
+ /usr/include/glib-2.0/gio/gdataoutputstream.h \
+ /usr/include/glib-2.0/gio/gdrive.h \
+ /usr/include/glib-2.0/gio/gemblemedicon.h \
+ /usr/include/glib-2.0/gio/gicon.h /usr/include/glib-2.0/gio/gemblem.h \
+ /usr/include/glib-2.0/gio/gfile.h \
+ /usr/include/glib-2.0/gio/gfileattribute.h \
+ /usr/include/glib-2.0/gio/gfileenumerator.h \
+ /usr/include/glib-2.0/gio/gfileicon.h \
+ /usr/include/glib-2.0/gio/gfileinfo.h \
+ /usr/include/glib-2.0/gio/gfileinputstream.h \
+ /usr/include/glib-2.0/gio/gfilemonitor.h \
+ /usr/include/glib-2.0/gio/gfilenamecompleter.h \
+ /usr/include/glib-2.0/gio/gfileoutputstream.h \
+ /usr/include/glib-2.0/gio/ginetaddress.h \
+ /usr/include/glib-2.0/gio/ginetsocketaddress.h \
+ /usr/include/glib-2.0/gio/gsocketaddress.h \
+ /usr/include/glib-2.0/gio/gioenumtypes.h \
+ /usr/include/glib-2.0/gio/gioerror.h \
+ /usr/include/glib-2.0/gio/giomodule.h /usr/include/glib-2.0/gmodule.h \
+ /usr/include/glib-2.0/gio/gioscheduler.h \
+ /usr/include/glib-2.0/gio/giostream.h \
+ /usr/include/glib-2.0/gio/gfileiostream.h \
+ /usr/include/glib-2.0/gio/gloadableicon.h \
+ /usr/include/glib-2.0/gio/gmemoryinputstream.h \
+ /usr/include/glib-2.0/gio/gmemoryoutputstream.h \
+ /usr/include/glib-2.0/gio/gmount.h \
+ /usr/include/glib-2.0/gio/gmountoperation.h \
+ /usr/include/glib-2.0/gio/gnativevolumemonitor.h \
+ /usr/include/glib-2.0/gio/gvolumemonitor.h \
+ /usr/include/glib-2.0/gio/gnetworkaddress.h \
+ /usr/include/glib-2.0/gio/gnetworkservice.h \
+ /usr/include/glib-2.0/gio/gresolver.h \
+ /usr/include/glib-2.0/gio/gseekable.h \
+ /usr/include/glib-2.0/gio/gsimpleasyncresult.h \
+ /usr/include/glib-2.0/gio/gsocket.h \
+ /usr/include/glib-2.0/gio/gsocketaddressenumerator.h \
+ /usr/include/glib-2.0/gio/gsocketclient.h \
+ /usr/include/glib-2.0/gio/gsocketconnectable.h \
+ /usr/include/glib-2.0/gio/gsocketconnection.h \
+ /usr/include/glib-2.0/gio/gsocketcontrolmessage.h \
+ /usr/include/glib-2.0/gio/gsocketlistener.h \
+ /usr/include/glib-2.0/gio/gsocketservice.h \
+ /usr/include/glib-2.0/gio/gtcpconnection.h \
+ /usr/include/glib-2.0/gio/gthreadedsocketservice.h \
+ /usr/include/glib-2.0/gio/gsrvtarget.h \
+ /usr/include/glib-2.0/gio/gthemedicon.h /usr/include/glib-2.0/gio/gvfs.h \
+ /usr/include/glib-2.0/gio/gvolume.h \
+ /usr/include/glib-2.0/gio/gzlibcompressor.h \
+ /usr/include/glib-2.0/gio/gzlibdecompressor.h \
+ /usr/include/gtk-2.0/gdk/gdkscreen.h /usr/include/cairo/cairo.h \
+ /usr/include/cairo/cairo-version.h /usr/include/cairo/cairo-features.h \
+ /usr/include/cairo/cairo-deprecated.h \
+ /usr/include/gtk-2.0/gdk/gdktypes.h /usr/include/pango-1.0/pango/pango.h \
+ /usr/include/pango-1.0/pango/pango-attributes.h \
+ /usr/include/pango-1.0/pango/pango-font.h \
+ /usr/include/pango-1.0/pango/pango-coverage.h \
+ /usr/include/pango-1.0/pango/pango-types.h \
+ /usr/include/pango-1.0/pango/pango-gravity.h \
+ /usr/include/pango-1.0/pango/pango-matrix.h \
+ /usr/include/pango-1.0/pango/pango-script.h \
+ /usr/include/pango-1.0/pango/pango-language.h \
+ /usr/include/pango-1.0/pango/pango-bidi-type.h \
+ /usr/include/pango-1.0/pango/pango-break.h \
+ /usr/include/pango-1.0/pango/pango-item.h \
+ /usr/include/pango-1.0/pango/pango-context.h \
+ /usr/include/pango-1.0/pango/pango-fontmap.h \
+ /usr/include/pango-1.0/pango/pango-fontset.h \
+ /usr/include/pango-1.0/pango/pango-engine.h \
+ /usr/include/pango-1.0/pango/pango-glyph.h \
+ /usr/include/pango-1.0/pango/pango-enum-types.h \
+ /usr/include/pango-1.0/pango/pango-features.h \
+ /usr/include/pango-1.0/pango/pango-glyph-item.h \
+ /usr/include/pango-1.0/pango/pango-layout.h \
+ /usr/include/pango-1.0/pango/pango-tabs.h \
+ /usr/include/pango-1.0/pango/pango-renderer.h \
+ /usr/include/pango-1.0/pango/pango-utils.h /usr/include/stdio.h \
+ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/include/bits/stdio.h /usr/lib64/gtk-2.0/include/gdkconfig.h \
+ /usr/include/gtk-2.0/gdk/gdkdisplay.h \
+ /usr/include/gtk-2.0/gdk/gdkevents.h /usr/include/gtk-2.0/gdk/gdkcolor.h \
+ /usr/include/gtk-2.0/gdk/gdkdnd.h /usr/include/gtk-2.0/gdk/gdkinput.h \
+ /usr/include/gtk-2.0/gdk/gdkcairo.h /usr/include/gtk-2.0/gdk/gdkpixbuf.h \
+ /usr/include/gtk-2.0/gdk/gdkrgb.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-features.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-core.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-transform.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-animation.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-io.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-loader.h \
+ /usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h \
+ /usr/include/pango-1.0/pango/pangocairo.h \
+ /usr/include/gtk-2.0/gdk/gdkcursor.h \
+ /usr/include/gtk-2.0/gdk/gdkdisplaymanager.h \
+ /usr/include/gtk-2.0/gdk/gdkdrawable.h /usr/include/gtk-2.0/gdk/gdkgc.h \
+ /usr/include/gtk-2.0/gdk/gdkenumtypes.h \
+ /usr/include/gtk-2.0/gdk/gdkfont.h /usr/include/gtk-2.0/gdk/gdkimage.h \
+ /usr/include/gtk-2.0/gdk/gdkkeys.h /usr/include/gtk-2.0/gdk/gdkpango.h \
+ /usr/include/gtk-2.0/gdk/gdkpixmap.h \
+ /usr/include/gtk-2.0/gdk/gdkproperty.h \
+ /usr/include/gtk-2.0/gdk/gdkregion.h \
+ /usr/include/gtk-2.0/gdk/gdkselection.h \
+ /usr/include/gtk-2.0/gdk/gdkspawn.h \
+ /usr/include/gtk-2.0/gdk/gdktestutils.h \
+ /usr/include/gtk-2.0/gdk/gdkwindow.h \
+ /usr/include/gtk-2.0/gdk/gdkvisual.h \
+ /usr/include/gtk-2.0/gtk/gtkaboutdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkaccelgroup.h \
+ /usr/include/gtk-2.0/gtk/gtkenums.h /usr/include/gtk-2.0/gtk/gtkbin.h \
+ /usr/include/gtk-2.0/gtk/gtkcontainer.h \
+ /usr/include/gtk-2.0/gtk/gtkwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkobject.h \
+ /usr/include/gtk-2.0/gtk/gtktypeutils.h \
+ /usr/include/gtk-2.0/gtk/gtktypebuiltins.h \
+ /usr/include/gtk-2.0/gtk/gtkdebug.h \
+ /usr/include/gtk-2.0/gtk/gtkadjustment.h \
+ /usr/include/gtk-2.0/gtk/gtkstyle.h \
+ /usr/include/gtk-2.0/gtk/gtksettings.h /usr/include/gtk-2.0/gtk/gtkrc.h \
+ /usr/include/atk-1.0/atk/atk.h /usr/include/atk-1.0/atk/atkobject.h \
+ /usr/include/atk-1.0/atk/atkstate.h \
+ /usr/include/atk-1.0/atk/atkrelationtype.h \
+ /usr/include/atk-1.0/atk/atkaction.h \
+ /usr/include/atk-1.0/atk/atkcomponent.h \
+ /usr/include/atk-1.0/atk/atkutil.h \
+ /usr/include/atk-1.0/atk/atkdocument.h \
+ /usr/include/atk-1.0/atk/atkeditabletext.h \
+ /usr/include/atk-1.0/atk/atktext.h \
+ /usr/include/atk-1.0/atk/atkgobjectaccessible.h \
+ /usr/include/atk-1.0/atk/atkhyperlink.h \
+ /usr/include/atk-1.0/atk/atkhyperlinkimpl.h \
+ /usr/include/atk-1.0/atk/atkhypertext.h \
+ /usr/include/atk-1.0/atk/atkimage.h \
+ /usr/include/atk-1.0/atk/atknoopobject.h \
+ /usr/include/atk-1.0/atk/atknoopobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkplug.h \
+ /usr/include/atk-1.0/atk/atkregistry.h \
+ /usr/include/atk-1.0/atk/atkobjectfactory.h \
+ /usr/include/atk-1.0/atk/atkrelation.h \
+ /usr/include/atk-1.0/atk/atkrelationset.h \
+ /usr/include/atk-1.0/atk/atkselection.h \
+ /usr/include/atk-1.0/atk/atksocket.h \
+ /usr/include/atk-1.0/atk/atkstateset.h \
+ /usr/include/atk-1.0/atk/atkstreamablecontent.h \
+ /usr/include/atk-1.0/atk/atktable.h /usr/include/atk-1.0/atk/atkmisc.h \
+ /usr/include/atk-1.0/atk/atkvalue.h \
+ /usr/include/gtk-2.0/gtk/gtkaccellabel.h \
+ /usr/include/gtk-2.0/gtk/gtklabel.h /usr/include/gtk-2.0/gtk/gtkmisc.h \
+ /usr/include/gtk-2.0/gtk/gtkmenu.h \
+ /usr/include/gtk-2.0/gtk/gtkmenushell.h \
+ /usr/include/gtk-2.0/gtk/gtkaccelmap.h \
+ /usr/include/gtk-2.0/gtk/gtkaccessible.h \
+ /usr/include/gtk-2.0/gtk/gtkaction.h \
+ /usr/include/gtk-2.0/gtk/gtkactiongroup.h \
+ /usr/include/gtk-2.0/gtk/gtkactivatable.h \
+ /usr/include/gtk-2.0/gtk/gtkalignment.h \
+ /usr/include/gtk-2.0/gtk/gtkarrow.h \
+ /usr/include/gtk-2.0/gtk/gtkaspectframe.h \
+ /usr/include/gtk-2.0/gtk/gtkframe.h \
+ /usr/include/gtk-2.0/gtk/gtkassistant.h \
+ /usr/include/gtk-2.0/gtk/gtkbbox.h /usr/include/gtk-2.0/gtk/gtkbox.h \
+ /usr/include/gtk-2.0/gtk/gtkbindings.h \
+ /usr/include/gtk-2.0/gtk/gtkbuildable.h \
+ /usr/include/gtk-2.0/gtk/gtkbuilder.h \
+ /usr/include/gtk-2.0/gtk/gtkbutton.h /usr/include/gtk-2.0/gtk/gtkimage.h \
+ /usr/include/gtk-2.0/gtk/gtkcalendar.h \
+ /usr/include/gtk-2.0/gtk/gtksignal.h \
+ /usr/include/gtk-2.0/gtk/gtkmarshal.h \
+ /usr/include/gtk-2.0/gtk/gtkcelleditable.h \
+ /usr/include/gtk-2.0/gtk/gtkcelllayout.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderer.h \
+ /usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodel.h \
+ /usr/include/gtk-2.0/gtk/gtktreesortable.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderertext.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererspin.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h \
+ /usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h \
+ /usr/include/gtk-2.0/gtk/gtkcellview.h \
+ /usr/include/gtk-2.0/gtk/gtkcheckbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktogglebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkitem.h \
+ /usr/include/gtk-2.0/gtk/gtkclipboard.h \
+ /usr/include/gtk-2.0/gtk/gtkselection.h \
+ /usr/include/gtk-2.0/gtk/gtktextiter.h \
+ /usr/include/gtk-2.0/gtk/gtktexttag.h \
+ /usr/include/gtk-2.0/gtk/gtktextchild.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorsel.h \
+ /usr/include/gtk-2.0/gtk/gtkvbox.h \
+ /usr/include/gtk-2.0/gtk/gtkcolorseldialog.h \
+ /usr/include/gtk-2.0/gtk/gtkcombobox.h \
+ /usr/include/gtk-2.0/gtk/gtktreeview.h /usr/include/gtk-2.0/gtk/gtkdnd.h \
+ /usr/include/gtk-2.0/gtk/gtkentry.h \
+ /usr/include/gtk-2.0/gtk/gtkeditable.h \
+ /usr/include/gtk-2.0/gtk/gtkimcontext.h \
+ /usr/include/gtk-2.0/gtk/gtkentrybuffer.h \
+ /usr/include/gtk-2.0/gtk/gtkentrycompletion.h \
+ /usr/include/gtk-2.0/gtk/gtkliststore.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodelfilter.h \
+ /usr/include/gtk-2.0/gtk/gtkcomboboxentry.h \
+ /usr/include/gtk-2.0/gtk/gtkdrawingarea.h \
+ /usr/include/gtk-2.0/gtk/gtkeventbox.h \
+ /usr/include/gtk-2.0/gtk/gtkexpander.h \
+ /usr/include/gtk-2.0/gtk/gtkfixed.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooser.h \
+ /usr/include/gtk-2.0/gtk/gtkfilefilter.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkhbox.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkfontbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkfontsel.h /usr/include/gtk-2.0/gtk/gtkgc.h \
+ /usr/include/gtk-2.0/gtk/gtkhandlebox.h \
+ /usr/include/gtk-2.0/gtk/gtkhbbox.h /usr/include/gtk-2.0/gtk/gtkhpaned.h \
+ /usr/include/gtk-2.0/gtk/gtkpaned.h /usr/include/gtk-2.0/gtk/gtkhruler.h \
+ /usr/include/gtk-2.0/gtk/gtkruler.h /usr/include/gtk-2.0/gtk/gtkhscale.h \
+ /usr/include/gtk-2.0/gtk/gtkscale.h /usr/include/gtk-2.0/gtk/gtkrange.h \
+ /usr/include/gtk-2.0/gtk/gtkhscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkhseparator.h \
+ /usr/include/gtk-2.0/gtk/gtkseparator.h \
+ /usr/include/gtk-2.0/gtk/gtkhsv.h \
+ /usr/include/gtk-2.0/gtk/gtkiconfactory.h \
+ /usr/include/gtk-2.0/gtk/gtkicontheme.h \
+ /usr/include/gtk-2.0/gtk/gtkiconview.h \
+ /usr/include/gtk-2.0/gtk/gtktooltip.h \
+ /usr/include/gtk-2.0/gtk/gtkimagemenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkimcontextsimple.h \
+ /usr/include/gtk-2.0/gtk/gtkimmulticontext.h \
+ /usr/include/gtk-2.0/gtk/gtkinfobar.h \
+ /usr/include/gtk-2.0/gtk/gtkinvisible.h \
+ /usr/include/gtk-2.0/gtk/gtklayout.h \
+ /usr/include/gtk-2.0/gtk/gtklinkbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkmain.h /usr/include/gtk-2.0/gtk/gtkmenubar.h \
+ /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoolitem.h \
+ /usr/include/gtk-2.0/gtk/gtktooltips.h \
+ /usr/include/gtk-2.0/gtk/gtksizegroup.h \
+ /usr/include/gtk-2.0/gtk/gtkmessagedialog.h \
+ /usr/include/gtk-2.0/gtk/gtkmodules.h \
+ /usr/include/gtk-2.0/gtk/gtkmountoperation.h \
+ /usr/include/gtk-2.0/gtk/gtknotebook.h \
+ /usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkorientable.h \
+ /usr/include/gtk-2.0/gtk/gtkpagesetup.h \
+ /usr/include/gtk-2.0/gtk/gtkpapersize.h \
+ /usr/include/gtk-2.0/gtk/gtkplug.h /usr/include/gtk-2.0/gtk/gtksocket.h \
+ /usr/include/gtk-2.0/gtk/gtkprintcontext.h \
+ /usr/include/gtk-2.0/gtk/gtkprintoperation.h \
+ /usr/include/gtk-2.0/gtk/gtkprintsettings.h \
+ /usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h \
+ /usr/include/gtk-2.0/gtk/gtkprogressbar.h \
+ /usr/include/gtk-2.0/gtk/gtkprogress.h \
+ /usr/include/gtk-2.0/gtk/gtkradioaction.h \
+ /usr/include/gtk-2.0/gtk/gtktoggleaction.h \
+ /usr/include/gtk-2.0/gtk/gtkradiobutton.h \
+ /usr/include/gtk-2.0/gtk/gtkradiomenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentaction.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentmanager.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooser.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentfilter.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h \
+ /usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h \
+ /usr/include/gtk-2.0/gtk/gtkscalebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkscrolledwindow.h \
+ /usr/include/gtk-2.0/gtk/gtkvscrollbar.h \
+ /usr/include/gtk-2.0/gtk/gtkviewport.h \
+ /usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h \
+ /usr/include/gtk-2.0/gtk/gtkshow.h \
+ /usr/include/gtk-2.0/gtk/gtkspinbutton.h \
+ /usr/include/gtk-2.0/gtk/gtkspinner.h \
+ /usr/include/gtk-2.0/gtk/gtkstatusbar.h \
+ /usr/include/gtk-2.0/gtk/gtkstatusicon.h \
+ /usr/include/gtk-2.0/gtk/gtkstock.h /usr/include/gtk-2.0/gtk/gtktable.h \
+ /usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h \
+ /usr/include/gtk-2.0/gtk/gtktextbuffer.h \
+ /usr/include/gtk-2.0/gtk/gtktexttagtable.h \
+ /usr/include/gtk-2.0/gtk/gtktextmark.h \
+ /usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h \
+ /usr/include/gtk-2.0/gtk/gtktextview.h \
+ /usr/include/gtk-2.0/gtk/gtktoolbar.h \
+ /usr/include/gtk-2.0/gtk/gtkpixmap.h \
+ /usr/include/gtk-2.0/gtk/gtktoolitemgroup.h \
+ /usr/include/gtk-2.0/gtk/gtktoolpalette.h \
+ /usr/include/gtk-2.0/gtk/gtktoolshell.h \
+ /usr/include/gtk-2.0/gtk/gtktestutils.h \
+ /usr/include/gtk-2.0/gtk/gtktreednd.h \
+ /usr/include/gtk-2.0/gtk/gtktreemodelsort.h \
+ /usr/include/gtk-2.0/gtk/gtktreeselection.h \
+ /usr/include/gtk-2.0/gtk/gtktreestore.h \
+ /usr/include/gtk-2.0/gtk/gtkuimanager.h \
+ /usr/include/gtk-2.0/gtk/gtkvbbox.h \
+ /usr/include/gtk-2.0/gtk/gtkversion.h \
+ /usr/include/gtk-2.0/gtk/gtkvolumebutton.h \
+ /usr/include/gtk-2.0/gtk/gtkvpaned.h \
+ /usr/include/gtk-2.0/gtk/gtkvruler.h \
+ /usr/include/gtk-2.0/gtk/gtkvscale.h \
+ /usr/include/gtk-2.0/gtk/gtkvseparator.h \
+ /usr/include/gtk-2.0/gtk/gtktext.h /usr/include/gtk-2.0/gtk/gtktree.h \
+ /usr/include/gtk-2.0/gtk/gtktreeitem.h \
+ /usr/include/gtk-2.0/gtk/gtkclist.h /usr/include/gtk-2.0/gtk/gtkcombo.h \
+ /usr/include/gtk-2.0/gtk/gtkctree.h /usr/include/gtk-2.0/gtk/gtkcurve.h \
+ /usr/include/gtk-2.0/gtk/gtkfilesel.h \
+ /usr/include/gtk-2.0/gtk/gtkgamma.h \
+ /usr/include/gtk-2.0/gtk/gtkinputdialog.h \
+ /usr/include/gtk-2.0/gtk/gtkitemfactory.h \
+ /usr/include/gtk-2.0/gtk/gtklist.h \
+ /usr/include/gtk-2.0/gtk/gtklistitem.h \
+ /usr/include/gtk-2.0/gtk/gtkoldeditable.h \
+ /usr/include/gtk-2.0/gtk/gtkoptionmenu.h \
+ /usr/include/gtk-2.0/gtk/gtkpreview.h \
+ /usr/include/gtk-2.0/gtk/gtktipsquery.h \
+ ../../libanjuta/interfaces/ianjuta-iterable.h python-utils.h
+
+../../libanjuta/interfaces/ianjuta-editor-cell.h:
+
+/usr/include/glib-2.0/glib-object.h:
+
+/usr/include/glib-2.0/gobject/gboxed.h:
+
+/usr/include/glib-2.0/gobject/gtype.h:
+
+/usr/include/glib-2.0/glib.h:
+
+/usr/include/glib-2.0/glib/galloca.h:
+
+/usr/include/glib-2.0/glib/gtypes.h:
+
+/usr/lib64/glib-2.0/include/glibconfig.h:
+
+/usr/include/glib-2.0/glib/gmacros.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stddef.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/limits.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/syslimits.h:
+
+/usr/include/limits.h:
+
+/usr/include/features.h:
+
+/usr/include/sys/cdefs.h:
+
+/usr/include/bits/wordsize.h:
+
+/usr/include/gnu/stubs.h:
+
+/usr/include/gnu/stubs-64.h:
+
+/usr/include/bits/posix1_lim.h:
+
+/usr/include/bits/local_lim.h:
+
+/usr/include/linux/limits.h:
+
+/usr/include/bits/posix2_lim.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/float.h:
+
+/usr/include/glib-2.0/glib/garray.h:
+
+/usr/include/glib-2.0/glib/gasyncqueue.h:
+
+/usr/include/glib-2.0/glib/gthread.h:
+
+/usr/include/glib-2.0/glib/gerror.h:
+
+/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include/stdarg.h:
+
+/usr/include/glib-2.0/glib/gquark.h:
+
+/usr/include/glib-2.0/glib/gutils.h:
+
+/usr/include/glib-2.0/glib/gatomic.h:
+
+/usr/include/glib-2.0/glib/gbacktrace.h:
+
+/usr/include/signal.h:
+
+/usr/include/bits/sigset.h:
+
+/usr/include/bits/types.h:
+
+/usr/include/bits/typesizes.h:
+
+/usr/include/bits/signum.h:
+
+/usr/include/time.h:
+
+/usr/include/bits/siginfo.h:
+
+/usr/include/bits/sigaction.h:
+
+/usr/include/bits/sigcontext.h:
+
+/usr/include/bits/sigstack.h:
+
+/usr/include/sys/ucontext.h:
+
+/usr/include/bits/pthreadtypes.h:
+
+/usr/include/bits/sigthread.h:
+
+/usr/include/glib-2.0/glib/gbase64.h:
+
+/usr/include/glib-2.0/glib/gbitlock.h:
+
+/usr/include/glib-2.0/glib/gbookmarkfile.h:
+
+/usr/include/bits/time.h:
+
+/usr/include/xlocale.h:
+
+/usr/include/glib-2.0/glib/gcache.h:
+
+/usr/include/glib-2.0/glib/glist.h:
+
+/usr/include/glib-2.0/glib/gmem.h:
+
+/usr/include/glib-2.0/glib/gslice.h:
+
+/usr/include/glib-2.0/glib/gchecksum.h:
+
+/usr/include/glib-2.0/glib/gcompletion.h:
+
+/usr/include/glib-2.0/glib/gconvert.h:
+
+/usr/include/glib-2.0/glib/gdataset.h:
+
+/usr/include/glib-2.0/glib/gdate.h:
+
+/usr/include/glib-2.0/glib/gdir.h:
+
+/usr/include/glib-2.0/glib/gfileutils.h:
+
+/usr/include/glib-2.0/glib/ghash.h:
+
+/usr/include/glib-2.0/glib/ghook.h:
+
+/usr/include/glib-2.0/glib/ghostutils.h:
+
+/usr/include/glib-2.0/glib/giochannel.h:
+
+/usr/include/glib-2.0/glib/gmain.h:
+
+/usr/include/glib-2.0/glib/gpoll.h:
+
+/usr/include/glib-2.0/glib/gslist.h:
+
+/usr/include/glib-2.0/glib/gstring.h:
+
+/usr/include/glib-2.0/glib/gunicode.h:
+
+/usr/include/glib-2.0/glib/gkeyfile.h:
+
+/usr/include/glib-2.0/glib/gmappedfile.h:
+
+/usr/include/glib-2.0/glib/gmarkup.h:
+
+/usr/include/glib-2.0/glib/gmessages.h:
+
+/usr/include/glib-2.0/glib/gnode.h:
+
+/usr/include/glib-2.0/glib/goption.h:
+
+/usr/include/glib-2.0/glib/gpattern.h:
+
+/usr/include/glib-2.0/glib/gprimes.h:
+
+/usr/include/glib-2.0/glib/gqsort.h:
+
+/usr/include/glib-2.0/glib/gqueue.h:
+
+/usr/include/glib-2.0/glib/grand.h:
+
+/usr/include/glib-2.0/glib/grel.h:
+
+/usr/include/glib-2.0/glib/gregex.h:
+
+/usr/include/glib-2.0/glib/gscanner.h:
+
+/usr/include/glib-2.0/glib/gsequence.h:
+
+/usr/include/glib-2.0/glib/gshell.h:
+
+/usr/include/glib-2.0/glib/gspawn.h:
+
+/usr/include/glib-2.0/glib/gstrfuncs.h:
+
+/usr/include/glib-2.0/glib/gtestutils.h:
+
+/usr/include/glib-2.0/glib/gthreadpool.h:
+
+/usr/include/glib-2.0/glib/gtimer.h:
+
+/usr/include/glib-2.0/glib/gtree.h:
+
+/usr/include/glib-2.0/glib/gurifuncs.h:
+
+/usr/include/glib-2.0/glib/gvarianttype.h:
+
+/usr/include/glib-2.0/glib/gvariant.h:
+
+/usr/include/glib-2.0/gobject/genums.h:
+
+/usr/include/glib-2.0/gobject/gobject.h:
+
+/usr/include/glib-2.0/gobject/gvalue.h:
+
+/usr/include/glib-2.0/gobject/gparam.h:
+
+/usr/include/glib-2.0/gobject/gclosure.h:
+
+/usr/include/glib-2.0/gobject/gsignal.h:
+
+/usr/include/glib-2.0/gobject/gmarshal.h:
+
+/usr/include/glib-2.0/gobject/gparamspecs.h:
+
+/usr/include/glib-2.0/gobject/gsourceclosure.h:
+
+/usr/include/glib-2.0/gobject/gtypemodule.h:
+
+/usr/include/glib-2.0/gobject/gtypeplugin.h:
+
+/usr/include/glib-2.0/gobject/gvaluearray.h:
+
+/usr/include/glib-2.0/gobject/gvaluetypes.h:
+
+../../libanjuta/interfaces/ianjuta-editor.h:
+
+/usr/include/gtk-2.0/gtk/gtk.h:
+
+/usr/include/gtk-2.0/gdk/gdk.h:
+
+/usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:
+
+/usr/include/glib-2.0/gio/gio.h:
+
+/usr/include/glib-2.0/gio/giotypes.h:
+
+/usr/include/glib-2.0/gio/gioenums.h:
+
+/usr/include/glib-2.0/gio/gappinfo.h:
+
+/usr/include/glib-2.0/gio/gasyncresult.h:
+
+/usr/include/glib-2.0/gio/gasyncinitable.h:
+
+/usr/include/glib-2.0/gio/ginitable.h:
+
+/usr/include/glib-2.0/gio/gbufferedinputstream.h:
+
+/usr/include/glib-2.0/gio/gfilterinputstream.h:
+
+/usr/include/glib-2.0/gio/ginputstream.h:
+
+/usr/include/glib-2.0/gio/gbufferedoutputstream.h:
+
+/usr/include/glib-2.0/gio/gfilteroutputstream.h:
+
+/usr/include/glib-2.0/gio/goutputstream.h:
+
+/usr/include/glib-2.0/gio/gcancellable.h:
+
+/usr/include/glib-2.0/gio/gcontenttype.h:
+
+/usr/include/glib-2.0/gio/gconverter.h:
+
+/usr/include/glib-2.0/gio/gconverterinputstream.h:
+
+/usr/include/glib-2.0/gio/gconverteroutputstream.h:
+
+/usr/include/glib-2.0/gio/gcharsetconverter.h:
+
+/usr/include/glib-2.0/gio/gdatainputstream.h:
+
+/usr/include/glib-2.0/gio/gdataoutputstream.h:
+
+/usr/include/glib-2.0/gio/gdrive.h:
+
+/usr/include/glib-2.0/gio/gemblemedicon.h:
+
+/usr/include/glib-2.0/gio/gicon.h:
+
+/usr/include/glib-2.0/gio/gemblem.h:
+
+/usr/include/glib-2.0/gio/gfile.h:
+
+/usr/include/glib-2.0/gio/gfileattribute.h:
+
+/usr/include/glib-2.0/gio/gfileenumerator.h:
+
+/usr/include/glib-2.0/gio/gfileicon.h:
+
+/usr/include/glib-2.0/gio/gfileinfo.h:
+
+/usr/include/glib-2.0/gio/gfileinputstream.h:
+
+/usr/include/glib-2.0/gio/gfilemonitor.h:
+
+/usr/include/glib-2.0/gio/gfilenamecompleter.h:
+
+/usr/include/glib-2.0/gio/gfileoutputstream.h:
+
+/usr/include/glib-2.0/gio/ginetaddress.h:
+
+/usr/include/glib-2.0/gio/ginetsocketaddress.h:
+
+/usr/include/glib-2.0/gio/gsocketaddress.h:
+
+/usr/include/glib-2.0/gio/gioenumtypes.h:
+
+/usr/include/glib-2.0/gio/gioerror.h:
+
+/usr/include/glib-2.0/gio/giomodule.h:
+
+/usr/include/glib-2.0/gmodule.h:
+
+/usr/include/glib-2.0/gio/gioscheduler.h:
+
+/usr/include/glib-2.0/gio/giostream.h:
+
+/usr/include/glib-2.0/gio/gfileiostream.h:
+
+/usr/include/glib-2.0/gio/gloadableicon.h:
+
+/usr/include/glib-2.0/gio/gmemoryinputstream.h:
+
+/usr/include/glib-2.0/gio/gmemoryoutputstream.h:
+
+/usr/include/glib-2.0/gio/gmount.h:
+
+/usr/include/glib-2.0/gio/gmountoperation.h:
+
+/usr/include/glib-2.0/gio/gnativevolumemonitor.h:
+
+/usr/include/glib-2.0/gio/gvolumemonitor.h:
+
+/usr/include/glib-2.0/gio/gnetworkaddress.h:
+
+/usr/include/glib-2.0/gio/gnetworkservice.h:
+
+/usr/include/glib-2.0/gio/gresolver.h:
+
+/usr/include/glib-2.0/gio/gseekable.h:
+
+/usr/include/glib-2.0/gio/gsimpleasyncresult.h:
+
+/usr/include/glib-2.0/gio/gsocket.h:
+
+/usr/include/glib-2.0/gio/gsocketaddressenumerator.h:
+
+/usr/include/glib-2.0/gio/gsocketclient.h:
+
+/usr/include/glib-2.0/gio/gsocketconnectable.h:
+
+/usr/include/glib-2.0/gio/gsocketconnection.h:
+
+/usr/include/glib-2.0/gio/gsocketcontrolmessage.h:
+
+/usr/include/glib-2.0/gio/gsocketlistener.h:
+
+/usr/include/glib-2.0/gio/gsocketservice.h:
+
+/usr/include/glib-2.0/gio/gtcpconnection.h:
+
+/usr/include/glib-2.0/gio/gthreadedsocketservice.h:
+
+/usr/include/glib-2.0/gio/gsrvtarget.h:
+
+/usr/include/glib-2.0/gio/gthemedicon.h:
+
+/usr/include/glib-2.0/gio/gvfs.h:
+
+/usr/include/glib-2.0/gio/gvolume.h:
+
+/usr/include/glib-2.0/gio/gzlibcompressor.h:
+
+/usr/include/glib-2.0/gio/gzlibdecompressor.h:
+
+/usr/include/gtk-2.0/gdk/gdkscreen.h:
+
+/usr/include/cairo/cairo.h:
+
+/usr/include/cairo/cairo-version.h:
+
+/usr/include/cairo/cairo-features.h:
+
+/usr/include/cairo/cairo-deprecated.h:
+
+/usr/include/gtk-2.0/gdk/gdktypes.h:
+
+/usr/include/pango-1.0/pango/pango.h:
+
+/usr/include/pango-1.0/pango/pango-attributes.h:
+
+/usr/include/pango-1.0/pango/pango-font.h:
+
+/usr/include/pango-1.0/pango/pango-coverage.h:
+
+/usr/include/pango-1.0/pango/pango-types.h:
+
+/usr/include/pango-1.0/pango/pango-gravity.h:
+
+/usr/include/pango-1.0/pango/pango-matrix.h:
+
+/usr/include/pango-1.0/pango/pango-script.h:
+
+/usr/include/pango-1.0/pango/pango-language.h:
+
+/usr/include/pango-1.0/pango/pango-bidi-type.h:
+
+/usr/include/pango-1.0/pango/pango-break.h:
+
+/usr/include/pango-1.0/pango/pango-item.h:
+
+/usr/include/pango-1.0/pango/pango-context.h:
+
+/usr/include/pango-1.0/pango/pango-fontmap.h:
+
+/usr/include/pango-1.0/pango/pango-fontset.h:
+
+/usr/include/pango-1.0/pango/pango-engine.h:
+
+/usr/include/pango-1.0/pango/pango-glyph.h:
+
+/usr/include/pango-1.0/pango/pango-enum-types.h:
+
+/usr/include/pango-1.0/pango/pango-features.h:
+
+/usr/include/pango-1.0/pango/pango-glyph-item.h:
+
+/usr/include/pango-1.0/pango/pango-layout.h:
+
+/usr/include/pango-1.0/pango/pango-tabs.h:
+
+/usr/include/pango-1.0/pango/pango-renderer.h:
+
+/usr/include/pango-1.0/pango/pango-utils.h:
+
+/usr/include/stdio.h:
+
+/usr/include/libio.h:
+
+/usr/include/_G_config.h:
+
+/usr/include/wchar.h:
+
+/usr/include/bits/stdio_lim.h:
+
+/usr/include/bits/sys_errlist.h:
+
+/usr/include/bits/stdio.h:
+
+/usr/lib64/gtk-2.0/include/gdkconfig.h:
+
+/usr/include/gtk-2.0/gdk/gdkdisplay.h:
+
+/usr/include/gtk-2.0/gdk/gdkevents.h:
+
+/usr/include/gtk-2.0/gdk/gdkcolor.h:
+
+/usr/include/gtk-2.0/gdk/gdkdnd.h:
+
+/usr/include/gtk-2.0/gdk/gdkinput.h:
+
+/usr/include/gtk-2.0/gdk/gdkcairo.h:
+
+/usr/include/gtk-2.0/gdk/gdkpixbuf.h:
+
+/usr/include/gtk-2.0/gdk/gdkrgb.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-features.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-core.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-transform.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-animation.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-io.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-loader.h:
+
+/usr/include/gtk-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h:
+
+/usr/include/pango-1.0/pango/pangocairo.h:
+
+/usr/include/gtk-2.0/gdk/gdkcursor.h:
+
+/usr/include/gtk-2.0/gdk/gdkdisplaymanager.h:
+
+/usr/include/gtk-2.0/gdk/gdkdrawable.h:
+
+/usr/include/gtk-2.0/gdk/gdkgc.h:
+
+/usr/include/gtk-2.0/gdk/gdkenumtypes.h:
+
+/usr/include/gtk-2.0/gdk/gdkfont.h:
+
+/usr/include/gtk-2.0/gdk/gdkimage.h:
+
+/usr/include/gtk-2.0/gdk/gdkkeys.h:
+
+/usr/include/gtk-2.0/gdk/gdkpango.h:
+
+/usr/include/gtk-2.0/gdk/gdkpixmap.h:
+
+/usr/include/gtk-2.0/gdk/gdkproperty.h:
+
+/usr/include/gtk-2.0/gdk/gdkregion.h:
+
+/usr/include/gtk-2.0/gdk/gdkselection.h:
+
+/usr/include/gtk-2.0/gdk/gdkspawn.h:
+
+/usr/include/gtk-2.0/gdk/gdktestutils.h:
+
+/usr/include/gtk-2.0/gdk/gdkwindow.h:
+
+/usr/include/gtk-2.0/gdk/gdkvisual.h:
+
+/usr/include/gtk-2.0/gtk/gtkaboutdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccelgroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkenums.h:
+
+/usr/include/gtk-2.0/gtk/gtkbin.h:
+
+/usr/include/gtk-2.0/gtk/gtkcontainer.h:
+
+/usr/include/gtk-2.0/gtk/gtkwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkobject.h:
+
+/usr/include/gtk-2.0/gtk/gtktypeutils.h:
+
+/usr/include/gtk-2.0/gtk/gtktypebuiltins.h:
+
+/usr/include/gtk-2.0/gtk/gtkdebug.h:
+
+/usr/include/gtk-2.0/gtk/gtkadjustment.h:
+
+/usr/include/gtk-2.0/gtk/gtkstyle.h:
+
+/usr/include/gtk-2.0/gtk/gtksettings.h:
+
+/usr/include/gtk-2.0/gtk/gtkrc.h:
+
+/usr/include/atk-1.0/atk/atk.h:
+
+/usr/include/atk-1.0/atk/atkobject.h:
+
+/usr/include/atk-1.0/atk/atkstate.h:
+
+/usr/include/atk-1.0/atk/atkrelationtype.h:
+
+/usr/include/atk-1.0/atk/atkaction.h:
+
+/usr/include/atk-1.0/atk/atkcomponent.h:
+
+/usr/include/atk-1.0/atk/atkutil.h:
+
+/usr/include/atk-1.0/atk/atkdocument.h:
+
+/usr/include/atk-1.0/atk/atkeditabletext.h:
+
+/usr/include/atk-1.0/atk/atktext.h:
+
+/usr/include/atk-1.0/atk/atkgobjectaccessible.h:
+
+/usr/include/atk-1.0/atk/atkhyperlink.h:
+
+/usr/include/atk-1.0/atk/atkhyperlinkimpl.h:
+
+/usr/include/atk-1.0/atk/atkhypertext.h:
+
+/usr/include/atk-1.0/atk/atkimage.h:
+
+/usr/include/atk-1.0/atk/atknoopobject.h:
+
+/usr/include/atk-1.0/atk/atknoopobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkplug.h:
+
+/usr/include/atk-1.0/atk/atkregistry.h:
+
+/usr/include/atk-1.0/atk/atkobjectfactory.h:
+
+/usr/include/atk-1.0/atk/atkrelation.h:
+
+/usr/include/atk-1.0/atk/atkrelationset.h:
+
+/usr/include/atk-1.0/atk/atkselection.h:
+
+/usr/include/atk-1.0/atk/atksocket.h:
+
+/usr/include/atk-1.0/atk/atkstateset.h:
+
+/usr/include/atk-1.0/atk/atkstreamablecontent.h:
+
+/usr/include/atk-1.0/atk/atktable.h:
+
+/usr/include/atk-1.0/atk/atkmisc.h:
+
+/usr/include/atk-1.0/atk/atkvalue.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccellabel.h:
+
+/usr/include/gtk-2.0/gtk/gtklabel.h:
+
+/usr/include/gtk-2.0/gtk/gtkmisc.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenushell.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccelmap.h:
+
+/usr/include/gtk-2.0/gtk/gtkaccessible.h:
+
+/usr/include/gtk-2.0/gtk/gtkaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkactiongroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkactivatable.h:
+
+/usr/include/gtk-2.0/gtk/gtkalignment.h:
+
+/usr/include/gtk-2.0/gtk/gtkarrow.h:
+
+/usr/include/gtk-2.0/gtk/gtkaspectframe.h:
+
+/usr/include/gtk-2.0/gtk/gtkframe.h:
+
+/usr/include/gtk-2.0/gtk/gtkassistant.h:
+
+/usr/include/gtk-2.0/gtk/gtkbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkbindings.h:
+
+/usr/include/gtk-2.0/gtk/gtkbuildable.h:
+
+/usr/include/gtk-2.0/gtk/gtkbuilder.h:
+
+/usr/include/gtk-2.0/gtk/gtkbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkimage.h:
+
+/usr/include/gtk-2.0/gtk/gtkcalendar.h:
+
+/usr/include/gtk-2.0/gtk/gtksignal.h:
+
+/usr/include/gtk-2.0/gtk/gtkmarshal.h:
+
+/usr/include/gtk-2.0/gtk/gtkcelleditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkcelllayout.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderer.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeviewcolumn.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodel.h:
+
+/usr/include/gtk-2.0/gtk/gtktreesortable.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendereraccel.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderertext.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderercombo.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererpixbuf.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererprogress.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererspin.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrendererspinner.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellrenderertoggle.h:
+
+/usr/include/gtk-2.0/gtk/gtkcellview.h:
+
+/usr/include/gtk-2.0/gtk/gtkcheckbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktogglebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkcheckmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkclipboard.h:
+
+/usr/include/gtk-2.0/gtk/gtkselection.h:
+
+/usr/include/gtk-2.0/gtk/gtktextiter.h:
+
+/usr/include/gtk-2.0/gtk/gtktexttag.h:
+
+/usr/include/gtk-2.0/gtk/gtktextchild.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorsel.h:
+
+/usr/include/gtk-2.0/gtk/gtkvbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkcolorseldialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkcombobox.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeview.h:
+
+/usr/include/gtk-2.0/gtk/gtkdnd.h:
+
+/usr/include/gtk-2.0/gtk/gtkentry.h:
+
+/usr/include/gtk-2.0/gtk/gtkeditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkimcontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkentrybuffer.h:
+
+/usr/include/gtk-2.0/gtk/gtkentrycompletion.h:
+
+/usr/include/gtk-2.0/gtk/gtkliststore.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodelfilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkcomboboxentry.h:
+
+/usr/include/gtk-2.0/gtk/gtkdrawingarea.h:
+
+/usr/include/gtk-2.0/gtk/gtkeventbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkexpander.h:
+
+/usr/include/gtk-2.0/gtk/gtkfixed.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooser.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilefilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkhbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilechooserwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkfontbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkfontsel.h:
+
+/usr/include/gtk-2.0/gtk/gtkgc.h:
+
+/usr/include/gtk-2.0/gtk/gtkhandlebox.h:
+
+/usr/include/gtk-2.0/gtk/gtkhbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkhpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkhruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkhscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkrange.h:
+
+/usr/include/gtk-2.0/gtk/gtkhscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkhseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtkhsv.h:
+
+/usr/include/gtk-2.0/gtk/gtkiconfactory.h:
+
+/usr/include/gtk-2.0/gtk/gtkicontheme.h:
+
+/usr/include/gtk-2.0/gtk/gtkiconview.h:
+
+/usr/include/gtk-2.0/gtk/gtktooltip.h:
+
+/usr/include/gtk-2.0/gtk/gtkimagemenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkimcontextsimple.h:
+
+/usr/include/gtk-2.0/gtk/gtkimmulticontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkinfobar.h:
+
+/usr/include/gtk-2.0/gtk/gtkinvisible.h:
+
+/usr/include/gtk-2.0/gtk/gtklayout.h:
+
+/usr/include/gtk-2.0/gtk/gtklinkbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkmain.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenubar.h:
+
+/usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolitem.h:
+
+/usr/include/gtk-2.0/gtk/gtktooltips.h:
+
+/usr/include/gtk-2.0/gtk/gtksizegroup.h:
+
+/usr/include/gtk-2.0/gtk/gtkmessagedialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkmodules.h:
+
+/usr/include/gtk-2.0/gtk/gtkmountoperation.h:
+
+/usr/include/gtk-2.0/gtk/gtknotebook.h:
+
+/usr/include/gtk-2.0/gtk/gtkoffscreenwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkorientable.h:
+
+/usr/include/gtk-2.0/gtk/gtkpagesetup.h:
+
+/usr/include/gtk-2.0/gtk/gtkpapersize.h:
+
+/usr/include/gtk-2.0/gtk/gtkplug.h:
+
+/usr/include/gtk-2.0/gtk/gtksocket.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintcontext.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintoperation.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintsettings.h:
+
+/usr/include/gtk-2.0/gtk/gtkprintoperationpreview.h:
+
+/usr/include/gtk-2.0/gtk/gtkprogressbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkprogress.h:
+
+/usr/include/gtk-2.0/gtk/gtkradioaction.h:
+
+/usr/include/gtk-2.0/gtk/gtktoggleaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiobutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiomenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkradiotoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtktoggletoolbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentaction.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentmanager.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooser.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentfilter.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooserdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchoosermenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkrecentchooserwidget.h:
+
+/usr/include/gtk-2.0/gtk/gtkscalebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkscrolledwindow.h:
+
+/usr/include/gtk-2.0/gtk/gtkvscrollbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkviewport.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparatormenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkseparatortoolitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkshow.h:
+
+/usr/include/gtk-2.0/gtk/gtkspinbutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkspinner.h:
+
+/usr/include/gtk-2.0/gtk/gtkstatusbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkstatusicon.h:
+
+/usr/include/gtk-2.0/gtk/gtkstock.h:
+
+/usr/include/gtk-2.0/gtk/gtktable.h:
+
+/usr/include/gtk-2.0/gtk/gtktearoffmenuitem.h:
+
+/usr/include/gtk-2.0/gtk/gtktextbuffer.h:
+
+/usr/include/gtk-2.0/gtk/gtktexttagtable.h:
+
+/usr/include/gtk-2.0/gtk/gtktextmark.h:
+
+/usr/include/gtk-2.0/gtk/gtktextbufferrichtext.h:
+
+/usr/include/gtk-2.0/gtk/gtktextview.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolbar.h:
+
+/usr/include/gtk-2.0/gtk/gtkpixmap.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolitemgroup.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolpalette.h:
+
+/usr/include/gtk-2.0/gtk/gtktoolshell.h:
+
+/usr/include/gtk-2.0/gtk/gtktestutils.h:
+
+/usr/include/gtk-2.0/gtk/gtktreednd.h:
+
+/usr/include/gtk-2.0/gtk/gtktreemodelsort.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeselection.h:
+
+/usr/include/gtk-2.0/gtk/gtktreestore.h:
+
+/usr/include/gtk-2.0/gtk/gtkuimanager.h:
+
+/usr/include/gtk-2.0/gtk/gtkvbbox.h:
+
+/usr/include/gtk-2.0/gtk/gtkversion.h:
+
+/usr/include/gtk-2.0/gtk/gtkvolumebutton.h:
+
+/usr/include/gtk-2.0/gtk/gtkvpaned.h:
+
+/usr/include/gtk-2.0/gtk/gtkvruler.h:
+
+/usr/include/gtk-2.0/gtk/gtkvscale.h:
+
+/usr/include/gtk-2.0/gtk/gtkvseparator.h:
+
+/usr/include/gtk-2.0/gtk/gtktext.h:
+
+/usr/include/gtk-2.0/gtk/gtktree.h:
+
+/usr/include/gtk-2.0/gtk/gtktreeitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkclist.h:
+
+/usr/include/gtk-2.0/gtk/gtkcombo.h:
+
+/usr/include/gtk-2.0/gtk/gtkctree.h:
+
+/usr/include/gtk-2.0/gtk/gtkcurve.h:
+
+/usr/include/gtk-2.0/gtk/gtkfilesel.h:
+
+/usr/include/gtk-2.0/gtk/gtkgamma.h:
+
+/usr/include/gtk-2.0/gtk/gtkinputdialog.h:
+
+/usr/include/gtk-2.0/gtk/gtkitemfactory.h:
+
+/usr/include/gtk-2.0/gtk/gtklist.h:
+
+/usr/include/gtk-2.0/gtk/gtklistitem.h:
+
+/usr/include/gtk-2.0/gtk/gtkoldeditable.h:
+
+/usr/include/gtk-2.0/gtk/gtkoptionmenu.h:
+
+/usr/include/gtk-2.0/gtk/gtkpreview.h:
+
+/usr/include/gtk-2.0/gtk/gtktipsquery.h:
+
+../../libanjuta/interfaces/ianjuta-iterable.h:
+
+python-utils.h:
diff --git a/plugins/language-support-python/Makefile.am b/plugins/language-support-python/Makefile.am
new file mode 100644
index 0000000..881e018
--- /dev/null
+++ b/plugins/language-support-python/Makefile.am
@@ -0,0 +1,47 @@
+# Plugin UI files
+python_plugin_uidir = $(anjuta_ui_dir)
+python_plugin_ui_DATA =  python-plugin.xml
+
+# Plugin Glade file
+python_plugin_gladedir = $(anjuta_glade_dir)
+python_plugin_glade_DATA = python-plugin-properties.ui
+
+# Plugin Icon file
+python_plugin_pixmapsdir = $(anjuta_image_dir)
+python_plugin_pixmaps_DATA = python_plugin.png
+
+# Plugin Python Scripts
+scriptsdir = $(anjuta_plugin_dir)
+scripts_SCRIPTS = anjuta-python-autocomplete.py
+
+# Plugin description file
+plugin_in_files = python-plugin.plugin.in
+%.plugin: %.plugin.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+
+python_plugin_plugindir = $(anjuta_plugin_dir)
+python_plugin_plugin_DATA = $(plugin_in_files:.plugin.in=.plugin)
+
+AM_CPPFLAGS = \
+	$(LIBXML_CFLAGS) \
+	$(LIBANJUTA_CFLAGS) \
+	-DSCRIPTS_DIR=\"$(scriptsdir)\"
+
+# Where to install the plugin
+plugindir = $(anjuta_plugin_dir)
+
+# The plugin
+plugin_LTLIBRARIES = libpython_plugin.la
+
+# Plugin sources
+libpython_plugin_la_SOURCES = plugin.c plugin.h python-assist.c python-assist.h python-utils.c python-utils.h
+
+# Plugin dependencies
+libpython_plugin_la_LIBADD = \
+	$(LIBANJUTA_LIBS) 
+
+EXTRA_DIST = \
+	$(plugin_in_files) \
+	$(python_plugin_plugin_DATA) \
+	$(python_plugin_ui_DATA) \
+	$(python_plugin_glade_DATA) \
+	$(python_plugin_pixmaps_DATA)
diff --git a/plugins/language-support-python/anjuta-python-autocomplete.py b/plugins/language-support-python/anjuta-python-autocomplete.py
new file mode 100755
index 0000000..89fc996
--- /dev/null
+++ b/plugins/language-support-python/anjuta-python-autocomplete.py
@@ -0,0 +1,71 @@
+import getopt
+import sys
+from rope.base.project import Project 
+from rope.contrib import codeassist
+from rope.contrib import autoimport
+import os
+
+def pathsplit(p, rest=[]):
+	(h,t) = os.path.split(p)
+	if len(h) < 1: return [t]+rest
+	if len(t) < 1: return [h]+rest
+	return pathsplit(h,[t]+rest)
+
+def commonpath(l1, l2, common=[]):
+	if len(l1) < 1: return (common, l1, l2)
+	if len(l2) < 1: return (common, l1, l2)
+	if l1[0] != l2[0]: return (common, l1, l2)
+	return commonpath(l1[1:], l2[1:], common+[l1[0]])
+
+def relpath(p1, p2):
+	(common,l1,l2) = commonpath(pathsplit(p1), pathsplit(p2))
+	p = []
+	if len(l1) > 0:
+	    p = [ '../' * len(l1) ]
+	p = p + l2
+	return os.path.join( *p )
+
+
+options, remainder = getopt.getopt(sys.argv[1:], 'o:p:s:r:f:')
+
+for opt, arg in options:
+    if opt in ('-o', '--option'):
+        option_arg = arg
+    elif opt in ('-p', '--project'):
+        project_arg = arg
+    elif opt == '-s':
+        source_code_arg = arg
+    elif opt == '-r':
+        res_arg = arg
+    elif opt == '-f':
+        offset_arg = arg
+
+option = option_arg;
+projectpath = project_arg
+if projectpath.startswith("file://"):
+	projectpath = projectpath.replace("file://", "")
+
+proj = Project(projectpath)
+proj.pycore._init_python_files()
+
+input = open(source_code_arg, 'r')
+source_code = input.read()
+respath = relpath(projectpath, res_arg)
+res = proj.get_resource(respath)
+
+position = int(offset_arg)
+
+if option == "autocomplete":
+	proposals = codeassist.code_assist(proj, source_code, position, resource=res, maxfixes=10)
+	proposals = codeassist.sorted_proposals(proposals)
+
+	for proposal in proposals:
+		print proposal
+
+elif option == "calltip":
+	proposals = codeassist.get_doc(proj, source_code, position, resource=res, maxfixes=10)
+	print proposals
+
+proj.close()
+
+
diff --git a/plugins/language-support-python/plugin.c b/plugins/language-support-python/plugin.c
new file mode 100644
index 0000000..c2d6709
--- /dev/null
+++ b/plugins/language-support-python/plugin.c
@@ -0,0 +1,1806 @@
+/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
+/*
+ * plugin.c
+ * Copyright (C) Ishan Chattopadhyaya 2009 <ichattopadhyaya gmail com>
+ * 
+ * plugin.c is free software.
+ * 
+ * You may 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.
+ * 
+ * plugin.c 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 plugin.c.  If not, write to:
+ * 	The Free Software Foundation, Inc.,
+ * 	51 Franklin Street, Fifth Floor
+ * 	Boston, MA  02110-1301, USA.
+ */
+
+#include <config.h>
+#include <ctype.h>
+#include <stdlib.h>
+#include <ctype.h>
+#include <libanjuta/anjuta-shell.h>
+#include <libanjuta/anjuta-debug.h>
+#include <libanjuta/interfaces/ianjuta-iterable.h>
+#include <libanjuta/interfaces/ianjuta-document.h>
+#include <libanjuta/interfaces/ianjuta-document-manager.h>
+#include <libanjuta/interfaces/ianjuta-editor.h>
+#include <libanjuta/interfaces/ianjuta-file.h>
+#include <libanjuta/interfaces/ianjuta-editor-cell.h>
+#include <libanjuta/interfaces/ianjuta-editor-language.h>
+#include <libanjuta/interfaces/ianjuta-editor-selection.h>
+#include <libanjuta/interfaces/ianjuta-editor-assist.h>
+#include <libanjuta/interfaces/ianjuta-preferences.h>
+#include <libanjuta/interfaces/ianjuta-symbol.h>
+#include <libanjuta/interfaces/ianjuta-language.h>
+
+//REMOVE GLADE #include <glade/glade.h>
+
+#include "plugin.h"
+#include "python-utils.h"
+#include "python-assist.h"
+
+/* Pixmaps */
+#define ANJUTA_PIXMAP_SWAP                "anjuta-swap"
+#define ANJUTA_PIXMAP_COMPLETE			  "anjuta-complete"
+#define ANJUTA_PIXMAP_AUTOCOMPLETE        "anjuta-complete-auto"
+#define ANJUTA_PIXMAP_AUTOINDENT          "anjuta-indent-auto"
+#define ANJUTA_STOCK_SWAP                 "anjuta-swap"
+#define ANJUTA_STOCK_COMPLETE         	  "anjuta-complete"
+#define ANJUTA_STOCK_AUTOCOMPLETE         "anjuta-autocomplete"
+#define ANJUTA_STOCK_AUTOINDENT           "anjuta-indent"
+
+#define UI_FILE PACKAGE_DATA_DIR"/ui/python-plugin.xml"
+#define PROPERTIES_FILE_UI PACKAGE_DATA_DIR"/glade/python-plugin-properties.ui"
+#define ICON_FILE "python_plugin.png"
+
+/* Preferences keys */
+
+#define PREF_INDENT_AUTOMATIC "language.python.indent.automatic"
+#define PREF_INDENT_ADAPTIVE "language.python.indent.adaptive"
+#define PREF_INDENT_TAB_INDENTS "language.python.indent.tab.indents"
+#define PREF_INDENT_STATEMENT_SIZE "language.python.indent.statement.size"
+#define PREF_INDENT_BRACE_SIZE "language.python.indent.brace.size"
+#define PREF_BRACE_AUTOCOMPLETION "language.python.brace.autocompletion"
+
+#define TAB_SIZE (ianjuta_editor_get_tabsize (editor, NULL))
+
+#define USE_SPACES_FOR_INDENTATION (ianjuta_editor_get_use_spaces (editor, NULL))
+
+#define INDENT_SIZE \
+	(plugin->param_statement_indentation >= 0? \
+		plugin->param_statement_indentation : \
+		anjuta_preferences_get_int (plugin->prefs, PREF_INDENT_STATEMENT_SIZE))
+
+#define BRACE_INDENT \
+	(plugin->param_brace_indentation >= 0? \
+		plugin->param_brace_indentation : \
+		anjuta_preferences_get_int (plugin->prefs, PREF_INDENT_BRACE_SIZE))
+
+#define CASE_INDENT (INDENT_SIZE)
+#define LABEL_INDENT (INDENT_SIZE)
+
+static gpointer parent_class;
+
+static gboolean
+iter_is_newline (IAnjutaIterable *iter, gchar ch)
+{
+	if (ch == '\n' || ch == '\r')
+		return TRUE;
+	return FALSE;
+}
+
+/* Returns TRUE if iter was moved */
+static gboolean
+skip_iter_to_newline_head (IAnjutaIterable *iter, gchar ch)
+{
+	gboolean ret_val = FALSE;
+	
+	if (ch == '\n')
+	{
+		/* Possibly at tail */
+		if (ianjuta_iterable_previous (iter, NULL))
+		{
+			ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter),
+											0, NULL);
+			if (ch != '\r')
+				/* Already at head, undo iter */
+				ianjuta_iterable_next (iter, NULL);
+			else
+				/* Correctly at head */
+				ret_val = TRUE;
+		}
+	}
+	return ret_val;
+}
+
+/* Returns TRUE if iter was moved */
+static gboolean
+skip_iter_to_newline_tail (IAnjutaIterable *iter, gchar ch)
+{
+	gboolean ret_val = FALSE;
+	
+	if (ch == '\r')
+	{
+		/* Possibly at head */
+		if (ianjuta_iterable_previous (iter, NULL))
+		{
+			ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter),
+											0, NULL);
+			if (ch != '\n')
+				/* Already at tail, undo iter */
+				ianjuta_iterable_next (iter, NULL);
+			else
+				/* Correctly at tail */
+				ret_val = TRUE;
+		}
+	}
+	return ret_val;
+}
+
+/* Jumps to the reverse matching brace of the given brace character */
+
+static gint
+get_line_indentation (IAnjutaEditor *editor, gint line_num)
+{
+	IAnjutaIterable *line_begin, *line_end;
+	gchar *line_string, *idx;
+	gint line_indent = 0;
+	
+	line_begin = ianjuta_editor_get_line_begin_position (editor, line_num, NULL);
+	line_end = ianjuta_editor_get_line_end_position (editor, line_num, NULL);
+	/*
+	DEBUG_PRINT ("%s: line begin = %d, line end = %d", __FUNCTION__,
+				 line_begin, line_end);
+	*/
+	if (ianjuta_iterable_compare (line_begin, line_end, NULL) == 0)
+	{
+		g_object_unref (line_begin);
+		g_object_unref (line_end);
+		return 0;
+	}
+	
+	line_string = ianjuta_editor_get_text (editor, line_begin, line_end,
+												NULL);
+	g_object_unref (line_begin);
+	g_object_unref (line_end);
+	
+	/* DEBUG_PRINT ("line_string = '%s'", line_string); */
+	
+	if (!line_string)
+		return 0;
+	
+	idx = line_string;
+	
+	/* Find first non-white space */
+	while (*idx != '\0' && isspace (*idx))
+	{
+		if (*idx == '\t')
+			line_indent += TAB_SIZE;
+		else
+			line_indent++;
+		idx++; /* Since we are looking for first non-space char, simple
+				* increment of the utf8 chars would do */
+	}
+	g_free (line_string);
+	return line_indent;
+}
+
+static gchar *
+get_line_indentation_string (IAnjutaEditor *editor, gint spaces, gint line_indent_spaces)
+{
+	gint i;
+	gchar *indent_string;
+		
+	if ((spaces + line_indent_spaces) <= 0)
+		return NULL;
+	
+	if (USE_SPACES_FOR_INDENTATION)
+	{
+		indent_string = g_new0 (gchar, spaces + line_indent_spaces + 1);
+		for (i = 0; i < (spaces + line_indent_spaces); i++)
+			indent_string[i] = ' ';
+	}
+	else
+	{
+		gint num_tabs = spaces / TAB_SIZE;
+		gint num_spaces = spaces % TAB_SIZE;
+		indent_string = g_new0 (gchar, num_tabs + num_spaces + line_indent_spaces + 1);
+		
+		for (i = 0; i < num_tabs; i++)
+			indent_string[i] = '\t';
+		for (; i < num_tabs + (num_spaces + line_indent_spaces); i++)
+			indent_string[i] = ' ';
+	}
+	return indent_string;
+}
+
+/* Sets the iter to line end of previous line and TRUE is returned.
+ * If there is no previous line, iter is set to first character in the
+ * buffer and FALSE is returned.
+ */
+static gboolean
+skip_iter_to_previous_line (IAnjutaEditor *editor, IAnjutaIterable *iter)
+{
+	gboolean found = FALSE;
+	gchar ch;
+	
+	while (ianjuta_iterable_previous (iter, NULL))
+	{
+		ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+		if (iter_is_newline (iter, ch))
+		{
+			skip_iter_to_newline_head (iter, ch);
+			found = TRUE;
+			break;
+		}
+	}
+	return found;
+}
+
+/* Returns TRUE if the line is continuation of previous line (that is, it is
+ * part of the same logical line).
+ */
+static gboolean
+line_is_continuation (IAnjutaEditor *editor, IAnjutaIterable *iter)
+{
+	return FALSE; 
+	
+	int is_continuation = FALSE;
+	
+	IAnjutaIterable *new_iter = ianjuta_iterable_clone (iter, NULL);
+	if (skip_iter_to_previous_line (editor, new_iter))
+	{
+		while (ianjuta_iterable_previous (new_iter, NULL))
+		{
+			gchar ch = ianjuta_editor_cell_get_char
+				(IANJUTA_EDITOR_CELL (new_iter), 0, NULL);
+			if (ch == ' ' || ch == '\t')
+				continue;
+			
+			if (ch == '\\')
+			{
+				is_continuation = TRUE;
+				break;
+			}
+			
+			if (iter_is_newline (new_iter, ch))
+				break;
+		}
+	}
+	g_object_unref (new_iter);
+	return is_continuation;
+}
+
+/* Sets the iter to line end of previous logical line and TRUE is returned.
+ * If there is no previous logical line, iter is set to first character in the
+ * buffer and FALSE is returned. logical line is defined as one or more
+ * real lines that are joined with line escapes ('\' at the end of real
+ * lines.
+ */
+static gboolean
+skip_iter_to_previous_logical_line (IAnjutaEditor *editor,
+									IAnjutaIterable *iter)
+{
+	gboolean found = TRUE;
+	
+	while (line_is_continuation (editor, iter))
+	{
+		/*
+		DEBUG_PRINT ("Line %d is continuation line .. Skipping",
+					 ianjuta_editor_get_line_from_position (editor, iter, NULL));
+		*/
+		found = skip_iter_to_previous_line (editor, iter);
+		if (!found)
+			break;
+	}
+	/*
+	DEBUG_PRINT ("Line %d is *not* continuation line .. Breaking",
+				 ianjuta_editor_get_line_from_position (editor, iter, NULL));
+	*/
+	if (found)
+		found = skip_iter_to_previous_line (editor, iter);
+	/*
+	DEBUG_PRINT ("Line %d is next logical line",
+				 ianjuta_editor_get_line_from_position (editor, iter, NULL));
+	*/
+	return found;
+}
+
+static gboolean
+line_is_preprocessor (IAnjutaEditor *editor, IAnjutaIterable *iter)
+{return FALSE;
+	gboolean is_preprocessor = FALSE;
+	IAnjutaIterable *new_iter = ianjuta_iterable_clone (iter, NULL);
+	
+	if (skip_iter_to_previous_logical_line (editor, new_iter))
+	{
+		/* Forward the newline char and point to line begin of next line */
+		gchar ch;
+		ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (new_iter),
+										   0, NULL);
+		skip_iter_to_newline_tail (new_iter, ch);
+		ianjuta_iterable_next (new_iter, NULL);
+	}
+	/* else, line is already pointed at first char of the line */
+	
+	do
+	{
+		gchar ch;
+		ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (new_iter),
+										   0, NULL);
+/*		if (ch == '#')
+		{
+			is_preprocessor = TRUE;
+			break;
+		}*/
+		if (iter_is_newline (new_iter, ch) || !isspace (ch))
+			break;
+	}
+	while (ianjuta_iterable_next (new_iter, NULL));
+	
+	g_object_unref (new_iter);
+	
+	return is_preprocessor;
+}
+
+/* Skips to the end-of-line of previous non-preprocessor line. Any multiple
+ * preprocessor lines are skipped. If current
+ * line is not preprocessor line, nothing happens. If there is no previous
+ * non-preprocessor line (we are at first line of the document which happens
+ * to be preprocessor line), iter is set to the first character in the
+ * document. It returns TRUE if the line is preprocessor line, otherwise
+ * FALSE.
+ */
+static gboolean
+skip_preprocessor_lines (IAnjutaEditor *editor, IAnjutaIterable *iter)
+{
+	return FALSE;
+	gboolean line_found = FALSE;
+	gboolean preprocessor_found = FALSE;
+	IAnjutaIterable *new_iter = ianjuta_iterable_clone (iter, NULL);
+	
+	do
+	{
+		gboolean is_preprocessor = FALSE;
+		if (skip_iter_to_previous_logical_line (editor, new_iter))
+		{
+			gchar ch;
+			ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (new_iter),
+											   0, NULL);
+			skip_iter_to_newline_tail (new_iter, ch);
+			ianjuta_iterable_next (new_iter, NULL);
+		}
+		do
+		{
+			gchar ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (new_iter),
+													 0, NULL);
+			if (ch == '#')
+			{
+				is_preprocessor = TRUE;
+				/*
+				DEBUG_PRINT ("Line %d is preprocessor line .. Skipping",
+							 ianjuta_editor_get_line_from_position
+							 (editor, new_iter, NULL));
+				*/
+				break;
+			}
+			if (iter_is_newline (new_iter, ch) || !isspace (ch))
+			{
+				skip_iter_to_newline_tail (new_iter, ch);
+				break;
+			}
+		}
+		while (ianjuta_iterable_next (new_iter, NULL));
+		
+		if (is_preprocessor)
+		{
+			line_found = skip_iter_to_previous_line (editor, new_iter);
+			ianjuta_iterable_assign (iter, new_iter, NULL);
+			preprocessor_found = TRUE;
+		}
+		else
+		{
+			/*
+			DEBUG_PRINT ("Line %d is *not* preprocessor line .. Breaking",
+						 ianjuta_editor_get_line_from_position
+							(editor, new_iter, NULL));
+			*/
+			break;
+		}
+	}
+	while (line_found);
+	
+	g_object_unref (new_iter);
+	return preprocessor_found;
+}
+
+static void
+set_indentation_param_emacs (PythonPlugin* plugin, const gchar *param,
+					   const gchar *value)
+{
+	//DEBUG_PRINT ("Setting indent param: %s = %s", param, value);
+	if (strcasecmp (param, "indent-tabs-mode") == 0)
+	{
+		if (strcasecmp (value, "t") == 0)
+		{
+			plugin->param_use_spaces = 0;
+			ianjuta_editor_set_use_spaces (IANJUTA_EDITOR (plugin->current_editor),
+										   FALSE, NULL);
+		}
+		else if (strcasecmp (value, "nil") == 0)
+		{
+			plugin->param_use_spaces = 1;
+			ianjuta_editor_set_use_spaces (IANJUTA_EDITOR (plugin->current_editor),
+										   TRUE, NULL);
+		}
+	}
+	else if (strcasecmp (param, "c-basic-offset") == 0)
+	{
+		plugin->param_statement_indentation = atoi (value);
+	}
+	else if (strcasecmp (param, "tab-width") == 0)
+	{
+		plugin->param_tab_size = atoi (value);
+		ianjuta_editor_set_tabsize (IANJUTA_EDITOR (plugin->current_editor),
+									plugin->param_tab_size, NULL);
+	}
+}
+
+static void
+set_indentation_param_vim (PythonPlugin* plugin, const gchar *param,
+					   const gchar *value)
+{
+	//DEBUG_PRINT ("Setting indent param: %s = %s", param, value);
+	if (g_str_equal (param, "expandtab") ||
+		g_str_equal (param, "et"))
+	{
+			plugin->param_use_spaces = 1;
+			ianjuta_editor_set_use_spaces (IANJUTA_EDITOR (plugin->current_editor),
+										   TRUE, NULL);
+	}
+	else if (g_str_equal (param, "noexpandtabs") ||
+			 g_str_equal (param, "noet"))
+	{
+	  	plugin->param_use_spaces = 0;
+			ianjuta_editor_set_use_spaces (IANJUTA_EDITOR (plugin->current_editor),
+										   FALSE, NULL);
+	}
+	if (!value)
+		return;
+	else if (g_str_equal (param, "shiftwidth") ||
+			 g_str_equal (param, "sw"))
+	{
+		plugin->param_statement_indentation = atoi (value);
+	}
+	else if (g_str_equal (param, "softtabstop") ||
+			 g_str_equal (param, "sts") ||
+			 g_str_equal (param, "tabstop") ||
+			 g_str_equal (param, "ts"))
+	{
+		plugin->param_tab_size = atoi (value);
+		ianjuta_editor_set_tabsize (IANJUTA_EDITOR (plugin->current_editor),
+									plugin->param_tab_size, NULL);
+	}
+}
+
+static void
+parse_mode_line_emacs (PythonPlugin *plugin, const gchar *modeline)
+{
+	gchar **strv, **ptr;
+	
+	strv = g_strsplit (modeline, ";", -1);
+	ptr = strv;
+	while (*ptr)
+	{
+		gchar **keyval;
+		keyval = g_strsplit (*ptr, ":", 2);
+		if (keyval[0] && keyval[1])
+		{
+			g_strstrip (keyval[0]);
+			g_strstrip (keyval[1]);
+			set_indentation_param_emacs (plugin, g_strchug (keyval[0]),
+                                   g_strchug (keyval[1]));
+		}
+		g_strfreev (keyval);
+		ptr++;
+	}
+	g_strfreev (strv);
+}
+
+static void
+parse_mode_line_vim (PythonPlugin *plugin, const gchar *modeline)
+{
+	gchar **strv, **ptr;
+	
+	strv = g_strsplit (modeline, " ", -1);
+	ptr = strv;
+	while (*ptr)
+	{
+		gchar **keyval;
+		keyval = g_strsplit (*ptr, "=", 2);
+		if (keyval[0])
+		{
+			g_strstrip (keyval[0]);
+      if (keyval[1])
+      {
+			  g_strstrip (keyval[1]);
+			  set_indentation_param_vim (plugin, g_strchug (keyval[0]),
+                                     g_strchug (keyval[1]));
+      }
+      else
+			  set_indentation_param_vim (plugin, g_strchug (keyval[0]),
+                                     NULL);        
+		}
+		g_strfreev (keyval);
+		ptr++;
+	}
+	g_strfreev (strv);
+}
+
+static gchar *
+extract_mode_line (const gchar *comment_text, gboolean* vim)
+{
+	/* Search for emacs-like modelines */
+	gchar *begin_modeline, *end_modeline;
+	begin_modeline = strstr (comment_text, "-*-");
+	if (begin_modeline)
+	{
+		begin_modeline += 3;
+		end_modeline = strstr (begin_modeline, "-*-");
+		if (end_modeline)
+		{
+		  *vim = FALSE;
+				return g_strndup (begin_modeline, end_modeline - begin_modeline);
+		}
+	}
+	/* Search for vim-like modelines */
+	begin_modeline = strstr (comment_text, "vim:set");
+	if (begin_modeline)
+	{
+		begin_modeline += 7;
+		end_modeline = strstr (begin_modeline, ":");
+		/* Check for escape characters */
+		while (end_modeline)
+		{
+			 if (!g_str_equal ((end_modeline - 1), "\\"))
+				break;
+			end_modeline++;
+			end_modeline = strstr (end_modeline, ":");
+		}
+		if (end_modeline)
+		{
+			gchar* vim_modeline = g_strndup (begin_modeline, end_modeline - begin_modeline);
+			*vim = TRUE;
+			return vim_modeline;
+		}
+	}
+	return NULL;
+}
+
+#define MINI_BUFFER_SIZE 3
+
+static void
+initialize_indentation_params (PythonPlugin *plugin)
+{
+	IAnjutaIterable *iter;
+	GString *comment_text;
+	gboolean comment_begun = FALSE;
+	gboolean line_comment = FALSE;
+	gchar mini_buffer[MINI_BUFFER_SIZE] = {0};
+	
+	/* Initialize indentation parameters */
+	plugin->param_tab_size = -1;
+	plugin->param_statement_indentation = -1;
+	plugin->param_brace_indentation = -1;
+	plugin->param_case_indentation = -1;
+	plugin->param_label_indentation = -1;
+	plugin->param_use_spaces = -1;
+	
+	/* Find the first comment text in the buffer */
+	comment_text = g_string_new (NULL);
+	iter = ianjuta_editor_get_start_position (IANJUTA_EDITOR (plugin->current_editor),
+											  NULL);
+	do
+	{
+		gboolean shift_buffer = TRUE;
+		gint i;
+		gchar ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter),
+												 0, NULL);
+		
+		for (i = 0; i < MINI_BUFFER_SIZE - 1; i++)
+		{
+			if (mini_buffer[i] == '\0')
+			{
+				mini_buffer[i] = ch;
+				shift_buffer = FALSE;
+				break;
+			}
+		}
+		if (shift_buffer == TRUE)
+		{
+			/* Shift buffer and add */
+			for (i = 0; i < MINI_BUFFER_SIZE - 1; i++)
+				mini_buffer [i] = mini_buffer[i+1];
+			mini_buffer[i] = ch;
+		}
+		
+		if (!comment_begun && strncmp (mini_buffer, "/*", 2) == 0)
+		{
+			comment_begun = TRUE;
+			/* Reset buffer */
+			mini_buffer[0] = mini_buffer[1] = '\0';
+		}
+		else if (!comment_begun && strncmp (mini_buffer, "//", 2) == 0)
+		{
+			comment_begun = TRUE;
+			line_comment = TRUE;
+		}
+		else if (!comment_begun && mini_buffer[1] != '\0')
+		{
+			/* The buffer doesn't begin with a comment */
+			break;
+		}
+		else if (comment_begun)
+		{
+			if ((line_comment && ch == '\n') ||
+				(!line_comment && strncmp (mini_buffer, "*/", 2) == 0))
+			{
+				break;
+			}
+		}
+		
+		if (comment_begun)
+			g_string_append_c (comment_text, ch);
+		
+	}
+	while (ianjuta_iterable_next (iter, NULL));
+	
+	/* DEBUG_PRINT ("Comment text: %s", comment_text->str);*/
+	if (comment_text->len > 0)
+	{
+		
+		/* First comment found */
+    gboolean vim;
+		gchar *modeline = extract_mode_line (comment_text->str, &vim);
+		if (modeline)
+		{
+      if (!vim)
+			  parse_mode_line_emacs (plugin, modeline);
+      else
+        parse_mode_line_vim (plugin, modeline);
+			g_free (modeline);
+		}
+	}
+	g_string_free (comment_text, TRUE);
+	g_object_unref (iter);
+}
+
+static gint
+set_line_indentation (IAnjutaEditor *editor, gint line_num, gint indentation, gint line_indent_spaces)
+{
+	IAnjutaIterable *line_begin, *line_end, *indent_position;
+	IAnjutaIterable *current_pos;
+	gint carat_offset, nchars = 0, nchars_removed = 0;
+	gchar *old_indent_string = NULL, *indent_string = NULL;
+	
+	/* DEBUG_PRINT ("In %s()", __FUNCTION__); */
+	line_begin = ianjuta_editor_get_line_begin_position (editor, line_num, NULL);
+	line_end = ianjuta_editor_get_line_end_position (editor, line_num, NULL);
+	
+	/*
+	DEBUG_PRINT ("line begin = %d, line end = %d, current_pos = %d",
+				 line_begin, line_end, current_pos);
+	*/
+	indent_position = ianjuta_iterable_clone (line_begin, NULL);
+	
+	if (ianjuta_iterable_compare (line_end, line_begin, NULL) > 0)
+	{
+		gchar *idx;
+		gchar *line_string = ianjuta_editor_get_text (editor, line_begin,
+														   line_end, NULL);
+		
+		//DEBUG_PRINT ("line_string = '%s'", line_string);
+		if (line_string)
+		{
+			idx = line_string;
+			
+			/* Find first non-white space */
+			while (*idx != '\0' && isspace (*idx))
+			{
+				idx = g_utf8_find_next_char (idx, NULL);
+				ianjuta_iterable_next (indent_position, NULL);
+			}
+			g_free (line_string);
+		}
+	}
+	/* Indent iter defined at this point, Identify how much is current
+	 * position is beyound this point. We need to restore it later after
+	 * indentation
+	*/
+	current_pos = ianjuta_editor_get_position (editor, NULL);
+	carat_offset = ianjuta_iterable_diff (indent_position, current_pos, NULL);
+	//DEBUG_PRINT ("carat offset is = %d", carat_offset);
+	
+	/* Set new indentation */
+	if ((indentation + line_indent_spaces) > 0)
+	{
+		indent_string = get_line_indentation_string (editor, indentation, line_indent_spaces);
+		nchars = indent_string ? g_utf8_strlen (indent_string, -1) : 0;
+		
+		/* Only indent if there is something to indent with */
+		if (indent_string)
+		{
+			/* Get existing indentation */
+			if (ianjuta_iterable_compare (indent_position, line_begin, NULL) > 0)
+			{
+				old_indent_string =
+					ianjuta_editor_get_text (editor, line_begin,
+												  indent_position, NULL);
+				
+				//DEBUG_PRINT ("old_indent_string = '%s'", old_indent_string);
+				nchars_removed = g_utf8_strlen (old_indent_string, -1);
+			}
+			
+			/* Only indent if there was no indentation before or old
+			 * indentation string was different from the new indent string
+			 */
+			if (old_indent_string == NULL ||
+				strcmp (old_indent_string, indent_string) != 0)
+			{
+				/* Remove the old indentation string, if there is any */
+				if (old_indent_string)
+					ianjuta_editor_erase (editor, line_begin,
+										  indent_position, NULL);
+				
+				/* Insert the new indentation string */
+				ianjuta_editor_insert (editor, line_begin,
+									   indent_string, -1, NULL);
+			}
+		}
+	}
+	
+	/* If indentation == 0, we really didn't enter the previous code block,
+	 * but we may need to clear existing indentation.
+	 */
+	if ((indentation + line_indent_spaces) == 0)
+	{
+		/* Get existing indentation */
+		if (ianjuta_iterable_compare (indent_position, line_begin, NULL) > 0)
+		{
+			old_indent_string =
+				ianjuta_editor_get_text (editor, line_begin,
+											  indent_position, NULL);
+			nchars_removed = g_utf8_strlen (old_indent_string, -1);
+		}
+		if (old_indent_string)
+			ianjuta_editor_erase (editor, line_begin, indent_position, NULL);
+	}
+	
+	/* Restore current position */
+	if (carat_offset >= 0)
+	{
+		/* If the cursor was not before the first non-space character in
+		 * the line, restore it's position after indentation.
+		 */
+		gint i;
+		IAnjutaIterable *pos = ianjuta_editor_get_line_begin_position (editor, line_num, NULL);
+		for (i = 0; i < nchars + carat_offset; i++)
+			ianjuta_iterable_next (pos, NULL);
+		ianjuta_editor_goto_position (editor, pos, NULL);
+		g_object_unref (pos);
+	}
+	else /* cursor_offset < 0 */
+	{
+		/* If the cursor was somewhere in the old indentation spaces,
+		 * home the cursor to first non-space character in the line (or
+		 * end of line if there is no non-space characters in the line.
+		 */
+		gint i;
+		IAnjutaIterable *pos = ianjuta_editor_get_line_begin_position (editor, line_num, NULL);
+		for (i = 0; i < nchars; i++)
+			ianjuta_iterable_next (pos, NULL);
+		ianjuta_editor_goto_position (editor, pos, NULL);
+		g_object_unref (pos);
+	}
+
+	g_object_unref (current_pos);
+	g_object_unref (indent_position);
+	g_object_unref (line_begin);
+	g_object_unref (line_end);
+	
+	g_free (old_indent_string);
+	g_free (indent_string);
+	return nchars;
+}
+
+/*  incomplete_statement:
+ *  1 == COMPLETE STATEMENT
+ *  0 == INCOMPLETE STATEMENT
+ * -1 == UNKNOWN
+ */
+
+static gchar*
+get_current_statement (IAnjutaEditor *editor, gint line_num, gint *found_line_num)
+{
+	gchar point_ch;
+	IAnjutaIterable *iter = ianjuta_editor_get_line_begin_position (editor, line_num, NULL);
+	gchar statement[1024];
+	gint counter=0;
+
+	do
+	{
+		point_ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+
+		if (!ianjuta_iterable_next (iter, NULL) )
+			break;
+	} while (point_ch == ' ' || point_ch == '\t'); // Whitespace
+
+	if (!ianjuta_iterable_previous (iter, NULL))
+		return "";
+	
+	do
+	{
+		point_ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+		statement[counter++] = point_ch;
+		
+		if (!ianjuta_iterable_next (iter, NULL) )
+			break;
+	} while (isalpha(point_ch) || isdigit(point_ch)); // FIXME: Is this UTF-8 compatible?
+	statement[counter-1] = '\0';
+
+	DEBUG_PRINT ("Statement is: *%s*\n", statement);
+	g_object_unref (iter);
+	return g_strdup_printf("%s", statement);
+}
+
+static gchar 
+get_last_char (IAnjutaEditor *editor, gint line_num, gint *found_line_num)
+{
+	gchar point_ch;
+	IAnjutaIterable *iter = ianjuta_editor_get_line_end_position (editor, line_num, NULL);
+
+	do
+	{
+		if (ianjuta_iterable_previous (iter, NULL) )
+		{
+			point_ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0,
+												 NULL); 
+		}
+		else
+			break;
+	} 
+	while (point_ch == ' ' || point_ch == '\n' || point_ch == '\r' || point_ch == '\t'); // Whitespace
+
+	*found_line_num = ianjuta_editor_get_line_from_position (editor, iter, NULL);
+	return point_ch;
+}
+
+static gboolean
+spaces_only (IAnjutaEditor* editor, IAnjutaIterable* begin, IAnjutaIterable* end);
+
+static gboolean
+is_spaces_only (IAnjutaEditor *editor, gint line_num)
+{
+		IAnjutaIterable* begin = ianjuta_editor_get_line_begin_position (editor, line_num, NULL);
+		IAnjutaIterable* end = ianjuta_editor_get_line_end_position (editor, line_num , NULL);
+
+		if (spaces_only (editor, begin, end))
+		{
+			return TRUE;
+		}
+
+	return FALSE;
+}
+
+static gint
+get_line_indentation_base (PythonPlugin *plugin,
+						   IAnjutaEditor *editor,
+						   gint line_num,
+						   gint *incomplete_statement,
+						   gint *line_indent_spaces,
+						   gboolean *colon_indent)
+{
+	IAnjutaIterable *iter;
+	gchar point_ch;
+	gint line_indent = 0;
+	gint currentline = line_num - 1;
+	gchar *last_line_statement;
+	
+	*incomplete_statement = 0;
+	*line_indent_spaces = 0;
+	
+	if (currentline <= 1)
+		return 0;
+	
+	iter = ianjuta_editor_get_line_end_position (editor, line_num, NULL);
+
+	point_ch = get_last_char (editor, currentline, &currentline);
+	last_line_statement = get_current_statement (editor, currentline, &currentline);
+
+	if (!g_strcmp0(last_line_statement, "return") || 
+	    !g_strcmp0(last_line_statement, "break") ||
+	    !g_strcmp0(last_line_statement, "pass") || 
+	    !g_strcmp0(last_line_statement, "raise") || 	    
+	    !g_strcmp0(last_line_statement, "continue") )
+	{					
+		if (get_line_indentation (editor, currentline)>= INDENT_SIZE)
+			line_indent = get_line_indentation (editor, currentline) - INDENT_SIZE;
+	}
+	else if (point_ch == ':')
+	{
+        line_indent = get_line_indentation (editor, currentline) + INDENT_SIZE;
+	}
+	else
+	{
+		gint line = currentline;
+		while (is_spaces_only(editor, line))
+			line--;
+		line_indent = get_line_indentation (editor, line);
+	}
+
+	return line_indent;
+}
+
+/* Check if iter is inside string. Begining of string
+ * is not counted as inside.
+ */
+static gboolean
+is_iter_inside_string (IAnjutaIterable *iter)
+{
+	IAnjutaEditorAttribute attrib;
+	
+	attrib = ianjuta_editor_cell_get_attribute (IANJUTA_EDITOR_CELL (iter),
+												NULL);
+	/* Check if we are *inside* string. Begining
+	 * of string does not count as inside.
+	 */
+	if (attrib == IANJUTA_EDITOR_STRING)
+	{
+		/* Peek previous attrib and see what it was */
+		if (ianjuta_iterable_previous (iter, NULL))
+		{
+			attrib = ianjuta_editor_cell_get_attribute (IANJUTA_EDITOR_CELL
+														(iter),	NULL);
+			if (attrib == IANJUTA_EDITOR_STRING)
+			{
+				/* We are inside string */
+				return TRUE;
+			}
+			else
+			{
+				/* The string just began, not inside.
+				 * Restore iter from the peek
+				 */
+				ianjuta_iterable_next (iter, NULL);
+			}
+		}
+		/* else, there is no previous and so we can't be inside string
+		 */
+	}
+	return FALSE;
+}
+
+static gboolean
+spaces_only (IAnjutaEditor* editor, IAnjutaIterable* begin, IAnjutaIterable* end)
+{
+	gboolean empty = TRUE;
+	gchar* idx;
+	gchar* text = ianjuta_editor_get_text (editor, begin, end, NULL);
+
+	if (text == NULL)
+		return TRUE;
+	
+
+	for (idx = text; *idx != '\0'; idx++)
+	{
+		if (!isspace(*idx))
+		{
+			empty = FALSE;
+			break;
+		}
+	}
+	g_free(text);
+	return empty;
+}
+
+static gint
+get_line_auto_indentation (PythonPlugin *plugin, IAnjutaEditor *editor,
+						   gint line, gint *line_indent_spaces)
+{
+	IAnjutaIterable *iter;
+	gint line_indent = 0;
+	gint incomplete_statement = -1;
+	gboolean colon_indent = FALSE;
+	
+	g_return_val_if_fail (line > 0, 0);
+
+	if (line == 1) /* First line */
+	{
+		return 0;
+	}
+	else
+	{
+		IAnjutaIterable* begin = ianjuta_editor_get_line_begin_position (editor, line -1 , NULL);
+		IAnjutaIterable* end = ianjuta_editor_get_line_end_position (editor, line -1 , NULL);
+
+		if (spaces_only (editor, begin, end))
+		{
+			set_line_indentation (editor, line -1, 0, 0);
+		}
+		g_object_unref (begin);
+		g_object_unref (end);
+	}
+	
+	iter = ianjuta_editor_get_line_begin_position (editor, line, NULL);
+
+/*	if (is_iter_inside_string (iter))
+	{
+		line_indent = get_line_indentation (editor, line - 1);
+	}
+	else
+	{*/
+		line_indent = get_line_indentation_base (plugin, editor, line,
+												 &incomplete_statement, 
+												 line_indent_spaces,
+												 &colon_indent);
+	/*}*/
+
+	/* Determine what the first non-white char in the line is */
+	do
+	{
+		gchar ch;
+		/* Check if we are *inside* comment or string. Begining of comment
+		 * or string does not count as inside. If inside, just align with
+		 * previous indentation.
+		 */
+		/*if (is_iter_inside_string (iter))
+		{
+			line_indent = get_line_indentation (editor, line - 1);
+			break;
+		}*/
+		ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter),
+										   0, NULL);
+		if (iter_is_newline (iter, ch))
+		{
+			skip_iter_to_newline_tail (iter, ch);
+			
+			/* First levels are excused from incomplete statement indent */
+			if (incomplete_statement == 1 && line_indent > 0)
+				line_indent += INDENT_SIZE;
+			break;
+		}
+		
+		else if (!isspace (ch))
+		{
+			/* First levels are excused from incomplete statement indent */
+			if (incomplete_statement == 1 && line_indent > 0)
+				line_indent += INDENT_SIZE;
+			break;
+		}
+
+	}
+	while (ianjuta_iterable_next (iter, NULL));
+	g_object_unref (iter);
+	
+	return line_indent;
+}
+
+static void
+on_editor_char_inserted_cpp (IAnjutaEditor *editor,
+							 IAnjutaIterable *insert_pos,
+							 gchar ch,
+							 PythonPlugin *plugin)
+{
+	IAnjutaIterable *iter;
+	gboolean should_auto_indent = FALSE;
+
+	iter = ianjuta_iterable_clone (insert_pos, NULL);
+
+	/* If autoindent is enabled*/
+	if (anjuta_preferences_get_bool (plugin->prefs, PREF_INDENT_AUTOMATIC))
+	{
+	
+		 DEBUG_PRINT ("Char added at position %d: '%c'", 
+		              ianjuta_iterable_get_position (insert_pos, NULL), ch); 
+	
+		if (iter_is_newline (iter, ch))
+		{
+			skip_iter_to_newline_head (iter, ch);
+			/* All newline entries means enable indenting */
+			should_auto_indent = TRUE;
+		}
+
+		if (should_auto_indent)
+		{
+			gint insert_line;
+			gint line_indent;
+			gint line_indent_spaces;
+		
+			ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT(editor), NULL);
+			initialize_indentation_params (plugin);
+			
+			insert_line = ianjuta_editor_get_lineno (editor, NULL);
+			line_indent = get_line_auto_indentation (plugin, editor, insert_line, &line_indent_spaces);
+			set_line_indentation (editor, insert_line, line_indent, line_indent_spaces);
+			ianjuta_document_end_undo_action (IANJUTA_DOCUMENT(editor), NULL);
+		}
+	}
+	
+
+	g_object_unref (iter);
+}
+
+
+static void
+install_support (PythonPlugin *lang_plugin)
+{	
+	IAnjutaLanguage* lang_manager =
+		anjuta_shell_get_interface (ANJUTA_PLUGIN (lang_plugin)->shell,
+									IAnjutaLanguage, NULL);
+	
+	if (!lang_manager)
+		return;
+	
+	if (lang_plugin->support_installed)
+		return;
+	
+	lang_plugin->current_language = 
+		ianjuta_language_get_name_from_editor (lang_manager, 
+											   IANJUTA_EDITOR_LANGUAGE (lang_plugin->current_editor), NULL);
+	
+	DEBUG_PRINT("Language support intalled for: %s",
+				lang_plugin->current_language);
+	
+	if (lang_plugin->current_language &&
+		(g_str_equal (lang_plugin->current_language, "Python")))
+	{
+		g_signal_connect (lang_plugin->current_editor,
+						  "char-added",
+						  G_CALLBACK (on_editor_char_inserted_cpp),
+						  lang_plugin);
+	}
+	else
+	{
+		return;
+	}
+	
+	initialize_indentation_params (lang_plugin);
+	/* Disable editor intern auto-indent */
+	ianjuta_editor_set_auto_indent (IANJUTA_EDITOR(lang_plugin->current_editor),
+								    FALSE, NULL);
+	
+	if (IANJUTA_IS_EDITOR_ASSIST (lang_plugin->current_editor) )
+	{
+		AnjutaPlugin *plugin;
+		AnjutaUI *ui;
+		GtkAction *action;
+		IAnjutaEditorAssist* iassist;
+
+		const gchar *project_root;
+		gchar *editor_filename;		
+		GValue value = {0,};
+
+		plugin = ANJUTA_PLUGIN (lang_plugin);
+		ui = anjuta_shell_get_ui (plugin->shell, NULL);
+		iassist = IANJUTA_EDITOR_ASSIST (lang_plugin->current_editor);
+		
+		g_assert (lang_plugin->assist == NULL);
+
+		anjuta_shell_get_value (ANJUTA_PLUGIN (lang_plugin)->shell,
+						IANJUTA_PROJECT_MANAGER_PROJECT_ROOT_URI, &value, NULL);
+		project_root = ANJUTA_PLUGIN_PYTHON(plugin)->project_root_directory; //g_value_get_string (&value);
+		editor_filename = ANJUTA_PLUGIN_PYTHON(plugin)->current_editor_filename;
+		
+		lang_plugin->assist = python_assist_new (iassist,
+								anjuta_shell_get_interface (plugin->shell,
+											IAnjutaSymbolManager,
+											NULL),
+							    anjuta_shell_get_interface (plugin->shell,
+											IAnjutaDocumentManager,
+											NULL),
+								lang_plugin->prefs, editor_filename, project_root);
+		
+		/* Enable autocompletion action */
+		action = gtk_action_group_get_action (lang_plugin->action_group, 
+									   "ActionEditAutocomplete");
+		g_object_set (G_OBJECT (action), "visible", TRUE,
+					  "sensitive", TRUE, NULL);
+	}	
+		
+	lang_plugin->support_installed = TRUE;
+}
+
+static void
+uninstall_support (PythonPlugin *lang_plugin)
+{
+	if (!lang_plugin->support_installed)
+		return;
+	
+	if (lang_plugin->current_language &&
+		(g_str_equal (lang_plugin->current_language, "Python")))
+	{
+		g_signal_handlers_disconnect_by_func (lang_plugin->current_editor,
+									G_CALLBACK (on_editor_char_inserted_cpp),
+									lang_plugin);
+	}
+	
+	if (lang_plugin->assist)
+	{
+		AnjutaPlugin *plugin;
+		AnjutaUI *ui;
+		GtkAction *action;
+		
+		g_object_unref (lang_plugin->assist);
+		lang_plugin->assist = NULL;
+		
+		/* Disable autocompletion action */
+		plugin = ANJUTA_PLUGIN (lang_plugin);
+		ui = anjuta_shell_get_ui (plugin->shell, NULL);
+		action = gtk_action_group_get_action (lang_plugin->action_group,
+									   "ActionEditAutocomplete");
+		g_object_set (G_OBJECT (action), "visible", FALSE,
+					  "sensitive", FALSE, NULL);
+	}
+	
+	lang_plugin->support_installed = FALSE;
+}
+
+static void
+on_editor_language_changed (IAnjutaEditor *editor,
+							const gchar *new_language,
+							PythonPlugin *plugin)
+{
+	//anjuta_util_dialog_info (GTK_WINDOW (ANJUTA_PLUGIN (plugin)->shell),
+	//						 "New language is %s", new_language);
+
+	uninstall_support (plugin);
+	install_support (plugin);
+}
+
+static void
+on_value_added_current_editor (AnjutaPlugin *plugin, const gchar *name,
+							   const GValue *value, gpointer data)
+{
+	PythonPlugin *lang_plugin;
+	IAnjutaDocument* doc = IANJUTA_DOCUMENT(g_value_get_object (value));
+	lang_plugin = (PythonPlugin*) (plugin);
+
+/*	anjuta_util_dialog_info (GTK_WINDOW (ANJUTA_PLUGIN (plugin)->shell),
+							 "on_value_added_current_editor");*/
+
+	
+	if (IANJUTA_IS_EDITOR(doc))
+		lang_plugin->current_editor = G_OBJECT(doc);
+	else
+	{
+		lang_plugin->current_editor = NULL;
+		return;
+	}
+	if (IANJUTA_IS_EDITOR(lang_plugin->current_editor))
+		install_support (lang_plugin);
+	g_signal_connect (lang_plugin->current_editor, "language-changed",
+					  G_CALLBACK (on_editor_language_changed),
+					  plugin);
+}
+
+static void
+on_value_removed_current_editor (AnjutaPlugin *plugin, const gchar *name,
+								 gpointer data)
+{
+	PythonPlugin *lang_plugin;
+	lang_plugin = (PythonPlugin*) (plugin);
+	if (lang_plugin->current_editor)
+		g_signal_handlers_disconnect_by_func (lang_plugin->current_editor,
+										  G_CALLBACK (on_editor_language_changed),
+										  plugin);
+	if (IANJUTA_IS_EDITOR(lang_plugin->current_editor))
+		uninstall_support (lang_plugin);
+	lang_plugin->current_editor = NULL;
+}
+
+const gchar* SOURCE_EXT[] =
+{
+	".c",
+	".cc",
+	".C",
+	".cpp",
+	".cxx",
+	".ccg",
+	NULL
+};
+
+const gchar* HEADER_EXT[] =
+{
+	".h",
+	".hh",
+	".H",
+	".hpp",
+	".hxx",
+	".hg",
+	NULL
+};
+
+static void
+on_swap_activate (GtkAction* action, gpointer data)
+{
+	GFile* file;
+	GFile* parent;
+	gchar* parent_uri;
+	gchar* basename;
+	gchar* ext;
+	PythonPlugin *lang_plugin = (PythonPlugin*) (data);
+	IAnjutaDocumentManager* docman =
+		anjuta_shell_get_interface (ANJUTA_PLUGIN(lang_plugin)->shell,
+									IAnjutaDocumentManager,
+									NULL);
+	if (!lang_plugin->current_editor || !docman)
+		return;
+	
+	file = ianjuta_file_get_file (IANJUTA_FILE (lang_plugin->current_editor),
+								  NULL);
+	parent = g_file_get_parent (file);
+	parent_uri = g_file_get_uri (parent);
+	basename = g_file_get_basename (file);
+	g_object_unref (file);
+	g_object_unref (parent);
+	ext = strstr (basename, ".");
+	if (ext)
+	{
+		int i;
+		for (i = 0; SOURCE_EXT[i] != NULL; i++)
+		{
+			if (g_str_equal (ext, SOURCE_EXT[i]))
+			{
+				int j;
+				for (j = 0; HEADER_EXT[j] != NULL; j++)
+				{
+					gchar* filename;
+					gchar* uri;
+					GFile* new_file;
+					*ext = '\0';
+					filename = g_strdup_printf ("%s%s", basename, HEADER_EXT[j]);
+					uri = g_build_filename (parent_uri, filename, NULL);
+					new_file = g_file_new_for_uri (uri);
+					g_free (uri);
+					g_free(filename);
+					if (g_file_query_exists (new_file, NULL))
+					{
+						ianjuta_document_manager_goto_file_line (docman,
+																 new_file,
+																 -1,
+																 NULL);
+						g_object_unref (new_file);
+						break;
+					}
+					g_object_unref (new_file);
+				}
+				break;
+			}
+			if (g_str_equal (ext, HEADER_EXT[i]))
+			{
+				int j;
+				for (j = 0; SOURCE_EXT[j] != NULL; j++)
+				{
+					gchar* filename;
+					gchar* uri;
+					GFile* new_file;
+					*ext = '\0';
+					filename = g_strdup_printf ("%s%s", basename, SOURCE_EXT[j]);
+					uri = g_build_filename (parent_uri, filename, NULL);
+					new_file = g_file_new_for_uri (uri);
+					g_free (uri);
+					g_free(filename);
+					if (g_file_query_exists (new_file, NULL))
+					{
+						ianjuta_document_manager_goto_file_line (docman,
+																 new_file,
+																 -1,
+																 NULL);
+						g_object_unref (new_file);
+						break;
+					}
+					g_object_unref (new_file);
+				}
+				break;
+			}
+		}
+	}
+	g_free(basename);
+	g_free (parent_uri);
+}
+
+static void
+on_auto_indent (GtkAction *action, gpointer data)
+{
+	gint line_start, line_end;
+	gint insert_line;
+	gint line_indent;
+	gboolean has_selection;
+	
+	PythonPlugin *lang_plugin;
+	IAnjutaEditor *editor;
+	lang_plugin = (PythonPlugin*) (data);
+	editor = IANJUTA_EDITOR (lang_plugin->current_editor);
+	
+	has_selection = ianjuta_editor_selection_has_selection
+						(IANJUTA_EDITOR_SELECTION (editor), NULL);
+	if (has_selection)
+	{
+		IAnjutaIterable *sel_start, *sel_end;
+		sel_start = ianjuta_editor_selection_get_start (IANJUTA_EDITOR_SELECTION (editor),
+														NULL);
+		sel_end = ianjuta_editor_selection_get_end (IANJUTA_EDITOR_SELECTION (editor),
+													NULL);
+		line_start = ianjuta_editor_get_line_from_position (editor, sel_start, NULL);
+		line_end = ianjuta_editor_get_line_from_position (editor, sel_end, NULL);
+		g_object_unref (sel_start);
+		g_object_unref (sel_end);
+	}
+	else
+	{
+		line_start = ianjuta_editor_get_lineno (IANJUTA_EDITOR(editor), NULL);
+		line_end = line_start;
+	}
+	ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT(editor), NULL);
+	initialize_indentation_params (lang_plugin);
+	
+	for (insert_line = line_start; insert_line <= line_end; insert_line++)
+	{
+		gint line_indent_spaces = 0;
+		line_indent = get_line_auto_indentation (lang_plugin, editor,
+												 insert_line,
+												 &line_indent_spaces);
+		/* DEBUG_PRINT ("Line indent for line %d = %d", insert_line, line_indent); */
+		set_line_indentation (editor, insert_line, line_indent, line_indent_spaces);
+	}
+	ianjuta_document_end_undo_action (IANJUTA_DOCUMENT(editor), NULL);
+}
+ 
+static void
+on_auto_complete (GtkAction *action, gpointer data)
+{
+	PythonPlugin *lang_plugin = (PythonPlugin*) (data);;
+	PythonAssist *assist = PYTHON_ASSIST (lang_plugin->assist);
+	
+	python_assist_create_word_completion_cache (assist);
+	python_assist_update_autocomplete (assist);	
+
+
+
+/*	if (lang_plugin->assist)
+	{
+//		python_assist_check (lang_plugin->assist, TRUE, TRUE, FALSE);
+			dialog = gtk_message_dialog_new          (NULL,
+                                             GTK_DIALOG_NO_SEPARATOR,
+                                             GTK_MESSAGE_INFO,
+                                              GTK_BUTTONS_OK, "%s", "on_auto_complete");
+		gtk_widget_show (dialog);
+	}*/
+}
+
+static GtkActionEntry actions[] = {
+	{
+		"ActionMenuEdit",
+		NULL, N_("_Edit"),
+		NULL, NULL, NULL
+	},
+	{
+		"ActionEditAutocomplete",
+		GTK_STOCK_NEW, //ANJUTA_STOCK_AUTOCOMPLETE,
+		N_("_AutoComplete"), "<control>space",
+		N_("AutoComplete the current word"),
+		G_CALLBACK (on_auto_complete)
+	},
+	{
+		"ActionEditAutoindent",
+		GTK_STOCK_NEW, //ANJUTA_STOCK_AUTOINDENT,
+		N_("Auto Indent"), "<control>i",
+		N_("Auto indent current line or selection based on indentation settings"),
+		G_CALLBACK (on_auto_indent)
+	},
+	{   "ActionFileSwap", 
+		GTK_STOCK_NEW, 
+		N_("Swap .h/.c"), NULL,
+		N_("Swap c header and source files"),
+		G_CALLBACK (on_swap_activate)
+	}
+};
+
+static void
+register_stock_icons (AnjutaPlugin *plugin)
+{
+	static gboolean registered = FALSE;
+
+	if (registered)
+		return;
+	registered = TRUE;
+	
+	/* Register stock icons */
+	BEGIN_REGISTER_ICON (plugin);
+//	REGISTER_ICON_FULL (ANJUTA_PIXMAP_SWAP, ANJUTA_STOCK_SWAP);
+//	REGISTER_ICON_FULL (ANJUTA_PIXMAP_COMPLETE, ANJUTA_STOCK_COMPLETE);	
+//	REGISTER_ICON_FULL (ANJUTA_PIXMAP_AUTOCOMPLETE, ANJUTA_STOCK_AUTOCOMPLETE);
+//	REGISTER_ICON_FULL (ANJUTA_PIXMAP_AUTOINDENT, ANJUTA_STOCK_AUTOINDENT);
+	END_REGISTER_ICON;
+}
+
+// CODE from git PLUGIN
+static void
+on_project_root_added (AnjutaPlugin *plugin, const gchar *name, 
+					   const GValue *value, gpointer user_data)
+{
+	PythonPlugin *python_plugin;
+	gchar *project_root_uri;
+	GFile *file;
+	
+	python_plugin = ANJUTA_PLUGIN_PYTHON (plugin);
+	
+	g_free (python_plugin->project_root_directory);
+	project_root_uri = g_value_dup_string (value);
+	file = g_file_new_for_uri (project_root_uri);
+	python_plugin->project_root_directory = g_file_get_path (file);
+	g_object_unref (file);
+	g_free (project_root_uri);
+}
+
+static void
+on_project_root_removed (AnjutaPlugin *plugin, const gchar *name, 
+						 gpointer user_data)
+{
+	AnjutaUI *ui;
+	PythonPlugin *python_plugin;
+	
+	python_plugin = ANJUTA_PLUGIN_PYTHON (plugin);
+	
+	g_free (python_plugin->project_root_directory);
+	python_plugin->project_root_directory = NULL;
+	
+	ui = anjuta_shell_get_ui (plugin->shell, NULL);
+}
+
+static void
+on_editor_added (AnjutaPlugin *plugin, const gchar *name, const GValue *value,
+				 gpointer user_data)
+{
+	PythonPlugin *python_plugin;
+	IAnjutaEditor *editor;
+	GFile *current_editor_file;
+	
+	python_plugin = ANJUTA_PLUGIN_PYTHON (plugin);
+	editor = g_value_get_object (value);
+	
+	g_free (python_plugin->current_editor_filename);	
+	python_plugin->current_editor_filename = NULL;
+	
+	if (IANJUTA_IS_EDITOR (editor))
+	{
+		current_editor_file = ianjuta_file_get_file (IANJUTA_FILE (editor), 
+													 NULL);
+
+		if (current_editor_file)
+		{		
+			python_plugin->current_editor_filename = g_file_get_path (current_editor_file);
+			g_object_unref (current_editor_file);
+		}
+	}
+}
+
+static void
+on_editor_removed (AnjutaPlugin *plugin, const gchar *name, gpointer user_data)
+{
+	PythonPlugin *python_plugin;
+	
+	python_plugin = ANJUTA_PLUGIN_PYTHON (plugin);
+	
+	g_free (python_plugin->current_editor_filename);
+	python_plugin->current_editor_filename = NULL;
+}
+
+static void
+on_fm_file_added (AnjutaPlugin *plugin, const char *name,
+				  const GValue *value, gpointer data)
+{
+	PythonPlugin *python_plugin;
+	GFile *file;
+	
+	python_plugin = ANJUTA_PLUGIN_PYTHON (plugin);
+	
+	g_free (python_plugin->current_fm_filename);
+	
+	file = G_FILE (g_value_get_object (value));
+	python_plugin->current_fm_filename = g_file_get_path (file);
+}
+
+static void
+on_fm_file_removed (AnjutaPlugin *plugin, const char *name, gpointer data)
+{
+	PythonPlugin *python_plugin;
+	
+	python_plugin = ANJUTA_PLUGIN_PYTHON (plugin);
+	
+	g_free (python_plugin->current_fm_filename);
+	python_plugin->current_fm_filename = NULL;
+}
+
+// end of code from git plugin
+
+
+
+static gboolean
+python_plugin_activate (AnjutaPlugin *plugin)
+{
+	AnjutaUI *ui;
+
+	GtkWidget *wid;
+//	GladeXML *gxml;
+
+	PythonPlugin *python_plugin;
+	static gboolean initialized = FALSE;
+
+	python_plugin = (PythonPlugin*) plugin;
+
+	if (!initialized)
+	{
+		register_stock_icons (plugin);
+	}
+
+	
+	python_plugin->prefs = anjuta_shell_get_preferences (plugin->shell, NULL);
+	
+	/* Add all UI actions and merge UI */
+	ui = anjuta_shell_get_ui (plugin->shell, NULL);
+	
+	python_plugin->action_group = 
+
+	anjuta_ui_add_action_group_entries (ui, "ActionGroupPythonAssist",
+											_("Python Assistance"),
+											actions,
+											G_N_ELEMENTS (actions),
+											GETTEXT_PACKAGE, TRUE,
+											plugin);
+	python_plugin->uiid = anjuta_ui_merge (ui, UI_FILE);
+
+	python_plugin->editor_watch_id = 
+		anjuta_plugin_add_watch (plugin,
+								  IANJUTA_DOCUMENT_MANAGER_CURRENT_DOCUMENT,
+								 on_value_added_current_editor,
+								 on_value_removed_current_editor,
+								 plugin);
+	initialized = FALSE;
+
+	/* Add watches */
+	python_plugin->project_root_watch_id = anjuta_plugin_add_watch (plugin,
+																 IANJUTA_PROJECT_MANAGER_PROJECT_ROOT_URI,
+																 on_project_root_added,
+																 on_project_root_removed,
+																 NULL);
+	
+	python_plugin->editor_watch_id = anjuta_plugin_add_watch (plugin,
+														   IANJUTA_DOCUMENT_MANAGER_CURRENT_DOCUMENT,
+														   on_editor_added,
+														   on_editor_removed,
+														   NULL);
+	
+	python_plugin->fm_watch_id = anjuta_plugin_add_watch (plugin,
+													   IANJUTA_FILE_MANAGER_SELECTED_FILE,
+													   on_fm_file_added,
+													   on_fm_file_removed,
+													   NULL);
+	return TRUE;
+}
+
+static gboolean
+python_plugin_deactivate (AnjutaPlugin *plugin)
+{
+
+	AnjutaUI *ui;
+	PythonPlugin *lang_plugin;
+	lang_plugin = (PythonPlugin*) (plugin);
+	DEBUG_PRINT ("%s", "PythonPlugin: Dectivating PythonPlugin plugin ...");
+
+	anjuta_shell_remove_widget (plugin->shell, ((PythonPlugin*)plugin)->widget,
+								NULL);
+
+	anjuta_plugin_remove_watch (plugin,
+								lang_plugin->editor_watch_id,
+								TRUE);
+
+
+	ui = anjuta_shell_get_ui (plugin->shell, NULL);
+	anjuta_ui_remove_action_group (ui, ((PythonPlugin*)plugin)->action_group);
+	anjuta_ui_unmerge (ui, ((PythonPlugin*)plugin)->uiid);
+	
+	//lang_plugin->action_group = NULL;
+	//lang_plugin->uiid = 0;
+	DEBUG_PRINT ("%s", "PythonPlugin: Deactivated plugin.");
+	
+	return TRUE;
+}
+
+static void
+python_plugin_finalize (GObject *obj)
+{
+	/* Finalization codes here */
+	G_OBJECT_CLASS (parent_class)->finalize (obj);
+}
+
+static void
+python_plugin_dispose (GObject *obj)
+{
+	/* Disposition codes */
+	G_OBJECT_CLASS (parent_class)->dispose (obj);
+}
+
+static void
+python_plugin_instance_init (GObject *obj)
+{
+	PythonPlugin *plugin = (PythonPlugin*)obj;
+	plugin->action_group = NULL;
+	plugin->current_editor = NULL;
+	plugin->current_language = NULL;
+	plugin->editor_watch_id = 0;
+	plugin->uiid = 0;
+	plugin->assist = NULL;
+
+	plugin->widget = NULL;
+
+}
+
+static void
+python_plugin_class_init (GObjectClass *klass) 
+{
+	AnjutaPluginClass *plugin_class = ANJUTA_PLUGIN_CLASS (klass);
+
+	parent_class = g_type_class_peek_parent (klass);
+
+	plugin_class->activate = python_plugin_activate;
+	plugin_class->deactivate = python_plugin_deactivate;
+	klass->finalize = python_plugin_finalize;
+	klass->dispose = python_plugin_dispose;
+}
+
+
+static void
+ipreferences_merge (IAnjutaPreferences* ipref, AnjutaPreferences* prefs,
+					GError** e)
+{
+	/* Add preferences */
+	GtkBuilder *pref_page = gtk_builder_new();
+	gchar *objects[] = {"python_preferences_dialog", NULL};
+	gtk_builder_add_objects_from_file(pref_page, PROPERTIES_FILE_UI, objects, NULL);
+	anjuta_preferences_add_from_builder (prefs,
+								 pref_page, "preferences", _("Python"),
+								 ICON_FILE);
+	g_object_unref (pref_page);
+}
+
+static void
+ipreferences_unmerge (IAnjutaPreferences* ipref, AnjutaPreferences* prefs,
+					  GError** e)
+{
+	anjuta_preferences_remove_page(prefs, _("Python"));
+}
+
+static void
+ipreferences_iface_init (IAnjutaPreferencesIface* iface)
+{
+	iface->merge = ipreferences_merge;
+	iface->unmerge = ipreferences_unmerge;	
+}
+
+//ANJUTA_PLUGIN_BOILERPLATE (PythonPlugin, python_plugin);
+
+ANJUTA_PLUGIN_BEGIN (PythonPlugin, python_plugin);
+ANJUTA_PLUGIN_ADD_INTERFACE(ipreferences, IANJUTA_TYPE_PREFERENCES);
+ANJUTA_PLUGIN_END;
+
+
+ANJUTA_SIMPLE_PLUGIN (PythonPlugin, python_plugin);
diff --git a/plugins/language-support-python/plugin.h b/plugins/language-support-python/plugin.h
new file mode 100644
index 0000000..e9ad4a4
--- /dev/null
+++ b/plugins/language-support-python/plugin.h
@@ -0,0 +1,87 @@
+/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
+/*
+ * plugin.h
+ * Copyright (C) Ishan Chattopadhyaya 2009 <ichattopadhyaya gmail com>
+ * 
+ * plugin.h is free software.
+ * 
+ * You may 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.
+ * 
+ * plugin.h 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 plugin.h.  If not, write to:
+ * 	The Free Software Foundation, Inc.,
+ * 	51 Franklin Street, Fifth Floor
+ * 	Boston, MA  02110-1301, USA.
+ */
+
+#ifndef _PYTHON_PLUGIN_H_
+#define _PYTHON_PLUGIN_H_
+
+#include <libanjuta/anjuta-plugin.h>
+#include <libanjuta/interfaces/ianjuta-editor.h>
+#include <libanjuta/interfaces/ianjuta-symbol-manager.h>
+#include <libanjuta/interfaces/ianjuta-file-manager.h>
+#include <libanjuta/interfaces/ianjuta-project-manager.h>
+#include <libanjuta/interfaces/ianjuta-file.h>
+#include <libanjuta/anjuta-shell.h>
+
+#include "python-assist.h"
+
+extern GType python_plugin_get_type (GTypeModule *module);
+#define ANJUTA_TYPE_PLUGIN_PYTHON         (python_plugin_get_type (NULL))
+#define ANJUTA_PLUGIN_PYTHON(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), ANJUTA_TYPE_PLUGIN_PYTHON, PythonPlugin))
+#define ANJUTA_PLUGIN_PYTHON_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST ((k), ANJUTA_TYPE_PLUGIN_PYTHON, PythonPluginClass))
+#define ANJUTA_IS_PLUGIN_PYTHON(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), ANJUTA_TYPE_PLUGIN_PYTHON))
+#define ANJUTA_IS_PLUGIN_PYTHON_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), ANJUTA_TYPE_PLUGIN_PYTHON))
+#define ANJUTA_PLUGIN_PYTHON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), ANJUTA_TYPE_PLUGIN_PYTHON, PythonPluginClass))
+
+
+typedef struct _PythonPlugin PythonPlugin;
+typedef struct _PythonPluginClass PythonPluginClass;
+
+struct _PythonPlugin{
+	AnjutaPlugin parent;
+	GtkWidget *widget;
+	gint uiid;
+	GtkActionGroup *action_group;
+
+	AnjutaPreferences *prefs;
+	GObject *current_editor;
+	gboolean support_installed;
+	const gchar *current_language;
+
+	gchar *project_root_directory;
+	gchar *current_editor_filename;
+	gchar *current_fm_filename;
+
+	/* Watches */
+	gint project_root_watch_id;
+	gint editor_watch_id;
+	gint fm_watch_id;
+
+	
+	/* Adaptive indentation parameters */
+	gint param_tab_size;
+	gint param_use_spaces;
+	gint param_statement_indentation;
+	gint param_brace_indentation;
+	gint param_case_indentation;
+	gint param_label_indentation;
+	
+	/* Assist */
+	PythonAssist *assist;
+};
+
+struct _PythonPluginClass{
+	AnjutaPluginClass parent_class;
+};
+
+#endif
diff --git a/plugins/language-support-python/python-assist.c b/plugins/language-support-python/python-assist.c
new file mode 100644
index 0000000..cc873b1
--- /dev/null
+++ b/plugins/language-support-python/python-assist.c
@@ -0,0 +1,1070 @@
+/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
+/*
+ * python-assist.c
+ * Copyright (C) Ishan Chattopadhyaya 2009 <ichattopadhyaya gmail com>
+ * 
+ * anjuta is free software.
+ * 
+ * You may 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.
+ * 
+ * anjuta 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 anjuta.  If not, write to:
+ * 	The Free Software Foundation, Inc.,
+ * 	51 Franklin Street, Fifth Floor
+ * 	Boston, MA  02110-1301, USA.
+ */
+
+#include <ctype.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/stat.h>
+#include <libanjuta/anjuta-debug.h>
+#include <libanjuta/interfaces/ianjuta-file.h>
+#include <libanjuta/interfaces/ianjuta-editor-cell.h>
+#include <libanjuta/interfaces/ianjuta-editor-selection.h>
+#include <libanjuta/interfaces/ianjuta-editor-tip.h>
+#include <libanjuta/interfaces/ianjuta-document.h>
+#include <libanjuta/interfaces/ianjuta-symbol-manager.h>
+#include <libanjuta/interfaces/ianjuta-symbol.h>
+#include <libanjuta/interfaces/ianjuta-document-manager.h>
+#include <libanjuta/interfaces/ianjuta-project-manager.h> 
+#include "python-assist.h"
+#include "python-utils.h"
+
+#define PREF_AUTOCOMPLETE_ENABLE "language.python.code.completion.enable"
+#define PREF_AUTOCOMPLETE_CHOICES "language.python.code.completion.choices"
+#define PREF_AUTOCOMPLETE_SPACE_AFTER_FUNC "language.python.code.completion.space.after.func"
+#define PREF_AUTOCOMPLETE_BRACE_AFTER_FUNC "language.python.code.completion.brace.after.func"
+#define PREF_CALLTIP_ENABLE "language.python.code.calltip.enable"
+#define PREF_INTERPRETER_PATH "language.python.interpreter.path"
+#define PREF_INTERPRETER_PYTHONPATH "language.python.interpreter.PYTHONPATH"
+#define MAX_COMPLETIONS 30
+#define BRACE_SEARCH_LIMIT 500
+#define SCOPE_BRACE_JUMP_LIMIT 50
+
+#define AUTOCOMPLETE_SCRIPT SCRIPTS_DIR"/anjuta-python-autocomplete.py"
+
+
+static void python_assist_iface_init(IAnjutaProviderIface* iface);
+
+//G_DEFINE_TYPE (PythonAssist, python_assist, G_TYPE_OBJECT);
+G_DEFINE_TYPE_WITH_CODE (PythonAssist,
+			 python_assist,
+			 G_TYPE_OBJECT,
+			 G_IMPLEMENT_INTERFACE (IANJUTA_TYPE_PROVIDER,
+			                        python_assist_iface_init))
+
+typedef struct
+{
+	gchar *name;
+	gboolean is_func;
+	IAnjutaSymbolType type;
+} PythonAssistTag;
+
+struct _PythonAssistPriv {
+	AnjutaPreferences *preferences;
+	IAnjutaSymbolManager* isymbol_manager;
+	IAnjutaDocumentManager* idocument_manager;
+	IAnjutaEditorAssist* iassist;
+	IAnjutaEditorTip* itip;
+	IAnjutaEditor* editor;
+
+	const gchar* project_root;
+	const gchar* editor_filename;
+	
+	/* Last used cache */
+	gchar *search_cache;
+	gchar *scope_context_cache;
+	gchar *pre_word;
+	gchar *calltip_context;
+	gint calltip_context_position;
+	
+	GCompletion *completion_cache;
+	gint cache_position;
+	gboolean editor_only;
+	guint word_idle;
+
+	IAnjutaIterable* start_iter;
+};
+
+static gchar* //OK
+completion_function (gpointer data)
+{
+	PythonAssistTag * tag = (PythonAssistTag*) data;
+	return tag->name;
+}
+
+static gint 
+completion_compare (gconstpointer a, gconstpointer b)
+{
+	PythonAssistTag * tag_a = (PythonAssistTag*) a;
+	PythonAssistTag * tag_b = (PythonAssistTag*) b;
+	gint cmp;
+	
+	cmp = strcmp (tag_a->name, tag_b->name);
+	if (cmp == 0) cmp = tag_a->type - tag_b->type;
+	
+	return cmp;
+}
+
+static void 
+python_assist_tag_destroy (PythonAssistTag *tag)
+{
+	g_free (tag->name);
+	g_free (tag);
+}
+
+static gboolean 
+is_scope_context_character (gchar ch)
+{
+	if (g_ascii_isspace (ch))
+		return FALSE;
+	if (g_ascii_isalnum (ch))
+		return TRUE;
+	if (ch == '.')
+		return TRUE;
+	
+	return FALSE;
+}	
+
+static gboolean 
+is_word_character (gchar ch)
+{
+	if (g_ascii_isspace (ch))
+		return FALSE;
+	if (g_ascii_isalnum (ch))
+		return TRUE;
+	if (ch == '_')
+		return TRUE;
+	
+	return FALSE;
+}	
+
+static gchar* 
+python_assist_get_scope_context (IAnjutaEditor* editor,
+								   const gchar *scope_operator,
+								   IAnjutaIterable *iter)
+{
+	IAnjutaIterable* end;
+	gchar ch, *scope_chars = NULL;
+	gboolean out_of_range = FALSE;
+	gboolean scope_chars_found = FALSE;
+	
+	end = ianjuta_iterable_clone (iter, NULL);
+	ianjuta_iterable_next (end, NULL);
+	
+	ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+	
+	while (ch)
+	{
+		if (is_scope_context_character (ch))
+		{
+			scope_chars_found = TRUE;
+		}
+		else if (ch == ')')
+		{
+			if (!python_util_jump_to_matching_brace (iter, ch, SCOPE_BRACE_JUMP_LIMIT))
+			{
+				out_of_range = TRUE;
+				break;
+			}
+		}
+		else
+			break;
+		if (!ianjuta_iterable_previous (iter, NULL))
+		{
+			out_of_range = TRUE;
+			break;
+		}		
+		ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+	}
+	if (scope_chars_found)
+	{
+		IAnjutaIterable* begin;
+		begin = ianjuta_iterable_clone (iter, NULL);
+		if (!out_of_range)
+			ianjuta_iterable_next (begin, NULL);
+		scope_chars = ianjuta_editor_get_text (editor, begin, end, NULL);
+		g_object_unref (begin);
+	}
+	g_object_unref (end);
+	return scope_chars;
+}
+
+static gchar* 
+python_assist_get_pre_word (IAnjutaEditor* editor, IAnjutaIterable *iter)
+{
+	IAnjutaIterable *end;
+	gchar ch, *preword_chars = NULL;
+	gboolean out_of_range = FALSE;
+	gboolean preword_found = FALSE;
+	
+	end = ianjuta_iterable_clone (iter, NULL);
+	ianjuta_iterable_next (end, NULL);
+
+	ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+	
+	while (ch && is_word_character (ch))
+	{
+		preword_found = TRUE;
+		if (!ianjuta_iterable_previous (iter, NULL))
+		{
+			out_of_range = TRUE;
+			break;
+		}
+		ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+	}
+	
+	if (preword_found)
+	{
+		IAnjutaIterable *begin = ianjuta_iterable_clone (iter, NULL);
+		if (!out_of_range)
+			ianjuta_iterable_next (begin, NULL);
+		preword_chars = ianjuta_editor_get_text (editor, begin, end, NULL);
+		g_object_unref (begin);
+	}
+	g_object_unref (end);
+	return preword_chars;
+}
+
+static void 
+python_assist_destroy_completion_cache (PythonAssist *assist,
+										  gboolean cancel_idle)
+{
+	if (assist->priv->search_cache)
+	{
+		g_free (assist->priv->search_cache);
+		assist->priv->search_cache = NULL;
+	}
+	if (assist->priv->scope_context_cache)
+	{
+		g_free (assist->priv->scope_context_cache);
+		assist->priv->scope_context_cache = NULL;
+	} 
+	if (assist->priv->completion_cache)
+	{
+		GList* items = assist->priv->completion_cache->items;
+		if (items)
+		{
+			g_list_foreach (items, (GFunc) python_assist_tag_destroy, NULL);
+			g_completion_clear_items (assist->priv->completion_cache);
+		}
+		g_completion_free (assist->priv->completion_cache);
+		assist->priv->completion_cache = NULL;
+	}
+	if (assist->priv->word_idle > 0 && cancel_idle)
+	{
+		g_source_remove (assist->priv->word_idle);
+		assist->priv->word_idle = 0;
+	}
+}
+
+static gchar* 
+get_tag_name (gchar* tag)
+{
+	gchar tagname[256];
+	gint i;
+
+	for (i=0; i<strlen(tag) && tag[i]!=' '; i++)
+		tagname[i] = tag[i];
+	tagname[i]='\0';
+	return g_strdup(tagname);
+}
+
+static IAnjutaSymbolType 
+get_tag_type (gchar* tag)
+{
+	int i;
+	int startpos;
+	int counter=0;
+	gchar type[20];
+	for (i=0; i<strlen(tag); i++)
+		if (tag[i]==',')
+		{
+			startpos=i+2;
+			break;
+		}
+	if (startpos<strlen(tag))
+	{
+		for (i=startpos; tag[i]!=')' && tag[i]!='\0'; i++)
+		    type[counter++]=tag[i];
+		type[counter]='\0';
+	}
+	if (g_str_equal(type, "function") || g_str_equal(type, "builtin") /*|| g_str_equal(type, "imported")*/)
+		return IANJUTA_SYMBOL_TYPE_FUNCTION;
+	else
+		return IANJUTA_SYMBOL_TYPE_VARIABLE;
+
+}
+
+
+static gboolean 
+is_cache_fresh (IAnjutaEditor *editor, gint editor_position, gint cache_position)
+{
+	gint i;
+
+	if (editor_position<cache_position)
+		return FALSE;
+	IAnjutaIterable *begin = ianjuta_editor_get_position_from_offset (editor, cache_position, NULL);
+	IAnjutaIterable *end = ianjuta_editor_get_position_from_offset (editor, editor_position, NULL);
+	
+	gchar* text = ianjuta_editor_get_text (editor, begin, end, NULL);
+
+	if (!text)
+		return TRUE;
+	
+	for (i=0; i<strlen(text); i++)
+		if (text[i]==' ' || text[i]=='\n' || text[i]=='\r' || text[i]==':' || text[i]=='{' || text[i]=='(' || text[i]==';')
+			return FALSE;
+
+	return TRUE;
+}
+
+
+
+static void free_proposal (IAnjutaEditorAssistProposal* proposal)
+{
+	g_free (proposal->label);
+	g_free(proposal);
+}
+
+void
+python_assist_update_autocomplete (PythonAssist *assist)
+{
+	gint max_completions, length;
+	GList *completion_list;
+
+	gboolean queries_active = FALSE; //FIXME: Remove this variable
+	
+	IAnjutaEditor *editor = (IAnjutaEditor*)assist->priv->editor;
+	int editor_position = ianjuta_editor_get_offset(editor,NULL);
+
+	// if cache is stale
+
+	if (!is_cache_fresh(editor, editor_position, assist->priv->cache_position))
+	{
+		//TODO: python_assist_destroy_completion_cache (assist, TRUE);
+		ianjuta_editor_assist_proposals (assist->priv->iassist, IANJUTA_PROVIDER(assist),
+		                                 NULL, !queries_active, NULL);
+		return;
+	}
+
+	// If cache is empty, show nothing
+	if (assist->priv->completion_cache == NULL)
+	{
+		ianjuta_editor_assist_proposals (assist->priv->iassist, IANJUTA_PROVIDER(assist),
+		                                 NULL, !queries_active, NULL);
+		return;
+	}
+
+	if (assist->priv->pre_word && strlen(assist->priv->pre_word)>0)
+	{
+	    g_completion_complete (assist->priv->completion_cache, assist->priv->pre_word, NULL);
+
+		completion_list = assist->priv->completion_cache->cache;
+	}
+	else
+	{
+		completion_list = assist->priv->completion_cache->items;
+	}
+
+		
+	max_completions =
+		anjuta_preferences_get_int_with_default (assist->priv->preferences,
+												 PREF_AUTOCOMPLETE_CHOICES,
+												 MAX_COMPLETIONS);
+
+	length = g_list_length (completion_list);
+
+	DEBUG_PRINT ("Populating %d proposals", length);
+
+	
+	if (1) //length <= max_completions)
+	{
+		
+		GList *node, *suggestions = NULL;
+		
+		for (node = completion_list; node != NULL; node = g_list_next (node))
+		{
+			PythonAssistTag *tag = node->data;
+			IAnjutaEditorAssistProposal* proposal = g_new0(IAnjutaEditorAssistProposal, 1);
+				
+			if (tag->is_func)
+				proposal->label = g_strdup_printf ("%s()", tag->name);
+			else
+				proposal->label = g_strdup(tag->name);
+				
+			proposal->data = tag;
+			suggestions = g_list_prepend (suggestions, proposal);
+		}
+		suggestions = g_list_reverse (suggestions);
+		ianjuta_editor_assist_proposals (assist->priv->iassist, IANJUTA_PROVIDER(assist),
+		                                 suggestions, !queries_active, NULL);
+		g_list_foreach (suggestions, (GFunc) free_proposal, NULL);
+		g_list_free (suggestions);
+	}
+	else
+	{
+		ianjuta_editor_assist_proposals (assist->priv->iassist, IANJUTA_PROVIDER(assist),
+		                                 NULL, !queries_active, NULL);
+		return;
+	}
+}
+
+// NEW CODE ENDS
+
+/* Returns NULL if creation fails */
+static gchar*
+create_tmp_file (const gchar* source)
+{
+	gchar* tmp_file;
+	gint tmp_fd;
+	GError* err = NULL;
+
+	tmp_fd = g_file_open_tmp (NULL, &tmp_file, &err);
+	if (tmp_fd >= 0)
+	{
+		FILE *rope_file = fdopen (tmp_fd, "w");
+		fprintf (rope_file, "%s", source);
+		fclose (rope_file);
+		close (tmp_fd);
+		return tmp_file;
+	}
+	else
+	{
+		g_warning ("Creating tmp_file failed: %s", err->message);
+		g_error_free (err);
+		return NULL;
+	}	
+}
+
+
+/* This needs to be ported to AnjutaLauncher and made asynchronous. Extra
+ * points for avoiding the intermediate script and using the Python/C API
+ */
+#define BUFFER_SIZE 1024
+gboolean // VERIFY CONTENTS
+python_assist_create_word_completion_cache (PythonAssist *assist)
+{
+	IAnjutaEditor *editor = IANJUTA_EDITOR (assist->priv->iassist);
+	const gchar *cur_filename;
+	gint offset = ianjuta_editor_get_offset(editor, NULL);
+	gchar *project = g_strdup (assist->priv->project_root);
+	gchar *interpreter_path;
+	gchar *ropecommand;
+
+	GList *suggestions = NULL;
+	GList *suggestnow = NULL;
+	gchar *source = ianjuta_editor_get_text_all (editor, NULL);
+	gchar *tmp_file;
+	FILE *rope;
+	gchar tmptag[BUFFER_SIZE];
+
+	cur_filename = assist->priv->editor_filename;
+	if (!project)
+		project = g_get_tmp_dir ();
+	
+	interpreter_path = anjuta_preferences_get (assist->priv->preferences,
+	                                           PREF_INTERPRETER_PATH);
+
+	tmp_file = create_tmp_file (source);
+	g_free (source);
+
+	if (!tmp_file)
+		return FALSE;
+	
+	ropecommand = g_strdup_printf("%s %s -o autocomplete -p \"%s\" -r \"%s\" -s \"%s\" -f %d", 
+	                              interpreter_path, AUTOCOMPLETE_SCRIPT, project, 
+	                              cur_filename, tmp_file, offset);
+
+	g_free (tmp_file);
+	g_free (project);
+	DEBUG_PRINT ("%s\n", ropecommand);
+
+	rope = popen (ropecommand, "r");
+	g_free (ropecommand);
+		
+	while (fgets(tmptag, BUFFER_SIZE, rope) != NULL)
+	{
+		PythonAssistTag *tag = g_new0 (PythonAssistTag, 1);
+		tag->name = g_strdup (get_tag_name(tmptag));
+			
+		tag->type = get_tag_type(tmptag); 
+		tag->is_func = (tag->type == IANJUTA_SYMBOL_TYPE_FUNCTION ||
+						tag->type == IANJUTA_SYMBOL_TYPE_METHOD ||
+						tag->type == IANJUTA_SYMBOL_TYPE_MACRO_WITH_ARG);
+		if (!g_list_find_custom (suggestions, tag, completion_compare))
+		{
+			suggestions = g_list_prepend (suggestions, tag);
+			suggestnow = g_list_append (suggestnow, tag->name);
+		}
+		else
+			g_free (tag);
+	}
+	pclose(rope);
+
+	assist->priv->completion_cache = g_completion_new (completion_function);
+	g_completion_add_items (assist->priv->completion_cache, suggestions);
+	assist->priv->cache_position = offset;
+	assist->priv->search_cache = g_strdup (assist->priv->pre_word);
+
+	return TRUE;
+}
+
+
+
+
+static gchar* //OK
+python_assist_get_calltip_context (PythonAssist *assist,
+                                     IAnjutaIterable *iter)
+{
+	gchar ch;
+	gchar *context = NULL;	
+	gint original_offset = ianjuta_editor_get_offset (IANJUTA_EDITOR (assist->priv->iassist), NULL);
+	
+	ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0, NULL);
+	if (ch == ')')
+	{
+		if (!python_util_jump_to_matching_brace (iter, ')', -1))
+			return NULL;
+		if (!ianjuta_iterable_previous (iter, NULL))
+			return NULL;
+	}
+	if (ch != '(')
+	{
+		if (!python_util_jump_to_matching_brace (iter, ')',
+												   BRACE_SEARCH_LIMIT))
+			return NULL;
+	}
+	
+	/* Skip white spaces */
+	while (ianjuta_iterable_previous (iter, NULL)
+		&& g_ascii_isspace (ianjuta_editor_cell_get_char
+								(IANJUTA_EDITOR_CELL (iter), 0, NULL)))
+		original_offset--;
+
+	context = python_assist_get_scope_context
+		(IANJUTA_EDITOR (assist->priv->iassist), "(", iter);
+
+	/* Point iter to the first character of the scope to align calltip correctly */
+	ianjuta_iterable_next (iter, NULL);
+	
+	return context;
+}
+
+static gint
+python_assist_get_calltip_context_position (PythonAssist *assist,
+                                     IAnjutaIterable *iter)
+{
+	gchar ch;
+	gint final_offset;
+	IAnjutaEditor *editor = IANJUTA_EDITOR (assist->priv->iassist);
+	IAnjutaIterable *current_iter = ianjuta_editor_get_position (editor, NULL);
+	
+	while (ianjuta_iterable_previous (current_iter, NULL))
+	{
+		ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (current_iter), 0, NULL);
+		if (ch == '(')
+		    break;
+	}
+	final_offset = ianjuta_iterable_get_position (current_iter, NULL);
+	
+	return final_offset-1;
+}
+
+/* This needs to be ported to AnjutaLauncher and made asynchronous. Extra
+ * points for avoiding the intermediate script and using the Python/C API
+ */
+static GList*
+python_assist_create_rope_calltips (PythonAssist *assist, IAnjutaIterable* iter)
+{
+	GList* tips = NULL;
+
+	IAnjutaEditor *editor = IANJUTA_EDITOR (assist->priv->iassist);
+	gint offset = assist->priv->calltip_context_position;
+	gchar *interpreter_path;
+	const gchar *cur_filename;
+	gchar *source = ianjuta_editor_get_text_all (editor, NULL);
+	const gchar *project = assist->priv->project_root;
+	gchar *tmp_file;
+	gchar *ropecommand;
+	gchar calltip[BUFFER_SIZE];
+	int counter = 0;
+	FILE *rope;
+
+	cur_filename = assist->priv->editor_filename;
+	if (!project)
+		project = g_get_tmp_dir ();
+	
+	interpreter_path = anjuta_preferences_get (assist->priv->preferences,
+	                                           PREF_INTERPRETER_PATH);
+
+	tmp_file = create_tmp_file (source);
+	g_free (source);
+
+	if (!tmp_file)
+		return NULL;
+	
+	ropecommand = g_strdup_printf("%s %s -o calltip -p \"%s\" -r \"%s\" -s \"%s\" -f %d", 
+								interpreter_path, AUTOCOMPLETE_SCRIPT, project, 
+								cur_filename, tmp_file, offset);
+
+	DEBUG_PRINT ("%s\n", ropecommand);
+
+	g_free (tmp_file);
+
+	rope = popen (ropecommand, "r");
+	while (fgets(calltip, BUFFER_SIZE, rope) != NULL)
+	{
+		calltip[strlen(calltip)-1] = '\0';
+		tips = g_list_append (tips, g_strdup(calltip));
+		counter++;
+		DEBUG_PRINT ("'Calltip: %s\n'", calltip);
+	}
+	pclose(rope);
+
+	DEBUG_PRINT ("%s(): %d\n", "python_assist_create_rope_calltips", assist->priv->calltip_context_position);
+	DEBUG_PRINT("Calltips returned %d suggestions..\n", counter);
+	
+	return tips;
+}
+
+static gboolean
+python_assist_show_calltip (PythonAssist *assist, gchar *call_context, 
+							  IAnjutaIterable *position_iter)
+{	
+	GList *tips = NULL;
+
+	// Add calltips from rope
+	tips = g_list_concat (tips, python_assist_create_rope_calltips (assist, position_iter));
+	
+	if (tips)
+	{	
+		ianjuta_editor_tip_show (IANJUTA_EDITOR_TIP(assist->priv->itip), tips,
+										 position_iter, 
+										 NULL);
+		g_list_foreach (tips, (GFunc) g_free, NULL);
+		g_list_free (tips);
+		return TRUE;
+	}
+	return FALSE;
+}
+
+static void //NEWLY
+python_assist_calltip (PythonAssist *assist)
+{
+	IAnjutaEditor *editor;
+	IAnjutaIterable *iter;
+	IAnjutaIterable *cur_pos;
+
+	DEBUG_PRINT("calltip started\n");
+	
+	editor = IANJUTA_EDITOR (assist->priv->iassist);
+	
+	iter = ianjuta_editor_get_position (editor, NULL);
+	cur_pos = ianjuta_iterable_clone (iter, NULL);
+	ianjuta_iterable_previous (iter, NULL);
+
+	if (1) //calltips)
+	{
+		gchar *call_context = python_assist_get_calltip_context (assist, iter);
+		gint call_context_position = python_assist_get_calltip_context_position (assist, iter);
+
+		DEBUG_PRINT ("CALLTIP CONTEXT: %s at position %d\n", call_context, call_context_position);
+
+		if (call_context)
+		{
+			if(ianjuta_editor_tip_visible (IANJUTA_EDITOR_TIP (editor), NULL))
+			{
+				if (!g_str_equal (call_context, assist->priv->calltip_context))
+				{
+					assist->priv->calltip_context_position = call_context_position;
+					
+					python_assist_show_calltip (assist, call_context, 
+					                              iter);
+					g_free (assist->priv->calltip_context);
+					assist->priv->calltip_context = g_strdup(call_context);
+					
+				}
+			}
+			else
+			{
+				assist->priv->calltip_context_position = call_context_position;
+				python_assist_show_calltip (assist, call_context, 
+				                              iter);
+				g_free (assist->priv->calltip_context);
+				assist->priv->calltip_context = g_strdup(call_context);
+				
+			}
+		}
+		else
+		{
+			//ianjuta_editor_assist_cancel_tips (assist->priv->iassist, NULL);
+			ianjuta_editor_tip_cancel (IANJUTA_EDITOR_TIP(assist->priv->itip), NULL);
+			g_free (assist->priv->calltip_context);
+			assist->priv->calltip_context = NULL;
+			assist->priv->calltip_context_position = -1;
+		}
+		g_free (call_context);
+	}
+	g_object_unref (iter);	
+	DEBUG_PRINT("calltip ended\n");
+}
+
+
+
+
+static void
+on_editor_char_added (IAnjutaEditor *editor, IAnjutaIterable *insert_pos,
+					  gchar ch, PythonAssist *assist)
+{
+	gboolean enable_complete =
+		anjuta_preferences_get_bool_with_default (assist->priv->preferences,
+												 PREF_AUTOCOMPLETE_ENABLE,
+												 TRUE);
+	
+	gboolean enable_calltips =
+		anjuta_preferences_get_bool_with_default (assist->priv->preferences,
+												 PREF_CALLTIP_ENABLE,
+												 TRUE);
+
+	python_assist_calltip (assist);
+
+}
+
+static gboolean
+is_word_or_operator(gchar c)
+{
+	if (is_word_character (c) || c == '.' || c == '-' || c == '>')
+		return TRUE;
+	return FALSE;
+}
+
+
+static IAnjutaIterable*
+python_parse_expression (PythonAssist* assist, IAnjutaIterable* iter, IAnjutaIterable** start_iter)
+{
+	IAnjutaEditor* editor = editor = IANJUTA_EDITOR (assist->priv->iassist);
+	IAnjutaIterable* cur_pos = ianjuta_iterable_clone (iter, NULL);
+	gboolean op_start = FALSE;
+	gboolean ref_start = FALSE;
+	gchar* stmt = NULL;
+
+	DEBUG_PRINT ("parse started\n");
+	
+	/* Search for a operator in the current line */
+	do 
+	{
+		gchar ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL(cur_pos), 0, NULL);
+
+		DEBUG_PRINT ("ch == '%c'", ch);
+		
+		if (!is_word_or_operator (ch))
+			break;
+
+		if (ch == '.' || (op_start && ch == '-') || (ref_start && ch == ':'))
+		{
+			/* Found an operator, get the statement and the pre_word */
+			IAnjutaIterable* pre_word_start = ianjuta_iterable_clone (cur_pos, NULL);
+			IAnjutaIterable* pre_word_end = ianjuta_iterable_clone (iter, NULL);
+			IAnjutaIterable* stmt_end = ianjuta_iterable_clone (pre_word_start, NULL);
+
+			/* Move one character forward so we have the start of the pre_word and
+			 * not the last operator */
+			ianjuta_iterable_next (pre_word_start, NULL);
+			/* If this is a two character operator, skip the second character */
+			if (op_start)
+			{
+				ianjuta_iterable_next (pre_word_start, NULL);
+			}
+			/* Move the end character to be behind the current typed character */
+			ianjuta_iterable_next (pre_word_end, NULL);
+			
+			assist->priv->pre_word = ianjuta_editor_get_text (editor,
+			                                                  pre_word_start, pre_word_end, NULL);
+
+			/* Try to get the name of the variable
+			 * FIXME: What about get_widget()-> for example */
+			while (ianjuta_iterable_previous (cur_pos, NULL))
+			{
+				gchar word_ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL(cur_pos), 0, NULL);
+				if (!is_word_character (word_ch))
+					break;
+			}
+			ianjuta_iterable_next (cur_pos, NULL);
+			stmt = ianjuta_editor_get_text (editor,
+			                                cur_pos, stmt_end, NULL);
+			*start_iter = pre_word_start;
+			g_object_unref (stmt_end);
+			DEBUG_PRINT("parse ended\n");
+			return NULL;
+		}
+	}
+	while (ianjuta_iterable_previous (cur_pos, NULL));
+	DEBUG_PRINT("parse ended\n");
+	return NULL;
+}
+
+static gchar
+get_previous_character(IAnjutaEditor* editor)
+{
+	IAnjutaIterable *cur_pos = ianjuta_editor_get_position (editor, NULL);
+	
+	gchar ch;
+
+		ianjuta_iterable_previous (cur_pos, NULL);
+	ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL(cur_pos), 0, NULL);
+
+	DEBUG_PRINT("Previous char is: %c\n", ch);
+	return ch; 
+}
+
+static void
+python_assist_populate (IAnjutaProvider* self, IAnjutaIterable* iter, GError** e)
+{
+	PythonAssist* assist = PYTHON_ASSIST (self);
+	IAnjutaEditor *editor;
+	gboolean autocomplete = anjuta_preferences_get_bool_with_default (assist->priv->preferences,
+	                                                                  PREF_AUTOCOMPLETE_ENABLE,
+	                                                                  TRUE);	
+	editor = IANJUTA_EDITOR (assist->priv->iassist);
+
+	g_free (assist->priv->pre_word);
+	assist->priv->pre_word = NULL;
+
+	ianjuta_iterable_previous (iter, NULL);
+	
+	if (autocomplete)
+	{
+		/* Check for member completion */
+		IAnjutaIterable* start_iter = NULL;
+
+		python_parse_expression (assist, iter, &start_iter);
+
+		if (start_iter && assist->priv->pre_word && assist->priv->search_cache &&
+		    g_str_has_prefix (assist->priv->pre_word, assist->priv->search_cache))
+		{
+			if (assist->priv->start_iter)
+				g_object_unref (assist->priv->start_iter);
+			assist->priv->start_iter = start_iter;
+			python_assist_update_autocomplete (assist);
+
+			return;
+		}
+
+		/* Normal autocompletion */
+		/* Moved iter to begin of word */		
+		DEBUG_PRINT ("NORMAL\n");
+		assist->priv->pre_word = python_assist_get_pre_word (editor, iter);
+		DEBUG_PRINT ("Pre word: %s\n", assist->priv->pre_word);
+		
+		if (!assist->priv->search_cache || !assist->priv->pre_word ||
+		    !g_str_has_prefix (assist->priv->pre_word, assist->priv->search_cache))
+		{
+			if (assist->priv->start_iter)
+				g_object_unref (assist->priv->start_iter);
+			assist->priv->start_iter = ianjuta_iterable_clone(iter, NULL);
+			ianjuta_iterable_next (IANJUTA_ITERABLE (assist->priv->start_iter), NULL);
+			python_assist_create_word_completion_cache(assist);
+
+			// If previous character isn't a <dot>, clear cache
+			if (!is_scope_context_character (get_previous_character(editor)))
+				python_assist_destroy_completion_cache (assist, TRUE);
+				python_assist_update_autocomplete (assist);
+			    
+			return;
+		}
+		else
+		{
+			python_assist_update_autocomplete (assist);
+			return;
+		}
+	}
+	/* Keep completion system happy */
+	ianjuta_editor_assist_proposals (assist->priv->iassist,
+	                                 IANJUTA_PROVIDER(self),
+	                                 NULL, TRUE, NULL);
+} 
+
+
+
+static void 
+python_assist_activate (IAnjutaProvider* self, IAnjutaIterable* iter, gpointer data, GError** e)
+{
+	PythonAssist* assist = PYTHON_ASSIST(self);
+	PythonAssistTag *tag;
+	GString *assistance;
+	IAnjutaEditor *te;
+	gboolean add_space_after_func = FALSE;
+	gboolean add_brace_after_func = FALSE;
+	
+	DEBUG_PRINT ("assist-chosen: \n");
+	
+	tag = data;	
+	assistance = g_string_new (tag->name);
+	
+	if (tag->is_func)
+	{
+		add_space_after_func =
+			anjuta_preferences_get_bool_with_default (assist->priv->preferences,
+													 PREF_AUTOCOMPLETE_SPACE_AFTER_FUNC,
+													 TRUE);
+		add_brace_after_func =
+			anjuta_preferences_get_bool_with_default (assist->priv->preferences,
+													 PREF_AUTOCOMPLETE_BRACE_AFTER_FUNC,
+													 TRUE);
+		if (add_space_after_func)
+			g_string_append (assistance, " ");
+		
+		if (add_brace_after_func)
+			g_string_append (assistance, "(");
+	}
+	
+	te = IANJUTA_EDITOR (assist->priv->iassist);
+		
+	ianjuta_document_begin_undo_action (IANJUTA_DOCUMENT (te), NULL);
+	
+	if (ianjuta_iterable_compare(iter, assist->priv->start_iter, NULL) != 0)
+	{
+		ianjuta_editor_selection_set (IANJUTA_EDITOR_SELECTION (te),
+									  assist->priv->start_iter, iter, FALSE, NULL);
+		ianjuta_editor_selection_replace (IANJUTA_EDITOR_SELECTION (te),
+										  assistance->str, -1, NULL);
+	}
+	else
+	{
+		ianjuta_editor_insert (te, iter, assistance->str, -1, NULL);
+	}
+	ianjuta_document_end_undo_action (IANJUTA_DOCUMENT (te), NULL);
+
+	DEBUG_PRINT("Reached here safely");
+	
+	/* Show calltip if we completed function */
+	if (add_brace_after_func)
+		python_assist_calltip (assist);
+	
+	g_string_free (assistance, TRUE);
+}
+
+static IAnjutaIterable*
+python_assist_get_start_iter (IAnjutaProvider* provider, GError** e)
+{ 
+	PythonAssist* assist = PYTHON_ASSIST (provider);
+	return assist->priv->start_iter;
+}
+
+static const gchar*
+python_assist_get_name (IAnjutaProvider* provider, GError** e)
+{
+	return _("Python");
+}
+
+static void 
+python_assist_install (PythonAssist *assist, IAnjutaEditor *ieditor)
+{
+	g_return_if_fail (assist->priv->iassist == NULL);
+
+	if (IANJUTA_IS_EDITOR_ASSIST (ieditor))
+	{
+		assist->priv->iassist = IANJUTA_EDITOR_ASSIST (ieditor);
+		ianjuta_editor_assist_add (IANJUTA_EDITOR_ASSIST (ieditor), IANJUTA_PROVIDER(assist), NULL);
+	}
+	else
+	{
+		assist->priv->iassist = NULL;
+	}
+
+	if (IANJUTA_IS_EDITOR_TIP (ieditor))
+	{
+		/*FIXME*/ assist->priv->itip = IANJUTA_EDITOR_TIP (ieditor);
+	
+		g_signal_connect (ieditor, "char-added",
+						  G_CALLBACK (on_editor_char_added), assist);
+		/*g_signal_connect (assist, "backspace",
+						  G_CALLBACK (on_editor_backspace), assist);*/
+
+	}
+	else
+	{
+		assist->priv->itip = NULL;
+	}
+}
+
+static void
+python_assist_uninstall (PythonAssist *assist)
+{
+	g_return_if_fail (assist->priv->iassist != NULL);
+
+	DEBUG_PRINT ("Python uninstall called\n");
+	
+	g_signal_handlers_disconnect_by_func (assist->priv->iassist, G_CALLBACK (on_editor_char_added), assist);
+
+	ianjuta_editor_assist_remove (assist->priv->iassist, IANJUTA_PROVIDER(assist), NULL);
+
+	assist->priv->iassist = NULL;
+}
+
+static void
+python_assist_init (PythonAssist *assist)
+{
+	assist->priv = g_new0 (PythonAssistPriv, 1);
+}
+
+static void
+python_assist_finalize (GObject *object)
+{
+	PythonAssist *assist = PYTHON_ASSIST (object);
+	python_assist_uninstall (assist);
+	python_assist_destroy_completion_cache (assist, TRUE);
+	if (assist->priv->calltip_context)
+	{
+		g_free (assist->priv->calltip_context);
+		assist->priv->calltip_context = NULL;
+	}
+	g_free (assist->priv);
+	G_OBJECT_CLASS (python_assist_parent_class)->finalize (object);
+}
+
+static void
+python_assist_class_init (PythonAssistClass *klass)
+{
+	GObjectClass* object_class = G_OBJECT_CLASS (klass);
+
+	object_class->finalize = python_assist_finalize;
+}
+
+PythonAssist * 
+python_assist_new (IAnjutaEditorAssist *iassist,
+                   IAnjutaSymbolManager *isymbol_manager,
+                   IAnjutaDocumentManager *idocument_manager,
+                   AnjutaPreferences *prefs,
+                   const gchar *editor_filename,
+                   const gchar *project_root)
+{
+	PythonAssist *assist = g_object_new (TYPE_PYTHON_ASSIST, NULL);
+	assist->priv->isymbol_manager = isymbol_manager;
+	assist->priv->idocument_manager = idocument_manager;
+	assist->priv->editor_filename = editor_filename;
+	assist->priv->preferences = prefs;
+	assist->priv->project_root = project_root;
+	assist->priv->editor=(IAnjutaEditor*)iassist;
+	python_assist_install (assist, IANJUTA_EDITOR (iassist));
+	DEBUG_PRINT("New done\n");
+	return assist;
+}
+
+static void python_assist_iface_init(IAnjutaProviderIface* iface)
+{
+	iface->populate = python_assist_populate;
+	iface->get_start_iter = python_assist_get_start_iter;
+	iface->activate = python_assist_activate;
+	iface->get_name = python_assist_get_name;
+}
diff --git a/plugins/language-support-python/python-assist.h b/plugins/language-support-python/python-assist.h
new file mode 100644
index 0000000..bd84b7d
--- /dev/null
+++ b/plugins/language-support-python/python-assist.h
@@ -0,0 +1,86 @@
+/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
+/*
+ * python-assist.h
+ * Copyright (C) Ishan Chattopadhyaya 2009 <ichattopadhyaya gmail com>
+ * 
+ * anjuta is free software.
+ * 
+ * You may 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.
+ * 
+ * anjuta 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 anjuta.  If not, write to:
+ * 	The Free Software Foundation, Inc.,
+ * 	51 Franklin Street, Fifth Floor
+ * 	Boston, MA  02110-1301, USA.
+ */
+
+#ifndef _PYTHON_ASSIST_H_
+#define _PYTHON_ASSIST_H_
+
+#include <glib-object.h>
+#include <libanjuta/anjuta-preferences.h>
+#include <libanjuta/interfaces/ianjuta-editor-assist.h>
+#include <libanjuta/interfaces/ianjuta-symbol-manager.h>
+#include <libanjuta/interfaces/ianjuta-project-manager.h>
+
+G_BEGIN_DECLS
+
+#define TYPE_PYTHON_ASSIST             (python_assist_get_type ())
+#define PYTHON_ASSIST(obj)             (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PYTHON_ASSIST, PythonAssist))
+#define PYTHON_ASSIST_CLASS(klass)     (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PYTHON_ASSIST, PythonAssistClass))
+#define IS_PYTHON_ASSIST(obj)          (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PYTHON_ASSIST))
+#define IS_PYTHON_ASSIST_CLASS(klass)  (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PYTHON_ASSIST))
+#define PYTHON_ASSIST_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PYTHON_ASSIST, PythonAssistClass))
+
+typedef struct _PythonAssistClass PythonAssistClass;
+typedef struct _PythonAssist PythonAssist;
+typedef struct _PythonAssistContext PythonAssistContext;
+typedef struct _PythonAssistPriv PythonAssistPriv;
+
+struct _PythonAssistContext {
+	GCompletion* completion;
+	GList* tips;
+	gint position;
+};
+
+struct _PythonAssistClass
+{
+	GObjectClass parent_class;
+};
+
+struct _PythonAssist
+{
+	GObject parent_instance;
+	PythonAssistPriv *priv;
+};
+
+GType python_assist_get_type (void) G_GNUC_CONST;
+
+PythonAssist *python_assist_new (IAnjutaEditorAssist *assist,
+                                 IAnjutaSymbolManager *isymbol_manager,
+                                 IAnjutaDocumentManager *idocument_manager,
+                                 AnjutaPreferences *preferences,
+                                 const gchar *editor_filename,
+                                 const gchar *project_root);
+
+
+void python_assist_check (PythonAssist *assist, gboolean autocomplete,
+								gboolean calltips, gboolean backspace);
+gboolean
+python_assist_create_word_completion_cache (PythonAssist *assist);
+
+void
+python_assist_update_autocomplete (PythonAssist *assist);
+
+
+G_END_DECLS
+
+#endif /* _PYTHON_ASSIST_H_ */
diff --git a/plugins/language-support-python/python-plugin-properties.ui b/plugins/language-support-python/python-plugin-properties.ui
new file mode 100755
index 0000000..ed14107
--- /dev/null
+++ b/plugins/language-support-python/python-plugin-properties.ui
@@ -0,0 +1,520 @@
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkWindow" id="window1">
+    <property name="title" translatable="yes">window1</property>
+    <child>
+      <object class="GtkHBox" id="top_widget">
+        <property name="visible">True</property>
+        <child>
+          <object class="GtkScrolledWindow" id="scrolledwindow1">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="hscrollbar_policy">automatic</property>
+            <property name="vscrollbar_policy">automatic</property>
+            <property name="shadow_type">in</property>
+            <child>
+              <object class="GtkTextView" id="textview1">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+  </object>
+  <object class="GtkWindow" id="python_preferences_dialog">
+    <property name="title" translatable="yes">window1</property>
+    <child>
+      <object class="GtkNotebook" id="preferences">
+        <property name="visible">True</property>
+        <property name="can_focus">True</property>
+        <child>
+          <object class="GtkFrame" id="page2">
+            <property name="visible">True</property>
+            <property name="border_width">5</property>
+            <property name="label_xalign">0</property>
+            <property name="shadow_type">none</property>
+            <child>
+              <object class="GtkVBox" id="vbox1111">
+                <property name="visible">True</property>
+                <property name="spacing">5</property>
+                <child>
+                  <object class="GtkTable" id="table15">
+                    <property name="visible">True</property>
+                    <property name="border_width">10</property>
+                    <property name="n_rows">3</property>
+                    <property name="column_spacing">5</property>
+                    <property name="row_spacing">5</property>
+                    <child>
+                      <object class="GtkCheckButton" id="preferences_toggle:bool:1:1:language.python.indent.automatic">
+                        <property name="label" translatable="yes">Enable smart indentation</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="x_options"></property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="preferences_toggle:bool:1:1:language.python.indent.adaptive">
+                        <property name="label" translatable="yes">Enable adaptive indentation</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options"></property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="preferences_toggle:bool:1:1:language.python.indent.tab.indents">
+                        <property name="label" translatable="yes">Pressing tab indents</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
+                        <property name="x_options"></property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame48">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment5">
+                        <property name="visible">True</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkTable" id="table18">
+                            <property name="visible">True</property>
+                            <property name="n_rows">2</property>
+                            <property name="n_columns">2</property>
+                            <property name="column_spacing">5</property>
+                            <property name="row_spacing">5</property>
+                            <child>
+                              <object class="GtkSpinButton" id="preferences_spin:int:0:1:language.python.indent.brace.size">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="climb_rate">1</property>
+                                <property name="numeric">True</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="x_options"></property>
+                                <property name="y_options"></property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkSpinButton" id="preferences_spin:int:4:1:language.python.indent.statement.size">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="climb_rate">1</property>
+                                <property name="numeric">True</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="x_options"></property>
+                                <property name="y_options"></property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label12353">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Brace indentation size in spaces:</property>
+                              </object>
+                              <packing>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="x_options"></property>
+                                <property name="y_options"></property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label123">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Statement indentation size in spaces:</property>
+                              </object>
+                              <packing>
+                                <property name="x_options"></property>
+                                <property name="y_options"></property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label12355">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Indentation parameters&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+            </child>
+            <child type="label">
+              <object class="GtkLabel" id="label12321">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">&lt;b&gt;Smart Indentation&lt;/b&gt;</property>
+                <property name="use_markup">True</property>
+              </object>
+            </child>
+          </object>
+        </child>
+        <child type="tab">
+          <object class="GtkLabel" id="label12351">
+            <property name="visible">True</property>
+            <property name="label" translatable="yes">Smart Indentation</property>
+          </object>
+          <packing>
+            <property name="tab_fill">False</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkVBox" id="vbox1">
+            <property name="visible">True</property>
+            <child>
+              <object class="GtkFrame" id="frame45">
+                <property name="visible">True</property>
+                <property name="border_width">5</property>
+                <property name="label_xalign">0</property>
+                <property name="label_yalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkVBox" id="vbox1118">
+                    <property name="visible">True</property>
+                    <property name="spacing">5</property>
+                    <child>
+                      <object class="GtkHBox" id="hbox1122">
+                        <property name="visible">True</property>
+                        <property name="border_width">5</property>
+                        <property name="spacing">5</property>
+                        <child>
+                          <object class="GtkSpinButton" id="preferences_spin:int:10:0:language.python.code.completion.choices">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="climb_rate">1</property>
+                            <property name="numeric">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label1295">
+                            <property name="visible">True</property>
+                            <property name="xalign">0</property>
+                            <property name="yalign">0</property>
+                            <property name="label" translatable="yes">Autocompletion pop up choices</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="preferences_toggle:bool:1:1:language.python.code.completion.enable">
+                        <property name="label" translatable="yes">Enable code completion</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="border_width">5</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="preferences_toggle:bool:1:1:language.python.code.completion.space.after.func">
+                        <property name="label" translatable="yes">Add a space after function call autocompletion</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="border_width">5</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="position">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="preferences_toggle:bool:1:1:language.python.code.completion.brace.after.func">
+                        <property name="label" translatable="yes">Add '(' after function call autocompletion</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="border_width">5</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="position">3</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="preferences_toggle:bool:0:1:language.python.brace.autocompletion">
+                        <property name="label" translatable="yes">Enable smart brace completion</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="border_width">5</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="position">4</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label12334">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Autocompletion (C/C++/Java only)&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFrame" id="frame1">
+                <property name="visible">True</property>
+                <property name="border_width">5</property>
+                <property name="label_xalign">0</property>
+                <property name="label_yalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment1">
+                    <property name="visible">True</property>
+                    <child>
+                      <object class="GtkHBox" id="hbox1">
+                        <property name="visible">True</property>
+                        <child>
+                          <object class="GtkCheckButton" id="preferences_toggle:bool:1:1:language.python.code.calltip.enable">
+                            <property name="label" translatable="yes">Show calltips</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="border_width">5</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label2">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Calltips&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child type="tab">
+          <object class="GtkLabel" id="label1">
+            <property name="visible">True</property>
+            <property name="label" translatable="yes">Autocomplete</property>
+          </object>
+          <packing>
+            <property name="position">1</property>
+            <property name="tab_fill">False</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkFrame" id="page1">
+            <property name="visible">True</property>
+            <property name="border_width">5</property>
+            <property name="label_xalign">0</property>
+            <property name="shadow_type">none</property>
+            <child>
+              <object class="GtkVBox" id="vbox2">
+                <property name="visible">True</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">5</property>
+                <child>
+                  <object class="GtkTable" id="table1">
+                    <property name="visible">True</property>
+                    <property name="border_width">10</property>
+                    <property name="n_rows">3</property>
+                    <property name="column_spacing">5</property>
+                    <property name="row_spacing">5</property>
+                    <child>
+                      <object class="GtkHBox" id="hbox2">
+                        <property name="visible">True</property>
+                        <child>
+                          <object class="GtkLabel" id="label8">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">Path: </property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkComboBoxEntry" id="comboboxentry1">
+                            <property name="visible">True</property>
+                            <child internal-child="entry">
+                              <object class="GtkEntry" id="preferences_entry:text:/usr/bin/python:0:language.python.interpreter.path">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame2">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment2">
+                        <property name="visible">True</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <placeholder/>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label6">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Rope Options&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+            </child>
+            <child type="label">
+              <object class="GtkLabel" id="label7">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">&lt;b&gt;Interpreter&lt;/b&gt;</property>
+                <property name="use_markup">True</property>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="position">2</property>
+          </packing>
+        </child>
+        <child type="tab">
+          <object class="GtkLabel" id="label5">
+            <property name="visible">True</property>
+            <property name="label" translatable="yes">Environment</property>
+          </object>
+          <packing>
+            <property name="position">2</property>
+            <property name="tab_fill">False</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+  </object>
+</interface>
diff --git a/plugins/language-support-python/python-plugin.plugin.in b/plugins/language-support-python/python-plugin.plugin.in
new file mode 100755
index 0000000..e382b22
--- /dev/null
+++ b/plugins/language-support-python/python-plugin.plugin.in
@@ -0,0 +1,5 @@
+[Anjuta Plugin]
+Location=python_plugin:PythonPlugin
+Icon=python_plugin.png
+Name=Python support Plugin
+Description=Python support plugin for code completion, auto indentation etc.
diff --git a/plugins/language-support-python/python-plugin.xml b/plugins/language-support-python/python-plugin.xml
new file mode 100644
index 0000000..584ca5d
--- /dev/null
+++ b/plugins/language-support-python/python-plugin.xml
@@ -0,0 +1,24 @@
+<!--*- xml -*-->
+<ui>
+	<menubar name="MenuMain">
+		<menu name="MenuFile" action="ActionMenuFile">
+			<placeholder name="PlaceholderFileMenus">
+				<menuitem name="SampleAction" action="ActionFileSample" />
+			</placeholder>
+		</menu>
+	</menubar>
+	<menubar name="MenuMain">
+		<menu name="MenuEdit" action="ActionMenuEdit">
+			<placeholder name="PlaceholderOperationMenus">
+				<separator name="separator1"/>
+				<menuitem name="Autocomplete" action="ActionEditAutocomplete" />
+				<menuitem name="AutoindentAction" action="ActionEditAutoindent" />
+			</placeholder>
+		</menu>
+	</menubar>
+	<popup name="PopupDocumentManager">
+		<separator name="separator1"/>
+		<menuitem name="Swap" action="ActionFileSwap" />
+		<separator name="separator2"/>
+	</popup>
+</ui>
diff --git a/plugins/language-support-python/python-utils.c b/plugins/language-support-python/python-utils.c
new file mode 100644
index 0000000..d593602
--- /dev/null
+++ b/plugins/language-support-python/python-utils.c
@@ -0,0 +1,78 @@
+/*-*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
+/*
+    cpp-java-utils.c
+    Copyright (C) 2000 Naba Kumar  <naba gnome org>
+
+    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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+*/
+
+#include <libanjuta/interfaces/ianjuta-editor-cell.h>
+
+#include "python-utils.h"
+
+#define LEFT_BRACE(ch) (ch == ')'? '(' : (ch == '}'? '{' : (ch == ']'? '[' : ch)))  
+
+gboolean
+python_util_jump_to_matching_brace (IAnjutaIterable *iter, gchar brace, gint limit)
+{
+	gchar point_ch = brace;
+	gint cur_iteration = 0;
+	gboolean use_limit = (limit > 0);
+	GString *braces_stack = g_string_new ("");
+	
+	g_return_val_if_fail (point_ch == ')' || point_ch == ']' ||
+						  point_ch == '}', FALSE);
+	
+	/* DEBUG_PRINT ("%s", "Matching brace being"); */
+	/* Push brace */
+	g_string_prepend_c (braces_stack, point_ch);
+	
+	while (ianjuta_iterable_previous (iter, NULL))
+	{
+		/* Check limit */
+		cur_iteration++;
+		if (use_limit && cur_iteration > limit)
+			break;
+		
+		/* Skip comments and strings */
+		IAnjutaEditorAttribute attrib =
+			ianjuta_editor_cell_get_attribute (IANJUTA_EDITOR_CELL (iter), NULL);
+		if (attrib == IANJUTA_EDITOR_COMMENT || attrib == IANJUTA_EDITOR_STRING)
+			continue;
+		
+		/* DEBUG_PRINT ("%s", "point ch = %c", point_ch); */
+		point_ch = ianjuta_editor_cell_get_char (IANJUTA_EDITOR_CELL (iter), 0,
+												 NULL);
+		if (point_ch == ')' || point_ch == ']' || point_ch == '}')
+		{	
+			/* Push brace */
+			g_string_prepend_c (braces_stack, point_ch);
+			continue;
+		}
+		if (point_ch == LEFT_BRACE (braces_stack->str[0]))
+		{
+			/* Pop brace */
+			g_string_erase (braces_stack, 0, 1);
+		}
+		/* Bail out if there is no more in stack */
+		if (braces_stack->str[0] == '\0')
+		{
+			/* DEBUG_PRINT ("%s", "Matching brace end -- found"); */
+			return TRUE;
+		}
+	}
+	/* DEBUG_PRINT ("%s", "Matching brace end -- not found"); */
+	return FALSE;
+}
diff --git a/plugins/language-support-python/python-utils.h b/plugins/language-support-python/python-utils.h
new file mode 100644
index 0000000..a87f5f1
--- /dev/null
+++ b/plugins/language-support-python/python-utils.h
@@ -0,0 +1,28 @@
+/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
+/*
+    cpp-java-utils.h
+    Copyright (C) 2000 Naba Kumar  <naba gnome org>
+
+    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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+*/
+
+#ifndef _CPP_JAVA_UTILS_H_
+#define _CPP_JAVA_UTILS_H_
+
+#include <libanjuta/interfaces/ianjuta-iterable.h>
+
+gboolean python_util_jump_to_matching_brace (IAnjutaIterable *iter,
+											   gchar brace, gint limit);
+#endif
diff --git a/plugins/language-support-python/python_plugin.png b/plugins/language-support-python/python_plugin.png
new file mode 100644
index 0000000..19751f9
Binary files /dev/null and b/plugins/language-support-python/python_plugin.png differ



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]