While working with tables in Obsidian, it becomes cumbersome to manually search through rows of data or to manually sort the table for better data visualization and analysis. Many users rely on tables for organizing various types of information, such as project details, task lists, research notes, and more. Without native search and sort functionalities, the usability of tables is significantly limited, leading to decreased productivity and a less efficient workflow.
Proposed solution
Implement native support for a search bar and sorting features within Obsidian tables.
Search Bar: Add a search bar above each table that allows users to quickly find specific data within the table by typing keywords or phrases. This would filter the rows to display only those that match the search criteria.
Sorting Feature: Enable users to sort the table columns in ascending or descending order by clicking on the column headers. This should be applicable to different data types such as text, numbers, and dates.
These features would greatly enhance the functionality of tables in Obsidian, making it easier for users to organize and analyze their data efficiently without needing external tools or plugins.
Current workaround (optional)
Currently, users might resort to manually searching through table entries or using community plugins that offer similar functionalities. However, these solutions are not as seamless or integrated as native support would be, often leading to fragmented workflows and additional overhead in managing plugins.
Implementing dynamic sort and row filtering to tables is not straightforward if Dynamic views is considered since creating such tables uses syntax for sorting and filtering. Obsidian could make dynamic view tables clearly distinct from regular tables because unifying the two is really difficult.
About the search box: definitely useful but this adds to vertical table size introducing unwanted clutter to some users. Hence users could choose to disable it in Settings–>Editor. Obviously search box in small tables looks silly too making the feature hard to implement because you have to decide when the search box will appear.
I am actually considering much more basic searching and sorting features for organizing and navigating through simple markdown tables with too much data. Dynamic views is more of a database-oriented type of feature that is way more robust and sophisticated than what I am actually looking for to organize a cluttered markdown table.
They could introduce table column sort and row filtering by search term to reading view. In editing view you are supposed to edit tables meaning deciding where to put rows by drag & drop. The reading view itself remains less used feature in Obsidian making it hard to develop reading view features because no one uses reading view.
It has some cool uses. You could primarily work in source mode making you need to use reading view. Source mode makes editing everything faster which could be ideal for professional writers. Second big use for reading view is MathJax since it typical behaves unexpectedly in live preview.
Adding search box could be other right click item although the feature is not straightforward to implement because you need to see whether tables are filtered or not and this particular GUI state might switch on/off implicitly without user intervention. I think in Excel the filtered state of a table is stored in the file but you cannot do this kind of things with markdown. However you can use bases now but not for note content, only for note metadata. The silly thing is that tables and bases are very similar but currently you can only go from bases to tables (not the other way). Unifiyig the two would be really difficult.