Skip to main content

A simple, effective sentence mining tool.

Project description

VocabSieve - a simple sentence mining tool

https://ci.appveyor.com/api/projects/status/32r7s2skrgm9ubva?svg=true https://img.shields.io/pypi/v/vocabsieve.svg Downloads

Join our chat on Matrix or Telegram

VocabSieve (formerly Simple Sentence Mining, ssmtool) is a program for sentence mining, in which sentences with target vocabulary words are collected and added into a spaced repetition system (SRS, e.g. Anki) for language learning.

Demo

Features

  • Quick word lookups: Getting definition, pronunciation, and frequency within one or two keypresses/clicks
  • Wide language support: supports all languages listed on Google Translate, though it is currently optimized for European languages
  • Lemmatization: automatically remove inflections to enhance dictionary experience (books -> book, ran -> run)
  • Local first: No internet is required if you use downloaded resources
  • Sane defaults: Little configuration is needed other than settings for Anki. It comes with two dictionary sources by default for most languages and one pronunciation source that should cover most needs.
  • Local resource support: Dictionaries in StarDict, Migaku, plain JSON, MDX, Lingvo (.dsl), CSV; frequency lists; and audio libraries
  • Web reader: Read epub and fb2 books or plain articles with one-click word lookups and Anki export.
  • eReader integration: Batch-import KOReader and Kindle highlights to Anki sentence cards

Tutorials

Wiki page (The text originally on this document or the blog post has since been moved there, with some updates)

New video tutorial

Windows and Mac users: If you want to install this program, go to Releases and from the latest release, download the appropriate file for your operating system.

Linux distro packages

Packaging status

Gentoo

First, you need to add the ::guru overlay. Skip this section if you already had done so.

# eselect repository enable guru
# emaint -r guru sync

Install the package: # emerge -av app-misc/vocabsieve

Arch

Use your favorite AUR helper (or manually) to install the pacakge vocabsieve

Other distros

At this time, there are no packages for other distributions. If you are able to create packages for them, please tell me!

In the meantime, users should simply use pip3 to install VocabSieve: pip3 install --user vocabsieve.

This should install an executable and a desktop icon and behave like any other GUI application you may have.

Development

To run from source, simply use pip3 -r requirements.txt and then python3 vocabsieve.py.

Alternatively, you can also install a live version to your python package library with pip3 install . (Add --user if there is a permission error)

For debugging purposes, set the environmental variable VOCABSIEVE_DEBUG to any value. This will create a separate profile (settings and databases for records and dictionaries) so you may perform tests without affecting your normal profile. For each different value of VOCABSIEVE_DEBUG, a separate profile is generated. This can be any number or string.

Note that VocabSieve is unable to delete old profiles. You must do so yourself based on your operating system's locations.

Pull requests are welcome! If you want to implement a significant feature, be sure to first ask by creating an issue so that no effort is wasting on doing the same work twice.

API documentation

If you want to leverage VocabSieve to build your own plugins/apps, you can refer to the API Documentation

Note that VocabSieve is still alpha software. API is not guaranteed to be stable at this point.

Feedback

You are welcome to report bugs, suggest features/enhancements, or ask for clarifications by opening a GitHub issue.

Donations

Send me some Monero to support this work!

XMR Address: 89AZiqM7LD66XE9s5G7iBu4CU3i6qUu2ieCq4g3JKacn7e1xKuwe2tvWApLFvhaMR47kwNzjC4B5VL3N32MCokE2U9tGXzX

Monero is a private, censorship-resistant cryptocurrency. Transactions are anonymous and essentially impossible to track by authorities or third-party analytics companies.

Learn more about Monero

If you do not have any Monero, a good way to get it is through ChangeNow or SimpleSwap.

Credits

The definitions provided by the program by default come from English Wiktionary, without which this program would never have been created.

App icon is made from icons by Freepik available on Flaticon.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vocabsieve-0.8.1.tar.gz (183.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vocabsieve-0.8.1-py3-none-any.whl (190.7 kB view details)

Uploaded Python 3

File details

Details for the file vocabsieve-0.8.1.tar.gz.

File metadata

  • Download URL: vocabsieve-0.8.1.tar.gz
  • Upload date:
  • Size: 183.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for vocabsieve-0.8.1.tar.gz
Algorithm Hash digest
SHA256 d6cf04d371e1b303af45b87bca3118afa084a8552ac0562fae1b7db60faa0bd7
MD5 636d97507ebf5594411e890a690caf0d
BLAKE2b-256 0b0d754a76067bc4f9fa9cd2def9d183b2416c0a4c30b28a2beaa2c26fd4e84b

See more details on using hashes here.

File details

Details for the file vocabsieve-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: vocabsieve-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 190.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for vocabsieve-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9dcac9bff32c8318944e7659c056cf00d9db440afcadcde47bf446d8b02ea5c6
MD5 583826614a5e3b4cbcdd456160d9645f
BLAKE2b-256 268f0d43d3142863d00d5d76d901af1e941d4f895d8e8c72e89e478ee7c560d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page