summaryrefslogtreecommitdiff
path: root/chinese/pine4
diff options
context:
space:
mode:
authorSteve Price <steve@FreeBSD.org>1999-12-27 00:58:54 +0000
committerSteve Price <steve@FreeBSD.org>1999-12-27 00:58:54 +0000
commit965c27e2366f4e1992fd774ba5d3af054aa5a5d8 (patch)
tree630413b14473fedcca64c24adf6f02f934d2cd1a /chinese/pine4
parentAllow multiple (different) font families to be used by our Russian (diff)
Update to version 4.21.
PR: 14994 Submitted by: maintainer
Diffstat (limited to 'chinese/pine4')
-rw-r--r--chinese/pine4/Makefile6
-rw-r--r--chinese/pine4/distinfo2
-rw-r--r--chinese/pine4/files/patch-ba64
-rw-r--r--chinese/pine4/files/patch-bb8
-rw-r--r--chinese/pine4/files/patch-bd124
-rw-r--r--chinese/pine4/files/patch-be10
-rw-r--r--chinese/pine4/files/patch-bf382
-rw-r--r--chinese/pine4/files/patch-bh6
-rw-r--r--chinese/pine4/files/patch-bi70
-rw-r--r--chinese/pine4/files/patch-bk116
-rw-r--r--chinese/pine4/files/patch-bn16
-rw-r--r--chinese/pine4/files/patch-bo10
-rw-r--r--chinese/pine4/files/patch-br14
-rw-r--r--chinese/pine4/files/pine.conf4
-rw-r--r--chinese/pine4/pkg-descr2
15 files changed, 419 insertions, 415 deletions
diff --git a/chinese/pine4/Makefile b/chinese/pine4/Makefile
index d2b62bea3e31..106c259a2ac1 100644
--- a/chinese/pine4/Makefile
+++ b/chinese/pine4/Makefile
@@ -1,14 +1,14 @@
# New ports collection makefile for: pine
# http://www.washington.edu/pine/
-# Version required: 4.20
+# Version required: 4.21
# Date created: 15 July 1998
# Whom: Tai-hwa Liang <avatar@www.mmlab.cse.yzu.edu.tw>
#
# $FreeBSD$
#
-DISTNAME= pine4.20
-PKGNAME= zh-pine-4.20
+DISTNAME= pine4.21
+PKGNAME= zh-pine-4.21
CATEGORIES= chinese mail news
MASTER_SITES= ftp://ftp.cac.washington.edu/pine/
diff --git a/chinese/pine4/distinfo b/chinese/pine4/distinfo
index 2859144ecea3..2c71984e0b32 100644
--- a/chinese/pine4/distinfo
+++ b/chinese/pine4/distinfo
@@ -1 +1 @@
-MD5 (pine4.20.tar.gz) = 9b60a049e3575fc0b1a201f5f0105f14
+MD5 (pine4.21.tar.gz) = 9252a061387de806f8aa1ced885d41f6
diff --git a/chinese/pine4/files/patch-ba b/chinese/pine4/files/patch-ba
index d69702ebe33c..4c5ba5c9ed15 100644
--- a/chinese/pine4/files/patch-ba
+++ b/chinese/pine4/files/patch-ba
@@ -1,5 +1,5 @@
---- pine/mailcmd.c.orig Tue Oct 12 06:13:50 1999
-+++ pine/mailcmd.c Thu Oct 14 13:29:28 1999
+--- pine/mailcmd.c.orig Wed Nov 17 09:51:48 1999
++++ pine/mailcmd.c Fri Nov 19 18:24:04 1999
@@ -115,39 +115,39 @@
/*
* List of Select options used by apply_* functions...
@@ -529,7 +529,7 @@
if(state->io_error_on_stream) {
@@ -1844,7 +1839,7 @@
- if(msgno_any_exceptions(stream, msgmap, MSG_EX_DELETE)
+ if(msgno_any_deletedparts(stream, msgmap)
&& want_to("Saved copy will NOT include entire message! Continue",
'y', 'n', NO_HELP, WT_FLUSH_IN | WT_SEQ_SENSITIVE) != 'y'){
- cmd_cancelled("Save message");
@@ -824,24 +824,26 @@
old_folder);
}
}
-@@ -5018,13 +5012,13 @@
+@@ -5018,14 +5012,13 @@
/* UWIN doesn't want to see this message */
if(!ps_global->nr_mode)
- q_status_message7(SM_ORDER, 0, 4, "%s \"%s\" opened with %s message%s%s",
-+ q_status_message7(SM_ORDER, 0, 4, "%s \"%s\" 已開啟,共 %s 封信%s",
++ q_status_message7(SM_ORDER, 0, 4, "%s \"%s\" 已開啟,共 %s 封信",
IS_NEWS(ps_global->mail_stream)
- ? "News group" : "Folder",
+ ? "新聞組群" : "信件匣",
pretty_fn(newfolder),
comatose(mn_get_total(ps_global->msgmap)),
- plural(mn_get_total(ps_global->msgmap)),
+- plural(mn_get_total(ps_global->msgmap)),
- READONLY_FOLDER ? " READONLY" : "",
+- NULL, NULL);
+ READONLY_FOLDER ? " 唯讀" : "",
- NULL, NULL);
++ NULL, NULL, NULL);
#ifdef _WINDOWS
-@@ -5191,9 +5185,9 @@
+ mswin_settitle(pretty_fn(newfolder));
+@@ -5191,9 +5184,9 @@
char ing[4];
if(final_msg)
@@ -853,7 +855,7 @@
buff1[0] = '\0';
buff2[0] = '\0';
-@@ -5202,7 +5196,7 @@
+@@ -5202,7 +5195,7 @@
stream->mailbox));
if(!stream->rdonly){
@@ -862,7 +864,7 @@
flush_status_messages(1);
/*
-@@ -5255,10 +5249,8 @@
+@@ -5255,10 +5248,8 @@
}
else{
sprintf(prompt_b,
@@ -875,7 +877,7 @@
ret = want_to(prompt_b, 'y', 0, NO_HELP, WT_NORM);
}
-@@ -5269,13 +5261,10 @@
+@@ -5269,13 +5260,10 @@
if(ret == 'y'){
sprintf(buff2,
@@ -890,7 +892,7 @@
long2string(delete_count));
if(final_msg)
*final_msg = cpystr(buff2);
-@@ -5348,17 +5337,15 @@
+@@ -5348,17 +5336,15 @@
if(stream->nmsgs){
sprintf(buff2,
@@ -912,7 +914,7 @@
ing, pretty_fn(folder));
}
-@@ -5377,7 +5364,7 @@
+@@ -5377,7 +5363,7 @@
q_status_message(SM_ORDER,
F_ON(F_AUTO_READ_MSGS,ps_global) ? 0 : 3, 5, moved_msg);
@@ -921,7 +923,7 @@
ing, pretty_fn(folder));
if(F_ON(F_NEWS_CATCHUP, ps_global)){
-@@ -5414,7 +5401,7 @@
+@@ -5414,7 +5400,7 @@
}
else
sprintf(buff2,
@@ -930,7 +932,7 @@
ing, pretty_fn(folder));
if(final_msg)
-@@ -6033,18 +6020,18 @@
+@@ -6093,18 +6079,18 @@
if(in_index && F_ON(F_PRINT_INDEX, state)){
char m[10];
static ESCKEY_S prt_opts[] = {
@@ -954,7 +956,7 @@
if(agg)
restore_selected(msgmap);
-@@ -6061,11 +6048,11 @@
+@@ -6121,11 +6107,11 @@
}
if(do_index)
@@ -969,7 +971,7 @@
if(open_printer(prompt) < 0){
if(agg)
-@@ -6329,7 +6316,7 @@
+@@ -6389,7 +6375,7 @@
/* else fall thru as if cancelled */
case 1 :
@@ -978,7 +980,7 @@
done++;
break;
-@@ -6642,7 +6629,7 @@
+@@ -6725,7 +6711,7 @@
sel_opts = sel_opts2;
if(old_tot = any_lflagged(msgmap, MN_SLCT)){
i = get_lflag(state->mail_stream, msgmap, mn_get_cur(msgmap), MN_SLCT);
@@ -987,7 +989,7 @@
sel_opts += 2; /* disable extra options */
switch(q = radio_buttons(sel_pmt1, q_line, sel_opts1, 'c', 'x', help,
RB_NORM)){
-@@ -6686,7 +6673,7 @@
+@@ -6769,7 +6755,7 @@
*/
switch(q){
case 'x': /* cancel */
@@ -996,7 +998,7 @@
return;
case 'c' : /* select/unselect current */
-@@ -6895,14 +6882,14 @@
+@@ -6978,14 +6964,14 @@
sel_opts3[i].ch = '*';
sel_opts3[i].rval = '*';
sel_opts3[i].name = "*";
@@ -1013,7 +1015,7 @@
}
/*
-@@ -6914,7 +6901,7 @@
+@@ -6997,7 +6983,7 @@
sel_opts3[i].ch = 'b';
sel_opts3[i].rval = 'b';
sel_opts3[i].name = "B";
@@ -1022,7 +1024,7 @@
}
if(F_ON(F_ENABLE_PRYNT, state)){
-@@ -6985,7 +6972,7 @@
+@@ -7068,7 +7054,7 @@
break;
case 'x' : /* cancel */
@@ -1031,7 +1033,7 @@
rv = 0;
break;
-@@ -7102,7 +7089,7 @@
+@@ -7185,7 +7171,7 @@
*t = '\0';
if(r == 1 || numbers[0] == '\0'){
@@ -1040,7 +1042,7 @@
return(1);
}
else
-@@ -7228,7 +7215,7 @@
+@@ -7311,7 +7297,7 @@
prompt, sel_date_opt, help, &flags);
switch (r){
case 1 :
@@ -1049,7 +1051,7 @@
return(1);
case 3 :
-@@ -7350,15 +7337,15 @@
+@@ -7433,15 +7419,15 @@
ekey[0].ch = ctrl('T');
ekey[0].name = "^T";
ekey[0].rval = 10;
@@ -1068,7 +1070,7 @@
break;
case 's' :
-@@ -7366,7 +7353,7 @@
+@@ -7449,7 +7435,7 @@
ekey[0].ch = ctrl('X');
ekey[0].name = "^X";
ekey[0].rval = 13;
@@ -1077,7 +1079,7 @@
break;
case 'a' :
-@@ -7477,7 +7464,7 @@
+@@ -7560,7 +7546,7 @@
}
if(type == 'x' || r == 'x'){
@@ -1086,7 +1088,7 @@
return(1);
}
-@@ -7735,7 +7722,7 @@
+@@ -7818,7 +7804,7 @@
NO_HELP, RB_NORM);
if(s == 'x'){
@@ -1095,7 +1097,7 @@
return(1);
}
else if(s == '!')
-@@ -7832,7 +7819,7 @@
+@@ -7915,7 +7901,7 @@
/*----- String together the prompt ------*/
tmp[1] = '\0';
@@ -1104,7 +1106,7 @@
for(i = 0; state->sort_types[i] != EndofList; i++) {
sorts[i].rval = i;
p = sorts[i].label = sort_name(state->sort_types[i]);
-@@ -7849,7 +7836,7 @@
+@@ -7932,7 +7918,7 @@
sorts[i].ch = 'r';
sorts[i].rval = 'r';
sorts[i].name = cpystr("R");
@@ -1113,7 +1115,7 @@
sorts[++i].ch = -1;
help = h_select_sort;
-@@ -7862,7 +7849,7 @@
+@@ -7945,7 +7931,7 @@
}
else{
retval = 0;
diff --git a/chinese/pine4/files/patch-bb b/chinese/pine4/files/patch-bb
index 0a46e0d684eb..5b9e0dc13987 100644
--- a/chinese/pine4/files/patch-bb
+++ b/chinese/pine4/files/patch-bb
@@ -1,5 +1,5 @@
---- pine/mailindx.c.orig Fri Oct 1 03:44:27 1999
-+++ pine/mailindx.c Thu Oct 14 12:26:44 1999
+--- pine/mailindx.c.orig Tue Nov 9 08:20:33 1999
++++ pine/mailindx.c Fri Nov 19 16:18:24 1999
@@ -55,10 +55,10 @@
/*
* Some common Command Bindings
@@ -294,7 +294,7 @@
sort_name(new_sort));
}
-@@ -6127,7 +6127,7 @@
+@@ -6135,7 +6135,7 @@
icache.name = temp_nam(NULL, "pi");
if((icache.cache = (void *)fopen(icache.name,"w+b")) == NULL){
@@ -303,7 +303,7 @@
fatal(tmp_20k_buf);
}
-@@ -6523,10 +6523,10 @@
+@@ -6531,10 +6531,10 @@
&& format_message(mn_m2raw(ps_global->msgmap,
mn_get_cur(ps_global->msgmap)),
env, body, FM_NEW_MESS, pc)){
diff --git a/chinese/pine4/files/patch-bd b/chinese/pine4/files/patch-bd
index 02422af079c0..d53ca5eb8e00 100644
--- a/chinese/pine4/files/patch-bd
+++ b/chinese/pine4/files/patch-bd
@@ -1,6 +1,6 @@
---- pine/mailview.c.orig Tue Oct 12 09:19:53 1999
-+++ pine/mailview.c Thu Oct 14 12:25:15 1999
-@@ -159,8 +159,8 @@
+--- pine/mailview.c.orig Tue Nov 16 03:03:45 1999
++++ pine/mailview.c Fri Nov 19 16:18:24 1999
+@@ -162,8 +162,8 @@
static struct key view_keys[] =
{HELP_MENU,
OTHER_MENU,
@@ -11,7 +11,7 @@
PREVMSG_MENU,
NEXTMSG_MENU,
PREVPAGE_MENU,
-@@ -185,11 +185,11 @@
+@@ -188,11 +188,11 @@
HELP_MENU,
OTHER_MENU,
@@ -27,7 +27,7 @@
JUMP_MENU,
TAB_MENU,
HDRMODE_MENU,
-@@ -219,7 +219,7 @@
+@@ -222,7 +222,7 @@
#define FLAG_KEY 34
#define VIEW_PIPE_KEY 35
@@ -36,7 +36,7 @@
{HELP_MENU,
WHEREIS_MENU,
QUIT_MENU,
-@@ -243,7 +243,7 @@
+@@ -246,7 +246,7 @@
NEXTMSG_MENU,
PREVPAGE_MENU,
NEXTPAGE_MENU,
@@ -45,7 +45,7 @@
JUMP_MENU,
PRYNTTXT_MENU,
SAVE_MENU,
-@@ -265,7 +265,7 @@
+@@ -268,7 +268,7 @@
static struct key simple_text_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -54,7 +54,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -274,7 +274,7 @@
+@@ -277,7 +277,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
FWDEMAIL_MENU,
@@ -63,7 +63,7 @@
INST_KEY_MENU(simple_text_keymenu, simple_text_keys);
-@@ -430,7 +430,7 @@
+@@ -437,7 +437,7 @@
* we were viewing. If so, make sure we don't just come back.
*/
if(mn_get_total(ps->msgmap) <= 0L || !ps->mail_stream){
@@ -72,7 +72,7 @@
ps->next_screen = mail_index_screen;
break;
}
-@@ -444,7 +444,7 @@
+@@ -452,7 +452,7 @@
body = NULL;
if(!(env = mail_fetchstructure(ps->mail_stream, raw_msgno, &body))
|| !(mc = mail_elt(ps->mail_stream, raw_msgno))){
@@ -81,7 +81,7 @@
comatose(mn_get_cur(ps->msgmap)));
dprint(1, (debugfile, "!!!! ERROR fetching %s of msg %ld\n",
env ? "elt" : "env", mn_get_cur(ps->msgmap)));
-@@ -502,7 +502,7 @@
+@@ -510,7 +510,7 @@
memset(&scrollargs, 0, sizeof(SCROLL_S));
scrollargs.text.text = so_text(store);
scrollargs.text.src = src;
@@ -90,7 +90,7 @@
/*
* make first selectable handle the default
-@@ -528,11 +528,11 @@
+@@ -536,11 +536,11 @@
offset = 0L;
}
@@ -104,7 +104,7 @@
scrollargs.keys.menu = &view_keymenu;
scrollargs.keys.what = save_what;
setbitmap(scrollargs.keys.bitmap);
-@@ -1319,7 +1319,7 @@
+@@ -1327,7 +1327,7 @@
/*---- format and copy envelope ----*/
if(ps_global->full_header)
q_status_message(SM_INFO, 0, 3,
@@ -113,7 +113,7 @@
HD_INIT(&h, ps_global->VAR_VIEW_HEADERS, ps_global->view_all_except,
FE_DEFAULT);
-@@ -1358,7 +1358,7 @@
+@@ -1366,7 +1366,7 @@
if(append_file_name)
fs_give((void **)&append_file_name);
@@ -122,7 +122,7 @@
error_description(errno));
return(0);
}
-@@ -1665,7 +1665,7 @@
+@@ -1675,7 +1675,7 @@
write_error:
if(!(flgs & FM_DISPLAY))
@@ -131,7 +131,7 @@
decode_err ? decode_err : error_description(errno));
return(0);
-@@ -2137,12 +2137,12 @@
+@@ -2237,12 +2237,12 @@
char prompt[256], tmp[MAILTMPLEN];
int rc, flags, local_h;
static ESCKEY_S launch_opts[] = {
@@ -148,7 +148,7 @@
{-1, 0, NULL, NULL}};
if(handle->type == URL){
-@@ -2168,11 +2168,11 @@
+@@ -2268,11 +2268,11 @@
if(!local_h){
if(ps_global->vars[V_BROWSER].is_fixed){
q_status_message(SM_ORDER, 3, 4,
@@ -162,7 +162,7 @@
'y', 0, NO_HELP, WT_SEQ_SENSITIVE) == 'y'){
/* Prompt for the displayer? */
tmp[0] = '\0';
-@@ -2216,7 +2216,7 @@
+@@ -2316,7 +2316,7 @@
}
else{
q_status_message1(SM_ORDER | SM_DING, 2, 2,
@@ -171,7 +171,7 @@
error_description(errno));
continue;
}
-@@ -2260,8 +2260,8 @@
+@@ -2360,8 +2360,8 @@
max(0,sc - 25), handle->h.url.path+7,
(strlen(handle->h.url.path+7) > max(0,sc-25)) ? "..." : "");
else
@@ -182,7 +182,7 @@
(handle->type == URL) ? "\"" : "",
max(0,sc-27),
(handle->type == URL) ? handle->h.url.path : "",
-@@ -2320,10 +2320,10 @@
+@@ -2420,10 +2420,10 @@
OE_KEEP_TRAILING_SPACE |
OE_DISALLOW_HELP;
@@ -195,7 +195,7 @@
NULL, NO_HELP, &flags);
if(rc == 0){
if(flags & OE_USER_MODIFIED){
-@@ -3639,11 +3639,11 @@
+@@ -3763,11 +3763,11 @@
mode = PIPE_RESET | PIPE_USER ;
if(syspipe = open_system_pipe(cmd, NULL, NULL, mode, 0)){
close_system_pipe(&syspipe);
@@ -209,7 +209,7 @@
}
else if(f = url_local_handler(handle->h.url.path)){
if((*f)(handle->h.url.path) > 1)
-@@ -3651,7 +3651,7 @@
+@@ -3775,7 +3775,7 @@
}
else
q_status_message1(SM_ORDER, 2, 2,
@@ -218,7 +218,7 @@
handle->h.url.path);
return(rv);
-@@ -3663,7 +3663,7 @@
+@@ -3787,7 +3787,7 @@
int return_value;
{
q_status_message(SM_ORDER | SM_DING, 3, 3,
@@ -227,7 +227,7 @@
return(return_value);
}
-@@ -4008,7 +4008,7 @@
+@@ -4132,7 +4132,7 @@
}
else
q_status_message(SM_ORDER | SM_DING, 3, 4,
@@ -236,7 +236,7 @@
outta_here:
if(outgoing)
-@@ -4079,7 +4079,7 @@
+@@ -4203,7 +4203,7 @@
else if(errstr)
q_status_message(SM_ORDER|SM_DING, 3, 3, errstr);
else
@@ -245,7 +245,7 @@
break;
-@@ -4102,7 +4102,7 @@
+@@ -4226,7 +4226,7 @@
if(uid_val != ps_global->mail_stream->uid_validity){
/* Complain! */
q_status_message(SM_ORDER|SM_DING, 3, 3,
@@ -254,7 +254,7 @@
}
if(uid){
-@@ -4118,7 +4118,7 @@
+@@ -4242,7 +4242,7 @@
if(i > mn_get_total(ps_global->msgmap))
q_status_message(SM_ORDER, 2, 3,
@@ -263,7 +263,7 @@
}
else if(search){
/*
-@@ -4139,9 +4139,9 @@
+@@ -4263,9 +4263,9 @@
if(i = any_lflagged(ps_global->msgmap, MN_SLCT)){
extern long zoom_index();
@@ -276,7 +276,7 @@
/* Zoom the index! */
zoom_index(ps_global, ps_global->msgmap);
}
-@@ -4289,7 +4289,7 @@
+@@ -4413,7 +4413,7 @@
if(auth && *auth != '*')
q_status_message(SM_ORDER, 3, 3,
@@ -285,7 +285,7 @@
/*
* At this point our structure should contain the
-@@ -4373,7 +4373,7 @@
+@@ -4497,7 +4497,7 @@
if(i > mn_get_total(ps_global->msgmap))
q_status_message(SM_ORDER, 2, 3,
@@ -294,7 +294,7 @@
}
break;
-@@ -4490,7 +4490,7 @@
+@@ -4614,7 +4614,7 @@
}
else
q_status_message1(SM_ORDER | SM_DING, 0, 3,
@@ -303,7 +303,7 @@
return(1);
}
-@@ -4517,7 +4517,7 @@
+@@ -4641,7 +4641,7 @@
dprint(2, (debugfile, "-- bogus url \"%s\": %s\n",
url ? url : "<NULL URL>", reason));
if(url)
@@ -312,7 +312,7 @@
(void *) (strchr(url, ':') - url), url, reason);
return(0);
-@@ -4678,7 +4678,7 @@
+@@ -4800,7 +4800,7 @@
write_error:
if(style == QStatus)
@@ -321,7 +321,7 @@
error_description(errno));
return(1);
-@@ -4931,7 +4931,7 @@
+@@ -5053,7 +5053,7 @@
gf_set_so_readc(&tmp_gc, df_store);
if(errstr = dfilter(display_filter, tmp_store, tmp_pc, NULL)){
q_status_message1(SM_ORDER | SM_DING, 3, 3,
@@ -330,7 +330,7 @@
rv = FHT_WRTERR;
}
else
-@@ -4941,7 +4941,7 @@
+@@ -5063,7 +5063,7 @@
}
else{
q_status_message(SM_ORDER | SM_DING, 3, 3,
@@ -339,7 +339,7 @@
rv = FHT_WRTERR;
}
}
-@@ -4983,7 +4983,7 @@
+@@ -5105,7 +5105,7 @@
if(errstr = gf_pipe(tmp_gc, final_pc)){
rv = FHT_WRTERR;
q_status_message1(SM_ORDER | SM_DING, 3, 3,
@@ -348,7 +348,7 @@
}
}
-@@ -5121,7 +5121,7 @@
+@@ -5243,7 +5243,7 @@
format_newsgroup_string("Newsgroups: ", e->newsgroups, flags, pc);
if(e->ngbogus)
q_status_message(SM_ORDER, 0, 3,
@@ -357,7 +357,7 @@
}
if((which & FE_FOLLOWUPTO) && e->followup_to)
-@@ -5880,7 +5880,7 @@
+@@ -6002,7 +6002,7 @@
}
if(!sparms->bar.title)
@@ -366,7 +366,7 @@
if(sparms->bar.style == TitleBarNone)
sparms->bar.style = MsgTextPercent;
-@@ -6053,7 +6053,7 @@
+@@ -6175,7 +6175,7 @@
}
if(first_view && num_display_lines >= scroll_text_lines())
@@ -375,7 +375,7 @@
force = 0; /* may not need to next time around */
-@@ -6191,7 +6191,7 @@
+@@ -6313,7 +6313,7 @@
whereis_pos.row = 0;
if(sparms->help.text == NO_HELP || ps_global->nr_mode){
q_status_message(SM_ORDER, 0, 5,
@@ -384,7 +384,7 @@
break;
}
-@@ -6230,7 +6230,7 @@
+@@ -6352,7 +6352,7 @@
cur_top_line -= scroll_lines;
if(cur_top_line <= 0){
cur_top_line = 0;
@@ -393,7 +393,7 @@
STYLE_NAME(sparms));
}
}
-@@ -6246,7 +6246,7 @@
+@@ -6368,7 +6368,7 @@
}
if(!next_handle)
@@ -402,7 +402,7 @@
STYLE_NAME(sparms));
}
-@@ -6264,12 +6264,12 @@
+@@ -6386,12 +6386,12 @@
cur_top_line += scroll_lines;
if(cur_top_line + num_display_lines >= scroll_text_lines())
@@ -417,7 +417,7 @@
STYLE_NAME(sparms));
/* hilite last available handle */
if(sparms->text.handles){
-@@ -6339,11 +6339,11 @@
+@@ -6461,11 +6461,11 @@
whereis_pos.row = 0;
cur_top_line++;
if(cur_top_line + num_display_lines >= scroll_text_lines())
@@ -431,7 +431,7 @@
STYLE_NAME(sparms));
}
-@@ -6406,11 +6406,11 @@
+@@ -6528,11 +6528,11 @@
if(cur_top_line){
cur_top_line--;
if(cur_top_line == 0)
@@ -445,7 +445,7 @@
STYLE_NAME(sparms));
}
-@@ -6444,7 +6444,7 @@
+@@ -6566,7 +6566,7 @@
}
q_status_message1(SM_ORDER, 0, 1,
@@ -454,7 +454,7 @@
STYLE_NAME(sparms));
}
-@@ -6478,7 +6478,7 @@
+@@ -6600,7 +6600,7 @@
}
q_status_message1(SM_ORDER, 0, 1,
@@ -463,7 +463,7 @@
STYLE_NAME(sparms));
}
-@@ -6611,8 +6611,8 @@
+@@ -6751,8 +6751,8 @@
q_status_message(SM_ORDER, 0, 3, tmp_20k_buf);
else
q_status_message2(SM_ORDER, 0, 3,
@@ -474,19 +474,19 @@
int2string(whereis_pos.row));
if(key){
-@@ -6629,9 +6629,9 @@
+@@ -6769,9 +6769,9 @@
}
}
else if(found_on == -1)
- cmd_cancelled("Search");
+ cmd_cancelled("搜尋");
else
-- q_status_message(SM_ORDER | SM_DING, 0, 3, "Word not found");
-+ q_status_message(SM_ORDER | SM_DING, 0, 3, "找不到該字");
+- q_status_message(SM_ORDER, 0, 3, "Word not found");
++ q_status_message(SM_ORDER, 0, 3, "找不到該字");
}
break;
-@@ -7002,13 +7002,13 @@
+@@ -7144,13 +7144,13 @@
int rc, flags;
static char search_string[MAX_SEARCH+1] = { '\0' };
static ESCKEY_S word_search_key[] = { { 0, 0, "", "" },
@@ -503,23 +503,21 @@
help = NO_HELP;
nsearch_string[0] = '\0';
-@@ -7023,13 +7023,13 @@
+@@ -7165,11 +7165,11 @@
continue;
}
else if(rc == 10){
- strcpy(report, "Searched to First Line.");
+ strcpy(report, "搜尋至第一行。");
- cursor_pos->row = 0;
- cursor_pos->col = 0;
- return(0);
+ return(-4);
}
else if(rc == 11){
- strcpy(report, "Searched to Last Line.");
+ strcpy(report, "搜尋至最後一行。");
- cursor_pos->row = max(scroll_text_lines() - 1, 0);
- cursor_pos->col = 0;
- return(cursor_pos->row);
-@@ -8165,12 +8165,12 @@
+ return(-5);
+ }
+
+@@ -8308,12 +8308,12 @@
if(*msg_p[0])
for(i = 0; i < msg_q; i++)
q_status_message2(SM_ORDER, 3, 4,
@@ -534,7 +532,7 @@
fclose(f);
f = NULL;
-@@ -8183,7 +8183,7 @@
+@@ -8326,7 +8326,7 @@
q_status_message2(SM_ORDER, 0, 4, "%s%s", title,
alt_msg
? alt_msg
@@ -543,7 +541,7 @@
fclose(f);
f = NULL;
}
-@@ -8198,7 +8198,7 @@
+@@ -8341,7 +8341,7 @@
memset(&sargs, 0, sizeof(SCROLL_S));
sargs.text.text = f;
sargs.text.src = FileStar;
@@ -552,7 +550,7 @@
sargs.bar.title = title;
sargs.bar.style = TextPercent;
sargs.help.text = h_simple_text_view;
-@@ -8399,7 +8399,7 @@
+@@ -8542,7 +8542,7 @@
break;
case -1 :
diff --git a/chinese/pine4/files/patch-be b/chinese/pine4/files/patch-be
index 17358845e570..7ffc020268fd 100644
--- a/chinese/pine4/files/patch-be
+++ b/chinese/pine4/files/patch-be
@@ -1,6 +1,6 @@
---- pine/newmail.c.orig Sat Oct 9 00:46:59 1999
-+++ pine/newmail.c Thu Oct 14 12:19:31 1999
-@@ -314,24 +314,15 @@
+--- pine/newmail.c.orig Tue Nov 2 08:13:10 1999
++++ pine/newmail.c Fri Nov 19 16:18:24 1999
+@@ -318,24 +318,15 @@
ENVELOPE *e;
char subject[200], from[2*MAX_SCREEN_COLS],
intro[MAX_SCREEN_COLS+1];
@@ -29,7 +29,7 @@
if(e->from->personal)
istrncpy(from + ((number > 1L) ? 18 : 6),
(char *) rfc1522_decode((unsigned char *) tmp_20k_buf,
-@@ -348,13 +339,13 @@
+@@ -352,13 +343,13 @@
if(number <= 1L) {
if(e && e->subject){
@@ -45,7 +45,7 @@
if(!from[0])
subject[1] = toupper((unsigned char)subject[1]);
-@@ -364,29 +355,29 @@
+@@ -368,29 +359,29 @@
if(!folder) {
if(number > 1)
diff --git a/chinese/pine4/files/patch-bf b/chinese/pine4/files/patch-bf
index f13bd74fed4c..19cd86975156 100644
--- a/chinese/pine4/files/patch-bf
+++ b/chinese/pine4/files/patch-bf
@@ -1,5 +1,5 @@
---- pine/other.c.orig Thu Oct 14 13:46:05 1999
-+++ pine/other.c Thu Oct 14 17:02:49 1999
+--- pine/other.c.orig Sat Nov 6 04:00:18 1999
++++ pine/other.c Fri Nov 19 17:40:07 1999
@@ -53,18 +53,18 @@
#define BODY_LINES(X) ((X)->ttyo->screen_rows -HEADER_ROWS(X)-FOOTER_ROWS(X))
@@ -27,7 +27,7 @@
typedef struct edit_arb {
struct variable *v;
-@@ -344,16 +344,14 @@
+@@ -349,16 +349,14 @@
#ifndef NO_KEYBOARD_LOCK
ClearScreen();
@@ -47,7 +47,7 @@
fflush(stdout);
#endif
}
-@@ -365,12 +363,12 @@
+@@ -370,12 +368,12 @@
#ifndef NO_KEYBOARD_LOCK
ClearScreen();
@@ -63,7 +63,7 @@
fflush(stdout);
#endif
}
-@@ -412,9 +410,9 @@
+@@ -417,9 +415,9 @@
char prompt[50];
sprintf(prompt,
@@ -76,7 +76,7 @@
flags = OE_PASSWD;
rc = optionally_enter(pw, -FOOTER_ROWS(ps), 0, 30,
-@@ -423,7 +421,7 @@
+@@ -428,7 +426,7 @@
if(rc == 3)
help = help == NO_HELP ? h_kb_lock : NO_HELP;
else if(rc == 1 || pw[0] == '\0'){
@@ -85,7 +85,7 @@
return(-1);
}
else if(rc != 4)
-@@ -434,14 +432,14 @@
+@@ -439,14 +437,14 @@
strcpy(inpasswd, pw);
else if(strcmp(inpasswd, pw)){
q_status_message(SM_ORDER, 0, 2,
@@ -103,7 +103,7 @@
return(-1);
}
-@@ -455,7 +453,7 @@
+@@ -460,7 +458,7 @@
while(strcmp(inpasswd, passwd)){
if(passwd[0])
q_status_message(SM_ORDER | SM_DING, 3, 3,
@@ -112,7 +112,7 @@
help = NO_HELP;
while(1){
-@@ -463,7 +461,7 @@
+@@ -468,7 +466,7 @@
flags = OE_PASSWD | OE_DISALLOW_CANCEL;
rc = optionally_enter(passwd, -FOOTER_ROWS(ps), 0, 30,
@@ -121,7 +121,7 @@
help, &flags);
if(rc == 3) {
help = help == NO_HELP ? h_oe_keylock : NO_HELP;
-@@ -478,7 +476,7 @@
+@@ -483,7 +481,7 @@
if(old_suspend)
F_TURN_ON(F_CAN_SUSPEND, ps_global);
@@ -130,7 +130,7 @@
return(0);
}
-@@ -516,7 +514,7 @@
+@@ -521,7 +519,7 @@
struct variable *vars = ps_global->vars;
if(!signature_path(sigfile, sig_path, MAXPATH))
@@ -139,7 +139,7 @@
memset(&pbuf, 0, sizeof(PICO));
-@@ -593,7 +591,7 @@
+@@ -598,7 +596,7 @@
* Now alloc and init the text to pass pico
*/
if(!(msgso = so_get(PicoText, NULL, EDIT_ACCESS))){
@@ -148,7 +148,7 @@
dprint(1, (debugfile, "Can't alloc space for signature_edit"));
return(ret);
}
-@@ -604,7 +602,7 @@
+@@ -609,7 +607,7 @@
&& !(tmpso = so_get(FileStar, sig_path, READ_ACCESS))){
char *problem = error_description(errno);
@@ -157,7 +157,7 @@
sig_path, problem ? problem : "<NULL>");
ret = cpystr(errbuf);
-@@ -617,7 +615,7 @@
+@@ -622,7 +620,7 @@
gf_set_so_writec(&pc, msgso);
gf_filter_init(); /* no filters needed */
if(errstr = gf_pipe(gc, pc)){
@@ -166,7 +166,7 @@
ret = cpystr(errbuf);
}
-@@ -656,7 +654,7 @@
+@@ -661,7 +659,7 @@
gf_set_so_writec(&pc, tmpso); /* write sig file */
gf_filter_init(); /* no filters needed */
if(errstr = gf_pipe(gc, pc)){
@@ -175,7 +175,7 @@
errstr);
ret = cpystr(errbuf);
}
-@@ -666,7 +664,7 @@
+@@ -671,7 +669,7 @@
so_give(&tmpso);
}
else{
@@ -184,7 +184,7 @@
ret = cpystr(errbuf);
dprint(1, (debugfile, "signature_edit: can't write %s",
sig_path));
-@@ -695,8 +693,8 @@
+@@ -700,8 +698,8 @@
char *rstr = NULL;
void (*redraw)() = ps_global->redrawer;
static ESCKEY_S opts[] = {
@@ -195,7 +195,7 @@
{-1, 0, NULL, NULL}
};
-@@ -704,18 +702,18 @@
+@@ -709,18 +707,18 @@
fix_windsize(ps_global);
while(1){
@@ -217,7 +217,7 @@
break;
}
}
-@@ -730,28 +728,28 @@
+@@ -735,28 +733,28 @@
* * * * * * Start of Config Screen Support Code * * * * *
*/
@@ -255,7 +255,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU};
INST_KEY_MENU(config_text_keymenu, config_text_keys);
-@@ -760,13 +758,13 @@
+@@ -765,13 +763,13 @@
{HELP_MENU,
NULL_MENU,
EXIT_SETUP_MENU,
@@ -271,7 +271,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU};
INST_KEY_MENU(color_pattern_keymenu, color_pattern_keys);
-@@ -775,13 +773,13 @@
+@@ -780,13 +778,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -288,7 +288,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -789,8 +787,8 @@
+@@ -794,8 +792,8 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -299,7 +299,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -803,13 +801,13 @@
+@@ -808,13 +806,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -316,7 +316,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -817,7 +815,7 @@
+@@ -822,7 +820,7 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -325,7 +325,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -831,13 +829,13 @@
+@@ -836,13 +834,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -342,7 +342,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -846,7 +844,7 @@
+@@ -851,7 +849,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
@@ -351,7 +351,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -859,13 +857,13 @@
+@@ -864,13 +862,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -368,7 +368,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -873,8 +871,8 @@
+@@ -878,8 +876,8 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -379,7 +379,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -887,13 +885,13 @@
+@@ -892,13 +890,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -396,7 +396,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -902,10 +900,10 @@
+@@ -907,10 +905,10 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
@@ -409,7 +409,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU};
-@@ -915,13 +913,13 @@
+@@ -920,13 +918,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -426,7 +426,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -929,7 +927,7 @@
+@@ -934,7 +932,7 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -435,7 +435,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -943,13 +941,13 @@
+@@ -948,13 +946,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -452,7 +452,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -957,7 +955,7 @@
+@@ -962,7 +960,7 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -461,7 +461,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -971,13 +969,13 @@
+@@ -976,13 +974,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -478,7 +478,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -985,7 +983,7 @@
+@@ -990,7 +988,7 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -487,7 +487,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -999,13 +997,13 @@
+@@ -1004,13 +1002,13 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -504,7 +504,7 @@
PRYNTTXT_MENU,
WHEREIS_MENU,
-@@ -1013,7 +1011,7 @@
+@@ -1018,7 +1016,7 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -513,7 +513,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -1072,7 +1070,7 @@
+@@ -1077,7 +1075,7 @@
{HELP_MENU,
NULL_MENU,
EXIT_SETUP_MENU,
@@ -522,7 +522,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1087,7 +1085,7 @@
+@@ -1092,7 +1090,7 @@
{HELP_MENU,
NULL_MENU,
EXIT_SETUP_MENU,
@@ -531,7 +531,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1102,8 +1100,8 @@
+@@ -1107,8 +1105,8 @@
static struct key color_changing_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -542,7 +542,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1118,8 +1116,8 @@
+@@ -1123,8 +1121,8 @@
static struct key custom_color_changing_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -553,7 +553,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1134,8 +1132,8 @@
+@@ -1139,8 +1137,8 @@
static struct key color_rgb_changing_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -564,7 +564,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1151,8 +1149,8 @@
+@@ -1156,8 +1154,8 @@
static struct key custom_rgb_changing_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -575,7 +575,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1168,7 +1166,7 @@
+@@ -1173,7 +1171,7 @@
{HELP_MENU,
NULL_MENU,
EXIT_SETUP_MENU,
@@ -584,7 +584,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1183,7 +1181,7 @@
+@@ -1188,7 +1186,7 @@
{HELP_MENU,
OTHER_MENU,
EXIT_SETUP_MENU,
@@ -593,7 +593,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1197,8 +1195,8 @@
+@@ -1202,8 +1200,8 @@
OTHER_MENU,
NULL_MENU,
NULL_MENU,
@@ -604,7 +604,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -1211,7 +1209,7 @@
+@@ -1216,7 +1214,7 @@
{HELP_MENU,
NULL_MENU,
EXIT_SETUP_MENU,
@@ -613,7 +613,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1832,14 +1830,14 @@
+@@ -1837,14 +1835,14 @@
{HELP_MENU,
PRYNTTXT_MENU,
EXIT_SETUP_MENU,
@@ -630,7 +630,7 @@
WHEREIS_MENU};
INST_KEY_MENU(printer_edit_keymenu, printer_edit_keys);
-@@ -1847,7 +1845,7 @@
+@@ -1852,7 +1850,7 @@
{HELP_MENU,
PRYNTTXT_MENU,
EXIT_SETUP_MENU,
@@ -639,7 +639,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -1880,7 +1878,7 @@
+@@ -1885,7 +1883,7 @@
char *saved_printer;
OPT_SCREEN_S screen;
@@ -648,7 +648,7 @@
return;
saved_printer = cpystr(ps->VAR_PRINTER);
-@@ -1896,7 +1894,7 @@
+@@ -1901,7 +1899,7 @@
#ifdef OS2
= cpystr("\"Select\" a port or |pipe-command as your default printer.");
#else
@@ -657,7 +657,7 @@
#endif
new_confline(&ctmpa);
-@@ -2249,7 +2247,7 @@
+@@ -2254,7 +2252,7 @@
vsave = save_config_vars(ps);
switch(conf_scroll_screen(ps, &screen, start_line,
@@ -666,7 +666,7 @@
case 0:
break;
-@@ -2290,8 +2288,8 @@
+@@ -2295,8 +2293,8 @@
fs_give((void **)def_printer_line);
*def_printer_line = fs_get(36 + strlen(p) + 1);
@@ -677,7 +677,7 @@
fs_give((void **)&nick);
fs_give((void **)&cmd);
-@@ -2301,7 +2299,7 @@
+@@ -2306,7 +2304,7 @@
static struct key flag_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -686,7 +686,7 @@
TOGGLE_MENU,
PREV_MENU,
NEXT_MENU,
-@@ -2455,9 +2453,9 @@
+@@ -2460,9 +2458,9 @@
static struct key addr_select_keys[] =
{HELP_MENU,
@@ -698,7 +698,7 @@
PREV_MENU,
NEXT_MENU,
PREVPAGE_MENU,
-@@ -2471,29 +2469,29 @@
+@@ -2476,29 +2474,29 @@
static struct key addr_select_with_goback_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -734,7 +734,7 @@
FWDEMAIL_MENU,
SAVE_MENU,
WHEREIS_MENU};
-@@ -2502,14 +2500,14 @@
+@@ -2507,14 +2505,14 @@
static struct key addr_select_for_url_keys[] =
{HELP_MENU,
RCOMPOSE_MENU,
@@ -752,7 +752,7 @@
FWDEMAIL_MENU,
SAVE_MENU,
WHEREIS_MENU};
-@@ -2518,7 +2516,7 @@
+@@ -2523,7 +2521,7 @@
static struct key addr_select_exit_keys[] =
{NULL_MENU,
NULL_MENU,
@@ -761,7 +761,7 @@
KS_EXITMODE},
NULL_MENU,
NULL_MENU,
-@@ -2534,7 +2532,7 @@
+@@ -2539,7 +2537,7 @@
static struct key addr_select_goback_keys[] =
{NULL_MENU,
NULL_MENU,
@@ -770,7 +770,7 @@
KS_EXITMODE},
NULL_MENU,
NULL_MENU,
-@@ -2617,7 +2615,7 @@
+@@ -2622,7 +2620,7 @@
char *dn, *a;
char **cn, **org, **unit, **title, **mail, **sn;
BerElement *ber;
@@ -779,7 +779,7 @@
int indent, have_mail;
dn = NULL;
-@@ -2898,7 +2896,7 @@
+@@ -2903,7 +2901,7 @@
sprintf(ee+2, "%s, No Matches Returned",
ldap_err2string(wp_err->ldap_errno));
else
@@ -788,7 +788,7 @@
strcat(ee, " -- Choose Exit ]");
ctmpa->value = cpystr(ee);
-@@ -2996,7 +2994,7 @@
+@@ -3001,7 +2999,7 @@
case MC_CHOICE :
if(flags & CF_PRIVATE){
q_status_message(SM_ORDER | SM_DING, 0, 3,
@@ -797,7 +797,7 @@
}
else if(some_selectable){
(*cl)->d.a.ac->selected_ld = (*cl)->d.a.ld;
-@@ -3064,15 +3062,15 @@
+@@ -3069,15 +3067,15 @@
static struct key direct_config_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -820,7 +820,7 @@
WHEREIS_MENU};
INST_KEY_MENU(dir_conf_km, direct_config_keys);
-@@ -3148,7 +3146,7 @@
+@@ -3153,7 +3151,7 @@
&first_line);
(void)conf_scroll_screen(ps, &screen, first_line,
@@ -829,7 +829,7 @@
ps->mangled_screen = 1;
}
-@@ -3168,20 +3166,20 @@
+@@ -3173,20 +3171,20 @@
case MC_DELETE :
if(first_one)
q_status_message(SM_ORDER|SM_DING, 0, 3,
@@ -853,7 +853,7 @@
if(first_one)
dir_config_add(ps, cl);
else
-@@ -3191,10 +3189,10 @@
+@@ -3196,10 +3194,10 @@
break;
case MC_SHUFFLE :
@@ -866,7 +866,7 @@
else
dir_config_shuffle(ps, cl);
}
-@@ -3328,7 +3326,7 @@
+@@ -3333,7 +3331,7 @@
write_pinerc(ps);
}
else
@@ -875,7 +875,7 @@
}
free_ldap_server_info(&info);
-@@ -3358,7 +3356,7 @@
+@@ -3363,7 +3361,7 @@
if(cnt < 2){
q_status_message(SM_ORDER, 0, 3,
@@ -884,7 +884,7 @@
return;
}
-@@ -3369,12 +3367,12 @@
+@@ -3374,12 +3372,12 @@
opts[i].ch = 'u';
opts[i].rval = 'u';
opts[i].name = "U";
@@ -899,7 +899,7 @@
opts[i].ch = -1;
deefault = 'u';
-@@ -3386,11 +3384,11 @@
+@@ -3391,11 +3389,11 @@
else if(current_num == cnt - 1) /* no down */
opts[1].ch = -2;
@@ -914,7 +914,7 @@
help = (opts[0].ch == -2) ? h_dir_shuf_down
: (opts[1].ch == -2) ? h_dir_shuf_up
: h_dir_shuf;
-@@ -3400,7 +3398,7 @@
+@@ -3405,7 +3403,7 @@
switch(rv){
case 'x':
@@ -923,7 +923,7 @@
return;
case 'u':
-@@ -3438,7 +3436,7 @@
+@@ -3443,7 +3441,7 @@
free_list_array(&new_list);
if(j){
q_status_message(SM_ORDER, 0, 3,
@@ -932,7 +932,7 @@
set_current_val((*cl)->var, TRUE, FALSE);
return;
}
-@@ -3490,10 +3488,10 @@
+@@ -3495,10 +3493,10 @@
info = break_up_ldap_server(raw_server);
if(strcmp((*cl)->var->current_val.l[(*cl)->varmem], raw_server) == 0)
@@ -945,7 +945,7 @@
else{
char tmp[900];
char *subtitle;
-@@ -4334,7 +4332,7 @@
+@@ -4339,7 +4337,7 @@
}
else
q_status_message(SM_ORDER, 3, 3,
@@ -954,7 +954,7 @@
}
else{
int cnt, ans = 0;
-@@ -4357,11 +4355,11 @@
+@@ -4362,11 +4360,11 @@
*/
if(!(*cl)->var->user_val.l && cnt > 1){
static ESCKEY_S opts[] = {
@@ -969,7 +969,7 @@
-FOOTER_ROWS(ps), opts, 'i', 'x',
h_ab_del_dir_ignore, RB_NORM);
}
-@@ -4467,7 +4465,7 @@
+@@ -4472,7 +4470,7 @@
CONF_S *first_line = NULL;
q_status_message(SM_ORDER, 0, 3,
@@ -978,7 +978,7 @@
dir_init_display(ps, cl, servers,
&ps->vars[V_LDAP_SERVERS], &first_line);
*cl = first_line;
-@@ -4507,7 +4505,7 @@
+@@ -4512,7 +4510,7 @@
}
}
else
@@ -987,7 +987,7 @@
}
if(rv == 1){
-@@ -4531,7 +4529,7 @@
+@@ -4536,7 +4534,7 @@
int (*tool)();
{
new_confline(ctmp);
@@ -996,7 +996,7 @@
(*ctmp)->value = cpystr(ADD_FIRST_LDAP_SERVER);
(*ctmp)->var = var;
(*ctmp)->varmem = 0;
-@@ -4594,7 +4592,7 @@
+@@ -4599,7 +4597,7 @@
p->next = b;
}
@@ -1005,7 +1005,7 @@
(*ctmp)->value = serv;
(*ctmp)->var = var;
(*ctmp)->varmem = member;
-@@ -5111,7 +5109,7 @@
+@@ -5116,7 +5114,7 @@
if(i)
config_scroll_up(i);
else
@@ -1014,7 +1014,7 @@
}
break;
-@@ -5153,7 +5151,7 @@
+@@ -5158,7 +5156,7 @@
}
else
q_status_message(SM_ORDER, 0, 1,
@@ -1023,7 +1023,7 @@
break;
-@@ -5197,7 +5195,7 @@
+@@ -5202,7 +5200,7 @@
if(ctmpa == screen->current){
q_status_message(SM_ORDER,0,1,
@@ -1032,7 +1032,7 @@
goto no_down;
}
-@@ -5229,7 +5227,7 @@
+@@ -5234,7 +5232,7 @@
if(ctmpa){
if(ctmpa == screen->current)
q_status_message(SM_ORDER, 0, 1,
@@ -1041,7 +1041,7 @@
screen->current = ctmpa;
}
-@@ -5405,13 +5403,13 @@
+@@ -5410,13 +5408,13 @@
HelpType help;
static ESCKEY_S ekey[] = {
{0, 0, "", ""},
@@ -1058,7 +1058,7 @@
(last[0]) ? "[" : "",
(last[0]) ? last : "",
(last[0]) ? "]" : "");
-@@ -5534,7 +5532,7 @@
+@@ -5539,7 +5537,7 @@
result = "Searched to bottom";
}
else
@@ -1067,7 +1067,7 @@
if((found & FOUND_IT) && ctmpa){
strcpy(last, buf);
-@@ -5553,7 +5551,7 @@
+@@ -5558,7 +5556,7 @@
screen->current = ctmpa;
}
@@ -1076,7 +1076,7 @@
}
break;
-@@ -5569,8 +5567,8 @@
+@@ -5574,8 +5572,8 @@
&& (ps_global->restricted || ps_global->readonly_pinerc)){
q_status_message1(SM_ORDER, 0, 3,
"%s can't change options or settings",
@@ -1087,7 +1087,7 @@
if(cmd == MC_EXIT){
retval = 0;
done++;
-@@ -5586,9 +5584,9 @@
+@@ -5591,9 +5589,9 @@
&screen->current, flags)){
case -1:
q_status_message2(SM_ORDER, 0, 2,
@@ -1099,7 +1099,7 @@
break;
case 0:
-@@ -5971,11 +5969,11 @@
+@@ -5974,11 +5972,11 @@
ekey[1].ch = ctrl('P');
ekey[1].rval = ctrl('P');
ekey[1].name = "^P";
@@ -1113,7 +1113,7 @@
ekey[3].ch = KEY_DOWN;
ekey[3].rval = ctrl('P');
ekey[3].name = "";
-@@ -5989,12 +5987,12 @@
+@@ -5992,12 +5990,12 @@
switch(cmd){
case MC_ADD: /* add to list */
@@ -1128,7 +1128,7 @@
}
else{
int maxwidth =min(80,ps->ttyo->screen_cols) - 15;
-@@ -6018,7 +6016,7 @@
+@@ -6021,7 +6019,7 @@
}
sprintf(prompt,
@@ -1137,7 +1137,7 @@
}
else if((*cl)->var->is_list
&& !(*cl)->var->user_val.l
-@@ -6027,13 +6025,13 @@
+@@ -6030,13 +6028,13 @@
ekey[0].ch = 'r';
ekey[0].rval = 'r';
ekey[0].name = "R";
@@ -1154,7 +1154,7 @@
switch(radio_buttons(prompt, -FOOTER_ROWS(ps), ekey, 'a', 'x',
h_config_replace_add, RB_NORM)){
case 'a':
-@@ -6047,25 +6045,25 @@
+@@ -6050,25 +6048,25 @@
}
add_text:
@@ -1187,7 +1187,7 @@
ps->mangled_footer = 1;
-@@ -6082,7 +6080,7 @@
+@@ -6085,7 +6083,7 @@
ekey[0].ch = ctrl('W');
ekey[0].rval = 5;
ekey[0].name = "^W";
@@ -1196,7 +1196,7 @@
ekey[1].ch = -1;
}
else if(!(flags&CF_NUMBER))
-@@ -6135,7 +6133,7 @@
+@@ -6138,7 +6136,7 @@
}
else{
q_status_message1(SM_ORDER, 0, 3,
@@ -1205,7 +1205,7 @@
rv = ps->mangled_body = 0;
}
-@@ -6143,7 +6141,7 @@
+@@ -6146,7 +6144,7 @@
}
else{
q_status_message1(SM_ORDER, 0, 3,
@@ -1214,7 +1214,7 @@
}
}
else{
-@@ -6151,7 +6149,7 @@
+@@ -6154,7 +6152,7 @@
&& !(isdigit((unsigned char)sval[0])
|| sval[0] == '-' || sval[0] == '+')){
q_status_message(SM_ORDER,3,3,
@@ -1223,7 +1223,7 @@
i = 3; /* to keep loop going */
continue;
}
-@@ -6164,7 +6162,7 @@
+@@ -6167,7 +6165,7 @@
}
}
else if(i == 1){
@@ -1232,7 +1232,7 @@
}
else if(i == 3){
help = help == NO_HELP ? h_config_add : NO_HELP;
-@@ -6187,8 +6185,8 @@
+@@ -6190,8 +6188,8 @@
}
sprintf(prompt,
@@ -1243,7 +1243,7 @@
continue;
}
else if(i == ctrl('P')){
-@@ -6208,7 +6206,7 @@
+@@ -6211,7 +6209,7 @@
*/
if(++repeat_key > 0){
q_status_message1(SM_ORDER,3,3,
@@ -1252,7 +1252,7 @@
repeat_key = -5;
}
}
-@@ -6232,7 +6230,7 @@
+@@ -6235,7 +6233,7 @@
if(numval == hirange){
if(++repeat_key > 0){
q_status_message1(SM_ORDER,3,3,
@@ -1261,7 +1261,7 @@
repeat_key = -5;
}
}
-@@ -6257,7 +6255,7 @@
+@@ -6260,7 +6258,7 @@
&& (*cl)->var->current_val.p){
char pmt[40];
@@ -1270,7 +1270,7 @@
if(want_to(pmt, 'n', 'n', NO_HELP, WT_FLUSH_IN) == 'y'){
sval[0] = '\0';
(*cl)->var->user_val.p = cpystr(sval);
-@@ -6270,7 +6268,7 @@
+@@ -6273,7 +6271,7 @@
&& (*cl)->var->current_val.l){
char pmt[40];
@@ -1279,7 +1279,7 @@
if(want_to(pmt, 'n', 'n', NO_HELP, WT_FLUSH_IN) == 'y'){
char **ltmp;
-@@ -6285,7 +6283,7 @@
+@@ -6288,7 +6286,7 @@
}
else if(((*cl)->var->is_list && !(*cl)->var->user_val.l)
|| (!(*cl)->var->is_list && !(*cl)->var->user_val.p)){
@@ -1288,7 +1288,7 @@
}
else{
if((*cl)->var->is_fixed)
-@@ -6301,7 +6299,8 @@
+@@ -6304,7 +6302,8 @@
: "<NULL VALUE>",
(*cl)->var->name);
else
@@ -1298,7 +1298,7 @@
(*cl)->var->is_list ? "item " : "",
(*cl)->var->is_list
? int2string((*cl)->varmem + 1)
-@@ -6309,8 +6308,7 @@
+@@ -6312,8 +6311,7 @@
? (!*(*cl)->var->user_val.p)
? empty_val2
: (*cl)->var->user_val.p
@@ -1308,7 +1308,7 @@
ps->mangled_footer = 1;
if(want_to(prompt, 'n', 'n', NO_HELP, WT_FLUSH_IN) == 'y'){
-@@ -6325,7 +6323,7 @@
+@@ -6328,7 +6326,7 @@
}
}
else
@@ -1317,7 +1317,7 @@
}
break;
-@@ -6458,7 +6456,7 @@
+@@ -6461,7 +6459,7 @@
&& !(isdigit((unsigned char)sval[0])
|| sval[0] == '-' || sval[0] == '+')){
q_status_message(SM_ORDER,3,3,
@@ -1326,7 +1326,7 @@
continue;
}
-@@ -6472,7 +6470,7 @@
+@@ -6475,7 +6473,7 @@
}
}
else if(i == 1){
@@ -1335,7 +1335,7 @@
}
else if(i == 3){
help = help == NO_HELP ? h_config_change : NO_HELP;
-@@ -6490,7 +6488,7 @@
+@@ -6493,7 +6491,7 @@
*/
if(++repeat_key > 0){
q_status_message1(SM_ORDER,3,3,
@@ -1344,7 +1344,7 @@
repeat_key = -5;
}
}
-@@ -6506,7 +6504,7 @@
+@@ -6509,7 +6507,7 @@
if(numval == hirange){
if(++repeat_key > 0){
q_status_message1(SM_ORDER,3,3,
@@ -1353,7 +1353,7 @@
repeat_key = -5;
}
}
-@@ -6596,16 +6594,16 @@
+@@ -6599,16 +6597,16 @@
if(flags & CF_CHANGES){
switch(want_to(EXIT_PMT, 'y', 'x', h_config_undo, WT_FLUSH_IN)){
case 'y':
@@ -1373,7 +1373,7 @@
return(0);
}
}
-@@ -6894,10 +6892,10 @@
+@@ -6897,10 +6895,10 @@
if(fixed_var((*cl)->var, NULL, NULL)){
if((*cl)->var->user_val.p
@@ -1386,7 +1386,7 @@
rv = 1;
}
-@@ -7175,15 +7173,15 @@
+@@ -7178,15 +7176,15 @@
fs_give((void **)&q);
}
@@ -1405,7 +1405,7 @@
retval = 1;
}
-@@ -7194,11 +7192,11 @@
+@@ -7197,11 +7195,11 @@
set_variable(V_PERSONAL_PRINT_CATEGORY,
comatose(ps->printer_category), 0);
q_status_message1(SM_ORDER,0,3,
@@ -1419,7 +1419,7 @@
retval = 1;
}
-@@ -7213,11 +7211,11 @@
+@@ -7216,11 +7214,11 @@
set_variable(V_PERSONAL_PRINT_CATEGORY,
comatose(ps->printer_category), 0);
q_status_message1(SM_ORDER,0,3,
@@ -1433,7 +1433,7 @@
retval = 1;
}
-@@ -7267,23 +7265,23 @@
+@@ -7270,23 +7268,23 @@
switch(cmd){
case MC_ADD: /* add to list */
sval[0] = '\0';
@@ -1462,7 +1462,7 @@
switch(i = radio_buttons(prompt, -FOOTER_ROWS(ps), ekey, 'a',
'x', h_config_replace_add, RB_NORM)){
case 'a':
-@@ -7299,17 +7297,17 @@
+@@ -7302,17 +7300,17 @@
ltmp[k + 1] = ltmp[k] = NULL;
add_text:
@@ -1483,7 +1483,7 @@
break;
}
-@@ -7317,7 +7315,7 @@
+@@ -7320,7 +7318,7 @@
break;
}
else
@@ -1492,7 +1492,7 @@
ps->mangled_footer = 1;
help = NO_HELP;
-@@ -7329,7 +7327,7 @@
+@@ -7332,7 +7330,7 @@
ekey[0].ch = ctrl('W');
ekey[0].rval = 5;
ekey[0].name = "^W";
@@ -1501,7 +1501,7 @@
ekey[1].ch = -1;
}
else
-@@ -7345,7 +7343,7 @@
+@@ -7348,7 +7346,7 @@
removing_leading_and_trailing_white_space(name);
}
else if(i == 1){
@@ -1510,7 +1510,7 @@
}
else if(i == 3){
help = (help == NO_HELP) ? h_config_insert_after : NO_HELP;
-@@ -7363,7 +7361,7 @@
+@@ -7366,7 +7364,7 @@
#ifdef OS2
strcpy(prompt, "Enter port or |command : ");
#else
@@ -1519,7 +1519,7 @@
#endif
while(i != 0 && i != 1){
oeflags = OE_APPEND_CURRENT;
-@@ -7413,10 +7411,10 @@
+@@ -7416,10 +7414,10 @@
}
else
q_status_message1(SM_ORDER, 0, 3,
@@ -1532,7 +1532,7 @@
}
else if(i == 3){
help = help == NO_HELP ? h_config_print_cmd : NO_HELP;
-@@ -7460,13 +7458,13 @@
+@@ -7463,13 +7461,13 @@
if((*cl)->var->is_fixed){
parse_printer((*cl)->var->user_val.l[(*cl)->varmem],
&nick, &p, NULL, NULL, NULL, NULL);
@@ -1548,7 +1548,7 @@
int2string((*cl)->varmem + 1));
ps->mangled_footer = 1;
-@@ -7476,7 +7474,7 @@
+@@ -7479,7 +7477,7 @@
config_del_list_item(cl, &newval);
}
else
@@ -1557,7 +1557,7 @@
}
break;
-@@ -7487,7 +7485,7 @@
+@@ -7490,7 +7488,7 @@
&& !strucmp(ps->VAR_PRINTER,(*cl)->var->current_val.l[(*cl)->varmem]))
changing_selected = 1;
@@ -1566,7 +1566,7 @@
break;
else if(!(*cl)->var->user_val.l && (*cl)->var->current_val.l)
goto replace_text;
-@@ -7499,22 +7497,22 @@
+@@ -7502,22 +7500,22 @@
ekey[0].ch = 'n';
ekey[0].rval = 'n';
ekey[0].name = "N";
@@ -1594,7 +1594,7 @@
break;
}
else if(i == 'c'){
-@@ -7523,7 +7521,7 @@
+@@ -7526,7 +7524,7 @@
parse_printer((*cl)->var->user_val.l[(*cl)->varmem],
NULL, &p, NULL, NULL, NULL, &all_but_cmd);
@@ -1603,7 +1603,7 @@
strcpy(sval, p ? p : "");
fs_give((void **)&p);
-@@ -7561,12 +7559,12 @@
+@@ -7564,12 +7562,12 @@
* Don't allow input of multiple entries at once.
*/
q_status_message(SM_ORDER,3,5,
@@ -1618,7 +1618,7 @@
}
else if(i == 3){
help = help == NO_HELP ? h_config_change : NO_HELP;
-@@ -7585,7 +7583,7 @@
+@@ -7588,7 +7586,7 @@
parse_printer((*cl)->var->user_val.l[(*cl)->varmem],
&p, NULL, NULL, NULL, &all_but_nick, NULL);
@@ -1627,7 +1627,7 @@
strcpy(name, p ? p : "");
fs_give((void **)&p);
-@@ -7614,7 +7612,7 @@
+@@ -7617,7 +7615,7 @@
newval = &(*cl)->value;
}
else if(i == 1){
@@ -1636,7 +1636,7 @@
}
else if(i == 3){
help = help == NO_HELP ? h_config_change : NO_HELP;
-@@ -7635,18 +7633,18 @@
+@@ -7638,18 +7636,18 @@
ekey[0].ch = 'i';
ekey[0].rval = 'i';
ekey[0].name = "I";
@@ -1659,7 +1659,7 @@
break;
}
else{
-@@ -7655,8 +7653,8 @@
+@@ -7658,8 +7656,8 @@
parse_printer((*cl)->var->user_val.l[(*cl)->varmem],
&nick, &p, &init, &trailer, NULL, NULL);
@@ -1670,7 +1670,7 @@
strcpy(sval, (j == 'i') ? init : trailer);
tmp = string_to_cstring(sval);
-@@ -7710,7 +7708,7 @@
+@@ -7713,7 +7711,7 @@
newval = &(*cl)->value;
}
else if(i == 1){
@@ -1679,7 +1679,7 @@
}
else if(i == 3){
help=(help == NO_HELP)?h_config_print_init:NO_HELP;
-@@ -7788,18 +7786,18 @@
+@@ -7791,18 +7789,18 @@
case MC_DELETE :
if((*cl)->d.c.ct->use & CNTXT_INCMNG)
@@ -1702,7 +1702,7 @@
context_select_edit(ps, cl);
ps->mangled_screen = 1;
}
-@@ -7807,7 +7805,7 @@
+@@ -7810,7 +7808,7 @@
break;
case MC_ADD :
@@ -1711,7 +1711,7 @@
context_select_add(ps, cl);
ps->mangled_screen = 1;
}
-@@ -7816,9 +7814,9 @@
+@@ -7819,9 +7817,9 @@
case MC_SHUFFLE :
if((*cl)->d.c.ct->use & CNTXT_INCMNG)
@@ -1723,7 +1723,7 @@
context_select_shuffle(ps, cl);
break;
-@@ -7890,7 +7888,7 @@
+@@ -7893,7 +7891,7 @@
struct key_menu *km;
CONT_SCR_S *cs;
@@ -1732,7 +1732,7 @@
/* create a corresponding new CONF_S */
new_ctxt = new_context(raw_ctxt, NULL);
-@@ -7954,7 +7952,7 @@
+@@ -7957,7 +7955,7 @@
/* Tell the user it was a huge success... */
q_status_message(SM_ORDER, 0, 3,
@@ -1741,7 +1741,7 @@
}
}
-@@ -7973,11 +7971,11 @@
+@@ -7976,11 +7974,11 @@
if(!((*cl)->var->user_val.l && (*cl)->var->user_val.l[0])){
q_status_message(SM_ORDER | SM_DING, 3, 3,
@@ -1755,7 +1755,7 @@
old_cl->value);
if(want_to(tmp, 'n', 'n', NO_HELP, WT_FLUSH_IN) == 'y'){
/* Remove from var list */
-@@ -8089,12 +8087,12 @@
+@@ -8092,12 +8090,12 @@
ps->mangled_body = 1;
q_status_message(SM_ORDER, 0, 3,
(old_cl == *cl)
@@ -1771,7 +1771,7 @@
}
-@@ -8116,7 +8114,7 @@
+@@ -8119,7 +8117,7 @@
if(p = strstr(tpath, "%s"))
*p = '\0';
@@ -1780,7 +1780,7 @@
(*cl)->d.c.ct->server, tpath,
(*cl)->d.c.ct->dir->view.user)){
-@@ -8186,7 +8184,7 @@
+@@ -8189,7 +8187,7 @@
set_current_val((*cl)->var, TRUE, FALSE);
@@ -1789,7 +1789,7 @@
}
}
-@@ -8208,14 +8206,14 @@
+@@ -8211,14 +8209,14 @@
ekey[n].ch = 'u';
ekey[n].rval = 'u';
ekey[n].name = "U";
@@ -1806,7 +1806,7 @@
}
if(n){
-@@ -8228,7 +8226,7 @@
+@@ -8231,7 +8229,7 @@
if((cmd = radio_buttons(prompt, -FOOTER_ROWS(ps), ekey,
(n == 1) ? 'd' : 0, 'x',
NO_HELP, RB_NORM)) == 'x'){
@@ -1815,7 +1815,7 @@
}
else if((cmd == 'u' && (ctmp = context_select_prev(*cl)))
|| (cmd == 'd' && (ctmp = context_select_next(*cl)))){
-@@ -8327,7 +8325,7 @@
+@@ -8330,7 +8328,7 @@
}
}
else
@@ -1824,7 +1824,7 @@
}
-@@ -9046,7 +9044,7 @@
+@@ -9049,7 +9047,7 @@
if(cl->var->current_val.l){
int i, l, l2;
@@ -1833,7 +1833,7 @@
for(i = 0; cl->var->current_val.l[i]; i++){
if(i)
*p++ = ',';
-@@ -9078,7 +9076,7 @@
+@@ -9081,7 +9079,7 @@
sprintf(tmp, cl->var->is_fixed
? "<%s%s%s%s>%*s" : "<%s%s%s%s>%*s",
cl->var->is_fixed ? fixed_val : no_val,
@@ -1842,7 +1842,7 @@
(cl->var->current_val.p) ? cl->var->current_val.p : "",
(cl->var->current_val.p) ? "\"" : "",
max(0, ps->ttyo->screen_cols - cl->valoffset - 13
-@@ -9229,7 +9227,7 @@
+@@ -9232,7 +9230,7 @@
p = (struncmp(*vp, "no-", 3)) ? *vp : *vp + 3;
if(!strucmp(p, f->name) || (og && !strucmp(p, "old-growth"))){
q_status_message(SM_ORDER, 3, 3,
@@ -1851,7 +1851,7 @@
return;
}
}
-@@ -9278,7 +9276,7 @@
+@@ -9281,7 +9279,7 @@
case F_ENABLE_INCOMING :
q_status_message(SM_ORDER | SM_DING, 3, 4,
@@ -1860,7 +1860,7 @@
break;
-@@ -9464,8 +9462,8 @@
+@@ -9467,8 +9465,8 @@
{
if(v && v->is_fixed){
q_status_message2(SM_ORDER, 3, 3,
@@ -1871,7 +1871,7 @@
return(1);
}
-@@ -9887,7 +9885,7 @@
+@@ -9890,7 +9888,7 @@
&& var->is_list
&& !var->user_val.l
&& var->current_val.l)))
@@ -1880,7 +1880,7 @@
if(var == &ps->vars[V_USER_DOMAIN]){
char *p, *q;
-@@ -9898,7 +9896,7 @@
+@@ -9901,7 +9899,7 @@
if(*(++p)){
if(!revert)
q_status_message2(SM_ORDER, 3, 5,
@@ -1889,7 +1889,7 @@
ps->VAR_USER_DOMAIN, p);
q = ps->VAR_USER_DOMAIN;
while((*q++ = *p++) != '\0')
-@@ -9907,7 +9905,7 @@
+@@ -9910,7 +9908,7 @@
else{
if(!revert)
q_status_message1(SM_ORDER, 3, 5,
@@ -1898,7 +1898,7 @@
ps->VAR_USER_DOMAIN);
fs_give((void **)&ps->USR_USER_DOMAIN);
set_current_val(&ps->vars[V_USER_DOMAIN], TRUE, TRUE);
-@@ -9967,7 +9965,7 @@
+@@ -9970,7 +9968,7 @@
else if(var == &ps->vars[V_INIT_CMD_LIST]){
if(!revert)
q_status_message(SM_ASYNC, 0, 3,
@@ -1907,7 +1907,7 @@
}
else if(var == &ps->vars[V_VIEW_HEADERS]){
ps->view_all_except = 0;
-@@ -10039,10 +10037,10 @@
+@@ -10042,10 +10040,10 @@
}
else if(timeo == 0L && !revert){
q_status_message(SM_ORDER, 4, 6,
@@ -1920,7 +1920,7 @@
}
}
#if defined(DOS) || defined(OS2)
-@@ -10500,10 +10498,10 @@
+@@ -10503,10 +10501,10 @@
static struct key role_select_keys[] =
{HELP_MENU,
NULL_MENU,
@@ -1934,7 +1934,7 @@
PREVPAGE_MENU,
NEXTPAGE_MENU,
NULL_MENU,
-@@ -10546,7 +10544,7 @@
+@@ -10549,7 +10547,7 @@
menu_add_binding(&role_select_km, ctrl('M'), MC_CHOICE);
}
else{
@@ -1943,7 +1943,7 @@
DEFAULT_KEY);
menu_add_binding(&role_select_km, ctrl('J'), MC_CHOICE);
menu_add_binding(&role_select_km, ctrl('M'), MC_CHOICE);
-@@ -10580,7 +10578,7 @@
+@@ -10583,7 +10581,7 @@
ctmp->valoffset = 4;
}
@@ -1952,7 +1952,7 @@
"roles ", 0, 0);
if(sel_pat){
-@@ -10969,23 +10967,23 @@
+@@ -10975,23 +10973,23 @@
static struct key role_config_keys[] =
{HELP_MENU,
OTHER_MENU,
@@ -1985,7 +1985,7 @@
NULL_MENU,
NULL_MENU,
NULL_MENU,
-@@ -11262,7 +11260,7 @@
+@@ -11268,7 +11266,7 @@
case MC_DELETE :
if(first_one)
q_status_message(SM_ORDER|SM_DING, 0, 3,
@@ -1994,7 +1994,7 @@
else
rv = role_config_del(ps, cl, role_global_flags);
-@@ -11283,14 +11281,14 @@
+@@ -11289,14 +11287,14 @@
case MC_SHUFFLE :
if(first_one)
q_status_message(SM_ORDER|SM_DING, 0, 3,
@@ -2011,7 +2011,7 @@
rv = screen_exit_cmd(flags, exitpmt);
break;
-@@ -11789,7 +11787,7 @@
+@@ -11795,7 +11793,7 @@
help, RB_NORM);
if(rv == 'x'){
@@ -2020,7 +2020,7 @@
return(0);
}
-@@ -11949,7 +11947,7 @@
+@@ -11955,7 +11953,7 @@
continue;
}
else if(r == 1 || (r == 0 && filename[0] == '\0')){
@@ -2029,7 +2029,7 @@
return(rv);
}
else if(r == 4){
-@@ -12684,22 +12682,22 @@
+@@ -12685,22 +12683,22 @@
? cpystr(def->patgrp->nick) : NULL;
nick_var.global_val.p = cpystr(edit_role
@@ -2058,7 +2058,7 @@
from_pat_var.is_used = 1;
from_pat_var.is_user = 1;
from_pat_var.user_val.p = (def && def->patgrp)
-@@ -12707,7 +12705,7 @@
+@@ -12708,7 +12706,7 @@
: NULL;
set_current_val(&from_pat_var, FALSE, FALSE);
@@ -2067,7 +2067,7 @@
sender_pat_var.is_used = 1;
sender_pat_var.is_user = 1;
sender_pat_var.user_val.p = (def && def->patgrp)
-@@ -12715,28 +12713,28 @@
+@@ -12716,28 +12714,28 @@
: NULL;
set_current_val(&sender_pat_var, FALSE, FALSE);
@@ -2100,7 +2100,7 @@
news_pat_var.is_used = 1;
news_pat_var.is_user = 1;
news_pat_var.user_val.p = (def && def->patgrp)
-@@ -12744,7 +12742,7 @@
+@@ -12745,7 +12743,7 @@
: NULL;
set_current_val(&news_pat_var, FALSE, FALSE);
@@ -2109,7 +2109,7 @@
subj_pat_var.is_used = 1;
subj_pat_var.is_user = 1;
subj_pat_var.user_val.p = (def && def->patgrp)
-@@ -12752,7 +12750,7 @@
+@@ -12753,7 +12751,7 @@
: NULL;
set_current_val(&subj_pat_var, FALSE, FALSE);
@@ -2118,7 +2118,7 @@
alltext_pat_var.is_used = 1;
alltext_pat_var.is_user = 1;
alltext_pat_var.user_val.p = (def && def->patgrp)
-@@ -12761,7 +12759,7 @@
+@@ -12762,7 +12760,7 @@
set_current_val(&alltext_pat_var, FALSE, FALSE);
scorei_pat_global_ptr = &scorei_pat_var;
@@ -2127,7 +2127,7 @@
scorei_pat_var.is_used = 1;
scorei_pat_var.is_user = 1;
if(def && def->patgrp && def->patgrp->do_score)
-@@ -12778,7 +12776,7 @@
+@@ -12779,7 +12777,7 @@
pindent += 3;
@@ -2136,7 +2136,7 @@
inick_var.is_used = 1;
inick_var.is_user = 1;
inick_var.user_val.p = (def && def->action &&
-@@ -12787,13 +12785,13 @@
+@@ -12788,13 +12786,13 @@
? cpystr(def->action->inherit_nick) : NULL;
role_fldr_ptr = &fldr_type_var; /* so radiobuttons can tell */
@@ -2144,16 +2144,16 @@
+ fldr_type_var.name = cpystr("目前檔案匣形態");
fldr_type_var.is_used = 1;
fldr_type_var.is_user = 1;
- fldr_type_var.user_val.p = (f=pat_fldr_types((def && def->patgrp) ? def->patgrp->fldr_type : -1)) ? cpystr(f->name) : NULL;
+ fldr_type_var.user_val.p = (f=pat_fldr_types((def && def->patgrp) ? def->patgrp->fldr_type : (!def && edit_filter) ? FLDR_SPECIFIC : -1)) ? cpystr(f->name) : NULL;
set_current_val(&fldr_type_var, FALSE, FALSE);
-- folder_pat_var.name = cpystr("Folder");
-+ folder_pat_var.name = cpystr("檔案匣");
+- folder_pat_var.name = cpystr("Folder List");
++ folder_pat_var.name = cpystr("檔案匣列表");
folder_pat_var.is_used = 1;
folder_pat_var.is_user = 1;
folder_pat_var.user_val.p = (def && def->patgrp)
-@@ -12801,7 +12799,7 @@
- : NULL;
+@@ -12803,7 +12801,7 @@
+ ? cpystr(ps_global->inbox_name) : NULL;
set_current_val(&folder_pat_var, FALSE, FALSE);
- from_act_var.name = cpystr("Set From");
@@ -2161,7 +2161,7 @@
from_act_var.is_used = 1;
from_act_var.is_user = 1;
if(def && def->action && def->action->from){
-@@ -12813,7 +12811,7 @@
+@@ -12815,7 +12813,7 @@
else
from_act_var.user_val.p = NULL;
@@ -2170,7 +2170,7 @@
replyto_act_var.is_used = 1;
replyto_act_var.is_user = 1;
if(def && def->action && def->action->replyto){
-@@ -12826,26 +12824,26 @@
+@@ -12828,26 +12826,26 @@
else
replyto_act_var.user_val.p = NULL;
@@ -2201,7 +2201,7 @@
score_act_var.is_used = 1;
score_act_var.is_user = 1;
if(def && def->action && def->action->scoreval >= SCORE_MIN &&
-@@ -14262,12 +14260,12 @@
+@@ -14739,12 +14737,12 @@
break;
case 'n':
@@ -2216,7 +2216,7 @@
rv = 0;
break;
}
-@@ -14396,7 +14394,7 @@
+@@ -14876,7 +14874,7 @@
if(file[len=(strlen(file)-1)] == '|')
file[len] = '\0';
@@ -2225,7 +2225,7 @@
err = signature_edit(file, title);
}
-@@ -14434,7 +14432,7 @@
+@@ -14914,7 +14912,7 @@
if(i == 0)
break;
else if(i == 1){
@@ -2234,7 +2234,7 @@
cancel = 1;
break;
}
-@@ -14545,7 +14543,7 @@
+@@ -15025,7 +15023,7 @@
sprintf(tmp, "Really remove \"%s\" pattern from this rule",
(ea && ea->a && ea->a->field) ? ea->a->field : "this");
if(want_to(tmp, 'y', 'n', NO_HELP, WT_NORM) != 'y'){
@@ -2243,7 +2243,7 @@
return(rv);
}
-@@ -14613,8 +14611,8 @@
+@@ -15093,8 +15091,8 @@
char prompt[60];
rv = 0;
@@ -2254,7 +2254,7 @@
ps->mangled_footer = 1;
help = NO_HELP;
-@@ -14640,7 +14638,7 @@
+@@ -15120,7 +15118,7 @@
(*cl)->value = pretty_value(ps, *cl);
}
else if(i == 1)
@@ -2263,7 +2263,7 @@
else if(i == 3){
help = help == NO_HELP ? h_config_edit_scorei : NO_HELP;
continue;
-@@ -14685,12 +14683,12 @@
+@@ -15165,12 +15163,12 @@
break;
case 'n':
@@ -2278,7 +2278,7 @@
rv = 0;
break;
}
-@@ -15712,7 +15710,7 @@
+@@ -16192,7 +16190,7 @@
/* First, confirm that user wants to restore all default colors */
if(want_to("Really restore all colors to default values",
'y', 'n', NO_HELP, WT_NORM) != 'y'){
@@ -2287,7 +2287,7 @@
return(rv);
}
-@@ -15768,7 +15766,7 @@
+@@ -16248,7 +16246,7 @@
if(i == 0)
break;
else if(i == 1){
@@ -2296,7 +2296,7 @@
cancel = 1;
break;
}
-@@ -15857,7 +15855,7 @@
+@@ -16337,7 +16335,7 @@
sprintf(prompt, "Really delete \"%s\" color from config", header);
if(want_to(prompt, 'y', 'n', NO_HELP, WT_NORM) != 'y'){
@@ -2305,7 +2305,7 @@
return(rv);
}
-@@ -15989,7 +15987,7 @@
+@@ -16469,7 +16467,7 @@
switch(i){
case 'x':
diff --git a/chinese/pine4/files/patch-bh b/chinese/pine4/files/patch-bh
index 1598b09cd8b0..2cbd9cd6cf29 100644
--- a/chinese/pine4/files/patch-bh
+++ b/chinese/pine4/files/patch-bh
@@ -1,5 +1,5 @@
---- pine/pine.h.orig Tue Oct 12 06:14:28 1999
-+++ pine/pine.h Thu Oct 14 12:35:27 1999
+--- pine/pine.h.orig Wed Nov 17 08:14:14 1999
++++ pine/pine.h Fri Nov 19 16:18:24 1999
@@ -357,7 +357,7 @@
&& (s) && !strucmp((s),"X-VCARD")))
#define MIME_VCARD_A(a) MIME_VCARD((a)->body->type, (a)->body->subtype)
@@ -134,7 +134,7 @@
{MC_TAB,1,{TAB}}, \
KS_NONE}
-@@ -2819,7 +2819,7 @@
+@@ -2831,7 +2831,7 @@
} ATABLE_S;
diff --git a/chinese/pine4/files/patch-bi b/chinese/pine4/files/patch-bi
index 007572c228db..bf9422b86b6f 100644
--- a/chinese/pine4/files/patch-bi
+++ b/chinese/pine4/files/patch-bi
@@ -1,6 +1,6 @@
---- pine/reply.c.orig Tue Oct 12 01:30:36 1999
-+++ pine/reply.c Thu Oct 14 15:00:52 1999
-@@ -108,9 +108,9 @@
+--- pine/reply.c.orig Tue Nov 9 02:24:35 1999
++++ pine/reply.c Fri Nov 19 16:18:24 1999
+@@ -110,9 +110,9 @@
/*
* Little defs to keep the code a bit neater...
*/
@@ -13,7 +13,7 @@
#define SIGDASHES "-- "
-@@ -341,7 +341,7 @@
+@@ -343,7 +343,7 @@
role = combine_inherited_role(role);
else{ /* cancel reply */
role = NULL;
@@ -22,7 +22,7 @@
goto done_early;
}
}
-@@ -603,7 +603,7 @@
+@@ -605,7 +605,7 @@
#endif
/* partially formatted outgoing message */
@@ -31,7 +31,7 @@
role, fcc.tptr, &reply, redraft_pos, NULL, NULL, 0);
done:
pine_free_body(&body);
-@@ -681,7 +681,7 @@
+@@ -683,7 +683,7 @@
(ADDRESS *) NULL, env->from, 0);
if(ret == 'x') {
@@ -40,7 +40,7 @@
return(0);
}
-@@ -730,7 +730,7 @@
+@@ -732,7 +732,7 @@
|| (*saved_cc || *saved_resent))){
*flags &= ~RSF_QUERY_REPLY_ALL;
if((ret=want_to(ALL_PMT,'n','x',NO_HELP,WT_SEQ_SENSITIVE)) == 'x'){
@@ -49,21 +49,8 @@
return(0);
}
else if(ret == 'y')
-@@ -830,9 +830,9 @@
- PAT_S *curpat, *pat;
- PAT_STATE pstate;
- static ESCKEY_S ekey[] = {
-- {'y', 'y', "Y", "Yes"},
-- {'n', 'n', "N", "No Role"},
-- {ctrl('T'), 2, "^T", "To Select Alternate Role"},
-+ {'y', 'y', "Y", "是"},
-+ {'n', 'n', "N", "否"},
-+ {ctrl('T'), 2, "^T", "選擇替代角色"},
- {-1, 0, NULL, NULL}};
-
- if(!nonempty_patterns() || !role)
-@@ -884,11 +884,11 @@
- curpat = first_pattern(ROLE_DO_ROLES, &pstate);
+@@ -890,21 +890,21 @@
+ }
if(flags & ROLE_REPLY)
- prompt_fodder = "Reply";
@@ -77,7 +64,20 @@
done = 0;
while(!done){
-@@ -1504,8 +1504,8 @@
+ if(curpat){
+ help = h_role_confirm;
+ ekey[0].name = "Y";
+- ekey[0].label = "Yes";
++ ekey[0].label = "是";
+ ekey[1].name = "N";
+- ekey[1].label = "No Role";
+- ekey[2].label = "To Select Alternate Role";
++ ekey[1].label = "否";
++ ekey[2].label = "選擇替代角色";
+ if(curpat->patgrp && curpat->patgrp->nick)
+ sprintf(prompt, "Use role \"%.40s\" for %s? ",
+ curpat->patgrp->nick, prompt_fodder);
+@@ -1523,8 +1523,8 @@
{
int ret, edited = 0;
static ESCKEY_S rtq_opts[] = {
@@ -88,7 +88,7 @@
{-1, 0, NULL, NULL}, /* may be overridden below */
{-1, 0, NULL, NULL}
};
-@@ -1515,19 +1515,18 @@
+@@ -1534,19 +1534,18 @@
return(1);
while(1){
@@ -114,7 +114,7 @@
}
else
rtq_opts[2].ch = -1;
-@@ -1538,7 +1537,7 @@
+@@ -1557,7 +1556,7 @@
rtq_opts, edited ? 'y' : 'n',
'x', NO_HELP, RB_SEQ_SENSITIVE)){
case 'x':
@@ -123,7 +123,7 @@
return(-1);
case 'r':
-@@ -1557,7 +1556,7 @@
+@@ -1576,7 +1575,7 @@
switch(optionally_enter(buf, ps->ttyo->screen_rows > 4
? -FOOTER_ROWS(ps_global) : -1,
@@ -132,7 +132,7 @@
NULL, NO_HELP, &flags)){
case 0: /* entry successful, continue */
if(flags & OE_USER_MODIFIED){
-@@ -1570,7 +1569,7 @@
+@@ -1589,7 +1588,7 @@
break;
case 1:
@@ -141,7 +141,7 @@
case -1:
return(-1);
-@@ -2579,9 +2578,9 @@
+@@ -2653,9 +2652,9 @@
ENVELOPE *env, *outgoing;
{
int ret = 1;
@@ -154,7 +154,7 @@
{-1, 0, NULL, NULL} };
if(env->newsgroups && *env->newsgroups && !reply_poster_followup(env))
-@@ -2605,7 +2604,7 @@
+@@ -2679,7 +2678,7 @@
case 'x' : /* cancel or unknown response */
default :
@@ -163,7 +163,7 @@
ret = 0;
break;
}
-@@ -2613,7 +2612,7 @@
+@@ -2687,7 +2686,7 @@
if(ret > 1){
if(env->followup_to){
q_status_message(SM_ORDER, 2, 3,
@@ -172,7 +172,7 @@
outgoing->newsgroups = cpystr(env->followup_to);
}
else if(!outgoing->newsgroups)
-@@ -3249,7 +3248,7 @@
+@@ -3323,7 +3322,7 @@
: 0;
if(ret == 'x'){
@@ -181,7 +181,7 @@
so_give((STORE_S **)&msgtext);
goto clean;
}
-@@ -3263,7 +3262,7 @@
+@@ -3337,7 +3336,7 @@
role = combine_inherited_role(role);
else{ /* cancel reply */
role = NULL;
@@ -190,7 +190,7 @@
so_give((STORE_S **)&msgtext);
goto clean;
}
-@@ -3458,7 +3457,7 @@
+@@ -3532,7 +3531,7 @@
pine_simple_send(outgoing, &body, NULL, NULL, NULL, 1);
else /* partially formatted outgoing message */
pine_send(outgoing, &body,
@@ -199,7 +199,7 @@
role, NULL, NULL, redraft_pos, NULL, NULL, FALSE);
clean:
-@@ -3481,7 +3480,7 @@
+@@ -3555,7 +3554,7 @@
mail_gc(ps->mail_stream, GC_TEXTS);
#endif
q_status_message(SM_ORDER | SM_DING, 4, 5,
@@ -208,7 +208,7 @@
goto clean;
}
-@@ -3861,7 +3860,7 @@
+@@ -3979,7 +3978,7 @@
if(confirm_role(ROLE_COMPOSE, &role))
role = combine_inherited_role(role);
else{ /* cancel */
diff --git a/chinese/pine4/files/patch-bk b/chinese/pine4/files/patch-bk
index 7d94c35fd944..96dd90aa74bf 100644
--- a/chinese/pine4/files/patch-bk
+++ b/chinese/pine4/files/patch-bk
@@ -1,5 +1,5 @@
---- pine/send.c.orig Thu Oct 7 04:18:27 1999
-+++ pine/send.c Thu Oct 14 12:02:30 1999
+--- pine/send.c.orig Sat Nov 13 09:41:01 1999
++++ pine/send.c Fri Nov 19 16:18:24 1999
@@ -221,17 +221,17 @@
* Various useful strings
*/
@@ -367,7 +367,7 @@
dprint(4, (debugfile, "=== send: cancelled\n"));
pbuf = save_previous_pbuf;
return;
-@@ -3133,7 +3133,7 @@
+@@ -3143,7 +3143,7 @@
default:
q_status_message1(SM_ORDER,3,7,
@@ -376,7 +376,7 @@
(void *)pf->type);
break;
}
-@@ -3160,7 +3160,7 @@
+@@ -3170,7 +3170,7 @@
!(role && role->from))){
if(pf->canedit || !he->rich_header)
q_status_message(SM_ORDER, 3, 3,
@@ -385,7 +385,7 @@
memset(he, 0, (size_t)sizeof(*he));
pf->he = NULL;
-@@ -3519,7 +3519,7 @@
+@@ -3529,7 +3529,7 @@
? "CANCEL" : "HUH?"));
if((editor_result & COMP_CANCEL)
&& F_ON(F_QUELL_DEAD_LETTER, ps_global)){
@@ -394,7 +394,7 @@
break;
}
-@@ -3543,7 +3543,7 @@
+@@ -3553,7 +3553,7 @@
&& (check_addresses(&header) == CA_BAD)){
/*--- Addresses didn't check out---*/
q_status_message(SM_ORDER, 7, 7,
@@ -403,7 +403,7 @@
continue;
}
-@@ -3602,7 +3602,7 @@
+@@ -3612,7 +3612,7 @@
if(!so_puts(lmc.so, tmp_20k_buf)){
if(editor_result & COMP_CANCEL)
q_status_message2(SM_ORDER | SM_DING, 3, 3,
@@ -412,7 +412,7 @@
folder, error_description(errno));
else
dprint(1, (debugfile, "* * * CAN'T WRITE %s: %s\n",
-@@ -3615,7 +3615,7 @@
+@@ -3625,7 +3625,7 @@
if(!ps_global->VAR_POSTPONED_FOLDER
|| !ps_global->VAR_POSTPONED_FOLDER[0]){
q_status_message(SM_ORDER | SM_DING, 3, 3,
@@ -421,7 +421,7 @@
continue;
}
-@@ -3645,7 +3645,7 @@
+@@ -3655,7 +3655,7 @@
}
else{
strcpy(folder, ps_global->VAR_POSTPONED_FOLDER);
@@ -430,7 +430,7 @@
}
lmc.so = open_fcc(folder,&fcc_cntxt, 1, NULL, NULL);
-@@ -3787,10 +3787,10 @@
+@@ -3797,10 +3797,10 @@
&& ps_global->VAR_FORM_FOLDER[0]
&& !strcmp(folder, ps_global->VAR_FORM_FOLDER))
q_status_message(SM_ORDER, 0, 3,
@@ -443,7 +443,7 @@
break; /* postpone went OK, get out of here */
}
-@@ -3800,15 +3800,15 @@
+@@ -3810,15 +3810,15 @@
if(fcc_result && folder)
lc = last_cmpnt(folder);
@@ -462,7 +462,7 @@
body_start = 1;
continue; /* postpone failed, jump back in to composer */
}
-@@ -3824,7 +3824,7 @@
+@@ -3834,7 +3834,7 @@
/* --- If posting, confirm with user ----*/
if(outgoing->newsgroups && *outgoing->newsgroups
&& want_to(POST_PMT, 'n', 'n', NO_HELP, WT_NORM) == 'n'){
@@ -471,7 +471,7 @@
dprint(4, (debugfile, "no post, continuing\n"));
continue;
}
-@@ -3833,13 +3833,13 @@
+@@ -3843,13 +3843,13 @@
|| outgoing->newsgroups)){
if(fcc && fcc[0]){
if(F_OFF(F_AUTO_FCC_ONLY, ps_global) &&
@@ -487,7 +487,7 @@
dprint(4, (debugfile, "no recip, continuing\n"));
continue;
}
-@@ -3883,8 +3883,8 @@
+@@ -3893,8 +3893,8 @@
&& !filter_message_text(sending_filter_requested, outgoing,
*body, &orig_so, &header)){
q_status_message1(SM_ORDER, 3, 3,
@@ -498,7 +498,7 @@
continue;
}
-@@ -3975,7 +3975,7 @@
+@@ -3985,7 +3985,7 @@
}
else if(!(result & (P_MAIL_BITS | P_NEWS_BITS))){
q_status_message(SM_ORDER, 3, 5,
@@ -507,7 +507,7 @@
dprint(1, (debugfile,
"explicit fcc write failed!\n"));
result |= P_FCC_LOSE;
-@@ -4042,7 +4042,7 @@
+@@ -4052,7 +4052,7 @@
}
else if(!(result & (P_MAIL_BITS | P_NEWS_BITS))){
q_status_message(SM_ORDER,3,5,
@@ -516,7 +516,7 @@
dprint(1, (debugfile, "explicit fcc write failed!\n"));
result |= P_FCC_LOSE;
}
-@@ -4130,8 +4130,8 @@
+@@ -4140,8 +4140,8 @@
postpone_prompt()
{
int ret = 1;
@@ -527,7 +527,7 @@
{-1, 0, NULL, NULL} };
return(radio_buttons(PSTPN_FORM_PMT, -FOOTER_ROWS(ps_global),
-@@ -4283,23 +4283,23 @@
+@@ -4296,23 +4296,23 @@
char *buf;
int *goodorbad;
{
@@ -559,7 +559,7 @@
(result & P_FCC_WIN) ? "\"" : "",
(result & P_FCC_WIN) ? fcc_name : "",
(result & P_FCC_WIN) ? "\"" : "");
-@@ -4338,7 +4338,7 @@
+@@ -4351,7 +4351,7 @@
|| (F_ON(F_COMPOSE_REJECTS_UNQUAL, ps_global)
&& a->host[0] == '@'))){
q_status_message2(SM_ORDER, 4, 7,
@@ -568,7 +568,7 @@
a->mailbox,
(a->host[0] == '.')
? a->host
-@@ -4348,7 +4348,7 @@
+@@ -4361,7 +4361,7 @@
else if(ps_global->restricted
&& !address_is_us(*pf->addr, ps_global)){
q_status_message(SM_ORDER, 3, 3,
@@ -577,7 +577,7 @@
return(CA_BAD);
}
else if(a->mailbox && strucmp(a->mailbox, "mailer-daemon") == 0
-@@ -4545,7 +4545,7 @@
+@@ -4558,7 +4558,7 @@
if(!(n > 0L && n <= mn_get_total(ps_global->msgmap)
&& (e = mail_fetchstructure(ps_global->mail_stream,
mn_m2raw(ps_global->msgmap, n), &b)))){
@@ -586,7 +586,7 @@
flush_status_messages(0);
return(0L);
}
-@@ -4560,7 +4560,7 @@
+@@ -4573,7 +4573,7 @@
/* actually write message text */
if(!format_message(mn_m2raw(ps_global->msgmap, n), e, b,
FM_NEW_MESS | FM_DISPLAY | FM_NOCOLOR, f)){
@@ -595,7 +595,7 @@
flush_status_messages(0);
rv = 0L;
}
-@@ -4654,12 +4654,12 @@
+@@ -4667,12 +4667,12 @@
opts[i].ch = 'y';
opts[i].rval = 'y';
opts[i].name = "Y";
@@ -610,7 +610,7 @@
if(filters){
/* set global_filter_pointer to desired filter or NULL if none */
-@@ -4667,12 +4667,12 @@
+@@ -4680,12 +4680,12 @@
opts[i].ch = ctrl('P');
opts[i].rval = 10;
opts[i].name = "^P";
@@ -625,7 +625,7 @@
if(F_ON(F_FIRST_SEND_FILTER_DFLT, ps_global))
filters = filters->next;
-@@ -4756,11 +4756,11 @@
+@@ -4769,11 +4769,11 @@
lparen = 0;
dsn_show = (dsn_requested & DSN_SHOW);
@@ -640,7 +640,7 @@
if(filters){
if(!lparen){
-@@ -4772,12 +4772,12 @@
+@@ -4785,12 +4785,12 @@
*optp++ = ' ';
if(filters->filter){
@@ -655,7 +655,7 @@
}
if(verbose_requested || background_requested){
-@@ -4791,10 +4791,10 @@
+@@ -4804,10 +4804,10 @@
sstrcpy(&optp, "in ");
if(verbose_requested)
@@ -668,7 +668,7 @@
sstrcpy(&optp, "mode");
}
-@@ -4836,11 +4836,11 @@
+@@ -4849,11 +4849,11 @@
*p = ' ';
if(verbose_label)
@@ -682,7 +682,7 @@
if(fcc_label)
opts[fcc_label].label = lmc.text_only ? "Fcc Attchmnts"
-@@ -4872,11 +4872,11 @@
+@@ -4885,11 +4885,11 @@
break;
}
else if(rv == 'n'){ /* Declined! */
@@ -696,7 +696,7 @@
break;
}
else if(rv == 10){ /* PREVIOUS filter */
-@@ -5063,7 +5063,7 @@
+@@ -5076,7 +5076,7 @@
if(body->type != TYPEOTHER){
rv = 1;
q_status_message3(SM_ORDER, 0, 3,
@@ -705,7 +705,7 @@
body_types[body->type],
body->subtype ? body->subtype : rfc822_default_subtype(body->type));
}
-@@ -5112,7 +5112,7 @@
+@@ -5125,7 +5125,7 @@
(void) close_system_pipe(&syspipe);
if((l = name_file_size(fname)) < 0L){
q_status_message2(SM_ORDER | SM_DING, 3, 4,
@@ -714,7 +714,7 @@
fnp = error_description(errno));
dprint(1, (debugfile,
"!!! Upload cmd \"%s\" failed for \"%s\": %s\n",
-@@ -5124,7 +5124,7 @@
+@@ -5137,7 +5137,7 @@
return(l >= 0);
}
else
@@ -723,7 +723,7 @@
return(0);
}
-@@ -5177,7 +5177,7 @@
+@@ -5190,7 +5190,7 @@
else if(reply->flags == REPLY_MSGNO)
return;
@@ -732,7 +732,7 @@
if(!stream){
if(stream = pine_mail_open(NULL, reply->mailbox, OP_SILENT)){
ourstream++;
-@@ -5273,7 +5273,7 @@
+@@ -5286,7 +5286,7 @@
so_give(&tmpf_so);
}
else
@@ -741,7 +741,7 @@
}
else if(include_hdrs){
/*
-@@ -5331,13 +5331,13 @@
+@@ -5344,13 +5344,13 @@
so_give(&tmpf_so);
}
else
@@ -758,7 +758,7 @@
}
else
errstr = gf_filter(cmd, key ? filter_session_key() : NULL,
-@@ -5351,7 +5351,7 @@
+@@ -5364,7 +5364,7 @@
if(errstr){
int ch;
@@ -767,7 +767,7 @@
fflush(stdout);
while((ch = read_char(300)) != ctrl('M')
&& ch != NO_OP_IDLE)
-@@ -5447,7 +5447,7 @@
+@@ -5460,7 +5460,7 @@
if(tmp_so)
so_give(&tmp_so);
@@ -776,7 +776,7 @@
errstr);
dprint(1, (debugfile, "Filter FAILED: %s\n", errstr));
}
-@@ -5532,11 +5532,11 @@
+@@ -5545,11 +5545,11 @@
loser = pine_simple_send(outgoing, &body, NULL, NULL, NULL, 0);
@@ -790,7 +790,7 @@
mail_free_envelope(&outgoing);
pine_free_body(&body);
-@@ -5620,7 +5620,7 @@
+@@ -5633,7 +5633,7 @@
if(!pf){
q_status_message(SM_ORDER,3,3,
@@ -799,7 +799,7 @@
return(0);
}
-@@ -5629,7 +5629,7 @@
+@@ -5642,7 +5642,7 @@
gf_filter_init(); /* zero piped byte count, 'n */
send_bytes_to_send = send_body_size(body); /* count body bytes */
ps_global->c_client_error[0] = error_buf[0] = '\0';
@@ -808,7 +808,7 @@
send_bytes_to_send ? sent_percent : NULL, 1);
/* try posting via local "<mta> <-t>" if specified */
-@@ -5814,7 +5814,7 @@
+@@ -5827,7 +5827,7 @@
struct headerentry *last_he = NULL;
sprintf(error_buf,
@@ -817,7 +817,7 @@
(sending_stream && sending_stream->reply) ? ": ": ".",
(sending_stream && sending_stream->reply)
? sending_stream->reply : "");
-@@ -5887,7 +5887,7 @@
+@@ -5900,7 +5900,7 @@
TIME_STAMP("smtp done", 1);
}
else if(!error_mess)
@@ -826,7 +826,7 @@
ps_global->c_client_error);
if(verbose_file){
-@@ -5895,7 +5895,7 @@
+@@ -5908,7 +5908,7 @@
TIME_STAMP("verbose start", 1);
fclose(verbose_send_output);
verbose_send_output = NULL;
@@ -835,7 +835,7 @@
display_output_file(verbose_file, "Verbose SMTP Interaction",
NULL, DOF_BRIEF);
TIME_STAMP("verbose end", 1);
-@@ -5985,12 +5985,12 @@
+@@ -5998,12 +5998,12 @@
if(folder_index(fcc, *fcc_cntxt, FI_FOLDER) < 0){
if(ps_global->context_list->next)
sprintf(tmp_20k_buf,
@@ -850,7 +850,7 @@
strsquish(tmp_20k_buf + 500, fcc, 40));
if(force || want_to(tmp_20k_buf,'y','n',NO_HELP,WT_NORM) == 'y'){
-@@ -6027,7 +6027,7 @@
+@@ -6040,7 +6040,7 @@
ok++;
}
else{
@@ -859,7 +859,7 @@
strsquish(tmp_20k_buf + 500, fcc, 40));
if(force || want_to(tmp_20k_buf,'y','n',NO_HELP,WT_NORM) == 'y'){
/*
-@@ -6061,8 +6061,8 @@
+@@ -6074,8 +6074,8 @@
if(ok == 0){
if(ps_global->mm_log_error){
@@ -870,7 +870,7 @@
l1 = strlen(s1);
l2 = strlen(s2);
-@@ -6080,10 +6080,10 @@
+@@ -6093,10 +6093,10 @@
}
else
@@ -883,7 +883,7 @@
q_status_message(SM_ORDER | SM_DING, 3, 3, errstr);
}
-@@ -6131,7 +6131,7 @@
+@@ -6144,7 +6144,7 @@
if(label && *label){
char msg_buf[80];
@@ -892,7 +892,7 @@
we_cancel = busy_alarm(1, msg_buf, NULL, 1);
}
else
-@@ -6167,7 +6167,7 @@
+@@ -6180,7 +6180,7 @@
we_cancel = 0;
q_status_message1(SM_ORDER | SM_DING, 3, 5,
@@ -901,7 +901,7 @@
dprint(1, (debugfile, "ERROR appending %s in \"%s\"",
fcc, cntxt ? cntxt->context : "NULL"));
return(0);
-@@ -6657,7 +6657,7 @@
+@@ -6670,7 +6670,7 @@
if((file_contents = (void *)so_get(FileStar, pa->filename,
READ_ACCESS)) == NULL){
q_status_message2(SM_ORDER | SM_DING, 3, 4,
@@ -910,7 +910,7 @@
error_description(errno), pa->filename);
display_message('x');
continue;
-@@ -7192,13 +7192,17 @@
+@@ -7205,13 +7205,17 @@
body->subtype = cpystr("octet-stream");
}
@@ -935,7 +935,7 @@
}
}
-@@ -7369,6 +7373,9 @@
+@@ -7382,6 +7386,9 @@
ps_global->VAR_CHAR_SET,
encode_whole_header(field, header));
@@ -945,7 +945,7 @@
if(value && value == text){ /* no encoding was done, have to fold */
int fold_by, len;
char *actual_field;
-@@ -7822,7 +7829,7 @@
+@@ -7835,7 +7842,7 @@
break;
default:
@@ -954,7 +954,7 @@
break;
}
}
-@@ -8143,7 +8150,8 @@
+@@ -8156,7 +8163,8 @@
switch (body->encoding) { /* all else needs filtering */
case ENC8BIT: /* encode 8BIT into QUOTED-PRINTABLE */
@@ -964,7 +964,7 @@
break;
case ENCBINARY: /* encode binary into BASE64 */
-@@ -8157,7 +8165,7 @@
+@@ -8170,7 +8178,7 @@
if(encode_error = gf_pipe(gc, l_putc)){ /* shove body part down pipe */
q_status_message1(SM_ORDER | SM_DING, 3, 4,
@@ -973,7 +973,7 @@
display_message('x');
}
-@@ -8245,7 +8253,7 @@
+@@ -8258,7 +8266,7 @@
&& !(so_puts(so, "Content-Transfer-Encoding: ")
&& so_puts(so, body_encodings[(body->encoding==ENCBINARY)
? ENCBASE64
@@ -982,7 +982,7 @@
? ENCQUOTEDPRINTABLE
: (body->encoding <= ENCMAX)
? body->encoding
-@@ -8911,7 +8919,7 @@
+@@ -8924,7 +8932,7 @@
|| (forbid = pine_header_forbidden(name))){
if(forbid)
q_status_message1(SM_ORDER, 3, 3,
@@ -991,7 +991,7 @@
*t = save;
continue;
-@@ -9057,7 +9065,7 @@
+@@ -9070,7 +9078,7 @@
if(ps_global->post){
if(gripe)
q_status_message(SM_ORDER|SM_DING, 3, 3,
diff --git a/chinese/pine4/files/patch-bn b/chinese/pine4/files/patch-bn
index 7407c5832c20..40313c775000 100644
--- a/chinese/pine4/files/patch-bn
+++ b/chinese/pine4/files/patch-bn
@@ -1,6 +1,6 @@
---- pine/takeaddr.c.orig Fri Sep 10 05:35:29 1999
-+++ pine/takeaddr.c Thu Oct 14 10:53:45 1999
-@@ -895,7 +895,7 @@
+--- pine/takeaddr.c.orig Wed Oct 20 04:28:01 1999
++++ pine/takeaddr.c Fri Nov 19 16:18:24 1999
+@@ -896,7 +896,7 @@
return;
take_to_addrbooks_cancel:
@@ -9,7 +9,7 @@
if(tas && *tas){
restore_state(&((*tas)->state));
(*tas)->pab = NULL;
-@@ -1385,7 +1385,7 @@
+@@ -1395,7 +1395,7 @@
break;
case MC_EXIT: /* exit takeaddr screen */
@@ -18,7 +18,7 @@
ret = 1;
done++;
break;
-@@ -2862,7 +2862,7 @@
+@@ -2872,7 +2872,7 @@
switch(j){
case 'x':
@@ -27,7 +27,7 @@
return;
case 'e':
-@@ -2962,7 +2962,7 @@
+@@ -2972,7 +2972,7 @@
switch(i){
case 'x':
@@ -36,7 +36,7 @@
return;
case 'a':
-@@ -4937,7 +4937,7 @@
+@@ -4947,7 +4947,7 @@
switch(j){
case 'x':
@@ -45,7 +45,7 @@
break;
case 'e':
-@@ -5155,7 +5155,7 @@
+@@ -5165,7 +5165,7 @@
switch(j){
case 'x':
diff --git a/chinese/pine4/files/patch-bo b/chinese/pine4/files/patch-bo
index fc5f8a3613de..9530a919ff12 100644
--- a/chinese/pine4/files/patch-bo
+++ b/chinese/pine4/files/patch-bo
@@ -1,5 +1,5 @@
---- build.orig Sat Feb 20 07:30:54 1999
-+++ build Thu Oct 14 11:31:12 1999
+--- build.orig Tue Nov 16 06:16:25 1999
++++ build Fri Nov 19 16:18:24 1999
@@ -80,8 +80,8 @@
pine The Pine mailer. Once compiled this should work just fine on
your system with no other files than this binary, and no
@@ -11,7 +11,7 @@
pico The standalone editor similar to the Pine message composer.
This is a very simple straight forward text editor.
-@@ -278,11 +278,11 @@
+@@ -279,11 +279,11 @@
if [ -s c-client ] ; then rm -f c-client ; fi
ln -s imap/c-client c-client
@@ -28,7 +28,7 @@
eval echo make "$makeargs" "$K1" "$K2" $ccltarg
cd $PHOME/imap
eval make "$makeargs" "$K1" "$K2" $ccltarg
-@@ -303,17 +303,17 @@
+@@ -304,17 +304,17 @@
cd $PHOME/bin
rm -f pine mtest imapd pico pilot
if [ -s ../pine/pine ] ; then ln ../pine/pine pine ; fi
@@ -50,7 +50,7 @@
esac
echo "Done"
;;
-@@ -325,10 +325,10 @@
+@@ -326,10 +326,10 @@
make clean
echo "Cleaning Pine"
cd $PHOME/pine
diff --git a/chinese/pine4/files/patch-br b/chinese/pine4/files/patch-br
index 8f064b9d66fb..43139089e326 100644
--- a/chinese/pine4/files/patch-br
+++ b/chinese/pine4/files/patch-br
@@ -1,6 +1,6 @@
---- pine/pine.hlp.orig Tue Oct 5 02:51:50 1999
-+++ pine/pine.hlp Thu Oct 14 10:53:45 1999
-@@ -489,9 +489,9 @@
+--- pine/pine.hlp.orig Thu Nov 18 02:05:25 1999
++++ pine/pine.hlp Fri Nov 19 16:18:25 1999
+@@ -492,9 +492,9 @@
executable &lt;Unix search path&gt;/pine
persnl cfg ~/.pinerc
@@ -13,7 +13,7 @@
interrupted ~/.pine-interrupted-mail
debug ~/.pine-debugN
-@@ -504,7 +504,7 @@
+@@ -507,7 +507,7 @@
sentmail# ~/mail/sent-mail
mailcap# ~/.mailcap + /etc/mailcap
+ /usr/etc/mailcap + /usr/local/etc/mailcap
@@ -22,7 +22,7 @@
news-spool varies across Unix flavors, e.g. /usr/spool/news or /var/news
active-news varies across Unix flavors, e.g. /usr/lib/news/active
-@@ -929,9 +929,9 @@
+@@ -932,9 +932,9 @@
this link now to send a message to it:<BR>
<A HREF="X-Pine-Gripe:_LOCAL_ADDRESS_?local"><!--#echo var="_LOCAL_FULLNAME_"--></A><P>
<!--chtml endif-->
@@ -34,7 +34,7 @@
<HR WIDTH="75%">
<!--chtml endif-->
<P>
-@@ -1019,7 +1019,7 @@
+@@ -1022,7 +1022,7 @@
<OL>
<LI> <A HREF="#intro">Introduction</A>
<LI> <A HREF="#pine_help">Pine Help</A>
@@ -43,7 +43,7 @@
<LI> <A HREF="#local_support">Local Support Contacts</A>
<!--chtml endif-->
<LI> <A HREF="#giving_cmds">Giving Commands in Pine</A>
-@@ -1132,9 +1132,9 @@
+@@ -1135,9 +1135,9 @@
at your site.)
diff --git a/chinese/pine4/files/pine.conf b/chinese/pine4/files/pine.conf
index 7aadc067d99f..ef3a988472d9 100644
--- a/chinese/pine4/files/pine.conf
+++ b/chinese/pine4/files/pine.conf
@@ -24,6 +24,10 @@
# Default condition for all of the features is no-.
feature-list=enable-8bit-esmtp-negotiation,
enable-arrow-navigation,
+ enable-full-header-cmd,
+ quell-dead-letter-on-cancel,
+ enable-suspend,
+ enable-arrow-navigation-relaxed,
signature-at-bottom
# Reflects capabilities of the display you have. Default: US-ASCII.
diff --git a/chinese/pine4/pkg-descr b/chinese/pine4/pkg-descr
index 5680287a411e..2aa7607b60d6 100644
--- a/chinese/pine4/pkg-descr
+++ b/chinese/pine4/pkg-descr
@@ -27,7 +27,7 @@ which is maintained by:
- Adrian Penisoara (Ady)
pine@freebsd.ady.ro
-zh-pine 4.20 ports for FreeBSD is maintained by:
+zh-pine 4.21 ports for FreeBSD is maintained by:
- Tai-hwa Liang
avatar@www.mmlab.cse.yzu.edu.tw