=== modified file 'sites/all/modules/hierarchical_select/modules/hs_taxonomy.module'
--- modules/hs_taxonomy.module	2011-02-26 14:03:13 +0000
+++ modules/hs_taxonomy.module	2011-02-26 15:27:34 +0000
@@ -408,7 +408,8 @@ function hs_taxonomy_hierarchical_select
     }
   }
 
-  return _hs_taxonomy_hierarchical_select_terms_to_options($terms);
+  $langcode = !empty($params['langcode']) ? $params['langcode'] : NULL;
+  return _hs_taxonomy_hierarchical_select_terms_to_options($terms, $langcode);
 }
 
 /**
@@ -434,7 +435,8 @@ function hs_taxonomy_hierarchical_select
     }
   }
 
-  return _hs_taxonomy_hierarchical_select_terms_to_options($terms);
+  $langcode = !empty($params['langcode']) ? $params['langcode'] : NULL;
+  return _hs_taxonomy_hierarchical_select_terms_to_options($terms, $langcode);
 }
 
 /**
@@ -675,7 +677,7 @@ function hs_taxonomy_token_values($type,
         $terms = array();
         if (in_array($vid, $hs_vids) && isset($terms_by_vocab[$vid])) {
           $selection = $terms_by_vocab[$vid];
-          $terms = _hs_taxonomy_token_termpath_for_vid($selection, $vid);
+          $terms = _hs_taxonomy_token_termpath_for_vid($selection, $vid, $node->language);
         }
 
         $terms_raw = $terms;
@@ -716,7 +718,7 @@ function hs_taxonomy_token_list($type = 
 /**
  * Helper function for hs_taxonomy_token_values().
  */
-function _hs_taxonomy_token_termpath_for_vid($selection, $vid) {
+function _hs_taxonomy_token_termpath_for_vid($selection, $vid, $langcode) {
   $terms = array();
   $selection = (is_array($selection)) ? $selection : array($selection);
 
@@ -728,6 +730,7 @@ function _hs_taxonomy_token_termpath_for
       'vid'         => $vid,
       'exclude_tid' => NULL,
       'root_term'   => NULL,
+      'langcode'    => $langcode,
     ),
   );
 
@@ -881,12 +884,12 @@ function hs_taxonomy_term_count_nodes($t
  * @return
  *  An associative array of options, keys are tids, values are term names.
  */
-function _hs_taxonomy_hierarchical_select_terms_to_options($terms) {
+function _hs_taxonomy_hierarchical_select_terms_to_options($terms, $langcode = NULL) {
   $options = array();
   foreach ($terms as $key => $term) {
     // Use the translated term when available!
     if (module_exists('i18ntaxonomy') && isset($term->vid) && i18ntaxonomy_vocabulary($term->vid) == I18N_TAXONOMY_LOCALIZE) {
-      $options[$term->tid] = tt("taxonomy:term:$term->tid:name", $term->name);
+      $options[$term->tid] = i18nstrings("taxonomy:term:$term->tid:name", $term->name, $langcode);
     }
     else {
       $options[$term->tid] = t($term->name);

