%global geany_plug_docdir %{_defaultdocdir}/%{name}-%{version}
%global req_geany_ver 0.18

Name:           geany-plugins
Version:        0.18
Release:        3%{?_dist_release}
Summary:        Plugins for Geany
Summary(ja):    Geany のプラグイン集

Group:          Development/Tools
License:        GPLv2+
URL:            http://plugins.geany.org/
Source0:        http://plugins.geany.org/geany-plugins/geany-plugins-%{version}.tar.bz2
BuildRoot:      %{_tmppath}/%{name}-%{version}-root

BuildRequires:  geany-devel >= %{req_geany_ver} gettext intltool pkgconfig libtool
BuildRequires:  lua-devel enchant-devel gtkspell-devel

Requires:  %{name}-addons %{name}-geanydoc %{name}-geanygdb %{name}-geanylatex
Requires:  %{name}-geanylipsum %{name}-geanylua %{name}-geanyprj %{name}-geanysendmail
Requires:  %{name}-geanyvc %{name}-shiftcolumn %{name}-spellcheck

%description
Plugins for Geany. Plugins included are:
* Addons (various small addons)
* Geanygdb (provides integration environment with gdb)
* Geanylatex (improved support for LaTeX documents)
* Geanylipsum (for inserting blocks of Lorem Ipsum text)
* Geanylua (provides support for scripting with Lua)
* Geanysendmail (allows sending of documents from within Geany)
* Geanyvc (support for various version control systems)
* Shiftcolumn (for moving blocks of text horizontally)
* Spellcheck (for spell checking documents)

This package is meta package to install all geany-plugins. 

%description -l ja
Geany のプラグインです。プラグインには以下のものが含まれています。
* Addons （色々と小さなアドオン）
* Geanygdb （gdb 統合環境を提供）
* Geanylatex （LaTeX ドキュメントのサポートを改善)
* Geanylipsum (Lorem Ipsum テキストのブロックを挿入)
* Geanylua （lua スクリプトのサポートを提供）
* Geanysendmail （Geany からドキュメントの送信を許可）
* Geanyvc （色々なバージョン管理システムのサポート）
* Shiftcolumn (テキストブロックを水平方向に移動)
* Spellcheck （ドキュメントのスペルチェック）

このパッケージは、geany-plugins をすべてインストールするための
メタパッケージです。

%package common
Summary:   Common files used by all geany plugins
Summary(ja): すべての Geany プラグインに用いられる共通ファイル
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}

%description common
This package contains some common files which are used by every Geany plugin,
e.g. language translations.

%description common -l ja
このパッケージには、例えば翻訳ファイルなどの
すべての Geany プラグイン で用いられる共通ファイルが含まれています。

%package addons
Summary:   Miscellaneous Addons for Geany
Summary(ja): Geany のその他のアドオン
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}
Obsoletes: geany-plugin-addons

%description addons
This plugins consists of various small addons too small to justify their own
plugin, but are useful to have. The following functionality is implemented:
* Doclist: This addon places a new item in the toolbar and when clicked offers
  a menu listing all open files plus the 'Close All' and 'Close Other
  Documents' menu items. This can be useful to quickly access open files and
  switch to them.
* OpenURI: Adds 'Open URI' and 'Copy URI' menu items to the editor menu when
  the word under the cursor looks like a URI. 'Open URI' uses the browser
  command configured in Geany to open it.
* Tasks:The tasks plugin goes through a file being edited and picks out lines
  with "TODO" or "FIXME" in them. It collects the text after those words and
  puts them in a new "Tasks" tab in the message window. Clicking on a task in
  that tab takes you to the line in the file where the task was defined.
* Systray: Adds a status icon to the notification area (systray) and provides
  a simple popup menu with some basic actions. It can also be used to quickly
  show and hide the Geany main window.


%package geanygdb
Summary:   Debugger Plugin for Geany using GDB
Summary(ja): GDB を使った Geany のデバッガプラグイン
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}
Requires:  gdb
Obsoletes: geany-plugin-gdb

%description geanygdb
GeanyGDB plugin provides an integrated debugging environment for the
GNU debugger (gdb).

%description geanygdb -l ja
GeanyGDB プラグインは GNU debugger (gdb) のための
統合的デバッグ環境を提供します。


