テーブル-Emacsと組織モード

ハブには、すでにorg-modeのすばらしい機会についての投稿があります-one、 2 、および3 。 このエクスカーションでは、テキストエディターでテーブルを使用できる別の可能性について話したいと思います(そう、私はEmacsについて話している)。 また、組織モードのテーブルは非常にシンプルで便利です。

| ip | description | users | |--------------+----------------------+-------| | 192.168.0.11 |  | 2 | | 192.168.0.12 | 1 | 1 | | 192.168.0.13 | 2 | 1 | | 192.168.0.14 |  | 2 | |--------------+----------------------+-------| | |  => | 6 | 

それでは、 Mx org-mode RETを実行するか、emacsで.orgファイルを開いて、org-modeを有効にします。

1.テーブルの作成とナビゲート

テーブルは簡単に作成できます。Cc| (英語レイアウトではShift + \)。 同じ組み合わせで、選択したテキスト領域を表に変換できます。
ミニバッファーのクエリ 'テーブルサイズ列x行[例5x2]:'で、テーブルサイズを選択します。emacsはASCIIで素敵なテーブルを描画します。

 | | | | |---+---+---| | | | | | | | | | | | | 

セル間を移動する-TabShift + TabRET テーブルの再描画と整列は、各移動またはC-sで発生します。 完成したテーブルは次のようになります。

 | ip | description | users | |--------------+----------------------+-------| | 192.168.0.11 |  | 2 | | 192.168.0.12 | 1 | 1 | | 192.168.0.13 | 2 | 1 | 

2.テーブル構造の編集

最後のセルでTab / RETを押すと、Emacsは自動的に行を追加します。
列の追加と削除を表の拡大/縮小として理解している場合、列の追加は直感的に見えます。
列の削除-MS- 、追加-MS-右
行を削除-MS-Up 、追加-MS-Down

列を左/右に移動-M- / M-右。 同様に、行を上下に移動: M-Up / M-Down

3.テーブルの設計と配置

最初のセルの先頭にマイナス記号を付けると、emacsは水平線を描画します。

 | ip | description | users | | ip | description | users | |--------------+-------------+-------| |--------------+-------------+-------| | 192.168.0.11 |  | 2 | | 192.168.0.11 |  | 2 | | 192.168.0.12 | 1 | 1 | | 192.168.0.12 | 1 | 1 | | 192.168.0.12 | 1 | 1 | | 192.168.0.12 | 1 | 1 | | 192.168.0.14 |  | 2 | | 192.168.0.14 |  | 2 | |- | | | => |--------------+-------------+-------| 

テーブルの整列は自動的に行われますが、この列の任意のセルに三角形の括弧で数値を設定することにより、列の固定幅を指定することもできます。

 | ip | description | users | | ip | description | users | |--------------+---------------------------------+-------| |--------------+----------------------+-------| | 192.168.0.11 |  | 2 | | 192.168.0.11 |  | 2 | | 192.168.0.12 | 1 | 1 | | 192.168.0.12 | 1 | 1 | | 192.168.0.13 | 2 | 1 | | 192.168.0.13 | 2 | 1 | | 192.168.0.14 |  | 2 | | 192.168.0.14 |  | 2 | |--------------+---------------------------------+-------| |--------------+----------------------+-------| | |    | | => | |  => | | | | <20> | | | | <20> | | 

長すぎるセルは短縮され、=>でマークされます。そのようなセルは、編集の最後に別のバッファーでCc `で編集できます-Ccを押します。

4.表の関数

総和

Cc +は列内のすべての数値を合計し、 C-yは結果を現在のセルに挿入します。

 | ip | description | users | |--------------+----------------------+-------| | 192.168.0.11 |  | 2 | | 192.168.0.12 | 1 | 1 | | 192.168.0.13 | 2 | 1 | | 192.168.0.14 |  | 2 | |--------------+----------------------+-------| | |  => | 6 | | | <20> | | 

仕分け

Cc ^を使用すると、2つの水平線の間の行を現在の列でソートできます。 リクエストに応じて、ミニバッファで次を選択できます。a-アルファベット順のソート、n-デジタル、t-時間、A / N / T-それぞれ、逆ソート:

 | ip | description | users | | ip | description | users | |--------------+----------------------+-------| |--------------+----------------------+-------| | 192.168.0.11 |  | 2 | | 192.168.0.12 | 1 | 1 | | 192.168.0.12 | 1 | 1 | => | 192.168.0.13 | 2 | 1 | | 192.168.0.13 | 2 | 1 | | 192.168.0.11 |  | 2 | | 192.168.0.14 |  | 2 | | 192.168.0.14 |  | 2 | |--------------+----------------------+-------| |--------------+----------------------+-------| 

前の行を繰り返します

S-RETはセルの内容を次のセルにコピーし、現在のセルが空の場合は前のセルからコピーします。 自動インクリメントが機能します。 Excelで選択範囲を広げるようなものです(間違えなければ、自動入力と呼ばれます)。
 | ip | description | | ip | users | |--------------+----------------------| |--------------+-------| | 192.168.0.11 |  | | 192.168.0.13 | 1 | | 192.168.0.11 | | | 192.168.0.14 | 2 | | 192.168.0.11 | | | | 3 | 

5.結論

説明されている機能は、基本的なテーブルのニーズのほとんどをカバーしています。 このツアーの後、Calc / Excelを安全に削除して、Emacsに完全に転送できます;)

org-modeの表に関するマニュアルを読むこともできます

upd1。 前の行のソートと繰り返しについて追加

Source: https://habr.com/ru/post/J237619/


All Articles