Index: wp-admin/revision.php
===================================================================
--- wp-admin/revision.php	(revision 23364)
+++ wp-admin/revision.php	(working copy)
@@ -117,9 +117,10 @@
 		break;
 	}
 
+	$revision_num = wp_post_revision_num( $revision, false ); 
 	$post_title = '<a href="' . get_edit_post_link() . '">' . get_the_title() . '</a>';
 	$revision_title = wp_post_revision_title( $revision, false );
-	$h2 = sprintf( __( 'Revision for &#8220;%1$s&#8221; created on %2$s' ), $post_title, $revision_title );
+	$h2 = sprintf( __( 'Revision %1$s for &#8220;%2$s&#8221; created on %3$s' ), $revision_num, $post_title, $revision_title ); 
 	$title = __( 'Revisions' );
 
 	// Sets up the diff radio buttons
@@ -155,12 +156,15 @@
 
 <table class="form-table ie-fixed">
 	<col class="th" />
-<?php if ( 'diff' == $action ) : ?>
+<?php if ( 'diff' == $action ) : 
+		 $left_revision_num = wp_post_revision_num( $left_revision, true );
+		 $right_revision_num = wp_post_revision_num( $right_revision, true ); 
+?>
 <tr id="revision">
 	<th scope="row"></th>
 	<th scope="col" class="th-full">
-		<span class="alignleft"><?php printf( __('Older: %s'), wp_post_revision_title( $left_revision ) ); ?></span>
-		<span class="alignright"><?php printf( __('Newer: %s'), wp_post_revision_title( $right_revision ) ); ?></span>
+		<span class="alignleft"><?php printf( __('Older: %s'), wp_post_revision_title( $left_revision ) ); ?>&nbsp;<?php echo $left_revision_num; ?></span> 
+		<span class="alignright"><?php printf( __('Newer: %s'), wp_post_revision_title( $right_revision ) ); ?>&nbsp;<?php echo $right_revision_num; ?></span> 
 	</th>
 </tr>
 <?php endif;
@@ -171,6 +175,7 @@
 	if ( 'diff' == $action ) {
 		$left_content = apply_filters( "_wp_post_revision_field_$field", $left_revision->$field, $field );
 		$right_content = apply_filters( "_wp_post_revision_field_$field", $right_revision->$field, $field );
+		
 		if ( !$content = wp_text_diff( $left_content, $right_content ) )
 			continue; // There is no difference between left and right
 		$identical = false;
@@ -188,7 +193,6 @@
 	<?php
 
 endforeach;
-
 if ( 'diff' == $action && $identical ) :
 
 	?>
Index: wp-includes/pluggable.php
===================================================================
--- wp-includes/pluggable.php	(revision 23364)
+++ wp-includes/pluggable.php	(working copy)
@@ -1743,3 +1743,29 @@
 	return $r;
 }
 endif;
+
+
+
+function wp_text_diff1( $left_string, $right_string, $args = null ) {
+	$defaults = array( 'title' => '', 'title_left' => '', 'title_right' => '' );
+	$args = wp_parse_args( $args, $defaults );
+
+	if ( !class_exists( 'WP_Text_Diff_Renderer_Table' ) )
+		require( ABSPATH . WPINC . '/wp-diff.php' );
+
+	$left_string  = normalize_whitespace($left_string);
+	$right_string = normalize_whitespace($right_string);
+
+	$left_lines  = explode("\n", $left_string);
+	$right_lines = explode("\n", $right_string);
+
+	$text_diff = new Text_Diff($left_lines, $right_lines);
+	$renderer  = new Text_Diff_Renderer_inline();
+	$diff = $renderer->render($text_diff);
+
+	if ( !$diff )
+		return '';
+
+	$r  = "$diff";
+	return $r;
+}
Index: wp-includes/post-template.php
===================================================================
--- wp-includes/post-template.php	(revision 23364)
+++ wp-includes/post-template.php	(working copy)
@@ -1319,6 +1319,33 @@
 	return $date;
 }
 
+/** 
+ * Retrieve revision id of a revision (linked to that revisions's page). 
+ * 
+ * @package WordPress 
+ * @subpackage Post_Revisions 
+ * @since 3.6 
+ * 
+ * @param int|object $revision Revision ID or revision object. 
+ * @param bool $link Optional, default is true. Link to revisions's page? 
+ * @return string revision number or link to revision page. 
+ */ 
+ 		  
+function wp_post_revision_num($revision, $link = true) { 
+	if ( !$revision = get_post( $revision ) ) 
+		return $revision; 
+
+	if ( !in_array( $revision->post_type, array( 'post', 'page', 'revision' ) ) ) 
+		return false; 
+
+	if ( $link && current_user_can( 'edit_post', $revision->ID ) && $link = get_edit_post_link( $revision->ID ) ) 
+		$revision_num = "<a href='$link'>#$revision->ID</a>"; 
+	else  
+		$revision_num = "#$revision->ID"; 
+
+	return $revision_num; 
+} 
+ 		 
 /**
  * Display list of a post's revisions.
  *
@@ -1369,7 +1396,7 @@
 				return;
 			break;
 	}
-
+	
 	/* translators: post revision: 1: when, 2: author name */
 	$titlef = _x( '%1$s by %2$s', 'post revision' );
 
