--- loncom/homework/response.pm	2005/06/29 19:20:10	1.122
+++ loncom/homework/response.pm	2005/09/23 16:47:06	1.125
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # various response type definitons response definition
 #
-# $Id: response.pm,v 1.122 2005/06/29 19:20:10 albertel Exp $
+# $Id: response.pm,v 1.125 2005/09/23 16:47:06 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -71,14 +71,14 @@ sub start_hintresponse {
     my ($parstack,$safeeval)=@_;
     my $id= &Apache::lonxml::get_param('id',$parstack,$safeeval);
     if ($id eq '') { $id = $Apache::lonxml::curdepth; }
-    push (@Apache::inputtags::response,$id);
-    push (@Apache::inputtags::responselist,$id);
+    push (@Apache::inputtags::hint,$id);
+    push (@Apache::inputtags::hintlist,$id);
     push (@Apache::inputtags::paramstack,[%Apache::inputtags::params]);
     return $id;
 }
 
 sub end_hintresponse {
-    pop @Apache::inputtags::response;
+    pop @Apache::inputtags::hint;
     if (defined($Apache::inputtags::paramstack[-1])) {
 	%Apache::inputtags::params=
 	    @{ pop(@Apache::inputtags::paramstack) };
@@ -505,7 +505,15 @@ sub answer_part {
     my ($type,$answer) = @_;
     my $result;
     if ($env{'form.answer_output_mode'} eq 'tex') {
-	$result = ' \verb|'.$answer.'|\\\\ \hline ';
+	my $to_use='|';
+	foreach my $value (32..126) {
+	    my $char=pack('c',$value);
+	    if ($answer !~ /\Q$char\E/) {
+		$to_use=$char;
+		last;
+	    }
+	}
+	$result = '\verb'.$to_use.$answer.$to_use.'\\\\ \hline ';
     } else {
 	$result = '<td>'.$answer.'</td>';
     }
@@ -574,8 +582,8 @@ sub repetition {
     my $id = $Apache::inputtags::part;
     my $weight = &Apache::lonnet::EXT("resource.$id.weight");
     if (!defined($weight) || ($weight eq '')) { $weight=1; }
-    my $repetition = int $weight/9;
-    if ($weight % 9 != 0) {$repetition++;} 
+    my $repetition = int($weight/10);
+    if ($weight % 10 != 0) { $repetition++; } 
     return $repetition;
 }
 
@@ -584,6 +592,7 @@ sub scored_response {
     my $repetition=&repetition();
     my $score=0;
     for (my $i=0;$i<$repetition;$i++) {
+	# A is 1, B is 2, etc. (get response return 0-9 and then we add 1)
 	my $increase=&Apache::response::getresponse($i+1);
 	if ($increase ne '') { $score+=$increase+1; }
     }