Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dpriskorn/lexeme-combinator

Simple CLI-tool to combine lexemes easily on Wikidata
https://github.com/dpriskorn/lexeme-combinator

python3 text-user-interface wikidata wikidata-lexemes

Last synced: 5 days ago
JSON representation

Simple CLI-tool to combine lexemes easily on Wikidata

Awesome Lists containing this project

README

        

# Lexeme combinator
**Note: There is an ongoing discussion about whether adding sense, form and syntactic dependency
is also needed for a tool like this**

Simple CLI-tool to combine lexemes easily on Wikidata
![image](https://user-images.githubusercontent.com/68460690/220359748-8a8bbf67-6516-4adc-9414-7957e05b7ac7.png)

# Requirements
python = ">=3.10,<3.13"

On systems with a lower python version than 3.10, try updating your python installation first.

# Installation
Clone the git repo:

`$ git clone https://github.com/dpriskorn/lexeme-combinator.git && cd lexeme-combinator`

## Setup
We use pip and poetry to set everything up.

`$ pip install poetry && poetry install`

## Configuration
Copy config.py.sample -> config.py

`$ cp config.py.sample config.py`

[Generate a botpassword](https://wikicitations.wiki.opencura.com/w/index.php?title=Special:UserLogin&returnto=Special%3ABotPasswords&returntoquery=&force=BotPasswords)

Then enter your botpassword credentials in config.py using any text editor. E.g. user_name: "test" and bot_password: "q62noap7251t8o3nwgqov0c0h8gvqt20"

# Use
Run:

`poetry run python main.py`

This will promp you for each lexeme where 2 parts was successfully found.

It defaults to fetching 10 lexemes with a minimum length from the working language specified in the config.py. It has been tested with Danish and Swedish

# Thanks
Big thanks to Nikki and Mahir for helping
with the SPARQL query that makes this possible and Finn Nielsen and Jan Ainali for feedback on the program and documentation.

# License
GPLv3+