modify presentation with markslider
This commit is contained in:
@@ -20,7 +20,7 @@
|
|||||||
'''Markslider: a slideshow engine based on markdown.'''
|
'''Markslider: a slideshow engine based on markdown.'''
|
||||||
|
|
||||||
__author__ = "Ville Rantanen <ville.q.rantanen@gmail.com>"
|
__author__ = "Ville Rantanen <ville.q.rantanen@gmail.com>"
|
||||||
__version__ = "0.7"
|
__version__ = "0.8"
|
||||||
|
|
||||||
import sys,os,argparse,re
|
import sys,os,argparse,re
|
||||||
from argparse import ArgumentParser
|
from argparse import ArgumentParser
|
||||||
@@ -185,11 +185,13 @@ def get_interactive_help_text():
|
|||||||
return ''' left/right,page up/down,home,end
|
return ''' left/right,page up/down,home,end
|
||||||
change page
|
change page
|
||||||
q exit browser
|
q exit browser
|
||||||
|
M modify file with VIM
|
||||||
r reload the file
|
r reload the file
|
||||||
s toggle status bar
|
s toggle status bar
|
||||||
t toggle timer (reqs. --timer switch)
|
t toggle timer (reqs. --timer switch)
|
||||||
,/. scroll page
|
,/. scroll page
|
||||||
up/down move highlight
|
up/down move highlight
|
||||||
|
enter execute highlighted line
|
||||||
h help'''
|
h help'''
|
||||||
|
|
||||||
def setup_options():
|
def setup_options():
|
||||||
@@ -397,15 +399,19 @@ def browser(opts,filename):
|
|||||||
if inkey==ord('r'):
|
if inkey==ord('r'):
|
||||||
reader.read()
|
reader.read()
|
||||||
offset=offset_change(opts,reader,offset,(0, 0))
|
offset=offset_change(opts,reader,offset,(0, 0))
|
||||||
|
if inkey==ord('M'):
|
||||||
|
modify_file(reader,offset)
|
||||||
|
reader.read()
|
||||||
|
offset=offset_change(opts,reader,offset,(0, 0))
|
||||||
if inkey==ord(','):
|
if inkey==ord(','):
|
||||||
offset=offset_change(opts,reader,offset,(-1, 0))
|
offset=offset_change(opts,reader,offset,(-1, 0))
|
||||||
if inkey==ord('.'):
|
if inkey==ord('.'):
|
||||||
offset=offset_change(opts,reader,offset,(1, 0))
|
offset=offset_change(opts,reader,offset,(1, 0))
|
||||||
if inkey==65:
|
if inkey==65: # up
|
||||||
offset=offset_change(opts,reader,offset,(0, -1))
|
offset=offset_change(opts,reader,offset,(0, -1))
|
||||||
if inkey==66:
|
if inkey==66: # down
|
||||||
offset=offset_change(opts,reader,offset,(0, 1))
|
offset=offset_change(opts,reader,offset,(0, 1))
|
||||||
if inkey==13:
|
if inkey==13: # enter
|
||||||
launch(reader,opts,offset)
|
launch(reader,opts,offset)
|
||||||
break
|
break
|
||||||
|
|
||||||
@@ -498,6 +504,13 @@ def launch(reader,opts,offset):
|
|||||||
return
|
return
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def modify_file(reader,offset):
|
||||||
|
row=1
|
||||||
|
for page in range(reader.page):
|
||||||
|
row+=len(reader.data[page])
|
||||||
|
subprocess.call("vim +%d -c 'exe \"normal! zt\"' -c %d %s"%(row,row+offset[1],reader.filename),
|
||||||
|
shell=True)
|
||||||
|
|
||||||
def take_screenshot(reader,opts):
|
def take_screenshot(reader,opts):
|
||||||
out_file=os.path.join(opts.screenshots,"slide%03d.png"%(reader.page+1))
|
out_file=os.path.join(opts.screenshots,"slide%03d.png"%(reader.page+1))
|
||||||
if not os.path.exists(opts.screenshots):
|
if not os.path.exists(opts.screenshots):
|
||||||
|
|||||||
Reference in New Issue
Block a user