Does Drupal.t() inside JS file has the same restrictions as the PHP t()?
The string will show up in the translation interface if it is found by the js code parser. And a variable can't be worked on by the parser, it has to be a string. So

$(this).addClass('open').text(Drupal.t(settings.linkText));


can't show up. 
It doesn't prevent the string to be translated though, if the js is aware by another way of the translation : if you write somewhere else in your js

Drupal.t('my_string');


then the parser will find 'my_string' to translate, and the js will load it next time it's called, and if settings.linkText happens to equals 'my_string', then it will be translated.

You have to flush the js cache after the js code alteration, so the parser can look again for strings. It may be why the 

$(this).addClass('open').text(Drupal.t('@txt',{@txt:settings.linkText}));


doesn't show '@txt' in the translation interface.