patch 8.1.0697: ":sign place" requires the buffer argument

Problem:    ":sign place" requires the buffer argument.
Solution:   Make the argument optional.  Also update the help and clean up the
            sign test. (Yegappan Lakshmanan, closes #3767)
diff --git a/src/sign.c b/src/sign.c
index e600bfc..fd5528c 100644
--- a/src/sign.c
+++ b/src/sign.c
@@ -1168,7 +1168,7 @@
 	int		id,
 	char_u		*group)
 {
-    if (buf == NULL && sign_name == NULL && group == NULL && id == -1)
+    if (sign_name == NULL && group == NULL && id == -1)
     {
 	EMSG(_(e_argreq));
 	return;
@@ -1325,6 +1325,11 @@
 	return FAIL;
     }
 
+    // If the filename is not supplied for the sign place or the sign jump
+    // command, then use the current buffer.
+    if (filename == NULL && (cmd == SIGNCMD_PLACE || cmd == SIGNCMD_JUMP))
+	*buf = curwin->w_buffer;
+
     return OK;
 }