@@ -1379,12 +1406,13 @@
 	$rows = $right_checked = '';
 	$class = false;
 	$can_edit_post = current_user_can( 'edit_post', $post->ID );
+	$pre_revision =  $post;
 	foreach ( $revisions as $revision ) {
 		if ( !current_user_can( 'read_post', $revision->ID ) )
 			continue;
 		if ( 'revision' === $type && wp_is_post_autosave( $revision ) )
 			continue;
-
+		$revision_num = wp_post_revision_num( $revision );
 		$date = wp_post_revision_title( $revision );
 		$name = get_the_author_meta( 'display_name', $revision->post_author );
 
@@ -1405,13 +1433,37 @@
 			$rows .= "<tr$class>\n";
 			$rows .= "\t<th style='white-space: nowrap' scope='row'><input type='radio' name='left' value='$revision->ID'$left_checked /></th>\n";
 			$rows .= "\t<th style='white-space: nowrap' scope='row'><input type='radio' name='right' value='$revision->ID'$right_checked /></th>\n";
+			$rows .= "\t<td>$revision_num</td>\n";
 			$rows .= "\t<td>$date</td>\n";
 			$rows .= "\t<td>$name</td>\n";
 			$rows .= "\t<td class='action-links'>$actions</td>\n";
 			$rows .= "</tr>\n";
 		} else {
 			$title = sprintf( $titlef, $date, $name );
-			$rows .= "\t<li>$title</li>\n";
+			$rows1 = "<ul class='revision-changes'>";
+			foreach ( _wp_post_revision_fields() as $field => $field_title ) :
+
+					$left_content = apply_filters( "_wp_post_revision_field_$field", $revision->$field, $field );
+					$right_content = apply_filters( "_wp_post_revision_field_$field", $pre_revision->$field, $field );
+					if ( !$content = wp_text_diff1( $left_content, $right_content ) )
+						continue; // There is no difference between left and right
+			
+					$rows1 .= '<li class="revision-change">
+						'.esc_html( $field_title ).'
+						<div class="pre">'. $content .'</div>
+					</li>';
+
+			endforeach;
+			$rows1 .= "</ul>";
+			$pre_revision =  $revision;
+			$rows .= "\t<li>$title $revision_num 
+				<div class='show-rev-changes'>
+					<a href='javascript:void(0);' class='show-changes'>Show Changes</a> 
+					<a href='javascript:void(0);'>&lt; Prev</a>
+					<a href='javascript:void(0);'>Next &gt;</a>
+				</div>
+				<div class='revision-change-sets'>$rows1</div>
+			</li>\n";
 		}
 	}
 
@@ -1432,6 +1484,7 @@
 <table class="widefat post-revisions" cellspacing="0" id="post-revisions">
 	<col />
 	<col />
+	<col />
 	<col style="width: 33%" />
 	<col style="width: 33%" />
 	<col style="width: 33%" />
@@ -1439,6 +1492,7 @@
 <tr>
 	<th scope="col"><?php /* translators: column name in revisions */ _ex( 'Old', 'revisions column name' ); ?></th>
 	<th scope="col"><?php /* translators: column name in revisions */ _ex( 'New', 'revisions column name' ); ?></th>
+	<th scope="col"><?php /* translators: column name in revisons */ _ex( 'Revision', 'revisions column name' ); ?></th> 
 	<th scope="col"><?php /* translators: column name in revisions */ _ex( 'Date Created', 'revisions column name' ); ?></th>
 	<th scope="col"><?php _e( 'Author' ); ?></th>
 	<th scope="col" class="action-links"><?php _e( 'Actions' ); ?></th>
@@ -1455,9 +1509,42 @@
 
 <?php
 	else :
-		echo "<ul class='post-revisions'>\n";
+		echo "<ul id='post-revisions'>\n";
 		echo $rows;
 		echo "</ul>";
+		echo "<script>
+		jQuery(document).ready(function() {
+			jQuery('.show-changes').click(function() {
+				var changesetsDiv = jQuery(this).parent().next();
+				console.log(changesetsDiv.children().eq(0).children().show());
+				changesetsDiv.toggle();
+			});
+		});
+		</script>";
+
+		echo "<style>
+
+				.revision-change-sets {
+					border:1px solid #DFDFDF;
+					display: none;
+				}
+				.show-rev-changes {float: right;}
+				.revision-change {
+					display:none;
+				}
+				#post-revisions li {
+					clear: both;
+				}
+				#post-revisions li{background: #F9F9F9}
+				#post-revisions li:nth-child(2n+1) {background: #FCFCFC}
+				#post-revisions del {
+					background: #FF8888;
+				}
+				#post-revisions ins {
+					background: #BBFFBB;
+					text-decoration: none;
+				}
+			</style>";
 	endif;
 
 }
