fenrir/TODO v2.0
2017-10-26 01:08:34 +02:00

115 lines
3.9 KiB
Plaintext

ToDo list for Fenrir Version 2.0
Things needing little knowledge are marked with "(Easy for contribution)". so just start with those :).
[] = ToDo
[W] = WIP
[X] = Done
Cleanups:
- generic list or see Tutorial mode list (convert clipboard management) (Easy for contribution)
[] next item
[] prev item
[] curr item
[] first item
[] last item
- split oldValues := newValues out to helper function
[] split it out
[] use it in vcsa driver
- Migrate *Data.py to classes and use getter/setter (Easy for contribution)
[] commandsData.py
[] eventData.py
[] generalData.py
[] inputData.py
[] outputData.py
[] punctuationData.py
[] runtimeData.py
[] screenData.py
[] settingsData -> defaultSettings.py
General:
- imporove attribute handling
[] improve attributes_curr_char
[] add an attribute sound (Easy for contribution)
[] beep on cursor/ review by char (capital wins)
[] beep on review by word (once for multiple, capital wins)
[] configurable (by char, by word, none)
https://github.com/jwilk/vcsapeek/blob/master/linuxvt.py
- Improved Say all
[] speech callbacks
[] speech process by word
[] all the text of all pages
[] command to stop and place review cursor at this position
[] command to slow down speech on keypress
- make it runnable via pypy3
[] wrapper script for running Fenrir to check if pypy exists, use python3 as fallback.
- table review mode
[] toggle table mode
[] next cell
[] prev cell
[] current cell
[] select field separator
Braille Support:
[] brailleFocusMode:
[] manual = no automatic toggle command used
[] last = follow last used cursor
[] print cursor in review
[] print cursor in textmode
[] word wrapping (if word does not fit print it at next page)
[] command toggle used cursor (in manual brailleFocusMode)
[] capture input from braile
[] make routing keys assignable by keyboard
[] make brailleTable configurable
[] pkg-config --variable=tablesdir liblouis
returns on Arch:/usr/share/liblouis/tables
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:
[W] PTY Screen driver (to use gnome-terminal and other terminal emulators)
https://docs.python.org/3.2/library/pty.html
http://sqizit.bartletts.id.au/2011/02/14/pseudo-terminals-in-python/
https://blog.konpat.me/pythons-pseudo-terminal-pty-examples/
[] talkey driver
[W] emacspeak driver
[W] PTY Input driver
[] ATK input driver (don't grab on graphical interface)
https://git.linux-a11y.org/AIT/pyatspi2/src/master/examples/keypress.py
[] Dectalk SpeechDriver (Easy for contribution, device needed - i dont own one)
https://github.com/tvraman/emacspeak/blob/master/servers/obsolete/python/dectalk.py
Settings:
[] write settings (Easy for contribution)
[] menue for settings configuration (Easy for contribution)
Application Profiles (low priority):
- reimplement process detection without subprocessing
- 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----------------
Cleanups:
- inheritation for drivers
[Done] Speech (All)
[Done] Braille (All)
[Done] Sound (All)
[Done] Input (All)
[Done] Screen (All)
General:
- commands
[DONE] place last spoken to clipboard (Easy for contribution)
Braille Support:
Driver:
[Done] pyttsx3 speech driver
Settings:
Application Profiles: