diff --git a/src/global.c b/src/global.c
index 52c3c7c7b37cdc5c5c063e00f7584912a854ee64..46633e3826cf17c83828a4823668e8f5d2656579 100644
--- a/src/global.c
+++ b/src/global.c
@@ -205,25 +205,24 @@ subnfunc *uncutfunc;
 
 #ifndef DISABLE_HISTORIES
 filestruct *search_history = NULL;
-	/* The search string history list. */
+	/* The current item in the list of strings that were searched for. */
 filestruct *searchtop = NULL;
-	/* The top of the search string history list. */
+	/* The oldest item in the list of search strings. */
 filestruct *searchbot = NULL;
-	/* The bottom of the search string history list. */
+	/* The newest item in the list of search strings. */
+
 filestruct *replace_history = NULL;
-	/* The replace string history list. */
+	/* The current item in the list of replace strings. */
 filestruct *replacetop = NULL;
-	/* The top of the replace string history list. */
 filestruct *replacebot = NULL;
-	/* The bottom of the replace string history list. */
+
 filestruct *execute_history = NULL;
-	/* The list of commands that have been run with ^R ^X. */
+	/* The current item in the list of commands that were run with ^R ^X. */
 filestruct *executetop = NULL;
-	/* The top of the execute history list. */
 filestruct *executebot = NULL;
-	/* The bottom of the execute history list. */
+
 poshiststruct *position_history = NULL;
-	/* The cursor position history list. */
+	/* The list of filenames with their last cursor positions. */
 #endif
 
 regex_t search_regexp;
diff --git a/src/history.c b/src/history.c
index 199e207dc920a5d4a7837e54571b3bde2682bcbf..74865e3cab09b095996440d2df3f1d804a995b09 100644
--- a/src/history.c
+++ b/src/history.c
@@ -78,29 +78,29 @@ filestruct *find_history(const filestruct *h_start, const filestruct
  * with a fresh string s.  That is: add s, or move it to the end. */
 void update_history(filestruct **h, const char *s)
 {
-    filestruct **hage = NULL, **hbot = NULL, *thesame;
+    filestruct **htop = NULL, **hbot = NULL, *thesame;
 
     if (*h == search_history) {
-	hage = &searchtop;
+	htop = &searchtop;
 	hbot = &searchbot;
     } else if (*h == replace_history) {
-	hage = &replacetop;
+	htop = &replacetop;
 	hbot = &replacebot;
     } else if (*h == execute_history) {
-	hage = &executetop;
+	htop = &executetop;
 	hbot = &executebot;
     }
 
     /* See if the string is already in the history. */
-    thesame = find_history(*hbot, *hage, s, HIGHEST_POSITIVE);
+    thesame = find_history(*hbot, *htop, s, HIGHEST_POSITIVE);
 
     /* If an identical string was found, delete that item. */
     if (thesame != NULL) {
 	filestruct *after = thesame->next;
 
 	/* If the string is at the head of the list, move the head. */
-	if (thesame == *hage)
-	    *hage = after;
+	if (thesame == *htop)
+	    *htop = after;
 
 	unlink_node(thesame);
 	renumber(after);
@@ -109,11 +109,11 @@ void update_history(filestruct **h, const char *s)
     /* If the history is full, delete the oldest item (the one at the
      * head of the list), to make room for a new item at the end. */
     if ((*hbot)->lineno == MAX_SEARCH_HISTORY + 1) {
-	filestruct *oldest = *hage;
+	filestruct *oldest = *htop;
 
-	*hage = (*hage)->next;
+	*htop = (*htop)->next;
 	unlink_node(oldest);
-	renumber(*hage);
+	renumber(*htop);
     }
 
     /* Store the fresh string in the last item, then create a new item. */
@@ -171,25 +171,25 @@ void get_history_older_void(void)
 char *get_history_completion(filestruct **h, char *s, size_t len)
 {
     if (len > 0) {
-	filestruct *hage = NULL, *hbot = NULL, *p;
+	filestruct *htop = NULL, *hbot = NULL, *p;
 
 	if (*h == search_history) {
-	    hage = searchtop;
+	    htop = searchtop;
 	    hbot = searchbot;
 	} else if (*h == replace_history) {
-	    hage = replacetop;
+	    htop = replacetop;
 	    hbot = replacebot;
 	} else if (*h == execute_history) {
-	    hage = executetop;
+	    htop = executetop;
 	    hbot = executebot;
 	}
 
 	/* Search the history list from the current position to the top
 	 * for a match of len characters.  Skip over an exact match. */
-	p = find_history((*h)->prev, hage, s, len);
+	p = find_history((*h)->prev, htop, s, len);
 
 	while (p != NULL && strcmp(p->data, s) == 0)
-	    p = find_history(p->prev, hage, s, len);
+	    p = find_history(p->prev, htop, s, len);
 
 	if (p != NULL) {
 	    *h = p;