- Installation Methods for TableTools For FireFox (T2F3):
- Click here to install the latest version v0.28 . Mouse over here for further instructions.
- Alternatively, you can download first, then install it manually.
Please consider donation for further development of T2F3!
Note: Some advanced features (unlimited multiple-column sort, range operations (<1,'>=01/01/2009 & <=12/31/2009',...), sum functions (min/max/avg/med/sum/sd), hide columns, bug fixes, and other features) are already available in my X-browser TableTools Javascript Package - I'm selling that JS package for $49. Remember: T2F3 is FREE!!! But with your donation I would be able to justify porting features from the JS package to T2F3 and add in the chart functionality.
-
After installing T2F3, you can use the tables below for a quick demo. Here's some quick keyboard shortcut reminders:
- Press 'ctrl-alt-click' (click is your mouse click) anywhere in the table to sort that column.
- Press 'ctrl-shift-click' anywhere in the table to show or hide the filters (like the Auto Filters in Excel) that allow you to filter each column.
- Press 'ctrl-z-click' anywhere in the table to copy the table content as left-justified tab-delimited text (I created this format which has the best of both worlds - you can paste it into Excel as multiple columns correctly, or you can paste it into your email and still be able to read the data in each column. Try it!
- Press 'ctrl-q-click' anywhere in the table to copy the table content as tab-delimited text
- Press 'ctrl-e-click' anywhere in the table to copy the HTML source code of the table content
This table is good for testing filtering capability of TableTools:
US time |
IP addresses |
Names |
Numbers |
Sat, 22 Jun 1996 04:59:02 GMT |
15.25.123.2 |
abc def |
0.005 |
06/22/1996 04:59:02 PM |
15.25.123.2 |
abc def |
-5 |
06/22/1996 16:59:02 |
15.2.123.2 |
abc def |
5E-3 |
06/22/1996 04:59:02 |
15.25.123.2 |
wef stssrd |
0.8 |
Sat, 22 Jun 1996 04:59:02 GMT |
15.25.123.2 |
xdfga etgd |
50e-4 |
this is footer |
row |
number |
ONE! |
This table is good for testing sorting capability of TableTools:
Please note that US-styled time (or European-styled, based on your chosen preference setting for tabletools), Dollar/Euro/Yen/Pound, Number, Text, IP addresses are automatically recognized. But for other formats, please right click anywhere in the table and choose the appropriate data type for correct sorting.
US time |
European date time |
Y-M-D date & time |
Dollars |
Chinese money |
IP addresses |
Names |
Numbers |
Tuesday, January 06, 1970 12:25:37 PM | 18/12/56 04:40:10 AM | 65-06-05 | $118.73 | YMB 6.02 | 7.149.219.140 | chima chailie | -153.60E+02 |
Thu Mar 01 1951 04:40:27 GMT-0500 (Eastern Standard Time) | 18/08/81 05:15:18 PM | 1970-05-05 | $111.4 | YMB -77.85 | 211.56.97.70 | bate delie | 50.13 E +03 |
Wed, 25 Feb 1998 22:13:39 GMT | 07/08/87 | 62-10-05 | $-49.06 | YMB 40.27 | 121.197.152.251 | tonde balie | 133.79E-03 |
Sat, 17 Jan 2004 01:58:25 GMT | 17/12/85 | 69-07-23 | $29.56 | YMB -27.3 | 75.76.184.0 | dede dydi | - 168.9 E -04 |
07/07/1957 | 22/12/81 01:19:57 PM | 83-08-26 | $49.02 | YMB -69.91 | 91.138.49.3 | chite dema | 79.6 E -04 |
Fri, 08 Mar 1974 16:53:35 GMT | 10/01/1978 | 1998-07-10 03:29:06 AM | $-3.98 | YMB 120.24 | 60.117.242.253 | vadi tede | -110.84E+04 |
Wed Mar 03 1982 00:59:03 GMT-0500 (Eastern Standard Time) | 28/06/90 02:11:52 AM | 92-07-20 06:40:25 AM | $95.06 | YMB 99.77 | 92.235.174.247 | cachai didi | 224.73 E -04 |
Sat, 05 Feb 1955 08:32:41 GMT | 04/06/65 | 81-06-18 05:04:00 PM | $0.96 | YMB -14.39 | 213.50.214.20 | dychai cava | -106 |
Mon, 07 Mar 1960 13:47:04 GMT | 08/10/1999 02:04:45 PM | 90-03-13 09:05:13 PM | $-31.29 | YMB -61.39 | 185.179.127.106 | tonca dite | 151.64 E +03 |
01/15/1989 | 25/02/95 | 99-03-26 | $-113.94 | YMB -86.6 | 246.177.112.110 | dyse dechi | - 177.61 E -03 |
this is footer |
row |
number |
ONE! |
adsf |
adsf |
adsf |
adsf |
Index of this page:
How to install and use the TableTools FF extension
What's new & Version history
Author & feature lists
Localization (language) support
License
Questions & answers
How to use T2F3
- To use this extension, go to any web page that contains an HTML table (this page offers a good demo for sure). Press down the "ctrl", "alt" keys at the same time, then click anywhere inside that table. After a short while (depending on how big the table is, of course), the table will be sorted on the column you clicked upon.
- If you would like to change the default behavior of this extension, please go to firefox "Tools"->"Extensions", find "tabletools" and double click on it to launch the options menu, and set the menu there.
- Please note that US-styled time (or European-styled, based on your chosen preference setting for tabletools), Dollar/Euro/Yen/Pound, Number, Text, IP addresses are automatically recognized. But for other formats, please right click anywhere in the table and choose the appropriate data type for correct sorting.
- Also note that complex tables with column span will probably be sorted in a way that is not desired, but that is the problem common to all html table sorting javascripts, AFAIK, unfortunately.
That's it! You can now sort pretty much any html tables on the web now! For advanced usage, read on!
Author and feature lists:
This FF extension is developed and maintained by
Mingyi Liu.
The extension has these general features:
- Ease of use! Every feature has keyboard/mouse shortcuts and context menu options!
- Various preference (option) settings to allow tuning of extension behavior
- Support multiple tables on same html page.
- Works with thead, tbody, th, etc. html tags. Or even nested tables. Allows multi-row header and footer.
- Tolerates table colspans, although the end sorting results could be funny looking
- Context menu options are hidden when not applicable to avoid cluttering
The extension has these features for table sorting:
- Ease of use - right click inside table and select context menu options to sort, or just press 'ctrl+alt+mouse click' anywhere in table to activate sorting even faster!
- Fast and accurate sorting and even faster when reversing sorted column.
- Automatically detects date, number, text, currency, IP address and sort them. Auto-detect timestamp (not just date), negative numbers, scientific notations, multiple currencies correctly.
- Allow user to specify column data type explicitly through context menu.
- Provide preference (option) settings such that one could change the default behavior of the extension
- Support multiple tables on same html page.
- Works with thead, tbody, th, etc. html tags. Or even nested tables. Allows multi-row header and footer.
- Tolerates table colspans, although the end sorting results could be funny looking
- Support various levels of style preserving (row-level, cell-level or
table-level (default)). Particularly useful for table rows that're
alternatively highlighted (choose 'row-level' for it, which is default).
The extension has these features for table filtering:
- Ease of use - right click inside table and select context menu options to show/hide filters, or just press 'ctrl+shift+mouse click' anywhere in table to show/hide filters even faster!
- Smart filtering due to its automatic detection of date, number, text, currency, IP address types. One could also use context menu to sort a column as specified data type, then filter the column, which would force the column be filtered as that data type.
The extension has these features for table copying:
- Ease of use - press 'ctrl+z/q/e+mouse click' anywhere in table to copy the entire table as 3 different formats (context menu allows copying too)!
- The justified tab-delimited format sure is handy!
Localization (language) support
- English (v0.10)
- Chinese (v0.12)
- The following courtesy of Babelzilla's volunteers' help:
- French (jojaba, v0.12)
- German (Downlord, v0.12)
- Spanish-Argentina (Guillermo, v0.12)
- Spanish-Spain (chuzo, v0.13)
- Croatian (krcko, v0.13)
- Italian (MatrixIsAllOver, v0.14)
- Japanese (hiroto, v0.14)
- Dutch (markh, v0.14)
- Slovak (wladow, v0.16)
- Portuguese - Brazil (petruc, v0.20)
- Turkish (Celikbas, v0.20)
- Chinese - Traditional (jackbin, v0.20)
What's new and version history
- version 0.28: Some coding change (one small bug fixed, eval and String.prototype extending removed as per new FF guideline); Added chrome.manifest for Gecko 1.9.2 compatibility; Compressed package size by a lot; Set up everything to move hosting to my own site. It was a lot of work, despite the small coding change.
- version 0.22-27: Refer to FF Addons site please.
- version 0.21: Fixed an issue with copying multi-line content in a cell (pasting into Excel breaks into multi line too). This version replaces newline with space.
- version 0.20: Fixed a couple bugs. Added pt-BR, tr-TR, zh-TW thanks to petruc, Celikbas, jackbin from Babelzilla
- version 0.19: Fixed bug that disabled search filters added by context menu; FF 2.0 RC1 compatible!.
- version 0.18: Several bug fixes including an important one that re-enabled dropdown selection filtering (in 0.17 a bug disabled it).
- version 0.17: Search box filtering now supports: 1. Find keyword in ALL table columns (just prefix the keyword/regex with :ALL:). 2. Filter out rows that contain the search keyword in the current column (prefix with :INV:). 3. Filter out rows containing the search keyword in ANY column (prefix with :INVALL:)
- version 0.16: Important addition! Search box filtering was added (it supports Javascript RegExp expressions too!). The search is case-insensitive, fast, and very powerful! Best of all, it took me only 1.5 hours to implement.
- version 0.15: Added invert filtering (press ctrl key when clicking an option (e.g., 'abc') in the filter dropdown menu would filter out any rows that contain 'abc' in that column. Filter dropdown menu will have yellow background for inverse-filtered columns.
- version 0.14: Added support for dynamically select header rows to exclude during sorting/filtering (In extension options check the option "Do not sort/filter any rows above the clicked row?"); Italian, Japanese, Dutch locales were added by Babelzilla volunteers.
- version 0.13: Added support for copying only the filtered rows
as well as improved html copying - table tags are copied too now. Croatian and Spanish-Spain locales added by babelzilla volunteer).
- version 0.12: With Babelzilla's excellent help, added localization and Chinese, German, French, Spanish locales in addition to English.
- version 0.11: Fixed two bugs involving trailing space in filtering and trimming of space in copying.
- version 0.1: First release (created from TableSort FF extension, after bug fixes, adding table filter/copy features).
License:
It's free to use but no warranty provided (use it at your own risk!). You cannot reuse/redistribute the source code in any way without author's written authorization.
Questions and answers
- When I showed filters, then sorted the table, the filtered values are no longer correct. How to fix it?
When combining filtering and sorting, there are two ways of doing it: 1. Always sort first, filter second. 2. In TableSort settings -> Advanced Settings, choose "the rows should retain their previous formatting (fastest)". This would cause alternative highlighting of rows be messed up, but the important data can be sorted and filtered correctly in any combinations.
- I found a table whose rows should all be regarded as data rows, thus should all be sorted. But the first row is never sorted/filtered. How to fix it?
TableTools by default considers first row of table the header row. To tell it that there's no header row, simple go to settings and fill in "for table without headers, do not sort/filter the first 0 rows ...".
- I found a table that has 5 data rows that should not be sorted. How to indicate that they shouldn't be sorted?
TableTools by default considers first row of table the header row. To tell it that there's no header row, simple go to settings and fill in "for table without headers, do not sort/filter the first 5 rows ..." (you might need to fill in '5' for the table with headers too depending on the table you're trying to sort/filter).
- How do I filter/sort table header and footer sections (THEAD and TFOOT)?
TableTools disregards both THEAD and TFOOT sections when sorting and filtering. I do not plan to support sort/filter of header and footer sections.
- How do I contact you if I have a question?
Send me an email at mingyiliu_at_yahoo.com (substitute _at_ with @). As is with most freeware support, there's no guarantee as to when or if I would reply to your email, but I always try my best.