SkillAgentSearch skills...

SublimeTableEditor

This package is no more supported. I moved to vim.

Install / Use

/learn @vkocubinsky/SublimeTableEditor
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

This package is no more supported. I moved to vim.

Table Editor

Overview

Table Editor is a package for the Sublime Text 2 and Sublime Text 3 editor for edit text tables. Table Editor is has almost the same keys as Emacs-org mode table editor.

Table Editor allow on easy way edit text table, it allows:

  • navigate with tab/shift tab
  • insert/delete row
  • insert/delete column
  • auto align number cells to right, text cells to left, header cells to center
  • move column left/right
  • move row up/down
  • split long cell
  • join two rows into one
  • convert selected CSV region into table
  • direct support subset of wiki table syntax
    • Simple
    • EmacsOrgMode
    • Pandoc(Grid Tables, Pipe Tables)
    • Multi Markdown(support colspan in alpha status)
    • reStructuredText
    • Textile(support colspan and rowspan in alpha status)
  • auto detect table syntax by view syntax
  • switch between different table syntax on the fly
  • temporary disable/enable table editor for current view
  • customize table syntax with settings
  • support CJK : Chinese, Japanese, Korean(alpha status)
  • show demo film in scratch view

Usage

Basic editing

For first time you should enable table editor with command palette:

  • click ctrl+shift+p
  • select Table Editor: Enable for current syntax or Table Editor: Enable for current view or "Table Editor: Set table syntax ... for current view"

Then when Table Editor is enabled, type

| Name | Phone |
|-

Then press Tab key, you will get pretty printed table

| Name | Phone |
|------|-------|
| _    |       |

Then fill a data and press Tab key to navigate to next field or add new row if necessary

|    Name   |   Phone   |
|-----------|-----------|
| Anna      | 123456789 |
| Alexander | 987654321 |
| _         |           |

For make table a bit faster faster type only

|Name|Phone

And then click ctrl+k,enter.

| Name | Phone |
|------|-------|
| _    |       |

Table Editor support double hline with character '='. Type below

| Name | Phone |
|=

and click tab key

| Name | Phone |
|======|=======|
| _    |       |

Then fill rows and click ctrl+k,enter each time when cursor in Phone position

|    Name   |   Phone   |
|===========|===========|
| Anna      | 123456789 |
|-----------|-----------|
| Alexander | 987654321 |
|-----------|-----------|
| _         |           |

Additional to tab and shift+tab use enter for move cursor down and insert new row if necessary.

Work with columns

Let's we have a table with columns | Name | Phone |, and you decide insert column | Age | before column | Phone |. For do this set cursor position into any rows in column Phone

|    Name   |   Phone   |
|-----------|-----------|
| Anna      | 123456789 |
| Alexander | 987654321 |
|           | _         |

Click alt+shift+right

|    Name   |   |   Phone   |
|-----------|---|-----------|
| Anna      |   | 123456789 |
| Alexander |   | 987654321 |
|           | _ |           |

Fill | Age | column

|    Name   | Age |   Phone   |
|-----------|-----|-----------|
| Anna      |  32 | 123456789 |
| Alexander |  28_| 987654321 |
|           |     |           |

Then after some thought you decide switch columns | Age | and | Phone |. For do this, you can click alt+right when cursor in the | Age | column or you can click alt+left when cursor position in the | Phone | column

|    Name   |   Phone   | Age |
|-----------|-----------|-----|
| Anna      | 123456789 | 32  |
| Alexander | 987654321 | 28_ |
|           |           |     |

Now cursor position in the | Age | column, when you click alt+shift+left, column | Age | will be deleted

|    Name   |   Phone    |
|-----------|------------|
| Anna      | 123456789  |
| Alexander | 987654321_ |
|           |            |

Work with rows

Let's we have a table

|    Name   |   Phone   | Age |
|-----------|-----------|-----|
| Anna      | 123456789 | 32_ |
| Alexander | 987654321 | 28  |
|           |           |     |

For insert row bellow current cursor position click alt+shift+down

|    Name   |   Phone   | Age |
|-----------|-----------|-----|
|           |           | _   |
| Anna      | 123456789 | 32  |
| Alexander | 987654321 | 28  |
|           |           |     |

For delete row click alt_shift+up

|    Name   |   Phone   | Age |
|-----------|-----------|-----|
| Anna      | 123456789 | 32_ |
| Alexander | 987654321 | 28  |
|           |           |     |

Some time you cell value became to long as in next example column | Position |

|    Name   |   Phone   | Age |             Position             |
|-----------|-----------|-----|----------------------------------|
| Anna      | 123456789 |  32 | Senior Software Engineer_        |
| Alexander | 987654321 |  28 | Senior Software Testing Engineer |
|           |           |     |                                  |

You like to split value of column | Position | into several rows. First let's click ctrl+k,- for insert hline after cursor position

|    Name   |   Phone   | Age |             Position             |
|-----------|-----------|-----|----------------------------------|
| Anna      | 123456789 |  32 | Senior Software Engineer_        |
|-----------|-----------|-----|----------------------------------|
| Alexander | 987654321 |  28 | Senior Software Testing Engineer |
|           |           |     |                                  |

Then let's move cursor to before word Engineer in the first row and click alt+enter

|    Name   |   Phone   | Age |             Position             |
|-----------|-----------|-----|----------------------------------|
| Anna      | 123456789 |  32 | Senior Software                  |
|           |           |     | Engineer_                        |
|-----------|-----------|-----|----------------------------------|
| Alexander | 987654321 |  28 | Senior Software Testing Engineer |
|           |           |     |                                  |

Move cursor before word Software in the first row and click alt+enter again

|    Name   |   Phone   | Age |             Position             |
|-----------|-----------|-----|----------------------------------|
| Anna      | 123456789 |  32 | Senior                           |
|           |           |     | Software Engineer_               |
|-----------|-----------|-----|----------------------------------|
| Alexander | 987654321 |  28 | Senior Software Testing Engineer |
|           |           |     |                                  |

Move cursor to the first row after word Senior and click ctrl+j

|    Name   |   Phone   | Age |             Position             |
|-----------|-----------|-----|----------------------------------|
| Anna      | 123456789 |  32 | Senior Software Engineer_        |
|-----------|-----------|-----|----------------------------------|
| Alexander | 987654321 |  28 | Senior Software Testing Engineer |
|           |           |     |                                  |

Let's move cursor with tab key to second row(hlines skipped automatically) and click ctrl+k,enter

|    Name   |   Phone   | Age |             Position             |
|-----------|-----------|-----|----------------------------------|
| Anna      | 123456789 |  32 | Senior Software Engineer         |
|-----------|-----------|-----|----------------------------------|
| Alexander | 987654321 |  28 | Senior Software Testing Engineer |
|-----------|-----------|-----|----------------------------------|
| _         |           |     |                                  |

Convert CSV into table

Select some text with CSV data

Name,Age
Anna,20
Alexander,27

and then click ctrl+k, | to convert CSV data into table, you will get

| Name      | Age |
| Anna      | 20  |
| Alexander | 27  |

Convert CSV into table command automatically recognize CSV dialect, for example you can enter data separated by tab. If Convert CSV into table command can not recognize CSV dialect you will get one row table where selected line is a row in the table.

Temporary Enable/Disable Table Editor for current view

Some time you like temporary enable table editor and then disable it. It is useful if you edit Python or Java code and like to pretty print table, then continue edit your code. For do this you should:

  • Click ctrl+shift+p for show command palette
  • Select Table Editor: Enable for current view

Then after you edit table you can disable Table Editor

  • Click ctrl+shift+p for show command palette
  • Select Table Editor: Disable for current view

Supported Syntaxes

Table editor support next table syntax:

  • Simple
  • EmacsOrgMode
  • Pandoc
  • Multi Markdown
  • reStructuredText
  • Textile

Simple

|    Name   | Age |
|-----------|-----|
| Anna      |  20 |
| Alexander |  27 |

EmacsOrgMode

|    Name   | Age |
|-----------+-----|
| Anna      |  20 |
| Alexander |  27 |

Pandoc Grid Tables

+-----------+-----+
|    Name   | Age |
+===========+=====+
| Anna      |  20 |
+-----------+-----+
| Alexander |  27 |
+-----------+-----+

Pandoc Pipe tables

Pandoc Pipe tables is the same as Multi Markdown, you have to switch into Multi Markdown if you use this table style.

Multi Markdown/Pandoc Pipe tables

Alignment:

|    Name   | Phone | Age Column |
| :-------- | :---: | ---------: |
| Anna      |   12  |         20 |
| Alexander |   13  |         27 |


| Right | Left | Default | C
View on GitHub
GitHub Stars493
CategoryCustomer
Updated17h ago
Forks64

Languages

Python

Security Score

80/100

Audited on Apr 10, 2026

No findings