diff -rc pine4.42/pico/display.c pine4.42.insertpat/pico/display.c *** pine4.42/pico/display.c Tue Nov 13 17:17:33 2001 --- pine4.42.insertpat/pico/display.c Thu Nov 22 02:04:19 2001 *************** *** 1454,1459 **** --- 1454,1472 ---- b++; continue; + case (CTRL|'N'): /* Insert pattern */ + if (pat[0] != '\0'){ + strcat(buf,pat); + pputs(pat,1); + b += strlen(pat); + changed = TRUE; + } + else + (*term.t_beep)(); + continue; + + + case (CTRL|'G') : /* CTRL-G help */ if(term.t_mrow == 0 && km_popped == 0){ movecursor(term.t_nrow-2, 0); diff -rc pine4.42/pico/search.c pine4.42.insertpat/pico/search.c *** pine4.42/pico/search.c Thu Jun 21 10:50:05 2001 --- pine4.42.insertpat/pico/search.c Thu Nov 22 02:04:19 2001 *************** *** 494,500 **** register int s; int i = 0; char tpat[NPAT+20]; ! EXTRAKEYS menu_pat[7]; menu_pat[i = 0].name = "^Y"; menu_pat[i].label = "FirstLine"; --- 494,500 ---- register int s; int i = 0; char tpat[NPAT+20]; ! EXTRAKEYS menu_pat[9]; menu_pat[i = 0].name = "^Y"; menu_pat[i].label = "FirstLine"; *************** *** 528,533 **** --- 528,539 ---- KS_OSDATASET(&menu_pat[i], KS_NONE); } + if (pat[0] != '\0'){ + menu_pat[++i].name = "^N"; + menu_pat[i].label = "InsPat"; + menu_pat[i].key = (CTRL|'N'); + KS_OSDATASET(&menu_pat[i], KS_NONE);} + menu_pat[++i].name = NULL; strcpy(tpat, prompt); /* copy prompt to output string */ *************** *** 575,588 **** { int i, n; char tpat[NPAT+20]; ! EXTRAKEYS menu_pat[2]; menu_pat[i = 0].name = "^T"; menu_pat[i].label = "No Line Number"; menu_pat[i].key = (CTRL|'T'); ! KS_OSDATASET(&menu_pat[i++], KS_NONE); ! menu_pat[i].name = NULL; tpat[0] = '\0'; while(1) --- 581,600 ---- { int i, n; char tpat[NPAT+20]; ! EXTRAKEYS menu_pat[3]; menu_pat[i = 0].name = "^T"; menu_pat[i].label = "No Line Number"; menu_pat[i].key = (CTRL|'T'); ! KS_OSDATASET(&menu_pat[i], KS_NONE); ! if (pat[0] != '\0'){ ! menu_pat[++i].name = "^N"; ! menu_pat[i].label = "InsPat"; ! menu_pat[i].key = (CTRL|'N'); ! KS_OSDATASET(&menu_pat[i], KS_NONE);} ! ! menu_pat[++i].name = NULL; tpat[0] = '\0'; while(1)