Difference between revisions of "Extracting scripts from these tutorials"

From CASA Guides
Jump to: navigation, search
(Introduction)
 
(10 intermediate revisions by 6 users not shown)
Line 5: Line 5:
 
== Introduction ==
 
== Introduction ==
  
The script extractor will produce a Python script that can be invoked inside casapy.  The extractor ignores all CASA Guide source code that is not Python.  Special UNIX commands (such as 'ls' and 'less') supported by casapy but not by Python are commented out, and interactive pauses are inserted when GUIs are invoked.  (The interactive pause is necessary to avoid table lock errors that are produced when multiple tasks are run simultaneously.)  
+
The script extractor will produce a Python script that can be invoked inside casapy.  The extractor ignores all CASA Guide source code that is not Python.  Special UNIX commands (such as 'ls' and 'less') supported by CASA but not by Python are commented out, and interactive pauses are inserted when GUIs are invoked.  (The interactive pause is necessary to avoid table lock errors that are produced when multiple tasks are run simultaneously.)
 +
 
 +
If you are using OSX, you must have Python 2.7.13 or greater. Due to OSX security updates, the script extractor will not work with earlier versions of Python.
  
 
== How to Get the Script Extractor ==
 
== How to Get the Script Extractor ==
  
For most uses, the single-module script extractor is all you will need.  You can download it from
+
<!--
https://raw.github.com/jaredcrossley/CASA-Guides-Script-Extractor/master/extractCASAscript.py.
+
[https://github.com/jaredcrossley/CASA-Guides-Script-Extractor/blob/master/extractCASAscript.py script extractor]
 +
-->
  
This Python module is maintained in a github repository as part of a simple, automated benchmark testing system.  You can browse the whole repository at https://github.com/jaredcrossley/CASA-Guides-Script-Extractor.
+
For most uses, the single-module [https://github.com/jaredcrossley/CASA-Guides-Script-Extractor/blob/master/extractCASAscript.py script extractor] is all you will need.  This Python module is maintained in a github repository as part of a simple, automated benchmark testing system.  If you like, you can browse the [https://github.com/jaredcrossley/CASA-Guides-Script-Extractor whole repository] also.
 
 
''The older, pre-github version of the script extractor can be obtianed from ftp://ftp.cv.nrao.edu:/NRAO-staff/jgallimo/extractCASAscript.py.''
 
  
 
== How to Use the Script Extractor ==
 
== How to Use the Script Extractor ==
Line 22: Line 23:
 
<source lang="bash">
 
<source lang="bash">
 
# in bash
 
# in bash
 +
mv ExtractCASAscript.py extractCASAscript.py
 
chmod u+x extractCASAscript.py
 
chmod u+x extractCASAscript.py
 
</source>
 
</source>
Line 28: Line 30:
  
 
<source lang="bash">
 
<source lang="bash">
# in bash
+
# in bash or csh
./extractCASAscript.py http://casaguides.nrao.edu/index.php?title=Calibrating_a_VLA_5_GHz_continuum_survey
 
</source>
 
 
 
In csh, you need quotes around the URL:
 
 
 
<source lang="dos">
 
# in csh
 
 
./extractCASAscript.py 'http://casaguides.nrao.edu/index.php?title=Calibrating_a_VLA_5_GHz_continuum_survey'
 
./extractCASAscript.py 'http://casaguides.nrao.edu/index.php?title=Calibrating_a_VLA_5_GHz_continuum_survey'
 
</source>
 
</source>
  
This command will automatically generate a script called <tt>CalibratingaVLA5GHzcontinuumsurvey.py</tt>.  This script can be run in casapy:
+
This command will automatically generate a script called <tt>CalibratingaVLA5GHzcontinuumsurvey.py</tt>.  This script can be run in CASA:
  
 
<source lang="python">
 
<source lang="python">

Latest revision as of 13:39, 10 May 2018

The series of commands shown in each tutorial can be written to a single casapy script using the CASA Guides script extractor. The script extractor is described here.

Introduction

The script extractor will produce a Python script that can be invoked inside casapy. The extractor ignores all CASA Guide source code that is not Python. Special UNIX commands (such as 'ls' and 'less') supported by CASA but not by Python are commented out, and interactive pauses are inserted when GUIs are invoked. (The interactive pause is necessary to avoid table lock errors that are produced when multiple tasks are run simultaneously.)

If you are using OSX, you must have Python 2.7.13 or greater. Due to OSX security updates, the script extractor will not work with earlier versions of Python.

How to Get the Script Extractor

For most uses, the single-module script extractor is all you will need. This Python module is maintained in a github repository as part of a simple, automated benchmark testing system. If you like, you can browse the whole repository also.

How to Use the Script Extractor

Make your newly acquired Python script executable.

# in bash
mv ExtractCASAscript.py extractCASAscript.py
chmod u+x extractCASAscript.py

To run it, issue the Python script name and give the URL as the argument. For example:

# in bash or csh
./extractCASAscript.py 'http://casaguides.nrao.edu/index.php?title=Calibrating_a_VLA_5_GHz_continuum_survey'

This command will automatically generate a script called CalibratingaVLA5GHzcontinuumsurvey.py. This script can be run in CASA:

# in CASA
execfile('CalibratingaVLA5GHzcontinuumsurvey.py')

Support

Questions and bug reports should be submitted to either the NRAO or ALMA helpdesks.