diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2018-05-14 21:18:44 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2018-05-14 21:18:44 (GMT) |
commit | 96ec6fa281103609e8e2b70ff9311d78ada35a82 (patch) | |
tree | 4c8fd74f8af8311ead9984ee4b492d10de747743 /ds9 | |
parent | f0dd87966fd0c7db5a421f0a2dd4e26a5f13754a (diff) | |
download | blt-96ec6fa281103609e8e2b70ff9311d78ada35a82.zip blt-96ec6fa281103609e8e2b70ff9311d78ada35a82.tar.gz blt-96ec6fa281103609e8e2b70ff9311d78ada35a82.tar.bz2 |
add ds9 irafalign parser
Diffstat (limited to 'ds9')
-rw-r--r-- | ds9/library/source.tcl | 2 | ||||
-rw-r--r-- | ds9/library/util.tcl | 9 | ||||
-rw-r--r-- | ds9/parsers/irafalignlex.fcl | 13 | ||||
-rw-r--r-- | ds9/parsers/irafalignparser.tac | 28 |
4 files changed, 52 insertions, 0 deletions
diff --git a/ds9/library/source.tcl b/ds9/library/source.tcl index a249248..351c561 100644 --- a/ds9/library/source.tcl +++ b/ds9/library/source.tcl @@ -242,6 +242,8 @@ source $ds9(root)/library/iconifyparser.tcl source $ds9(root)/library/iconifylex.tcl source $ds9(root)/library/iisparser.tcl source $ds9(root)/library/iislex.tcl +source $ds9(root)/library/irafalignparser.tcl +source $ds9(root)/library/irafalignlex.tcl source $ds9(root)/library/lockparser.tcl source $ds9(root)/library/locklex.tcl source $ds9(root)/library/magnifierparser.tcl diff --git a/ds9/library/util.tcl b/ds9/library/util.tcl index f3f44d7..f2760cc 100644 --- a/ds9/library/util.tcl +++ b/ds9/library/util.tcl @@ -1376,10 +1376,19 @@ proc ProcessIRAFAlignCmd {varname iname} { upvar $varname var upvar $iname i + global debug + if {$debug(tcl,parser)} { + irafalign::YY_FLUSH_BUFFER + irafalign::yy_scan_string [lrange $var $i end] + irafalign::yyparse + incr i [expr $irafalign::yycnt-1] + } else { + global pds9 set pds9(iraf) [FromYesNo [lindex $var $i]] PrefsIRAFAlign } +} proc ProcessSendIRAFAlignCmd {proc id param} { global pds9 diff --git a/ds9/parsers/irafalignlex.fcl b/ds9/parsers/irafalignlex.fcl new file mode 100644 index 0000000..285abea --- /dev/null +++ b/ds9/parsers/irafalignlex.fcl @@ -0,0 +1,13 @@ +#tab irafalignparser.tab.tcl + +%{ +%} + +#include defs.fin + +%% + +#include yesno.fin +#include string.fin + +%% diff --git a/ds9/parsers/irafalignparser.tac b/ds9/parsers/irafalignparser.tac new file mode 100644 index 0000000..1a63dca --- /dev/null +++ b/ds9/parsers/irafalignparser.tac @@ -0,0 +1,28 @@ +%{ +%} + +#include yesno.tin +#include string.tin + +%start command + +%% + +#include yesno.trl + +command : irafalign + | irafalign {yyclearin; YYACCEPT} STRING_ + ; + +irafalign : yesno {Pds9CmdSet irafalign $1} + ; + +%% + +proc irafalign::yyerror {msg} { + variable yycnt + variable yy_current_buffer + variable index_ + + ParserError $msg $yycnt $yy_current_buffer $index_ +} |