Metadata-Version: 2.1
Name: morseall
Version: 0.6.0
Summary: Control your computer using morse code with mouse buttons
Home-page: http://pehr.net/morseall
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE


    Copyright (C) 2000-2026  Pehr Anderson
    License:  GNU GPL Version 2 or newer

Morseall is a Morse Code User Interface for Linux
It allows controlling the keyboard and mouse movments with a single mouse button.
If you use two or three mouse buttons, you type faster.


Try out the web version at https://pehr.net/morseall
There is a link to the .deb for desktop installation.

To build a tarball and Debian .deb package on Ubuntu 24.04:

    sudo apt install debhelper python3-gi festival gir1.2-gsound-1.0 python3-evdev python3-uinput
    sudo apt install gir1.2-vte-2.91 
    ./make-deb
    ./test-deb


TODO - 2026-05-27

We have a working .deb and a Javascript version for people to try out on the web.
The next steps are to look at building .debs for other recent releases.
It works on Wayland.

Priorities:
1. Ubuntu 26.04
2. Debian Stable
3. Debian Testing


TODO - 2025-05-05

Investigate modern ways to insert fake keyboard events in the the Ubuntu Gui
My current fakeX code isn't working and I don't know why.
WAYLAND may be the answer.
The new evdev library allows fake key and mouse events on both Wayland and X.
https://www.kernel.org/doc/html/v4.12/input/uinput.html

The python3-evdev package requires the user to be a member of the "input" group.

    sudo usermod -a -G input $USER
    # load the changes in /etc/udev/rules.d/
    sudo udevadm control --reload
    # trigger the new rules without rebooting
    sudo udevadm trigger
    ls -l /dev/uinput

To activate this group, logging out is not sufficient. Rebooting should force this to work.

To see a flood of device events, run evdev.evtest by hand:
    python3 -m evdev.evtest


TODO - 2010-08-21

1. Help paging -
	Help should only show key codes that are enabled for the current mode
2. Controlling the Mouse
	Mouse button events are not captured when the mouse is outside the morseall window.
	Mouse movements events are not causing mouse movements.
	Mouse button events are not causing mouse button clicks.
	when morseall-py constrains the mouse, only
3. Other keys -
	Arrow keys are not generating the required effects
4. Record new audio: * - optional
	sound
	sound_enabled *
	sound_disabled *
	
2011-01-23 Lots left to do...
1. Import glade template for the display of widgets
2. Debug why grab-on-startup is not working
3. Mouse - find some way to control mouse movements again
	This seems to be 100% broken
4. Debug characters that dont' work:
	KB-LEFT, ascitilde, etc. 
