Tags:
create new tag
view all tags

RUN Statement

Overview

The alpha operand of the RUN statement will be transcoded to the encoding of the OS shell environment before being “executed”.

The RUN statement may optionally have a list of passed values (created by executing PASS statements) that are provided to the shell as arguments when the command is run. All alpha values that are to be passed must be transcoded to the encoding of the OS shell environment before being passed to the shell command.

Command

  • RAW Alpha field or Literal value
    • An operand of this type will be transcoded from the 8859-15 encoding to the encoding of the OS shell environment.
    • Unicode escape sequences are NOT honored when executing a RUN command that is entered as a literal value.
  • UNICODE Alpha field or NATIONAL Alpha field
    • The characters in the RUN commands referenced alpha field will be transcoded from their UTF-32 internal encoding to the encoding of the OS shell environment.

Arguments

  • RAW Alpha field or Literal value
    • Alpha arguments of this type will be transcoded from the 8859-15 encoding to the encoding of the OS shell environment before being passed.
    • Unicode escape sequences are NOT honored when passing an argument that is a literal value.
  • UNICODE Alpha field or NATIONAL Alpha field
    • Alpha arguments of this type will be transcoded from their UTF-32 internal encoding to the encoding of the OS shell environment before being passed.

Test Plan

  1. Test RUN with literals
  2. Test RUN with literals & unicode characters (should not transcode)
  3. Test RUN with raw field
  4. Test RUN with National field
  5. Test RUN with Unicode field
  6. Test RUN with passing raw field
  7. Test RUN with passing National field
  8. Test RUN with passing Unicode field
  9. Test RUN with passing various combinations of raw, National & Unicode
  10. Test --- STREAM OPEN with a pipe (implied RUN)

Bugs

  1. Implementation difference. The command is always encoded into UTF-8, not the the encoding of the OS shell.
  2. RUN with passing a National field causes seg fault if you run it repeatedly. * FIXED* July 4 engine
  3. RUN with passing a Unicode field causes strange & inconsistent things to happen if you run it repeatedly. * FIXED* July 4 engine
  4. PASSing a unicode field via RUN doesn't seem to work, ie, echo $1 >some.file where $1 was a unicode field containing "This is Uni data\u03a3" does not give the expected result in the file (should contain a Σ symbol). * FIXED* July 4 engine

-- PeteBrower - 2011-03-17

Edit | Attach | Watch | Print version | History: r7 < r6 < r5 < r4 < r3 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r7 - 2011-07-05 - JeanNeron
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback