# Table Builder

**URL:** https://meta.discourse.org/t/table-builder/236016
**Category:** Theme component
**Tags:** deprecated, included-in-core, table-builder
**Created:** [August 12, 2022, 5:57pm UTC](https://meta.discourse.org/t/table-builder/236016 "2022-08-12T17:57:53Z")
**Posts on this page:** 10
**Page:** 5

<div class="post-metadata">

### Author: ![bquast](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bquast/32/289307_2.png) [@bquast](https://meta.discourse.org/u/bquast)
#### Post date: [February 1, 2023, 11:45pm UTC](https://meta.discourse.org/t/table-builder/236016/91 "2023-02-01T23:45:37Z")

</div>

Separate to my above post, how can I move the table editor out from the cogwheel/gear ⚙ onto the main editor bar?

---

<div class="post-metadata">

### Author: ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)
#### Post date: [July 5, 2023, 3:41pm UTC](https://meta.discourse.org/t/table-builder/236016/92 "2023-07-05T15:41:09Z")

</div>

6 posts were split to a new topic: [How to change the default column names?](https://meta.discourse.org/t/how-to-change-the-default-column-names/270660)

---

<div class="post-metadata">

### Author: ![keegan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/keegan/32/383395_2.png) [@keegan](https://meta.discourse.org/u/keegan)
#### Post date: [February 7, 2023, 1:00am UTC](https://meta.discourse.org/t/table-builder/236016/102 "2023-02-07T01:00:06Z")

</div>

> [@bquast](#):
>
> If I start an entry of a cell with `=` as soon as I press `Enter` to ‘save’ the entry to the cell, it becomes invisible.

Interesting… I believe this is because spreadsheet formulas can be entered using `=`, though formulas are not supported in the theme component. I will look into this.

> [@bquast](#):
>
> Separate to my above post, how can I move the table editor out from the cogwheel/gear ⚙ onto the main editor bar?

The theme component uses the pluginAPI to add the button to the cog wheel menu [(see code)](https://github.com/discourse/discourse-table-builder/blob/d754e7a2ec790cb7b8ea045203285d725c849761/javascripts/discourse/api-initializers/table-builder.js#L18-L25).

You could similarly use the api to add it directly to the toolbar like so:

```js
  api.onToolbarCreate((toolbar) => {
    toolbar.addButton({
      id: "table-builder",
      group: "extras",
      icon: "table",
      action: "showTableBuilder",
      title: themePrefix("discourse_table_builder.composer.button"),
    });
  });

```

> [@How to change the default column names?](https://meta.discourse.org/t/how-to-change-the-default-column-names/270660/3):
>
> How could we modify the TC to activate the spreadsheet functionality (instead of table)

What do you mean by this? The spreadsheet editor functionality is being used already. It is shown in the modal when you create/edit tables.

---

<div class="post-metadata">

### Author: ![bquast](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bquast/32/289307_2.png) [@bquast](https://meta.discourse.org/u/bquast)
#### Post date: [February 7, 2023, 9:44am UTC](https://meta.discourse.org/t/table-builder/236016/103 "2023-02-07T09:44:29Z")

</div>

> [@keegan](#):
>
> What do you mean by this? The spreadsheet editor functionality is being used already. It is shown in the modal when you create/edit tables.

Thank you for all the info.

What I mean is, I would be interested in having the full spreadsheet functionality, i.e. the functions that I insert would be evaluated.

Is there a way to modify this plugin to achieve this?

**EDIT** : to clarify, I would like the inputs of the spreadsheet editor not be be converted into markdown for insertion, but instead that the entire spreadsheet is inserted (and that functions work).

---

<div class="post-metadata">

### Author: ![keegan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/keegan/32/383395_2.png) [@keegan](https://meta.discourse.org/u/keegan)
#### Post date: [February 8, 2023, 7:28pm UTC](https://meta.discourse.org/t/table-builder/236016/104 "2023-02-08T19:28:02Z")

</div>

I’m not entirely sure and would need to look into the JSpreadsheet library a bit more, but briefly looking over, it seems that spreadsheet functions/formulas are a premium feature of the library:

> **[Powerful JavaScript Plugin for Advanced Spreadsheet-Like Calculations](https://jspreadsheet.com/products/formulas)**
>
> A powerful JavaScript plugin that parses and executes Excel-like formulas with advanced functionality for handling ranges, variables, precision, and cross-worksheet calculations.

You will likely need to purchase a premium license from JSpreadsheet and modifiy the theme component to use the pro version JS scripts for it to work.

---

<div class="post-metadata">

### Author: ![bquast](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bquast/32/289307_2.png) [@bquast](https://meta.discourse.org/u/bquast)
#### Post date: [February 8, 2023, 8:38pm UTC](https://meta.discourse.org/t/table-builder/236016/105 "2023-02-08T20:38:40Z")

</div>

Thank you. I didn’t realize it was a premium feature. That sounds like a good solution for me though.

Btw, did you look at x-spreadsheet, it looks pretty cool:

> **[x-spreadsheet](https://myliang.github.io/x-spreadsheet/)**

---

<div class="post-metadata">

### Author: ![Buntspecht](https://avatars.discourse-cdn.com/v4/letter/b/3e96dc/32.png) [@Buntspecht](https://meta.discourse.org/u/Buntspecht)
#### Post date: [February 25, 2023, 11:05am UTC](https://meta.discourse.org/t/table-builder/236016/106 "2023-02-25T11:05:38Z")

</div>

Hello,

when I try to install this as a theme component with the given git repo link I encounter an error:

> Error creating upload asset: jsuites. Original filename Sorry, the file you are trying to upload is not authorized (authorized extensions: jpg, jpeg, png, woff, woff2, svg, eot, ttf, otf, gif, mp4, webm).

---

<div class="post-metadata">

### Author: ![JammyDodger](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jammydodger/32/254611_2.png) [@JammyDodger](https://meta.discourse.org/u/JammyDodger)
#### Post date: [February 25, 2023, 11:18am UTC](https://meta.discourse.org/t/table-builder/236016/107 "2023-02-25T11:18:19Z")

</div>

Hi @Buntspecht 🙂

It doesn’t look like you have `.js` in your authorised extensions:

> [@keegan](#):
>
> Ensure `.js` is present in your site setting: `theme_authorized_extensions`

---

<div class="post-metadata">

### Author: ![keegan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/keegan/32/383395_2.png) [@keegan](https://meta.discourse.org/u/keegan)
#### Post date: [November 30, 2023, 7:04pm UTC](https://meta.discourse.org/t/table-builder/236016/118 "2023-11-30T19:04:21Z")

</div>

📣 I’d like to let everyone who has this theme component installed know that it has now been [bundled into core](https://github.com/discourse/discourse/pull/24441). Please remove the theme component from your Discourse instance after upgrading.

---

<div class="post-metadata">

### Author: ![JammyDodger](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jammydodger/32/254611_2.png) [@JammyDodger](https://meta.discourse.org/u/JammyDodger)
#### Post date: [March 2, 2024, 9:38pm UTC](https://meta.discourse.org/t/table-builder/236016/119 "2024-03-02T21:38:04Z")

</div>

As the functionality of this theme component is now included as a core feature, please create #Support #Contribute > Feature #Contribute > UX #Contribute > Bug topics for any issues you encounter or any suggestions you may have.

[Previous page](https://meta.discourse.org/t/table-builder/236016.md?page=4)
