Sophie

Sophie

distrib > Mageia > 9 > armv7hl > media > core-release-src > by-pkgid > af49d62844646bb225bacffd51688fad > files > 2

geany-plugins-1.38-1.mga9.src.rpm

%define geany_plug_docdir   %{_docdir}/%{name}

# webkit1
%bcond_with webhelper

#gtk2 only
%bcond_with geanypy
%bcond_with multiterm
%bcond_with devhelp

# soup 2.x
%bcond_without geniuspaste
%bcond_without updatechecker

# now gtk3 compatible
%bcond_without debugger

Name:           geany-plugins
Version:        1.38
Release:        %mkrel 1
Group:          Development/Tools
License:        GPLv2+ and GPLv3+
Summary:        A collection of different plugins for Geany
Url:            https://plugins.geany.org
Source0:        https://plugins.geany.org/%{name}/%{name}-%{version}.tar.bz2

BuildRequires:  gpgme-devel
BuildRequires:  intltool
BuildRequires:  lua5.1-devel
# for rst2html
BuildRequires:  python3-docutils
BuildRequires:  vala
BuildRequires:  pkgconfig(check)
BuildRequires:  pkgconfig(ctpl)
BuildRequires:  pkgconfig(geany) >= %{version}
BuildRequires:  pkgconfig(gtkspell3-3.0)
%if %{with devhelp}
BuildRequires:  pkgconfig(libdevhelp-3.0)
%endif
BuildRequires:  pkgconfig(libgit2)
BuildRequires:  pkgconfig(libmarkdown)
BuildRequires:  pkgconfig(libsoup-2.4)
BuildRequires:  pkgconfig(libwnck-1.0)
BuildRequires:	pkgconfig(vte-2.91)
BuildRequires:  pkgconfig(webkit2gtk-4.1)

Recommends:     %{name}-addons
Recommends:     %{name}-autoclose
Recommends:     %{name}-automark
Recommends:     %{name}-codenav
Recommends:     %{name}-commander
Recommends:     %{name}-defineformat
%if %{with debugger}
Recommends:     %{name}-debugger
%endif
%if %{with devhelp}
Recommends:     %{name}-devhelp
%endif
Recommends:     %{name}-geanyctags
Recommends:     %{name}-geanydoc
Recommends:     %{name}-geanyextrasel
Recommends:     %{name}-geanygendoc
Recommends:     %{name}-geanyinsertnum
Recommends:     %{name}-geanylatex
Recommends:     %{name}-geanylua
Recommends:     %{name}-geanymacro
Recommends:     %{name}-geanyminiscript
Recommends:     %{name}-geanynumberedbookmarks
Recommends:     %{name}-geanypg
Recommends:     %{name}-geanyprj
%if %{with geanypy}
Recommends:     %{name}-geanypy
%endif
Recommends:     %{name}-geanyvc
%if %{with geniuspaste}
Recommends:     %{name}-geniuspaste
%endif
Recommends:     %{name}-git-changebar
Recommends:     %{name}-keyrecord
Recommends:     %{name}-lineoperations
Recommends:     %{name}-lipsum
Recommends:     %{name}-markdown
%if %{with multiterm}
Recommends:     %{name}-multiterm
%endif
Recommends:     %{name}-overview
Recommends:     %{name}-pairtaghighlighter
Recommends:     %{name}-pohelper
Recommends:     %{name}-pretty-printer
Recommends:     %{name}-projectorganizer
Recommends:     %{name}-scope
Recommends:     %{name}-sendmail
Recommends:     %{name}-shiftcolumn
Recommends:     %{name}-spellcheck
Recommends:     %{name}-tableconvert
Recommends:     %{name}-treebrowser
%if %{with updatechecker}
Recommends:     %{name}-updatechecker
%endif
Recommends:     %{name}-vimode
%if %{with webhelper}
Recommends:     %{name}-webhelper
%endif
Recommends:     %{name}-workbench
Recommends:     %{name}-xmlsnippets

%description
Geany-Plugins is a collection of different plugins for Geany,
a lightweight IDE. It provides a common location for plugin authors
and users with a known infrastructure and support. List of included
plugins:

* addons -- the Addons plugin
* autoclose -- the Autoclose plugin
* automark -- the Automark plugin
* codenav -- the CodeNav plugin
* commander -- the command panel plugin
* defineformat -- the Defineformat plugin
%if %{with debugger}
* debugger -- the Debugger plugin
%endif
%if %{with devhelp}
* devhelp -- the devhelp plugin
%endif
* geanyctags -- the GeanyCtags plugin
* geanydoc -- the GeanyDoc plugin
* geanyextrasel -- the GeanyExtraSel plugin
* geanygendoc -- the GeanyGenDoc plugin
* geanyinsertnum -- the GeanyInsertNum plugin
* geanylua -- the GeanyLua plugin
* geanyminiscript -- the GeanyMiniScript plugin
* geanypg -- the geanypg plugin
* geanyprj -- the GeanyPrj plugin
%if %{with geanypy}
* geanypy -- the GeanyPy plugin
%endif
* geanyvc -- the GeanyVC plugin
%if %{with geniuspaste}
* geniuspaste -- the paste to a pastebin plugin
%endif
* git-changebar -- the Git Change Bar plugin
* keyrecord -- record keystrokes and replay them
* latex -- the GeanyLaTeX plugin
* lineoperations -- simple line operations plugin
* lipsum -- the Lipsum plugin
* markdown -- the Markdown plugin
%if %{with multiterm}
* multiterm -- MultiTerm support plugin
%endif
* overview -- the Overview plugin
* pairtaghighlighter -- Pair Tag Highlighter plugin
* pohelper -- Translation helper plugin
* pretty-printer -- the pretty-printer plugin
* projectorganizer -- the ProjectOrganizer plugin
* scope -- graphical GDB front-end plugin
* sendmail -- the Sendmail plugin
* shiftcolumn -- the ShiftColumn plugin
* spellcheck -- the spellcheck plugin
* treebrowser -- the Treebrowser plugin
* tableconvert -- the Tableconvert plugin
%if %{with updatechecker}
* updatechecker -- the Updatechecker plugin
%endif
* vimode -- the Vim-mode plugin
%if %{with webhelper}
* webhelper -- the WebHelper plugin
%endif
* workbench -- manage multiple projects in Geany
* xmlsnippets -- the XMLSnippets plugin

This is a meta package to install all plugins.

%package common
Summary:    Common files used by all geany plugins
Group:      Development/Tools
Requires:   geany >= %{version}
%if %{without debugger}
Obsoletes:  %{name}-debugger < %{version}-%{release}
%endif
%if %{without geanypy}
Obsoletes:  %{name}-geanypy < %{version}-%{release}
%endif
%if %{without devhelp}
Obsoletes:  %{name}-devhelp < %{version}-%{release}
%endif
%if %{without multiterm}
Obsoletes:  %{name}-multiterm < %{version}-%{release}
%endif
%if %{without webhelper}
Obsoletes:  %{name}-webhelper < %{version}-%{release}
%endif
%if %{without geniuspaste}
Obsoletes:  %{name}-geniuspaste < %{version}-%{release}
%endif
%if %{without updatechecker}
Obsoletes:  %{name}-updatechecker < %{version}-%{release}
%endif

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

%package addons
Summary:    Miscellaneous Addons for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%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:
* Document list: 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.
* Open and Copy URI: 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 configurable keywords (e.g. "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.
* Bookmark list: Add a list of defined bookmarks (line markers) to the sidebar.
  This list contains all bookmarks defined in the current file
  for faster overview and access.
* Mark Word: When double-clicking a word, all occurrences of this word are
  searched and then highlighted (similar to Geany's 'Mark All' Find option).
* Strip trailing blank lines: This addon removes excessive trailing blank
  lines from the document when it is saved. If you have 'Ensure new line at
  file end' option checked in Preferences, one trailing newline will be left.
* XML tagging: XML tagging allows to easy tag a selected text, by checking for a
  selection, offering a little dialog for inserting a tag and
  replacing a selection.

%package autoclose
Summary:    Autoclose plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description autoclose
This plugin enables auto-closing features. Auto-closing works while you typing
and intellectually helps you to write code.

%package automark
Summary:    Automark plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description automark
This is a simple plugin that highlights all words that match current word
under cursor.

%package codenav
Summary:    Navigate through your source code easily
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description codenav
This plugin adds some facilities for navigating in the code.
Actually, it will make it possible to:
- switch between header and implementation
- go to a file by typing its name

%package commander
Summary:    Control Geany using commands from a command panel
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description commander
Commander is a plugin for Geany that provides a command panel for rapid
access to any action.

%package debugger
Summary:    Enables debugging in Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description debugger
Plugin enables debugging in Geany. Currently supports GDB only, but was
developed with multiple debuggers support in mind, so the other backends
support is planned as well.

%package defineformat
Summary:    On-the-fly #define prettyprinter plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description defineformat
Defineformat -- on-the-fly #define prettyprinter. This plugin will help you to
write multiline defines with aligned backslash.

%package devhelp
Summary:    Devhelp plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description devhelp
This plugin embeds an API documentation browser and search functionality
directly into Geany's user interface. In case you didn't know, Devhelp is an
API documentation browser mainly aimed at GNOME-related libraries, although
there are Devhelp books for a wide range of library APIs.  Check your package
manager and/or Google and you should have no trouble finding books that can
be viewed with Devhelp.

%package geanyctags
Summary:    GeanyCtags plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geanyctags
GeanyCtags adds a simple support for generating and querying ctags files for a
Geany project. It requires that the ctags command is installed in a system path.
On unix systems, distributions usually provide the ctags package; on Windows,
the ctags binary can be found in the zip Windows distribution from the ctags home
page (http://ctags.sourceforge.net).

%package geanydoc
Summary:    Call documentation from within Geany
Group:      Development/Tools
Requires:   %{name}-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 geanyextrasel
Summary:    Additional features for selecting code
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geanyextrasel
Geanyextrasel provides some special features for selecting code, e.g. from
opening brace to closed brace and so on. This plugin will be very useful for
you if you're a programmer and working with much sourcecodes.

%if 0
%package geanygdb
Summary:    Debugger Plugin for Geany using GDB
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Requires:   gdb

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

%package geanygendoc
Summary:    Automatically generate documentation source code
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Requires:   ctpl
Requires:   python3-docutils

%description geanygendoc
GeanyGenDoc is a plugin for Geany that aims to automatically generate
documentation comment basis from the source code.

You may also want to install the following packages which enable
some extra features:
 - Docutils (http://docutils.sourceforge.net/) -- or another implementation of
   rst2html -- is needed to (re)generate the HTML manual.

%package geanyinsertnum
Summary:    Insert huge number ranges with small efforts
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geanyinsertnum
Geanyinsertnum replaces a (possibly zero-width) rectangular selection with
integer numbers, using start/step/base etc. specified by the user. For
practical reasons, the number of lines is limited to 500000.

%package latex
Summary:    LaTeX support for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Requires:   latex

Obsoletes:  geany-plugins-geanylatex < 1.31-2
Provides:   geany-plugins-geanylatex = %{version}-%{release}

%description latex
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.

%package geanylua
Summary:    Lua Scripting for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Requires:   lua5.1

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

%package geanymacro
Summary:    User defined Macros for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geanymacro
GeanyMacro is a plugin to provide user defined macros for Geany. It started
out as part of the ConText feature parity plugin, which was split into
individual plugins to better suit Geany's ethos of being as light as
possible while allowing users to select which features they want to add to
the core editor. The idea was taken from a Text Editor for Windows called
ConText.

This plugin allows you to record and use your own macros. Macros are
sequences of actions that can then be repeated with a single key
combination. So if you had dozens of lines where you wanted to delete the
last 2 characters, you could simple start recording, press End, Backspace,
Backspace, down line and then stop recording. Then simply trigger the macro
and it would automatically edit the line and move to the next. You could then
just repeatedly trigger the macro to do as many lines as you want.

%package geanyminiscript
Summary:    Geany Mini-Script filter plugin
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geanyminiscript
The GeanyMiniScript plugin is a tool to apply a script filter on:

* the text selection
* the current document
* all documents of the current session.

The filter type can be:

* Unix shell script
* perl script
* python script
* sed commands
* awk script

The output can be:

* the selection of the current document
* all the current document
* or a new document

%package geanynumberedbookmarks
Summary:    Provide users 10 numbered Bookmarks
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geanynumberedbookmarks
GeanyNumberedBookmarks is a plugin to provide users with 10 numbered
bookmarks (in addition to the usual bookmarks). It started out as part of
the ConText feature parity plugin, which was split into individual plugins
to better suit Geany's ethos of being as light as possible while allowing
users to select which features they want to add to the core editor. The idea
was taken from a Text Editor for Windows called ConText.

Normally if you had more than one bookmark, you would have to cycle through
them until you reached the one you wanted. With this plugin you can go
straight to the bookmark that you want with a single key combination.

%package geanypg
Summary:    Encrypt, decrypt and verify signatures with GnuPG
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Requires:   gpgme

%description geanypg
GeanyPG is a plugin for Geany that allows the user to encrypt, decrypt and
verify signatures with GnuPG.

%package geanyprj
Summary:    Provides an alternate project management tool for Geany
Group:      Development/Tools
Requires:   %{name}-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.

%package geanypy
Summary:    Write Geany plugins in Python
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geanypy
Provides most of the standard Geany C API for Python.

%package geanyvc
Summary:    Version Control for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{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

%package geniuspaste
Summary:    Use nopaste services directly from within Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description geniuspaste
This plugin allows the user to paste the code from Geany into five different
pastebins. At the moment it supports this services:

* codepad.org
* tinypaste.com
* pastebin.geany.org
* dpaste.de
* sprunge.us

GeniusPaste detects automatically the syntax of the code and paste it with
syntax highlighting enabled. It can also display the pasted code opening a new
browser tab.

%package git-changebar
Summary:    Highlight uncommitted changes and allow to navigate through hunks
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description git-changebar
This plugin highlights uncommitted changes to files tracked with Git, and
allows to navigate through the hunks.

%package keyrecord
Summary:    Allows to record some sequence of keystrokes and replay it
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description keyrecord
This plugin allows to record some sequence of keystrokes and replay it.

%package lineoperations
Summary:    Assortment of simple line functions
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description lineoperations
Line Operations is an assortment of simple line functions that can be
applied to an open file:

* Remove Duplicate Lines, sorted
* Remove Duplicate Lines, ordered
* Remove Unique Lines
* Remove Empty Lines
* Remove Whitespace Lines
* Sort Lines Ascending
* Sort Lines Descending

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

%description lipsum
Lipsum is a Lorem Ipsum generator for inserting placeholder text into a
document.

%package markdown
Summary:    Real time preview for Markdown documents
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description markdown
The Markdown plugin provides a real-time preview of rendered Markdown, that is,
Markdown converted to HTML and inserted into an HTML template and loaded
into a WebKit view.

%package multiterm
Summary:    MultiTerm support for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description multiterm
MultiTerm is similar to Geany's built-in VTE terminal except that it supports
multiple terminals in tabs and supports different shells in each of the
terminal tabs.

%package overview
Summary:    Overview plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description overview
The Overview plugin is a small zoomed-out view next to the normal editor view
that allows to see and navigate a lot of the file at once. It is similar to the
Minimap in SublimeText or such similar feature in numerous other editors.

%package pairtaghighlighter
Summary:    Pair Tag Highlighter plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description pairtaghighlighter
Finds and highlights matching opening/closing HTML tag by clicking or
moving cursor inside a tag.

%package pohelper
Summary:    Translation Helper plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description pohelper
Translation Helper is a plugin for Geany that improves the support for
GetText translation files, by providing various features specific to this
format and to translators.

%package pretty-printer
Summary:    XML pretty printing plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Requires:   libxml2 >= 2.6.27

%description pretty-printer
Plugin for Geany to easily beautify XML code.

%package projectorganizer
Summary:    Extension of Geany's project management
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Obsoletes:  %{name}-gproject < 1.26-1
Provides:   %{name}-gproject = %{version}-%{release}

%description projectorganizer
ProjectOrganizer (formerly GProject) is an extension of Geany's project
management displaying a tree of files belonging to the project in the
sidebar. In addition, it enables quick swapping between header and source
files, searching project files by name and more. The plugin was created
with big projects in mind so everything works fast enough even with projects
consisting of hundreds of thousands of )files.

%package scope
Summary:    Graphical GDB front-end
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Requires:   gdb >= 7.3

%description scope
Scope is a graphical GDB front-end with the normal functions you would
expect (stepping, breakpoints...), and a few notable features:

* The communication between Scope and GDB is asynchronous
* You can enter any GDB command, at any time
  (of course, for the command to be executed, GDB must be[come] available)
* All GDB I/O (along with some other messages) is displayed in a terminal-like
  "Debug Console". Whenever you find the GUI lacking, simply switch to that
  console and work directly with GDB
* 7-bit/Locale/UTF-8 support for values.

%package sendmail
Summary:    Send E-Mails from within Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}
Obsoletes:  geanysendmail < 1.28-1
Provides:   geanysendmail = %{version}-%{release}

%description sendmail
Geany SendMail 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 shiftcolumn
Summary:    Move Blocks of Text horizontally
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

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

%package spellcheck
Summary:    Spellcheck Text in Geany using the Enchant Library
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

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

%package tableconvert
Summary:    Helps on converting a tabulator separated selection into a table
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description tableconvert
Tableconvert is a plugin which helps on converting a tabulator separated
selection into a table.

%package treebrowser
Summary:    Alternate file browser plugin providing a tree view of directories
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description treebrowser
The tree browser plugin for Geany provides an alternate way to browse through
your files. It displays files and directories in a tree view and has more
features than the file browser plugin delivered with Geany itself.

%package updatechecker
Summary:    Automatically check for Geany updates
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description updatechecker
UpdateChecker is a plugin for Geany, which is able to check whether there is
a more recent version of Geany available.

%package vimode
Summary:    Vim-mode plugin for Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description vimode
Vimode is a Vim-mode plugin for Geany written by a guy who does not use Vim.

Despite the limited Vim knowledge of the author, the plugin tries to be a
reasonably complete Vim mode implementation featuring:

* normal mode, insert/replace mode, visual mode, line visual mode
* repeated commands (e.g. 10dd - delete 10 lines)
* "motion" commands (e.g. d10l - delete 10 characters to the right)
* "text object" commands (e.g. di( - delete inner contents of parentheses)
* visual mode commands (e.g. ~ to swap case of the selected text)
* basic ex mode commands like :s, including range specifications (e.g.
  :5,8s/foo/bar/g - replace foo with bar on lines 5 through 8)
* most basic navigation, selection and text manipulation commands
  - see the end of this file for the full list
* command repetition using "." and repeated insert

%package webhelper
Summary:    Preview and Debug Web documents from within Geany using WebKit
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description webhelper
WebHelper is a plugin for Geany that provides some web development
facilities, such as a web page preview and some debugging tools (web
inspector).

Prominent features:

* A basic web view, allowing to display any web page (using WebKit)
* Possible automatic reloading of the web view upon document saving
* A web inspector/debugging tool for the web view's content (including a
  JavaScript console, a viewer and editor of processed HTML and CSS, a network
  usage analysis tool and many more, thanks to WebKit).

%package workbench
Summary:    Manage multiple projects in Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description workbench
The Workbench plugin is an extension that makes it possible to manage
multiple projects in geany. You can add geany projects to a workbench.
From there you can add directories to the project to manage the files
belonging to the project.

%package xmlsnippets
Summary:    Extends XML/HTML tag autocompletion provided by Geany
Group:      Development/Tools
Requires:   %{name}-common >= %{version}-%{release}

%description xmlsnippets
This plugin extends XML/HTML tag autocompletion provided by Geany. It
automatically inserts a matching snippet after you type an opening tag.

%prep
%autosetup -p1

sed -i -e 's/webkit2gtk-4.0/webkit2gtk-4.1/g'  build/markdown.m4
#sed -i -e 's/libsoup-2.4/libsoup-3.0/g' build/updatechecker.m4 build/geniuspaste.m4

%build
autoreconf -fi
%configure \
  %{?!with_geniuspaste:--disable-geniuspaste} \
  %{?!with_updatechecker:--disable-updatechecker} \
  %nil
%make_build

%install
%make_install

# Remove static library *.la files
find %{buildroot} -name '*.la' -delete

# Remove zero-length files
find %{buildroot} -type f -empty -delete

# Remove unneeded devel file
find %{buildroot} -name 'libgeanypluginutils.so' -delete

%find_lang %{name}

%files
%doc AUTHORS COPYING NEWS README

%files common -f %{name}.lang
%dir %{_datadir}/%{name}/
%{_libdir}/libgeanypluginutils.so.*

%files addons
%doc %{geany_plug_docdir}/addons/
%{_libdir}/geany/addons.so

%files autoclose
%doc %{geany_plug_docdir}/autoclose/
%{_libdir}/geany/autoclose.so

%files automark
%doc %{geany_plug_docdir}/automark/
%{_libdir}/geany/automark.so

%files codenav
%doc %{geany_plug_docdir}/codenav/
%{_libdir}/geany/codenav.so

%files commander
%doc %{geany_plug_docdir}/commander
%{_libdir}/geany/commander.so

%files defineformat
%doc %{geany_plug_docdir}/defineformat/
%{_libdir}/geany/defineformat.so

%if %{with devhelp}
%files devhelp
%doc %{geany_plug_docdir}/devhelp/
%{_datadir}/%{name}/devhelp/
%{_libdir}/geany/devhelp.so
%endif

%if %{with debugger}
%files debugger
%doc %{geany_plug_docdir}/debugger/
%{_datadir}/%{name}/debugger/
%{_libdir}/geany/debugger.so
%endif

%files geanyctags
%doc %{geany_plug_docdir}/geanyctags/
%{_libdir}/geany/geanyctags.so

%files geanydoc
%doc %{geany_plug_docdir}/geanydoc/
%{_libdir}/geany/geanydoc.so

%files geanyextrasel
%doc %{geany_plug_docdir}/geanyextrasel/
%{_libdir}/geany/geanyextrasel.so

%if 0
%files geanygdb
%doc %{geany_plug_docdir}/geanygdb/
%{_libdir}/geany/geanygdb.so
%{_libexecdir}/%{name}/geanygdb/ttyhelper
%endif

%files geanygendoc
%doc %{geany_plug_docdir}/geanygendoc/
%{_libdir}/geany/geanygendoc.so
%{_datadir}/%{name}/geanygendoc/

%files geanyinsertnum
%doc %{geany_plug_docdir}/geanyinsertnum/
%{_libdir}/geany/geanyinsertnum.so

%files latex
%doc %{geany_plug_docdir}/latex*
#%%doc %%{geany_plug_docdir}/bibtex*
#%%doc %%{geany_plug_docdir}/insert_*.png
#%%doc %%{geany_plug_docdir}/plugin_manager.png
#%%doc %%{geany_plug_docdir}/toolbar.png
#%%doc %%{geany_plug_docdir}/latexwizard.png
%{_libdir}/geany/latex.so

%files geanylua
%doc %{geany_plug_docdir}/geanylua/
%{_libdir}/geany/geanylua.so
%{_datadir}/%{name}/geanylua/
%{_libdir}/%{name}/geanylua/

%files geanymacro
%doc %{geany_plug_docdir}/geanymacro/
%{_libdir}/geany/geanymacro.so

%files geanyminiscript
%doc %{geany_plug_docdir}/geanyminiscript/
%{_libdir}/geany/geanyminiscript.so

%files geanynumberedbookmarks
%doc %{geany_plug_docdir}/geanynumberedbookmarks/
%{_libdir}/geany/geanynumberedbookmarks.so

%files geanypg
%doc %{geany_plug_docdir}/geanypg/
%{_libdir}/geany/geanypg.so

%files geanyprj
%doc %{geany_plug_docdir}/geanyprj/
%{_libdir}/geany/geanyprj.so

%if %{with geanypy}
%files geanypy
%doc %{geany_plug_docdir}/geanypy/
%{_libdir}/geany/geanypy.so
%{_libdir}/geany/geanypy/
%{_libdir}/geany/{console,demo,hello}.py*
%endif

%files geanyvc
%doc %{geany_plug_docdir}/geanyvc/
%{_libdir}/geany/geanyvc.so

%if %{with geniuspaste}
%files geniuspaste
%doc %{geany_plug_docdir}/geniuspaste/
%{_libdir}/geany/geniuspaste.so
%{_datadir}/%{name}/geniuspaste/
%endif

%files git-changebar
%doc %{geany_plug_docdir}/git-changebar/
%{_libdir}/geany/git-changebar.so
%{_datadir}/%{name}/git-changebar/

%files keyrecord
%doc %{geany_plug_docdir}/keyrecord/
%{_libdir}/geany/keyrecord.so

%files lineoperations
%doc %{geany_plug_docdir}/lineoperations/
%{_libdir}/geany/lineoperations.so

%files lipsum
%doc %{geany_plug_docdir}/lipsum/
%{_libdir}/geany/lipsum.so

%files markdown
%doc %{geany_plug_docdir}/markdown/
%{_libdir}/geany/markdown.so

%if %{with multiterm}
%files multiterm
%doc %{geany_plug_docdir}/multiterm/
%{_libdir}/geany/multiterm.so
%endif

%files overview
%doc %{geany_plug_docdir}/overview/
%{_libdir}/geany/overview.so
%{_datadir}/%{name}/overview/

%files pairtaghighlighter
%doc %{geany_plug_docdir}/pairtaghighlighter/
%{_libdir}/geany/pairtaghighlighter.so

%files pohelper
%doc %{geany_plug_docdir}/pohelper/
%{_libdir}/geany/pohelper.so
%{_datadir}/%{name}/pohelper/

%files pretty-printer
%{_libdir}/geany/pretty-printer.so

%files projectorganizer
%doc %{geany_plug_docdir}/projectorganizer/
%{_libdir}/geany/projectorganizer.so

%files scope
%doc %{geany_plug_docdir}/scope/
%{_datadir}/geany-plugins/scope/
%{_libdir}/geany/scope.so

%files sendmail
%doc %{geany_plug_docdir}/sendmail/
%{_libdir}/geany/sendmail.so

%files shiftcolumn
%doc %{geany_plug_docdir}/shiftcolumn/
%{_libdir}/geany/shiftcolumn.so

%files spellcheck
%doc %{geany_plug_docdir}/spellcheck/
%{_libdir}/geany/spellcheck.so

%files tableconvert
%doc %{geany_plug_docdir}/tableconvert/
%{_libdir}/geany/tableconvert.so

%files treebrowser
%doc %{geany_plug_docdir}/treebrowser/
%{_libdir}/geany/treebrowser.so

%if %{with updatechecker}
%files updatechecker
%doc %{geany_plug_docdir}/updatechecker/
%{_libdir}/geany/updatechecker.so
%endif

%files vimode
%doc %{geany_plug_docdir}/vimode/
%{_libdir}/geany/vimode.so

%if %{with webhelper}
%files webhelper
%doc %{geany_plug_docdir}/webhelper/
%{_libdir}/geany/webhelper.so
%endif

%files workbench
%doc %{geany_plug_docdir}/workbench/
%{_libdir}/geany/workbench.so

%files xmlsnippets
%doc %{geany_plug_docdir}/xmlsnippets/
%{_libdir}/geany/xmlsnippets.so


%changelog
* Tue Sep 20 2022 wally <wally> 1.38-1.mga9
+ Revision: 1890967
- new version 1.38
- build against webkit2gtk-4.1

* Mon Apr 04 2022 umeabot <umeabot> 1.37-5.mga9
+ Revision: 1844041
- Mageia 9 Mass Rebuild

* Mon Jan 03 2022 wally <wally> 1.37-4.mga9
+ Revision: 1766336
- rebuild for libgit2 1.3.0

* Tue Mar 30 2021 wally <wally> 1.37-3.mga9
+ Revision: 1711944
- rebuild with updated lua 5.1

* Wed Dec 30 2020 luigiwalser <luigiwalser> 1.37-2.mga8
+ Revision: 1666239
- rebuild for libgit2

* Tue Nov 03 2020 akien <akien> 1.37-1.mga8
+ Revision: 1642211
- Version 1.37

* Fri Jul 24 2020 daviddavid <daviddavid> 1.36-3.mga8
+ Revision: 1608636
- rebuild for new libgit2 1.0.1
- add upstream patch to make libgit2 version preprocessor conditionals
  compatible with libgit2-0.99

* Sun Feb 16 2020 umeabot <umeabot> 1.36-2.mga8
+ Revision: 1534813
- Mageia 8 Mass Rebuild
+ wally <wally>
- replace deprecated %%configure2_5x

* Sun Oct 06 2019 daviddavid <daviddavid> 1.36-1.mga8
+ Revision: 1450014
- new version: 1.36
- switch to python3-docutils
- re-enable plugin debugger, now ported to Gtk+3

* Wed May 01 2019 akien <akien> 1.35-1.mga7
+ Revision: 1396007
- Version 1.35

* Sat Apr 20 2019 wally <wally> 1.34-4.mga7
+ Revision: 1393751
- rebuild for libgit2 0.28.1

* Sun Feb 24 2019 wally <wally> 1.34-3.mga7
+ Revision: 1369880
- drop unneeded enchant requires

* Sat Feb 23 2019 wally <wally> 1.34-2.mga7
+ Revision: 1369551
- switch to gtk3
- disable webkit1 plugin webhelper
- disable gtk2 only plugins devhelp and multiterm
- disable gtk2 only plugins debugger and geanypy

* Tue Dec 18 2018 daviddavid <daviddavid> 1.34-1.mga7
+ Revision: 1342506
- new version: 1.34

* Sun Sep 23 2018 umeabot <umeabot> 1.33-4.mga7
+ Revision: 1297848
- Mageia 7 Mass Rebuild

* Wed Mar 28 2018 daviddavid <daviddavid> 1.33-3.mga7
+ Revision: 1212995
- rebuild for new libgit2

* Thu Mar 08 2018 daviddavid <daviddavid> 1.33-2.mga7
+ Revision: 1207382
- remove unneeded devel file

* Thu Mar 08 2018 daviddavid <daviddavid> 1.33-1.mga7
+ Revision: 1207377
- new version: 1.33
- rename plugin geanylatex to latex

* Sat Jul 22 2017 akien <akien> 1.31-1.mga7
+ Revision: 1128030
- Add subpackage for keyrecord plugin
- Version 1.31

* Sun Jun 04 2017 akien <akien> 1.30-3.mga6
+ Revision: 1106482
- Rebuild for devhelp 3.24.0

* Wed Mar 29 2017 akien <akien> 1.30-2.mga6
+ Revision: 1095209
- Rebuild for libgit2 0.25.0

* Sat Mar 11 2017 akien <akien> 1.30-1.mga6
+ Revision: 1091891
- Version 1.30

* Mon Nov 14 2016 akien <akien> 1.29-1.mga6
+ Revision: 1067107
- Version 1.29
  o geanylipsum renamed to lipsum
  o new git-changebar plugin

* Thu Jul 28 2016 akien <akien> 1.28-1.mga6
+ Revision: 1043831
- Turn all Requires to Recommends
- Version 1.28
  o geanysendmail plugin is renamed to sendmail

* Mon Mar 21 2016 daviddavid <daviddavid> 1.27-3.mga6
+ Revision: 993792
- fix bogus requires

* Mon Mar 14 2016 akien <akien> 1.27-2.mga6
+ Revision: 990626
- Requires -lineoperations

* Mon Mar 14 2016 akien <akien> 1.27-1.mga6
+ Revision: 990611
- Fix %%files, new lineoperations plugin
- Version 1.27

* Wed Jan 13 2016 akien <akien> 1.26-1.mga6
+ Revision: 922332
- Version 1.26
- gproject plugin renamed to projectorganizer
- adds automark, geanyctags and overview plugins

* Sat Oct 17 2015 daviddavid <daviddavid> 1.24-5.mga6
+ Revision: 892413
- add more docs to fix build with latest rpm

* Wed Oct 15 2014 umeabot <umeabot> 1.24-4.mga5
+ Revision: 745728
- Second Mageia 5 Mass Rebuild

* Tue Sep 16 2014 umeabot <umeabot> 1.24-3.mga5
+ Revision: 679469
- Mageia 5 Mass Rebuild

* Sat Apr 26 2014 wally <wally> 1.24-2.mga5
+ Revision: 618220
- fix typo in requires and description

* Fri Apr 25 2014 wally <wally> 1.24-1.mga5
+ Revision: 617998
- new version 1.24

* Sat Oct 19 2013 umeabot <umeabot> 1.23-2.mga4
+ Revision: 523917
- Mageia 4 Mass Rebuild

* Sun May 26 2013 wally <wally> 1.23-1.mga4
+ Revision: 428186
- new version 1.23
- new plugins
  * commander
  * markdown
  * scope

* Fri Jan 11 2013 umeabot <umeabot> 1.22-2.mga3
+ Revision: 351174
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Sun Nov 04 2012 wally <wally> 1.22-1.mga3
+ Revision: 314143
- sync with Fedora spec (split plugins to a separate pkgs)
- import geany-plugins from Mdv


* Mon Sep 24 2012 Dmitry Mikhirev <dmikhirev@mandriva.org> 1.22-1
+ Revision: 817442
- update to 1.22

  + Oden Eriksson <oeriksson@mandriva.com>
    - relink against libpcre.so.1

* Sun Jul 24 2011 Yuri Myasoedov <omerta13@mandriva.org> 0.20-1
+ Revision: 691441
- Oopsy...
- Fixed BuildRequires: no devel package
- Fixed dependencies: no geany-devel package
- Fixed dependencies
- Fixed Group tag
- imported package geany-plugins