%package geanylatex
Summary:   to improve LaTeX support plugin for Geany
Summary(ja): Geany のための LaTeX サポート改善プラグイン
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}
Requires:  tetex
Obsoletes: geany-plugin-latex

%description geanylatex
This plugin improves LaTeX support in Geany. It provides several templates for
new documents, help with adding labels and inserting special characters,
and much more.

%description geanylatex -l ja
このプラグインは Geany で LaTeX のサポートを改善するプラグインです。
新しい文書のためのいくつかのテンプレート、
ラベルの追加や特殊文字の挿入機能などを提供します。


%package geanylipsum
Summary:   Lorem Ipsum generator for Inserting Placeholder Text
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}

%description geanylipsum
GeanyLipsum is a Lorem Ipsum generator for inserting placeholder text into a
document.


%package geanylua
Summary:   Support developing Lua Scripting for Geany
Summary(ja): Geany で Lua スクリプト開発をサポート
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}
Requires:  lua

%description geanylua
This plugin provides extensive support for developing in the lua programming
language.

%description geanylua -l ja
このプラグインは、lua プログラミング言語で開発するための
広範なサポートを提供します。


%package geanysendmail
Summary:   Send E-Mails from within Geany
Summary(ja): Geany 内から E-Mail を送信するプラグイン
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}

%description geanysendmail
GeanySendMail is a little plugin to send a document as attachment using the
preferred mail client from inside Geany. It is similar to the envelope symbol
of most office tools and requires a mail client that supports remote calls.


%package geanyvc
Summary:   Version Control plugin for Geany
Summary(ja): Geany のバージョン管理プラグイン
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}
Obsoletes: geany-plugin-vc
Provides:  geanyvc = %{version}-%{release}

%description geanyvc
Geanyvc is a plugin that provides a uniform way of accessing different version
control systems from within the Geany IDE. Currently, support for the following
version control systems is provided:

* Bazaar
* Git
* Mercurial
* Subversion
* SVK
* CVS

%description geanyvc -l ja
Geanyvc は Geany IDE から異なるバージョン管理システムにアクセスする
均一的方法を提供するプラグインです。
現在、サポートするバージョン管理システムは以下の通りです。

* Bazaar
* Git
* Mercurial
* Subversion
* SVK
* CVS


%package shiftcolumn
Summary:   Move Blocks of Text horizontally
Summary(ja): テキストブロックを水平方向に移動
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}

%description shiftcolumn
Shiftcolumn allows you to move blocks of text horizontally in Geany.

%description shiftcolumn -l ja
Shiftcolumn は Geany 内でテキストブロックを水平方向に移動させることが
できます。

%package spellcheck
Summary:   Spellcheck Text in Geany using the Enchant Library
Summary(ja): Enchant ライブラリを使い Geany でスペルチェック
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}
Requires:  enchant

%description spellcheck
Spellcheck checks the selected text (or the whole document) with the spellcheck
library Enchant.

%description spellcheck -l ja
Spellcheck は、選択したテキスト（または文書全体）のスペルチェックを
スペルチェックライブラリの Enchant で行います。


%package geanydoc
Summary:   Call documentation from within Geany
Summary(ja): Geany 内からマニュアルを呼び出す
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}

%description geanydoc
Geanydoc allows you to execute specific commands on the word under the cursor.
This word is passed as an argument to the command. The output of the command
can either be placed into a special buffer called "DOC" or can be used to
execute an external program. Geanydoc is intended to be used for searching
through API documentation.


%package geanyprj
Summary:   Provides an alternate project management tool for Geany
Summary(ja): Geany で代替プロジェクト管理ツールを提供
Group:     Development/Tools
Requires:  geany >= %{req_geany_ver}
Requires:  geany-plugins-common = %{version}-%{release}

%description geanyprj
Geanyprj provides an alternate project management approach to Geany's built-in
project facility. The idea is to be less a "session manager" as the built-in
project management does: It allows/requires you to manually open and close
project and allows you to store project files in different locations from
project sources.

Geanyprj takes a different approach:
It never saves session information, so that project files can be stored in
version control without constant noise from changes of opened files or cursor
position. You also will never have to open/close projects manually. If a
*.geanyprj file is found somewhere up in path it will be opened automatically.


%prep
%setup -q


%build
%configure --docdir=%{geany_plug_docdir}
make %{?_smp_mflags}


%install
rm -rf $RPM_BUILD_ROOT
make install -p DESTDIR=$RPM_BUILD_ROOT

