Brian Silverman | 8649792 | 2018-02-10 19:28:39 -0500 | [diff] [blame] | 1 | # Sed script that inserts the file called HEADER before the header entry. |
| 2 | # |
| 3 | # At each occurrence of a line starting with "msgid ", we execute the following |
| 4 | # commands. At the first occurrence, insert the file. At the following |
| 5 | # occurrences, do nothing. The distinction between the first and the following |
| 6 | # occurrences is achieved by looking at the hold space. |
| 7 | /^msgid /{ |
| 8 | x |
| 9 | # Test if the hold space is empty. |
| 10 | s/m/m/ |
| 11 | ta |
| 12 | # Yes it was empty. First occurrence. Read the file. |
| 13 | r HEADER |
| 14 | # Output the file's contents by reading the next line. But don't lose the |
| 15 | # current line while doing this. |
| 16 | g |
| 17 | N |
| 18 | bb |
| 19 | :a |
| 20 | # The hold space was nonempty. Following occurrences. Do nothing. |
| 21 | x |
| 22 | :b |
| 23 | } |