diff --git a/src/clientserver.c b/src/clientserver.c
index 400a4ad..cfc0ab6 100644
--- a/src/clientserver.c
+++ b/src/clientserver.c
@@ -34,7 +34,7 @@
     //  The last but one parameter of replace_termcodes() is TRUE so that the
     //  <lt> sequence is recognised - needed for a real backslash.
     p_cpo = (char_u *)"Bk";
-    str = replace_termcodes(str, &ptr, REPTERM_DO_LT, NULL);
+    str = replace_termcodes(str, &ptr, 0, REPTERM_DO_LT, NULL);
     p_cpo = cpo_save;
 
     if (*ptr != NUL)	// trailing CTRL-V results in nothing
diff --git a/src/if_ole.cpp b/src/if_ole.cpp
index f347387..d191010 100644
--- a/src/if_ole.cpp
+++ b/src/if_ole.cpp
@@ -323,7 +323,7 @@
     }
 
     /* Translate key codes like <Esc> */
-    str = replace_termcodes((char_u *)buffer, &ptr, REPTERM_DO_LT, NULL);
+    str = replace_termcodes((char_u *)buffer, &ptr, 0, REPTERM_DO_LT, NULL);
 
     /* If ptr was set, then a new buffer was allocated,
      * so we can free the old one.
diff --git a/src/map.c b/src/map.c
index 6020f63..5988445 100644
--- a/src/map.c
+++ b/src/map.c
@@ -590,9 +590,9 @@
 
 	if (special)
 	    flags |= REPTERM_SPECIAL;
-	new_keys = replace_termcodes(keys, &keys_buf, flags, &did_simplify);
+	new_keys = replace_termcodes(keys, &keys_buf, 0, flags, &did_simplify);
 	if (did_simplify)
-	    (void)replace_termcodes(keys, &alt_keys_buf,
+	    (void)replace_termcodes(keys, &alt_keys_buf, 0,
 					    flags | REPTERM_NO_SIMPLIFY, NULL);
 	keys = new_keys;
     }
@@ -602,7 +602,7 @@
 	if (STRICMP(rhs, "<nop>") == 0)	    // "<Nop>" means nothing
 	    rhs = (char_u *)"";
 	else
-	    rhs = replace_termcodes(rhs, &arg_buf,
+	    rhs = replace_termcodes(rhs, &arg_buf, 0,
 			REPTERM_DO_LT | (special ? REPTERM_SPECIAL : 0), NULL);
     }
 
@@ -1133,7 +1133,7 @@
     char_u	*buf;
     int		retval;
 
-    rhs = replace_termcodes(str, &buf, REPTERM_DO_LT, NULL);
+    rhs = replace_termcodes(str, &buf, 0, REPTERM_DO_LT, NULL);
 
     retval = map_to_exists_mode(rhs, mode_str2flags(modechars), abbr);
     vim_free(buf);
@@ -2488,14 +2488,15 @@
 
     mode = get_map_mode(&which, 0);
 
-    keys_simplified = replace_termcodes(keys, &keys_buf, flags, &did_simplify);
+    keys_simplified = replace_termcodes(keys, &keys_buf, 0, flags,
+								&did_simplify);
     rhs = check_map(keys_simplified, mode, exact, FALSE, abbr,
 							   &mp, &buffer_local);
     if (did_simplify)
     {
 	// When the lhs is being simplified the not-simplified keys are
 	// preferred for printing, like in do_map().
-	(void)replace_termcodes(keys, &alt_keys_buf,
+	(void)replace_termcodes(keys, &alt_keys_buf, 0,
 					flags | REPTERM_NO_SIMPLIFY, NULL);
 	rhs = check_map(alt_keys_buf, mode, exact, FALSE, abbr, &mp,
 								&buffer_local);
@@ -2579,7 +2580,8 @@
 		did_simplify = FALSE;
 
 		lhs = str2special_save(mp->m_keys, TRUE, FALSE);
-		(void)replace_termcodes(lhs, &keys_buf, flags, &did_simplify);
+		(void)replace_termcodes(lhs, &keys_buf, 0, flags,
+								&did_simplify);
 		vim_free(lhs);
 
 		mapblock2dict(mp, d,
@@ -2758,11 +2760,6 @@
 	return;
     }
     orig_rhs = rhs;
-    if (STRICMP(rhs, "<nop>") == 0)	// "<Nop>" means nothing
-	rhs = (char_u *)"";
-    else
-	rhs = replace_termcodes(rhs, &arg_buf,
-					REPTERM_DO_LT | REPTERM_SPECIAL, NULL);
 
     noremap = dict_get_number(d, "noremap") ? REMAP_NONE: 0;
     if (dict_get_number(d, "script") != 0)
@@ -2776,6 +2773,12 @@
     nowait = dict_get_number(d, "nowait") != 0;
     // mode from the dict is not used
 
+    if (STRICMP(rhs, "<nop>") == 0)	// "<Nop>" means nothing
+	rhs = (char_u *)"";
+    else
+	rhs = replace_termcodes(rhs, &arg_buf, sid,
+					REPTERM_DO_LT | REPTERM_SPECIAL, NULL);
+
     if (buffer)
     {
 	map_table = curbuf->b_maphash;
diff --git a/src/menu.c b/src/menu.c
index 04cd5f1..e4008ba 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -394,7 +394,7 @@
 	else if (modes & MENU_TIP_MODE)
 	    map_buf = NULL;	// Menu tips are plain text.
 	else
-	    map_to = replace_termcodes(map_to, &map_buf,
+	    map_to = replace_termcodes(map_to, &map_buf, 0,
 			REPTERM_DO_LT | (special ? REPTERM_SPECIAL : 0), NULL);
 	menuarg.modes = modes;
 #ifdef FEAT_TOOLBAR
diff --git a/src/optionstr.c b/src/optionstr.c
index 06958aa..31e30e1 100644
--- a/src/optionstr.c
+++ b/src/optionstr.c
@@ -2102,7 +2102,7 @@
     // translate key codes like in a mapping
     if (*p_pt)
     {
-	(void)replace_termcodes(p_pt, &p,
+	(void)replace_termcodes(p_pt, &p, 0,
 		REPTERM_FROM_PART | REPTERM_DO_LT, NULL);
 	if (p != NULL)
 	{
diff --git a/src/proto/term.pro b/src/proto/term.pro
index 4c93a81..4150cbe 100644
--- a/src/proto/term.pro
+++ b/src/proto/term.pro
@@ -85,7 +85,7 @@
 int check_termcode(int max_offset, char_u *buf, int bufsize, int *buflen);
 void term_get_fg_color(char_u *r, char_u *g, char_u *b);
 void term_get_bg_color(char_u *r, char_u *g, char_u *b);
-char_u *replace_termcodes(char_u *from, char_u **bufp, int flags, int *did_simplify);
+char_u *replace_termcodes(char_u *from, char_u **bufp, scid_T sid_arg, int flags, int *did_simplify);
 void show_termcodes(int flags);
 int show_one_termcode(char_u *name, char_u *code, int printit);
 void update_tcap(int attr);
diff --git a/src/term.c b/src/term.c
index 0416acc..1542045 100644
--- a/src/term.c
+++ b/src/term.c
@@ -6591,6 +6591,8 @@
 replace_termcodes(
     char_u	*from,
     char_u	**bufp,
+    scid_T	sid_arg UNUSED,	// script ID to use for <SID>,
+				// or 0 to use current_sctx
     int		flags,
     int		*did_simplify)
 {
@@ -6660,12 +6662,12 @@
 	     */
 	    if (STRNICMP(src, "<SID>", 5) == 0)
 	    {
-		if (current_sctx.sc_sid <= 0)
+		if (sid_arg < 0 || (sid_arg == 0 && current_sctx.sc_sid <= 0))
 		    emsg(_(e_using_sid_not_in_script_context));
 		else
 		{
 		    char_u  *dot;
-		    long    sid = current_sctx.sc_sid;
+		    long    sid = sid_arg != 0 ? sid_arg : current_sctx.sc_sid;
 
 		    src += 5;
 		    if (in_vim9script()
diff --git a/src/terminal.c b/src/terminal.c
index d235eb3..cb889ae 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -867,7 +867,7 @@
 	    vim_free(opt.jo_eof_chars);
 	    p = skiptowhite(cmd);
 	    *p = NUL;
-	    keys = replace_termcodes(ep + 1, &buf,
+	    keys = replace_termcodes(ep + 1, &buf, 0,
 		    REPTERM_FROM_PART | REPTERM_DO_LT | REPTERM_SPECIAL, NULL);
 	    opt.jo_set2 |= JO2_EOF_CHARS;
 	    opt.jo_eof_chars = vim_strsave(keys);
diff --git a/src/testdir/test_map_functions.vim b/src/testdir/test_map_functions.vim
index d76c79c..4c62f89 100644
--- a/src/testdir/test_map_functions.vim
+++ b/src/testdir/test_map_functions.vim
@@ -494,8 +494,32 @@
   nunmap <C-B>
 endfunc
 
-" Test restoring the script context of a mapping
+" Test restoring an <SID> mapping
 func Test_map_restore_sid()
+  func RestoreMap()
+    const d = maparg('<CR>', 'i', v:false, v:true)
+    iunmap <buffer> <CR>
+    call mapset('i', v:false, d)
+  endfunc
+
+  let mapscript =<< trim [CODE]
+    inoremap <silent><buffer> <SID>Return <C-R>=42<CR>
+    inoremap <script><buffer> <CR> <CR><SID>Return
+  [CODE]
+  call writefile(mapscript, 'Xmapscript', 'D')
+
+  new
+  source Xmapscript
+  inoremap <buffer> <C-B> <Cmd>call RestoreMap()<CR>
+  call feedkeys("i\<CR>\<C-B>\<CR>", 'xt')
+  call assert_equal(['', '42', '42'], getline(1, '$'))
+
+  bwipe!
+  delfunc RestoreMap
+endfunc
+
+" Test restoring a mapping with a negative script ID
+func Test_map_restore_negative_sid()
   let after =<< trim [CODE]
     call assert_equal("\tLast set from --cmd argument",
           \ execute('verbose nmap ,n')->trim()->split("\n")[-1])
diff --git a/src/usercmd.c b/src/usercmd.c
index 7d84462..57435fa 100644
--- a/src/usercmd.c
+++ b/src/usercmd.c
@@ -990,7 +990,7 @@
     char_u	*rep_buf = NULL;
     garray_T	*gap;
 
-    replace_termcodes(rep, &rep_buf, 0, NULL);
+    replace_termcodes(rep, &rep_buf, 0, 0, NULL);
     if (rep_buf == NULL)
     {
 	// can't replace termcodes - try using the string as is
diff --git a/src/version.c b/src/version.c
index f4c73e7..dc054df 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1687,
+/**/
     1686,
 /**/
     1685,
