Item | Description |
---|---|
What is this? | Critical part of project harrrp , several python interfaces and tools for .yaml harmonica tabs. |
What does it contain? Not a complete list, please see further sections. |
|
What does it NOT contain? |
|
Why does it NOT contain some items? | Because the items in question are abstract programmatic text-editing tools, which are not unique nor native to project harrrp — they belong to a different project. |
- Clone the repository.
- Install requirements
pip install -r requirements.txt
.
Since the tools in this repository are targeted towards batch non-editing operations on already existing harmonica tabs, the first step requires the user to actually provide the paths to these already existing harmonica tabs.
Paths to existing harmonica tabs are defined using the tab_folders.txt
file, located at the root of the project. The example contents could be as follows:
some/custom/path/tabs
c:\another\custom\path\tabs
d:\third\different\location\tabs
After defining paths to at least one existing folder with harmonica tabs, tool launchers
become usable.
Please choose the autorun_*.py
file according to current goals, open it with IDE of choice and run it.
The project contains several parts that nicely fit together and allow to easily accomodate future changes while preserving past versions and functionality.
Name | Description | How to Locate |
---|---|---|
Some tool |
Rather abstract data analysis tool that can be applied to any compatible user input, regardless of its origin or meaning. There can be many of them, they exist for different purposes. |
Any file named src/some_*_Columns . |
Some tool launcher |
Wapper code that allows the user to one-click apply the tool of choice to any harrrp harmonica tabs without headaches or low-level considerations.There can be many of them, they exist for usage convenience. |
Any file named autorun_*.py . |
Some interface to specific harmonica tab schema version |
Actual low-level programmatic interface to some specific harrrp harmonica tab.There are many of them, they evolve according to user needs. |
Any file named src/format_*/Columns_Tab.py . |
The interface chooser |
One convenient endpoint that automatically chooses the correct programmatic interface for any given harmonica tab, freeing the developer from any worries regarding "how to process this specific tab".There is only one. |
The file named src/some_TabFormat_Columns.py . |
Some tool |
Some interface to specific harmonica tab schema version |
The interface chooser |
Some tool launcher |
|
---|---|---|---|---|
Welcomes structural changes? | ❌ Any functionality-adding changes are appended to the latest version. Any functionality-altering changes are not welcome and should be avoided as much as possible, because they may dramatically affect apps that rely on the output of this tool. |
✔️ Any functionality-adding changes are appended to the latest version. Any functionality-altering changes are placed in the new version. |
❌ Any functionality-adding changes are appended to the latest version. Any functionality-altering changes are not welcome and should be avoided as much as possible, because they may dramatically affect apps that rely on this code. |
✔️ Must be as convenient as possible, usually calls appropriate methods from interface chooser , but in more complex cases can combine some tool with interface chooser . |
Has to be compatible with... | No one. | 👈 Some 👉 The |
No one. | 👈 Some 👈 The |
In this section the functionality of all available "some tools
" and "some tool launchers
" is listed.
Tool | Description | How to Locate |
---|---|---|
Estimate tab difficulty. |
|
The file named The file named |
Create convenient tab comparison table. |
|
The file named The file named |
Process .midi attachments. |
|
The file named The file named The file named The file named |
versions:
4.1.0: ok
The actual licenses are available per-flie, please see the source code.
Any files which contain data, unique to project harrrp, are subject to GPL v3.
Any general files which contain data, not unique to project harrrp, are subject to BSD0.
Any unmarked file is implied to be subject to either BSD0 or GPL v3, according to the statements above.