Index: includes/form.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/form.inc,v
retrieving revision 1.122
diff -u -F^f -r1.122 form.inc
--- includes/form.inc	23 May 2006 03:18:55 -0000	1.122
+++ includes/form.inc	4 Jun 2006 16:33:48 -0000
@@ -1137,11 +1137,16 @@ function theme_form_element($element, $v
 
   if (!empty($element['#title'])) {
     $title = $element['#title'];
+    $punctuations = array('.', '!', '?');
+    $terminal = '';
+    if (!in_array(substr($title, strlen($title) - 1), $punctuations)) {
+      $terminal = ':'; // Append a colon to the end of a title if $punctuations aren't found.
+    }
     if (!empty($element['#id'])) {
-      $output .= ' <label for="'. form_clean_id($element['#id']) .'">'. t('%title: %required', array('%title' => $title, '%required' => $required)) ."</label>\n";
+      $output .= ' <label for="'. form_clean_id($element['#id']) .'">'. t('%title%terminal %required', array('%title' => $title, '%terminal' => $terminal, '%required' => $required)) ."</label>\n";
     }
     else {
-      $output .= ' <label>'. t('%title: %required', array('%title' => $title, '%required' => $required)) ."</label>\n";
+      $output .= ' <label>'. t('%title%terminal %required', array('%title' => $title, '%terminal' => $terminal, '%required' => $required)) ."</label>\n";
     }
   }
 
