Searchable tables are currently embedded with iframes as external HTML pages. This works for the web version of the digital handbook but it is problematic for two reasons:
Content is not searchable from the central search feature;
Tables do not show up when document is compiled with LaTeX.
It is, therefore, suggested to transform the existing tables into standard .md tables and connect the table_search.js to the to the HTML tables generated by jupyter-book.
From a quick inspection of the tables that jupyter book creates (e.g., table on this page), this should be possible.
I think the necessary steps to make this work would be:
transform the existing html tables to reStructured tables and include them directly in the .md source. Transformation is possible here. This might need some manual tweaking because we ultimately require list-tables to allow formatting (e.g., different relative column widths);
give each table a unique name, e.g., my-table-12314 (ATTENTION: don't use underscore in name, instructions);
rewrite the searchTable function inside table_search.js to accept a target table argument
Include only the source code for the input field directly above the list-tables directive (<input type="text" class="myInput" id="myInput" onkeyup="searchTableJupyter(this,my-table-12314)" placeholder="Search table...">)
Searchable tables are currently embedded with iframes as external HTML pages. This works for the web version of the digital handbook but it is problematic for two reasons:
It is, therefore, suggested to transform the existing tables into standard
.md
tables and connect thetable_search.js
to the to the HTML tables generated by jupyter-book.From a quick inspection of the tables that jupyter book creates (e.g., table on this page), this should be possible.
I think the necessary steps to make this work would be:
.md
source. Transformation is possible here. This might need some manual tweaking because we ultimately requirelist-tables
to allow formatting (e.g., different relative column widths);my-table-12314
(ATTENTION: don't use underscore in name, instructions);searchTable
function insidetable_search.js
to accept a target table argumentlist-tables
directive (<input type="text" class="myInput" id="myInput" onkeyup="searchTableJupyter(this,
my-table-12314)" placeholder="Search table...">
)@csxADS: Do you think this is feasible?