From 438cf9e247f7c703f4c96c1586a696fe4bcc06f5 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Sat, 1 Jun 2019 05:44:26 +0000
Subject: [PATCH] Restore the long-standing (forever) behavior of
 ulist/uifc.list where Backspace (the "Delete" key on a MacBookPro keyboard)
 is treated the same as ESC (exit). Make the help status bar more clear in Mac
 OS X builds that the '+' key may be used in place of the INSert key to add
 itesm and that fn-DELete key sequence is used to delete items (or the '-'
 key, though that isn't stated).

---
 src/uifc/uifc32.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/uifc/uifc32.c b/src/uifc/uifc32.c
index 08714fefd1..c714bb3762 100644
--- a/src/uifc/uifc32.c
+++ b/src/uifc/uifc32.c
@@ -1214,10 +1214,12 @@ int ulist(int mode, int left, int top, int width, int *cur, int *bar
 			}
 			/* For compatibility with terminals lacking special keys */
 			switch(gotkey) {
+				case '\b':
+					gotkey=ESC;
+					break;
 				case '+':
 					gotkey=CIO_KEY_IC;	/* insert */
 					break;
-				case '\b':
 				case '-':
 				case DEL:
 					gotkey=CIO_KEY_DC;	/* delete */
@@ -2446,10 +2448,16 @@ void bottomline(int mode)
 		i += uprintf(i,api->scrn_len+1,BLACK|(api->cclr<<4),"Paste  ");
 	}
 	if(mode&WIN_INS) {
+#ifdef __DARWIN__
+		i += uprintf(i,api->scrn_len+1,api->bclr|(api->cclr<<4),"+/");
+#endif
 		i += uprintf(i,api->scrn_len+1,api->bclr|(api->cclr<<4),"INS");
 		i += uprintf(i,api->scrn_len+1,BLACK|(api->cclr<<4),"ert Item  ");
 	}
 	if(mode&WIN_DEL) {
+#ifdef __DARWIN__
+		i += uprintf(i,api->scrn_len+1,api->bclr|(api->cclr<<4),"fn-");
+#endif
 		i += uprintf(i,api->scrn_len+1,api->bclr|(api->cclr<<4),"DEL");
 		i += uprintf(i,api->scrn_len+1,BLACK|(api->cclr<<4),"ete Item  ");
 	}
@@ -2460,7 +2468,6 @@ void bottomline(int mode)
 	clreol();
 }
 
-
 /*****************************************************************************/
 /* Generates a 24 character ASCII string that represents the time_t pointer  */
 /* Used as a replacement for ctime()                                         */
-- 
GitLab