# Remove static library *.la files
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f '{}' \;

%find_lang %{name}


%clean
rm -rf $RPM_BUILD_ROOT

%files

%files common -f %{name}.lang
%defattr(-,root,root,-)
%dir %{_libdir}/%{name}/
%dir %{_datadir}/%{name}/


%files addons
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/addons
%{_libdir}/geany/addons.so


%files geanygdb
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanygdb/
%{_libdir}/geany/geanygdb.so
%{_libexecdir}/geany-plugins/geanygdb/ttyhelper


%files geanylatex
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanylatex/
%{_libdir}/geany/geanylatex.so


%files geanylipsum
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanylipsum/
%{_libdir}/geany/geanylipsum.so


%files geanylua
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanylua/
%{_libdir}/geany/geanylua.so
%{_datadir}/%{name}/geanylua/
%{_libdir}/%{name}/geanylua/


%files geanysendmail
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanysendmail/
%{_libdir}/geany/geanysendmail.so


%files geanyvc
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanyvc/
%{_libdir}/geany/geanyvc.so


%files shiftcolumn
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/shiftcolumn/
%{_libdir}/geany/shiftcolumn.so


%files spellcheck
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/spellcheck/
%{_libdir}/geany/spellcheck.so


%files geanydoc
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanydoc/
%{_libdir}/geany/geanydoc.so


%files geanyprj
%defattr(-,root,root,-)
%doc %{geany_plug_docdir}/geanyprj/
%{_libdir}/geany/geanyprj.so


%changelog
* Sat Mar 13 2010 Toshiharu Kudoh <toshi.kd2@gmail.com> 0.18-3
- fixed Requires geany-plugins 
- applied new naming policy to spec

* Thu Jan 21 2010 Toshiharu Kudoh <toshi.kd2@gmail.com> 0.18-2
- fixed Obsoletes geany-plugin-addons, geany-plugin-gdb, geany-plugin-latex, geany-plugin-vc
  (see [BTS:VineLinux:0894])
- proved Summary(ja)

* Wed Nov 18 2009 Toshiharu Kudoh <toshi.kd2@gmail.com> 0.18-1
- initial build for Vine Linux (instead of now provided some geany-plugins) 

* Sat Oct 31 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.18-1
- update to new upstream release

* Sat Aug 16 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17.1-6
- build against and require geany 0.18

* Mon Aug 10 2009 Ville Skyttä <ville.skytta@iki.fi> - 0.17.1-5
- Use bzipped upstream tarball.

* Sat Jul 25 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17.1-4
- write BuildRequires at the beginning of this file

* Wed Jul 22 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17.1-3
- remove Requires: geany from the main package
- change Group to Development/Tools
- add release to the geanyvc Provides
- entirely remove %%files stanza for the main package

* Wed Jul 22 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17.1-2
- fix the required geany version also in the subpackages
- remove the requires to sub-packages to avoid building the metapackage since
  all geany plugins also can be installed by something like
  'yum install geany-plugins-*'
- fix the requires of geany-plugins-common to include the release

* Wed Jul 22 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17.1-1
- bump upstream version to 0.17.1
- fix required geany version to be 0.16 at the present

* Sat Jul 18 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17-5
- add Requires for metapackage
- rename subpackages back to geany-plugins-* instead of geany-plugin-*

* Fri Jul 17 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17-4
- readd the geany_plug_docdir global to fix the versioned directory issue for
  documentation files
- replace geany-plugins with %%{name} to be more consistent with macro usage
- remove zero-length documentation files
- fix the changelog
- remove static *.la-files
- split up packages

* Wed Jul 15 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17-3
- add %%{_datadir}/geany-plugins/geanylua/ to %%files-section

* Wed Jul 15 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17-2
- fix %%files-section again, thanks to Jonathan for the hint.

* Tue Jul 14 2009 Dominic Hopf <dmaphy@fedoraproject.org> 0.17-1
- update URL to plugins.geany.org

* Tue Jul 14 2009 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 0.17-0.2
- Add Obsoletes for geanyvc
- Add more BuildRequires and Requires

* Tue Jul 14 2009 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 0.17-0.1
- Update to 0.17 (first upstream release of tarball)
- Fix handling of docs
- Spec file cleanups

* Mon Jun 22 2009 Pingou <pingou@pingoured.fr> 0.1-1
- First RPM for Fedora
