zanafacils 0.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- zanafacils-0.2.1/PKG-INFO +5 -0
- zanafacils-0.2.1/README.md +124 -0
- zanafacils-0.2.1/license.txt +28 -0
- zanafacils-0.2.1/setup.cfg +4 -0
- zanafacils-0.2.1/setup.py +17 -0
- zanafacils-0.2.1/zanafacils/__init__.py +11 -0
- zanafacils-0.2.1/zanafacils/configur.py +488 -0
- zanafacils-0.2.1/zanafacils/iout.py +197 -0
- zanafacils-0.2.1/zanafacils/itools.py +575 -0
- zanafacils-0.2.1/zanafacils/kbdmenu.py +112 -0
- zanafacils-0.2.1/zanafacils/kieboard.py +271 -0
- zanafacils-0.2.1/zanafacils/timero.py +196 -0
- zanafacils-0.2.1/zanafacils/timstamps.py +242 -0
- zanafacils-0.2.1/zanafacils/~test-zana-import.py +15 -0
- zanafacils-0.2.1/zanafacils.egg-info/PKG-INFO +5 -0
- zanafacils-0.2.1/zanafacils.egg-info/SOURCES.txt +16 -0
- zanafacils-0.2.1/zanafacils.egg-info/dependency_links.txt +1 -0
- zanafacils-0.2.1/zanafacils.egg-info/top_level.txt +1 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
<!-- title = 'ZanaFacils'; favicon = './imgs/20260630o0814.tikigiki-screw-002.v1.svg'; -->
|
|
2
|
+
|
|
3
|
+
<img src="./imgs/20260630o0814.tikigiki-screw-002.v1.svg" class="lmp-img-logo-top-right" width="184" height="184" alt="Logo 20260630°0814">
|
|
4
|
+
|
|
5
|
+
<div markdown="1" class="lmp-box-nav-menuitems">
|
|
6
|
+
<span class="CurrentChapter">[Projects](./../../../blogdev/trunk/projects.md)</span> →
|
|
7
|
+
<span class="CurrentPage">[ZanaFacilsDev](./README.md)</span> →
|
|
8
|
+
[Changelog](./~changelog.md)
|
|
9
|
+
[Issues](./~issues.md)
|
|
10
|
+
[Notes](./~notes.md)
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
# ZanaFacilsDev <sup>v0.2.1</sup> <span class="lmp-title-type">Project</span>
|
|
14
|
+
|
|
15
|
+
## 1. Overview
|
|
16
|
+
|
|
17
|
+
Synopsis:
|
|
18
|
+
- **Slogan** : A Python package bundling casual facilities used by the author
|
|
19
|
+
- **Description** : ZanaFacils is a Python package with facilities for my personal projects.
|
|
20
|
+
- **License** : BSD 3-Clause, see [src/filehiker/license.txt](./src/filehiker/license.txt)
|
|
21
|
+
- **Copyright** : © 2025 – 2026 Norbert C. Maier
|
|
22
|
+
- **System** : Written and tested with Python 3.13 on Windows. Should largely work
|
|
23
|
+
on Linux/Mac, except some specific keyboard functions
|
|
24
|
+
- **Dependencies** : None
|
|
25
|
+
- **Motivation** : Diverse casual utilities have amounted, and I like to make a neat pack of them
|
|
26
|
+
- **Development Status** : Applicable
|
|
27
|
+
|
|
28
|
+
Here is the development area. For the user´s Readme in the installed
|
|
29
|
+
package see [zanafacils/README.md](./zanafacils/README.md)
|
|
30
|
+
|
|
31
|
+
ZanaFacils contains the following the modules:
|
|
32
|
+
|
|
33
|
+
- [**configur**](./zanafacils/configur.py) — Configuration facility to read/write INI files
|
|
34
|
+
|
|
35
|
+
- [**iout**](./zanafacils/iout.py) — Some primitive input/output helpers …
|
|
36
|
+
|
|
37
|
+
- [**itools**](./zanafacils/itools.py) — Some common string operations …
|
|
38
|
+
|
|
39
|
+
- [**kbdmenu**](./zanafacils/kbdmenu.py) — Keyboard menu helpers …
|
|
40
|
+
|
|
41
|
+
- [**kieboard**](./zanafacils/kieboard.py) — Some primitive keyboard helpers …
|
|
42
|
+
|
|
43
|
+
- [**timero**](./zanafacils/timero.py) — Some timer helpers …
|
|
44
|
+
|
|
45
|
+
- [**timstamps**](./zanafacils/timstamps.py) — Some timestamp readers and formatters …
|
|
46
|
+
|
|
47
|
+
BTW. About the **package layout** see [notes.md](./~notes.md#id20260631o0723),
|
|
48
|
+
Zana is using the [Semi-Flat-Layout](./~notes.md#id20260631o0727).
|
|
49
|
+
|
|
50
|
+
BTW. Occasional legastenic typos in identifier names come with the advantage
|
|
51
|
+
to make text search for such identifiers much easier.
|
|
52
|
+
|
|
53
|
+
## 2. Usage
|
|
54
|
+
|
|
55
|
+
Install ZanaFacils either from PyPi.org (not yet available) with
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
> python.exe -m pip install zanafacils
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
or — if you have the sources on your drive — as a local editable development package.
|
|
62
|
+
In the console go to the parent folder `zanafacilsdev` and issue the following command:
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
zanafacilsdev> python.exe -m pip install -e .
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## 3. API (Application Programmers Interface)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
… ahem …
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
## 4. Credits
|
|
89
|
+
|
|
90
|
+
<img class="lmp-reference-icon" src="./imgs/20260630o0814.tikigiki-screw-002.v1.svg" width="64" height="64" alt=" Icon 20260815°0743">
|
|
91
|
+
The screw logo is made by Norbert after
|
|
92
|
+
[openclipart.org/detail/170818/wood-screw-tools-002](https://openclipart.org/detail/170818/wood-screw-tools-002),
|
|
93
|
+
which is licensed as a Public Domain dedication
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
## 5. By the Way
|
|
98
|
+
|
|
99
|
+
The word *Zana* means 'tools' in Suaheli. *Zana* also is an Albanian fairy.
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
#### 6. Fineprint
|
|
106
|
+
|
|
107
|
+
<pre>
|
|
108
|
+
project 20250213°0711 ZanaFacilsDev
|
|
109
|
+
objtype :
|
|
110
|
+
url :
|
|
111
|
+
title : ZanaFacilsDev
|
|
112
|
+
summary : ZanaFacils is a Python package for miscellaneous personal utility functions
|
|
113
|
+
status :
|
|
114
|
+
tags :
|
|
115
|
+
note :
|
|
116
|
+
⬞
|
|
117
|
+
</pre>
|
|
118
|
+
|
|
119
|
+
<pre>
|
|
120
|
+
repo 20260820°1211 ZanaFacilsDev
|
|
121
|
+
canonical : https://gitlab.com/normai/zanafacilsdev
|
|
122
|
+
</pre>
|
|
123
|
+
|
|
124
|
+
<sup>Page 20250213°0721 ⬞Ω</sup>
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
BSD 3-Clause License
|
|
2
|
+
|
|
3
|
+
Copyright © 2025 - 2026, Norbert C. Maier
|
|
4
|
+
|
|
5
|
+
Redistribution and use in source and binary forms, with or without
|
|
6
|
+
modification, are permitted provided that the following conditions are met:
|
|
7
|
+
|
|
8
|
+
1. Redistributions of source code must retain the above copyright notice, this
|
|
9
|
+
list of conditions and the following disclaimer.
|
|
10
|
+
|
|
11
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
12
|
+
this list of conditions and the following disclaimer in the documentation
|
|
13
|
+
and/or other materials provided with the distribution.
|
|
14
|
+
|
|
15
|
+
3. Neither the name of the copyright holder nor the names of its
|
|
16
|
+
contributors may be used to endorse or promote products derived from
|
|
17
|
+
this software without specific prior written permission.
|
|
18
|
+
|
|
19
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
20
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
21
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
22
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
23
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
24
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
25
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
26
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
27
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
28
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
## @file 20250308°0731 zanafacils/setup.py
|
|
2
|
+
# @brief This file´s version number is used by the build, not that of pyproject.toml
|
|
3
|
+
# @details How is the relation to pyproject.toml? Can one of the two be discarded?!
|
|
4
|
+
# @copyright BSD-3-Clause License | © 2023 – 2026 Norbert C. Maier
|
|
5
|
+
# @remark Status : First test
|
|
6
|
+
# @remark Usage : Run pip from the parent folder of zana
|
|
7
|
+
# @see https://chat.mistral.ai/chat/3cf237a1-78b3-4c85-b3cf-855536be9aff [ref 20250308°0724]
|
|
8
|
+
# @see Screenshot 20250308°1735 console--pip-install-flat-editable--heureka
|
|
9
|
+
# @see https://www.perplexity.ai/search/in-windows-i-installed-success-eavssEJ9TkCpyfncKWFTSQ [ref 20250728°1334] 👍 Quest "In Windows I installed successfully a Python package with command "pip.exe install -e .", command line "pip.exe list" does show it, but Python command "help() modules" does not show it."
|
|
10
|
+
|
|
11
|
+
from setuptools import setup, find_packages
|
|
12
|
+
|
|
13
|
+
setup(
|
|
14
|
+
name = 'zanafacils',
|
|
15
|
+
version = '0.2.1',
|
|
16
|
+
packages = find_packages(),
|
|
17
|
+
)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# file : 20250213°0727 zanafacilsdev/zanafacils/__init__.py
|
|
2
|
+
# note : Content comes with chg 20250308°0717 solution of issue 20250306°1111 'ModuleNotFoundError in flat package'
|
|
3
|
+
# see : https://www.perplexity.ai/search/in-windows-i-installed-success-eavssEJ9TkCpyfncKWFTSQ [ref 20250728°1334] 👍 Quest "In Windows I installed successfully a Python package with command "pip.exe install -e .", command line "pip.exe list" does show it, but Python command "help() modules" does not show it."
|
|
4
|
+
|
|
5
|
+
from .configur import *
|
|
6
|
+
from .iout import *
|
|
7
|
+
from .itools import *
|
|
8
|
+
from .kbdmenu import *
|
|
9
|
+
from .kieboard import *
|
|
10
|
+
from .timero import *
|
|
11
|
+
from .timstamps import *
|