/ Hex Artifact Content
Login

Artifact 96022f35ada2194f6f8ccf6fd95809e90ed277c4:


0000: 23 21 2f 75 73 72 2f 62 69 6e 2f 74 63 6c 0a 23  #!/usr/bin/tcl.#
0010: 0a 23 20 43 6f 6e 76 65 72 74 20 69 6e 70 75 74  .# Convert input
0020: 20 74 65 78 74 20 69 6e 74 6f 20 61 20 43 20 73   text into a C s
0030: 74 72 69 6e 67 0a 23 0a 73 65 74 20 69 6e 20 5b  tring.#.set in [
0040: 6f 70 65 6e 20 5b 6c 69 6e 64 65 78 20 24 61 72  open [lindex $ar
0050: 67 76 20 30 5d 20 72 62 5d 0a 77 68 69 6c 65 20  gv 0] rb].while 
0060: 7b 21 5b 65 6f 66 20 24 69 6e 5d 7d 20 7b 0a 20  {![eof $in]} {. 
0070: 20 73 65 74 20 6c 69 6e 65 20 5b 67 65 74 73 20   set line [gets 
0080: 24 69 6e 5d 0a 20 20 69 66 20 7b 5b 65 6f 66 20  $in].  if {[eof 
0090: 24 69 6e 5d 7d 20 62 72 65 61 6b 3b 0a 20 20 73  $in]} break;.  s
00a0: 65 74 20 78 20 5b 73 74 72 69 6e 67 20 6d 61 70  et x [string map
00b0: 20 22 5c 5c 5c 5c 20 5c 5c 5c 5c 5c 5c 5c 5c 20   "\\\\ \\\\\\\\ 
00c0: 5c 5c 5c 22 20 5c 5c 5c 5c 5c 22 22 20 24 6c 69  \\\" \\\\\"" $li
00d0: 6e 65 5d 0a 20 20 70 75 74 73 20 22 5c 22 24 78  ne].  puts "\"$x
00e0: 5c 5c 6e 5c 22 22 0a 7d 0a 63 6c 6f 73 65 20 24  \\n\"".}.close $
00f0: 69 6e 0a                                         in.