- Switch to pyproject macros.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Unidecode?expand=0&rev=49
This commit is contained in:
105
python-Unidecode.spec
Normal file
105
python-Unidecode.spec
Normal file
@@ -0,0 +1,105 @@
|
||||
#
|
||||
# spec file for package python-Unidecode
|
||||
#
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%{?sle15allpythons}
|
||||
%define skip_python2 1
|
||||
Name: python-Unidecode
|
||||
Version: 1.4.0
|
||||
Release: 0
|
||||
Summary: ASCII transliterations of Unicode text
|
||||
License: GPL-2.0-or-later
|
||||
URL: https://pypi.python.org/pypi/Unidecode
|
||||
Source: https://files.pythonhosted.org/packages/source/U/Unidecode/Unidecode-%{version}.tar.gz
|
||||
BuildRequires: %{python_module pip}
|
||||
BuildRequires: %{python_module setuptools}
|
||||
BuildRequires: %{python_module wheel}
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
Requires(post): update-alternatives
|
||||
Requires(postun): update-alternatives
|
||||
BuildArch: noarch
|
||||
%python_subpackages
|
||||
|
||||
%description
|
||||
It often happens that you have text data in Unicode, but you need to
|
||||
represent it in ASCII. For example when integrating with legacy code that
|
||||
doesn't support Unicode, or for ease of entry of non-Roman names on a US
|
||||
keyboard, or when constructing ASCII machine identifiers from
|
||||
human-readable Unicode strings that should still be somewhat intelligible
|
||||
(a popular example of this is when making an URL slug from an article
|
||||
title).
|
||||
|
||||
In most of these examples you could represent Unicode characters as
|
||||
"???" or "\\15BA\\15A0\\1610", to mention two extreme cases. But that's
|
||||
nearly useless to someone who actually wants to read what the text says.
|
||||
|
||||
What Unidecode provides is a middle road: function unidecode() takes
|
||||
Unicode data and tries to represent it in ASCII characters (i.e., the
|
||||
universally displayable characters between 0x00 and 0x7F), where the
|
||||
compromises taken when mapping between two character sets are chosen to be
|
||||
near what a human with a US keyboard would choose.
|
||||
|
||||
The quality of resulting ASCII representation varies. For languages of
|
||||
western origin it should be between perfect and good. On the other hand
|
||||
transliteration (i.e., conveying, in Roman letters, the pronunciation
|
||||
expressed by the text in some other writing system) of languages like
|
||||
Chinese, Japanese or Korean is a very complex issue and this library does
|
||||
not even attempt to address it. It draws the line at context-free
|
||||
character-by-character mapping. So a good rule of thumb is that the further
|
||||
the script you are transliterating is from Latin alphabet, the worse the
|
||||
transliteration will be.
|
||||
|
||||
Note that this module generally produces better results than simply
|
||||
stripping accents from characters (which can be done in Python with
|
||||
built-in functions). It is based on hand-tuned character mappings that for
|
||||
example also contain ASCII approximations for symbols and non-Latin
|
||||
alphabets.
|
||||
|
||||
This is a Python port of Text::Unidecode Perl module by
|
||||
Sean M. Burke <sburke@cpan.org>.
|
||||
|
||||
%prep
|
||||
%setup -q -n Unidecode-%{version}
|
||||
|
||||
%build
|
||||
%pyproject_wheel
|
||||
|
||||
%install
|
||||
%pyproject_install
|
||||
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||
|
||||
%python_clone -a %{buildroot}%{_bindir}/unidecode
|
||||
|
||||
%check
|
||||
export LANG=en_US.UTF-8
|
||||
%pyunittest -v
|
||||
|
||||
%post
|
||||
%python_install_alternative unidecode
|
||||
|
||||
%postun
|
||||
%python_uninstall_alternative unidecode
|
||||
|
||||
%files %{python_files}
|
||||
%license LICENSE
|
||||
%doc ChangeLog README.rst
|
||||
%{python_sitelib}/[Uu]nidecode-%{version}.dist-info
|
||||
%{python_sitelib}/unidecode
|
||||
%python_alternative %{_bindir}/unidecode
|
||||
|
||||
%changelog
|
||||
Reference in New Issue
Block a user