replaces namespace fenrir with fenrirscreenreader
This commit is contained in:
parent
40da178136
commit
a8a0f7cc29
21
src/fenrir
Executable file
21
src/fenrir
Executable file
@ -0,0 +1,21 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
import os, sys, inspect
|
||||||
|
fenrirPath = os.path.dirname(os.path.realpath(os.path.abspath(inspect.getfile(inspect.currentframe()))))
|
||||||
|
|
||||||
|
if not fenrirPath in sys.path:
|
||||||
|
sys.path.append(fenrirPath)
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import fenrirManager
|
||||||
|
|
||||||
|
def main():
|
||||||
|
app = fenrirManager.fenrirManager()
|
||||||
|
app.proceed()
|
||||||
|
del app
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
28
src/fenrir-daemon
Executable file
28
src/fenrir-daemon
Executable file
@ -0,0 +1,28 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
import os, sys, inspect
|
||||||
|
fenrirPath = os.path.dirname(os.path.realpath(os.path.abspath(inspect.getfile(inspect.currentframe()))))
|
||||||
|
|
||||||
|
if not fenrirPath in sys.path:
|
||||||
|
sys.path.append(fenrirPath)
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import fenrirManager
|
||||||
|
from daemonize import Daemonize
|
||||||
|
|
||||||
|
pidFile = "/run/fenrir.pid"
|
||||||
|
|
||||||
|
def main():
|
||||||
|
app = fenrirManager.fenrirManager()
|
||||||
|
app.proceed()
|
||||||
|
del app
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
# for debug in foreground
|
||||||
|
#daemon = Daemonize(app="fenrir-daemon", pid=pidFile, action=main, foreground=True,chdir=os.path.dirname(os.path.realpath(fenrirVersion.__file__)))
|
||||||
|
daemon = Daemonize(app="fenrir-daemon", pid=pidFile, action=main, chdir=fenrirPath)
|
||||||
|
daemon.start()
|
||||||
|
|
0
src/fenrirscreenreader/__init__.py
Executable file
0
src/fenrirscreenreader/__init__.py
Executable file
0
src/fenrirscreenreader/brailleDriver/__init__.py
Executable file
0
src/fenrirscreenreader/brailleDriver/__init__.py
Executable file
66
src/fenrirscreenreader/brailleDriver/brlapiDriver.py
Normal file
66
src/fenrirscreenreader/brailleDriver/brlapiDriver.py
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.core.brailleDriver import brailleDriver
|
||||||
|
|
||||||
|
class driver(brailleDriver):
|
||||||
|
def __init__(self):
|
||||||
|
brailleDriver.__init__(self)
|
||||||
|
self._brl = None
|
||||||
|
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
try:
|
||||||
|
import brlapi
|
||||||
|
self._brl = brlapi.Connection()
|
||||||
|
self._deviceSize = self._brl.displaySize
|
||||||
|
except Exception as e:
|
||||||
|
print(e)
|
||||||
|
self.env['runtime']['debug'].writeDebugOut(str(e),debug.debugLevel.ERROR)
|
||||||
|
return
|
||||||
|
self._isInitialized = True
|
||||||
|
|
||||||
|
def getDeviceSize(self):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return (0,0)
|
||||||
|
if not self._deviceSize:
|
||||||
|
return (0,0)
|
||||||
|
return self._deviceSize
|
||||||
|
|
||||||
|
def flush(self):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
try:
|
||||||
|
self._brl.writeText('',0)
|
||||||
|
except Exception as e:
|
||||||
|
self.env['runtime']['debug'].writeDebugOut('BRAILLE.flush '+str(e),debug.debugLevel.ERROR)
|
||||||
|
|
||||||
|
def writeText(self,text):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
try:
|
||||||
|
self._brl.writeText(text)
|
||||||
|
except Exception as e:
|
||||||
|
self.env['runtime']['debug'].writeDebugOut('BRAILLE.writeText '+str(e),debug.debugLevel.ERROR)
|
||||||
|
|
||||||
|
def connectDevice(self):
|
||||||
|
self._brl = brlapi.Connection()
|
||||||
|
|
||||||
|
def enterScreen(self, screen):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
self._brl.enterTtyMode(int(screen))
|
||||||
|
|
||||||
|
def leveScreen(self):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
self._brl.leaveTtyMode()
|
||||||
|
|
||||||
|
def shutdown(self):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
self.leveScreen()
|
49
src/fenrirscreenreader/brailleDriver/debugDriver.py
Normal file
49
src/fenrirscreenreader/brailleDriver/debugDriver.py
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.core.brailleDriver import brailleDriver
|
||||||
|
|
||||||
|
class driver(brailleDriver):
|
||||||
|
def __init__(self):
|
||||||
|
brailleDriver.__init__(self)
|
||||||
|
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
self._isInitialized = True
|
||||||
|
self.deviceSize = (40,0)
|
||||||
|
print('Braille Debug Driver: Initialized')
|
||||||
|
|
||||||
|
def getDeviceSize(self):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return (0,0)
|
||||||
|
print('Braille Debug Driver: getDeviceSize ' + str(self.deviceSize))
|
||||||
|
return self.deviceSize
|
||||||
|
|
||||||
|
def writeText(self,text):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
print('Braille Debug Driver: writeText:' + str(text))
|
||||||
|
print('Braille Debug Driver: -----------------------------------')
|
||||||
|
|
||||||
|
def connectDevice(self):
|
||||||
|
print('Braille Debug Driver: connectDevice')
|
||||||
|
|
||||||
|
def enterScreen(self, screen):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
print('Braille Debug Driver: enterScreen')
|
||||||
|
|
||||||
|
def leveScreen(self):
|
||||||
|
if not self._isInitialized:
|
||||||
|
return
|
||||||
|
print('Braille Debug Driver: leveScreen')
|
||||||
|
|
||||||
|
def shutdown(self):
|
||||||
|
if self._isInitialized:
|
||||||
|
self.leveScreen()
|
||||||
|
self._isInitialized = False
|
||||||
|
print('Braille Debug Driver: Shutdown')
|
12
src/fenrirscreenreader/brailleDriver/dummyDriver.py
Normal file
12
src/fenrirscreenreader/brailleDriver/dummyDriver.py
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.core.brailleDriver import brailleDriver
|
||||||
|
|
||||||
|
class driver(brailleDriver):
|
||||||
|
def __init__(self):
|
||||||
|
brailleDriver.__init__(self)
|
0
src/fenrirscreenreader/commands/__init__.py
Executable file
0
src/fenrirscreenreader/commands/__init__.py
Executable file
21
src/fenrirscreenreader/commands/command_template.py
Normal file
21
src/fenrirscreenreader/commands/command_template.py
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return 'No description found'
|
||||||
|
def run(self):
|
||||||
|
pass
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
26
src/fenrirscreenreader/commands/commands/00_init_commands.py
Normal file
26
src/fenrirscreenreader/commands/commands/00_init_commands.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
# this command is just to initialize stuff.
|
||||||
|
# like init index lists in memoryManager
|
||||||
|
# it is not useful to execute it
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
# clipboard
|
||||||
|
self.env['runtime']['memoryManager'].addIndexList('clipboardHistory', self.env['runtime']['settingsManager'].getSettingAsInt('general', 'numberOfClipboards'))
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return 'No description found'
|
||||||
|
def run(self):
|
||||||
|
pass
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
0
src/fenrirscreenreader/commands/commands/__init__.py
Executable file
0
src/fenrirscreenreader/commands/commands/__init__.py
Executable file
@ -0,0 +1,55 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
import string
|
||||||
|
initialized = False
|
||||||
|
try:
|
||||||
|
import enchant
|
||||||
|
initialized = True
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.language = ''
|
||||||
|
self.spellChecker = None
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
self.updateSpellLanguage()
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('adds the current word to the exceptions dictionary')
|
||||||
|
def updateSpellLanguage(self):
|
||||||
|
self.spellChecker = enchant.Dict(self.env['runtime']['settingsManager'].getSetting('general', 'spellCheckLanguage'))
|
||||||
|
self.language = self.env['runtime']['settingsManager'].getSetting('general', 'spellCheckLanguage')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not initialized:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('pyenchant is not installed'), interrupt=True)
|
||||||
|
return
|
||||||
|
if self.env['runtime']['settingsManager'].getSetting('general', 'spellCheckLanguage') != self.language:
|
||||||
|
try:
|
||||||
|
self.updateSpellLanguage()
|
||||||
|
except Exception as e:
|
||||||
|
return
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
# get the word
|
||||||
|
newContent = self.env['screen']['newContentText'].split('\n')[cursorPos['y']]
|
||||||
|
x, y, currWord, endOfScreen, lineBreak = word_utils.getCurrentWord(cursorPos['x'], 0, newContent)
|
||||||
|
currWord = currWord.strip(string.whitespace + '!"#$%&\()*+,-./:;<=§>?@[\\]^_{|}~')
|
||||||
|
|
||||||
|
if currWord != '':
|
||||||
|
if self.spellChecker.is_added(currWord):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('{0} is already in dict').format(currWord,), soundIcon='Cancel', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.spellChecker.add(currWord)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('{0} added').format(currWord,), soundIcon='Accept', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/attribute_cursor.py
Normal file
27
src/fenrirscreenreader/commands/commands/attribute_cursor.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import screen_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return 'No description found'
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
attributes = screen_utils.splitEvery(self.env['screen']['newContentAttrib'], self.env['screen']['columns'])
|
||||||
|
attributes = attributes[cursorPos['y']][cursorPos['x']]
|
||||||
|
attributeFormatString = self.env['runtime']['settingsManager'].getSetting('general', 'attributeFormatString')
|
||||||
|
attributeFormatString = self.env['runtime']['screenManager'].formatAttributes(attributes, attributeFormatString)
|
||||||
|
self.env['runtime']['outputManager'].presentText(attributeFormatString, soundIcon='', interrupt=True)
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_1.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_1.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '1'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_10.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_10.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '10'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_2.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_2.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '2'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_3.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_3.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '3'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_4.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_4.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '4'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_5.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_5.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '5'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_6.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_6.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '6'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_7.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_7.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '7'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_8.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_8.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '8'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
48
src/fenrirscreenreader/commands/commands/bookmark_9.py
Normal file
48
src/fenrirscreenreader/commands/commands/bookmark_9.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '9'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} not set').format(self.ID,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark for application {0} not set').format(currApp,), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# set marks
|
||||||
|
marked = ''
|
||||||
|
startMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'].copy()
|
||||||
|
if self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2']:
|
||||||
|
endMark = self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screen']['newContentText'])
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('blank'), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
21
src/fenrirscreenreader/commands/commands/braille_flush.py
Normal file
21
src/fenrirscreenreader/commands/commands/braille_flush.py
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('flush the braille device if a message is written on')
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['outputManager'].clearFlushTime()
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
21
src/fenrirscreenreader/commands/commands/braille_pan_left.py
Normal file
21
src/fenrirscreenreader/commands/commands/braille_pan_left.py
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('Move braille view to the left.')
|
||||||
|
def run(self):
|
||||||
|
panned = self.env['runtime']['outputManager'].setPanLeft()
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('Move braille view to the right.')
|
||||||
|
def run(self):
|
||||||
|
panned = self.env['runtime']['outputManager'].setPanRight()
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('Set the braille view back to cursor.')
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['outputManager'].removePanning()
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_1.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_1.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '1'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '10'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_2.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_2.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '2'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_3.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_3.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '3'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_4.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_4.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '4'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_5.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_5.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '5'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_6.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_6.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '6'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_7.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_7.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '7'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_8.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_8.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '8'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/clear_bookmark_9.py
Normal file
27
src/fenrirscreenreader/commands/commands/clear_bookmark_9.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '9'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('remove Bookmark {0}').format(self.ID,)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Bookmark {0} removed for application {1}').format(self.ID, currApp), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
24
src/fenrirscreenreader/commands/commands/clear_clipboard.py
Normal file
24
src/fenrirscreenreader/commands/commands/clear_clipboard.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('clears the currently selected clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['memoryManager'].clearCurrentIndexList('clipboardHistory')
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard cleared'), interrupt=True)
|
||||||
|
return
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('Turn off window mode for application')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['runtime']['cursorManager'].clearWindowForApplication():
|
||||||
|
currApp = self.env['runtime']['applicationManager'].getCurrentApplication()
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Window Mode off for application {0}').format(currApp,), interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("Not in window Mode"), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,26 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('copies last presented text to the clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
lastEcho = self.env['runtime']['outputManager'].getLastEcho()
|
||||||
|
self.env['runtime']['memoryManager'].addValueToFirstIndex('clipboardHistory', lastEcho)
|
||||||
|
self.env['runtime']['outputManager'].presentText(lastEcho, soundIcon='CopyToClipboard', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('copies marked text to the currently selected clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not self.env['commandBuffer']['Marks']['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("one or two marks needed"), interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['Marks']['2']:
|
||||||
|
self.env['runtime']['cursorManager'].setMark()
|
||||||
|
|
||||||
|
# use the last first and the last setted mark as range
|
||||||
|
startMark = self.env['commandBuffer']['Marks']['1'].copy()
|
||||||
|
endMark = self.env['commandBuffer']['Marks']['2'].copy()
|
||||||
|
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
self.env['runtime']['memoryManager'].addValueToFirstIndex('clipboardHistory', marked)
|
||||||
|
# reset marks
|
||||||
|
self.env['runtime']['cursorManager'].clearMarks()
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, soundIcon='CopyToClipboard', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
27
src/fenrirscreenreader/commands/commands/curr_clipboard.py
Normal file
27
src/fenrirscreenreader/commands/commands/curr_clipboard.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('speaks the contents of the currently selected clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
self.env['runtime']['outputManager'].presentText(clipboard , interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
26
src/fenrirscreenreader/commands/commands/curr_screen.py
Normal file
26
src/fenrirscreenreader/commands/commands/curr_screen.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('reads the contents of the current screen')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['screen']['newContentText'].isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("screen is empty"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(self.env['screen']['newContentText'],interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('reads from the cursor to the bottom of the screen')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
# Prefer review cursor over text cursor
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
|
||||||
|
textAfterCursor = mark_utils.getTextAfterMark(cursorPos, self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if textAfterCursor.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(textAfterCursor, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,36 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('Reads from the top of the screen to the cursor position')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
# Prefer review cursor over text cursor
|
||||||
|
if self.env['screen']['newCursorReview']:
|
||||||
|
cursorPos = self.env['screen']['newCursorReview'].copy()
|
||||||
|
else:
|
||||||
|
cursorPos = self.env['screen']['newCursor'].copy()
|
||||||
|
|
||||||
|
textBeforeCursor = mark_utils.getTextBeforeMark(cursorPos, self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if textBeforeCursor.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(textBeforeCursor, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
25
src/fenrirscreenreader/commands/commands/cursor_column.py
Normal file
25
src/fenrirscreenreader/commands/commands/cursor_column.py
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('presents the current column number for review cursor in review mode or the text cursor if not. Starts with 1')
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
self.env['runtime']['outputManager'].presentText(str(cursorPos['x'] + 1) , interrupt=True)
|
||||||
|
self.env['runtime']['outputManager'].announceActiveCursor()
|
||||||
|
self.env['runtime']['outputManager'].presentText(' column number' , interrupt=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
25
src/fenrirscreenreader/commands/commands/cursor_lineno.py
Normal file
25
src/fenrirscreenreader/commands/commands/cursor_lineno.py
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('presents the current line number for review cursor in review mode or the text cursor if not. Starts with 1')
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
self.env['runtime']['outputManager'].presentText(str(cursorPos['y'] + 1), interrupt=True)
|
||||||
|
self.env['runtime']['outputManager'].announceActiveCursor()
|
||||||
|
self.env['runtime']['outputManager'].presentText(' line number' , interrupt=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
26
src/fenrirscreenreader/commands/commands/cursor_position.py
Normal file
26
src/fenrirscreenreader/commands/commands/cursor_position.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('displays the position of the review cursor')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
# Prefer review cursor over text cursor
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("line {0}, column {1}").format(cursorPos['y']+1, cursorPos['x']+1), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('read to end of line, use review cursor if you are in review mode, otherwhise use text cursor')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
|
||||||
|
x, y, currLine = \
|
||||||
|
line_utils.getCurrentLine(cursorPos['x'], cursorPos['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if currLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(currLine[cursorPos['x']], interrupt=True)
|
||||||
|
self.env['runtime']['outputManager'].announceActiveCursor()
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
30
src/fenrirscreenreader/commands/commands/date.py
Normal file
30
src/fenrirscreenreader/commands/commands/date.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import datetime
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('presents the date')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
dateFormat = self.env['runtime']['settingsManager'].getSetting('general', 'dateFormat')
|
||||||
|
|
||||||
|
# get the time formatted
|
||||||
|
dateString = datetime.datetime.strftime(datetime.datetime.now(), dateFormat)
|
||||||
|
|
||||||
|
# present the time via speak and braile, there is no soundicon, interrupt the current speech
|
||||||
|
self.env['runtime']['outputManager'].presentText(dateString , soundIcon='', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
39
src/fenrirscreenreader/commands/commands/dec_alsa_volume.py
Normal file
39
src/fenrirscreenreader/commands/commands/dec_alsa_volume.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
initialized = False
|
||||||
|
try:
|
||||||
|
import alsaaudio
|
||||||
|
initialized = True
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _("Decrease system volume")
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not initialized:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('alsaaudio is not installed'), interrupt=True)
|
||||||
|
return
|
||||||
|
mixer = alsaaudio.Mixer()
|
||||||
|
value = mixer.getvolume()[0]
|
||||||
|
value = value - 5
|
||||||
|
if value < 5:
|
||||||
|
value = 5
|
||||||
|
mixer.setvolume(value)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent system volume").format(value), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
33
src/fenrirscreenreader/commands/commands/dec_sound_volume.py
Normal file
33
src/fenrirscreenreader/commands/commands/dec_sound_volume.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('decrease sound volume')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('sound', 'volume')
|
||||||
|
|
||||||
|
value = round((math.ceil(10 * value) / 10) - 0.1, 2)
|
||||||
|
if value < 0.1:
|
||||||
|
value = 0.1
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('sound', 'volume', str(value))
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent sound volume").format(int(value * 100)), soundIcon='SoundOff', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
29
src/fenrirscreenreader/commands/commands/dec_speech_pitch.py
Normal file
29
src/fenrirscreenreader/commands/commands/dec_speech_pitch.py
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('decreases the pitch of the speech')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('speech', 'pitch')
|
||||||
|
value = round((math.ceil(10 * value) / 10) - 0.1, 2)
|
||||||
|
if value < 0.0:
|
||||||
|
value = 0.0
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('speech', 'pitch', str(value))
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('{0} percent speech pitch').format(int(value * 100)), soundIcon='', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
30
src/fenrirscreenreader/commands/commands/dec_speech_rate.py
Normal file
30
src/fenrirscreenreader/commands/commands/dec_speech_rate.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('decreases the rate of the speech')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('speech', 'rate')
|
||||||
|
value = round((math.ceil(10 * value) / 10) - 0.1, 2)
|
||||||
|
if value < 0.0:
|
||||||
|
value = 0.0
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('speech', 'rate', str(value))
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent speech rate").format(int(value * 100)), soundIcon='', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('decreases the volume of the speech')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('speech', 'volume')
|
||||||
|
value = round((math.ceil(10 * value) / 10) - 0.1, 2)
|
||||||
|
if value < 0.1:
|
||||||
|
value = 0.1
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('speech', 'volume', str(value))
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent speech volume").format(int(value * 100)), soundIcon='', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
28
src/fenrirscreenreader/commands/commands/exit_review.py
Normal file
28
src/fenrirscreenreader/commands/commands/exit_review.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('exits review mode')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not self.env['runtime']['cursorManager'].isReviewMode():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("Not in review mode"), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
self.env['runtime']['cursorManager'].clearReviewCursor()
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("leave review mode"), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import os
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment, scriptPath=''):
|
||||||
|
self.env = environment
|
||||||
|
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('export the current fenrir clipboard to a file')
|
||||||
|
def run(self):
|
||||||
|
clipboardFilePath = self.env['runtime']['settingsManager'].getSetting('general', 'clipboardExportPath')
|
||||||
|
clipboardFilePath = clipboardFilePath.replace('$user',self.env['general']['currUser'])
|
||||||
|
clipboardFilePath = clipboardFilePath.replace('$USER',self.env['general']['currUser'])
|
||||||
|
clipboardFilePath = clipboardFilePath.replace('$User',self.env['general']['currUser'])
|
||||||
|
clipboardFile = open(clipboardFilePath,'w')
|
||||||
|
try:
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
clipboardFile.write(clipboard)
|
||||||
|
clipboardFile.close()
|
||||||
|
os.chmod(clipboardFilePath, 0o666)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard exported to file'), interrupt=True)
|
||||||
|
except Exception as e:
|
||||||
|
self.env['runtime']['debug'].writeDebugOut('export_clipboard_to_file:run: Filepath:'+ clipboardFile +' trace:' + str(e),debug.debugLevel.ERROR)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,50 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import subprocess, os
|
||||||
|
from subprocess import Popen, PIPE
|
||||||
|
import _thread
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment, scriptPath=''):
|
||||||
|
self.env = environment
|
||||||
|
self.scriptPath = scriptPath
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('export the current fenrir clipboard to X clipboard')
|
||||||
|
def run(self):
|
||||||
|
_thread.start_new_thread(self._threadRun , ())
|
||||||
|
|
||||||
|
def _threadRun(self):
|
||||||
|
try:
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
for display in range(10):
|
||||||
|
p = Popen('su ' + self.env['general']['currUser'] + ' -c "echo -n \\\"' + clipboard.replace('"','\\\\\\"') +'\\\" | xclip -d :' + str(display) + ' -selection c"' , stdout=PIPE, stderr=PIPE, shell=True)
|
||||||
|
stdout, stderr = p.communicate()
|
||||||
|
self.env['runtime']['outputManager'].interruptOutput()
|
||||||
|
#screenEncoding = self.env['runtime']['settingsManager'].getSetting('screen', 'encoding')
|
||||||
|
stderr = stderr.decode('utf-8')
|
||||||
|
stdout = stdout.decode('utf-8')
|
||||||
|
if (stderr == ''):
|
||||||
|
break
|
||||||
|
#stderr = stderr.decode(screenEncoding, "replace").encode('utf-8').decode('utf-8')
|
||||||
|
#stdout = stdout.decode(screenEncoding, "replace").encode('utf-8').decode('utf-8')
|
||||||
|
if stderr != '':
|
||||||
|
self.env['runtime']['outputManager'].presentText(stderr , soundIcon='', interrupt=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText('exported to the X session.', interrupt=True)
|
||||||
|
except Exception as e:
|
||||||
|
self.env['runtime']['outputManager'].presentText(e , soundIcon='', interrupt=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
28
src/fenrirscreenreader/commands/commands/first_clipboard.py
Normal file
28
src/fenrirscreenreader/commands/commands/first_clipboard.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('selects the first clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
self.env['runtime']['memoryManager'].setFirstIndex('clipboardHistory')
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
self.env['runtime']['outputManager'].presentText(clipboard, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
24
src/fenrirscreenreader/commands/commands/forward_keypress.py
Normal file
24
src/fenrirscreenreader/commands/commands/forward_keypress.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('sends the following keypress to the terminal')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['input']['keyForeward'] = 3
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Forward next keypress'), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
import os
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('imports text from clipboard file to the clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
clipboardFilePath = self.env['runtime']['settingsManager'].getSetting('general', 'clipboardExportPath')
|
||||||
|
clipboardFilePath = clipboardFilePath.replace('$user',self.env['general']['currUser'])
|
||||||
|
clipboardFilePath = clipboardFilePath.replace('$USER',self.env['general']['currUser'])
|
||||||
|
clipboardFilePath = clipboardFilePath.replace('$User',self.env['general']['currUser'])
|
||||||
|
if not os.path.exists(clipboardFilePath):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('File does not exist'), soundIcon='', interrupt=True)
|
||||||
|
return
|
||||||
|
clipboardFile = open(clipboardFilePath,'r')
|
||||||
|
imported = clipboardFile.read()
|
||||||
|
clipboardFile.close()
|
||||||
|
self.env['runtime']['memoryManager'].addValueToFirstIndex('clipboardHistory', imported)
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText('Import to Clipboard', soundIcon='CopyToClipboard', interrupt=True)
|
||||||
|
self.env['runtime']['outputManager'].presentText(imported, soundIcon='', interrupt=False)
|
||||||
|
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
39
src/fenrirscreenreader/commands/commands/inc_alsa_volume.py
Normal file
39
src/fenrirscreenreader/commands/commands/inc_alsa_volume.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
initialized = False
|
||||||
|
try:
|
||||||
|
import alsaaudio
|
||||||
|
initialized = True
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _("Increase system volume")
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not initialized:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('alsaaudio is not installed'), interrupt=True)
|
||||||
|
return
|
||||||
|
mixer = alsaaudio.Mixer()
|
||||||
|
value = mixer.getvolume()[0]
|
||||||
|
value = value + 5
|
||||||
|
if value > 100:
|
||||||
|
value = 100
|
||||||
|
mixer.setvolume(value)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent system volume").format(value), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
32
src/fenrirscreenreader/commands/commands/inc_sound_volume.py
Normal file
32
src/fenrirscreenreader/commands/commands/inc_sound_volume.py
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('adjusts the volume for in coming sounds')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('sound', 'volume')
|
||||||
|
|
||||||
|
value = round((math.ceil(10 * value) / 10) + 0.1, 2)
|
||||||
|
if value > 1.0:
|
||||||
|
value = 1.0
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('sound', 'volume', str(value))
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent sound volume").format(int(value * 100)), soundIcon='SoundOn', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
30
src/fenrirscreenreader/commands/commands/inc_speech_pitch.py
Normal file
30
src/fenrirscreenreader/commands/commands/inc_speech_pitch.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('increases the pitch of the speech')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('speech', 'pitch')
|
||||||
|
value = round((math.ceil(10 * value) / 10) + 0.1, 2)
|
||||||
|
if value > 1.0:
|
||||||
|
value = 1.0
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('speech', 'pitch', str(value))
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent speech pitch").format(int(value * 100)), soundIcon='', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
30
src/fenrirscreenreader/commands/commands/inc_speech_rate.py
Normal file
30
src/fenrirscreenreader/commands/commands/inc_speech_rate.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('increase the speech rate')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('speech', 'rate')
|
||||||
|
value = round((math.ceil(10 * value) / 10) + 0.1, 2)
|
||||||
|
if value > 1.0:
|
||||||
|
value = 1.0
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('speech', 'rate', str(value))
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent speech rate").format(int(value * 100)), soundIcon='', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import math
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('increase the speech volume')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
value = self.env['runtime']['settingsManager'].getSettingAsFloat('speech', 'volume')
|
||||||
|
value = round((math.ceil(10 * value) / 10) + 0.1, 2)
|
||||||
|
if value > 1.0:
|
||||||
|
value = 1.0
|
||||||
|
self.env['runtime']['settingsManager'].setSetting('speech', 'volume', str(value))
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("{0} percent speech volume").format(int(value * 100)), soundIcon='', interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
36
src/fenrirscreenreader/commands/commands/indent_curr_line.py
Normal file
36
src/fenrirscreenreader/commands/commands/indent_curr_line.py
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('shows the indention level for the current line')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
# Prefer review cursor over text cursor
|
||||||
|
|
||||||
|
if self.env['screen']['newCursorReview']:
|
||||||
|
cursorPos = self.env['screen']['newCursorReview'].copy()
|
||||||
|
else:
|
||||||
|
cursorPos = self.env['screen']['newCursor'].copy()
|
||||||
|
x, y, currLine = \
|
||||||
|
line_utils.getCurrentLine(cursorPos['x'], cursorPos['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if currLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("indent {0}").format(len(currLine) - len(currLine.lstrip())), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
28
src/fenrirscreenreader/commands/commands/last_clipboard.py
Normal file
28
src/fenrirscreenreader/commands/commands/last_clipboard.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('selects the last clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
self.env['runtime']['memoryManager'].setLastIndex('clipboardHistory')
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
self.env['runtime']['outputManager'].presentText(clipboard, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
23
src/fenrirscreenreader/commands/commands/last_incoming.py
Normal file
23
src/fenrirscreenreader/commands/commands/last_incoming.py
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('displays the last received text')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['outputManager'].presentText(self.env['screen']['newDelta'], interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
38
src/fenrirscreenreader/commands/commands/marked_text.py
Normal file
38
src/fenrirscreenreader/commands/commands/marked_text.py
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import mark_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('speaks the currently selected text that will be copied to the clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not (self.env['commandBuffer']['Marks']['1'] and \
|
||||||
|
self.env['commandBuffer']['Marks']['2']):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("please set begin and endmark"), interrupt=True)
|
||||||
|
return
|
||||||
|
|
||||||
|
# use the last first and the last setted mark as range
|
||||||
|
startMark = self.env['commandBuffer']['Marks']['1'].copy()
|
||||||
|
endMark = self.env['commandBuffer']['Marks']['2'].copy()
|
||||||
|
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if marked.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
36
src/fenrirscreenreader/commands/commands/next_clipboard.py
Normal file
36
src/fenrirscreenreader/commands/commands/next_clipboard.py
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('selects the next clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
self.env['runtime']['memoryManager'].getNextIndex('clipboardHistory')
|
||||||
|
isFirst = self.env['runtime']['memoryManager'].isFirstIndex('clipboardHistory')
|
||||||
|
isLast = self.env['runtime']['memoryManager'].isLastIndex('clipboardHistory')
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
if isFirst:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('First clipboard '), interrupt=True)
|
||||||
|
if isLast:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Last clipboard '), interrupt=True)
|
||||||
|
|
||||||
|
speechInterrupt = not(isLast or isFirst)
|
||||||
|
self.env['runtime']['outputManager'].presentText(clipboard, interrupt = speechInterrupt)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
30
src/fenrirscreenreader/commands/commands/paste_clipboard.py
Normal file
30
src/fenrirscreenreader/commands/commands/paste_clipboard.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
import time
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
self.env['runtime']['memoryManager'].addIndexList('clipboardHistory', self.env['runtime']['settingsManager'].getSettingAsInt('general', 'numberOfClipboards'))
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('pastes the text from the currently selected clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
self.env['runtime']['outputManager'].presentText('paste clipboard', soundIcon='PasteClipboardOnScreen', interrupt=True)
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
self.env['runtime']['screenManager'].injectTextToScreen(clipboard)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('present first line')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
x, y, firstLine = \
|
||||||
|
line_utils.getCurrentLine(0, 0, self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if firstLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(firstLine, interrupt=True)
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('current line')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
x, y, lastLine = \
|
||||||
|
line_utils.getCurrentLine(0, self.env['screen']['lines'] -1, self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if lastLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(lastLine, interrupt=True)
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
35
src/fenrirscreenreader/commands/commands/prev_clipboard.py
Normal file
35
src/fenrirscreenreader/commands/commands/prev_clipboard.py
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('selects the previous clipboard')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if self.env['runtime']['memoryManager'].isIndexListEmpty('clipboardHistory'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('clipboard empty'), interrupt=True)
|
||||||
|
return
|
||||||
|
self.env['runtime']['memoryManager'].setPrefIndex('clipboardHistory')
|
||||||
|
isFirst = self.env['runtime']['memoryManager'].isFirstIndex('clipboardHistory')
|
||||||
|
isLast = self.env['runtime']['memoryManager'].isLastIndex('clipboardHistory')
|
||||||
|
clipboard = self.env['runtime']['memoryManager'].getIndexListElement('clipboardHistory')
|
||||||
|
if isFirst:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('First clipboard '), interrupt=True)
|
||||||
|
if isLast:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Last clipboard '), interrupt=True)
|
||||||
|
speechInterrupt = not(isLast or isFirst)
|
||||||
|
self.env['runtime']['outputManager'].presentText(clipboard, interrupt = speechInterrupt)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
24
src/fenrirscreenreader/commands/commands/quit_fenrir.py
Normal file
24
src/fenrirscreenreader/commands/commands/quit_fenrir.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('exits Fenrir')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['eventManager'].stopMainEventLoop()
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
24
src/fenrirscreenreader/commands/commands/remove_marks.py
Normal file
24
src/fenrirscreenreader/commands/commands/remove_marks.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('removes marks from selected text')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].clearMarks()
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('Remove marks'), interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,55 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
import string
|
||||||
|
initialized = False
|
||||||
|
try:
|
||||||
|
import enchant
|
||||||
|
initialized = True
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.language = ''
|
||||||
|
self.spellChecker = None
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
self.updateSpellLanguage()
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('removes the current word from the exceptions dictionary')
|
||||||
|
def updateSpellLanguage(self):
|
||||||
|
self.spellChecker = enchant.Dict(self.env['runtime']['settingsManager'].getSetting('general', 'spellCheckLanguage'))
|
||||||
|
self.language = self.env['runtime']['settingsManager'].getSetting('general', 'spellCheckLanguage')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not initialized:
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('pyenchant is not installed'), interrupt=True)
|
||||||
|
return
|
||||||
|
if self.env['runtime']['settingsManager'].getSetting('general', 'spellCheckLanguage') != self.language:
|
||||||
|
try:
|
||||||
|
self.updateSpellLanguage()
|
||||||
|
except:
|
||||||
|
return
|
||||||
|
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
|
||||||
|
# get the word
|
||||||
|
newContent = self.env['screen']['newContentText'].split('\n')[cursorPos['y']]
|
||||||
|
x, y, currWord, endOfScreen, lineBreak = word_utils.getCurrentWord(cursorPos['x'], 0, newContent)
|
||||||
|
currWord = currWord.strip(string.whitespace + '!"#$%&\()*+,-./:;<=§>?@[\\]^_{|}~')
|
||||||
|
if not currWord.isspace():
|
||||||
|
if self.spellChecker.is_removed(currWord):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('{0} is already removed from dict').format(currWord,), soundIcon='Cancel', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.spellChecker.remove(currWord)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('{0} removed').format(currWord,), soundIcon='Accept', interrupt=True)
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
24
src/fenrirscreenreader/commands/commands/review_bottom.py
Normal file
24
src/fenrirscreenreader/commands/commands/review_bottom.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('move review to bottom of screen')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['screen']['newCursorReview'] = { 'x': 0, 'y':self.env['screen']['lines'] -1}
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("Bottom"), interrupt=True, flush=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
29
src/fenrirscreenreader/commands/commands/review_curr_char.py
Normal file
29
src/fenrirscreenreader/commands/commands/review_curr_char.py
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('presents the current character.')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currChar = \
|
||||||
|
char_utils.getCurrentChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar ,interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('set review and phonetically presents the current character')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currChar = \
|
||||||
|
char_utils.getCurrentChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if currChar.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
currChar = char_utils.getPhonetic(currChar)
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar ,interrupt=True, announceCapital=True, flush=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
32
src/fenrirscreenreader/commands/commands/review_curr_line.py
Normal file
32
src/fenrirscreenreader/commands/commands/review_curr_line.py
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('current line')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currLine = \
|
||||||
|
line_utils.getCurrentLine(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if currLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(currLine, interrupt=True, flush=False)
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
||||||
|
|
37
src/fenrirscreenreader/commands/commands/review_curr_word.py
Normal file
37
src/fenrirscreenreader/commands/commands/review_curr_word.py
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('current word.')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currWord, endOfScreen, lineBreak = \
|
||||||
|
word_utils.getCurrentWord(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if currWord.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(currWord, interrupt=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,41 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('phonetically spells the current word and set review to it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currWord, endOfScreen, lineBreak = \
|
||||||
|
word_utils.getCurrentWord(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if currWord.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
firstSequence = True
|
||||||
|
for c in currWord:
|
||||||
|
currChar = char_utils.getPhonetic(c)
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar, interrupt=firstSequence, announceCapital=True, flush=False)
|
||||||
|
firstSequence = False
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
29
src/fenrirscreenreader/commands/commands/review_down.py
Normal file
29
src/fenrirscreenreader/commands/commands/review_down.py
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('set review cursor to char below the current char and present it.')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], downChar, endOfScreen = \
|
||||||
|
char_utils.getDownChar(self.env['screen']['newCursorReview']['x'],self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
self.env['runtime']['outputManager'].presentText(downChar ,interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('set review cursor to begin of current line and display the content')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
self.env['runtime']['cursorManager'].setReviewCursorPosition(0 ,cursorPos['y'])
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currChar = \
|
||||||
|
char_utils.getCurrentChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if currChar.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar ,interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("beginning of line"), interrupt=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
30
src/fenrirscreenreader/commands/commands/review_line_end.py
Normal file
30
src/fenrirscreenreader/commands/commands/review_line_end.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('set review cursor to end of current line and display the content')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
self.env['runtime']['cursorManager'].setReviewCursorPosition(self.env['screen']['columns']-1 ,cursorPos['y'])
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currChar = \
|
||||||
|
char_utils.getCurrentChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar ,interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("end of line"), interrupt=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,36 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('set review cursor to end of current line and display the content')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
x, y, currLine = \
|
||||||
|
line_utils.getCurrentLine(cursorPos['x'], cursorPos['y'], self.env['screen']['newContentText'])
|
||||||
|
if currLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("line is empty"), interrupt=True)
|
||||||
|
return
|
||||||
|
self.env['runtime']['cursorManager'].setReviewCursorPosition((len(currLine) - len(currLine.lstrip())), cursorPos['y'])
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], currChar = \
|
||||||
|
char_utils.getCurrentChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar ,interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("first char in line indent {0}").format(str(len(currLine) - len(currLine.lstrip()))), interrupt=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('set review cursor to end of current line and display the content')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
cursorPos = self.env['runtime']['cursorManager'].getReviewOrTextCursor()
|
||||||
|
self.env['runtime']['cursorManager'].setReviewCursorPosition(self.env['screen']['columns']-1 ,cursorPos['y'])
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], lastChar = \
|
||||||
|
char_utils.getLastCharInLine(self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(lastChar ,interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("last char in line"), interrupt=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
33
src/fenrirscreenreader/commands/commands/review_next_char.py
Normal file
33
src/fenrirscreenreader/commands/commands/review_next_char.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('moves review to the next character and presents it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], nextChar, endOfScreen, lineBreak = \
|
||||||
|
char_utils.getNextChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(nextChar, interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('phonetically presents the next character and set review to it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], nextChar, endOfScreen, lineBreak = \
|
||||||
|
char_utils.getNextChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
nextChar = char_utils.getPhonetic(nextChar)
|
||||||
|
self.env['runtime']['outputManager'].presentText(nextChar ,interrupt=True, announceCapital=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
36
src/fenrirscreenreader/commands/commands/review_next_line.py
Normal file
36
src/fenrirscreenreader/commands/commands/review_next_line.py
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('moves review to the next line and presents it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['screen']['oldCursorReview'] = self.env['screen']['newCursorReview']
|
||||||
|
if not self.env['screen']['newCursorReview']:
|
||||||
|
self.env['screen']['newCursorReview'] = self.env['screen']['newCursor'].copy()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], nextLine, endOfScreen = \
|
||||||
|
line_utils.getNextLine(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if nextLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(nextLine, interrupt=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
39
src/fenrirscreenreader/commands/commands/review_next_word.py
Normal file
39
src/fenrirscreenreader/commands/commands/review_next_word.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('moves review to the next word and presents it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['screen']['oldCursorReview'] = self.env['screen']['newCursorReview']
|
||||||
|
if self.env['screen']['newCursorReview'] == None:
|
||||||
|
self.env['screen']['newCursorReview'] = self.env['screen']['newCursor'].copy()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], nextWord, endOfScreen, lineBreak = \
|
||||||
|
word_utils.getNextWord(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if nextWord.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(nextWord, interrupt=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,41 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('phonetically spells the current word and set review to it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], nextWord, endOfScreen, lineBreak = \
|
||||||
|
word_utils.getNextWord(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if nextWord.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
firstSequence = True
|
||||||
|
for c in nextWord:
|
||||||
|
currChar = char_utils.getPhonetic(c)
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar, interrupt=firstSequence, announceCapital=True, flush=False)
|
||||||
|
firstSequence = False
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
36
src/fenrirscreenreader/commands/commands/review_prev_char.py
Normal file
36
src/fenrirscreenreader/commands/commands/review_prev_char.py
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('moves review to the previous character and presents it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['screen']['oldCursorReview'] = self.env['screen']['newCursorReview']
|
||||||
|
if not self.env['screen']['newCursorReview']:
|
||||||
|
self.env['screen']['newCursorReview'] = self.env['screen']['newCursor'].copy()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], prevChar, endOfScreen, lineBreak = \
|
||||||
|
char_utils.getPrevChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText(prevChar, interrupt=True, ignorePunctuation=True, announceCapital=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('phonetically presents the previous character and set review to it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], prevChar, endOfScreen, lineBreak = \
|
||||||
|
char_utils.getPrevChar(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
prevChar = char_utils.getPhonetic(prevChar)
|
||||||
|
self.env['runtime']['outputManager'].presentText(prevChar ,interrupt=True, announceCapital=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
35
src/fenrirscreenreader/commands/commands/review_prev_line.py
Normal file
35
src/fenrirscreenreader/commands/commands/review_prev_line.py
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import line_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('moves review to the previous line and presents it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], prevLine, endOfScreen = \
|
||||||
|
line_utils.getPrevLine(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if prevLine.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), soundIcon='EmptyLine', interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(prevLine, interrupt=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
37
src/fenrirscreenreader/commands/commands/review_prev_word.py
Normal file
37
src/fenrirscreenreader/commands/commands/review_prev_word.py
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('moves review focus to the previous word and presents it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], prevWord, endOfScreen, lineBreak = \
|
||||||
|
word_utils.getPrevWord(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if prevWord.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(prevWord, interrupt=True, flush=False)
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=False, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -0,0 +1,41 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import word_utils
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('phonetically spells the current word and set review to it')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['runtime']['cursorManager'].enterReviewModeCurrTextCursor()
|
||||||
|
self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], prevWord, endOfScreen, lineBreak = \
|
||||||
|
word_utils.getPrevWord(self.env['screen']['newCursorReview']['x'], self.env['screen']['newCursorReview']['y'], self.env['screen']['newContentText'])
|
||||||
|
|
||||||
|
if prevWord.isspace():
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("blank"), interrupt=True, flush=False)
|
||||||
|
else:
|
||||||
|
firstSequence = True
|
||||||
|
for c in prevWord:
|
||||||
|
currChar = char_utils.getPhonetic(c)
|
||||||
|
self.env['runtime']['outputManager'].presentText(currChar, interrupt=firstSequence, announceCapital=True, flush=False)
|
||||||
|
firstSequence = False
|
||||||
|
if endOfScreen:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'endOfScreen'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('end of screen'), interrupt=True, soundIcon='EndOfScreen')
|
||||||
|
if lineBreak:
|
||||||
|
if self.env['runtime']['settingsManager'].getSettingAsBool('review', 'lineBreak'):
|
||||||
|
self.env['runtime']['outputManager'].presentText(_('line break'), interrupt=False, soundIcon='EndOfLine')
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
25
src/fenrirscreenreader/commands/commands/review_top.py
Normal file
25
src/fenrirscreenreader/commands/commands/review_top.py
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from fenrirscreenreader.core import debug
|
||||||
|
from fenrirscreenreader.utils import char_utils
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
pass
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return _('move review to top of screen')
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.env['screen']['newCursorReview'] = {'x':0,'y':0}
|
||||||
|
self.env['runtime']['outputManager'].presentText(_("Top"), interrupt=True, flush=False)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user