こんなデータから、こんなデータを作りたい
PDF に以下のような表がありました。
項目1 | 項目2 | 値 |
---|---|---|
松 | 〇 | 1 |
竹 | 〇 | 2 |
梅 | × | 3 |
実際は行が 200 行くらいあります。
これを、以下のような TypeScript の enum にしたいのです。
enum Type {
松 = 1;
竹 = 2;
梅 = 3;
}
どうやったか?
まず、 PDF の表から文字列をコピペすると、以下のようなテキストデータになりました。
松
〇
1
竹
〇
2
梅
×
3
これを、前述の enum の形式にして、 200@q
で気持ちよくなりたいわけです。
処理する順番としては以下のようにしました。
- 「項目2」 を消す
- 「項目1」の行末尾に
=
を追加 - 「項目1」と「値」 の行を結合
- 「3.」で結合した末尾に
;
を追加 - 次の行の先頭にカーソルを配置
こうしてできた文字列を enum 内にコピペしてフォーマッタをかければ enum 定義の完成です。
ではやってみましょう。
<ここにカーソルがある>松
〇
1
竹
〇
2
梅
×
3
という状態から始め、 jddk
で「項目2」の行を削除します。(1.)
<ここにカーソルがある>松
1
竹
〇
2
梅
×
3
つづいて A = <Esc>
で「項目1」の末尾に
=
を追加します。(2.)
すると以下の状態になりますになります。
松 = <ここにカーソルがある>
1
竹
〇
2
梅
×
3
J
で行を結合します。(3.)
松 = <ここにカーソルがある>1
竹
〇
2
梅
×
3
A;<Esc>
で末尾に ;
を追加します。(4.)
松 = 1;<ここにカーソルがある>
竹
〇
2
梅
×
3
マクロの連続実行ができるように、j^
で次の行の先頭にカーソルを持っていきます。(5.)
松 = 1;
<ここにカーソルがある>竹
〇
2
梅
×
3
この操作を記録して、 200@q
とかすれば、他の項目も全て
enum の形式になります。やったね。
0 件のコメント:
コメントを投稿