diff --git a/.cvsignore b/.cvsignore
index e69de29..955425b 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -0,0 +1 @@
+de.loskutov.anyedit.AnyEditTools_2.2.0.200904262004.jar
diff --git a/assemble.xml b/assemble.xml
new file mode 100644
index 0000000..cb68127
--- /dev/null
+++ b/assemble.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/eclipse-anyedit-2.2.0-unicode.patch b/eclipse-anyedit-2.2.0-unicode.patch
new file mode 100644
index 0000000..f210cf3
--- /dev/null
+++ b/eclipse-anyedit-2.2.0-unicode.patch
@@ -0,0 +1,260 @@
+# This patch was generated with:
+
+#!/bin/bash
+for char in � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �
+ do
+ newchar=$(echo $char | od -x -N1 | tr 'a-f' 'A-F' | head -1 | awk '{print "\\u"$2}')
+ export char newchar
+ perl -pi -e 's/$ENV{char}/$ENV{newchar}/g' $1
+ done
+
+--- eclipse-anyedit-2.1.1/src/de/loskutov/anyedit/util/TextUtil.java 2008-10-11 20:38:10.000000000 -0400
++++ eclipse-anyedit-2.1.1/src/de/loskutov/anyedit/util/TextUtil.java 2008-10-11 20:38:21.000000000 -0400
+@@ -894,53 +894,53 @@ public class TextUtil {
+ ">", ">" }, {
+ "&", "&" }, {
+ """, "\"" }, {
+- "à", "�" }, {
+- "À", "�" }, {
+- "â", "�" }, {
+- "ä", "�" }, {
+- "Ä", "�" }, {
+- "Â", "�" }, {
+- "å", "�" }, {
+- "Å", "�" }, {
+- "æ", "�" }, {
+- "Æ", "�" }, {
+- "ç", "�" }, {
+- "Ç", "�" }, {
+- "é", "�" }, {
+- "É", "�" }, {
+- "á", "�" }, {
+- "Á", "�" }, {
+- "è", "�" }, {
+- "È", "�" }, {
+- "ê", "�" }, {
+- "Ê", "�" }, {
+- "ë", "�" }, {
+- "Ë", "�" }, {
+- "ï", "�" }, {
+- "Ï", "�" }, {
+- "í", "�" }, {
+- "Í", "�" }, {
+- "ã", "�" }, {
+- "Ã", "�" }, {
+- "õ", "�" }, {
+- "Õ", "�" }, {
+- "ó", "�" }, {
+- "Ó", "�" }, {
+- "ô", "�" }, {
+- "Ô", "�" }, {
+- "ö", "�" }, {
+- "Ö", "�" }, {
+- "ø", "�" }, {
+- "Ø", "�" }, {
+- "ß", "�" }, {
+- "ù", "�" }, {
+- "Ù", "�" }, {
+- "ú", "�" }, {
+- "Ú", "�" }, {
+- "û", "�" }, {
+- "Û", "�" }, {
+- "ü", "�" }, {
+- "Ü", "�" }, {
++ "à", "\u00E0" }, {
++ "À", "\u00C0" }, {
++ "â", "\u00E2" }, {
++ "ä", "\u00E4" }, {
++ "Ä", "\u00C4" }, {
++ "Â", "\u00C2" }, {
++ "å", "\u00E5" }, {
++ "Å", "\u00C5" }, {
++ "æ", "\u00E6" }, {
++ "Æ", "\u00C6" }, {
++ "ç", "\u00E7" }, {
++ "Ç", "\u00C7" }, {
++ "é", "\u00E9" }, {
++ "É", "\u00C9" }, {
++ "á", "\u00E1" }, {
++ "Á", "\u00C1" }, {
++ "è", "\u00E8" }, {
++ "È", "\u00C8" }, {
++ "ê", "\u00EA" }, {
++ "Ê", "\u00CA" }, {
++ "ë", "\u00EB" }, {
++ "Ë", "\u00CB" }, {
++ "ï", "\u00EF" }, {
++ "Ï", "\u00CF" }, {
++ "í", "\u00ED" }, {
++ "Í", "\u00CD" }, {
++ "ã", "\u00E3" }, {
++ "Ã", "\u00C3" }, {
++ "õ", "\u00F5" }, {
++ "Õ", "\u00D5" }, {
++ "ó", "\u00F3" }, {
++ "Ó", "\u00D3" }, {
++ "ô", "\u00F4" }, {
++ "Ô", "\u00D4" }, {
++ "ö", "\u00F6" }, {
++ "Ö", "\u00D6" }, {
++ "ø", "\u00F8" }, {
++ "Ø", "\u00D8" }, {
++ "ß", "\u00DF" }, {
++ "ù", "\u00F9" }, {
++ "Ù", "\u00D9" }, {
++ "ú", "\u00FA" }, {
++ "Ú", "\u00DA" }, {
++ "û", "\u00FB" }, {
++ "Û", "\u00DB" }, {
++ "ü", "\u00FC" }, {
++ "Ü", "\u00DC" }, {
+ " ", " " }, {
+ "®", "\u00AE" }, {
+ "©", "\u00A9" }, {
+@@ -963,99 +963,99 @@ public class TextUtil {
+ return "&";
+ case '"':
+ return """;
+- case '�':
++ case '\u00E0':
+ return "à";
+- case '�':
++ case '\u00E1':
+ return "á";
+- case '�':
++ case '\u00C0':
+ return "À";
+- case '�':
++ case '\u00C1':
+ return "Á";
+- case '�':
++ case '\u00E2':
+ return "â";
+- case '�':
++ case '\u00C2':
+ return "Â";
+- case '�':
++ case '\u00E4':
+ return "ä";
+- case '�':
++ case '\u00C4':
+ return "Ä";
+- case '�':
++ case '\u00E5':
+ return "å";
+- case '�':
++ case '\u00C5':
+ return "Å";
+- case '�':
++ case '\u00E3':
+ return "ã";
+- case '�':
++ case '\u00C3':
+ return "Ã";
+- case '�':
++ case '\u00E6':
+ return "æ";
+- case '�':
++ case '\u00C6':
+ return "Æ";
+- case '�':
++ case '\u00E7':
+ return "ç";
+- case '�':
++ case '\u00C7':
+ return "Ç";
+- case '�':
++ case '\u00E9':
+ return "é";
+- case '�':
++ case '\u00C9':
+ return "É";
+- case '�':
++ case '\u00E8':
+ return "è";
+- case '�':
++ case '\u00C8':
+ return "È";
+- case '�':
++ case '\u00EA':
+ return "ê";
+- case '�':
++ case '\u00CA':
+ return "Ê";
+- case '�':
++ case '\u00EB':
+ return "ë";
+- case '�':
++ case '\u00CB':
+ return "Ë";
+- case '�':
++ case '\u00ED':
+ return "í";
+- case '�':
++ case '\u00CD':
+ return "Í";
+- case '�':
++ case '\u00EF':
+ return "ï";
+- case '�':
++ case '\u00CF':
+ return "Ï";
+- case '�':
++ case '\u00F5':
+ return "õ";
+- case '�':
++ case '\u00D5':
+ return "Õ";
+- case '�':
++ case '\u00F3':
+ return "ó";
+- case '�':
++ case '\u00F4':
+ return "ô";
+- case '�':
++ case '\u00D3':
+ return "Ó";
+- case '�':
++ case '\u00D4':
+ return "Ô";
+- case '�':
++ case '\u00F6':
+ return "ö";
+- case '�':
++ case '\u00D6':
+ return "Ö";
+- case '�':
++ case '\u00F8':
+ return "ø";
+- case '�':
++ case '\u00D8':
+ return "Ø";
+- case '�':
++ case '\u00DF':
+ return "ß";
+- case '�':
++ case '\u00F9':
+ return "ù";
+- case '�':
++ case '\u00D9':
+ return "Ù";
+- case '�':
++ case '\u00FA':
+ return "ú";
+- case '�':
++ case '\u00DA':
+ return "Ú";
+- case '�':
++ case '\u00FB':
+ return "û";
+- case '�':
++ case '\u00DB':
+ return "Û";
+- case '�':
++ case '\u00FC':
+ return "ü";
+- case '�':
++ case '\u00DC':
+ return "Ü";
+ case '\u00AE':
+ return "®";
diff --git a/eclipse-anyedit.spec b/eclipse-anyedit.spec
new file mode 100644
index 0000000..328b7f8
--- /dev/null
+++ b/eclipse-anyedit.spec
@@ -0,0 +1,141 @@
+%define eclipse_base %{_libdir}/eclipse
+%define rlsdate 200904262004
+
+Summary: AnyEdit plugin for eclipse
+Name: eclipse-anyedit
+Version: 2.2.0
+Release: 2%{?dist}
+License: BSD
+Group: Development/Tools
+URL: http://andrei.gmxhome.de/anyedit/index.html
+Buildroot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
+
+Source0: http://anyedittools.googlecode.com/files/de.loskutov.anyedit.AnyEditTools_2.2.0.200904262004.jar
+
+# SOURCE1 and SOURCE2 written by rmyers to facilitate PDE Build
+Source1: assemble.xml
+Source2: package.xml
+
+# work around unicode/compiler issue
+Patch0: eclipse-anyedit-%{version}-unicode.patch
+
+Requires: eclipse-platform >= 3.4.0
+
+BuildRequires: jpackage-utils >= 0:1.5
+BuildRequires: eclipse-pde
+BuildRequires: java-devel >= 1.4.2
+BuildArch: noarch
+
+%description
+The AnyEdit plugin adds several new actions to the context menu of text-based
+Eclipse editors.
+
+%prep
+%setup -q -c
+%patch0 -p1
+
+# remove pre-compiled classes
+rm -rf de
+
+%build
+/bin/sh -x %{eclipse_base}/buildscripts/copy-platform SDK %{eclipse_base}
+
+SDK=$(cd SDK > /dev/null && pwd)
+
+# Eclipse may write preferences and logs here
+mkdir home
+homedir=$(cd home > /dev/null && pwd)
+
+# create the required assemble and package targets
+mkdir $(pwd)/build/
+# this symlink creates the assemble target which assembles the plugin
+ln -s %{SOURCE1} $(pwd)/build/assemble.de.loskutov.anyedit.AnyEditTools.all.xml
+# this symlink creates the package target which packages the plugin
+ln -s %{SOURCE2} $(pwd)/build/package.de.loskutov.anyedit.AnyEditTools.all.xml
+
+# find correct location
+package_build=$(find %{eclipse_base} -name 'package-build' -print | grep pde | grep templates)
+build_xml=$(find %{eclipse_base} -name 'build.xml' -print | grep pde | grep scripts)
+
+# build the plugin
+eclipse \
+ -nosplash \
+ -application org.eclipse.ant.core.antRunner \
+ -Dtype=plugin \
+ -Did=de.loskutov.anyedit.AnyEditTools \
+ -DbaseLocation=$SDK \
+ -DsourceDirectory=$(pwd) \
+ -DbuildDirectory=$(pwd)/build \
+ -Dbuilder=$package_build \
+ -f $build_xml \
+ -vmargs -Duser.home=$homedir
+
+%install
+rm -rf %{buildroot}
+
+# create plugins directory
+install -d -m 755 %{buildroot}/%{_datadir}/eclipse/dropins/anyedit/plugins
+
+# install plugin
+install -m 644 de.loskutov.anyedit.AnyEditTools_%{version}.%{rlsdate}.jar \
+ %{buildroot}/%{_datadir}/eclipse/dropins/anyedit/plugins
+
+%clean
+rm -rf %{buildroot}
+
+%files
+%defattr(-,root,root,-)
+/usr/share/eclipse/dropins/anyedit
+
+%changelog
+* Wed Aug 19 2009 Rob Myers 2.2.0-2
+- Drop LICENSE file
+- Minor spec file cleanup
+
+* Wed Aug 19 2009 Rob Myers 2.2.0-1
+- Updated to 2.2.0
+- Drop gcj support
+- Change jar location to /usr/share/eclipse/dropins/anyedit
+- Bump eclipse-platform to 3.4.0+
+
+* Wed Oct 15 2008 Rob Myers 2.1.1-3
+- move plugin to dropins
+
+* Sun Oct 12 2008 Rob Myers 2.1.1-2
+- use build.update.jar package target
+- update Requires for compatible versions of eclipse
+
+* Sat Oct 11 2008 Rob Myers 2.1.1-1
+- update to 2.1.1
+
+* Wed Oct 17 2007 Rob Myers 1.8.2-5
+- install as jar instead of zip
+
+* Tue Oct 16 2007 Rob Myers 1.8.2-4
+- rebuild
+
+* Tue Sep 25 2007 Rob Myers 1.8.2-3
+- update to meet http://fedoraproject.org/wiki/PackagingDrafts/EclipsePlugins
+
+* Thu Sep 13 2007 Rob Myers 1.8.2-2
+- update defattr settings from alcapcom
+
+* Fri Sep 7 2007 Rob Myers 1.8.2-1
+- update to 1.8.2
+- update unicode patch for IcedTea compatibility
+
+* Sun May 27 2007 Rob Myers 1.8.0-2
+- enable gcj_support and rebuild
+
+* Fri May 18 2007 Rob Myers 1.8.0-1
+- Update to 1.8.0
+- switch to pde build
+- add gcj_support
+- work around 'Ü' compiler issue
+- add license
+
+* Mon Apr 23 2007 Patrick Neely 1.7.0-0
+- Update to 1.7.0 for RHEL5
+
+* Tue Jun 27 2006 Patrick Neely 1.4.1-0
+- Rebuilt for RHEL4
diff --git a/package.xml b/package.xml
new file mode 100644
index 0000000..733878a
--- /dev/null
+++ b/package.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/sources b/sources
index e69de29..c397988 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+2b4f4844ac69a0516fa640ac96cc433a de.loskutov.anyedit.AnyEditTools_2.2.0.200904262004.jar