diff --git a/runtime/doc/netbeans.txt b/runtime/doc/netbeans.txt
index 46e5739..d86eb12 100644
--- a/runtime/doc/netbeans.txt
+++ b/runtime/doc/netbeans.txt
@@ -1,4 +1,4 @@
-*netbeans.txt*  For Vim version 7.0.  Last change: 2006 Mar 09
+*netbeans.txt*  For Vim version 7.0.  Last change: 2006 Nov 14
 
 
 		  VIM REFERENCE MANUAL    by Gordon Prieur
@@ -259,8 +259,8 @@
 confusion happening again, netbeans_saved() has been renamed to
 netbeans_save_buffer().
 
-We are now at version 2.3.  For the differences between 2.2 and 2.3 search for
-"2.3" below.
+We are now at version 2.4.  For the differences between 2.3 and 2.4 search for
+"2.4" below.
 
 The messages are currently sent over a socket.  Since the messages are in
 plain UTF-8 text this protocol could also be used with any other communication
@@ -605,6 +605,15 @@
 
 getMark		Not implemented.
 
+getAnno serNum
+		Return the line number of the annotation in the buffer.
+		Argument:
+			serNum		serial number of this placed annotation
+		The reply is:
+			123 lnum	line number of the annotation
+			123 0		invalid annotation serial number
+		New in version 2.4.
+
 getModified	When a buffer is specified: Return zero if the buffer does not
 		have changes, one if it does have changes.
 		When no buffer is specified (buffer number zero): Return the
diff --git a/src/netbeans.c b/src/netbeans.c
index 409580a..a5c504a 100644
--- a/src/netbeans.c
+++ b/src/netbeans.c
@@ -61,7 +61,7 @@
 
 /* The first implementation (working only with Netbeans) returned "1.1".  The
  * protocol implemented here also supports A-A-P. */
-static char *ExtEdProtocolVersion = "2.3";
+static char *ExtEdProtocolVersion = "2.4";
 
 static long pos2off __ARGS((buf_T *, pos_T *));
 static pos_T *off2pos __ARGS((buf_T *, long));
@@ -1271,6 +1271,29 @@
 	    nb_reply_text(cmdno, text);
 /* =====================================================================*/
 	}
+	else if (streq((char *)cmd, "getAnno"))
+	{
+	    long linenum = 0;
+#ifdef FEAT_SIGNS
+	    if (buf == NULL || buf->bufp == NULL)
+	    {
+		nbdebug(("    null bufp in getAnno"));
+		EMSG("E652: null bufp in getAnno");
+		retval = FAIL;
+	    }
+	    else
+	    {
+		int serNum;
+
+		cp = (char *)args;
+		serNum = strtol(cp, &cp, 10);
+		/* If the sign isn't found linenum will be zero. */
+		linenum = (long)buf_findsign(buf->bufp, serNum);
+	    }
+#endif
+	    nb_reply_nr(cmdno, linenum);
+/* =====================================================================*/
+	}
 	else if (streq((char *)cmd, "getLength"))
 	{
 	    long len = 0;
diff --git a/src/version.c b/src/version.c
index c1b3045..656de07 100644
--- a/src/version.c
+++ b/src/version.c
@@ -667,6 +667,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    163,
+/**/
     162,
 /**/
     161,
