add initial set/read/clear bookmark commands
This commit is contained in:
parent
ac6e11537c
commit
a037dde714
@ -21,6 +21,9 @@ KEY_FENRIR,KEY_KPDOT=exit_review
|
|||||||
KEY_FENRIR,KEY_KP5=curr_screen
|
KEY_FENRIR,KEY_KP5=curr_screen
|
||||||
KEY_FENRIR,KEY_KP8=curr_screen_before_cursor
|
KEY_FENRIR,KEY_KP8=curr_screen_before_cursor
|
||||||
KEY_FENRIR,KEY_KP2=curr_screen_after_cursor
|
KEY_FENRIR,KEY_KP2=curr_screen_after_cursor
|
||||||
|
#=clear_bookmark_1
|
||||||
|
#=set_bookmark_1
|
||||||
|
#=bookmark_1
|
||||||
KEY_KPPLUS=last_incomming
|
KEY_KPPLUS=last_incomming
|
||||||
KEY_FENRIR,KEY_F2=toggle_braille
|
KEY_FENRIR,KEY_F2=toggle_braille
|
||||||
KEY_FENRIR,KEY_F3=toggle_sound
|
KEY_FENRIR,KEY_F3=toggle_sound
|
||||||
|
@ -20,6 +20,9 @@ KEY_FENRIR,KEY_SHIFT,KEY_DOT=cursor_position
|
|||||||
KEY_FENRIR,KEY_SHIFT,KEY_K=curr_screen
|
KEY_FENRIR,KEY_SHIFT,KEY_K=curr_screen
|
||||||
KEY_FENRIR,KEY_SHIFT,KEY_I=curr_screen_before_cursor
|
KEY_FENRIR,KEY_SHIFT,KEY_I=curr_screen_before_cursor
|
||||||
KEY_FENRIR,KEY_SHIFT,KEY_COMMA=curr_screen_after_cursor
|
KEY_FENRIR,KEY_SHIFT,KEY_COMMA=curr_screen_after_cursor
|
||||||
|
#=clear_bookmark_1
|
||||||
|
#=set_bookmark_1
|
||||||
|
#=bookmark_1
|
||||||
2,KEY_FENRIR,KEY_I=indent_curr_line
|
2,KEY_FENRIR,KEY_I=indent_curr_line
|
||||||
KEY_FENRIR,KEY_SEMICOLON=last_incomming
|
KEY_FENRIR,KEY_SEMICOLON=last_incomming
|
||||||
KEY_FENRIR,KEY_F2=toggle_braille
|
KEY_FENRIR,KEY_F2=toggle_braille
|
||||||
|
@ -1,58 +1,60 @@
|
|||||||
#=toggle_tutorial_mode
|
KEY_FENRIR,KEY_H=toggle_tutorial_mode
|
||||||
1-KEY_LEFTCTRL=shut_up
|
KEY_CTRL=shut_up
|
||||||
1-FENRIR,1-KEY_RIGHTCTRL=shut_up
|
KEY_FENRIR,KEY_KP9=review_bottom
|
||||||
1-FENRIR,1-KEY_KPENTER=review_bottom
|
KEY_FENRIR,KEY_KP7=review_top
|
||||||
1-FENRIR,1-KEY_KPPLUS=review_top
|
KEY_KP8=review_curr_line
|
||||||
1-FENRIR,1-KEY_KP8=review_curr_line
|
KEY_KP7=review_prev_line
|
||||||
1-FENRIR,1-KEY_KP7=review_prev_line
|
KEY_KP9=review_next_line
|
||||||
1-FENRIR,1-KEY_KP9=review_next_line
|
|
||||||
#=present_first_line
|
#=present_first_line
|
||||||
#=present_last_line
|
#=present_last_line
|
||||||
1-FENRIR,1-KEY_KP5=review_curr_word
|
KEY_KP5=review_curr_word
|
||||||
1-FENRIR,1-KEY_KP4=review_prev_word
|
KEY_KP4=review_prev_word
|
||||||
1-FENRIR,1-KEY_KP6=review_next_word
|
KEY_KP6=review_next_word
|
||||||
1-FENRIR,1-KEY_B=curr_word_phonetic
|
2,KEY_KP5=curr_word_phonetic
|
||||||
1-FENRIR,1-KEY_KP2=review_curr_char
|
KEY_KP2=review_curr_char
|
||||||
1-FENRIR,1-KEY_KP1=review_prev_char
|
KEY_KP1=review_prev_char
|
||||||
1-FENRIR,1-KEY_KP3=review_next_char
|
KEY_KP3=review_next_char
|
||||||
1-FENRIR,1-KEY_W=curr_char_phonetic
|
2,KEY_KP2=curr_char_phonetic
|
||||||
1-FENRIR,1-KEY_KPDOT=exit_review
|
KEY_KPDOT=cursor_position
|
||||||
1-FENRIR,1-KEY_J=cursor_position
|
KEY_FENRIR,KEY_I=indent_curr_line
|
||||||
1-FENRIR,1-KEY_U=curr_screen
|
KEY_FENRIR,KEY_KPDOT=exit_review
|
||||||
1-FENRIR,1-KEY_I=curr_screen_before_cursor
|
KEY_FENRIR,KEY_KP5=curr_screen
|
||||||
1-FENRIR,1-KEY_O=curr_screen_after_cursor
|
KEY_FENRIR,KEY_KP8=curr_screen_before_cursor
|
||||||
1-FENRIR,1-KEY_P=indent_curr_line
|
KEY_FENRIR,KEY_KP2=curr_screen_after_cursor
|
||||||
#=last_incomming
|
KEY_FENRIR,KEY_3=clear_bookmark_1
|
||||||
1-FENRIR,1-KEY_F2=toggle_braille
|
KEY_FENRIR,KEY_1=set_bookmark_1
|
||||||
#1-FENRIR,1-KEY_F3=toggle_sound
|
KEY_FENRIR,KEY_2=bookmark_1
|
||||||
1-FENRIR,1-KEY_F4=toggle_speech
|
KEY_KPPLUS=last_incomming
|
||||||
1-FENRIR,1-KEY_M=toggle_auto_spell_check
|
KEY_FENRIR,KEY_F2=toggle_braille
|
||||||
#=toggle_output
|
KEY_FENRIR,KEY_F3=toggle_sound
|
||||||
#=toggle_auto_read
|
KEY_FENRIR,KEY_F4=toggle_speech
|
||||||
#=quit_fenrir
|
KEY_FENRIR,KEY_RIGHTBRACE=toggle_auto_spell_check
|
||||||
1-FENRIR,1-KEY_T=time
|
KEY_FENRIR,KEY_BACKSLASH=toggle_output
|
||||||
1-FENRIR,1-KEY_R=date
|
key_FENRIR,KEY_KPENTER=toggle_auto_read
|
||||||
1-FENRIR,1-KEY_M=spell_check
|
KEY_FENRIR,KEY_Q=quit_fenrir
|
||||||
1-FENRIR,1-KEY_G=add_word_to_spell_check
|
KEY_FENRIR,KEY_T=time
|
||||||
#=remove_word_from_spell_check
|
2,KEY_FENRIR,KEY_T=date
|
||||||
1-FENRIR,1-KEY_A=foreward_keypress
|
KEY_FENRIR,KEY_S=spell_check
|
||||||
#1-FENRIR,1-KEY_F2=inc_speech_volume
|
2,KEY_FENRIR,KEY_S=add_word_to_spell_check
|
||||||
#1-FENRIR,1-KEY_F3=dec_sound_volume
|
KEY_FENRIR,KEY_SHIFT,KEY_S=remove_word_from_spell_check
|
||||||
#=inc_speech_rate
|
KEY_FENRIR,KEY_BACKSPACE=foreward_keypress
|
||||||
#=dec_speech_rate
|
KEY_FENRIR,KEY_UP=inc_speech_volume
|
||||||
#=inc_speech_pitch
|
KEY_FENRIR,KEY_DOWN=dec_speech_volume
|
||||||
#=dec_speech_pitch
|
KEY_FENRIR,KEY_RIGHT=inc_speech_rate
|
||||||
#=inc_sound_volume
|
KEY_FENRIR,KEY_LEFT=dec_speech_rate
|
||||||
#=dec_sound_volume
|
KEY_FENRIR,KEY_ALT,KEY_RIGHT=inc_speech_pitch
|
||||||
1-FENRIR,1-KEY_F2=clear_clipboard
|
KEY_FENRIR,KEY_ALT,KEY_LEFT=dec_speech_pitch
|
||||||
1-FENRIR,1-KEY_X=remove_marks
|
KEY_FENRIR,KEY_ALT,KEY_UP=inc_sound_volume
|
||||||
1-FENRIR,1-KEY_A=first_clipboard
|
KEY_FENRIR,KEY_ALT,KEY_DOWN=dec_sound_volume
|
||||||
1-FENRIR,1-KEY_S=last_clipboard
|
KEY_FENRIR,KEY_SHIFT,KEY_C=clear_clipboard
|
||||||
1-FENRIR,1-KEY_D=prev_clipboard
|
KEY_FENRIR,KEY_SHIFT,KEY_X=remove_marks
|
||||||
1-FENRIR,1-KEY_F=next_clipboard
|
KEY_FENRIR,KEY_HOME=first_clipboard
|
||||||
#=curr_clipboard
|
KEY_FENRIR,KEY_END=last_clipboard
|
||||||
1-FENRIR,1-KEY_Q=set_mark
|
KEY_FENRIR,KEY_PAGEUP=prev_clipboard
|
||||||
#1-FENRIR,1-KEY_V=marked_text
|
KEY_FENRIR,KEY_PAGEDOWN=next_clipboard
|
||||||
1-FENRIR,1-KEY_V=copy_marked_to_clipboard
|
KEY_FENRIR,KEY_SHIFT,KEY_C=curr_clipboard
|
||||||
|
KEY_FENRIR,KEY_X=set_mark
|
||||||
|
KEY_FENRIR,KEY_SHIFT,KEY_X=marked_text
|
||||||
|
KEY_FENRIR,KEY_C=copy_marked_to_clipboard
|
||||||
# linux only
|
# linux only
|
||||||
1-FENRIR,1-KEY_F3=linux_paste_clipboard
|
KEY_FENRIR,KEY_V=linux_paste_clipboard
|
||||||
|
@ -79,7 +79,7 @@ device=all
|
|||||||
grabDevices=True
|
grabDevices=True
|
||||||
ignoreShortcuts=False
|
ignoreShortcuts=False
|
||||||
# the current shortcut layout located in /etc/fenrir/keyboard
|
# the current shortcut layout located in /etc/fenrir/keyboard
|
||||||
keyboardLayout=desktop
|
keyboardLayout=test
|
||||||
# echo chars while typing.
|
# echo chars while typing.
|
||||||
charEcho=False
|
charEcho=False
|
||||||
# echo deleted chars
|
# echo deleted chars
|
||||||
|
52
src/fenrir-package/commands/commands/bookmark_1.py
Normal file
52
src/fenrir-package/commands/commands/bookmark_1.py
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from core import debug
|
||||||
|
from utils import mark_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 ' + self.ID
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = ''
|
||||||
|
try:
|
||||||
|
currApp = str(self.env['screenData']['newApplication'][0])
|
||||||
|
except:
|
||||||
|
currApp = 'DEFAULT'
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID]:
|
||||||
|
self.env['runtime']['outputManager'].presentText("Bookmark " + self.ID + "not found.", interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]:
|
||||||
|
self.env['runtime']['outputManager'].presentText("Bookmark for application " + currApp + "not found.", interrupt=True)
|
||||||
|
return
|
||||||
|
if not self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText("No valid bookmark position", 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']['Marks']['2'].copy()
|
||||||
|
marked = mark_utils.getTextBetweenMarks(startMark, endMark, self.env['screenData']['newContentText'])
|
||||||
|
else:
|
||||||
|
x, y, marked = \
|
||||||
|
line_utils.getCurrentLine(startMark['x'], startMark['y'], self.env['screenData']['newContentText'])
|
||||||
|
|
||||||
|
if marked.strip(" \t\n") == '':
|
||||||
|
self.env['runtime']['outputManager'].presentText("blank", soundIcon='EmptyLine', interrupt=True)
|
||||||
|
else:
|
||||||
|
self.env['runtime']['outputManager'].presentText(marked, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
30
src/fenrir-package/commands/commands/clear_bookmark_1.py
Normal file
30
src/fenrir-package/commands/commands/clear_bookmark_1.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from 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 ' + self.ID
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
currApp = ''
|
||||||
|
try:
|
||||||
|
currApp = str(self.env['screenData']['newApplication'][0])
|
||||||
|
except:
|
||||||
|
currApp = 'DEFAULT'
|
||||||
|
del self.env['commandBuffer']['bookMarks'][self.ID][currApp]
|
||||||
|
|
||||||
|
self.env['runtime']['outputManager'].presentText('Bookmark ' + self.ID + " removed for application " + currApp, interrupt=True)
|
||||||
|
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
39
src/fenrir-package/commands/commands/set_bookmark_1.py
Normal file
39
src/fenrir-package/commands/commands/set_bookmark_1.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#!/bin/python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Fenrir TTY screen reader
|
||||||
|
# By Chrys, Storm Dragon, and contributers.
|
||||||
|
|
||||||
|
from core import debug
|
||||||
|
|
||||||
|
class command():
|
||||||
|
def __init__(self):
|
||||||
|
self.ID = '1'
|
||||||
|
def initialize(self, environment):
|
||||||
|
self.env = environment
|
||||||
|
self.env['commandBuffer']['bookMarks'][self.ID] = {}
|
||||||
|
def shutdown(self):
|
||||||
|
pass
|
||||||
|
def getDescription(self):
|
||||||
|
return 'set Bookmark ' + self.ID
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
if not self.env['commandBuffer']['Marks']['1']:
|
||||||
|
self.env['runtime']['outputManager'].presentText("No Mark found", interrupt=True)
|
||||||
|
return
|
||||||
|
currApp = ''
|
||||||
|
try:
|
||||||
|
currApp = str(self.env['screenData']['newApplication'][0])
|
||||||
|
except Exception as e:
|
||||||
|
print(e)
|
||||||
|
currApp = 'DEFAULT'
|
||||||
|
self.env['commandBuffer']['bookMarks'][self.ID][currApp] = {}
|
||||||
|
|
||||||
|
self.env['commandBuffer']['bookMarks'][self.ID][currApp]['1'] = self.env['commandBuffer']['Marks']['1'].copy()
|
||||||
|
if self.env['commandBuffer']['Marks']['2']:
|
||||||
|
self.env['commandBuffer']['bookMarks'][self.ID][currApp]['2'] = self.env['commandBuffer']['Marks']['2'].copy()
|
||||||
|
self.env['runtime']['outputManager'].presentText('Bookmark ' + self.ID + " set for application " + currApp, interrupt=True)
|
||||||
|
self.env['commandBuffer']['Marks']['1'] = None
|
||||||
|
self.env['commandBuffer']['Marks']['2'] = None
|
||||||
|
def setCallback(self, callback):
|
||||||
|
pass
|
@ -69,9 +69,9 @@ class commandManager():
|
|||||||
if len(unLoadScript) == 0:
|
if len(unLoadScript) == 0:
|
||||||
oldScript = 'DEFAULT'
|
oldScript = 'DEFAULT'
|
||||||
else:
|
else:
|
||||||
oldScript = unLoadScript[0].upper()
|
oldScript = unLoadScript[0]
|
||||||
elif unLoadScript:
|
elif unLoadScript:
|
||||||
oldScript = str(unLoadScript).upper()
|
oldScript = str(unLoadScript)
|
||||||
if oldScript == '':
|
if oldScript == '':
|
||||||
oldScript == 'DEFAULT'
|
oldScript == 'DEFAULT'
|
||||||
if self.commandExists(oldScript, trigger):
|
if self.commandExists(oldScript, trigger):
|
||||||
@ -87,9 +87,9 @@ class commandManager():
|
|||||||
if len(loadScript) == 0:
|
if len(loadScript) == 0:
|
||||||
newScript = 'DEFAULT'
|
newScript = 'DEFAULT'
|
||||||
else:
|
else:
|
||||||
newScript = loadScript[0].upper()
|
newScript = loadScript[0]
|
||||||
elif unLoadScript:
|
elif unLoadScript:
|
||||||
newScript = str(loadScript).upper()
|
newScript = str(loadScript)
|
||||||
if newScript == '':
|
if newScript == '':
|
||||||
newScript == 'DEFAULT'
|
newScript == 'DEFAULT'
|
||||||
if self.commandExists(newScript, trigger):
|
if self.commandExists(newScript, trigger):
|
||||||
|
@ -16,14 +16,15 @@ commandBuffer = {
|
|||||||
'genericListSelection': 0,
|
'genericListSelection': 0,
|
||||||
'clipboard':[],
|
'clipboard':[],
|
||||||
'currClipboard': 0,
|
'currClipboard': 0,
|
||||||
'Marks':{'1':None, '2':None}
|
'Marks':{'1':None, '2':None},
|
||||||
|
'bookMarks':{},
|
||||||
}
|
}
|
||||||
|
|
||||||
# used by the commandManager
|
# used by the commandManager
|
||||||
commandInfo = {
|
commandInfo = {
|
||||||
'currCommand': '',
|
'currCommand': '',
|
||||||
'lastCommandExecutionTime': time.time(),
|
'lastCommandExecutionTime': time.time(),
|
||||||
'lastCommandRequestTime': time.time()
|
'lastCommandRequestTime': time.time(),
|
||||||
}
|
}
|
||||||
|
|
||||||
# used by the commandManager
|
# used by the commandManager
|
||||||
|
@ -46,7 +46,7 @@ class driver():
|
|||||||
not "sh" == i[0] and \
|
not "sh" == i[0] and \
|
||||||
not "ps" == i[0]:
|
not "ps" == i[0]:
|
||||||
if "tty"+currScreen in i[1]:
|
if "tty"+currScreen in i[1]:
|
||||||
appList.append(i[0])
|
appList.append(i[0].upper())
|
||||||
return appList
|
return appList
|
||||||
|
|
||||||
def getIgnoreScreens(self):
|
def getIgnoreScreens(self):
|
||||||
|
Loading…
Reference in New Issue
Block a user