table_with_headers = $(this.dom.table).find("thead tr th").map(-> $(this).text() ).get().join("\t") Can one write it nicer? I especially don't like the inner function in map syntax enforced by CoffeeScript and jQuery.
CoffeeScript is not my forte, however I quite like this approach:
elements = $(this.dom.table).find("thead tr th") table_with_headers2 = ($(element).text() for element in elements ).join('\t') This way you call out which elements you are going to process, and then use a list comprehension. In a style that is closer to JS than true CoffeeScript.
You can use explicit find like so
$ 'thead tr th', @dom.table and put some indentations instead of braces
table_with_headers = $ "thead tr th", @dom.table .map -> @.text() .join '\t' Also try to use list comprehesion
table_with_headers = [ $(th).text() for th in $ "thead tr th", @dom.table ].join '\t' elem to th? \$\endgroup\$