fenrir/TODO v2.0

86 lines
3.1 KiB
Plaintext

ToDo list for Fenrir Version 2.0
General:
- implement onScreenUpdate commands
read highlighted text mode
- translateable (easy for contribute)
http://www.supernifty.org/blog/2011/09/16/python-localization-made-easy/
- be more event based (vcsa sets POLLPRI)
http://scotdoyle.com/python-epoll-howto.html
- try to make it more asynchronus
- multpible threads
- leave revew on typing
- implement commands
attributes_curr_char
generic list command (convert clipboard management) (easy for contribute)
next item
pref item
curr item
first item
last item
Braille Support:
virtual buffer area for scroll left/right if the line is to long for device
make cursor following configurable
brailleFocusMode:
- manual = no automatic toggle command used
- review = priority to review
- last = follow last used cursor
- text = jumps to textcursor when typing, needs command to be back to review
print cursor in review
print cursor in textmode
command for scroll left
command for scroll right
capture input from braile
make routing keys assignable in keyboard
make brailleTable configurable
http://mielke.cc/brltty/doc/Manual-BrlAPI/English/BrlAPI.html
https://git.gnome.org/browse/orca/tree/src/orca/braille.py
https://wiki.gnome.org/Attic/LSR/ScratchPad/Braille/BrlAPI
https://github.com/google/brailleback/blob/master/third_party/brltty/Bindings/Python/brlapi.pyx
Driver:
- implement PTY Screen driver (to use gnome-terminal and other terminal emulators)
https://docs.python.org/3.2/library/pty.html
- implement PTY Input driver
- ATK input driver (dont grab on graphical interface)
- implement speechdriver generic
- implement autodetection of plugged and removed input devices (python-pyudev) for evdev driver
http://askubuntu.com/questions/508236/how-can-i-run-code-whenever-a-usb-device-is-unplugged-without-requiring-root
- try to autodetect encoding
https://stackoverflow.com/questions/6396659/how-do-you-get-the-encoding-of-the-terminal-from-within-a-python-script
Settings:
- configuration should be overwriteable with parameter and alternative paths
- write settings
- menue for settings configuration #storm
Application Profiles
- reimplement process detection without subprocessing
- reuse new porcess detection code for X11 detection
- fenrir is not able to detect the current application inside of screen.
ps -e -H -o pid,pgrp,ppid,tty,cmd
http://stackoverflow.com/questions/24861351/how-to-detect-if-python-script-is-being-run-as-a-background-process/24862213
fd = os.open("/dev/tty5", os.O_RDONLY )
os.tcgetpgrp(fd)
- add perApplicationTrigger trigger
per application commands
per application onScreenChange
per application onInput
- per application shortcuts
-----------DONE----------------
- Add nice dummy drivers as template or for debugging
Braille Support:
initial BrlTTY driver
detect device size via driver
output to braille device
make flushMode configurable
make flushTimeout configurable
flush message after X seconds and show current line (review over text)
tweak current commands and output
command flush_braille
follow cursor while typing