Program Name : '=SCRIPT=' ('=Bin=')
Usage Example :
'=SCRIPT=' -_ -c 12 -3 4..8 # Assuming 12 columns and treat some column in numbers and emphasize spaces.
Give the tab separated table from STDIN, then it yields a LaTeX table code from "\begin{table})..".
Labor-saving to create LaTeX tables from the copy/paste from Excel and SQL outputs, etc.
Main functions :
NOT ONLY performing the tedious work in typing LaTeX codes such as
(1) transforming tab characters into ampersands (&) characters for table environments,
(2) adding the "\hline" on the beginning and the ending inside the tabular environments,
BUT ALSO
(3) grouping every 3 digits by comma on numbers >= 1000 and aligning toward right in a column,
(4) properly modifying various signs \~!<>_%#&$ fitting into LaTeX (with -j, Japanese half-width as well),
(5) emphasizing the space chacters both usual half-size space and full-width space,
(6) by with -z, emphasizing the fullsize hyphen to indicate that it differs from prolonged sound sign.
Options :
-= : To indicate that the first line in STDIN is the header, to yield "\hline" btw. 1st and 2nd lines.
-c N : To explicitly indicate that the table has N columns. (Else, automatically determined by 1st line)
-j : For Japanese half-width character. The LaTeX output utilize \scalebox{0.5}[1]{...}
-s N : N is the displaying magnifying factor. Often used for large-size table to reduce the physical size.
-_ : To emphasize the space character. Both for half-width \x{20} and full-width \x{3000}.
-3 n[..n][,n[..n]][,n[..n]].. ; Specify number columns. The leftest columns is numbered 1.
-9 : Rotate the entire table 90 degree unclockwise, using "\rotatebox{90}".
-\' : Rotate each cell of the 1st line unclockwise. Often used that column names are long string.
-H : (Just for the author's usage. 64digit hexagonal codes from SHA2 is shrinked into 15 digits.)
--help : Print this online help manual of this command "'=SCRIPT='". Similar to "perldoc `which [-t] '=SCRIPT='` ".
--help opt ..or.. --help options : Only shows the option helps. It is easy to read when you are in very necessary.
--help ja : Shows Japanese online help manual. ; latextable --help ja で日本語のオンラインマニュアルを表示します。
Remarks :
- \usepackage{graphicx} is needed between \documentclass and \begin{document}, for rotating and magnifying.
- The output LaTeX snippet does not work well if the column number of each line increase in a table.
- Please fill in \caption{} and \label{} as neccessary in the output LaTeX code.
Notes for developing :
* I want to add -r switching options to specify only right alignment.
* I have not yet fully investigate good LaTeX books yet. I only developed this program merely mainly by experience.
# This program has been made since 2018-02-09(Fri) by Toshiyuki Shimono, as a part of TSV hacking toolset for table data.
=begin JapaneseManual
プログラム名 : '=SCRIPT=' ('=Bin=')
標準入力からタブ区切りのデータを読取り、それを LaTeX の表で使えるように変換する。
下記の作業などを省力化することが目的である。
(1) タブ区切りをアンパサンド区切りに変換すること
(2) \hline コマンドを書き入れること
(3) 数値はコンマ3桁区切りで右詰めにすること
(4) 各種記号や半角カナをLaTeXで出力できるようにすること
(5) 半角空白と全角空白を目立たせること
(6) 全角ハイフンも、全角長音と区別させること
オプション :
-= : 標準入力の最初の行は、作りたいテーブルのヘッダであると仮定する。(\hlineの処理に関わる)
-c N : 表が幅何列かを明示的に指定する。未指定なら先頭行の列数で判定する。
-j : 日本語の半角カナに対応する。
-s N : 出力の拡大率を指定する。未指定なら 1.0。
-z : 全角スペース(UTF8)を、LaTeXの出力結果において、正方形の下半分のような形で可視化する。
-3 n[,n][,n].. : 3桁区切りにして右寄せにしたい列を1始まりで指定する。 ..で範囲指定。
-9 : LaTeXで表示させる表の全体を90度左回りに回転させる。
-H : 便宜上のもの。リリース時に消去。16進の長い文字列を短くする。
-\' : 1行目を左回りに回転する。
--help : このコマンド '=SCRIPT=' のオンラインヘルプマニュアルを表示する。
--help opt ないし --help options : 分かり安くオプションのヘルプのみを表示する。
注意点 : - 途中で列数が変わると、LaTeXの動作がうまくいかなくなるので注意。 - \caption と \label の中が空白なので、後で書き込む必要がある。 - LaTeX の \scalebox コマンドなどを使うので \usepackage{graphicx} がプリアンブルに必要となる。 このプログラムの開発上のメモ : * 3桁区切りにしたい数ではなくて、単に右寄せしたい列の指定をする -r を実装したい。 * ドルマークとバックスラッシュの処理は内部処理上でトリッキーだった。正規表現の \Gで解決した。
# このブログラムは 2018年2月9日(金)から表形式データに対する道具作りの一環として、下野寿之が作成したものである。 =end JapaneseManual