110 lines
3.5 KiB
Text
110 lines
3.5 KiB
Text
**
|
|
* This software was developed and / or modified by Raytheon Company,
|
|
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
|
*
|
|
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
|
* This software product contains export-restricted data whose
|
|
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
|
* to non-U.S. persons whether in the United States or abroad requires
|
|
* an export license or other authorization.
|
|
*
|
|
* Contractor Name: Raytheon Company
|
|
* Contractor Address: 6825 Pine Street, Suite 340
|
|
* Mail Stop B8
|
|
* Omaha, NE 68106
|
|
* 402.291.0100
|
|
*
|
|
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
|
* further licensing information.
|
|
**
|
|
|
|
Header Updater
|
|
==============
|
|
|
|
Update or add a text header to a file.
|
|
|
|
headup - update a single file
|
|
headup-batch - update multiple files
|
|
headup-dir - update all files in dir
|
|
|
|
For usage and option information refer to the -h, --help command option
|
|
|
|
FileType Configuration Files
|
|
============================
|
|
|
|
The FileType .cfg files define the block and line comment symbols to use
|
|
for a given filetype. The FileType.cfg file also defines the template
|
|
to use when formatting the header and searching for an existing header.
|
|
|
|
=Section=
|
|
The section defines the filetype extension to use when matching filetypes
|
|
|
|
Example:
|
|
[.java]
|
|
|
|
=Keys=
|
|
The keys define the types of comments, symbols, and template to use
|
|
for the filetype. If a filetype doesn't have a certain type of comment
|
|
type such as block comments, exclude the key.
|
|
|
|
Valid keys are:
|
|
blockBegin - defines block comment begin symbol
|
|
blockEnd - defines block comment end symbol
|
|
lineComment - defines the line comment symbol
|
|
lineTemplate - template for each line within the header
|
|
headerTemplate - template for the entire header
|
|
placeAfter - regular expression denfining where to place a new
|
|
header
|
|
requirePlaceAfter - requires the placeAfter be located before inserting
|
|
a new header. If not defined, defaults to True.
|
|
|
|
==Re-using Keys==
|
|
Keys may be re-used within a fileType configuration by placing the key
|
|
name as %(keyname)s Additional Keys values are also available:
|
|
- %(space)s
|
|
- %(headerText)s
|
|
- %(lineText)s
|
|
|
|
=Tips=
|
|
- whitespace is trimed from the beginning of values so use the %(space)s
|
|
variable where needed
|
|
- Multi-line values must be preceeded by a space
|
|
|
|
Filter Files
|
|
============
|
|
|
|
The Filter.csv files controls which files will be fed to headup-dir
|
|
The exclude patterns filters out any files passed through by the include
|
|
patterns; the order of filtering is include -> exclude
|
|
|
|
CSV format is as follows:
|
|
filterType,pattern,comment
|
|
|
|
filterType - may be include,exclude,includeRegex,excludeRegex,includeFiletype
|
|
|
|
Example
|
|
=======
|
|
|
|
find BatchTest/ -type f | headup-batch -i .backup -s "Copyright all" \
|
|
-t "allHeader.txt"
|
|
|
|
Recursively update all files in BatchTest
|
|
-i perform in-place updating and create backups ending in .backup
|
|
-s search for an existing header with the contents "Copyright all"
|
|
-t use the text from allHeader.txt for the updated header
|
|
|
|
If something goes wrong and we need to revert the entire update:
|
|
|
|
find BatchTest/ -type f | headup-batch -r .backup
|
|
|
|
find BatchTest/ -type f | headup-batch -S "(?=TEST COMPANY|Copyright all)" \
|
|
-t "allHeader.txt"
|
|
-S search for an existing header that contains either "TEST COMPANY" or
|
|
"Copyright all"
|
|
|
|
Test
|
|
====
|
|
|
|
Developement tests are included in the Test archive. They have been
|
|
archived to ensure that they don't accidently get modified by a headup
|
|
run against them.
|