diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 0396011..024e621 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -6533,7 +6533,9 @@
 	  c	don't give |ins-completion-menu| messages.  For example,
 		"-- XXX completion (YYY)", "match 1 of 2", "The only match",
 		"Pattern not found", "Back at original", etc.
-	  q     use "recording" instead of "recording @a"
+	  q	use "recording" instead of "recording @a"
+	  F	don't give the file info when editing a file, like `:silent`
+		was used for the command
 
 	This gives you the opportunity to avoid that a change between buffers
 	requires you to hit <Enter>, but still gives as useful a message as
diff --git a/src/buffer.c b/src/buffer.c
index 9ef8a50..543b4a7 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -139,14 +139,19 @@
 #endif
        )
     {
+	int old_msg_silent = msg_silent;
+
 #ifdef FEAT_NETBEANS_INTG
 	int oldFire = netbeansFireChanges;
 
 	netbeansFireChanges = 0;
 #endif
+	if (shortmess(SHM_FILEINFO))
+	    msg_silent = 1;
 	retval = readfile(curbuf->b_ffname, curbuf->b_fname,
 		  (linenr_T)0, (linenr_T)0, (linenr_T)MAXLNUM, eap,
 		  flags | READ_NEW);
+	msg_silent = old_msg_silent;
 #ifdef FEAT_NETBEANS_INTG
 	netbeansFireChanges = oldFire;
 #endif
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 6461c3c..ae88cc6 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -2605,7 +2605,8 @@
 	    return;
     }
     /* print full file name if :cd used */
-    fileinfo(FALSE, FALSE, eap->forceit);
+    if (!shortmess(SHM_FILEINFO))
+	fileinfo(FALSE, FALSE, eap->forceit);
 }
 
 /*
@@ -3884,7 +3885,8 @@
 	msg_scroll = msg_scroll_save;
 	msg_scrolled_ign = TRUE;
 
-	fileinfo(FALSE, TRUE, FALSE);
+	if (!shortmess(SHM_FILEINFO))
+	    fileinfo(FALSE, TRUE, FALSE);
 
 	msg_scrolled_ign = FALSE;
     }
diff --git a/src/option.h b/src/option.h
index 6b194bc..460e300 100644
--- a/src/option.h
+++ b/src/option.h
@@ -214,7 +214,8 @@
 #define SHM_INTRO	'I'		/* intro messages */
 #define SHM_COMPLETIONMENU  'c'		/* completion menu messages */
 #define SHM_RECORDING	'q'		/* short recording message */
-#define SHM_ALL		"rmfixlnwaWtToOsAIcq" /* all possible flags for 'shm' */
+#define SHM_FILEINFO	'F'		/* no file info messages */
+#define SHM_ALL		"rmfixlnwaWtToOsAIcqF" /* all possible flags for 'shm' */
 
 /* characters for p_go: */
 #define GO_ASEL		'a'		/* autoselect */
diff --git a/src/version.c b/src/version.c
index 5695515..f6b1f3b 100644
--- a/src/version.c
+++ b/src/version.c
@@ -744,6 +744,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1570,
+/**/
     1569,
 /**/
     1568,
