gedit-developer-plugins-0.5.15/0000775000175000017500000000000011767134173013355 500000000000000gedit-developer-plugins-0.5.15/po/0000775000175000017500000000000011767134173013773 500000000000000gedit-developer-plugins-0.5.15/po/ChangeLog0000644000175000017500000000000011264153300015432 00000000000000gedit-developer-plugins-0.5.15/po/Makefile.in.in0000644000175000017500000001604611767134102016362 00000000000000# Makefile for program source directory in GNU NLS utilities package. # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper # Copyright (C) 2004-2008 Rodney Dawes # # This file may be copied and used freely without restrictions. It may # be used in projects which are not available under a GNU Public License, # but which still want to provide support for the GNU gettext functionality. # # - Modified by Owen Taylor to use GETTEXT_PACKAGE # instead of PACKAGE and to look for po2tbl in ./ not in intl/ # # - Modified by jacob berkman to install # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize # # - Modified by Rodney Dawes for use with intltool # # We have the following line for use by intltoolize: # INTLTOOL_MAKEFILE GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ PACKAGE = @PACKAGE@ VERSION = @VERSION@ SHELL = @SHELL@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = @top_builddir@ VPATH = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ datadir = @datadir@ datarootdir = @datarootdir@ libdir = @libdir@ DATADIRNAME = @DATADIRNAME@ itlocaledir = $(prefix)/$(DATADIRNAME)/locale subdir = po install_sh = @install_sh@ # Automake >= 1.8 provides @mkdir_p@. # Until it can be supposed, use the safe fallback: mkdir_p = $(install_sh) -d INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ XGETTEXT = @XGETTEXT@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ MSGMERGE = INTLTOOL_EXTRACT="$(INTLTOOL_EXTRACT)" XGETTEXT="$(XGETTEXT)" srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist GENPOT = INTLTOOL_EXTRACT="$(INTLTOOL_EXTRACT)" XGETTEXT="$(XGETTEXT)" srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot ALL_LINGUAS = @ALL_LINGUAS@ PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi) USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi) USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done) POFILES=$(shell LINGUAS="$(PO_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done) DISTFILES = Makefile.in.in POTFILES.in $(POFILES) EXTRA_DISTFILES = ChangeLog POTFILES.skip Makevars LINGUAS POTFILES = \ # This comment gets stripped out CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done) .SUFFIXES: .SUFFIXES: .po .pox .gmo .mo .msg .cat AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ INTLTOOL_V_MSGFMT = $(INTLTOOL__v_MSGFMT_$(V)) INTLTOOL__v_MSGFMT_= $(INTLTOOL__v_MSGFMT_$(AM_DEFAULT_VERBOSITY)) INTLTOOL__v_MSGFMT_0 = @echo " MSGFMT" $@; .po.pox: $(MAKE) $(GETTEXT_PACKAGE).pot $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox .po.mo: $(INTLTOOL_V_MSGFMT)$(MSGFMT) -o $@ $< .po.gmo: $(INTLTOOL_V_MSGFMT)file=`echo $* | sed 's,.*/,,'`.gmo \ && rm -f $$file && $(GMSGFMT) -o $$file $< .po.cat: sed -f ../intl/po2msg.sed < $< > $*.msg \ && rm -f $@ && gencat $@ $*.msg all: all-@USE_NLS@ all-yes: $(CATALOGS) all-no: $(GETTEXT_PACKAGE).pot: $(POTFILES) $(GENPOT) install: install-data install-data: install-data-@USE_NLS@ install-data-no: all install-data-yes: all linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \ $(mkdir_p) $$dir; \ if test -r $$lang.gmo; then \ $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \ else \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $(srcdir)/$$lang.gmo as" \ "$$dir/$(GETTEXT_PACKAGE).mo"; \ fi; \ if test -r $$lang.gmo.m; then \ $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ if test -r $(srcdir)/$$lang.gmo.m ; then \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \ $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $(srcdir)/$$lang.gmo.m as" \ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ true; \ fi; \ fi; \ done # Empty stubs to satisfy archaic automake needs dvi info ctags tags CTAGS TAGS ID: # Define this as empty until I found a useful application. install-exec installcheck: uninstall: linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ done check: all $(GETTEXT_PACKAGE).pot rm -f missing notexist srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m if [ -r missing -o -r notexist ]; then \ exit 1; \ fi mostlyclean: rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp rm -f .intltool-merge-cache clean: mostlyclean distclean: clean rm -f Makefile Makefile.in POTFILES stamp-it rm -f *.mo *.msg *.cat *.cat.m *.gmo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f Makefile.in.in distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) dist distdir: $(DISTFILES) dists="$(DISTFILES)"; \ extra_dists="$(EXTRA_DISTFILES)"; \ for file in $$extra_dists; do \ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \ done; \ for file in $$dists; do \ test -f $$file || file="$(srcdir)/$$file"; \ ln $$file $(distdir) 2> /dev/null \ || cp -p $$file $(distdir); \ done update-po: Makefile $(MAKE) $(GETTEXT_PACKAGE).pot tmpdir=`pwd`; \ linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ echo "$$lang:"; \ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \ if $$result; then \ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ exit 1; \ fi; \ fi; \ else \ echo "msgmerge for $$lang.gmo failed!"; \ rm -f $$tmpdir/$$lang.new.po; \ fi; \ done Makefile POTFILES: stamp-it @if test ! -f $@; then \ rm -f stamp-it; \ $(MAKE) stamp-it; \ fi stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \ $(SHELL) ./config.status # Tell versions [3.59,3.63) of GNU make not to export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gedit-developer-plugins-0.5.15/po/POTFILES.in0000644000175000017500000000105411705064757015470 00000000000000# List of source files containing translatable strings. # Please keep this file sorted alphabetically. [encoding: UTF-8] language-specs/doctest.lang language-specs/pagetemplate.lang plugins/gdpbzr.plugin.desktop.in plugins/gdp/bzr.py plugins/gdpbzr.py plugins/gdp/complete.ui plugins/gdpfind.plugin.desktop.in plugins/gdpfind.py plugins/gdp/find.py plugins/gdp/find.ui plugins/gdpformat.plugin.desktop.in plugins/gdp/format.py plugins/gdpformat.py plugins/gdp/format.ui plugins/gdpcomplete.plugin.desktop.in plugins/gdpcomplete.py plugins/gdp/complete.py gedit-developer-plugins-0.5.15/po/POTFILES.skip0000644000175000017500000000030611632143016016010 00000000000000# List of source files containing translatable strings that should be skipped. # Please keep this file sorted alphabetically. contrib/pyflakes/scripts/pyflakes.py gedit/__init__.py testing/Gedit.py gedit-developer-plugins-0.5.15/po/LINGUAS0000644000175000017500000000000011264153300014705 00000000000000gedit-developer-plugins-0.5.15/py-compile0000755000175000017500000001040011767134104015264 00000000000000#!/bin/sh # py-compile - Compile a Python program scriptversion=2011-06-08.12; # UTC # Copyright (C) 2000, 2001, 2003, 2004, 2005, 2008, 2009, 2011 Free # Software Foundation, Inc. # 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, 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, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # This file is maintained in Automake, please report # bugs to or send patches to # . if [ -z "$PYTHON" ]; then PYTHON=python fi me=py-compile usage_error () { echo "$me: $*" >&2 echo "Try \`$me --help' for more information." >&2 exit 1 } basedir= destdir= while test $# -ne 0; do case "$1" in --basedir) if test $# -lt 2; then usage_error "option '--basedir' requires an argument" else basedir=$2 fi shift ;; --destdir) if test $# -lt 2; then usage_error "option '--destdir' requires an argument" else destdir=$2 fi shift ;; -h|--help) cat <<\EOF Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] FILES..." Byte compile some python scripts FILES. Use --destdir to specify any leading directory path to the FILES that you don't want to include in the byte compiled file. Specify --basedir for any additional path information you do want to be shown in the byte compiled file. Example: py-compile --destdir /tmp/pkg-root --basedir /usr/share/test test.py test2.py Report bugs to . EOF exit $? ;; -v|--version) echo "$me $scriptversion" exit $? ;; --) shift break ;; -*) usage_error "unrecognized option '$1'" ;; *) break ;; esac shift done files=$* if test -z "$files"; then usage_error "no files given" fi # if basedir was given, then it should be prepended to filenames before # byte compilation. if [ -z "$basedir" ]; then pathtrans="path = file" else pathtrans="path = os.path.join('$basedir', file)" fi # if destdir was given, then it needs to be prepended to the filename to # byte compile but not go into the compiled file. if [ -z "$destdir" ]; then filetrans="filepath = path" else filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" fi $PYTHON -c " import sys, os, py_compile files = '''$files''' sys.stdout.write('Byte-compiling python modules...\n') for file in files.split(): $pathtrans $filetrans if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): continue sys.stdout.write(file) sys.stdout.flush() py_compile.compile(filepath, filepath + 'c', path) sys.stdout.write('\n')" || exit $? # this will fail for python < 1.5, but that doesn't matter ... $PYTHON -O -c " import sys, os, py_compile files = '''$files''' sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n') for file in files.split(): $pathtrans $filetrans if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): continue sys.stdout.write(file) sys.stdout.flush() py_compile.compile(filepath, filepath + 'o', path) sys.stdout.write('\n')" 2>/dev/null || : # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: gedit-developer-plugins-0.5.15/HACKING0000644000175000017500000000273011264153300014245 00000000000000Contributing the the Gedit Developer Plugins project ==================================================== You can learn about the goals of the project at https://launchpad.net/gdp The project uses Bazaar for version control and is hosted on Launchpad. You can get a copying of current code from the console using: bzr branch lp:gdp Code style ---------- Python is expected to conform with PEP8 (Use gedit Menu > Tools > Check syntax and style). Gedit object can only be imported by the plugin classes. The classes in gdp/ must get the gedit objects from the plugin or using signals. This rule ensures that the main code is easy to test and reuse. Test harness ------------ There is a test suite that uses Python doctests. New code is expected to be tested. You can run the test suite from the console using: make test You can run a subset of tests by ./test.py '' The test harness creates dummy and fake gedit objects from the gedit C defs. dummy objects are automatically created. New Fakes can be added by editing ./gedit/gedit.overrides then running ./utils/gen-gedit.py to rebuild the dummy and fakes. The fakes provide enough functionality to verify the plugin code uses the common gedit object correctly. Building and packaging ---------------------- The code uses autotools. You can build the code from the console using: ./autogen.sh make The `make distcheck` command must always work for changes to be accepted. gedit-developer-plugins-0.5.15/ChangeLog0000644000175000017500000016550711767134173015063 00000000000000 2012-06-16 Curtis Hovey [579] Increment version. 2012-04-28 Curtis Hovey [578] Show relative path in find results. 2012-04-28 Curtis Hovey [577] Do not mutate gsettings. 2012-04-28 Curtis Hovey [576] Use the FileChooserDialog to set the directory to find in. 2012-04-28 Curtis Hovey [575] Extend object. 2012-04-28 Curtis Hovey [574] Warn when the directory path does not exist. Convert the path from a uri to a directory path. 2012-04-28 Curtis Hovey [573] Added on_replace_in_files_icon_press for substituion entry. 2012-04-28 Curtis Hovey [572] Introduce on_find_in_files_icon_press to handle the icon-press event from the entry. 2012-04-10 Curtis Hovey [571] Quick glade hack to make the panel use less space by using secondary icons instead buttons. 2012-03-29 Curtis Hovey [570] Do not look for missing in a branch without a parent. 2012-03-29 Curtis Hovey [569] Increment version for release. 2012-03-20 Curtis Hovey [568] Always setup to bzr-gtk ui factory. 2012-03-10 Curtis Hovey [567] Inc version. 2012-03-10 Curtis Hovey [566] Search when enter is presses in the path entry. 2012-03-10 Curtis Hovey [565] Always accept the document arg. 2012-03-10 Curtis Hovey [564] Added method to ensure bacground syntax checking does not needlessly interupt. 2012-03-10 Curtis Hovey [563] added MockProperty to __all__. 2012-03-10 Curtis Hovey [562] Update test helpers. 2012-03-02 Curtis Hovey [561] Correct the order of args in DoctestReviewer calls 2012-02-28 Curtis Hovey [560] Increment for release. 2012-02-24 Curtis Hovey [559] Separate the on_check_style_complete into on_check_style_complete that queues the real method do_check_style_complete in the main_loop. 2012-02-24 Curtis Hovey [558] Use props to get text. 2012-02-19 Curtis Hovey [557] Reset reporter.piter before checking each file's syntax. Do not queue the call to set the reporter piter because it must be know immediately for subsequent calls to work. 2012-02-18 Curtis Hovey [556] Moved MockMethod and FakeMethod to testing. Added test for open_changed_files_to_push(). 2012-02-18 Curtis Hovey [555] Show a dialog when there is no branch. 2012-02-18 Curtis Hovey [554] Remove unneeded callback. 2012-02-18 Curtis Hovey [553] Connect after the main signal callbacks because format assumes the action was complete. 2012-02-18 Curtis Hovey [552] Added comments. 2012-02-18 Curtis Hovey [551] Run the format checker in a thread that queues the gtk events. 2012-02-18 Curtis Hovey [550] Signal callback returns False to indicate the action is handled. 2012-02-17 Curtis Hovey [549] Queue treestore appends into the main loop. 2012-02-17 Curtis Hovey [548] Use the COLLECTOR report_type in tests. 2012-02-17 Curtis Hovey [547] Make python threads play with glib threads. 2012-02-14 Curtis Hovey [546] Exist the loop with a valid module early. 2012-02-14 Curtis Hovey [545] Autotools updated py-compile on regeneration. 2012-02-14 Curtis Hovey [544] Update test runner to prepend to the sys.path. 2012-02-06 Curtis Hovey [543] Updated docs for release. 2012-02-06 Curtis Hovey [542] Construct test to use the tabs size from gsettings. 2012-02-05 Curtis Hovey [541] Ensure the settings are migrated before activation. 2012-02-05 Curtis Hovey [540] Added functions to migrate settings and config. 2012-02-05 Curtis Hovey [539] Survive gedit plugin configuration changes. 2012-02-05 Curtis Hovey [538] Removed unused setup/teardown. 2012-02-05 Curtis Hovey [537] Use make_gsettings. 2012-02-05 Curtis Hovey [536] Add a helper to safely test gsettings. 2012-02-05 Curtis Hovey [535] Increment version. 2012-02-05 Curtis Hovey [534] Extracted temp file rules to _ensure_file_path. 2012-02-05 Curtis Hovey [533] Fallback to a temporary file when checking syntax and the file has not been created yet. 2012-02-04 Curtis Hovey [532] Remove unused methods. 2012-02-03 Curtis Hovey [531] Do not hash info. 2012-02-01 Curtis Hovey [530] Auto colour test output. 2012-02-01 Curtis Hovey [529] Added a test to verify that the FilteredReporter is used. 2012-02-01 Curtis Hovey [528] Use the FilteredReporter. 2012-02-01 Curtis Hovey [527] Do not assume the controller is connected on document save. 2012-01-29 Curtis Hovey [526] Move __all__. 2012-01-29 Curtis Hovey [525] Updated copyright. 2012-01-29 Curtis Hovey [524] Updated copyright. 2012-01-29 Curtis Hovey [523] Restore bzr to previous version. 2012-01-29 Curtis Hovey [522] Updated copyright. 2012-01-28 Curtis Hovey [521] Renamed local_symbols => get_local_symbols and it takes an optional is_interactive argument. The syntax-error-python signal is only emitted when the call is not interactive. 2012-01-28 Curtis Hovey [520] Removed unused attr. 2012-01-28 Curtis Hovey [519] Completed CompletionProposal implementation. 2012-01-28 Curtis Hovey [518] Return early when _info is '' or None. 2012-01-28 Curtis Hovey [517] Added tests for DynamicProposal. 2012-01-27 Curtis Hovey [516] Remove hacks for get_char() because it works again. 2012-01-27 Curtis Hovey [515] Load the icon using the name. 2012-01-27 Curtis Hovey [514] Reuse the python generator if the cursor has not changed line. 2012-01-27 Curtis Hovey [513] Extracted local_symbols that uses cache to avoid unnneeded python compilation. 2012-01-21 Curtis Hovey [512] Only enale the format css and doctest menu items when action is applicable. 2012-01-21 Curtis Hovey [511] Implement more Gedit menu. 2012-01-21 Curtis Hovey [510] moved correct_language() to ControllerMixin so that all plugins can access it. 2012-01-21 Curtis Hovey [509] Renamed on_tab_added to on_tab_added_or_changed and set it to the active-tab-changed signal. 2012-01-21 Curtis Hovey [508] Accept a hack because it may last for 5 years. 2012-01-21 Curtis Hovey [507] Remove non-existent directories from paths during setup. Restore previous searches using config on start. 2012-01-20 Curtis Hovey [506] Removed config_get_list functions. 2012-01-20 Curtis Hovey [505] Pushed get/set list methods into the Config class. 2012-01-20 Curtis Hovey [504] Extracted make_config. 2012-01-20 Curtis Hovey [503] Inlined make_gedit(). 2012-01-20 Curtis Hovey [502] Use make_config. 2012-01-20 Curtis Hovey [501] Updated module to use GeditTestCase. 2012-01-20 Curtis Hovey [500] Updated module to use GeditTestCase. 2012-01-20 Curtis Hovey [499] Updated module to use GeditTestCase. 2012-01-20 Curtis Hovey [498] Updated test to use make_config. 2012-01-20 Curtis Hovey [497] Used GeditTestCase. 2012-01-20 Curtis Hovey [496] Updated module to use GeditTestCase. 2012-01-20 Curtis Hovey [495] Use GeditTestCase to make gedit and config. 2012-01-20 Curtis Hovey [494] Created GeditTestCase with setup_config() and make_gedit() 2012-01-20 Curtis Hovey [493] Save the find params to the config. 2012-01-19 Curtis Hovey [492] Added save_find_data(). The find methods needs to call it. 2012-01-17 Curtis Hovey [491] Replaced values arg with config_key arg to get values from the finder config. 2012-01-17 Curtis Hovey [490] Added values arg to setup_comboentry 2012-01-17 Curtis Hovey [489] Added a test for update_comboentry. 2012-01-16 Curtis Hovey [488] Added tests for setup_comboentry. 2012-01-16 Curtis Hovey [487] Added a test for the existing setup_widgets() method. 2012-01-16 Curtis Hovey [486] Added a test to verify the list serialisation works with config parser. 2012-01-16 Curtis Hovey [485] Added config_set_list. 2012-01-16 Curtis Hovey [484] added config_get_list. 2012-01-16 Curtis Hovey [483] Added a finder section to the config. 2012-01-16 Curtis Hovey [482] Renamed test modules. 2012-01-16 Curtis Hovey [481] Remove 'syntax' from the contoller and generator classes. 2012-01-16 Curtis Hovey [480] Renamed SyntaxCompleterPlugin => CompletePlugin. 2012-01-16 Curtis Hovey [479] Revise plugin description. 2012-01-16 Curtis Hovey [478] Renamed syntaxcompleter module to complete. 2012-01-16 Curtis Hovey [477] Build a sane target in the python rules. 2012-01-16 Curtis Hovey [476] Inlined function and updated var names. 2012-01-16 Curtis Hovey [475] Only use bzr when there is a working tree. 2012-01-16 Curtis Hovey [474] Add python specific rules. 2012-01-16 Curtis Hovey [473] Added rudimentatory refactor module based on my rename_module helper. 2012-01-15 Curtis Hovey [472] Do not attempt to get the working tree before the document is loaded. 2012-01-15 Curtis Hovey [471] Increment version. 2012-01-14 Curtis Hovey [470] Restore decorator property because it is less code. 2012-01-14 Curtis Hovey [469] Update to new upsteam support for filtered reporting: Drop __call__, handle setter. 2012-01-06 Curtis Hovey [468] Extracted builtin rules to a cached property. 2012-01-06 Curtis Hovey [467] OR the CompletionActivation bits to enable both user_requested and interactive. 2012-01-05 Curtis Hovey [466] Reverted diff parent call. 2012-01-04 Curtis Hovey [465] Added the missing signals the fake gedit. 2012-01-04 Curtis Hovey [464] Add robust recovery for exception in import attempts. 2012-01-04 Curtis Hovey [463] Extracted the smart logic from do_popupate to a private method that is easier to test and does not interacte the c-object. 2012-01-04 Curtis Hovey [462] Disabled window.show_all() since code refactors do not require it for tests; tests run 200% faster. 2012-01-04 Curtis Hovey [461] Added signal to Fake document. 2012-01-04 Curtis Hovey [460] Hushed cruft in test output. 2012-01-04 Curtis Hovey [459] Added sdist to sign the distributed package. 2012-01-03 Curtis Hovey [458] Added twisted python files (tac) to syntax highlighting and style checking. 2012-01-03 Curtis Hovey [457] Increment version and deps (because many warning disapear with the newer versions). 2012-01-02 Curtis Hovey [456] Added ShowSyntaxErrorsOnly to menu. 2012-01-02 Curtis Hovey [455] Added a callback to toggle show syntax errors only. 2012-01-02 Curtis Hovey [454] Use config to determine report_only_errors 2012-01-02 Curtis Hovey [453] Added formatter section of config. 2012-01-02 Curtis Hovey [452] Use a filtered reporter to permit users to choose only errors. 2012-01-02 Curtis Hovey [451] Do not return the same word from differnent generators. 2012-01-02 Curtis Hovey [450] Persist the suggest_completions option. 2012-01-02 Curtis Hovey [449] Added sanity rules for word suggestions to minimise the intrusion. 2012-01-02 Curtis Hovey [448] Fixed completions title. 2012-01-02 Curtis Hovey [447] Renamed suggest_completions 2012-01-02 Curtis Hovey [446] Use get_iter(). 2012-01-02 Curtis Hovey [445] Use the iter. 2012-01-02 Curtis Hovey [444] Recover from a key error in interactive completions. 2012-01-02 Curtis Hovey [443] Added AutoShowCompleter to the menu. 2012-01-02 Curtis Hovey [442] Added on_auto_show_completer_toggled. 2012-01-02 Curtis Hovey [441] do_get_activation checks the config to return USER_REQUESTED or INTERACTIVE. 2012-01-02 Curtis Hovey [440] Added auto_show to config. 2012-01-02 Curtis Hovey [439] Removed hack. Do not report errors if the tree does not have a parent. 2012-01-02 Curtis Hovey [438] add toggle_actions if they are present. 2012-01-02 Curtis Hovey [437] Update the accel, but the menu does not show it. 2012-01-01 Curtis Hovey [436] Tell the user to restart gedit. Real-time updates to menu accels is hard. 2012-01-01 Curtis Hovey [435] Update the menu on do_update_state. 2012-01-01 Curtis Hovey [434] Use focus-out-event so that the config is updated once per change. add padding to the ui. 2012-01-01 Curtis Hovey [433] Include complete.ui in the install. 2012-01-01 Curtis Hovey [432] Updated test to use a legitimate accel. 2012-01-01 Curtis Hovey [431] Added do_create_configure_widget. 2012-01-01 Curtis Hovey [430] Fixed comment. 2012-01-01 Curtis Hovey [429] Added test for load without a conf file. 2012-01-01 Curtis Hovey [428] Added a config.load and config.dump test. 2012-01-01 Curtis Hovey [427] Corrected capitalisaion. Added test for dir_path and file_path. 2012-01-01 Curtis Hovey [426] Added the config instance to all. Config is not intended to be visible. 2012-01-01 Curtis Hovey [425] Added config that supports the current behaviour as the default. 2012-01-01 Curtis Hovey [424] Added test for existing syntax completer action. 2011-12-31 Curtis Hovey [423] Set button sensativity to automatic (not off) to fix "filename pattern" entry. Removed the has_frame overrides to let the theme make the descision. 2011-12-31 Curtis Hovey [422] remove `__metaclass__ = type` from modules because TypeError: metaclass conflict with pygobject. 2011-12-31 Curtis Hovey [421] Use F5 to get diff from parent to be consistent with other accels. 2011-12-31 Curtis Hovey [420] Remove window.destroy from add clean up because of gtk warning about not in main loop. 2011-12-31 Curtis Hovey [419] Fixed casting error. 2011-12-31 Curtis Hovey [418] Do not break on hyphens when wrapping text. 2011-12-31 Curtis Hovey [417] Ensure windows are destroyed as soon as possible during tests. 2011-12-31 Curtis Hovey [416] Used GSettings instead og GConf. 2011-12-30 Curtis Hovey [415] Removed crufty class and fixed window types. 2011-12-30 Curtis Hovey [414] Removed unused var. 2011-12-30 Curtis Hovey [413] Replaced doctest with unittest. 2011-12-30 Curtis Hovey [412] Added more tests for methods used and removed unused property. 2011-12-30 Curtis Hovey [411] Added basic unittest for fakes. Removed fake languages because that was pushed down to GtkSource. 2011-12-30 Curtis Hovey [410] Do not package removed module. Run tests in testing. 2011-12-30 Curtis Hovey [409] Moved and renamed get_window to make_gedit. 2011-12-30 Curtis Hovey [408] Removed doctest for unused test helpers. 2011-12-30 Curtis Hovey [407] Replaced doctest with unittest. Add missing method. 2011-12-30 Curtis Hovey [406] Replaced doctest with unittest. 2011-12-30 Curtis Hovey [405] Fix setup. 2011-12-30 Curtis Hovey [404] Use a signal to show the completion. Restore the space accelerator. 2011-12-30 Curtis Hovey [403] Removed unneeded test. 2011-12-30 Curtis Hovey [402] Added SyntaxController unittest. 2011-12-30 Curtis Hovey [401] Removed unneeded doctest. 2011-12-30 Curtis Hovey [400] Corrected set/list rule for MarkupGenerator.get_words(). 2011-12-30 Curtis Hovey [399] Added unittest for MarkupGenerator. Adjusted get_words to return a set. 2011-12-30 Curtis Hovey [398] Added PythonProposal tests. 2011-12-30 Curtis Hovey [397] Added unittest for PythonSyntaxGenerator 2011-12-30 Curtis Hovey [396] Added unittest for TextGenerator. 2011-12-30 Curtis Hovey [395] Added unittest for BaseSyntaxGenerator. 2011-12-30 Curtis Hovey [394] Removed unneeded doctest. 2011-12-30 Curtis Hovey [393] Replaced doctest with unittest. 2011-12-30 Curtis Hovey [392] Add unittest to replace doctest. 2011-12-30 Curtis Hovey [391] Restored show_syntax_view() to support menus. 2011-12-29 Curtis Hovey [390] Removed unused document. 2011-12-29 Curtis Hovey [389] Do not use a document to init a DynamicProvider. 2011-12-29 Curtis Hovey [388] Use the CompletionContext at the moment of need rather than the document at init. 2011-12-29 Curtis Hovey [387] Removed language_id from DynamicProvider because it is knowable from the document. 2011-12-29 Curtis Hovey [386] Use explicit check to use fake Gedit. 2011-12-29 Curtis Hovey [385] fixed order of code to avoid warnings in tests. 2011-12-29 Curtis Hovey [384] Revised hack to pass existing tests. 2011-12-29 Curtis Hovey [383] Save a working, though incomplete syntax completer. 2011-12-29 Curtis Hovey [382] Removed erroneously serialised properties from the builder ui file. 2011-12-29 Curtis Hovey [381] Extracted the "Do want to test this replacement using Find first?" dialog. Updated the code to gtk3. 2011-12-29 Curtis Hovey [380] Removed unneeded doctest. 2011-12-29 Curtis Hovey [379] Wrap text and unknown at 72 characters. 2011-12-29 Curtis Hovey [378] Added a test for the current wrap text rules. 2011-12-29 Curtis Hovey [377] Converted doctest to unittest. 2011-12-29 Curtis Hovey [376] Renamed testcases. 2011-11-20 Curtis Hovey [375] Increment minor version for bug fix. 2011-11-20 Curtis Hovey [374] Fixed show_replace as suggested by Tristan Schmelcher. 2011-11-20 Curtis Hovey [373] Extracted FakePanel and introsuce FakeProps. 2011-11-20 Curtis Hovey [372] Revise code for readability. 2011-09-08 Curtis Hovey [371] Update POTFILES.in and .skip to match renames. 2011-09-08 Curtis Hovey [370] Increment release. 2011-09-08 Curtis Hovey [369] The user's theme does not support the stock icons. 2011-09-07 Curtis Hovey [368] Increment version. 2011-09-07 Curtis Hovey [367] Do not call sizing on a non-sized object. 2011-09-07 Curtis Hovey [366] Add the required libpeas deps. 2011-09-06 Curtis Hovey [365] incremented version. 2011-09-06 Curtis Hovey [364] Restore bzr-gtk integration (running bzr-gtk gtk3 series) Removed data arg from menu callbacks because it is not passed. 2011-09-06 Curtis Hovey [363] Removed data arg from menu callback because it is no longer passed 2011-09-06 Curtis Hovey [362] Restored tooltip lost in a previous update. 2011-09-06 Curtis Hovey [361] Removed data arg from menu callbacks because it is no longer passed. 2011-06-30 Curtis Hovey [360] Fixed mak dist. 2011-06-29 Curtis Hovey [359] Allow users to syntax complete words. 2011-06-29 Curtis Hovey [358] Fix focus and activate in find. 2011-06-24 Curtis Hovey [357] incremented version 2011-06-24 Curtis Hovey [356] Removed test for removed method. 2011-06-19 Curtis Hovey [355] Revised dependancies. 2011-06-19 Curtis Hovey [354] Updated dependancies. 2011-06-19 Curtis Hovey [353] Correct language and menu on tab signals instead of document edits. 2011-06-19 Curtis Hovey [352] Factored out GDPPluginMixing.document. 2011-06-18 Curtis Hovey [351] Fixed doc. 2011-06-18 Curtis Hovey [350] Hush lint. 2011-06-18 Curtis Hovey [349] Fixed GDPPluginMixin name. 2011-06-18 Curtis Hovey [348] Renamed PluginMixin to ControllerMixin. Remove GDPWindow. 2011-06-18 Curtis Hovey [347] Updated syntaxcompleter to use mixin. 2011-06-18 Curtis Hovey [346] use signal helper. 2011-06-18 Curtis Hovey [345] Converted format plugin to use mixin. 2011-06-18 Curtis Hovey [344] Updated gdpfind to use mixin. 2011-06-18 Curtis Hovey [343] Pushed the common attrs into the mixin. 2011-06-18 Curtis Hovey [342] Define the required attrs for the child. 2011-06-18 Curtis Hovey [341] Converted GDPBzr to use a mixin instead of a helper to manage the controller and window. 2011-06-18 Curtis Hovey [340] Fixed replace confirmation dialog. 2011-06-18 Curtis Hovey [339] Updated format.ui to gtk3. 2011-06-17 Curtis Hovey [338] Removed diagnostic toolstips. 2011-06-16 Curtis Hovey [337] Fixed word-wrap in file_line_view using the parent window's width. 2011-06-16 Curtis Hovey [336] Removed self.windows from the last two plugins. 2011-06-15 Curtis Hovey [335] Removed self.windows from two plugins. 2011-06-15 Curtis Hovey [334] Rebuilt find.ui using GtkBox and GtkGrid. 2011-06-14 Curtis Hovey [333] Do not enter bzr-gtk code when the flag is false. 2011-06-14 Curtis Hovey [332] Enabled non-gui bzr commands. 2011-06-13 Curtis Hovey [331] Minor fixes to layout, but the tree view is not taking of the needed space. 2011-06-12 Curtis Hovey [330] Restored some width rules for file_lines_view. 2011-06-12 Curtis Hovey [329] Fixed white-space. 2011-06-12 Curtis Hovey [328] Fixed __all__ 2011-06-12 Curtis Hovey [327] Install language files in gtksourceview-3.0 2011-06-12 Curtis Hovey [326] Discovered needless actions. 2011-06-12 Curtis Hovey [325] Updated gdpsyntaxcompleter menus to accept actionn and data args. 2011-06-12 Curtis Hovey [324] Updated gdpfind menus to accept actionn and data args. 2011-06-12 Curtis Hovey [323] Updated gdp action callbacks to accept widget and data args. 2011-06-12 Curtis Hovey [322] restored file_lines_view text. 2011-06-12 Curtis Hovey [321] Synced get_tab_from_uri to get_tab_from_location. 2011-06-12 Curtis Hovey [320] Updated tests to pass location instead of uri string. 2011-06-12 Curtis Hovey [319] synced create_tab_from_uri to create_tab_from_location. 2011-06-12 Curtis Hovey [318] Fixed get_uri_for_display. Fixed text entry. 2011-06-12 Curtis Hovey [317] Removed utils. 2011-06-12 Curtis Hovey [316] Removed codegen from make. 2011-06-12 Curtis Hovey [315] Removed old codegen code. 2011-06-12 Curtis Hovey [314] Added the actual Gedit module. 2011-06-12 Curtis Hovey [313] Introduced testing.Gedit as in intermediate between codegen and gi. 2011-06-12 Curtis Hovey [312] Updated gdpsyntaxcompleter and gdpformat to gedit3. gdpbzr is updated, but the underlying lib is using gtk 2.0 2011-06-12 Curtis Hovey [311] Updated all plugin files to gedit3. 2011-06-12 Curtis Hovey [310] Small improvement to find panel. UI is broken. 2011-06-11 Curtis Hovey [309] Converted gdpfind to a gedit3 plugin. 2011-06-11 Curtis Hovey [308] Removed Gtk 2.xisms from late incubation changes. 2011-06-11 Curtis Hovey [307] Merged the fixes from incubation. Gtk calls need fixing. 2011-01-16 Curtis Hovey [306] Fixed copyrights. 2011-01-16 Curtis Hovey [305] Normalised use of GtkSource. 2011-01-16 Curtis Hovey [304] updated copyrights 2011-01-16 Curtis Hovey [303] Corrected tests. 2011-01-16 Curtis Hovey [302] Caste the lineno to a string. 2011-01-16 Curtis Hovey [301] Restored language manager. 2011-01-16 Curtis Hovey [300] Reverted capitalisations wrongly changed by a global replace. 2011-01-08 Curtis Hovey [299] Added a test-log target. 2011-01-08 Curtis Hovey [298] Updated the build requirements. 2011-01-08 Curtis Hovey [297] Fixed missing Tool menu. 2011-01-08 Curtis Hovey [296] Fixed ActionGroup by passing name as a kwarg. 2011-01-08 Curtis Hovey [295] Fix get_char() hack for markup context. 2011-01-08 Curtis Hovey [294] Fixed language in test harness. 2011-01-07 Curtis Hovey [293] Added more hacks for iter get_char(). 2011-01-07 Curtis Hovey [292] Added a hack around the exception raises calling iter.get_char(). 2011-01-07 Curtis Hovey [291] create_mark() should set left-gravify to false. 2011-01-07 Curtis Hovey [290] Commit point in gobjectification. 2010-11-29 Curtis Hovey [289] Swithing to gi.repository.GObject. Moved shared sginals to gdp.__init__. 2010-10-25 Curtis Hovey [288] Fixed python types. 2010-08-01 Curtis Hovey [287] Increment version because of dependency changes 2010-07-28 Curtis Hovey [286] Show all the errors when there are errors. 2010-07-27 Curtis Hovey [285] Use mimetypes to identify file extensions. 2010-07-03 Curtis Hovey [284] Merged work that switches gdp to use pocket-lint. 2010-07-03 Curtis Hovey [283] Merged format check on save. 2010-05-15 Curtis Hovey [282] Do not loose the selection during a replacement. 2010-05-15 Curtis Hovey [281] Replace the orginal text selection; do not loose it. 2010-04-27 Curtis Hovey [280] Inced the version to indicate the cssutils is now preferred. 2010-04-27 Curtis Hovey [279] Added a CSS syntax checker. 2010-04-26 Curtis Hovey [278] First draft of CSS formatter. 2010-04-17 Curtis Hovey [277] Incremented to 0.4.1. 2010-04-11 Curtis Hovey [276] Update the size rules of the find panel to reduce resizing when the actions are expanded. 2010-04-11 Curtis Hovey [275] do find when enter is pressed in the pattern entry. 2010-04-11 Curtis Hovey [274] Updated builder format 2010-04-09 Curtis Hovey [273] Implement CompletionProposal hash() and equal(). Improved the Info window to to use pydoc. 2010-04-06 Curtis Hovey [272] fxed typo in NEWS/ 2010-04-06 Curtis Hovey [271] When completing a closing tag, the closing angle-bracket is also inserted. 2010-04-06 Curtis Hovey [270] Refactored DynamicProvider.get_word to behave like english and programming langauges are. 2010-04-06 Curtis Hovey [269] Merged Lucid chages for gedit 2.30. 2009-12-05 Curtis Hovey [268] Updated news. Do not raise an exception because the closed and empty rules suck. 2009-11-29 Curtis Hovey [267] gdp 0.3.1. 2009-11-29 Curtis Hovey [266] Inc version to reflect new feature. 2009-11-29 Curtis Hovey [265] Support markup completion. 2009-11-28 Curtis Hovey [264] Fixed style. 2009-11-28 Curtis Hovey [263] Added test coverage for PythonChecker. 2009-11-28 Curtis Hovey [262] Fixed XMLChecker reporting of unknonwn entities. 2009-11-28 Curtis Hovey [261] Added test for formatcheckers. 2009-11-28 Curtis Hovey [260] Extracted AnyTextChecker rules to AnyTextMixin so that they can be reused by other classes. Fixed spelling. 2009-10-18 sinzui [259] Tuned the config. 2009-10-16 sinzui [258] Added a deactivate method to the PluginMixin to ensure that each plugin provides cleanup statements. 2009-10-16 sinzui [257] Removed unused macros. === 2.28.0, 0.2 === 2009-10-10 sinzui [256] Removed references to removed language-specs. 2009-10-10 sinzui [255] Updated the release notes. 2009-10-10 sinzui [254] Fixed url. 2009-10-10 sinzui [253] Removed unused imports. 2009-10-10 sinzui [252] Style fixes. 2009-10-10 sinzui [251] Removed unused files from build. 2009-10-10 sinzui [250] Removed import hack from syntaxcompleter. Let the testrunner do the work. 2009-10-09 sinzui [249] Added a hack and adjusted the tests to work in the distcheck environment. 2009-10-09 sinzui [248] autogen changes for upgrade to Karmic. 2009-10-09 sinzui [247] Do not translate fake gedit. 2009-10-09 sinzui [246] Updated the syntaxxompleter tests to verify the ui_manager changes. 2009-10-09 sinzui [245] Added a fake get_side_panel. 2009-10-08 sinzui [244] Improved the alignment of the line number column. 2009-10-08 sinzui [243] Added an dedicated cell renderer for line_no. Wrapping is much better, but the file path is separated from the icon because the line_no cell is always allocated width. 2009-10-07 sinzui [242] Store the file_pattern and search path. 2009-10-07 sinzui [241] Switched from lxml.etree to standard xml.etree. This implementation supports HTML entities, which is better than the XXX hack used for lxml. 2009-10-05 sinzui [240] Moved Check syntax and style into the side panel. Added support to check all open documents. 2009-10-05 sinzui [239] Place the find and replace plugin in the side panel. 2009-10-04 sinzui [238] Added support for gmissing. 2009-10-04 sinzui [237] Updated XXX comments with bug number, 2009-10-03 sinzui [236] Comprimsed between gdiff and writing the diff to file. 2009-10-03 sinzui [235] Added bazaar preferences. 2009-10-03 sinzui [234] Added support for send merge directives. 2009-10-03 sinzui [233] Move imports inline to avoid the seahorse dbus except when the session is cold. 2009-10-03 sinzui [232] Fixed titles. 2009-10-03 sinzui [231] Added gcheckout. 2009-10-03 sinzui [230] Added support for gbranch. 2009-10-03 sinzui [229] Added initialized_branch, 2009-10-03 sinzui [228] Removed comment. 2009-09-22 sinzui [227] Moved reformat doctest to the tools menu. 2009-09-22 sinzui [226] Added a save action to the file and replace widget. 2009-09-22 sinzui [225] Fixed active iter rule in find combobox. The liststore is sorted so the last index is rarely the location of the newly added text. Appending the text and calling the method again will do the right thing since the method activated exisitng text before trying to append text. 2009-09-21 sinzui [224] Refactored bzr-branch-open signal so that it is managed by the plugin. 2009-09-21 sinzui [223] Added python-syntax-error to signals. 2009-09-20 sinzui [222] Added gdpsyntaxcompleter to the menu. 2009-09-20 sinzui [221] Add an error dialog to explain to the user that the snippet plugin must be enabled before the gdpsyntaxcompleter 2009-09-20 sinzui [220] Fixed rule for identifing code comments that canses some comments in doctest to be wrongly reported as too long. 2009-09-20 sinzui [219] Added signal to add the path of the working tree to the finder widget when one is opened. Adjusted the level indentation of the file_lines results. 2009-09-19 sinzui [218] Set the working directory as the active item in the path_comboboxentry. 2009-09-19 sinzui [217] Removed the use of the 'activate' signal in the ui file because it overlaps with 'click'. 2009-09-15 sinzui [216] Revised the documentation. 2009-09-14 sinzui [215] Added autogen.sh to make hacking easier. Lowered the intltool requirement (incremented micro). 2009-09-14 sinzui [214] Do not make snippets. 2009-09-13 sinzui [213] Do not install snippets because they overwrite user data (bug 429072) === 0.1, 2.26.1 === 2009-09-13 sinzui [212] Added documentation. 2009-09-13 sinzui [211] Do not translate pyflakes because it is in contrib. 2009-09-13 sinzui [210] incremented the lib requirements for gtk.builder. 2009-09-13 sinzui [209] Gracefully recover from a Python SyntaxError when completing words. see bug 428713. 2009-09-12 sinzui [208] Added hack to XMLCheck to avoid false reports of entitiy problems. See lp bug 267825 and lp bug 410916 for the nature of the issue in lxml. 2009-09-12 sinzui [207] Fixed the jump_to behaviour when opening a file (bug 428451). Expand all the lines when there is only one file in the file-lines- view (bug 428441). 2009-09-09 sinzui [206] Updated docs. 2009-09-09 sinzui [205] Added Pyflakes to contrib to lower plugin dependencies. 2009-09-07 sinzui [204] fixes bug 425981. 2009-09-07 sinzui [203] Replaced the try/finally block with a callback to ensure the lock and un lock happens on the correct order 2009-09-07 sinzui [202] Included the tests in the dist package. 2009-09-07 sinzui [201] Fixed dist rules. The tarball is correct, but the tests should be included too. 2009-09-07 sinzui [200] Addedin missing HACKING. 2009-09-07 sinzui [199] Updated POTFILES.in with files that have translatable strings. 2009-09-07 sinzui [198] Added copyright to plugin libs. 2009-09-07 sinzui [197] Added copyright to plugins. 2009-09-07 sinzui [196] Added copyright to utils. 2009-09-07 sinzui [195] Removed the external tools dir. The scripts are too old to be used. The launchpad project plugin will provide the wanted functions. 2009-09-07 sinzui [194] Added copyright and linted. 2009-09-07 sinzui [193] Added copyright to adapted lang files. 2009-09-07 sinzui [192] Added copyright notifices to files. 2009-09-07 sinzui [191] Added a setup and teardown to the test suite to manages gedit's addition of gettext to builtins. 2009-09-07 sinzui [190] Updated syntax completer to use the other plugin infrastructure.. 2009-09-07 sinzui [189] Removed lint. 2009-09-07 sinzui [188] The intent of the test is no loger valid. Changed it to do a rudimentary test that the Finder can be created. 2009-09-07 sinzui [187] Updated def to provide a panel for tests. 2009-09-07 sinzui [186] Removed the activate method from the mixin. 2009-09-07 sinzui [185] Removed gedit dependency in the mixin because None can be used for the default document encoding. 2009-09-07 sinzui [184] Converted gdp*.actions to a method to decouple the controller methods. 2009-09-06 sinzui [183] Revised the position of menus. 2009-09-06 sinzui [182] Removed unused snippet and made placeholder menus consistent. 2009-09-05 sinzui [181] Added missing action to search menu. 2009-09-04 sinzui [180] Fixed some snippets. 2009-09-04 sinzui [179] Removed lint from the syntaxcompleter 2009-09-04 sinzui [178] introduced GDPWindow to decouple the plugin from the GeditWindow. 2009-09-03 sinzui [177] Added tabs to spaces. 2009-09-03 sinzui [176] Added find in 2009-09-02 sinzui [175] Fix the bug lp:423342. Also adjust the find widget. 2009-09-02 sinzui [174] Added bzr-gtk merge. 2009-09-02 sinzui [173] Added bzr-gtk visualise. 2009-09-01 sinzui [172] Added bzr-gtk tags 2009-09-01 sinzui [171] Added bzr-gtk ginfo and gconflicts. 2009-09-01 sinzui [170] Added icons to messages. 2009-09-01 sinzui [169] Switched from glade to gtkbuilder. 2009-09-01 sinzui [168] Switch from glade to gtkbuilder. There is one problematic glade file left. 2009-09-01 sinzui [167] Fixed exception when opening a file outside of the working tree. 2009-09-01 sinzui [166] Refacted the checks into smaller pieces. Added a simple XML checker to verify well-formedness. 2009-09-01 sinzui [165] Added pep8 style checking. 2009-09-01 sinzui [164] Added pep8.py to contrib 2009-08-31 sinzui [163] Added doctest checking. 2009-08-31 sinzui [162] Refacted the Reporter and BaseChecker to simplify extensions. 2009-08-31 sinzui [161] Show the Check syntax and styles panel when a file is checked. 2009-08-31 sinzui [160] Added rudimentary text and python syntax and style checkers. The initialisation and message reporting is bad. 2009-08-30 sinzui [159] Renamed match_view to file_lines_view 2009-08-30 sinzui [158] Add support to open and file and goto the line number from the file-lines-view. 2009-08-30 sinzui [157] Extracted the rules to setup the file-lines-view. 2009-08-30 sinzui [156] Added Replace in files to the menu. 2009-08-30 sinzui [155] Exposed replace in files. 2009-08-30 sinzui [154] updated formatting 2009-08-30 sinzui [153] Exposed the file pattern and directory path for searching. 2009-08-28 sinzui [152] Icons work some of the time. 2009-08-28 sinzui [151] Saving file icon even though it does not work. 2009-08-28 sinzui [150] Added support for mime-type in the model. 2009-08-28 sinzui [149] Use two cells to separate the lineno from the match/filename 2009-08-28 sinzui [148] Do not mutate the view after the model is set. 2009-08-28 sinzui [147] Updated UI 2009-08-28 sinzui [146] Show the matches in a treeview. The lineno needs its own column and there is a error that does not seemt to break the app: find.py:110: GtkWarning: A floating object was finalized. This means that someone called g_object_unref() on an object that had only a floating reference; the initial floating reference is not owned by anyone and must be removed with g_object_ref_sink(). match_view.append_column(self.column) 2009-08-28 sinzui [145] Fixed some menu nonsense that was appearing on the console. 2009-08-28 sinzui [144] Extracted the update_match_text rules. 2009-08-28 sinzui [143] The combobox's liststore is sorted and unique. 2009-08-28 sinzui [142] Add simple log to gdpfind as shim to build the UI. This provides the same report that comes from the command line. 2009-08-27 sinzui [141] Added simple support for case insensitivity and re escaping. 2009-08-27 sinzui [140] Added a non-working find panel. 2009-08-27 sinzui [139] Fixed syntax highlighting of doctests. 2009-08-27 sinzui [138] Removed unused tools. 2009-08-27 sinzui [137] Close the push dialog when it is finished. 2009-08-27 sinzui [136] Added gpush to gdpbzr. 2009-08-27 sinzui [135] Added gannotate to gdpbzr. 2009-08-27 sinzui [134] Removed unused tools. 2009-08-27 sinzui [133] Added status to gdpbzr. 2009-08-27 sinzui [132] Close the commit dialog when the user is done. 2009-08-27 sinzui [131] Used gdpbzr to commit itself. 2009-08-27 sinzui [130] Added diff of changes to push. 2009-08-27 sinzui [129] Added diff from parent. 2009-08-27 sinzui [128] Revered the use of jump_to because it creates unwanted tabs. 2009-08-27 sinzui [127] Use jump_to instead of manually calling set active on the tab. 2009-08-27 sinzui [126] Added diff uncommitted changes. Removed redundant tool. 2009-08-27 sinzui [125] Moved methods to make the class easier to read. 2009-08-27 sinzui [124] Refactored the push_tree and parent_tree to be DRY. 2009-08-27 sinzui [123] Added open divierged files from parent. Removed redundant tools. 2009-08-27 sinzui [122] Added open changed files that have not been pushed. 2009-08-27 sinzui [121] Rearranged method for readability. 2009-08-27 sinzui [120] Renamed method to describe what it really does. 2009-08-26 sinzui [119] Fixed grammar. 2009-08-26 sinzui [118] Toggle the sensitivity of bzr project menu items based on the need for a working tree. 2009-08-26 sinzui [117] Added a rule to use the active document or cwd to get th working tree via open_containing() 2009-08-26 sinzui [116] Added open_changed_files to gdpbzr. 2009-08-26 sinzui [115] Install po files in .local for home installs. 2009-08-26 sinzui [114] Removed hack to make the build work. 2009-08-26 sinzui [113] Fixed bad file names that were breaking the builld. 2009-08-26 sinzui [112] Add a scketch of the gdpbzr plugin. 2009-08-26 sinzui [111] Hack to make the plugin-files build 2009-08-26 sinzui [110] Hack to make the plugin-files build 2009-08-26 sinzui [109] Made plugin names consistent. 2009-08-26 sinzui [108] Moved formatdoctest into the format plugin. Removed redundant tools. 2009-08-25 sinzui [107] Fixed method name. 2009-08-25 sinzui [106] Refactored the wrapping rules. 2009-08-25 sinzui [105] Removed redundant tools. 2009-08-25 sinzui [104] All the selection commands now run in the format menu. 2009-08-25 sinzui [103] Added Formatter to work with plugin. The sort import and line ending methods work. 2009-08-25 sinzui [102] Added first draft of the format menu. 2009-08-24 sinzui [101] Updated tools. 2009-08-24 sinzui [100] Updated snippets. 2009-08-24 sinzui [99] Updated configure.ac to work with jaunty. 2009-03-05 sinzui [98] Added missing files. 2009-03-05 sinzui [97] Added tools, snippets, and langs from my own setup. 2009-03-05 sinzui [96] Added new test. 2009-03-05 sinzui [95] Refactored the find code. 2008-08-25 Curtis Hovey [94] Roughed out the FindPlugin test. 2008-08-25 Curtis Hovey [93] Added a test for FindPlugin.activate(). Added a fake Window.get_ui_manager to test the method. 2008-08-25 Curtis Hovey [92] Added a basic FindPlugin test. 2008-08-25 Curtis Hovey [91] Added a rough version of the FindGenerator and FindController based on the find.py shell script. Tests are needed to define the correct API. 2008-08-25 Curtis Hovey [90] Fixed typo cause by renaming. 2008-08-25 Curtis Hovey [89] Renamed searchplugin to findplugin. Add glade file to makefile.am 2008-08-25 Curtis Hovey [88] Added a glade file to provide UI elements. 2008-08-25 Curtis Hovey [87] Added basic plugin for search multiple files. There is enough in place to write tests and add the core feature. 2008-08-25 Curtis Hovey [86] Fixed line indexing issue caused by end_iter can be after the last index of of the buffer (WTF). 2008-08-24 Curtis Hovey [85] Added test coverage for PythonGenerator._get_parsable_text. Added support for keywords as candidates for symbol completion. 2008-08-24 Curtis Hovey [84] Revised the rules for 'authoritative' added rules to make the source code compilable when the current line is invalid. 2008-06-28 Curtis Hovey [83] Extracted get_string_before_cursor and ensure_prefix. The tests need revision. get_words now returns a 2-tuple of (is_authoratative, words). 2008-06-24 Curtis Hovey [82] Extracted get_word from get_word_prefix to allow the PythonSyntaxGenerator to see the python identifier. 2008-06-23 Curtis Hovey [81] Renamed methods to follow PEP 8. 2008-06-23 Curtis Hovey [80] Added a test to show that create_list is a unique list of words. Renamed SyntaxCompleter methods to follow PEP 8. Updated docstrings. 2008-06-23 Curtis Hovey [79] Minor improvements to the SyntaxModel. The PythonSyntaxGenerator appears to work, but there is stability issues. More testing is need to fix this. 2008-06-22 Curtis Hovey [78] Added make rules for ChangeLog. Decided to sync plugin versions with gedit to clearly state the intended compatability. 2008-06-22 Curtis Hovey [77] autoconf; configure; make; make install "Just Works". 2008-06-08 Curtis Hovey [76] Documented a place-holder fix can be removed.. 2008-06-08 Curtis Hovey [75] Minor updates because of system upgrade. 2007-12-28 Curtis Hovey [74] Underscores are non-breaking spaces--they are considered a word character when creating the list of words in a document. 2007-10-30 Curtis Hovey [73] Added a destroy method to restor the SnippetCompleter.model so that Snippets continue to work after syntax is used. Add a kludge to handle a situation where createList is being passed a list instead of a document. 2007-10-29 Curtis Hovey [72] Updated ignored. 2007-10-29 Curtis Hovey [71] Unversioned aclocal.m4. 2007-10-29 Curtis Hovey [70] Added i18n. 2007-10-29 Curtis Hovey [69] Added base effort to use autotools for l10n and installation. 2007-10-28 Curtis Hovey [68] Replaced signal test with direct call to destroy to avoid gtk- warnings. 2007-10-28 Curtis Hovey [67] Restructured testrunner to divide tests into suites by directory, and run a single report. 2007-10-28 Curtis Hovey [66] Restructured testrunner to divide tests into suites by directory 2007-10-27 Curtis Hovey [65] Fixed tests to match new object reprs. 2007-10-07 Curtis Hovey [64] Added gettext to builtins following gedit's example. 2007-10-07 Curtis Hovey [63] Updated plugin to use gtksourceview2. There is a gtkTextView assertion error that needs fixing. 2007-09-01 Curtis Hovey [62] Evil touchpad. 2007-09-01 Curtis Hovey [61] Revised the _calculateSyntaxViewPosition() test to use a dummy get_origin to ensure the window is correctly positioned. Used proof for the last check because screen width's vary. 2007-08-31 Curtis Hovey [60] Replaced the source tuple with just the gedit.Document because it has all the infomation added to sources. 2007-08-31 Curtis Hovey [59] Revised the Fake to use a scrolledwindow to ensure the window size is retrained in testing. 2007-08-31 Curtis Hovey [58] Cleaned up the Fake behaviour. 2007-08-31 Curtis Hovey [57] Added Dummy to the Fake implementations. 2007-08-31 Curtis Hovey [56] Completed plugin doctests. 2007-08-30 Curtis Hovey [55] Completed fake implementation off the core gedit objects. The Dummy is not used at the moment, but it will be kept since it is very good at providing adhoc data. 2007-08-30 Curtis Hovey [54] Moved the testing doctests to tests to ensure that they are run. Added a fake Document class for loading files and checking metadata. 2007-08-29 Curtis Hovey [53] Pushed the most of the dummy setup into gedithelpers.get_window. Add some plugin tests. 2007-08-29 Curtis Hovey [52] Updated overrides to support get_window_group. Updated fakegen to support functions. 2007-08-29 Curtis Hovey [51] Added a Dummy variable to all Fake modules for easy access by functions and methods. Added a fake implementation of get_app_default since it must always return an instance of Gedit.App. 2007-08-29 Curtis Hovey [50] Pushed universal testing objects and functions to testing, moved remaining function to gedithelpers. Added the universal objected and function to the test suite's globs. 2007-08-28 Curtis Hovey [49] Added rules to define fake functions. Revised the rules for Dummy data. 2007-08-28 Curtis Hovey [48] Renamed Fake to Dummy, and moved it to testing. Updated Dummy to behave like a singleton dictionary. Updated tests to use Dummy. Add gen-gedit to regenerate gedit fake py files. 2007-08-28 Curtis Hovey [47] Added overrides handling. Added DefsOverridesMixer to manage the writing of both source of data. 2007-08-28 Curtis Hovey [46] Renamed mock.* to fake.*. In the long term, the fake class generator will need both stub and mock features, but they will be provided by testing so that code need not be regenerated when testing features are added. 2007-08-26 Curtis Hovey [45] Moved mockgen to testing 2007-08-26 Curtis Hovey [44] syntaxcompleterplugin started. Mock needs a thorough revision before the tests can be completed. 2007-08-19 Curtis Hovey [43] Removed test hook hack. Tests for the controller are complete. 2007-08-19 Curtis Hovey [42] Tests for SyntaxController are complete. There is a testing hook in showSyntaxView that should be removed. 2007-08-19 Curtis Hovey [41] Added more signal testing helpers and one signal test. 2007-08-19 Curtis Hovey [40] Added tests. Removed SyntaxController.updateLanguage(). 2007-08-18 Curtis Hovey [39] Added missing doctest. Added additional tests for the SyntaxController. Refactored a few methods. 2007-08-18 Curtis Hovey [38] Refactored the SyntaxController. Some additional test coverage is needed. 2007-08-16 Curtis Hovey [37] Change SyntaxControler to descend from object to remove the gedit and snippet dependancies. 2007-08-13 Curtis Hovey [36] Reworded mock testing. Not a very good session. However, if/when gtk.main() is run after controller.show_completion(), the feature will really run in an interactive session. 2007-08-12 Curtis Hovey [35] Moved heleprs to new modules testing. Added base test for SyntaxController. Method testing is needed. 2007-08-12 Curtis Hovey [34] Moved testing helpers to new testing module. 2007-08-01 Curtis Hovey [33] Introduced SignalTester and proof to make testing easier. 2007-07-31 Curtis Hovey [32] Added a hack and a base test to create a SyntaxView with the SyntaxModel. 2007-07-31 Curtis Hovey [31] Added a Mock singleton to pass data between the test and the mock classes. 2007-07-31 Curtis Hovey [30] Removing other plugins. 2007-07-31 Curtis Hovey [29] Removing other plugins. 2007-07-31 Curtis Hovey [28] removing other plugings 2007-07-30 Curtis Hovey [27] Fixed the use of sources. 2007-07-29 Curtis Hovey [26] Added model tests. Replaced the model with a sensible implementation. 2007-07-28 Curtis Hovey [25] Renamed CompleteModel to SyntaxModel. Need to work out how to make sure SyntaxModel is used instead of CompleteModel. 2007-07-28 Curtis Hovey [24] Refactored syntax completer. 2007-07-26 Curtis Hovey [23] Pulled the plugin code together. This is very bad. The bottom is tested and understood. The top is neither. The middle needs tests. Everything needs another round of naming. 2007-07-25 Curtis Hovey [22] Moved tests into gdp. Removed the forced addition of the prefix to the SyntaxModel because that is something else's responsability. 2007-07-22 Curtis Hovey [21] Extended tests. Clean up SyntaxControler. I need to understand it better to write tests and create logic that is needed for syntax completion. 2007-07-21 Curtis Hovey [20] Hooked TextModel into CompleteModel. 2007-07-21 Curtis Hovey [19] Added the missing test pieces. 2007-07-21 Curtis Hovey [18] Added some basic tests. 2007-07-21 Curtis Hovey [17] Renamed *Context => *Model to make its purpose clear. 2007-07-19 Curtis Hovey [16] Did preliminary work on CompleteModel. Testing is needed. 2007-07-18 Curtis Hovey [15] Added tests for TextContext. Fixed a bug that stopped hyphenated words from matching. 2007-07-09 Curtis Hovey [14] Added missing files from last commit. 2007-07-09 Curtis Hovey [13] Rearranged test infrastructure so that the config file is executible, and the testrunner was moved to utils. 2007-07-09 Curtis Hovey [12] Started Context classes, revised test infrastructure. 2007-07-08 Curtis Hovey [11] Compatability changes to with with zope testing. 2007-07-08 Curtis Hovey [10] Revised commandline arguments and rc. Improved colourization of test output. 2007-07-08 Curtis Hovey [9] Added bold and colors to test output. 2007-07-08 Curtis Hovey [8] Revised test setup. 2007-07-02 Curtis Hovey [7] restructured project. Added Mock object generator in utils/ to make gedit/. 2007-07-01 Curtis Hovey [6] Partial changes for new syntax checker. New work coexists with the old work 2007-06-17 Curtis Hovey [5] Refactored the logic for readability. 2007-06-16 Curtis Hovey [4] Added language knowledge to the completer to allow it to knwo when to complete Python symbols. 2007-06-16 Curtis Hovey [3] Cleaned up pylint errors about gedit_pylint. Modified it to work with any PyLint that supports --output-format. 2007-06-16 Curtis Hovey [2] Renamed directory. 2007-06-16 Curtis Hovey [1] Added first plugins. gedit-developer-plugins-0.5.15/install-sh0000755000175000017500000003325611767134104015302 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2011-01-19.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. nl=' ' IFS=" "" $nl" # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit=${DOITPROG-} if test -z "$doit"; then doit_exec=exec else doit_exec=$doit fi # Put in absolute file names if you don't have them in your path; # or use environment vars. chgrpprog=${CHGRPPROG-chgrp} chmodprog=${CHMODPROG-chmod} chownprog=${CHOWNPROG-chown} cmpprog=${CMPPROG-cmp} cpprog=${CPPROG-cp} mkdirprog=${MKDIRPROG-mkdir} mvprog=${MVPROG-mv} rmprog=${RMPROG-rm} stripprog=${STRIPPROG-strip} posix_glob='?' initialize_posix_glob=' test "$posix_glob" != "?" || { if (set -f) 2>/dev/null; then posix_glob= else posix_glob=: fi } ' posix_mkdir= # Desired mode of installed file. mode=0755 chgrpcmd= chmodcmd=$chmodprog chowncmd= mvcmd=$mvprog rmcmd="$rmprog -f" stripcmd= src= dst= dir_arg= dst_arg= copy_on_change=false no_target_directory= usage="\ Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: --help display this help and exit. --version display version info and exit. -c (ignored) -C install only if different (preserve the last data modification time) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test $# -ne 0; do case $1 in -c) ;; -C) copy_on_change=true;; -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" shift;; --help) echo "$usage"; exit $?;; -m) mode=$2 case $mode in *' '* | *' '* | *' '* | *'*'* | *'?'* | *'['*) echo "$0: invalid mode: $mode" >&2 exit 1;; esac shift;; -o) chowncmd="$chownprog $2" shift;; -s) stripcmd=$stripprog;; -t) dst_arg=$2 # Protect names problematic for `test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac shift;; -T) no_target_directory=true;; --version) echo "$0 $scriptversion"; exit $?;; --) shift break;; -*) echo "$0: invalid option: $1" >&2 exit 1;; *) break;; esac shift done if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dst_arg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dst_arg" shift # fnord fi shift # arg dst_arg=$arg # Protect names problematic for `test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac done fi if test $# -eq 0; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi if test -z "$dir_arg"; then do_exit='(exit $ret); exit $ret' trap "ret=129; $do_exit" 1 trap "ret=130; $do_exit" 2 trap "ret=141; $do_exit" 13 trap "ret=143; $do_exit" 15 # Set umask so as not to create temps with too-generous modes. # However, 'strip' requires both read and write access to temps. case $mode in # Optimize common cases. *644) cp_umask=133;; *755) cp_umask=22;; *[0-7]) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw='% 200' fi cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; *) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw=,u+rw fi cp_umask=$mode$u_plus_rw;; esac fi for src do # Protect names problematic for `test' and other utilities. case $src in -* | [=\(\)!]) src=./$src;; esac if test -n "$dir_arg"; then dst=$src dstdir=$dst test -d "$dstdir" dstdir_status=$? else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dst_arg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dst_arg # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst dst=$dstdir/`basename "$src"` dstdir_status=0 else # Prefer dirname, but fall back on a substitute if dirname fails. dstdir=` (dirname "$dst") 2>/dev/null || expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$dst" : 'X\(//\)[^/]' \| \ X"$dst" : 'X\(//\)$' \| \ X"$dst" : 'X\(/\)' \| . 2>/dev/null || echo X"$dst" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q' ` test -d "$dstdir" dstdir_status=$? fi fi obsolete_mkdir_used=false if test $dstdir_status != 0; then case $posix_mkdir in '') # Create intermediate dirs using mode 755 as modified by the umask. # This is like FreeBSD 'install' as of 1997-10-28. umask=`umask` case $stripcmd.$umask in # Optimize common cases. *[2367][2367]) mkdir_umask=$umask;; .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; *[0-7]) mkdir_umask=`expr $umask + 22 \ - $umask % 100 % 40 + $umask % 20 \ - $umask % 10 % 4 + $umask % 2 `;; *) mkdir_umask=$umask,go-w;; esac # With -d, create the new directory with the user-specified mode. # Otherwise, rely on $mkdir_umask. if test -n "$dir_arg"; then mkdir_mode=-m$mode else mkdir_mode= fi posix_mkdir=false case $umask in *[123567][0-7][0-7]) # POSIX mkdir -p sets u+wx bits regardless of umask, which # is incompatible with FreeBSD 'install' when (umask & 300) != 0. ;; *) tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 if (umask $mkdir_umask && exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 then if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # other-writeable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in d????-?r-*) different_mode=700;; d????-?--*) different_mode=755;; *) false;; esac && $mkdirprog -m$different_mode -p -- "$tmpdir" && { ls_ld_tmpdir_1=`ls -ld "$tmpdir"` test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" } } then posix_mkdir=: fi rmdir "$tmpdir/d" "$tmpdir" else # Remove any dirs left behind by ancient mkdir implementations. rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null fi trap '' 0;; esac;; esac if $posix_mkdir && ( umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else # The umask is ridiculous, or mkdir does not conform to POSIX, # or it failed possibly due to a race condition. Create the # directory the slow way, step by step, checking for races as we go. case $dstdir in /*) prefix='/';; [-=\(\)!]*) prefix='./';; *) prefix='';; esac eval "$initialize_posix_glob" oIFS=$IFS IFS=/ $posix_glob set -f set fnord $dstdir shift $posix_glob set +f IFS=$oIFS prefixes= for d do test X"$d" = X && continue prefix=$prefix$d if test -d "$prefix"; then prefixes= else if $posix_mkdir; then (umask=$mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break # Don't fail if two instances are running concurrently. test -d "$prefix" || exit 1 else case $prefix in *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; *) qprefix=$prefix;; esac prefixes="$prefixes '$qprefix'" fi fi prefix=$prefix/ done if test -n "$prefixes"; then # Don't fail if two instances are running concurrently. (umask $mkdir_umask && eval "\$doit_exec \$mkdirprog $prefixes") || test -d "$dstdir" || exit 1 obsolete_mkdir_used=true fi fi fi if test -n "$dir_arg"; then { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 else # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 # Copy the file name to the temp name. (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && # If -C, don't bother to copy if it wouldn't change the file. if $copy_on_change && old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && eval "$initialize_posix_glob" && $posix_glob set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && $posix_glob set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then rm -f "$dsttmp" else # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. { # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { test ! -f "$dst" || $doit $rmcmd -f "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } } || { echo "$0: cannot unlink or rename $dst" >&2 (exit 1); exit 1 } } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dst" } fi || exit 1 trap '' 0 fi done # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: gedit-developer-plugins-0.5.15/AUTHORS0000644000175000017500000000006611264153300014326 00000000000000Active authors: Curtis Hovey gedit-developer-plugins-0.5.15/mkinstalldirs0000755000175000017500000000672211767134104016102 00000000000000#! /bin/sh # mkinstalldirs --- make directory hierarchy scriptversion=2009-04-28.21; # UTC # Original author: Noah Friedman # Created: 1993-05-16 # Public domain. # # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' IFS=" "" $nl" errstatus=0 dirmode= usage="\ Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... Create each directory DIR (with mode MODE, if specified), including all leading file name components. Report bugs to ." # process command line arguments while test $# -gt 0 ; do case $1 in -h | --help | --h*) # -h for help echo "$usage" exit $? ;; -m) # -m PERM arg shift test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } dirmode=$1 shift ;; --version) echo "$0 $scriptversion" exit $? ;; --) # stop option processing shift break ;; -*) # unknown option echo "$usage" 1>&2 exit 1 ;; *) # first non-opt arg break ;; esac done for file do if test -d "$file"; then shift else break fi done case $# in 0) exit 0 ;; esac # Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and # mkdir -p a/c at the same time, both will detect that a is missing, # one will create a, then the other will try to create a and die with # a "File exists" error. This is a problem when calling mkinstalldirs # from a parallel make. We use --version in the probe to restrict # ourselves to GNU mkdir, which is thread-safe. case $dirmode in '') if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -p -- $*" exec mkdir -p -- "$@" else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. test -d ./-p && rmdir ./-p test -d ./--version && rmdir ./--version fi ;; *) if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -m $dirmode -p -- $*" exec mkdir -m "$dirmode" -p -- "$@" else # Clean up after NextStep and OpenStep mkdir. for d in ./-m ./-p ./--version "./$dirmode"; do test -d $d && rmdir $d done fi ;; esac for file do case $file in /*) pathcomp=/ ;; *) pathcomp= ;; esac oIFS=$IFS IFS=/ set fnord $file shift IFS=$oIFS for d do test "x$d" = x && continue pathcomp=$pathcomp$d case $pathcomp in -*) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr else if test ! -z "$dirmode"; then echo "chmod $dirmode $pathcomp" lasterr= chmod "$dirmode" "$pathcomp" || lasterr=$? if test ! -z "$lasterr"; then errstatus=$lasterr fi fi fi fi pathcomp=$pathcomp/ done done exit $errstatus # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: gedit-developer-plugins-0.5.15/Makefile.in0000664000175000017500000005742611767134104015352 00000000000000# Makefile.in generated by automake 1.11.3 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(top_srcdir)/configure AUTHORS COPYING \ ChangeLog INSTALL NEWS install-sh missing mkinstalldirs \ py-compile ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/python_module.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ if test -d "$(distdir)"; then \ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -rf "$(distdir)" \ || { sleep 5 && rm -rf "$(distdir)"; }; \ else :; fi am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GEDIT_CFLAGS = @GEDIT_CFLAGS@ GEDIT_LIBS = @GEDIT_LIBS@ GEDIT_PLUGIN_DIR = @GEDIT_PLUGIN_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKSOURCEVIEW_LANGS_DIR = @GTKSOURCEVIEW_LANGS_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = po testing plugins language-specs NULL = EXTRA_DIST = \ intltool-merge.in \ intltool-update.in \ intltool-extract.in \ ChangeLog \ AUTHORS \ COPYING \ HACKING \ INSTALL \ NEWS \ README \ test.py \ $(NULL) DISTCLEANFILES = \ intltool-extract \ intltool-merge \ intltool-update \ po/.intltool-merge-cache \ $(NULL) DISTCHECK_CONFIGURE_FLAGS = \ --with-home all: all-recursive .SUFFIXES: am--refresh: Makefile @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__remove_distdir) dist-lzma: distdir tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma $(am__remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__remove_distdir) dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__remove_distdir) dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lzma*) \ lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ *.tar.lz*) \ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @test -n '$(distuninstallcheck_dir)' || { \ echo 'ERROR: trying to run $@ with an empty' \ '$$(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ $(am__cd) '$(distuninstallcheck_dir)' || { \ echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am am--refresh check check-am clean clean-generic \ ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \ dist-lzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \ distcheck distclean distclean-generic distclean-tags \ distcleancheck distdir distuninstallcheck dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am check: ChangeLog test test: (cd $(srcdir) && ./test.py) test-log: (cd $(srcdir) && ./test.py &>_test.log) dist: ChangeLog sdist: dist gpg --armor --sign --detach-sig *.tar.gz # Build ChangeLog from bazaar history. Only build this when in an # bzr branch. ChangeLog: @if test -d $(top_srcdir)/.bzr/branch; then \ echo "" > ChangeLog; \ echo "" >> ChangeLog; \ BZR_PLUGIN_PATH=bzr_plugins bzr log --log-format=gnu >> ChangeLog; \ fi .PHONY: ChangeLog # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gedit-developer-plugins-0.5.15/Makefile.am0000644000175000017500000000160411701113346015313 00000000000000SUBDIRS = po testing plugins language-specs NULL = EXTRA_DIST = \ intltool-merge.in \ intltool-update.in \ intltool-extract.in \ ChangeLog \ AUTHORS \ COPYING \ HACKING \ INSTALL \ NEWS \ README \ test.py \ $(NULL) DISTCLEANFILES = \ intltool-extract \ intltool-merge \ intltool-update \ po/.intltool-merge-cache \ $(NULL) DISTCHECK_CONFIGURE_FLAGS = \ --with-home check: ChangeLog test test: (cd $(srcdir) && ./test.py) test-log: (cd $(srcdir) && ./test.py &>_test.log) dist: ChangeLog sdist: dist gpg --armor --sign --detach-sig *.tar.gz # Build ChangeLog from bazaar history. Only build this when in an # bzr branch. ChangeLog: @if test -d $(top_srcdir)/.bzr/branch; then \ echo "" > ChangeLog; \ echo "" >> ChangeLog; \ BZR_PLUGIN_PATH=bzr_plugins bzr log --log-format=gnu >> ChangeLog; \ fi .PHONY: ChangeLog gedit-developer-plugins-0.5.15/NEWS0000644000175000017500000001243411713770321013766 00000000000000gdp-0.5.11: All features refined ================================ This releases completes an extensive set of refinements to gedit developer plugins. Notable feature changes include. * Formatting is more reliable. * Use Tools > Show syntax errors only to hide warnings when checking the syntax of a file. * GDP completions are integrated with Gedit's snippet and word completions. * Use +space to activate all proposals. * Use Tools > Suggest completions for the edit to automatically show the proposed completions. * The completion accelerator key can be configured with the plugin. * Find and replace widgets were adjusted to take less space an obey the theme rules. gdp-0.4.1 (2.30.0): Pydoc proprosals in completions =================================================== This release added pydoc to the completion details. The complete pydoc for modules, classes, and members is presented the the details window when completing python code. gdp-0.4.0 (2.30.0): Update to GTKSourceView Completions ======================================================= This release replaces the snippet-based completer with a GTKSourceView-based CompletionProvider. * The python completer has rudimentary documentation in the info window that you can see using the Details button. This feature will be improved in future releases. * Find searches application and xml files like javascript. Find was skipping some file types that gedit can edit that do not have the text/* mime-type. * A bug that caused an exception when the syntax completer closed a tag is now fixed. gdp-0.3.1 (2.28.0): Markup completion ===================================== This release adds XML-based markup completion. * Detection is based on the language/highlighting of the document. The supported languages are: XML, XSLT, HTML, Mallard, Docbook, and Zope page templates. * When opening a tag, the completer suggests other open or empty tags that are already in the document. * When closing a tag, the complete suggests the tags that are still open before the cursor. This is helpful, though not perfect. The root element for example, will always be listed since it is closed at the end of the document. * When the adding an attribute, the completer suggests the attributes that were used in other tags. * You still need to know the markup's grammatical rules since elements and attributes are suggested from context rather than schema. * The implementation could be extended to suggest elements and attributes for specific grammars. Important changes. * The completion key accelerator has changed from Space to Slash (Ctrl+/) to avoid conflicts with HTML snippet commands. gdp-0.2 (2.28.0): UI and stability improvements =============================================== This release improves the user experience of the four plugins: * The Multi-file find and replace panel and style and syntax panel were repositioned to the side. The side panels are more likely to be open and it is easier to read line numbers in the panel and see the line numbers in the documented at the same time. * Syntax completion is now available from the Tools menu. If the syntax completer detects a syntax error, it will signal the Format plugin to show the Syntax and style panel. * Search results can be saved to file. The panel saves your previous entries so that they can be repeated. * The Bazaar plugin supports all the bzr-gtk GUI functions, notably you can create new branches and perform checkouts. * Multiple files can be checked for syntax and style issues. There are some implementation/build issues that were resolved: * The XML checker uses the standard python library, no additional installations are needed. * Snippets and external tools were removed -- they were not useful for general distribution and they could overwrite person snippets and tools :( For developers there is an autogen.sh to build the project from source. See screenshots at http://curtis.hovey.name/gallery/Sinzui/gdp-2-28-0 Get the tarball at https://launchpad.net/gdp gdp-0.1 (2.26.1): The first release =================================== Gedit-developer-plugins (GDP) are a set of plugins for gedit that provide additional editing features for software development. GDP provides: * Multi-file find and replace Directories and file types can be specified. Regular expressions are supported. * Syntax completion Python completion using the file's imports and definitions. Simple word completion based on the words in the file. Use Space to activate the snippet completer window. * Formatting Format paragraphs, lists, and imports. Reformat test using regular expressions. Check the syntax and style of Python, XML, and plain text. Check and reformat Python doctests. * Project management via Bazaar DVCS integrates bzr-gtk to show status, tags, annotations, visualize, commit, merge, and push. Open files changes in the branch. See screenshots at http://curtis.hovey.name/gallery/Sinzui/gdp-2-26-1 Get the tarball at https://launchpad.net/gdp/trunk/0.1 gedit-developer-plugins-0.5.15/README0000644000175000017500000000517411713765311014155 00000000000000General Information =================== This is version 0.5.11 of gedit-developer-plugins (GDP). GDP are a set of plugins for gedit that provide additional editing features for software development. GDP provides: * Multi-file find and replace Directories and file types can be specified. Regular expressions are supported. * Syntax completion Python completion using the file's imports and definitions. Simple word completion based on the words in the file. XML-based markup completion will suggest open tag, close tags, and attributes based on the cursor's position. Use space (Ctrl+space) to activate the completer window. * Formatting Format paragraphs, lists, and imports. Reformat test using regular expressions. Check the syntax and style of Python, XML, and plain text. Check and reformat Python doctests. * Project management via Bazaar DVCS integrates bzr-gtk to show status, tags, annotations, visualize, commit, merge, and push. Open files changes in the branch. See screenshots at http://curtis.hovey.name/gallery/Sinzui/gdp-2-28-0 Installation from deb --------------------- Debian packages are available at: https://launchpad.net/~sinzui/+archive/ppa Adding this archive to your sources will get you the latest updated as they are released. Installation from tarball ------------------------- GDP requires pocket-lint, a python library for checking style and reformatting sources. It can be gotten from https://launchpad.net/pocket-lint To install the plugins for personal use (in your home directory), run the following commands from a terminal: ./configure make make install Or you may choose to install the plugins in another location. ./configure --without-home --prefix= make make install To install the plugins in the same location as the standard gedit plugins, set the prefix path to the same as gedit (usually /usr). See HACKING for instructions to build the plugins from a branch. Working versions ---------------- The version number is synced to the gedit version. Plugins may work with older versions of gedit. Run the following command from a terminal to run the test suite. make test If the test suite passes, the plugins will probably work. In the past, API changes to GtkSourceView2 and gtk.Builder were underlying cause of incompatibilities Reporting bugs and contributing ------------------------------- You can learn details about the GDP project, ask questions, and report bugs at https://launchpad.net/gdp Include the gedit version from Menu > Help > about if possible. gedit-developer-plugins-0.5.15/testing/0000775000175000017500000000000011767134173015032 500000000000000gedit-developer-plugins-0.5.15/testing/Makefile.in0000664000175000017500000002465111767134104017021 00000000000000# Makefile.in generated by automake 1.11.3 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = testing DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/python_module.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GEDIT_CFLAGS = @GEDIT_CFLAGS@ GEDIT_LIBS = @GEDIT_LIBS@ GEDIT_PLUGIN_DIR = @GEDIT_PLUGIN_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKSOURCEVIEW_LANGS_DIR = @GTKSOURCEVIEW_LANGS_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ NULL = EXTRA_DIST = \ Gedit.py \ __init__.py \ testrunner.py \ $(NULL) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu testing/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu testing/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic dist-hook \ distclean distclean-generic distdir dvi dvi-am html html-am \ info info-am install install-am install-data install-data-am \ install-dvi install-dvi-am install-exec install-exec-am \ install-html install-html-am install-info install-info-am \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am dist-hook: mkdir $(distdir)/tests cp -p $(srcdir)/tests/* $(distdir)/tests rm -f $(distdir)/tests/*.pyc # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gedit-developer-plugins-0.5.15/testing/Makefile.am0000644000175000017500000000027011677431244017002 00000000000000NULL = EXTRA_DIST = \ Gedit.py \ __init__.py \ testrunner.py \ $(NULL) dist-hook: mkdir $(distdir)/tests cp -p $(srcdir)/tests/* $(distdir)/tests rm -f $(distdir)/tests/*.pyc gedit-developer-plugins-0.5.15/testing/__init__.py0000644000175000017500000002472511747043106017064 00000000000000# Copyright (C) 2007-2012 - Curtis Hovey # This software is licensed under the GNU General Public License version 2 # (see the file COPYING). """Test utilities.""" __all__ = [ 'Dummy', 'FakeMethod', 'GeditTestCase', 'SignalTester', 'make_gedit', 'MockMethod' 'MockProperty', 'literal', 'proof', ] import inspect import re import os from tempfile import NamedTemporaryFile import unittest from gi.repository import Gio class GeditTestCase(unittest.TestCase): @staticmethod def make_gedit(file_path): """Return a gedit.Window with the document loaded from file_path. If file_path is None and document is not None, the provided document will be used with the window. """ from testing import Gedit window = Gedit.app_get_default().create_window() if file_path: window.get_child().remove_page(0) location = Gio.file_new_for_path(file_path) window.create_tab_from_location(location, None, 0, 0, False, True) view = window.get_active_view() document = window.get_active_document() return window, view, document def make_gsettings(self): if 'GSETTINGS_BACKEND' in os.environ: old_backend = os.environ['GSETTINGS_BACKEND'] self.addCleanup( os.environ.update, {'GSETTINGS_BACKEND': old_backend}) else: self.addCleanup(os.environ.__delitem__, 'GSETTINGS_BACKEND') os.environ['GSETTINGS_BACKEND'] = 'memory' settings = Gio.Settings.new('org.gnome.gedit.plugins') return settings def make_config(self, module, config_class): config_file = NamedTemporaryFile(prefix='gdp_', suffix='.conf') original_config = module.config module.config = config_class() module.config.dir_path = os.path.dirname(config_file.name) module.config.file_path = config_file.name self.addCleanup( setattr, module, 'config', original_config) self.addCleanup(config_file.close) return config_file @staticmethod def make_file(text, suffix='.txt'): text_file = NamedTemporaryFile(prefix='gdp_', suffix=suffix) text_file.write(text) text_file.flush() return text_file class MockMethod(object): @classmethod def bind(klass, test_instance, obj, method_name, return_value=None, raise_error=None, raise_on=1): original_method = getattr(obj, method_name) test_instance.addCleanup(setattr, obj, method_name, original_method) setattr(obj, method_name, klass(return_value, raise_error, raise_on)) def __init__(self, return_value=None, raise_error=None, raise_on=1): self.called = False self.call_count = 0 self.args = None self.kwargs = None self.return_value = return_value self.raise_error = raise_error self.raise_on = raise_on def __call__(self, *args, **kwargs): self.called = True self.call_count += 1 self.args = args self.kwargs = kwargs if self.raise_error is not None and self.call_count == self.raise_on: raise self.raise_error return self.return_value class FakeMethod(MockMethod): @classmethod def bind(klass, test_instance, obj, method_name, function): original_method = getattr(obj, method_name) test_instance.addCleanup(setattr, obj, method_name, original_method) setattr(obj, method_name, klass(function)) def __init__(self, function=None): super(FakeMethod, self).__init__() if function is None: function = self.no_def self.function = function def __call__(self, *args, **kwargs): super(FakeMethod, self).__call__(*args, **kwargs) self.function() def no_def(self): return None class MockProperty(MockMethod): @classmethod def bind(klass, test_instance, obj, method_name, return_value=None): original_method = getattr(obj, method_name) test_instance.addCleanup(setattr, obj, method_name, original_method) mock = klass(return_value) setattr(obj, method_name, property(mock.get_value, mock.set_value)) return mock def get_value(self, other): self.called = True return self.return_value def set_value(self, other, value): self.called = True self.return_value = value class Dummy(object): """A class for passing dummy data between the test and the testee.""" # A dictionary to store data by _ name data = {} def __new__(cls, *args, **kwargs): """Create a Singleton class.""" if '_inst' not in vars(cls): cls._inst = super(Dummy, cls).__new__(cls, *args, **kwargs) return cls._inst def __getitem__(self, key): """Return the value of the key in Dummy.""" return self.data[key] def __setitem__(self, key, val): """Set the value of the key in Dummy.""" self.data[key] = val def __delitem__(self, key): """Delete the key and value from Dummy.""" del self.data[key] def __contains__(self, key): """Return True when the key is present in Dummy.""" return key in self.data def __len__(self): """Return number of items in Dummy.""" return len(self.data) def __repr__(self): """Return the str representation of Dummy.""" return repr(self.data) def get(self, key, default): """Return the value of the key in Dummy, or default.""" return self.data.get(key, default) class SignalTester(object): """A simple class for GSignal emission and reception testing. Signal emission testing: testee = Testee() signal_tester = SignalTester(['testee', 'data']) signal_id = signal_tester.connect('signal-name', signal_tester.receiver) testee.emitDataMethodOrFunction(data) assert signal_tester.testee is testee assert signal_tester.data == data Signal reception testing: target = targetEmitterClass() testee = Testee() signal_tester = SignalTester() signal_tester.attachReceptionHarness(testee) testee.testeeConnect( testee, target, 'target_name', 'signal-name', testee.on_callback) signal_tester.emitter('signal-name', target, data) ... (tests) testee.testeeDisconnect( testee, target, 'target_name', 'signal_name') signal_tester.detachReceptionHarness(testee) """ def __init__(self, attrs=None): """Create instance attributes from a list of names. The list of names are are used to create instance attributes that can be access by a controlling routine. """ self.attrs = attrs if attrs: for name in attrs: self.__dict__[name] = None def receiver(self, *args): """A generic method for testing a signal is received. The arguments received are assigned to the list of attrs passed when the class was initialized. Order is very important. Example: handler_id = testee.connect('signal-sent', signal_tester.receiver) """ for i, name in enumerate(self.attrs): self.__dict__[name] = args[i] def emitter(self, signal_name, target, *args): """A generic method for emitting a signal. The args are sent as the data when signal_name is emitted. Order is very important. """ target.emit(signal_name, *args) @classmethod def attachReceptionHarness(cls, testee): """Attached the methods need for testing callbacks. To test that a callback receives and handles a signal correctly, a dictionary and two methods are added to the testee: signal_tester_signal_ids is a dictionary of the signal ids that are being tests. See testeeConnect and testeeDisconnect for their explaination. """ testee.signal_tester_signal_ids = {} testee.testeeConnect = cls.testeeConnect testee.testeeDisconnect = cls.testeeDisconnect @classmethod def detachReceptionHarness(cls, testee): """Detached the methods need for testing callbacks. Remove the callback test harness. """ if testee.signal_tester_signal_ids: del testee.signal_tester_signal_ids if testee.testeeConnect: del testee.testeeConnect if testee.testeeDisconnect: del testee.testeeDisconnect @classmethod def testeeConnect( cls, testee, target, target_name, signal_name, callback): """A generic method for connecting the testee to SignalTester. This method can be monkey patched to the testee to connect the code being tested to the test. """ key = '%s_%s' % (target_name, signal_name) testee.signal_tester_signal_ids[key] = target.connect( signal_name, callback) @classmethod def testeeDisconnect(cls, testee, target, target_name, signal_name): """A generic method for disconnecting the testee from SignalTester. This method can be monkey patched to the testee to connect the code being tested to the test. """ key = '%s_%s' % (target_name, signal_name) target.disconnect(testee.signal_tester_signal_ids[key]) del testee.signal_tester_signal_ids[key] def literal(value): """Print the literal value. Display None, string, and numbers as raw values. Objects are presented using repr() """ print '%s' % value _re_tokens = re.compile(r'[\w]+') def proof(outcome): """Print True when the outcome of an expression evaluates to True. When the outcome is False, the values in the expression are printed for verification. """ if outcome is True: print '%s' % outcome return # The outcome of the expression did not evaluate to True. # Go up 2 frames to the testrunner and get the source of the example. source = inspect.stack()[2][0].f_locals['example'].source # Remove 'proof(...)\n' to get the expression the testrunner evaluated. expression = source[6:-2] tokens = set(_re_tokens.findall(expression)) for token in list(tokens): # Go up 1 frame to the doctest and use the value of the token # if it is a local variable. if token in inspect.stack()[1][0].f_locals: value = repr(inspect.stack()[1][0].f_locals[token]) expression = expression.replace(token, value) print expression gedit-developer-plugins-0.5.15/testing/Gedit.py0000644000175000017500000010410611711301735016345 00000000000000# Copyright (C) 2007-2012 - Curtis Hovey # This software is licensed under the GNU General Public License version 2 # (see the file COPYING). """A dummy implemetation of objects.""" from collections import defaultdict from mimetypes import MimeTypes from urllib import urlopen import __builtin__ from gettext import gettext from gettext import gettext as _ from gi.repository import GObject from gi.repository import Gtk from gi.repository import GtkSource from testing import Dummy GEDIT_TAB_STATE_NORMAL = 'normal' GEDIT_TAB_STATE_LOADING = 'loading' GEDIT_TAB_STATE_REVERTING = 'reverting' GEDIT_TAB_STATE_SAVING = 'saving' GEDIT_TAB_STATE_PRINTING = 'printing' GEDIT_TAB_STATE_PRINT_PREVIEWING = 'print-previewing' GEDIT_TAB_STATE_SHOWING_PRINT_PREVIEW = 'showing-print-preview' GEDIT_TAB_STATE_GENERIC_NOT_EDITABLE = 'generic-not-editable' GEDIT_TAB_STATE_LOADING_ERROR = 'loading-error' GEDIT_TAB_STATE_REVERTING_ERROR = 'reverting-error' GEDIT_TAB_STATE_SAVING_ERROR = 'saving-error' GEDIT_TAB_STATE_GENERIC_ERROR = 'generic-error' GEDIT_TAB_STATE_CLOSING = 'closing' dummy = Dummy() def gedit_app_get_type(): """A dummy implementation of gedit_app_get_type.""" if 'gedit_app_get_type' in dummy: return dummy['gedit_app_get_type'] else: raise NotImplementedError def gedit_app_get_default(): """A dummy implementation of gedit_app_get_default.""" if 'gedit_app_get_default' in dummy: return dummy['gedit_app_get_default'] else: raise NotImplementedError def document_error_quark(): """A dummy implementation of document_error_quark.""" if 'document_error_quark' in dummy: return dummy['document_error_quark'] else: raise NotImplementedError def gedit_document_get_type(): """A dummy implementation of gedit_document_get_type.""" if 'gedit_document_get_type' in dummy: return dummy['gedit_document_get_type'] else: raise NotImplementedError def gedit_document_new(): """A dummy implementation of gedit_document_new.""" if 'gedit_document_new' in dummy: return dummy['gedit_document_new'] else: raise NotImplementedError def gedit_encoding_get_type(): """A dummy implementation of gedit_encoding_get_type.""" if 'gedit_encoding_get_type' in dummy: return dummy['gedit_encoding_get_type'] else: raise NotImplementedError def encoding_get_from_charset(charset): """A dummy implementation of encoding_get_from_charset.""" if 'encoding_get_from_charset' in dummy: return dummy['encoding_get_from_charset'] else: raise NotImplementedError def gedit_encoding_get_from_charset(charset): """A dummy implementation of gedit_encoding_get_from_charset.""" if 'gedit_encoding_get_from_charset' in dummy: return dummy['gedit_encoding_get_from_charset'] else: raise NotImplementedError def encoding_get_from_index(index): """A dummy implementation of encoding_get_from_index.""" if 'encoding_get_from_index' in dummy: return dummy['encoding_get_from_index'] else: raise NotImplementedError def gedit_encoding_get_from_index(index): """A dummy implementation of gedit_encoding_get_from_index.""" if 'gedit_encoding_get_from_index' in dummy: return dummy['gedit_encoding_get_from_index'] else: raise NotImplementedError def encoding_get_utf8(): """A dummy implementation of encoding_get_utf8.""" if 'encoding_get_utf8' in dummy: return dummy['encoding_get_utf8'] else: raise NotImplementedError def gedit_encoding_get_utf8(): """A dummy implementation of gedit_encoding_get_utf8.""" if 'gedit_encoding_get_utf8' in dummy: return dummy['gedit_encoding_get_utf8'] else: raise NotImplementedError def encoding_get_current(): """A dummy implementation of encoding_get_current.""" if 'encoding_get_current' in dummy: return dummy['encoding_get_current'] else: raise NotImplementedError def gedit_encoding_get_current(): """A dummy implementation of gedit_encoding_get_current.""" if 'gedit_encoding_get_current' in dummy: return dummy['gedit_encoding_get_current'] else: raise NotImplementedError def help_display(parent, file_name, link_id): """A dummy implementation of help_display.""" if 'help_display' in dummy: return dummy['help_display'] else: raise NotImplementedError def gedit_panel_get_type(): """A dummy implementation of gedit_panel_get_type.""" if 'gedit_panel_get_type' in dummy: return dummy['gedit_panel_get_type'] else: raise NotImplementedError def gedit_panel_new(): """A dummy implementation of gedit_panel_new.""" if 'gedit_panel_new' in dummy: return dummy['gedit_panel_new'] else: raise NotImplementedError def gedit_plugin_get_type(): """A dummy implementation of gedit_plugin_get_type.""" if 'gedit_plugin_get_type' in dummy: return dummy['gedit_plugin_get_type'] else: raise NotImplementedError def gedit_tab_get_type(): """A dummy implementation of gedit_tab_get_type.""" if 'gedit_tab_get_type' in dummy: return dummy['gedit_tab_get_type'] else: raise NotImplementedError def tab_get_from_document(doc): """A dummy implementation of tab_get_from_document.""" if 'tab_get_from_document' in dummy: return dummy['tab_get_from_document'] else: raise NotImplementedError def gedit_tab_get_from_document(doc): """A dummy implementation of gedit_tab_get_from_document.""" if 'gedit_tab_get_from_document' in dummy: return dummy['gedit_tab_get_from_document'] else: raise NotImplementedError def gedit_view_get_type(): """A dummy implementation of gedit_view_get_type.""" if 'gedit_view_get_type' in dummy: return dummy['gedit_view_get_type'] else: raise NotImplementedError def gedit_view_new(doc): """A dummy implementation of gedit_view_new.""" if 'gedit_view_new' in dummy: return dummy['gedit_view_new'] else: raise NotImplementedError def gedit_window_get_type(): """A dummy implementation of gedit_window_get_type.""" if 'gedit_window_get_type' in dummy: return dummy['gedit_window_get_type'] else: raise NotImplementedError def app_get_default(): """A fake implementation of app_get_default. Return a Gedit.App. """ return App() class App(GObject.GObject): """A dummy/fake implementation of App.""" def get_lockdown(self): """A dummy implementation of get_lockdown.""" key = '%s.get_lockdown' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def __new__(cls, *args, **kwargs): """Create a Singleton class.""" if '_inst' not in vars(cls): cls._inst = GObject.GObject.__new__(cls, *args, **kwargs) return cls._inst def get_active_window(self): """A fake implementation fo get_active_window.""" key = '%s.get_active_window' % self.__class__.__name__ if key in dummy: return dummy[key] for window in self.windows: if window.is_active(): return window # No window is active, meaning that either there are no Gedit windows # or that no gedit windows are in the active window group. return self.active_window def get_documents(self): """A fake implementation fo get_views.""" key = '%s.get_documents' % self.__class__.__name__ if key in dummy: return dummy[key] documents = [] for window in self.windows: documents.extend(window.get_documents()) return documents def get_windows(self): """A fake implementation of get_windows.""" key = '%s.get_windows' % self.__class__.__name__ if key in dummy: return dummy[key] return self.windows def __init__(self): """A fake initialization of gedit.App.""" GObject.GObject.__init__(self) self.windows = [] self.active_window = None self.create_window() def create_window(self, screen=None): """A fake implementation of create_window.""" key = '%s.create_window' % self.__class__.__name__ if key in dummy: return dummy[key] window = Window() window.create_tab(True) self.windows.append(window) self.active_window = window return window def get_views(self): """A fake implementation fo get_views.""" key = '%s.get_views' % self.__class__.__name__ if key in dummy: return dummy[key] views = [] for window in self.windows: views.extend(window.get_views()) return views class Document(GtkSource.Buffer): """A dummy/fake implementation of Document.""" def get_short_name_for_display(self): """A dummy implementation of get_short_name_for_display.""" key = '%s.get_short_name_for_display' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_readonly(self): """A dummy implementation of get_readonly.""" key = '%s.get_readonly' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def insert_file(self, _iter, uri, encoding): """A dummy implementation of insert_file.""" key = '%s.insert_file' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def load_cancel(self): """A dummy implementation of load_cancel.""" key = '%s.load_cancel' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def save(self, flags): """A dummy implementation of save.""" key = '%s.save' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def save_as(self, uri, encoding, flags): """A dummy implementation of save_as.""" key = '%s.save_as' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def is_untouched(self): """A dummy implementation of is_untouched.""" key = '%s.is_untouched' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def is_untitled(self): """A dummy implementation of is_untitled.""" key = '%s.is_untitled' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def is_local(self): """A dummy implementation of is_local.""" key = '%s.is_local' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_deleted(self): """A dummy implementation of get_deleted.""" key = '%s.get_deleted' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def goto_line(self, line): """A dummy implementation of goto_line.""" key = '%s.goto_line' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def set_search_text(self, text, flags): """A dummy implementation of set_search_text.""" key = '%s.set_search_text' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_search_text(self, flags): """A dummy implementation of get_search_text.""" key = '%s.get_search_text' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_can_search_again(self): """A dummy implementation of get_can_search_again.""" key = '%s.get_can_search_again' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def search_forward(self, start, end, match_start, match_end): """A dummy implementation of search_forward.""" key = '%s.search_forward' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def replace_all(self, find, replace, flags): """A dummy implementation of replace_all.""" key = '%s.replace_all' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def search_backward(self, start, end, match_start, match_end): """A dummy implementation of search_backward.""" key = '%s.search_backward' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_encoding(self): """A dummy implementation of get_encoding.""" key = '%s.get_encoding' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def set_enable_search_highlighting(self, enable): """A dummy implementation of set_enable_search_highlighting.""" key = '%s.set_enable_search_highlighting' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_enable_search_highlighting(self): """A dummy implementation of get_enable_search_highlighting.""" key = '%s.get_enable_search_highlighting' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def load(self, location, encoding, line_pos, create): """A fake implementation of load. The encoding, line_pos, and create args are ignored. The uri must use the file:// protocol. """ key = '%s.load' % self.__class__.__name__ if key in dummy: return if location: uri = location.get_uri() try: source_file = urlopen(uri) text = ''.join(source_file.readlines()) except IOError: raise ValueError(u'%s cannot be read' % uri) else: source_file.close() self.set_text(text, -1) self.uri = uri self.encoding = encoding mt = MimeTypes() mime_type, encoding = mt.guess_type(uri) lang_manager = GtkSource.LanguageManager.get_default() language = lang_manager.guess_language(uri, mime_type) self.set_language(language) def get_uri_for_display(self): """A fake implementation of get_uri.""" key = '%s.get_uri' % self.__class__.__name__ if key in dummy: return dummy[key] return self.uri if self.uri.startswith('file:'): from urllib import url2pathname return url2pathname(self.uri[7:]) else: return self.uri def get_mime_type(self): """A fake implementation of get_mime_type.""" language = self.get_language() key = '%s.get_mime_type' % self.__class__.__name__ if key in dummy: return dummy[key] elif language: mime_types = language.get_mime_types() if mime_types: return mime_types[0] else: # There is no information about the mime-type. pass return 'text/plain' def __init__(self): """A fake initialization of gedit.Document.""" GtkSource.Buffer.__init__(self) self.uri = None self.encoding = None GObject.signal_new( 'cursor-moved', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'load', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'loaded', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'loading', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'save', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'saved', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'saving', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'search-highlight-updated', Document, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) class Panel(Gtk.VBox): """A dummy/fake implementation of Panel.""" def add_item(self, item, name, image): """A dummy implementation of add_item.""" key = '%s.add_item' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def add_item_with_stock_icon(self, item, name, stock_id): """A dummy implementation of add_item_with_stock_icon.""" key = '%s.add_item_with_stock_icon' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def remove_item(self, item): """A dummy implementation of remove_item.""" key = '%s.remove_item' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def activate_item(self, item): """A dummy implementation of activate_item.""" key = '%s.activate_item' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def item_is_active(self, item): """A dummy implementation of item_is_active.""" key = '%s.item_is_active' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_orientation(self): """A dummy implementation of get_orientation.""" key = '%s.get_orientation' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_n_items(self): """A dummy implementation of get_n_items.""" key = '%s.get_n_items' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError class WindowActivatable: """A dummy/fake implementation of Plugin.""" def do_activate(self): """A dummy implementation of activate.""" key = '%s.do_activate' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def do_deactivate(self): """A dummy implementation of deactivate.""" key = '%s.do_deactivate' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def do_update_state(self): """A dummy implementation of update_ui.""" key = '%s.do_update_state' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def is_configurable(self): """A dummy implementation of is_configurable.""" key = '%s.is_configurable' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def create_configure_dialog(self): """A dummy implementation of create_configure_dialog.""" key = '%s.create_configure_dialog' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError class Statusbar(Gtk.Statusbar): """A dummy/fake implementation of Statusbar.""" def flash_message(self, context_id, message): """A dummy implementation of flash_message.""" key = '%s.flash_message' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError class Tab(Gtk.VBox): """A dummy/fake implementation of Tab.""" def get_state(self): """A dummy implementation of get_state.""" key = '%s.get_state' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def set_auto_save_enabled(self, enable): """A dummy implementation of set_auto_save_enabled.""" key = '%s.set_auto_save_enabled' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_auto_save_enabled(self): """A dummy implementation of get_auto_save_enabled.""" key = '%s.get_auto_save_enabled' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def set_auto_save_interval(self, interval): """A dummy implementation of set_auto_save_interval.""" key = '%s.set_auto_save_interval' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_auto_save_interval(self): """A dummy implementation of get_auto_save_interval.""" key = '%s.get_auto_save_interval' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_document(self): """A fake implementation of get_document.""" key = '%s.get_document' % self.__class__.__name__ if key in dummy: return dummy[key] view = self.get_view() if view: return view.get_buffer() return None def get_view(self): """A fake implementation of get_view.""" key = '%s.get_view' % self.__class__.__name__ if key in dummy: return dummy[key] children = self.get_children() if children: # vbox[scrolledwindow].viewport.view return children[0].get_child().get_child() return None def __init__(self): """A fake initialization of gedit.Tab.""" Gtk.VBox.__init__(self) GObject.signal_new( 'drop-uris', Tab, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) class View(GtkSource.View): """A dummy/fake implementation of View.""" def cut_clipboard(self): """A dummy implementation of cut_clipboard.""" key = '%s.cut_clipboard' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def copy_clipboard(self): """A dummy implementation of copy_clipboard.""" key = '%s.copy_clipboard' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def paste_clipboard(self): """A dummy implementation of paste_clipboard.""" key = '%s.paste_clipboard' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def delete_selection(self): """A dummy implementation of delete_selection.""" key = '%s.delete_selection' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def select_all(self): """A dummy implementation of select_all.""" key = '%s.select_all' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def scroll_to_cursor(self): """A dummy implementation of scroll_to_cursor.""" key = '%s.scroll_to_cursor' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def set_font(self, _def, font_name): """A dummy implementation of set_font.""" key = '%s.set_font' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_window(self, win): """Return the real or dummy Gdk.window. When View.get_window is a key in dummy, a testing value is returned, other the real window is returned. """ key = '%s.get_window' % self.__class__.__name__ if key in dummy: return dummy[key] return GtkSource.View.get_window(self, win) def __init__(self, document=None): """A fake initialization of gedit.View.""" if not document: document = Document() GtkSource.View.__init__(self, buffer=document) GObject.signal_new( 'drop-uris', View, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) class FakeProps(object): def __init__(self): self._props = defaultdict(str) def __getattr__(self, name): if name in object.__dict__: return object.__dict__[name] else: return self.__dict__['_props'][name] def __setattribute__(self, name, value): if name in object.__dict__: object.__dict__[name] = value else: object.__dict__['_props'][name] = value class FakePanel(object): props = FakeProps() def __init__(self): self.widget = None self.label = None self.icon = None def add_item(self, widget, item_id, label, icon): self.widget = widget self.label = label self.icon = icon def remove_item(self, widget): self.widget = None self.label = None self.icon = None def activate_item(self, panel_tab): pass class Window(Gtk.Window): """A dummy/fake implementation of Window.""" def close_tab(self, tab): """A dummy implementation of close_tab.""" key = '%s.close_tab' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def close_tabs(self, tabs): """A dummy implementation of close_tabs.""" key = '%s.close_tabs' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def close_all_tabs(self): """A dummy implementation of close_all_tabs.""" key = '%s.close_all_tabs' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_unsaved_documents(self): """A dummy implementation of get_unsaved_documents.""" key = '%s.get_unsaved_documents' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_statusbar(self): """A dummy implementation of get_statusbar.""" key = '%s.get_statusbar' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_state(self): """A dummy implementation of get_state.""" key = '%s.get_state' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def get_tab_from_location(self, location): """A dummy implementation of get_tab_from_location.""" key = '%s.get_tab_from_location' % self.__class__.__name__ if key in dummy: return dummy[key] else: raise NotImplementedError def create_tab(self, jump_to): """A fake implementation of create_tab.""" key = '%s.create_tab' % self.__class__.__name__ if key in dummy: return self.create_tab_from_location(None, None, 0, 0, True, jump_to) def create_tab_from_location(self, location, encoding, line_pos, column_pos, create, jump_to): """A fake implementation of create_tab_from_location.""" key = '%s.create_tab_from_location' % self.__class__.__name__ if key in dummy: return document = Document() tab_label = Gtk.Label(label='Untitled') if location: from os.path import basename document.load(location, encoding, line_pos, create) tab_label = Gtk.Label( label=basename(document.get_uri_for_display())) view = View(document) scrolled_win = Gtk.ScrolledWindow() scrolled_win.set_policy( Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) scrolled_win.add_with_viewport(view) tab = Tab() tab.pack_start(scrolled_win, True, True, 0) n = self.get_child().append_page(tab, tab_label) tab.show_all() if n == 0 or jump_to: self.get_child().set_current_page(n) self.emit('tab-added', tab) def get_active_tab(self): """A fake implementation of get_active_tab.""" key = '%s.get_active_tab' % self.__class__.__name__ if key in dummy: return dummy[key] n = self.get_child().get_current_page() return self.get_child().get_nth_page(n) def get_group(self): """A fake initialization of gedit.Window.get_group.""" key = '%s.get_group' % self.__class__.__name__ if key in dummy: return dummy[key] return Gtk.WindowGroup() def get_side_panel(self): """A fake bottom panel.""" return FakePanel() def get_active_document(self): """A fake implementation of get_active_document.""" key = '%s.get_active_document' % self.__class__.__name__ if key in dummy: return dummy[key] tab = self.get_active_tab() return tab.get_document() def get_documents(self): """A fake implementation of get_documents.""" key = '%s.get_views' % self.__class__.__name__ if key in dummy: return dummy[key] return [tab.get_document() for tab in self.tabs_] def get_bottom_panel(self): """A fake bottom panel.""" class FakePanel: def __init__(self): self.widget = None self.label = None self.icon = None def add_item(self, widget, label, icon): self.widget = widget self.label = label self.icon = icon def remove_item(self, widget): self.widget = None self.label = None self.icon = None return FakePanel() def set_active_tab(self, tab): """A fake implementation of set_active_tab.""" key = '%s.set_active_tab' % self.__class__.__name__ if key in dummy: dummy[key] = tab return n = self.get_child().page_num(tab) self.get_child().set_current_page(n) def get_views(self): """A fake implementation of get_views.""" key = '%s.get_views' % self.__class__.__name__ if key in dummy: return dummy[key] return [tab.get_view() for tab in self.tabs_] def get_active_view(self): """A fake implementation of get_active_view.""" key = '%s.get_active_view' % self.__class__.__name__ if key in dummy: return dummy[key] tab = self.get_active_tab() return tab.get_view() @property def tabs_(self): """A testing property to access all tabs (do not use).""" n_pages = self.get_child().get_n_pages() tabs = [] for n in range(0, n_pages): tabs.append(self.get_child().get_nth_page(n)) return tabs def get_ui_manager(self): """A fake initialization of gedit.Window.get_ui_manager.""" return self.ui_manager def __init__(self): """A fake initialization of gedit.Window.""" Gtk.Window.__init__(self) self.add(Gtk.Notebook()) self.connect("destroy", Gtk.main_quit) self.resize(300, 250) self.action_group = Gtk.ActionGroup(name='GeditMenu') self.action_group.add_actions([ ('File', None, _('_File'), None, None, None), ('Edit', None, _('_Edit'), None, None, None), ('View', None, _('_View'), None, None, None), ('Search', None, _('_Search'), None, None, None), ('Tools', None, _('_Tools'), None, None, None), ]) self.ui_manager = Gtk.UIManager() self.ui_manager.insert_action_group(self.action_group, -1) menu_xml = """ """ self.ui_id = self.ui_manager.add_ui_from_string(menu_xml) GObject.signal_new( 'active-tab-changed', Window, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'active-tab-state-changed', Window, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'tab-added', Window, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'tab-removed', Window, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) GObject.signal_new( 'tab-reordered', Window, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT,)) __builtin__.__dict__['_'] = gettext gedit-developer-plugins-0.5.15/testing/tests/0000775000175000017500000000000011767134173016174 500000000000000gedit-developer-plugins-0.5.15/testing/tests/test_gedit.py0000664000175000017500000001047611711335701020616 00000000000000# Copyright (C) 2011-2012 - Curtis Hovey # This software is licensed under the MIT license (see the file COPYING). """ Test Gedit fakes. This set of tests provide general testing of the fake gedit objects used in testing. The fake object are not intended to be robust. They exist to mimic basic gedit object behaviours and collaborations. Dummy value may, and are, used inplace of the basic functions when needed. """ import unittest from gi.repository import ( Gio, Gtk, ) from testing import Gedit class DocumentTestCase(unittest.TestCase): def test_init(self): document = Gedit.Document() self.assertIs(None, document.uri) self.assertIs(None, document.encoding) def test_load(self): document = Gedit.Document() location = Gio.file_new_for_path('plugins/gdp/data/snark.py') document.load(location, 'utf-8', 0, False) self.assertIn('plugins/gdp/data/snark.py', document.uri) self.assertEqual('utf-8', document.encoding) self.assertEqual('python', document.get_language().props.id) def test_get_mime_type(self): location = Gio.file_new_for_path('plugins/gdp/data/snark.py') document = Gedit.Document() document.load(location, None, 0, False) self.assertEqual('text/x-python', document.get_mime_type()) class ViewTestCase(unittest.TestCase): def test_init(self): document = Gedit.Document() view = Gedit.View(document) self.assertIs(document, view.get_buffer()) class TabTestCase(unittest.TestCase): def test_init(self): document = Gedit.Document() view = Gedit.View(document) tab = Gedit.Tab() scrolled_win = Gtk.ScrolledWindow() scrolled_win.set_policy( Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) scrolled_win.add_with_viewport(view) tab.pack_start(scrolled_win, True, True, 0) self.assertIs(view, tab.get_view()) self.assertIs(document, tab.get_document()) class WindowTestCase(unittest.TestCase): def test_init(self): window = Gedit.Window() self.assertIsInstance(window.action_group, Gtk.ActionGroup) def test_create_tab(self): window = Gedit.Window() self.assertEqual(0, len(window.tabs_)) window.create_tab(False) self.assertEqual(1, len(window.tabs_)) self.assertIsInstance(window.tabs_[0], Gedit.Tab) def test_create_tab_from_location(self): window = Gedit.Window() self.assertEqual(0, len(window.tabs_)) location = Gio.file_new_for_path('plugins/gdp/data/snark.py') window.create_tab_from_location(location, None, 0, 0, False, True) self.assertEqual(1, len(window.tabs_)) self.assertIn( 'plugins/gdp/data/snark.py', window.get_active_tab().get_document().uri) def test_get_set_active_tab(self): window = Gedit.Window() self.assertEqual(0, len(window.tabs_)) window.create_tab(False) window.create_tab(False) self.assertEqual(2, len(window.tabs_)) self.assertIs(window.tabs_[0], window.get_active_tab()) window.set_active_tab(window.tabs_[1]) self.assertIs(window.tabs_[1], window.get_active_tab()) def test_get_active_view(self): window = Gedit.Window() self.assertEqual(0, len(window.tabs_)) window.create_tab(False) window.create_tab(False) window.set_active_tab(window.tabs_[1]) self.assertIs(window.tabs_[1].get_view(), window.get_active_view()) self.assertEqual(2, len(window.get_views())) def test_get_active_document(self): window = Gedit.Window() self.assertEqual(0, len(window.tabs_)) window.create_tab(False) window.create_tab(False) window.set_active_tab(window.tabs_[1]) self.assertIs( window.tabs_[1].get_document(), window.get_active_document()) self.assertEqual(2, len(window.get_documents())) class AppTestCase(unittest.TestCase): def test_singleton(self): app = Gedit.app_get_default() other_app = Gedit.app_get_default() self.assertIs(app, other_app) def test_create_window(self): app = Gedit.app_get_default() window = app.create_window() self.assertIsInstance(window, Gedit.Window) gedit-developer-plugins-0.5.15/testing/tests/__init__.py0000664000175000017500000000000011677434775020226 00000000000000gedit-developer-plugins-0.5.15/testing/testrunner.py0000755000175000017500000001731411747044457017547 00000000000000#!/usr/bin/python # Copyright (C) 2007-2012 - Curtis Hovey # This software is licensed under the GNU General Public License version 2 # (see the file COPYING). """A simple doctest runner. This test app can be run from test.py which sets the default options. """ import curses import doctest import optparse import os import re import sys import unittest from collections import defaultdict try: from unittest.runner import _WritelnDecorator _WritelnDecorator != '# Supress redefintion warning.' except ImportError: # Hack support for running the tests in Python 2.6-. from unittest import _WritelnDecorator class FakeRunner: def __init__(self, writelin_decorator): self._WritelnDecorator = writelin_decorator unittest.runner = FakeRunner(_WritelnDecorator) from testing import Dummy, SignalTester, literal, proof class Env(object): """The test environment properties.""" @classmethod def get(cls, key, default): """Return the key value when exists, or the default.""" if key in Env.__dict__: return Env.__dict__[key] else: return default class TPut(object): """Terminal colours (tput) utility.""" _colours = [ 'black', 'blue', 'green', 'white', 'red', 'magenta', 'yellow', 'grey'] def __init__(self): try: self.bold = os.popen('tput bold').read() self.reset = os.popen('tput sgr0').read() for i in range(8): cmd = 'tput setf %d' % i colour = self._colours[i] self.__dict__[colour] = os.popen(cmd).read() self.__dict__['bold' + colour] = ( self.bold + self.__dict__[colour]) except IOError: # The default values of the styles are safe for all streams. self.bold = '' self.reset = '' for i in range(8): colour = self._colours[i] self.__dict__[colour] = '' self.__dict__['bold' + colour] = '' class XTermWritelnDecorator(_WritelnDecorator): """Decorate lines with xterm bold and colors when suported.""" _test_terms = re.compile(r'^(File|Failed|Expected|Got)(.*)$', re.M) _test_rule = re.compile(r'^(--[-]+)$', re.M) def __init__(self, stream): """Initialize the stream and setup colors.""" _WritelnDecorator.__init__(self, stream) self.tput = TPut() curses.initscr() self.has_colors = curses.has_colors() curses.endwin() def write(self, arg): """Write bolded and coloured lines.""" if not self.has_colors: text = arg elif arg.startswith('Doctest:') or arg.startswith('Test:'): text = '%s%s%s' % (self.tput.blue, arg, self.tput.reset) elif arg.startswith('Ran'): text = '%s%s%s' % (self.tput.bold, arg, self.tput.reset) elif arg.startswith('ERROR') or arg.startswith('FAIL:'): text = '%s%s%s' % (self.tput.boldred, arg, self.tput.reset) elif arg.endswith('FAIL'): text = '%s%s%s' % (self.tput.red, arg, self.tput.reset) elif arg.startswith('ok'): text = '%s%s%s' % (self.tput.blue, arg, self.tput.reset) elif arg.startswith('--') or arg.startswith('=='): text = '%s%s%s' % (self.tput.grey, arg, self.tput.reset) elif arg.startswith('Traceback'): term = r'%s\1\2%s' % (self.tput.red, self.tput.reset) text = self._test_terms.sub(term, arg) rule = r'%s\1%s' % (self.tput.grey, self.tput.reset) text = self._test_rule.sub(rule, text) else: text = arg self.stream.write(text) def parse_args(): """Parse the command line arguments and return the options.""" parser = optparse.OptionParser( usage="usage: %prog [%options]") parser.add_option( "-v", "--verbosity", dest="verbosity", default=0, action='count', help="The verbosity of the ouput") parser.add_option( "-t", "--test", dest="test_pattern", type="string", help="A regular expression pattern used to select the testst to run.") parser.set_defaults( display=Env.get('t', 't'), verbosity=Env.get('verbosity', 1), test_pattern='.*') return parser.parse_args() def setup_env(params=None): """Setup the test environment. This function merges the command line args with Env customizations and the default values. """ Env.dir_re = re.compile(params.get('dir_re', '(sourcecode)')) if 'paths' in params: [sys.path.insert(0, os.path.abspath(path)) for path in params['paths']] if 'verbosity' in params: Env.verbosity = params['verbosity'] (options, args) = parse_args() Env.verbosity = options.verbosity Env.write_decorator = XTermWritelnDecorator if len(args) >= 1: Env.test_pattern = args[0] else: Env.test_pattern = options.test_pattern def get_globs(): """Return a dictionary of test objects and functions for doctests.""" return dict( Dummy=Dummy, SignalTester=SignalTester, literal=literal, proof=proof) def find_tests(root_dir, skip_dir_re='sourcecode', test_pattern='.*'): """Generate a list of matching test files below a directory.""" file_re = re.compile(r'.*(%s).*' % test_pattern) test_re = re.compile(r'(.*\.doctest|test_.*\.py)$') for path, subdirs, files in os.walk(root_dir): subdirs[:] = [dir for dir in subdirs if skip_dir_re.match(dir) is None] if path.endswith('tests'): for file_ in files: file_path = os.path.join(path, file_) if os.path.islink(file_path) or not test_re.match(file_): continue if file_re.match(file_path): yield os.path.join(path, file_) def project_dir(): """The project directory for this script.""" script_path = os.path.abspath(sys.argv[0]) return '/'.join(script_path.split('/')[0:-1]) def setUp(doctest): """Gedit has gettext compiled into builtins.""" import __builtin__ from gettext import gettext __builtin__.__dict__['_'] = gettext def tearDown(doctest): """Remove the gedit's gettext from builtins.""" import __builtin__ del __builtin__.__dict__['_'] def main(params=None): """Run the specified tests or all. Uses an option command line argument that is a regulat expression to select a subset of tests to run. """ setup_env(params) os.chdir(project_dir()) os.environ['use_fake_gedit'] = 'true' os.environ['GSETTINGS_BACKEND'] = 'memory' # Format the output. unittest.runner._WritelnDecorator = Env.write_decorator suite = unittest.TestSuite() test_loader = unittest.defaultTestLoader doctest.set_unittest_reportflags(doctest.REPORT_NDIFF) option_flags = doctest.ELLIPSIS | doctest.NORMALIZE_WHITESPACE globs = get_globs() doctests = defaultdict(list) for test in find_tests('./', Env.dir_re, Env.test_pattern): if test.endswith('.doctest'): top_dir = test[2:test.find('/', 2, ) - 0] doctests[top_dir].append(test) else: if test.startswith('./testing/'): test_module = test[2:-3].replace('/', '.') else: test_module = test[10:-3].replace('/', '.') suite.addTest(test_loader.loadTestsFromName(test_module)) for top_dir in doctests: suite.addTest(doctest.DocFileSuite( module_relative=False, setUp=setUp, tearDown=tearDown, globs=globs, optionflags=option_flags, *doctests[top_dir])) unittest.TextTestRunner(verbosity=Env.verbosity).run(suite) if __name__ == '__main__': main() gedit-developer-plugins-0.5.15/m4/0000775000175000017500000000000011767134173013675 500000000000000gedit-developer-plugins-0.5.15/m4/python_module.m40000644000175000017500000000112711413657751016744 00000000000000# Copyright (C) 2010 Curtis C. Hovey # # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright notice # and this notice are preserved. AC_DEFUN([AC_CHECK_PYTHON_MODULE],[ # AC_CHECK_PYTHON_MODULE(MODULE_NAME) MODULE_NAME=$1 AC_MSG_CHECKING(for python module $MODULE_NAME) if test -z $PYTHON; then PYTHON="python" fi $PYTHON -c "import $MODULE_NAME" 2>/dev/null if test $? -eq 0; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(not found) exit 1 fi ]) gedit-developer-plugins-0.5.15/test.py0000755000175000017500000000162411711335526014624 00000000000000#!/usr/bin/python # Copyright (C) 2007-2012 - Curtis Hovey # This software is licensed under the GNU General Public License version 2 # (see the file COPYING). """test.py configuration This is a Python source file loaded at the start of testing Edit this file to setup the test environment. Do not alter "if __name__ == '__main__'" unless you intend to revise the test suite. """ # Add additional Python lib paths as needed. paths = [ './plugins/', ] # Gedit has gettext compiled into builtins. import __builtin__ from gettext import gettext __builtin__.__dict__['_'] = gettext # Exclude directories that match: dir_re = r'(sourcecode)' # The level of detail in the output. verbosity = 2 if __name__ == '__main__': params = vars() keys = params.keys() [params.pop(k) for k in keys if k.startswith('__')] from testing.testrunner import main main(params) gedit-developer-plugins-0.5.15/intltool-merge.in0000664000175000017500000000000011767134102016544 00000000000000gedit-developer-plugins-0.5.15/aclocal.m40000664000175000017500000022515611767134103015141 00000000000000# generated automatically by aclocal 1.11.3 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, # Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],, [m4_warning([this file was generated for autoconf 2.68. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically `autoreconf'.])]) # Copyright (C) 1995-2002 Free Software Foundation, Inc. # Copyright (C) 2001-2003,2004 Red Hat, Inc. # # This file is free software, distributed under the terms of the GNU # General Public License. As a special exception to the GNU General # Public License, this file may be distributed as part of a program # that contains a configuration script generated by Autoconf, under # the same distribution terms as the rest of that program. # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU Public License # but which still want to provide support for the GNU gettext functionality. # # Macro to add for using GNU gettext. # Ulrich Drepper , 1995, 1996 # # Modified to never use included libintl. # Owen Taylor , 12/15/1998 # # Major rework to remove unused code # Owen Taylor , 12/11/2002 # # Added better handling of ALL_LINGUAS from GNU gettext version # written by Bruno Haible, Owen Taylor 5/30/3002 # # Modified to require ngettext # Matthias Clasen 08/06/2004 # # We need this here as well, since someone might use autoconf-2.5x # to configure GLib then an older version to configure a package # using AM_GLIB_GNU_GETTEXT AC_PREREQ(2.53) dnl dnl We go to great lengths to make sure that aclocal won't dnl try to pull in the installed version of these macros dnl when running aclocal in the glib directory. dnl m4_copy([AC_DEFUN],[glib_DEFUN]) m4_copy([AC_REQUIRE],[glib_REQUIRE]) dnl dnl At the end, if we're not within glib, we'll define the public dnl definitions in terms of our private definitions. dnl # GLIB_LC_MESSAGES #-------------------- glib_DEFUN([GLIB_LC_MESSAGES], [AC_CHECK_HEADERS([locale.h]) if test $ac_cv_header_locale_h = yes; then AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi fi]) # GLIB_PATH_PROG_WITH_TEST #---------------------------- dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], [# Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL(ac_cv_path_$1, [case "[$]$1" in /*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in ifelse([$5], , $PATH, [$5]); do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then AC_MSG_RESULT([$]$1) else AC_MSG_RESULT(no) fi AC_SUBST($1)dnl ]) # GLIB_WITH_NLS #----------------- glib_DEFUN([GLIB_WITH_NLS], dnl NLS is obligatory [USE_NLS=yes AC_SUBST(USE_NLS) gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= AC_CHECK_HEADER(libintl.h, [gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, [AC_TRY_LINK([ #include ], [return !ngettext ("","", 1)], gt_cv_func_ngettext_libc=yes, gt_cv_func_ngettext_libc=no) ]) if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, [AC_TRY_LINK([ #include ], [return !dgettext ("","")], gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no) ]) fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CHECK_FUNCS(bind_textdomain_codeset) fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then AC_CHECK_LIB(intl, bindtextdomain, [AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dgettext, gt_cv_func_dgettext_libintl=yes)])]) if test "$gt_cv_func_dgettext_libintl" != "yes" ; then AC_MSG_CHECKING([if -liconv is needed to use gettext]) AC_MSG_RESULT([]) AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dcgettext, [gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv], :,-liconv)], :,-liconv) fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset AC_CHECK_FUNCS(bind_textdomain_codeset) LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then AC_DEFINE(HAVE_GETTEXT,1, [Define if the GNU gettext() function is already present or preinstalled.]) GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" AC_CHECK_FUNCS(dcgettext) MSGFMT_OPTS= AC_MSG_CHECKING([if msgfmt accepts -c]) GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[ msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) AC_SUBST(MSGFMT_OPTS) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr], [CATOBJEXT=.gmo DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share and dnl and CATOBJEXT=.gmo in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [CATOBJEXT=.gmo DATADIRNAME=share], [CATOBJEXT=.mo DATADIRNAME=lib]) ;; *-*-openbsd*) CATOBJEXT=.mo DATADIRNAME=share ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac]) LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi ]) if test "$gt_cv_have_gettext" = "yes" ; then AC_DEFINE(ENABLE_NLS, 1, [always defined to indicate that i18n is enabled]) fi dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is not GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else AC_MSG_RESULT( [found xgettext program is not GNU xgettext; ignore it]) XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po AC_OUTPUT_COMMANDS( [case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac]) dnl These rules are solely for the distribution goal. While doing this dnl we only have to keep exactly one list of the available catalogs dnl in configure.ac. for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done dnl Make all variables we use known to autoconf. AC_SUBST(CATALOGS) AC_SUBST(CATOBJEXT) AC_SUBST(DATADIRNAME) AC_SUBST(GMOFILES) AC_SUBST(INSTOBJEXT) AC_SUBST(INTLLIBS) AC_SUBST(PO_IN_DATADIR_TRUE) AC_SUBST(PO_IN_DATADIR_FALSE) AC_SUBST(POFILES) AC_SUBST(POSUB) ]) # AM_GLIB_GNU_GETTEXT # ------------------- # Do checks necessary for use of gettext. If a suitable implementation # of gettext is found in either in libintl or in the C library, # it will set INTLLIBS to the libraries needed for use of gettext # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() # on various variables needed by the Makefile.in.in installed by # glib-gettextize. dnl glib_DEFUN([GLIB_GNU_GETTEXT], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_HEADER_STDC])dnl GLIB_LC_MESSAGES GLIB_WITH_NLS if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else AC_MSG_CHECKING(for catalogs to be installed) NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS AC_MSG_RESULT($LINGUAS) fi dnl Construct list of names of catalog files to be constructed. if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but ($top_srcdir). dnl Try to locate is. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi AC_SUBST(MKINSTALLDIRS) dnl Generate list of files to be processed by xgettext which will dnl be included in po/Makefile. test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES ]) # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) # ------------------------------- # Define VARIABLE to the location where catalog files will # be installed by po/Makefile. glib_DEFUN([GLIB_DEFINE_LOCALEDIR], [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl glib_save_prefix="$prefix" glib_save_exec_prefix="$exec_prefix" glib_save_datarootdir="$datarootdir" test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix datarootdir=`eval echo "${datarootdir}"` if test "x$CATOBJEXT" = "x.mo" ; then localedir=`eval echo "${libdir}/locale"` else localedir=`eval echo "${datadir}/locale"` fi prefix="$glib_save_prefix" exec_prefix="$glib_save_exec_prefix" datarootdir="$glib_save_datarootdir" AC_DEFINE_UNQUOTED($1, "$localedir", [Define the location where the catalogs will be installed]) ]) dnl dnl Now the definitions that aclocal will find dnl ifdef(glib_configure_ac,[],[ AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) ])dnl # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL]) # # Create a temporary file with TEST-FILE as its contents and pass the # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with # 0 and perform ACTION-IF-FAIL for any other exit status. AC_DEFUN([GLIB_RUN_PROG], [cat >conftest.foo <<_ACEOF $2 _ACEOF if AC_RUN_LOG([$1 conftest.foo]); then m4_ifval([$3], [$3], [:]) m4_ifvaln([$4], [else $4])dnl echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD fi]) dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) # serial 42 IT_PROG_INTLTOOL AC_DEFUN([IT_PROG_INTLTOOL], [ AC_PREREQ([2.50])dnl AC_REQUIRE([AM_NLS])dnl case "$am__api_version" in 1.[01234]) AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) ;; *) ;; esac INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` if test -n "$1"; then AC_MSG_CHECKING([for intltool >= $1]) AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) fi AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) fi if test -z "$AM_DEFAULT_VERBOSITY"; then AM_DEFAULT_VERBOSITY=1 fi AC_SUBST([AM_DEFAULT_VERBOSITY]) INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' INTLTOOL__v_MERGE_0='@echo " ITMRG " [$]@;' AC_SUBST(INTLTOOL_V_MERGE) AC_SUBST(INTLTOOL__v_MERGE_) AC_SUBST(INTLTOOL__v_MERGE_0) INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' intltool__v_merge_options_0='-q' AC_SUBST(INTLTOOL_V_MERGE_OPTIONS) AC_SUBST(intltool__v_merge_options_) AC_SUBST(intltool__v_merge_options_0) INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< [$]@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< [$]@' else INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.[$][$]RANDOM && mkdir [$][$]_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u [$][$]_it_tmp_dir $< [$]@ && rmdir [$][$]_it_tmp_dir' fi INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' _IT_SUBST(INTLTOOL_DESKTOP_RULE) _IT_SUBST(INTLTOOL_DIRECTORY_RULE) _IT_SUBST(INTLTOOL_KEYS_RULE) _IT_SUBST(INTLTOOL_PROP_RULE) _IT_SUBST(INTLTOOL_OAF_RULE) _IT_SUBST(INTLTOOL_PONG_RULE) _IT_SUBST(INTLTOOL_SERVER_RULE) _IT_SUBST(INTLTOOL_SHEET_RULE) _IT_SUBST(INTLTOOL_SOUNDLIST_RULE) _IT_SUBST(INTLTOOL_UI_RULE) _IT_SUBST(INTLTOOL_XAM_RULE) _IT_SUBST(INTLTOOL_KBD_RULE) _IT_SUBST(INTLTOOL_XML_RULE) _IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) _IT_SUBST(INTLTOOL_CAVES_RULE) _IT_SUBST(INTLTOOL_SCHEMAS_RULE) _IT_SUBST(INTLTOOL_THEME_RULE) _IT_SUBST(INTLTOOL_SERVICE_RULE) _IT_SUBST(INTLTOOL_POLICY_RULE) # Check the gettext tools to make sure they are GNU AC_PATH_PROG(XGETTEXT, xgettext) AC_PATH_PROG(MSGMERGE, msgmerge) AC_PATH_PROG(MSGFMT, msgfmt) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi AC_PATH_PROG(INTLTOOL_PERL, perl) if test -z "$INTLTOOL_PERL"; then AC_MSG_ERROR([perl not found]) fi AC_MSG_CHECKING([for perl >= 5.8.1]) $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then AC_MSG_ERROR([perl 5.8.1 is required for intltool]) else IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"` AC_MSG_RESULT([$IT_PERL_VERSION]) fi if test "x$2" != "xno-xml"; then AC_MSG_CHECKING([for XML::Parser]) if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then AC_MSG_RESULT([ok]) else AC_MSG_ERROR([XML::Parser perl module is required for intltool]) fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile AC_SUBST(ALL_LINGUAS) # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then AC_LINK_IFELSE( [AC_LANG_PROGRAM([[]], [[extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr]])], [DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share dnl in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [DATADIRNAME=share], [DATADIRNAME=lib]) ;; *) [DATADIRNAME=lib] ;; esac]) fi AC_SUBST(DATADIRNAME) IT_PO_SUBDIR([po]) ]) # IT_PO_SUBDIR(DIRNAME) # --------------------- # All po subdirs have to be declared with this macro; the subdir "po" is # declared by IT_PROG_INTLTOOL. # AC_DEFUN([IT_PO_SUBDIR], [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. dnl dnl The following CONFIG_COMMANDS should be executed at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) fi rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" >"$1/stamp-it.tmp" [sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" ] [sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r $1/POTFILES } ' "$1/Makefile.in" >"$1/Makefile"] rm -f "$1/Makefile.tmp" mv "$1/stamp-it.tmp" "$1/stamp-it" ]) ])dnl ]) # _IT_SUBST(VARIABLE) # ------------------- # Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST # AC_DEFUN([_IT_SUBST], [ AC_SUBST([$1]) m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) ] ) # deprecated macros AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) # A hint is needed for aclocal from Automake <= 1.9.4: # AC_DEFUN([AC_PROG_INTLTOOL], ...) # nls.m4 serial 5 (gettext-0.18) dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. AC_PREREQ([2.50]) AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) dnl Default is enabled NLS AC_ARG_ENABLE([nls], [ --disable-nls do not use Native Language Support], USE_NLS=$enableval, USE_NLS=yes) AC_MSG_RESULT([$USE_NLS]) AC_SUBST([USE_NLS]) ]) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # serial 1 (pkg-config-0.24) # # Copyright © 2004 Scott James Remnant . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # PKG_PROG_PKG_CONFIG([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi[]dnl ])# PKG_PROG_PKG_CONFIG # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # # Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) # only at the first occurence in configure.ac, so if the first place # it's called might be skipped (such as if it is within an "if", you # have to call PKG_CHECK_EXISTS manually # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_default([$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], [if test -n "$$1"; then pkg_cv_[]$1="$$1" elif test -n "$PKG_CONFIG"; then PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) else pkg_failed=untried fi[]dnl ])# _PKG_CONFIG # _PKG_SHORT_ERRORS_SUPPORTED # ----------------------------- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])# _PKG_SHORT_ERRORS_SUPPORTED # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # # Note that if there is a possibility the first call to # PKG_CHECK_MODULES might not happen, you should be sure to include an # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac # # # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $1]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` else $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT])[]dnl ]) elif test $pkg_failed = untried; then AC_MSG_RESULT([no]) m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])[]dnl ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) $3 fi[]dnl ])# PKG_CHECK_MODULES # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software # Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 1 # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. m4_if([$1], [1.11.3], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) # _AM_AUTOCONF_VERSION(VERSION) # ----------------------------- # aclocal traces this macro to find the Autoconf version. # This is a private macro too. Using m4_define simplifies # the logic in aclocal, which can simply ignore this definition. m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.11.3])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 1 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to # `$srcdir', `$srcdir/..', or `$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is `.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [dnl Rely on autoconf to set up CDPATH properly. AC_PREREQ([2.50])dnl # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 9 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, # 2010, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 12 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "GCJ", or "OBJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], UPC, [depcc="$UPC" am_compiler_list=], [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi am__universal=false m4_case([$1], [CC], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac], [CXX], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac]) for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE(dependency-tracking, [ --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl AC_SUBST([am__nodep])dnl _AM_SUBST_NOTMAKE([am__nodep])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. #serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Autoconf 2.62 quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each `.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 16 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.62])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl # test to see if srcdir already configured if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) AM_MISSING_PROG(AUTOCONF, autoconf) AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], [define([AC_PROG_CC], defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES(OBJC)], [define([AC_PROG_OBJC], defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl dnl The `parallel-tests' driver may need to know about EXEEXT, so add the dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl ]) dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation, # Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 1 # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering # Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008, # 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 5 # AM_MAINTAINER_MODE([DEFAULT-MODE]) # ---------------------------------- # Control maintainer-specific portions of Makefiles. # Default is to disable them, unless `enable' is passed literally. # For symmetry, `disable' may be passed as well. Anyway, the user # can override the default with the --enable/--disable switch. AC_DEFUN([AM_MAINTAINER_MODE], [m4_case(m4_default([$1], [disable]), [enable], [m4_define([am_maintainer_other], [disable])], [disable], [m4_define([am_maintainer_other], [enable])], [m4_define([am_maintainer_other], [enable]) m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) dnl maintainer-mode's default is 'disable' unless 'enable' is passed AC_ARG_ENABLE([maintainer-mode], [ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful (and sometimes confusing) to the casual installer], [USE_MAINTAINER_MODE=$enableval], [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE AC_SUBST([MAINT])dnl ] ) AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 6 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it supports --run. # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= AC_MSG_WARN([`missing' script is too old or missing]) fi ]) # Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation, # Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 1 # AM_PROG_MKDIR_P # --------------- # Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], [AC_PREREQ([2.60])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, dnl while keeping a definition of mkdir_p for backward compatibility. dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of dnl Makefile.ins that do not define MKDIR_P, so we do our own dnl adjustment using top_builddir (which is defined more often than dnl MKDIR_P). AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl case $mkdir_p in [[\\/$]]* | ?:[[\\/]]*) ;; */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; esac ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software # Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 5 # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # -------------------- # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) # ------------------------ # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009, # 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # --------------------------------------------------------------------------- # Adds support for distributing Python modules and packages. To # install modules, copy them to $(pythondir), using the python_PYTHON # automake variable. To install a package with the same name as the # automake package, install to $(pkgpythondir), or use the # pkgpython_PYTHON automake variable. # # The variables $(pyexecdir) and $(pkgpyexecdir) are provided as # locations to install python extension modules (shared libraries). # Another macro is required to find the appropriate flags to compile # extension modules. # # If your package is configured with a different prefix to python, # users will have to add the install directory to the PYTHONPATH # environment variable, or create a .pth file (see the python # documentation for details). # # If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will # cause an error if the version of python installed on the system # doesn't meet the requirement. MINIMUM-VERSION should consist of # numbers and dots only. AC_DEFUN([AM_PATH_PYTHON], [ dnl Find a Python interpreter. Python versions prior to 2.0 are not dnl supported. (2.0 was released on October 16, 2000). m4_define_default([_AM_PYTHON_INTERPRETER_LIST], [python python2 python3 python3.2 python3.1 python3.0 python2.7 dnl python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0]) AC_ARG_VAR([PYTHON], [the Python interpreter]) m4_if([$1],[],[ dnl No version check is needed. # Find any Python interpreter. if test -z "$PYTHON"; then AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :) fi am_display_PYTHON=python ], [ dnl A version check is needed. if test -n "$PYTHON"; then # If the user set $PYTHON, use it and don't search something else. AC_MSG_CHECKING([whether $PYTHON version >= $1]) AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], [AC_MSG_RESULT(yes)], [AC_MSG_ERROR(too old)]) am_display_PYTHON=$PYTHON else # Otherwise, try each interpreter until we find one that satisfies # VERSION. AC_CACHE_CHECK([for a Python interpreter with version >= $1], [am_cv_pathless_PYTHON],[ for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do test "$am_cv_pathless_PYTHON" = none && break AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break]) done]) # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. if test "$am_cv_pathless_PYTHON" = none; then PYTHON=: else AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON]) fi am_display_PYTHON=$am_cv_pathless_PYTHON fi ]) if test "$PYTHON" = :; then dnl Run any user-specified action, or abort. m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) else dnl Query Python for its version number. Getting [:3] seems to be dnl the best way to do this; it's what "site.py" does in the standard dnl library. AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`]) AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) dnl Use the values of $prefix and $exec_prefix for the corresponding dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made dnl distinct variables so they can be overridden if need be. However, dnl general consensus is that you shouldn't need this ability. AC_SUBST([PYTHON_PREFIX], ['${prefix}']) AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}']) dnl At times (like when building shared libraries) you may want dnl to know which OS platform Python thinks this is. AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform], [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`]) AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform]) dnl Set up 4 directories: dnl pythondir -- where to install python scripts. This is the dnl site-packages directory, not the python standard library dnl directory like in previous automake betas. This behavior dnl is more consistent with lispdir.m4 for example. dnl Query distutils for this directory. AC_CACHE_CHECK([for $am_display_PYTHON script directory], [am_cv_python_pythondir], [if test "x$prefix" = xNONE then am_py_prefix=$ac_default_prefix else am_py_prefix=$prefix fi am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null` case $am_cv_python_pythondir in $am_py_prefix*) am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"` ;; *) case $am_py_prefix in /usr|/System*) ;; *) am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages ;; esac ;; esac ]) AC_SUBST([pythondir], [$am_cv_python_pythondir]) dnl pkgpythondir -- $PACKAGE directory under pythondir. Was dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is dnl more consistent with the rest of automake. AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) dnl pyexecdir -- directory for installing python extension modules dnl (shared libraries) dnl Query distutils for this directory. AC_CACHE_CHECK([for $am_display_PYTHON extension module directory], [am_cv_python_pyexecdir], [if test "x$exec_prefix" = xNONE then am_py_exec_prefix=$am_py_prefix else am_py_exec_prefix=$exec_prefix fi am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null` case $am_cv_python_pyexecdir in $am_py_exec_prefix*) am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"` ;; *) case $am_py_exec_prefix in /usr|/System*) ;; *) am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages ;; esac ;; esac ]) AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir]) dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE) AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE]) dnl Run any user-specified action. $2 fi ]) # AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) # --------------------------------------------------------------------------- # Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION. # Run ACTION-IF-FALSE otherwise. # This test uses sys.hexversion instead of the string equivalent (first # word of sys.version), in order to cope with versions such as 2.2c1. # This supports Python 2.0 or higher. (2.0 was released on October 16, 2000). AC_DEFUN([AM_PYTHON_CHECK_VERSION], [prog="import sys # split strings by '.' and convert to numeric. Append some zeros # because we need at least 4 digits for the hex conversion. # map returns an iterator in Python 3.0 and a list in 2.x minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]] minverhex = 0 # xrange is not present in Python 3.0 and range returns an iterator for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]] sys.exit(sys.hexversion < minverhex)" AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 5 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[[\\\"\#\$\&\'\`$am_lf]]*) AC_MSG_ERROR([unsafe absolute working directory name]);; esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; esac # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT(yes)]) # Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 1 # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in `make install-strip', and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be `maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 3 # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) # -------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of `v7', `ustar', or `pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AC_SUBST([AMTAR], ['$${TAR-tar}']) m4_if([$1], [v7], [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. for _am_tool in $_am_tools do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR m4_include([m4/python_module.m4]) gedit-developer-plugins-0.5.15/intltool-update.in0000664000175000017500000000000011767134102016727 00000000000000gedit-developer-plugins-0.5.15/language-specs/0000775000175000017500000000000011767134174016254 500000000000000gedit-developer-plugins-0.5.15/language-specs/Makefile.in0000664000175000017500000003056111767134104020237 00000000000000# Makefile.in generated by automake 1.11.3 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = language-specs DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/python_module.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(langsdir)" DATA = $(langs_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GEDIT_CFLAGS = @GEDIT_CFLAGS@ GEDIT_LIBS = @GEDIT_LIBS@ GEDIT_PLUGIN_DIR = @GEDIT_PLUGIN_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKSOURCEVIEW_LANGS_DIR = @GTKSOURCEVIEW_LANGS_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PYTHON = @PYTHON@ PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ PYTHON_PLATFORM = @PYTHON_PLATFORM@ PYTHON_PREFIX = @PYTHON_PREFIX@ PYTHON_VERSION = @PYTHON_VERSION@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ pkgpyexecdir = @pkgpyexecdir@ pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ NULL = langsdir = $(GTKSOURCEVIEW_LANGS_DIR) langs_DATA = \ doctest.lang \ pagetemplate.lang \ $(NULL) EXTRA_DIST = $(langs_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu language-specs/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu language-specs/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-langsDATA: $(langs_DATA) @$(NORMAL_INSTALL) test -z "$(langsdir)" || $(MKDIR_P) "$(DESTDIR)$(langsdir)" @list='$(langs_DATA)'; test -n "$(langsdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(langsdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(langsdir)" || exit $$?; \ done uninstall-langsDATA: @$(NORMAL_UNINSTALL) @list='$(langs_DATA)'; test -n "$(langsdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(langsdir)'; $(am__uninstall_files_from_dir) tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(langsdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-langsDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-langsDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-langsDATA \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-langsDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gedit-developer-plugins-0.5.15/language-specs/Makefile.am0000644000175000017500000000021011264153300020177 00000000000000NULL = langsdir = $(GTKSOURCEVIEW_LANGS_DIR) langs_DATA = \ doctest.lang \ pagetemplate.lang \ $(NULL) EXTRA_DIST = $(langs_DATA) gedit-developer-plugins-0.5.15/language-specs/doctest.lang0000644000175000017500000003427711264153300020477 00000000000000 text/x-python-doctest *.doctest;doc/*.txt;test/*.txt;tests/*.txt #