-
-
-let dump_file name =
- let ch = open_in_bin name in
- let len = in_channel_length ch in
- let sin = String.create len in
- really_input ch sin 0 len;
- close_in ch;
-
- Printf.printf "\\noindent\\begin{minipage}{5.5cm}\n";
- (* Printf.printf "\\rule{5.5cm}{1pt}\n"; *)
- Printf.printf "\\footnotesize\\bf File %s:\\\\\n" name;
- Printf.printf "\\tt{}";
-
- for i = 0 to len - 1 do
- match sin.[i] with
- ('\000'..'\008'|'\011'|'\012'|'\014'..'\031'|'\127'..'\255') as c ->
- Printf.printf "{\\sl (%02x)}\\linebreak[2]" (Char.code c)
- | '\009' ->
- Printf.printf "{\\sl HT}\\linebreak[3]"
- | '\010' ->
- Printf.printf "{\\sl LF}\\\\\n"
- | '\013' ->
- Printf.printf "{\\sl CR}";
- if not(i < len - 1 && sin.[i+1] = '\010') then
- Printf.printf "\\\\\n";
- | ' ' ->
- Printf.printf "\\symbol{32}\\linebreak[3]"
-
- | ('"'|'#'|'$'|'%'|'&'|'-'|'<'|'>'|'['|'\\'|']'|'^'|'_'|'`'|
- '{'|'|'|'}'|'~') as c ->
- Printf.printf "\\symbol{%d}\\linebreak[2]" (Char.code c)
- | c ->
- print_char c;
- print_string "\\linebreak[0]"
- done;
-
- Printf.printf "\\mbox{}\\\\\n";
- Printf.printf "\\rule{5.5cm}{1pt}\n";
- Printf.printf "\\end{minipage}\n"
-;;
-
-
-print_endline "\\documentclass[a4paper]{article}";
-print_endline "\\usepackage{multicol}";
-print_endline "\\begin{document}";
-print_endline "\\begin{multicols}{2}";
-for i = 1 to Array.length(Sys.argv)-1 do
- dump_file Sys.argv.(i)
-done;
-print_endline "\\end{multicols}";
-print_endline "\\end{document}"
-;;
-
-
-