1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 isPyPy,
6 setuptools,
7 docutils,
8 pygments,
9 pytestCheckHook,
10}:
11
12buildPythonPackage rec {
13 pname = "smartypants";
14 version = "2.0.2";
15 pyproject = true;
16
17 disabled = isPyPy;
18
19 src = fetchFromGitHub {
20 owner = "leohemsted";
21 repo = "smartypants.py";
22 tag = "v${version}";
23 hash = "sha256-jSGiT36Rr0P6eEWZIHtMj4go3KGDRaF2spLxLNruDec=";
24 };
25
26 build-system = [ setuptools ];
27
28 nativeCheckInputs = [
29 docutils
30 pygments
31 pytestCheckHook
32 ];
33
34 preCheck = ''
35 patchShebangs smartypants
36 '';
37
38 meta = {
39 description = "Translate plain ASCII quotation marks and other characters into “smart” typographic HTML entities";
40 homepage = "https://github.com/leohemsted/smartypants.py";
41 changelog = "https://github.com/leohemsted/smartypants.py/blob/v${version}/CHANGES.rst";
42 license = lib.licenses.bsd3;
43 maintainers = with lib.maintainers; [ dotlambda ];
44 mainProgram = "smartypants";
45 };
46}