2012-05-01 3 views
2

私はすべての単語がそれ自身の行にあります。これはテーブルの最初の列です。私は手で2番目の列を作成したいと思います。テキストの周りにテーブルを作成する

私はいくつかのプラグインを使用したいので、テキストの周りにASCIIテーブルが作成されるので、整形がいいです(各列の開始文字は1つの "垂直線"にする必要があります)。 1つのショートカットで正しい位置にすばやく移動します)。

このような表の編集や書式設定を簡単にするvim用のプラグインはありますか?

+0

ちょうど明確なあなたは、テーブルの周りのラインが欠けていることを?または単に表のテキストですか? – Benj

+0

@Benj表形式のテキストは良いでしょうが、(少なくとも垂直方向の)周囲の線はさらに良いでしょう。 – xralf

+0

xralf私はvimのプラグインを持っていませんが、それが役に立つならvimの中のブロックで使えるすてきなperlスクリプトを持っていますか?コンマで区切られたテキストのブロックをきれいにフォーマットされたテーブルに変換してから、もう一度元に戻して編集することができます。 – Benj

答えて

6

あなたはちょうど私がこれを使用して、それがうまく機能し、表形式にテキストの配置が必要な場合:

http://www.vim.org/scripts/script.php?script_id=294

私はあなたが欲しいものをより密接にした数年前command line toolを書いた:

それはあなたがCSV形式でテーブルを編集することができます:

1,my table,another field 
2,my table,yet another field 

次にvimの中でブロックを選択し、使用してフィルタリングします:

'<,'>!~/scripts/tab 

そして、これはあなたに与えます:

------------------------------------ 
| 1 | my table | another field  | 
| 2 | my table | yet another field | 
------------------------------------ 

再度テーブルを編集したい場合は、テーブル全体を選択することができますし、(単なるシンボリックリンクである - >タブ)untabを繰り返し変換し、テーブルをCSVに戻して編集してください。

様々な他のオプションも用意されています:

------------------------------------------------------------------------- 
| Command/Option | Purpose            | 
|----------------|------------------------------------------------------| 
| tab   | Reads from stdin and tabulates comma seperated input | 
| tab <-t>  | Tabulates input and assumes first row are titles  | 
| tab <-h>  | Prints this help          | 
| tab <-nb>  | Tabulates without a border       | 
| tab <-fw X> | Wrap fields greater than X big don't break words  | 
| tab <-fs X> | Wrap fields greater than X big and break words  | 
| tab <-vp X> | Vertically pad table by X lines      | 
| tab <-hp X> | Horizontally pad fields by X chars     | 
| tab <-b X>  | Tabulates with a border made from char X    | 
|----------------|------------------------------------------------------| 
| untab   | Reads from stdin and untabulates table input   | 
| untab <-b X> | Untabulate a table with border char X    | 
| untab <-nb> | Untabulate a borderless table      | 
------------------------------------------------------------------------- 
+1

このスクリプトをお寄せいただきありがとうございます。 – romainl

+0

@Benj最近の編集にはこれで十分ですが、試してみますが、Emacsのorg-modeのようなものが存在し、効果的なテーブル編集の可能性があり、編集中にインタラクティブに動作するものがあれば興味があります。バッチで)。 – xralf

+0

@xralf orgモードと同じように洗練されたvimテーブルプラグインはないと思います。 – Benj

関連する問題