Make tables better

I feel like tables are so useful in productivity and I oftentimes find myself using other Software for when I want to use tables because tables in Agenda as they are at the moment are just cumbersome and don’t do much for me.

  1. There is no way for me to format tables. Rows and columns cannot be resized at all, which I really just hate. I have seen some of your reasonings for this limitation (mainly because it is hard to make it have the same size on different platforms), but I cannot wrap my head around why you can’t just have the option of making the tables full width and make the sizes of the columns relative to each other instead of absolute widths. F.e. one column would take up 1:5 and the a second column would take up 4:5 of the width, resizing the absolute width based on window size and platform. I would much rather have this „limitation“ instead of having to deal with columns with one number being as wide as columns with multiple sentences.

  2. I would like to see easier modification of tables, like easily adding, removing and moving around columns and rows.

  3. I would like to have some customisation options like coloring cells and better formatting for text inside tables.

  4. I understand that this would be more complex and I feel like it would be a last step, but at least some basic table mathematical functionality with sums, medians, averages etc. would be nice. I don’t feel like it’s that urgent but it still would be nice to have at some point.

Hope to hear some thoughts on this :slight_smile:

6 Likes

Yes, this is one of the options we are considering, though still not perfect. You can imagine setting the width so it just fits in some number, and going to another device where it wraps the number. That is also very frustrating.

The font sizes on each device are also different, so we have to try to account for that as well.

We will see if we can come up with some algorithm that preserves absolute width as much as possible, and then perhaps falls back to some relative width.

It is easy to underestimate how intricate it all is. People think “but MS Word can do it, why not Agenda”. It’s a completely different type of app. Word would make a truly awful note taking app, because it would require you to constantly zoom in/out on small devices.

If you find another note taking app that you think does this well, let me know. We took a lot from Apple’s own notes app, and that does pretty much the same stuff as Agenda.

Can you be specific? I think this is one area where Agenda is pretty good. Are you talking about iOS or macOS?

Yep, that is also in our planning for the next table upgrade.

At some point you move into spreadsheet territory. We could probably add some basic functions like sum, but I guarantee people would then want other things, and eventually they want all of Excel. For some things, other apps are just better, and you can embed those documents, and even edit them, directly from inside Agenda.

Thanks for the feedback! We’ll see what we can do.

2 Likes

I realise people always want ‘just one more thing…’ but I do think the fact that Agenda is a note taking app will help guide what’s appropriate in terms of function. I’d suggest if it’s the kind of thing you’d do ‘on the back of an envelope’ it fits within the remit of Agenda. That would be, + - / * and Sum. That would allow one to make notes of the rough cost of a project, trip etc. Beyond that it definately belongs in a spreadsheet!

2 Likes

I’ve always had a best of breed philosophy, right tool for the job. You wouldn’t want a GP to do your surgery. Why would one expect to use a specialized date based note system to build spreadsheet type data sets, manage projects, be a data storage platform or a myriad of other specialized app? In the context of this thread I do create tables in Agenda. One job is producing end of project reports and analysis. Listing planned vs actual progress days, + - budget, and a few others mostly date/time/parameter related.
I don’t produce a final project recap in Agenda. I use the information assimilated and referenced in it with written notes nicely formatted, organized as a timeline, with links to Merlin or OmniFocus, spreadsheets, graphics and other items. It’s a draft report tended to daily to weekly finalized and publish in Word or Ulysses.

Adjustable column width, row or column content type formatting such as text, numeric, date, and simple formulas of basic arithmetic are all that’s needed for my use. I sleep better with Agenda being mission focused, building and improving on its core😊

I think adding formulas can get quite messy. It would be easy to add a SUM function where you select some cells and use a dialog or something to calculate a one off sum. But to have a sum in one cell based on other values in the table, which then dynamically updates if you change values, would require a lot more complexity. Eg. you would have to then label rows and columns, like Excel, so you can indicate the cells in the SUM function.

We will consider if maybe it is possible to do something in between, like having a special cell that simply sums all cells above it in the column. Something like that might be a good compromise. But generating formulas of any combinations of cells, like a spreadsheet, would be a bridge too far IMO

1 Like

Thanks for replying.

I understand your point. As for me, I would much rather take that into account than having no control over the width of columns at all. I find that much more frustrating. Also if the controls to resize the tables are as easy as dragging it in place, it should be no problem to adjust the width of a desired column on the phone f.e.

I see that it’s not too complicated to add one single row or column. But if I want to add multiple ones, I do have to press quite a lot of buttons on both Mac and iOS. I see that it’s not all that bad if using hotkeys. As for moving around cells, rows or columns; I have not seen any functionality that makes me do that.

As for some inspiration: I really do like what Apple has done in their App „Numbers“ in that regard. I see that it’s a spreadsheet tool, but I don’t think that changes the fact that the controls for editing tables are very intuitive, easy and efficient.

I’m glad to hear that :slight_smile:

I totally get that and I don’t think it’s reasonable for a small team as yours to try and manage a whole spreadsheet application inside of Agenda. That would honestly just be mad. But having some basic calculations and formulas such as +, -, * and : and/or sums, averages and medians would already satisfy a majority of your userbase I think. More complex stuff really is more of a job for spreadsheet applications.

As for labeling rows and columns I would really like you to look into what Numbers does with its tables. The labels only show when editing a table. And you can have multiple seperate tables in one page which all have the same indipendent labeling starting from A1.
What would you consider problematic with labeling rows and columns?

Also I see that the complexity would be higher with dynamic calculations but I don’t think it would be too hard to pull off. I don’t know the specifics with what you’re working with but in theory it would just need to trigger your mentioned one off function every time a cell is changed in that table.

„Possible Example Code?“

I don’t know if something like that would work but I just leave it here as an idea. This could be triggered when a table is changed or when the focus of a cell is exited/changed.

table_1 = [[A1,B1,C1],[A2,B2,C2],[A3,B3,=sum(C1,C2)]]
func when_table_has_changed(selected_table): #selected_table => table_1
   for row in selected_table:
      for cell in row:
         if cell starts_with(=):
            execute_formula_in(cell)

This would also be a good compromise to consider. But it would probably mean that you had to add functionality to exclude the first title row.

But - as I’ve already said - I would consider these formulas and calculations more of a really nice to have bonus as opposed to an urgent necessity.

Adding some annecdotal thoughts to this:

  • Summing in a table in the notes app would definitely be a gateway drug to more requests; I’m a project manager and the smallest things snowball immensely.
  • I tried managing tables of financial data in an email template because it was relevant to the mesage being sent. I moved to Excel/Numbers and copied the table out as it was most appropriate. What I saw happening was doing both row and column math (multiplication and addition respectively) was required, and then referencing another (static) value somewhere. I can easily see this falling into the snowball effect from my first point.

Column widths would be cool, but I get the need for consistency without terrible scrolling. Allowing equal width floating vs. full width might be a compromise, but it probably wouldn’t make much of a difference moving from Mac to iPhone; and again, the scrolling seems undesirable. But the “OCD” appeasement (when just one word wraps to the next line) would be great, haha.

Copy as (at least HTML) maintaining table structures, though, would be a boon in basic productivity for sharing notes with tables. I understand from previous reading that Markdown doesn’t support tables, and consideration to HTML copy was mentioned, so if that is being prioritized, would be fantastic. :blush:

Great feedback! Thanks!

Agree with you. I think we will try to come up with some column resizing that works most of the time the way you would expect. Is probably doable.

Copying as HTML makes sense too. Would even be nice to add multi-markdown table support, but that is a step further.

Unfortunately, very busy on some upcoming projects, so don’t have time for it now, but this is all on my roadmap.

Drew

1 Like

Thanks for expressing your thoughts about this matter. I’d like to respond to some things you pointed out.

Regarding functions in tables: I did find out that Agenda already supports many mathematical functions just by typing \expression. As I think of it (and I know I’m not part of the developer team I only have some basic game and app development skills so please correct me if I’m wrong) it would only be a matter of supporting variables as input numbers, which are defined by table columns/rows as lists or single cells and making the \expression command change dynamically and not a one time calculation (with bugs to fix and the already mentioned technical stuff).
We’re asking for some basic expressions in tables, knowing that Agenda is not a full fledged spreadsheet tool. I think the included functions Agenda already has with \expressions are more than enough.

I don’t think anyone will be sad having more control over their notes just because a word wraps to the next line on one device. Regarding that, it’s already a thing anyway, since words in paragraphs wrap to the next line too when moving to a smaller device.

But I’m happy to hear that :slight_smile:

So for what it’s worth, I do understand the thin edge of the wedge argument, I would just like to argue that SUM(all numbers in column) is a little bit special and useful in a way that is not “yet another mathematical function”. It just fits so well with a reason you might be taking notes in a table, anywhere from adding up how much you spent on concert tickets to how many people RSVP’d to your meeting. These are situations where going to a spreadsheet is practically overkill - in other words I have a bunch of situations where if only SUM(column) would work, I wouldn’t need a spreadsheet, and they are far more common than situations I need to go to a spreadsheet for.

I get there are other priorities, just my 2 cents that SUM(column) is special. For example, if it was a display field that just popped up its value in the table column hamurger menu (the one that allows you to add a column) that would be super handy in and of itself.

1 Like

Will take it along. Summing up the selected cells and showing the result in a little popover would be quite easy. It gets tricky when you want that sum to persist in the table, update as other values change, etc. Then it becomes a real spreadsheet, quite a different beast to the basic layout we were going for.

Will think about you proposal. Thanks!

1 Like