https://github.com/lukoshkin/memo
Under development
https://github.com/lukoshkin/memo
memoization passive-learning vocabulary-learning
Last synced: 3 months ago
JSON representation
Under development
- Host: GitHub
- URL: https://github.com/lukoshkin/memo
- Owner: lukoshkin
- License: mit
- Created: 2021-06-26T10:06:45.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-07-21T08:43:59.000Z (about 4 years ago)
- Last Synced: 2025-05-17T00:36:45.862Z (5 months ago)
- Topics: memoization, passive-learning, vocabulary-learning
- Language: Python
- Homepage:
- Size: 23.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Memo
`memo` is a small python+shell project aimed at _passive and delicate_ expansion
of the user's vocabulary. It harnesses `notify-send` to show \
pairs on the screen, a `systemd` unit - to start the program on boot, and `anacron` - to regularly
auto-update the vocabulary from a public collection on translate.yandex.ru.[Яндекс Переводчик](translate.yandex.ru) allows one to collect favorite translations,
amend them, and, most important, make them public, thus, available for automated download.## Installation
1. Clone the repository
```git clone https://github.com/lukoshkin/memo.git```
1. Cd to the project folder and run the installation script
```./install.sh ```,
where as the only argument one specifies the **path to their vocabulary**
or **the public collection id** on translate.yandex.ru---
For full functioning (namely, to stop showing word pairs when the user is idle),
it needs `xprintidle` installed. On Ubuntu, one can install it with```
sudo apt update && sudo apt install xprintidle
```## Removal
```
sudo systemctl disable memo.service
sudo sed -i '/update-dict.memo/d' /etc/anacrontab
```## Troubleshooting
* For some laptops, it is not enough to export just `DISPLAY` variable in the
systemd unit file, and `DBUS_SESSION_BUS_ADDRESS` is also required. In this case,
one pastes their value of the latter variable
(check it with `echo
$DBUS_SESSION_BUS_ADDRESS`) in the generated after execution of `install.sh`
script `memo.service` file, on the same line as the former variable, separating
them with a space.For example,
```
Environment="DISPLAY=:0" "DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus"
```* Due to an unknown bug in `notify-send`, the next notification after
the user becomes inactive hangs. That does not prevent the program from operating.
That is, after they click or press a key, it will show all the notifications
it was going to but could not. A remedy option suitable only to a few laptops
would be making the opposite to the point above. In other words,
_if the aforementioned problem is not a problem, then it is the remedy._