forked from pool/alpine
Updating link to change in openSUSE:Factory/alpine revision 46.0
OBS-URL: https://build.opensuse.org/package/show/server:mail/alpine?expand=0&rev=29d0789f4220d751d698099644a6c9a8
This commit is contained in:
parent
361b774555
commit
40c0502f90
12
UPDATING.txt
Normal file
12
UPDATING.txt
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
Update procedure:
|
||||||
|
|
||||||
|
Some features of Alpine do not exist in the release tarball but are only
|
||||||
|
provided as patches (but by the same author..). So when there is a new
|
||||||
|
release, the OOT patches on the website get updated too.
|
||||||
|
|
||||||
|
for i in WrtAcc colortext fancy fillpara fromheader insertpat maildir rules; do
|
||||||
|
wget -O- http://alpine.x10host.com/alpine/patches/alpine-2.22/$i.patch.gz | gzip -cd >chappa-$i.patch;
|
||||||
|
done
|
||||||
|
|
||||||
|
These do not necessarily apply cleanly, so they also need to be
|
||||||
|
quilt-refreshed as needed.
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:6030b6881b8168546756ab3a5e43628d8d564539b0476578e287775573a77438
|
|
||||||
size 4720856
|
|
3
alpine-2.22.tar.xz
Normal file
3
alpine-2.22.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:849567c1b6f71fde3aaa1c97cf0577b12a525d9e22c0ea47797c4bf1cd2bbfdb
|
||||||
|
size 6336604
|
@ -1,20 +0,0 @@
|
|||||||
diff -rc alpine-2.21/alpine/imap.c alpine-2.21.pwdfilebug/alpine/imap.c
|
|
||||||
*** alpine-2.21/alpine/imap.c 2017-02-05 17:06:22.523218671 -0700
|
|
||||||
--- alpine-2.21.pwdfilebug/alpine/imap.c 2019-04-27 16:48:22.433116057 -0600
|
|
||||||
***************
|
|
||||||
*** 2636,2642 ****
|
|
||||||
if(ps_global->pwdcert == NULL){
|
|
||||||
q_status_message(SM_ORDER, 3, 3, "Attempting to encrypt password file");
|
|
||||||
i = setup_pwdcert(&ps_global->pwdcert);
|
|
||||||
! if(i == 0 && ps_global->pwdcert == NULL)
|
|
||||||
ps_global->pwdcert = (void *) ALPINE_self_signed_certificate(NULL, 0, ps_global->pwdcertdir, MASTERNAME);
|
|
||||||
}
|
|
||||||
if(ps_global->pwdcert == NULL){ /* we tried but failed */
|
|
||||||
--- 2636,2642 ----
|
|
||||||
if(ps_global->pwdcert == NULL){
|
|
||||||
q_status_message(SM_ORDER, 3, 3, "Attempting to encrypt password file");
|
|
||||||
i = setup_pwdcert(&ps_global->pwdcert);
|
|
||||||
! if((i == 0 || i == -5) && ps_global->pwdcert == NULL)
|
|
||||||
ps_global->pwdcert = (void *) ALPINE_self_signed_certificate(NULL, 0, ps_global->pwdcertdir, MASTERNAME);
|
|
||||||
}
|
|
||||||
if(ps_global->pwdcert == NULL){ /* we tried but failed */
|
|
@ -1,27 +1,16 @@
|
|||||||
Index: alpine-2.20/alpine/Makefile.am
|
---
|
||||||
|
alpine/Makefile.am | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: alpine-2.22/alpine/Makefile.am
|
||||||
===================================================================
|
===================================================================
|
||||||
--- alpine-2.20.orig/alpine/Makefile.am
|
--- alpine-2.22.orig/alpine/Makefile.am
|
||||||
+++ alpine-2.20/alpine/Makefile.am
|
+++ alpine-2.22/alpine/Makefile.am
|
||||||
@@ -48,5 +48,5 @@ AM_LDFLAGS = `cat @top_srcdir@/c-client/
|
@@ -50,5 +50,5 @@ AM_LDFLAGS = `cat @top_srcdir@/c-client/
|
||||||
CLEANFILES = date.c
|
CLEANFILES = date.c
|
||||||
|
|
||||||
date.c:
|
date.c:
|
||||||
- echo "char datestamp[]="\"`date`\"";" > date.c
|
- echo "char datestamp[]="\"$(ALPINE_DATESTAMP)\"";" > date.c
|
||||||
- echo "char hoststamp[]="\"`hostname`\"";" >> date.c
|
- echo "char hoststamp[]="\"$(ALPINE_HOSTSTAMP)\"";" >> date.c
|
||||||
+ echo 'char datestamp[]="today";' > date.c
|
+ echo "char datestamp[]="\"today\"";" > date.c
|
||||||
+ echo 'char hoststamp[]="sand";' >> date.c
|
+ echo "char hoststamp[]="\"sand\"";" >> date.c
|
||||||
Index: alpine-2.20/alpine/Makefile.in
|
|
||||||
===================================================================
|
|
||||||
--- alpine-2.20.orig/alpine/Makefile.in
|
|
||||||
+++ alpine-2.20/alpine/Makefile.in
|
|
||||||
@@ -888,8 +888,8 @@ uninstall-am: uninstall-binPROGRAMS
|
|
||||||
|
|
||||||
|
|
||||||
date.c:
|
|
||||||
- echo "char datestamp[]="\"`date`\"";" > date.c
|
|
||||||
- echo "char hoststamp[]="\"`hostname`\"";" >> date.c
|
|
||||||
+ echo 'char datestamp[]="today";' > date.c
|
|
||||||
+ echo 'char hoststamp[]="sand";' >> date.c
|
|
||||||
|
|
||||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
|
||||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu May 7 20:32:03 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
|
||||||
|
|
||||||
|
- Update to release 2.22
|
||||||
|
* Support for XOAUTH2 authentication method in Gmail.
|
||||||
|
* NTLM authentication support with the ntlm library.
|
||||||
|
* Added the "/tls1_3" flag for servers that support it.
|
||||||
|
* Add the "g" option to the select command that works in IMAP
|
||||||
|
servers that implement the X-GM-EXT-1 capability (such as the
|
||||||
|
one offered by Gmail).
|
||||||
|
* Added "/auth=XYZ" to the way to define a server. This allows
|
||||||
|
users to select the method to authenticate to an IMAP, SMTP
|
||||||
|
or POP3 server. Examples are /auth=plain, or /auth=gssapi,
|
||||||
|
etc.
|
||||||
|
* When a message is of type multipart/mixed, and its first part
|
||||||
|
is multipart/signed, Alpine will include the text of the
|
||||||
|
original message in a reply message, instead of including a
|
||||||
|
multipart attachment.
|
||||||
|
* Added backward search in the index screen.
|
||||||
|
* pico: Add -dict option to Pico, which allows users to choose a
|
||||||
|
dictionary when spelling.
|
||||||
|
- Drop /usr/bin/mailutil, it is not built by default anymore.
|
||||||
|
- Remove alpine-pinepw.patch (merged upstream)
|
||||||
|
- Add description files for patches 600-616. These live in a
|
||||||
|
separate file because (a) upstream does not offer the description
|
||||||
|
as part of the patch file, (b) redownloading the patches would
|
||||||
|
nuke any added description due to <a>.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Aug 26 08:33:31 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
Mon Aug 26 08:33:31 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
||||||
|
|
||||||
|
25
alpine.spec
25
alpine.spec
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package alpine
|
# spec file for package alpine
|
||||||
#
|
#
|
||||||
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
|
# Copyright (c) 2020 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -22,7 +22,7 @@ Name: alpine
|
|||||||
Summary: Mail User Agent
|
Summary: Mail User Agent
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
Group: Productivity/Networking/Email/Clients
|
Group: Productivity/Networking/Email/Clients
|
||||||
Version: 2.21
|
Version: 2.22
|
||||||
Release: 0
|
Release: 0
|
||||||
URL: http://alpine.x10host.com/alpine/
|
URL: http://alpine.x10host.com/alpine/
|
||||||
|
|
||||||
@ -31,12 +31,12 @@ URL: http://alpine.x10host.com/alpine/
|
|||||||
Source: %name-%version.tar.xz
|
Source: %name-%version.tar.xz
|
||||||
Source1: %name.png
|
Source1: %name.png
|
||||||
Source2: %name.desktop
|
Source2: %name.desktop
|
||||||
|
Source9: UPDATING.txt
|
||||||
Patch2: make-use-of-strncat-safer.diff
|
Patch2: make-use-of-strncat-safer.diff
|
||||||
Patch3: operation-may-be-undefined-warning.diff
|
Patch3: operation-may-be-undefined-warning.diff
|
||||||
Patch4: fix-implicit.patch
|
Patch4: fix-implicit.patch
|
||||||
Patch5: alpine-gcc44.diff
|
Patch5: alpine-gcc44.diff
|
||||||
Patch6: alpine-timestamp.patch
|
Patch6: alpine-timestamp.patch
|
||||||
Patch7: alpine-pinepw.patch
|
|
||||||
Patch10: pico-fix-spurious-undef-warnings.diff
|
Patch10: pico-fix-spurious-undef-warnings.diff
|
||||||
Patch20: pine-expression-warnings.diff
|
Patch20: pine-expression-warnings.diff
|
||||||
Patch60: signal-and-panic-improvements.diff
|
Patch60: signal-and-panic-improvements.diff
|
||||||
@ -45,13 +45,21 @@ Patch61: return-values.diff
|
|||||||
# Eduardo Chappa's patches.
|
# Eduardo Chappa's patches.
|
||||||
# http://patches.freeiz.com/alpine/
|
# http://patches.freeiz.com/alpine/
|
||||||
#
|
#
|
||||||
|
Source600: chappa-colortext.txt
|
||||||
Patch600: chappa-colortext.patch
|
Patch600: chappa-colortext.patch
|
||||||
|
Source601: chappa-fancy.txt
|
||||||
Patch601: chappa-fancy.patch
|
Patch601: chappa-fancy.patch
|
||||||
|
Source603: chappa-insertpat.txt
|
||||||
Patch603: chappa-insertpat.patch
|
Patch603: chappa-insertpat.patch
|
||||||
|
Source604: chappa-maildir.txt
|
||||||
Patch604: chappa-maildir.patch
|
Patch604: chappa-maildir.patch
|
||||||
|
Source605: chappa-WrtAcc.txt
|
||||||
Patch605: chappa-WrtAcc.patch
|
Patch605: chappa-WrtAcc.patch
|
||||||
|
Source614: chappa-fillpara.txt
|
||||||
Patch614: chappa-fillpara.patch
|
Patch614: chappa-fillpara.patch
|
||||||
|
Source615: chappa-fromheader.txt
|
||||||
Patch615: chappa-fromheader.patch
|
Patch615: chappa-fromheader.patch
|
||||||
|
Source616: chappa-rules.txt
|
||||||
Patch616: chappa-rules.patch
|
Patch616: chappa-rules.patch
|
||||||
BuildRequires: autoconf >= 2.69
|
BuildRequires: autoconf >= 2.69
|
||||||
BuildRequires: krb5-devel
|
BuildRequires: krb5-devel
|
||||||
@ -132,7 +140,6 @@ fi
|
|||||||
%patch4 -p1
|
%patch4 -p1
|
||||||
%patch5 -p1
|
%patch5 -p1
|
||||||
%patch6 -p1
|
%patch6 -p1
|
||||||
%patch7 -p1
|
|
||||||
%patch10 -p1
|
%patch10 -p1
|
||||||
%patch20 -p1
|
%patch20 -p1
|
||||||
%patch60 -p1
|
%patch60 -p1
|
||||||
@ -196,13 +203,11 @@ perl -i -pe 's{(define SYSTYPE) "LNX"}{$1 "'"$tag"'"}g' include/config.h
|
|||||||
make %{?_smp_mflags} EXTRACFLAGS="$CFLAGS" EXTRALDFLAGS="$EXTRALDFLAGS"
|
make %{?_smp_mflags} EXTRACFLAGS="$CFLAGS" EXTRALDFLAGS="$EXTRALDFLAGS"
|
||||||
|
|
||||||
%install
|
%install
|
||||||
make install DESTDIR=%buildroot
|
%make_install
|
||||||
#
|
#
|
||||||
# When called as alpinef, alpine uses function keys instead of Control keys:
|
# When called as alpinef, alpine uses function keys instead of Control keys:
|
||||||
#
|
#
|
||||||
ln %{buildroot}/%{_bindir}/alpine %{buildroot}/%{_bindir}/alpinef
|
ln %{buildroot}/%{_bindir}/alpine %{buildroot}/%{_bindir}/alpinef
|
||||||
install -m755 imap/mailutil/mailutil %{buildroot}/%{_bindir}
|
|
||||||
install -m644 imap/src/mailutil/mailutil.1 %{buildroot}/%{_mandir}/man1/
|
|
||||||
install -D -m644 %{SOURCE1} %{buildroot}/%{_datadir}/pixmaps/%name.png
|
install -D -m644 %{SOURCE1} %{buildroot}/%{_datadir}/pixmaps/%name.png
|
||||||
install -D -m644 %{SOURCE2} %{buildroot}/%{_datadir}/applications/%name.desktop
|
install -D -m644 %{SOURCE2} %{buildroot}/%{_datadir}/applications/%name.desktop
|
||||||
%suse_update_desktop_file %name
|
%suse_update_desktop_file %name
|
||||||
@ -213,8 +218,8 @@ install -m755 pico/{pico,pilot} %{buildroot}/%{_bindir}
|
|||||||
install -m644 doc/man1/{pico.1,pilot.1} %{buildroot}/%{_mandir}/man1/
|
install -m644 doc/man1/{pico.1,pilot.1} %{buildroot}/%{_mandir}/man1/
|
||||||
|
|
||||||
%check
|
%check
|
||||||
#since where are no logs in the package at the moment, there are no checks,
|
#since there are no logs in the package at the moment, there are no checks,
|
||||||
#but the warning logs can be recreated for regresstion tracking in warnings:
|
#but the warning logs can be recreated for regression tracking in warnings:
|
||||||
if [ -s %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log ]; then
|
if [ -s %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log ]; then
|
||||||
grep -e '^[a-z0-9_]*.[cho]:' -e 'Entering directory' make.log |
|
grep -e '^[a-z0-9_]*.[cho]:' -e 'Entering directory' make.log |
|
||||||
sed "s/^make\[.\]: //;/Entering directory/s/[\`']//g;" \
|
sed "s/^make\[.\]: //;/Entering directory/s/[\`']//g;" \
|
||||||
@ -269,13 +274,11 @@ fi
|
|||||||
%doc %{_mandir}/man1/alpine.*
|
%doc %{_mandir}/man1/alpine.*
|
||||||
%doc %{_mandir}/man1/rpdump.*
|
%doc %{_mandir}/man1/rpdump.*
|
||||||
%doc %{_mandir}/man1/rpload.*
|
%doc %{_mandir}/man1/rpload.*
|
||||||
%doc %{_mandir}/man1/mailutil.*
|
|
||||||
%doc README NOTICE LICENSE
|
%doc README NOTICE LICENSE
|
||||||
%doc doc/mailcap.unx doc/mime.types doc/tech-notes/tech-notes.txt doc/tech-notes/*.html
|
%doc doc/mailcap.unx doc/mime.types doc/tech-notes/tech-notes.txt doc/tech-notes/*.html
|
||||||
%{_bindir}/*pine
|
%{_bindir}/*pine
|
||||||
%{_bindir}/alpinef
|
%{_bindir}/alpinef
|
||||||
%{_bindir}/rp*
|
%{_bindir}/rp*
|
||||||
%{_bindir}/mailutil
|
|
||||||
%{_datadir}/applications/%name.desktop
|
%{_datadir}/applications/%name.desktop
|
||||||
%{_datadir}/pixmaps/%name.png
|
%{_datadir}/pixmaps/%name.png
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
diff -rc alpine-2.21/pico/basic.c alpine-2.21.WrtAcc/pico/basic.c
|
diff -rc alpine-2.22/pico/basic.c alpine-2.22.WrtAcc/pico/basic.c
|
||||||
*** alpine-2.21/pico/basic.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/basic.c 2020-01-19 01:32:18.272513938 -0700
|
||||||
--- alpine-2.21.WrtAcc/pico/basic.c Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.WrtAcc/pico/basic.c 2020-01-19 01:34:53.223471368 -0700
|
||||||
***************
|
***************
|
||||||
*** 342,347 ****
|
*** 342,347 ****
|
||||||
--- 342,530 ----
|
--- 342,530 ----
|
||||||
@ -193,9 +193,9 @@ diff -rc alpine-2.21/pico/basic.c alpine-2.21.WrtAcc/pico/basic.c
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* go forword to the end of the current paragraph
|
* go forword to the end of the current paragraph
|
||||||
diff -rc alpine-2.21/pico/composer.c alpine-2.21.WrtAcc/pico/composer.c
|
diff -rc alpine-2.22/pico/composer.c alpine-2.22.WrtAcc/pico/composer.c
|
||||||
*** alpine-2.21/pico/composer.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/composer.c 2020-01-19 01:32:18.262514139 -0700
|
||||||
--- alpine-2.21.WrtAcc/pico/composer.c Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.WrtAcc/pico/composer.c 2020-01-19 01:34:53.224471360 -0700
|
||||||
***************
|
***************
|
||||||
*** 2015,2021 ****
|
*** 2015,2021 ****
|
||||||
tbufp = &strng[ods.p_len];
|
tbufp = &strng[ods.p_len];
|
||||||
@ -229,9 +229,9 @@ diff -rc alpine-2.21/pico/composer.c alpine-2.21.WrtAcc/pico/composer.c
|
|||||||
case (CTRL|KEY_LEFT): /* word skip left */
|
case (CTRL|KEY_LEFT): /* word skip left */
|
||||||
if(ods.p_ind > 0) /* Scoot one char left if possible */
|
if(ods.p_ind > 0) /* Scoot one char left if possible */
|
||||||
ods.p_ind--;
|
ods.p_ind--;
|
||||||
diff -rc alpine-2.21/pico/display.c alpine-2.21.WrtAcc/pico/display.c
|
diff -rc alpine-2.22/pico/display.c alpine-2.22.WrtAcc/pico/display.c
|
||||||
*** alpine-2.21/pico/display.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/display.c 2020-01-19 01:32:18.428510798 -0700
|
||||||
--- alpine-2.21.WrtAcc/pico/display.c Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.WrtAcc/pico/display.c 2020-01-19 01:34:53.225471353 -0700
|
||||||
***************
|
***************
|
||||||
*** 2196,2201 ****
|
*** 2196,2201 ****
|
||||||
--- 2196,2206 ----
|
--- 2196,2206 ----
|
||||||
@ -263,9 +263,9 @@ diff -rc alpine-2.21/pico/display.c alpine-2.21.WrtAcc/pico/display.c
|
|||||||
/* look for match in extra_v */
|
/* look for match in extra_v */
|
||||||
for(i = 0; i < 12; i++)
|
for(i = 0; i < 12; i++)
|
||||||
if(c && c == extra_v[i]){
|
if(c && c == extra_v[i]){
|
||||||
diff -rc alpine-2.21/pico/ebind.h alpine-2.21.WrtAcc/pico/ebind.h
|
diff -rc alpine-2.22/pico/ebind.h alpine-2.22.WrtAcc/pico/ebind.h
|
||||||
*** alpine-2.21/pico/ebind.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/ebind.h 2020-01-19 01:32:18.369511986 -0700
|
||||||
--- alpine-2.21.WrtAcc/pico/ebind.h Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.WrtAcc/pico/ebind.h 2020-01-19 01:34:53.226471345 -0700
|
||||||
***************
|
***************
|
||||||
*** 61,67 ****
|
*** 61,67 ****
|
||||||
#ifdef MOUSE
|
#ifdef MOUSE
|
||||||
@ -319,9 +319,9 @@ diff -rc alpine-2.21/pico/ebind.h alpine-2.21.WrtAcc/pico/ebind.h
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
{CTRL|'A', gotobol},
|
{CTRL|'A', gotobol},
|
||||||
diff -rc alpine-2.21/pico/efunc.h alpine-2.21.WrtAcc/pico/efunc.h
|
diff -rc alpine-2.22/pico/efunc.h alpine-2.22.WrtAcc/pico/efunc.h
|
||||||
*** alpine-2.21/pico/efunc.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/efunc.h 2020-01-19 01:32:18.308513213 -0700
|
||||||
--- alpine-2.21.WrtAcc/pico/efunc.h Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.WrtAcc/pico/efunc.h 2020-01-19 01:34:53.226471345 -0700
|
||||||
***************
|
***************
|
||||||
*** 54,59 ****
|
*** 54,59 ****
|
||||||
--- 54,62 ----
|
--- 54,62 ----
|
||||||
@ -334,12 +334,12 @@ diff -rc alpine-2.21/pico/efunc.h alpine-2.21.WrtAcc/pico/efunc.h
|
|||||||
extern int forwpage(int, int);
|
extern int forwpage(int, int);
|
||||||
extern int backpage(int, int);
|
extern int backpage(int, int);
|
||||||
extern int scrollupline(int, int);
|
extern int scrollupline(int, int);
|
||||||
diff -rc alpine-2.21/pico/main.c alpine-2.21.WrtAcc/pico/main.c
|
diff -rc alpine-2.22/pico/main.c alpine-2.22.WrtAcc/pico/main.c
|
||||||
*** alpine-2.21/pico/main.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/main.c 2020-01-19 01:32:18.322512932 -0700
|
||||||
--- alpine-2.21.WrtAcc/pico/main.c Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.WrtAcc/pico/main.c 2020-01-19 01:34:53.226471345 -0700
|
||||||
***************
|
***************
|
||||||
*** 451,456 ****
|
*** 458,463 ****
|
||||||
--- 451,462 ----
|
--- 458,469 ----
|
||||||
emlwrite(_("You may possibly have new mail."), NULL);
|
emlwrite(_("You may possibly have new mail."), NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
9
chappa-WrtAcc.txt
Normal file
9
chappa-WrtAcc.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/WrtAcc.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
This patch allows you to write many kind of accents in Alpine and pico. You can
|
||||||
|
write characters like á. Each character is introduced using a consistent
|
||||||
|
combination of keystrokes. The first keystroke is always "^\". Then you write
|
||||||
|
the kind of accent you want to write and finally the letter over which you want
|
||||||
|
the accent to be written, so á would be written ^\'a. Other special characters
|
||||||
|
such as ß, ø and £ can be input too using special combinations described below.
|
@ -1,9 +1,9 @@
|
|||||||
diff -rc alpine-2.21/alpine/confscroll.c alpine-2.21.colortext/alpine/confscroll.c
|
diff -rc alpine-2.22/alpine/confscroll.c alpine-2.22.colortext/alpine/confscroll.c
|
||||||
*** alpine-2.21/alpine/confscroll.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/alpine/confscroll.c 2020-01-19 01:32:20.190475483 -0700
|
||||||
--- alpine-2.21.colortext/alpine/confscroll.c Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/alpine/confscroll.c 2020-01-19 01:34:56.906444203 -0700
|
||||||
***************
|
***************
|
||||||
*** 5222,5227 ****
|
*** 5228,5233 ****
|
||||||
--- 5222,5230 ----
|
--- 5228,5236 ----
|
||||||
|
|
||||||
clear_index_cache(ps->mail_stream, 0);
|
clear_index_cache(ps->mail_stream, 0);
|
||||||
}
|
}
|
||||||
@ -13,12 +13,12 @@ diff -rc alpine-2.21/alpine/confscroll.c alpine-2.21.colortext/alpine/confscroll
|
|||||||
else if(var == &ps->vars[V_INIT_CMD_LIST]){
|
else if(var == &ps->vars[V_INIT_CMD_LIST]){
|
||||||
if(!revert)
|
if(!revert)
|
||||||
q_status_message(SM_ASYNC, 0, 3,
|
q_status_message(SM_ASYNC, 0, 3,
|
||||||
diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
diff -rc alpine-2.22/pith/conf.c alpine-2.22.colortext/pith/conf.c
|
||||||
*** alpine-2.21/pith/conf.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conf.c 2020-01-19 01:32:18.678505766 -0700
|
||||||
--- alpine-2.21.colortext/pith/conf.c Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/conf.c 2020-01-19 01:34:56.908444189 -0700
|
||||||
***************
|
***************
|
||||||
*** 232,237 ****
|
*** 231,236 ****
|
||||||
--- 232,239 ----
|
--- 231,238 ----
|
||||||
|
|
||||||
CONF_TXT_T cf_text_fillcol[] = "Specifies the column of the screen where the composer should wrap.";
|
CONF_TXT_T cf_text_fillcol[] = "Specifies the column of the screen where the composer should wrap.";
|
||||||
|
|
||||||
@ -28,8 +28,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
|||||||
|
|
||||||
CONF_TXT_T cf_text_quotereplstr[] = "Specifies the string to replace quotes with when viewing a message.";
|
CONF_TXT_T cf_text_quotereplstr[] = "Specifies the string to replace quotes with when viewing a message.";
|
||||||
***************
|
***************
|
||||||
*** 572,577 ****
|
*** 577,582 ****
|
||||||
--- 574,581 ----
|
--- 579,586 ----
|
||||||
#endif /* _WINDOWS */
|
#endif /* _WINDOWS */
|
||||||
{"composer-wrap-column", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
{"composer-wrap-column", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
||||||
NULL, cf_text_fillcol},
|
NULL, cf_text_fillcol},
|
||||||
@ -39,8 +39,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
|||||||
NULL, cf_text_replystr},
|
NULL, cf_text_replystr},
|
||||||
{"reply-leadin", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
{"reply-leadin", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
||||||
***************
|
***************
|
||||||
*** 833,838 ****
|
*** 844,849 ****
|
||||||
--- 837,844 ----
|
--- 848,855 ----
|
||||||
{"incoming-unseen-background-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
{"incoming-unseen-background-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
||||||
{"signature-foreground-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
{"signature-foreground-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
||||||
{"signature-background-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
{"signature-background-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
||||||
@ -50,8 +50,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
|||||||
{"prompt-background-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
{"prompt-background-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
||||||
{"header-general-foreground-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
{"header-general-foreground-color", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0},
|
||||||
***************
|
***************
|
||||||
*** 2021,2026 ****
|
*** 2035,2040 ****
|
||||||
--- 2027,2034 ----
|
--- 2041,2048 ----
|
||||||
set_current_val(&vars[V_DICTIONARY], TRUE, TRUE);
|
set_current_val(&vars[V_DICTIONARY], TRUE, TRUE);
|
||||||
#endif /* _WINDOWS */
|
#endif /* _WINDOWS */
|
||||||
set_current_val(&vars[V_IMAGE_VIEWER], TRUE, TRUE);
|
set_current_val(&vars[V_IMAGE_VIEWER], TRUE, TRUE);
|
||||||
@ -61,8 +61,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
|||||||
set_current_val(&vars[V_HISTORY], TRUE, TRUE);
|
set_current_val(&vars[V_HISTORY], TRUE, TRUE);
|
||||||
set_current_val(&vars[V_SMTP_SERVER], TRUE, TRUE);
|
set_current_val(&vars[V_SMTP_SERVER], TRUE, TRUE);
|
||||||
***************
|
***************
|
||||||
*** 6567,6572 ****
|
*** 6599,6604 ****
|
||||||
--- 6575,6581 ----
|
--- 6607,6613 ----
|
||||||
set_color_val(&vars[V_IND_OP_FORE_COLOR], 0);
|
set_color_val(&vars[V_IND_OP_FORE_COLOR], 0);
|
||||||
set_color_val(&vars[V_INCUNSEEN_FORE_COLOR], 0);
|
set_color_val(&vars[V_INCUNSEEN_FORE_COLOR], 0);
|
||||||
set_color_val(&vars[V_SIGNATURE_FORE_COLOR], 0);
|
set_color_val(&vars[V_SIGNATURE_FORE_COLOR], 0);
|
||||||
@ -71,8 +71,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
|||||||
set_current_val(&ps->vars[V_INDEX_TOKEN_COLORS], TRUE, TRUE);
|
set_current_val(&ps->vars[V_INDEX_TOKEN_COLORS], TRUE, TRUE);
|
||||||
set_current_val(&ps->vars[V_VIEW_HDR_COLORS], TRUE, TRUE);
|
set_current_val(&ps->vars[V_VIEW_HDR_COLORS], TRUE, TRUE);
|
||||||
***************
|
***************
|
||||||
*** 7755,7760 ****
|
*** 7787,7792 ****
|
||||||
--- 7764,7771 ----
|
--- 7796,7803 ----
|
||||||
return(h_config_scroll_margin);
|
return(h_config_scroll_margin);
|
||||||
case V_DEADLETS :
|
case V_DEADLETS :
|
||||||
return(h_config_deadlets);
|
return(h_config_deadlets);
|
||||||
@ -82,8 +82,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
|||||||
return(h_config_composer_wrap_column);
|
return(h_config_composer_wrap_column);
|
||||||
case V_TCPOPENTIMEO :
|
case V_TCPOPENTIMEO :
|
||||||
***************
|
***************
|
||||||
*** 7922,7927 ****
|
*** 7956,7961 ****
|
||||||
--- 7933,7941 ----
|
--- 7967,7975 ----
|
||||||
case V_SIGNATURE_FORE_COLOR :
|
case V_SIGNATURE_FORE_COLOR :
|
||||||
case V_SIGNATURE_BACK_COLOR :
|
case V_SIGNATURE_BACK_COLOR :
|
||||||
return(h_config_signature_color);
|
return(h_config_signature_color);
|
||||||
@ -93,9 +93,9 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.colortext/pith/conf.c
|
|||||||
case V_PROMPT_FORE_COLOR :
|
case V_PROMPT_FORE_COLOR :
|
||||||
case V_PROMPT_BACK_COLOR :
|
case V_PROMPT_BACK_COLOR :
|
||||||
return(h_config_prompt_color);
|
return(h_config_prompt_color);
|
||||||
diff -rc alpine-2.21/pith/conf.h alpine-2.21.colortext/pith/conf.h
|
diff -rc alpine-2.22/pith/conf.h alpine-2.22.colortext/pith/conf.h
|
||||||
*** alpine-2.21/pith/conf.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conf.h 2020-01-19 01:32:19.489489496 -0700
|
||||||
--- alpine-2.21.colortext/pith/conf.h Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/conf.h 2020-01-19 01:34:56.909444181 -0700
|
||||||
***************
|
***************
|
||||||
*** 165,170 ****
|
*** 165,170 ****
|
||||||
--- 165,172 ----
|
--- 165,172 ----
|
||||||
@ -108,8 +108,8 @@ diff -rc alpine-2.21/pith/conf.h alpine-2.21.colortext/pith/conf.h
|
|||||||
#define GLO_FILLCOL vars[V_FILLCOL].global_val.p
|
#define GLO_FILLCOL vars[V_FILLCOL].global_val.p
|
||||||
#define VAR_DEADLETS vars[V_DEADLETS].current_val.p
|
#define VAR_DEADLETS vars[V_DEADLETS].current_val.p
|
||||||
***************
|
***************
|
||||||
*** 463,468 ****
|
*** 466,471 ****
|
||||||
--- 465,472 ----
|
--- 468,475 ----
|
||||||
#define GLO_SIGNATURE_FORE_COLOR vars[V_SIGNATURE_FORE_COLOR].global_val.p
|
#define GLO_SIGNATURE_FORE_COLOR vars[V_SIGNATURE_FORE_COLOR].global_val.p
|
||||||
#define VAR_SIGNATURE_BACK_COLOR vars[V_SIGNATURE_BACK_COLOR].current_val.p
|
#define VAR_SIGNATURE_BACK_COLOR vars[V_SIGNATURE_BACK_COLOR].current_val.p
|
||||||
#define GLO_SIGNATURE_BACK_COLOR vars[V_SIGNATURE_BACK_COLOR].global_val.p
|
#define GLO_SIGNATURE_BACK_COLOR vars[V_SIGNATURE_BACK_COLOR].global_val.p
|
||||||
@ -118,9 +118,9 @@ diff -rc alpine-2.21/pith/conf.h alpine-2.21.colortext/pith/conf.h
|
|||||||
#define VAR_PROMPT_FORE_COLOR vars[V_PROMPT_FORE_COLOR].current_val.p
|
#define VAR_PROMPT_FORE_COLOR vars[V_PROMPT_FORE_COLOR].current_val.p
|
||||||
#define VAR_PROMPT_BACK_COLOR vars[V_PROMPT_BACK_COLOR].current_val.p
|
#define VAR_PROMPT_BACK_COLOR vars[V_PROMPT_BACK_COLOR].current_val.p
|
||||||
#define VAR_VIEW_HDR_COLORS vars[V_VIEW_HDR_COLORS].current_val.l
|
#define VAR_VIEW_HDR_COLORS vars[V_VIEW_HDR_COLORS].current_val.l
|
||||||
diff -rc alpine-2.21/pith/conftype.h alpine-2.21.colortext/pith/conftype.h
|
diff -rc alpine-2.22/pith/conftype.h alpine-2.22.colortext/pith/conftype.h
|
||||||
*** alpine-2.21/pith/conftype.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conftype.h 2020-01-19 01:32:18.702505283 -0700
|
||||||
--- alpine-2.21.colortext/pith/conftype.h Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/conftype.h 2020-01-19 01:34:56.910444174 -0700
|
||||||
***************
|
***************
|
||||||
*** 83,88 ****
|
*** 83,88 ****
|
||||||
--- 83,89 ----
|
--- 83,89 ----
|
||||||
@ -132,8 +132,8 @@ diff -rc alpine-2.21/pith/conftype.h alpine-2.21.colortext/pith/conftype.h
|
|||||||
, V_REPLY_INTRO
|
, V_REPLY_INTRO
|
||||||
, V_QUOTE_REPLACE_STRING
|
, V_QUOTE_REPLACE_STRING
|
||||||
***************
|
***************
|
||||||
*** 235,240 ****
|
*** 238,243 ****
|
||||||
--- 236,243 ----
|
--- 239,246 ----
|
||||||
, V_INCUNSEEN_BACK_COLOR
|
, V_INCUNSEEN_BACK_COLOR
|
||||||
, V_SIGNATURE_FORE_COLOR
|
, V_SIGNATURE_FORE_COLOR
|
||||||
, V_SIGNATURE_BACK_COLOR
|
, V_SIGNATURE_BACK_COLOR
|
||||||
@ -142,12 +142,12 @@ diff -rc alpine-2.21/pith/conftype.h alpine-2.21.colortext/pith/conftype.h
|
|||||||
, V_PROMPT_FORE_COLOR
|
, V_PROMPT_FORE_COLOR
|
||||||
, V_PROMPT_BACK_COLOR
|
, V_PROMPT_BACK_COLOR
|
||||||
, V_HEADER_GENERAL_FORE_COLOR
|
, V_HEADER_GENERAL_FORE_COLOR
|
||||||
diff -rc alpine-2.21/pith/mailview.c alpine-2.21.colortext/pith/mailview.c
|
diff -rc alpine-2.22/pith/mailview.c alpine-2.22.colortext/pith/mailview.c
|
||||||
*** alpine-2.21/pith/mailview.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/mailview.c 2020-01-19 01:32:18.803503250 -0700
|
||||||
--- alpine-2.21.colortext/pith/mailview.c Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/mailview.c 2020-01-19 01:34:56.911444167 -0700
|
||||||
***************
|
***************
|
||||||
*** 282,287 ****
|
*** 638,643 ****
|
||||||
--- 282,295 ----
|
--- 638,651 ----
|
||||||
if((flgs & FM_DISPLAY)
|
if((flgs & FM_DISPLAY)
|
||||||
&& !(flgs & FM_NOCOLOR)
|
&& !(flgs & FM_NOCOLOR)
|
||||||
&& pico_usingcolor()
|
&& pico_usingcolor()
|
||||||
@ -163,8 +163,8 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.colortext/pith/mailview.c
|
|||||||
&& ps_global->VAR_SIGNATURE_BACK_COLOR){
|
&& ps_global->VAR_SIGNATURE_BACK_COLOR){
|
||||||
gf_link_filter(gf_line_test, gf_line_test_opt(color_signature, &is_in_sig));
|
gf_link_filter(gf_line_test, gf_line_test_opt(color_signature, &is_in_sig));
|
||||||
***************
|
***************
|
||||||
*** 2503,2508 ****
|
*** 2870,2875 ****
|
||||||
--- 2511,2700 ----
|
--- 2878,3067 ----
|
||||||
return(color_pair);
|
return(color_pair);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -355,9 +355,9 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.colortext/pith/mailview.c
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* The argument fieldname is something like "Subject:..." or "Subject".
|
* The argument fieldname is something like "Subject:..." or "Subject".
|
||||||
diff -rc alpine-2.21/pith/mailview.h alpine-2.21.colortext/pith/mailview.h
|
diff -rc alpine-2.22/pith/mailview.h alpine-2.22.colortext/pith/mailview.h
|
||||||
*** alpine-2.21/pith/mailview.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/mailview.h 2020-01-19 01:32:19.614486993 -0700
|
||||||
--- alpine-2.21.colortext/pith/mailview.h Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/mailview.h 2020-01-19 01:34:56.911444167 -0700
|
||||||
***************
|
***************
|
||||||
*** 30,35 ****
|
*** 30,35 ****
|
||||||
--- 30,41 ----
|
--- 30,41 ----
|
||||||
@ -374,8 +374,8 @@ diff -rc alpine-2.21/pith/mailview.h alpine-2.21.colortext/pith/mailview.h
|
|||||||
#define FM_DISPLAY 0x0001 /* result is headed for display */
|
#define FM_DISPLAY 0x0001 /* result is headed for display */
|
||||||
#define FM_NEW_MESS 0x0002 /* a new message so zero out attachment descrip */
|
#define FM_NEW_MESS 0x0002 /* a new message so zero out attachment descrip */
|
||||||
***************
|
***************
|
||||||
*** 126,131 ****
|
*** 130,135 ****
|
||||||
--- 132,146 ----
|
--- 136,150 ----
|
||||||
int url_hilite(long, char *, LT_INS_S **, void *);
|
int url_hilite(long, char *, LT_INS_S **, void *);
|
||||||
int handle_start_color(char *, size_t, int *, int);
|
int handle_start_color(char *, size_t, int *, int);
|
||||||
int handle_end_color(char *, size_t, int *);
|
int handle_end_color(char *, size_t, int *);
|
||||||
@ -391,12 +391,12 @@ diff -rc alpine-2.21/pith/mailview.h alpine-2.21.colortext/pith/mailview.h
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* BUG: BELOW IS UNIX/PC ONLY since config'd browser means nothing to webpine
|
* BUG: BELOW IS UNIX/PC ONLY since config'd browser means nothing to webpine
|
||||||
diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.colortext/pith/pine.hlp
|
diff -rc alpine-2.22/pith/pine.hlp alpine-2.22.colortext/pith/pine.hlp
|
||||||
*** alpine-2.21/pith/pine.hlp Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/pine.hlp 2020-01-19 01:32:19.035498584 -0700
|
||||||
--- alpine-2.21.colortext/pith/pine.hlp Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/pine.hlp 2020-01-19 01:34:56.924444072 -0700
|
||||||
***************
|
***************
|
||||||
*** 4227,4232 ****
|
*** 4601,4606 ****
|
||||||
--- 4227,4233 ----
|
--- 4601,4607 ----
|
||||||
<li><a href="h_config_print_cat">OPTION: <!--#echo var="VAR_personal-print-category"--></a>
|
<li><a href="h_config_print_cat">OPTION: <!--#echo var="VAR_personal-print-category"--></a>
|
||||||
<li><a href="h_config_print_command">OPTION: <!--#echo var="VAR_personal-print-command"--></a>
|
<li><a href="h_config_print_command">OPTION: <!--#echo var="VAR_personal-print-command"--></a>
|
||||||
<li><a href="h_config_post_char_set">OPTION: <!--#echo var="VAR_posting-character-set"--></a>
|
<li><a href="h_config_post_char_set">OPTION: <!--#echo var="VAR_posting-character-set"--></a>
|
||||||
@ -405,8 +405,8 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.colortext/pith/pine.hlp
|
|||||||
<li><a href="h_config_print_font_char_set">OPTION: Print-Font-Char-Set</a>
|
<li><a href="h_config_print_font_char_set">OPTION: Print-Font-Char-Set</a>
|
||||||
<li><a href="h_config_print_font_name">OPTION: Print-Font-Name</a>
|
<li><a href="h_config_print_font_name">OPTION: Print-Font-Name</a>
|
||||||
***************
|
***************
|
||||||
*** 4255,4260 ****
|
*** 4629,4634 ****
|
||||||
--- 4256,4262 ----
|
--- 4630,4636 ----
|
||||||
<li><a href="h_config_sending_filter">OPTION: <!--#echo var="VAR_sending-filters"--></a>
|
<li><a href="h_config_sending_filter">OPTION: <!--#echo var="VAR_sending-filters"--></a>
|
||||||
<li><a href="h_config_sendmail_path">OPTION: <!--#echo var="VAR_sendmail-path"--></a>
|
<li><a href="h_config_sendmail_path">OPTION: <!--#echo var="VAR_sendmail-path"--></a>
|
||||||
<li><a href="h_config_signature_color">OPTION: Signature Color</a>
|
<li><a href="h_config_signature_color">OPTION: Signature Color</a>
|
||||||
@ -415,8 +415,8 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.colortext/pith/pine.hlp
|
|||||||
<li><a href="h_config_smtp_server">OPTION: <!--#echo var="VAR_smtp-server"--></a>
|
<li><a href="h_config_smtp_server">OPTION: <!--#echo var="VAR_smtp-server"--></a>
|
||||||
<li><a href="h_config_sort_key">OPTION: <!--#echo var="VAR_sort-key"--></a>
|
<li><a href="h_config_sort_key">OPTION: <!--#echo var="VAR_sort-key"--></a>
|
||||||
***************
|
***************
|
||||||
*** 23729,23734 ****
|
*** 24262,24267 ****
|
||||||
--- 23731,23773 ----
|
--- 24264,24306 ----
|
||||||
<End of help on this topic>
|
<End of help on this topic>
|
||||||
</BODY>
|
</BODY>
|
||||||
</HTML>
|
</HTML>
|
||||||
@ -461,11 +461,12 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.colortext/pith/pine.hlp
|
|||||||
<HTML>
|
<HTML>
|
||||||
<HEAD>
|
<HEAD>
|
||||||
***************
|
***************
|
||||||
*** 32340,32345 ****
|
*** 32864,32869 ****
|
||||||
--- 32379,32408 ----
|
--- 32903,32932 ----
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
<A HREF="h_color_setup">Descriptions of the available commands</A>
|
<A HREF="h_color_setup">Descriptions of the available commands</A>
|
||||||
<P>
|
+ <P>
|
||||||
+ Look <A HREF="h_edit_nav_cmds">here</A>
|
+ Look <A HREF="h_edit_nav_cmds">here</A>
|
||||||
+ to see the available Editing and Navigation commands.
|
+ to see the available Editing and Navigation commands.
|
||||||
+ <P>
|
+ <P>
|
||||||
@ -489,16 +490,15 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.colortext/pith/pine.hlp
|
|||||||
+
|
+
|
||||||
+ <P>
|
+ <P>
|
||||||
+ <A HREF="h_color_setup">Descriptions of the available commands</A>
|
+ <A HREF="h_color_setup">Descriptions of the available commands</A>
|
||||||
+ <P>
|
<P>
|
||||||
Look <A HREF="h_edit_nav_cmds">here</A>
|
Look <A HREF="h_edit_nav_cmds">here</A>
|
||||||
to see the available Editing and Navigation commands.
|
to see the available Editing and Navigation commands.
|
||||||
<P>
|
diff -rc alpine-2.22/pith/state.c alpine-2.22.colortext/pith/state.c
|
||||||
diff -rc alpine-2.21/pith/state.c alpine-2.21.colortext/pith/state.c
|
*** alpine-2.22/pith/state.c 2020-01-19 01:32:18.700505323 -0700
|
||||||
*** alpine-2.21/pith/state.c Sun Feb 5 16:02:36 2017
|
--- alpine-2.22.colortext/pith/state.c 2020-01-19 01:34:56.926444057 -0700
|
||||||
--- alpine-2.21.colortext/pith/state.c Sun Feb 5 16:15:26 2017
|
|
||||||
***************
|
***************
|
||||||
*** 134,139 ****
|
*** 138,143 ****
|
||||||
--- 134,142 ----
|
--- 138,146 ----
|
||||||
if((*pps)->folders_dir != NULL)
|
if((*pps)->folders_dir != NULL)
|
||||||
fs_give((void **)&(*pps)->folders_dir);
|
fs_give((void **)&(*pps)->folders_dir);
|
||||||
|
|
||||||
@ -508,12 +508,12 @@ diff -rc alpine-2.21/pith/state.c alpine-2.21.colortext/pith/state.c
|
|||||||
if((*pps)->ui.homedir)
|
if((*pps)->ui.homedir)
|
||||||
fs_give((void **)&(*pps)->ui.homedir);
|
fs_give((void **)&(*pps)->ui.homedir);
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/state.h alpine-2.21.colortext/pith/state.h
|
diff -rc alpine-2.22/pith/state.h alpine-2.22.colortext/pith/state.h
|
||||||
*** alpine-2.21/pith/state.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/state.h 2020-01-19 01:32:18.561508121 -0700
|
||||||
--- alpine-2.21.colortext/pith/state.h Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/state.h 2020-01-19 01:34:56.926444057 -0700
|
||||||
***************
|
***************
|
||||||
*** 338,343 ****
|
*** 340,345 ****
|
||||||
--- 338,345 ----
|
--- 340,347 ----
|
||||||
char *display_charmap; /* needs to be freed */
|
char *display_charmap; /* needs to be freed */
|
||||||
char *keyboard_charmap; /* needs to be freed */
|
char *keyboard_charmap; /* needs to be freed */
|
||||||
void *input_cs;
|
void *input_cs;
|
||||||
@ -522,9 +522,9 @@ diff -rc alpine-2.21/pith/state.h alpine-2.21.colortext/pith/state.h
|
|||||||
|
|
||||||
char *posting_charmap; /* needs to be freed */
|
char *posting_charmap; /* needs to be freed */
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/text.c alpine-2.21.colortext/pith/text.c
|
diff -rc alpine-2.22/pith/text.c alpine-2.22.colortext/pith/text.c
|
||||||
*** alpine-2.21/pith/text.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/text.c 2020-01-19 01:32:19.317492939 -0700
|
||||||
--- alpine-2.21.colortext/pith/text.c Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.colortext/pith/text.c 2020-01-19 01:34:56.927444050 -0700
|
||||||
***************
|
***************
|
||||||
*** 171,176 ****
|
*** 171,176 ****
|
||||||
--- 171,185 ----
|
--- 171,185 ----
|
||||||
|
7
chappa-colortext.txt
Normal file
7
chappa-colortext.txt
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/WrtAcc.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
This patch allows you to define special custom text that will be seen in a
|
||||||
|
different color than normal text. This can be used in different ways, one can
|
||||||
|
use it to emphasize important keywords in a message, or to erase offensive
|
||||||
|
language.
|
File diff suppressed because it is too large
Load Diff
42
chappa-fancy.txt
Normal file
42
chappa-fancy.txt
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/fancy.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
You can use this patch to add functionality to the thread interface offered by
|
||||||
|
Alpine. It adds commands and options that control several aspects of the way
|
||||||
|
threads are presented.
|
||||||
|
|
||||||
|
|
||||||
|
* You can delete a thread, by pressing ^R (to remove), you can undelete it by
|
||||||
|
pressing ^U (without this patch, you would have to collapse the thread
|
||||||
|
before you can delete it).
|
||||||
|
|
||||||
|
* You can select and unselect a thread, by pressing ^T. This is useful if you
|
||||||
|
want to make aggregate operations on a thread, like saving it.
|
||||||
|
|
||||||
|
* You can collapse or expand a particular thread by pressing [ or ]
|
||||||
|
respectively. If you want to collapse or expand ALL threads, use the
|
||||||
|
commands { and } respectively. These last two commands work only if you
|
||||||
|
have selected any of the options (*)
|
||||||
|
regular-index-with-expanded/collapsed-threads.
|
||||||
|
|
||||||
|
* You can move to the next or previous thread by pressing ) or ( respectively.
|
||||||
|
|
||||||
|
* You can sort threads by arrival, in order to do this press k a. There are
|
||||||
|
other sorts for threads by Date and by Score. If you want to have threads
|
||||||
|
permanently sorted by arrival, say, then set the variable thread-sort-key
|
||||||
|
to be arrival. You can also start Alpine with the option -threadsort
|
||||||
|
arrival to accomplish the same.
|
||||||
|
|
||||||
|
* Similarly, you can sort threads by their length. In order to do this press
|
||||||
|
k z. Small threads appear at the beginning of the listing, while long
|
||||||
|
threads appear at the bottom. Threads of the same length are sorted
|
||||||
|
according to the date of their first message. In particular, single message
|
||||||
|
threads are sorted by date.
|
||||||
|
|
||||||
|
* A new configuration option was added:
|
||||||
|
[X] enhanced-fancy-thread-support
|
||||||
|
if you enable this configuration option, then all of the above commands
|
||||||
|
will act on loose threads, which are threads without parents.
|
||||||
|
|
||||||
|
* The SIZETHREAD index token was added, which tells you the size of a thread,
|
||||||
|
instead of the size of the individual messages in the thread.
|
@ -1,6 +1,6 @@
|
|||||||
diff -rc alpine-2.21/alpine/mailview.c alpine-2.21.fillpara/alpine/mailview.c
|
diff -rc alpine-2.22/alpine/mailview.c alpine-2.22.fillpara/alpine/mailview.c
|
||||||
*** alpine-2.21/alpine/mailview.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/alpine/mailview.c 2020-01-19 01:32:20.102477235 -0700
|
||||||
--- alpine-2.21.fillpara/alpine/mailview.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/alpine/mailview.c 2020-05-07 16:46:16.683304031 -0600
|
||||||
***************
|
***************
|
||||||
*** 204,210 ****
|
*** 204,210 ****
|
||||||
--- 204,218 ----
|
--- 204,218 ----
|
||||||
@ -50,9 +50,9 @@ diff -rc alpine-2.21/alpine/mailview.c alpine-2.21.fillpara/alpine/mailview.c
|
|||||||
if(we_cancel)
|
if(we_cancel)
|
||||||
cancel_busy_cue(-1);
|
cancel_busy_cue(-1);
|
||||||
|
|
||||||
diff -rc alpine-2.21/pico/basic.c alpine-2.21.fillpara/pico/basic.c
|
diff -rc alpine-2.22/pico/basic.c alpine-2.22.fillpara/pico/basic.c
|
||||||
*** alpine-2.21/pico/basic.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/basic.c 2020-01-19 01:32:18.272513938 -0700
|
||||||
--- alpine-2.21.fillpara/pico/basic.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pico/basic.c 2020-05-07 16:46:16.691304036 -0600
|
||||||
***************
|
***************
|
||||||
*** 26,34 ****
|
*** 26,34 ****
|
||||||
* framing, are hard.
|
* framing, are hard.
|
||||||
@ -323,11 +323,11 @@ diff -rc alpine-2.21/pico/basic.c alpine-2.21.fillpara/pico/basic.c
|
|||||||
curwp->w_dotp = lforw(curwp->w_dotp);
|
curwp->w_dotp = lforw(curwp->w_dotp);
|
||||||
|
|
||||||
curwp->w_doto = llength(curwp->w_dotp);
|
curwp->w_doto = llength(curwp->w_dotp);
|
||||||
diff -rc alpine-2.21/pico/efunc.h alpine-2.21.fillpara/pico/efunc.h
|
diff -rc alpine-2.22/pico/efunc.h alpine-2.22.fillpara/pico/efunc.h
|
||||||
*** alpine-2.21/pico/efunc.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/efunc.h 2020-01-19 01:32:18.308513213 -0700
|
||||||
--- alpine-2.21.fillpara/pico/efunc.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pico/efunc.h 2020-05-07 16:46:16.691304036 -0600
|
||||||
***************
|
***************
|
||||||
*** 251,260 ****
|
*** 253,262 ****
|
||||||
extern int fillpara(int, int);
|
extern int fillpara(int, int);
|
||||||
extern int fillbuf(int, int);
|
extern int fillbuf(int, int);
|
||||||
extern int inword(void);
|
extern int inword(void);
|
||||||
@ -338,7 +338,7 @@ diff -rc alpine-2.21/pico/efunc.h alpine-2.21.fillpara/pico/efunc.h
|
|||||||
extern int ucs4_ispunct(UCS);
|
extern int ucs4_ispunct(UCS);
|
||||||
|
|
||||||
#endif /* EFUNC_H */
|
#endif /* EFUNC_H */
|
||||||
--- 251,266 ----
|
--- 253,268 ----
|
||||||
extern int fillpara(int, int);
|
extern int fillpara(int, int);
|
||||||
extern int fillbuf(int, int);
|
extern int fillbuf(int, int);
|
||||||
extern int inword(void);
|
extern int inword(void);
|
||||||
@ -355,11 +355,11 @@ diff -rc alpine-2.21/pico/efunc.h alpine-2.21.fillpara/pico/efunc.h
|
|||||||
|
|
||||||
#endif /* EFUNC_H */
|
#endif /* EFUNC_H */
|
||||||
+
|
+
|
||||||
diff -rc alpine-2.21/pico/line.c alpine-2.21.fillpara/pico/line.c
|
diff -rc alpine-2.22/pico/line.c alpine-2.22.fillpara/pico/line.c
|
||||||
*** alpine-2.21/pico/line.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/line.c 2020-01-19 01:32:18.308513213 -0700
|
||||||
--- alpine-2.21.fillpara/pico/line.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pico/line.c 2020-05-07 16:46:16.691304036 -0600
|
||||||
***************
|
***************
|
||||||
*** 611,626 ****
|
*** 612,627 ****
|
||||||
lisblank(LINE *line)
|
lisblank(LINE *line)
|
||||||
{
|
{
|
||||||
int n = 0;
|
int n = 0;
|
||||||
@ -376,7 +376,7 @@ diff -rc alpine-2.21/pico/line.c alpine-2.21.fillpara/pico/line.c
|
|||||||
return(FALSE);
|
return(FALSE);
|
||||||
|
|
||||||
return(TRUE);
|
return(TRUE);
|
||||||
--- 611,622 ----
|
--- 612,623 ----
|
||||||
lisblank(LINE *line)
|
lisblank(LINE *line)
|
||||||
{
|
{
|
||||||
int n = 0;
|
int n = 0;
|
||||||
@ -389,9 +389,9 @@ diff -rc alpine-2.21/pico/line.c alpine-2.21.fillpara/pico/line.c
|
|||||||
return(FALSE);
|
return(FALSE);
|
||||||
|
|
||||||
return(TRUE);
|
return(TRUE);
|
||||||
diff -rc alpine-2.21/pico/osdep/color.h alpine-2.21.fillpara/pico/osdep/color.h
|
diff -rc alpine-2.22/pico/osdep/color.h alpine-2.22.fillpara/pico/osdep/color.h
|
||||||
*** alpine-2.21/pico/osdep/color.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/osdep/color.h 2020-01-19 01:32:18.174515911 -0700
|
||||||
--- alpine-2.21.fillpara/pico/osdep/color.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pico/osdep/color.h 2020-05-07 16:46:16.695304038 -0600
|
||||||
***************
|
***************
|
||||||
*** 33,38 ****
|
*** 33,38 ****
|
||||||
--- 33,39 ----
|
--- 33,39 ----
|
||||||
@ -402,9 +402,9 @@ diff -rc alpine-2.21/pico/osdep/color.h alpine-2.21.fillpara/pico/osdep/color.h
|
|||||||
|
|
||||||
|
|
||||||
#endif /* PICO_OSDEP_COLOR_INCLUDED */
|
#endif /* PICO_OSDEP_COLOR_INCLUDED */
|
||||||
diff -rc alpine-2.21/pico/search.c alpine-2.21.fillpara/pico/search.c
|
diff -rc alpine-2.22/pico/search.c alpine-2.22.fillpara/pico/search.c
|
||||||
*** alpine-2.21/pico/search.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/search.c 2020-01-19 01:32:18.347512428 -0700
|
||||||
--- alpine-2.21.fillpara/pico/search.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pico/search.c 2020-05-07 16:46:16.695304038 -0600
|
||||||
***************
|
***************
|
||||||
*** 36,41 ****
|
*** 36,41 ****
|
||||||
--- 36,42 ----
|
--- 36,42 ----
|
||||||
@ -456,8 +456,8 @@ diff -rc alpine-2.21/pico/search.c alpine-2.21.fillpara/pico/search.c
|
|||||||
flags &= ~SR_FORWARD;
|
flags &= ~SR_FORWARD;
|
||||||
flags |= SR_BACKWRD;
|
flags |= SR_BACKWRD;
|
||||||
***************
|
***************
|
||||||
*** 1418,1420 ****
|
*** 1420,1422 ****
|
||||||
--- 1421,1445 ----
|
--- 1423,1447 ----
|
||||||
if(bsearch) reverse_ucs4(orig);
|
if(bsearch) reverse_ucs4(orig);
|
||||||
return utf8;
|
return utf8;
|
||||||
}
|
}
|
||||||
@ -483,9 +483,9 @@ diff -rc alpine-2.21/pico/search.c alpine-2.21.fillpara/pico/search.c
|
|||||||
+ return(TRUE);
|
+ return(TRUE);
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
diff -rc alpine-2.21/pico/word.c alpine-2.21.fillpara/pico/word.c
|
diff -rc alpine-2.22/pico/word.c alpine-2.22.fillpara/pico/word.c
|
||||||
*** alpine-2.21/pico/word.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/word.c 2020-01-19 01:32:18.244514502 -0700
|
||||||
--- alpine-2.21.fillpara/pico/word.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pico/word.c 2020-05-07 16:46:16.695304038 -0600
|
||||||
***************
|
***************
|
||||||
*** 25,34 ****
|
*** 25,34 ****
|
||||||
*/
|
*/
|
||||||
@ -1229,12 +1229,12 @@ diff -rc alpine-2.21/pico/word.c alpine-2.21.fillpara/pico/word.c
|
|||||||
+ return get_indent_raw_line(q, GLine, buf, buflen, k, plb);
|
+ return get_indent_raw_line(q, GLine, buf, buflen, k, plb);
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
diff -rc alpine-2.21/pith/charconv/utf8.c alpine-2.21.fillpara/pith/charconv/utf8.c
|
diff -rc alpine-2.22/pith/charconv/utf8.c alpine-2.22.fillpara/pith/charconv/utf8.c
|
||||||
*** alpine-2.21/pith/charconv/utf8.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/charconv/utf8.c 2020-01-19 01:32:19.323492819 -0700
|
||||||
--- alpine-2.21.fillpara/pith/charconv/utf8.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/charconv/utf8.c 2020-05-07 16:46:16.699304041 -0600
|
||||||
***************
|
***************
|
||||||
*** 1061,1066 ****
|
*** 1066,1071 ****
|
||||||
--- 1061,1116 ----
|
--- 1066,1121 ----
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -1291,9 +1291,9 @@ diff -rc alpine-2.21/pith/charconv/utf8.c alpine-2.21.fillpara/pith/charconv/utf
|
|||||||
* Copy UTF-8 characters from src into dst.
|
* Copy UTF-8 characters from src into dst.
|
||||||
* This is intended to be used if you want to truncate a string at
|
* This is intended to be used if you want to truncate a string at
|
||||||
* the start instead of the end. For example, you have a long string
|
* the start instead of the end. For example, you have a long string
|
||||||
diff -rc alpine-2.21/pith/charconv/utf8.h alpine-2.21.fillpara/pith/charconv/utf8.h
|
diff -rc alpine-2.22/pith/charconv/utf8.h alpine-2.22.fillpara/pith/charconv/utf8.h
|
||||||
*** alpine-2.21/pith/charconv/utf8.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/charconv/utf8.h 2020-01-19 01:32:19.323492819 -0700
|
||||||
--- alpine-2.21.fillpara/pith/charconv/utf8.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/charconv/utf8.h 2020-05-07 16:46:16.703304044 -0600
|
||||||
***************
|
***************
|
||||||
*** 81,86 ****
|
*** 81,86 ****
|
||||||
--- 81,87 ----
|
--- 81,87 ----
|
||||||
@ -1304,9 +1304,9 @@ diff -rc alpine-2.21/pith/charconv/utf8.h alpine-2.21.fillpara/pith/charconv/utf
|
|||||||
size_t utf8_to_width_rhs(char *, char *, size_t, unsigned);
|
size_t utf8_to_width_rhs(char *, char *, size_t, unsigned);
|
||||||
int utf8_snprintf(char *, size_t, char *, ...);
|
int utf8_snprintf(char *, size_t, char *, ...);
|
||||||
size_t utf8_to_width(char *, char *, size_t, unsigned, unsigned *);
|
size_t utf8_to_width(char *, char *, size_t, unsigned, unsigned *);
|
||||||
diff -rc alpine-2.21/pith/color.c alpine-2.21.fillpara/pith/color.c
|
diff -rc alpine-2.22/pith/color.c alpine-2.22.fillpara/pith/color.c
|
||||||
*** alpine-2.21/pith/color.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/color.c 2020-01-19 01:32:19.372491838 -0700
|
||||||
--- alpine-2.21.fillpara/pith/color.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/color.c 2020-05-07 16:46:16.707304046 -0600
|
||||||
***************
|
***************
|
||||||
*** 21,27 ****
|
*** 21,27 ****
|
||||||
#include "../pith/state.h"
|
#include "../pith/state.h"
|
||||||
@ -1517,9 +1517,9 @@ diff -rc alpine-2.21/pith/color.c alpine-2.21.fillpara/pith/color.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/color.h alpine-2.21.fillpara/pith/color.h
|
diff -rc alpine-2.22/pith/color.h alpine-2.22.fillpara/pith/color.h
|
||||||
*** alpine-2.21/pith/color.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/color.h 2020-01-19 01:32:19.396491358 -0700
|
||||||
--- alpine-2.21.fillpara/pith/color.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/color.h 2020-05-07 16:46:16.707304046 -0600
|
||||||
***************
|
***************
|
||||||
*** 22,27 ****
|
*** 22,27 ****
|
||||||
--- 22,45 ----
|
--- 22,45 ----
|
||||||
@ -1550,16 +1550,16 @@ diff -rc alpine-2.21/pith/color.h alpine-2.21.fillpara/pith/color.h
|
|||||||
***************
|
***************
|
||||||
*** 81,86 ****
|
*** 81,86 ****
|
||||||
--- 99,105 ----
|
--- 99,105 ----
|
||||||
/* exported protoypes */
|
/* exported prototypes */
|
||||||
char *color_embed(char *, char *);
|
char *color_embed(char *, char *);
|
||||||
int colorcmp(char *, char *);
|
int colorcmp(char *, char *);
|
||||||
+ int next_level_quote(char *, char **, int, int);
|
+ int next_level_quote(char *, char **, int, int);
|
||||||
int color_a_quote(long, char *, LT_INS_S **, void *);
|
int color_a_quote(long, char *, LT_INS_S **, void *);
|
||||||
void free_spec_colors(SPEC_COLOR_S **);
|
void free_spec_colors(SPEC_COLOR_S **);
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
diff -rc alpine-2.22/pith/filter.c alpine-2.22.fillpara/pith/filter.c
|
||||||
*** alpine-2.21/pith/filter.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/filter.c 2020-01-19 01:32:19.192495441 -0700
|
||||||
--- alpine-2.21.fillpara/pith/filter.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/filter.c 2020-05-07 16:46:16.711304048 -0600
|
||||||
***************
|
***************
|
||||||
*** 46,51 ****
|
*** 46,51 ****
|
||||||
--- 46,52 ----
|
--- 46,52 ----
|
||||||
@ -1571,8 +1571,8 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
#include "../pith/pipe.h"
|
#include "../pith/pipe.h"
|
||||||
#include "../pith/status.h"
|
#include "../pith/status.h"
|
||||||
***************
|
***************
|
||||||
*** 9269,9274 ****
|
*** 9270,9275 ****
|
||||||
--- 9270,9280 ----
|
--- 9271,9281 ----
|
||||||
margin_r,
|
margin_r,
|
||||||
indent;
|
indent;
|
||||||
char special[256];
|
char special[256];
|
||||||
@ -1585,8 +1585,8 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
|
|
||||||
#define WRAP_MARG_L(F) (((WRAP_S *)(F)->opt)->margin_l)
|
#define WRAP_MARG_L(F) (((WRAP_S *)(F)->opt)->margin_l)
|
||||||
***************
|
***************
|
||||||
*** 9310,9315 ****
|
*** 9311,9316 ****
|
||||||
--- 9316,9327 ----
|
--- 9317,9328 ----
|
||||||
#define WRAP_COLOR(F) (((WRAP_S *)(F)->opt)->color)
|
#define WRAP_COLOR(F) (((WRAP_S *)(F)->opt)->color)
|
||||||
#define WRAP_COLOR_SET(F) ((WRAP_COLOR(F)) && (WRAP_COLOR(F)->fg[0]))
|
#define WRAP_COLOR_SET(F) ((WRAP_COLOR(F)) && (WRAP_COLOR(F)->fg[0]))
|
||||||
#define WRAP_SPACES(F) (((WRAP_S *)(F)->opt)->spaces)
|
#define WRAP_SPACES(F) (((WRAP_S *)(F)->opt)->spaces)
|
||||||
@ -1600,8 +1600,8 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
if((F)->linep == WRAP_LASTC(F)){ \
|
if((F)->linep == WRAP_LASTC(F)){ \
|
||||||
size_t offset = (F)->linep - (F)->line; \
|
size_t offset = (F)->linep - (F)->line; \
|
||||||
***************
|
***************
|
||||||
*** 9387,9392 ****
|
*** 9388,9393 ****
|
||||||
--- 9399,9406 ----
|
--- 9400,9407 ----
|
||||||
case CCR : /* CRLF or CR in text ? */
|
case CCR : /* CRLF or CR in text ? */
|
||||||
state = BOL; /* either way, handle start */
|
state = BOL; /* either way, handle start */
|
||||||
|
|
||||||
@ -1611,7 +1611,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
/* wrapped line? */
|
/* wrapped line? */
|
||||||
if(f->f2 == 0 && WRAP_SPC_LEN(f) && WRAP_TRL_SPC(f)){
|
if(f->f2 == 0 && WRAP_SPC_LEN(f) && WRAP_TRL_SPC(f)){
|
||||||
***************
|
***************
|
||||||
*** 9480,9486 ****
|
*** 9481,9487 ****
|
||||||
|
|
||||||
case BOL :
|
case BOL :
|
||||||
if(WRAP_FLOW(f)){
|
if(WRAP_FLOW(f)){
|
||||||
@ -1619,7 +1619,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
WRAP_FL_QC(f) = 1; /* init it */
|
WRAP_FL_QC(f) = 1; /* init it */
|
||||||
state = FL_QLEV; /* go collect it */
|
state = FL_QLEV; /* go collect it */
|
||||||
}
|
}
|
||||||
--- 9494,9504 ----
|
--- 9495,9505 ----
|
||||||
|
|
||||||
case BOL :
|
case BOL :
|
||||||
if(WRAP_FLOW(f)){
|
if(WRAP_FLOW(f)){
|
||||||
@ -1632,7 +1632,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
state = FL_QLEV; /* go collect it */
|
state = FL_QLEV; /* go collect it */
|
||||||
}
|
}
|
||||||
***************
|
***************
|
||||||
*** 9494,9500 ****
|
*** 9495,9501 ****
|
||||||
}
|
}
|
||||||
|
|
||||||
/* quote level change implies new paragraph */
|
/* quote level change implies new paragraph */
|
||||||
@ -1640,7 +1640,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
WRAP_FL_QD(f) = 0;
|
WRAP_FL_QD(f) = 0;
|
||||||
if(WRAP_HARD(f) == 0){
|
if(WRAP_HARD(f) == 0){
|
||||||
WRAP_HARD(f) = 1;
|
WRAP_HARD(f) = 1;
|
||||||
--- 9512,9527 ----
|
--- 9513,9528 ----
|
||||||
}
|
}
|
||||||
|
|
||||||
/* quote level change implies new paragraph */
|
/* quote level change implies new paragraph */
|
||||||
@ -1658,7 +1658,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
if(WRAP_HARD(f) == 0){
|
if(WRAP_HARD(f) == 0){
|
||||||
WRAP_HARD(f) = 1;
|
WRAP_HARD(f) = 1;
|
||||||
***************
|
***************
|
||||||
*** 9546,9553 ****
|
*** 9547,9554 ****
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FL_QLEV :
|
case FL_QLEV :
|
||||||
@ -1667,7 +1667,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
/* if EMBEDed, process it and return here */
|
/* if EMBEDed, process it and return here */
|
||||||
--- 9573,9584 ----
|
--- 9574,9585 ----
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FL_QLEV :
|
case FL_QLEV :
|
||||||
@ -1681,7 +1681,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
else {
|
else {
|
||||||
/* if EMBEDed, process it and return here */
|
/* if EMBEDed, process it and return here */
|
||||||
***************
|
***************
|
||||||
*** 9559,9565 ****
|
*** 9560,9566 ****
|
||||||
}
|
}
|
||||||
|
|
||||||
/* quote level change signals new paragraph */
|
/* quote level change signals new paragraph */
|
||||||
@ -1689,7 +1689,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
WRAP_FL_QD(f) = WRAP_FL_QC(f);
|
WRAP_FL_QD(f) = WRAP_FL_QC(f);
|
||||||
if(WRAP_HARD(f) == 0){ /* add hard newline */
|
if(WRAP_HARD(f) == 0){ /* add hard newline */
|
||||||
WRAP_HARD(f) = 1; /* hard newline */
|
WRAP_HARD(f) = 1; /* hard newline */
|
||||||
--- 9590,9605 ----
|
--- 9591,9606 ----
|
||||||
}
|
}
|
||||||
|
|
||||||
/* quote level change signals new paragraph */
|
/* quote level change signals new paragraph */
|
||||||
@ -1707,8 +1707,8 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
if(WRAP_HARD(f) == 0){ /* add hard newline */
|
if(WRAP_HARD(f) == 0){ /* add hard newline */
|
||||||
WRAP_HARD(f) = 1; /* hard newline */
|
WRAP_HARD(f) = 1; /* hard newline */
|
||||||
***************
|
***************
|
||||||
*** 9616,9621 ****
|
*** 9617,9622 ****
|
||||||
--- 9656,9668 ----
|
--- 9657,9669 ----
|
||||||
state = FL_SIG;
|
state = FL_SIG;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -1723,7 +1723,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
state = DFL;
|
state = DFL;
|
||||||
goto case_dfl; /* handle c like DFL */
|
goto case_dfl; /* handle c like DFL */
|
||||||
***************
|
***************
|
||||||
*** 9632,9638 ****
|
*** 9633,9639 ****
|
||||||
&eob); /* note any embedded*/
|
&eob); /* note any embedded*/
|
||||||
wrap_eol(f, 1, &ip, &eib,
|
wrap_eol(f, 1, &ip, &eib,
|
||||||
&op, &eob); /* plunk down newline */
|
&op, &eob); /* plunk down newline */
|
||||||
@ -1731,7 +1731,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&op, &eob); /* write any prefix */
|
&op, &eob); /* write any prefix */
|
||||||
}
|
}
|
||||||
|
|
||||||
--- 9679,9685 ----
|
--- 9680,9686 ----
|
||||||
&eob); /* note any embedded*/
|
&eob); /* note any embedded*/
|
||||||
wrap_eol(f, 1, &ip, &eib,
|
wrap_eol(f, 1, &ip, &eib,
|
||||||
&op, &eob); /* plunk down newline */
|
&op, &eob); /* plunk down newline */
|
||||||
@ -1740,7 +1740,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
***************
|
***************
|
||||||
*** 10129,10135 ****
|
*** 10130,10136 ****
|
||||||
wrap_flush_embed(f, &ip, &eib, &op, &eob);
|
wrap_flush_embed(f, &ip, &eib, &op, &eob);
|
||||||
wrap_eol(f, 1, &ip, &eib, &op,
|
wrap_eol(f, 1, &ip, &eib, &op,
|
||||||
&eob); /* plunk down newline */
|
&eob); /* plunk down newline */
|
||||||
@ -1748,7 +1748,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&eob); /* write any prefix */
|
&eob); /* write any prefix */
|
||||||
}
|
}
|
||||||
|
|
||||||
--- 10176,10182 ----
|
--- 10177,10183 ----
|
||||||
wrap_flush_embed(f, &ip, &eib, &op, &eob);
|
wrap_flush_embed(f, &ip, &eib, &op, &eob);
|
||||||
wrap_eol(f, 1, &ip, &eib, &op,
|
wrap_eol(f, 1, &ip, &eib, &op,
|
||||||
&eob); /* plunk down newline */
|
&eob); /* plunk down newline */
|
||||||
@ -1757,8 +1757,8 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
***************
|
***************
|
||||||
*** 10202,10207 ****
|
*** 10203,10208 ****
|
||||||
--- 10249,10261 ----
|
--- 10250,10262 ----
|
||||||
if(WRAP_COLOR(f))
|
if(WRAP_COLOR(f))
|
||||||
free_color_pair(&WRAP_COLOR(f));
|
free_color_pair(&WRAP_COLOR(f));
|
||||||
|
|
||||||
@ -1773,7 +1773,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
so_give(&WRAP_SPACES(f));
|
so_give(&WRAP_SPACES(f));
|
||||||
fs_give((void **) &f->opt); /* free wrap widths struct */
|
fs_give((void **) &f->opt); /* free wrap widths struct */
|
||||||
***************
|
***************
|
||||||
*** 10552,10558 ****
|
*** 10553,10559 ****
|
||||||
{
|
{
|
||||||
int j, i;
|
int j, i;
|
||||||
COLOR_PAIR *col = NULL;
|
COLOR_PAIR *col = NULL;
|
||||||
@ -1781,7 +1781,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
|
|
||||||
if(ps_global->VAR_QUOTE_REPLACE_STRING){
|
if(ps_global->VAR_QUOTE_REPLACE_STRING){
|
||||||
get_pair(ps_global->VAR_QUOTE_REPLACE_STRING, &prefix, &last_prefix, 0, 0);
|
get_pair(ps_global->VAR_QUOTE_REPLACE_STRING, &prefix, &last_prefix, 0, 0);
|
||||||
--- 10606,10613 ----
|
--- 10607,10614 ----
|
||||||
{
|
{
|
||||||
int j, i;
|
int j, i;
|
||||||
COLOR_PAIR *col = NULL;
|
COLOR_PAIR *col = NULL;
|
||||||
@ -1791,7 +1791,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
if(ps_global->VAR_QUOTE_REPLACE_STRING){
|
if(ps_global->VAR_QUOTE_REPLACE_STRING){
|
||||||
get_pair(ps_global->VAR_QUOTE_REPLACE_STRING, &prefix, &last_prefix, 0, 0);
|
get_pair(ps_global->VAR_QUOTE_REPLACE_STRING, &prefix, &last_prefix, 0, 0);
|
||||||
***************
|
***************
|
||||||
*** 10561,10570 ****
|
*** 10562,10571 ****
|
||||||
last_prefix = NULL;
|
last_prefix = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1802,7 +1802,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&& ps_global->VAR_QUOTE1_FORE_COLOR
|
&& ps_global->VAR_QUOTE1_FORE_COLOR
|
||||||
&& ps_global->VAR_QUOTE1_BACK_COLOR
|
&& ps_global->VAR_QUOTE1_BACK_COLOR
|
||||||
&& (col = new_color_pair(ps_global->VAR_QUOTE1_FORE_COLOR,
|
&& (col = new_color_pair(ps_global->VAR_QUOTE1_FORE_COLOR,
|
||||||
--- 10616,10637 ----
|
--- 10617,10638 ----
|
||||||
last_prefix = NULL;
|
last_prefix = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1826,7 +1826,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&& ps_global->VAR_QUOTE1_BACK_COLOR
|
&& ps_global->VAR_QUOTE1_BACK_COLOR
|
||||||
&& (col = new_color_pair(ps_global->VAR_QUOTE1_FORE_COLOR,
|
&& (col = new_color_pair(ps_global->VAR_QUOTE1_FORE_COLOR,
|
||||||
***************
|
***************
|
||||||
*** 10572,10578 ****
|
*** 10573,10579 ****
|
||||||
&& pico_is_good_colorpair(col)){
|
&& pico_is_good_colorpair(col)){
|
||||||
GF_COLOR_PUTC(f, col);
|
GF_COLOR_PUTC(f, col);
|
||||||
}
|
}
|
||||||
@ -1834,7 +1834,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&& ps_global->VAR_QUOTE2_FORE_COLOR
|
&& ps_global->VAR_QUOTE2_FORE_COLOR
|
||||||
&& ps_global->VAR_QUOTE2_BACK_COLOR
|
&& ps_global->VAR_QUOTE2_BACK_COLOR
|
||||||
&& (col = new_color_pair(ps_global->VAR_QUOTE2_FORE_COLOR,
|
&& (col = new_color_pair(ps_global->VAR_QUOTE2_FORE_COLOR,
|
||||||
--- 10639,10645 ----
|
--- 10640,10646 ----
|
||||||
&& pico_is_good_colorpair(col)){
|
&& pico_is_good_colorpair(col)){
|
||||||
GF_COLOR_PUTC(f, col);
|
GF_COLOR_PUTC(f, col);
|
||||||
}
|
}
|
||||||
@ -1843,7 +1843,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&& ps_global->VAR_QUOTE2_BACK_COLOR
|
&& ps_global->VAR_QUOTE2_BACK_COLOR
|
||||||
&& (col = new_color_pair(ps_global->VAR_QUOTE2_FORE_COLOR,
|
&& (col = new_color_pair(ps_global->VAR_QUOTE2_FORE_COLOR,
|
||||||
***************
|
***************
|
||||||
*** 10580,10586 ****
|
*** 10581,10587 ****
|
||||||
&& pico_is_good_colorpair(col)){
|
&& pico_is_good_colorpair(col)){
|
||||||
GF_COLOR_PUTC(f, col);
|
GF_COLOR_PUTC(f, col);
|
||||||
}
|
}
|
||||||
@ -1851,7 +1851,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&& ps_global->VAR_QUOTE3_FORE_COLOR
|
&& ps_global->VAR_QUOTE3_FORE_COLOR
|
||||||
&& ps_global->VAR_QUOTE3_BACK_COLOR
|
&& ps_global->VAR_QUOTE3_BACK_COLOR
|
||||||
&& (col = new_color_pair(ps_global->VAR_QUOTE3_FORE_COLOR,
|
&& (col = new_color_pair(ps_global->VAR_QUOTE3_FORE_COLOR,
|
||||||
--- 10647,10653 ----
|
--- 10648,10654 ----
|
||||||
&& pico_is_good_colorpair(col)){
|
&& pico_is_good_colorpair(col)){
|
||||||
GF_COLOR_PUTC(f, col);
|
GF_COLOR_PUTC(f, col);
|
||||||
}
|
}
|
||||||
@ -1860,7 +1860,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
&& ps_global->VAR_QUOTE3_BACK_COLOR
|
&& ps_global->VAR_QUOTE3_BACK_COLOR
|
||||||
&& (col = new_color_pair(ps_global->VAR_QUOTE3_FORE_COLOR,
|
&& (col = new_color_pair(ps_global->VAR_QUOTE3_FORE_COLOR,
|
||||||
***************
|
***************
|
||||||
*** 10594,10636 ****
|
*** 10595,10637 ****
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1904,7 +1904,7 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
--- 10661,10707 ----
|
--- 10662,10708 ----
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1953,8 +1953,8 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
***************
|
***************
|
||||||
*** 10662,10667 ****
|
*** 10663,10668 ****
|
||||||
--- 10733,10744 ----
|
--- 10734,10745 ----
|
||||||
wrap->hdr_color = (GFW_HDRCOLOR & flags) == GFW_HDRCOLOR;
|
wrap->hdr_color = (GFW_HDRCOLOR & flags) == GFW_HDRCOLOR;
|
||||||
wrap->for_compose = (GFW_FORCOMPOSE & flags) == GFW_FORCOMPOSE;
|
wrap->for_compose = (GFW_FORCOMPOSE & flags) == GFW_FORCOMPOSE;
|
||||||
wrap->handle_soft_hyphen = (GFW_SOFTHYPHEN & flags) == GFW_SOFTHYPHEN;
|
wrap->handle_soft_hyphen = (GFW_SOFTHYPHEN & flags) == GFW_SOFTHYPHEN;
|
||||||
@ -1968,8 +1968,8 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
return((void *) wrap);
|
return((void *) wrap);
|
||||||
}
|
}
|
||||||
***************
|
***************
|
||||||
*** 11105,11111 ****
|
*** 11106,11112 ****
|
||||||
--- 11182,11396 ----
|
--- 11183,11397 ----
|
||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2185,9 +2185,9 @@ diff -rc alpine-2.21/pith/filter.c alpine-2.21.fillpara/pith/filter.c
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* this simple filter accumulates characters until a newline, offers it
|
* this simple filter accumulates characters until a newline, offers it
|
||||||
diff -rc alpine-2.21/pith/filter.h alpine-2.21.fillpara/pith/filter.h
|
diff -rc alpine-2.22/pith/filter.h alpine-2.22.fillpara/pith/filter.h
|
||||||
*** alpine-2.21/pith/filter.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/filter.h 2020-01-19 01:32:19.683485612 -0700
|
||||||
--- alpine-2.21.fillpara/pith/filter.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/filter.h 2020-05-07 16:46:16.715304052 -0600
|
||||||
***************
|
***************
|
||||||
*** 216,221 ****
|
*** 216,221 ****
|
||||||
--- 216,222 ----
|
--- 216,222 ----
|
||||||
@ -2196,11 +2196,11 @@ diff -rc alpine-2.21/pith/filter.h alpine-2.21.fillpara/pith/filter.h
|
|||||||
void gf_local_nvtnl(FILTER_S *, int);
|
void gf_local_nvtnl(FILTER_S *, int);
|
||||||
+ void gf_quote_test(FILTER_S *, int);
|
+ void gf_quote_test(FILTER_S *, int);
|
||||||
void *gf_url_hilite_opt(URL_HILITE_S *, HANDLE_S **, int);
|
void *gf_url_hilite_opt(URL_HILITE_S *, HANDLE_S **, int);
|
||||||
|
void free_filter_module_globals(void);
|
||||||
|
|
||||||
|
diff -rc alpine-2.22/pith/filttype.h alpine-2.22.fillpara/pith/filttype.h
|
||||||
diff -rc alpine-2.21/pith/filttype.h alpine-2.21.fillpara/pith/filttype.h
|
*** alpine-2.22/pith/filttype.h 2020-01-19 01:32:19.531488655 -0700
|
||||||
*** alpine-2.21/pith/filttype.h Sun Feb 5 16:02:36 2017
|
--- alpine-2.22.fillpara/pith/filttype.h 2020-05-07 16:46:16.715304052 -0600
|
||||||
--- alpine-2.21.fillpara/pith/filttype.h Sun Feb 5 16:15:23 2017
|
|
||||||
***************
|
***************
|
||||||
*** 36,41 ****
|
*** 36,41 ****
|
||||||
--- 36,43 ----
|
--- 36,43 ----
|
||||||
@ -2212,11 +2212,11 @@ diff -rc alpine-2.21/pith/filttype.h alpine-2.21.fillpara/pith/filttype.h
|
|||||||
void *opt; /* optional per instance data */
|
void *opt; /* optional per instance data */
|
||||||
void *data; /* misc internal data pointer */
|
void *data; /* misc internal data pointer */
|
||||||
unsigned char queue[1 + GF_MAXBUF];
|
unsigned char queue[1 + GF_MAXBUF];
|
||||||
diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
diff -rc alpine-2.22/pith/mailview.c alpine-2.22.fillpara/pith/mailview.c
|
||||||
*** alpine-2.21/pith/mailview.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/mailview.c 2020-01-19 01:32:18.803503250 -0700
|
||||||
--- alpine-2.21.fillpara/pith/mailview.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/mailview.c 2020-05-07 16:46:16.715304052 -0600
|
||||||
***************
|
***************
|
||||||
*** 52,58 ****
|
*** 55,61 ****
|
||||||
#include "../pith/escapes.h"
|
#include "../pith/escapes.h"
|
||||||
#include "../pith/keyword.h"
|
#include "../pith/keyword.h"
|
||||||
#include "../pith/smime.h"
|
#include "../pith/smime.h"
|
||||||
@ -2224,7 +2224,7 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
|
|
||||||
#define FBUF_LEN (50)
|
#define FBUF_LEN (50)
|
||||||
|
|
||||||
--- 52,62 ----
|
--- 55,65 ----
|
||||||
#include "../pith/escapes.h"
|
#include "../pith/escapes.h"
|
||||||
#include "../pith/keyword.h"
|
#include "../pith/keyword.h"
|
||||||
#include "../pith/smime.h"
|
#include "../pith/smime.h"
|
||||||
@ -2237,7 +2237,7 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
#define FBUF_LEN (50)
|
#define FBUF_LEN (50)
|
||||||
|
|
||||||
***************
|
***************
|
||||||
*** 284,290 ****
|
*** 640,646 ****
|
||||||
&& pico_usingcolor()
|
&& pico_usingcolor()
|
||||||
&& ps_global->VAR_SIGNATURE_FORE_COLOR
|
&& ps_global->VAR_SIGNATURE_FORE_COLOR
|
||||||
&& ps_global->VAR_SIGNATURE_BACK_COLOR){
|
&& ps_global->VAR_SIGNATURE_BACK_COLOR){
|
||||||
@ -2245,7 +2245,7 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
if((flgs & FM_DISPLAY)
|
if((flgs & FM_DISPLAY)
|
||||||
--- 288,294 ----
|
--- 644,650 ----
|
||||||
&& pico_usingcolor()
|
&& pico_usingcolor()
|
||||||
&& ps_global->VAR_SIGNATURE_FORE_COLOR
|
&& ps_global->VAR_SIGNATURE_FORE_COLOR
|
||||||
&& ps_global->VAR_SIGNATURE_BACK_COLOR){
|
&& ps_global->VAR_SIGNATURE_BACK_COLOR){
|
||||||
@ -2254,7 +2254,7 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
|
|
||||||
if((flgs & FM_DISPLAY)
|
if((flgs & FM_DISPLAY)
|
||||||
***************
|
***************
|
||||||
*** 292,299 ****
|
*** 648,655 ****
|
||||||
&& pico_usingcolor()
|
&& pico_usingcolor()
|
||||||
&& ps_global->VAR_QUOTE1_FORE_COLOR
|
&& ps_global->VAR_QUOTE1_FORE_COLOR
|
||||||
&& ps_global->VAR_QUOTE1_BACK_COLOR){
|
&& ps_global->VAR_QUOTE1_BACK_COLOR){
|
||||||
@ -2263,7 +2263,7 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
|
|
||||||
if(!(flgs & FM_NOWRAP)){
|
if(!(flgs & FM_NOWRAP)){
|
||||||
wrapflags = (flgs & FM_DISPLAY) ? (GFW_HANDLES|GFW_SOFTHYPHEN) : GFW_NONE;
|
wrapflags = (flgs & FM_DISPLAY) ? (GFW_HANDLES|GFW_SOFTHYPHEN) : GFW_NONE;
|
||||||
--- 296,305 ----
|
--- 652,661 ----
|
||||||
&& pico_usingcolor()
|
&& pico_usingcolor()
|
||||||
&& ps_global->VAR_QUOTE1_FORE_COLOR
|
&& ps_global->VAR_QUOTE1_FORE_COLOR
|
||||||
&& ps_global->VAR_QUOTE1_BACK_COLOR){
|
&& ps_global->VAR_QUOTE1_BACK_COLOR){
|
||||||
@ -2275,7 +2275,7 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
if(!(flgs & FM_NOWRAP)){
|
if(!(flgs & FM_NOWRAP)){
|
||||||
wrapflags = (flgs & FM_DISPLAY) ? (GFW_HANDLES|GFW_SOFTHYPHEN) : GFW_NONE;
|
wrapflags = (flgs & FM_DISPLAY) ? (GFW_HANDLES|GFW_SOFTHYPHEN) : GFW_NONE;
|
||||||
***************
|
***************
|
||||||
*** 1098,1124 ****
|
*** 1465,1491 ****
|
||||||
color_signature(long int linenum, char *line, LT_INS_S **ins, void *is_in_sig)
|
color_signature(long int linenum, char *line, LT_INS_S **ins, void *is_in_sig)
|
||||||
{
|
{
|
||||||
struct variable *vars = ps_global->vars;
|
struct variable *vars = ps_global->vars;
|
||||||
@ -2303,7 +2303,7 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
if(*in_sig_block != OUT_SIG_BLOCK
|
if(*in_sig_block != OUT_SIG_BLOCK
|
||||||
&& VAR_SIGNATURE_FORE_COLOR && VAR_SIGNATURE_BACK_COLOR
|
&& VAR_SIGNATURE_FORE_COLOR && VAR_SIGNATURE_BACK_COLOR
|
||||||
&& (col = new_color_pair(VAR_SIGNATURE_FORE_COLOR,
|
&& (col = new_color_pair(VAR_SIGNATURE_FORE_COLOR,
|
||||||
--- 1104,1191 ----
|
--- 1471,1558 ----
|
||||||
color_signature(long int linenum, char *line, LT_INS_S **ins, void *is_in_sig)
|
color_signature(long int linenum, char *line, LT_INS_S **ins, void *is_in_sig)
|
||||||
{
|
{
|
||||||
struct variable *vars = ps_global->vars;
|
struct variable *vars = ps_global->vars;
|
||||||
@ -2393,8 +2393,8 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
&& VAR_SIGNATURE_FORE_COLOR && VAR_SIGNATURE_BACK_COLOR
|
&& VAR_SIGNATURE_FORE_COLOR && VAR_SIGNATURE_BACK_COLOR
|
||||||
&& (col = new_color_pair(VAR_SIGNATURE_FORE_COLOR,
|
&& (col = new_color_pair(VAR_SIGNATURE_FORE_COLOR,
|
||||||
***************
|
***************
|
||||||
*** 1678,1683 ****
|
*** 2045,2050 ****
|
||||||
--- 1745,1821 ----
|
--- 2112,2188 ----
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2472,12 +2472,12 @@ diff -rc alpine-2.21/pith/mailview.c alpine-2.21.fillpara/pith/mailview.c
|
|||||||
|
|
||||||
#define UES_LEN 12
|
#define UES_LEN 12
|
||||||
#define UES_MAX 32
|
#define UES_MAX 32
|
||||||
diff -rc alpine-2.21/pith/mailview.h alpine-2.21.fillpara/pith/mailview.h
|
diff -rc alpine-2.22/pith/mailview.h alpine-2.22.fillpara/pith/mailview.h
|
||||||
*** alpine-2.21/pith/mailview.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/mailview.h 2020-01-19 01:32:19.614486993 -0700
|
||||||
--- alpine-2.21.fillpara/pith/mailview.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/mailview.h 2020-05-07 16:46:16.719304053 -0600
|
||||||
***************
|
***************
|
||||||
*** 142,147 ****
|
*** 146,151 ****
|
||||||
--- 142,148 ----
|
--- 146,152 ----
|
||||||
char *display_parameters(PARAMETER *);
|
char *display_parameters(PARAMETER *);
|
||||||
char *pine_fetch_header(MAILSTREAM *, long, char *, char **, long);
|
char *pine_fetch_header(MAILSTREAM *, long, char *, char **, long);
|
||||||
int color_signature(long, char *, LT_INS_S **, void *);
|
int color_signature(long, char *, LT_INS_S **, void *);
|
||||||
@ -2485,9 +2485,9 @@ diff -rc alpine-2.21/pith/mailview.h alpine-2.21.fillpara/pith/mailview.h
|
|||||||
int scroll_handle_start_color(char *, size_t, int *);
|
int scroll_handle_start_color(char *, size_t, int *);
|
||||||
int scroll_handle_end_color(char *, size_t, int *, int);
|
int scroll_handle_end_color(char *, size_t, int *, int);
|
||||||
int width_at_this_position(unsigned char *, unsigned long);
|
int width_at_this_position(unsigned char *, unsigned long);
|
||||||
diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
diff -rc alpine-2.22/pith/osdep/color.c alpine-2.22.fillpara/pith/osdep/color.c
|
||||||
*** alpine-2.21/pith/osdep/color.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/osdep/color.c 2020-01-19 01:32:18.620506934 -0700
|
||||||
--- alpine-2.21.fillpara/pith/osdep/color.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/osdep/color.c 2020-05-07 23:52:12.301348731 -0600
|
||||||
***************
|
***************
|
||||||
*** 32,38 ****
|
*** 32,38 ****
|
||||||
|
|
||||||
@ -2509,7 +2509,7 @@ diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
|||||||
/*
|
/*
|
||||||
***************
|
***************
|
||||||
*** 92,94 ****
|
*** 92,94 ****
|
||||||
--- 94,1368 ----
|
--- 94,1375 ----
|
||||||
{
|
{
|
||||||
return(pico_set_colors(col ? col->fg : NULL, col ? col->bg : NULL, flags));
|
return(pico_set_colors(col ? col->fg : NULL, col ? col->bg : NULL, flags));
|
||||||
}
|
}
|
||||||
@ -2861,6 +2861,8 @@ diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
|||||||
+ c = count_levels_qstring(cl);
|
+ c = count_levels_qstring(cl);
|
||||||
+ n = same_qstring(cl,nl);
|
+ n = same_qstring(cl,nl);
|
||||||
+
|
+
|
||||||
|
+ /* by the definition of n and c above we have n <= c */
|
||||||
|
+
|
||||||
+ if (!n){ /* no next line or no agreement with next line */
|
+ if (!n){ /* no next line or no agreement with next line */
|
||||||
+ int p = same_qstring(pl, cl); /* number of agreements between pl and cl */
|
+ int p = same_qstring(pl, cl); /* number of agreements between pl and cl */
|
||||||
+ QSTRING_S *tl; /* test line */
|
+ QSTRING_S *tl; /* test line */
|
||||||
@ -2873,16 +2875,16 @@ diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
|||||||
+ * case we can only return p levels of cl.
|
+ * case we can only return p levels of cl.
|
||||||
+ */
|
+ */
|
||||||
+
|
+
|
||||||
+ if (p == c)
|
+ if (p == c)
|
||||||
+ tl = cqstring;
|
+ tl = cqstring;
|
||||||
+ else{
|
+ else{
|
||||||
+ if (p){
|
+ if (p){
|
||||||
+ for (c = 1; c < p; c++)
|
+ for (c = 1; c < p; c++)
|
||||||
+ cl = cl->next;
|
+ cl = cl->next;
|
||||||
+ free_qs(&(cl->next));
|
+ free_qs(&(cl->next));
|
||||||
+ tl = cqstring;
|
+ tl = cqstring;
|
||||||
+ }
|
+ }
|
||||||
+ else{
|
+ else{
|
||||||
+ int done = 0;
|
+ int done = 0;
|
||||||
+ QSTRING_S *al = cl; /* another line */
|
+ QSTRING_S *al = cl; /* another line */
|
||||||
+ /*
|
+ /*
|
||||||
@ -2891,15 +2893,15 @@ diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
|||||||
+ * that we may want to accept the not-normal part, so we better
|
+ * that we may want to accept the not-normal part, so we better
|
||||||
+ * make an extra test to determine what needs to be freed
|
+ * make an extra test to determine what needs to be freed
|
||||||
+ */
|
+ */
|
||||||
+ while (pl && cl && cl->qstype == pl->qstype
|
+ while (pl && cl && cl->qstype == pl->qstype
|
||||||
+ && !strucmp(cl->value, pl->value)){
|
+ && !strucmp(cl->value, pl->value)){
|
||||||
+ cl = cl->next;
|
+ cl = cl->next;
|
||||||
+ pl = pl->next;
|
+ pl = pl->next;
|
||||||
+ }
|
+ }
|
||||||
+ if (pl && cl && cl->qstype == pl->qstype
|
+ if (pl && cl && cl->qstype == pl->qstype
|
||||||
+ && strcmp_qs(pl->value, cl->value))
|
+ && strcmp_qs(pl->value, cl->value))
|
||||||
+ cl = cl->next; /* next level differs only in spaces */
|
+ cl = cl->next; /* next level differs only in spaces */
|
||||||
+ while (!done){
|
+ while (!done){
|
||||||
+ while (cl && cl->qstype == qsNormal)
|
+ while (cl && cl->qstype == qsNormal)
|
||||||
+ cl = cl->next;
|
+ cl = cl->next;
|
||||||
+ if (cl){
|
+ if (cl){
|
||||||
@ -2909,23 +2911,29 @@ diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
|||||||
+ else done++;
|
+ else done++;
|
||||||
+ }
|
+ }
|
||||||
+ else done++;
|
+ else done++;
|
||||||
+ }
|
+ }
|
||||||
+ if (al == cl){
|
+ if (al == cl){
|
||||||
+ free_qs(&(cl));
|
+ free_qs(&(cl));
|
||||||
+ tl = cl;
|
+ tl = cl;
|
||||||
+ }
|
+ }
|
||||||
+ else {
|
+ else {
|
||||||
+ while (al && (al->next != cl))
|
+ while (al && (al->next != cl))
|
||||||
+ al = al->next;
|
+ al = al->next;
|
||||||
+ cl = al;
|
+ cl = al;
|
||||||
+ if (cl && cl->next)
|
+ if (cl && cl->next)
|
||||||
+ free_qs(&(cl->next));
|
+ free_qs(&(cl->next));
|
||||||
+ tl = cqstring;
|
+ tl = cqstring;
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ return tl;
|
+ return tl;
|
||||||
+ }
|
+ }
|
||||||
|
+
|
||||||
|
+ /* so n <= c (see above) hence n < c or n = c. If n < c then n+1 <= c, so we
|
||||||
|
+ * either have n == c or n + 1 < c or n + 1 == c. We analyze each case in the
|
||||||
|
+ * following code
|
||||||
|
+ */
|
||||||
|
+
|
||||||
+ if (n + 1 < c){ /* if there are not enough agreements */
|
+ if (n + 1 < c){ /* if there are not enough agreements */
|
||||||
+ int p = same_qstring(pl, cl); /* number of agreement between pl and cl */
|
+ int p = same_qstring(pl, cl); /* number of agreement between pl and cl */
|
||||||
+ QSTRING_S *tl; /* test line */
|
+ QSTRING_S *tl; /* test line */
|
||||||
@ -2987,9 +2995,8 @@ diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
|||||||
+ }
|
+ }
|
||||||
+ return tl;
|
+ return tl;
|
||||||
+ }
|
+ }
|
||||||
+ if (n == c) /* Yeah!!! */
|
+ /* else n == c, Yeah!!! */
|
||||||
+ return cqstring;
|
+ return cqstring;
|
||||||
+ return 0;
|
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ QSTRING_S *
|
+ QSTRING_S *
|
||||||
@ -3785,9 +3792,9 @@ diff -rc alpine-2.21/pith/osdep/color.c alpine-2.21.fillpara/pith/osdep/color.c
|
|||||||
+ return allowed_qstr;
|
+ return allowed_qstr;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
diff -rc alpine-2.21/pith/osdep/color.h alpine-2.21.fillpara/pith/osdep/color.h
|
diff -rc alpine-2.22/pith/osdep/color.h alpine-2.22.fillpara/pith/osdep/color.h
|
||||||
*** alpine-2.21/pith/osdep/color.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/osdep/color.h 2020-01-19 01:32:18.622506893 -0700
|
||||||
--- alpine-2.21.fillpara/pith/osdep/color.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/osdep/color.h 2020-05-07 16:46:16.723304056 -0600
|
||||||
***************
|
***************
|
||||||
*** 17,22 ****
|
*** 17,22 ****
|
||||||
--- 17,40 ----
|
--- 17,40 ----
|
||||||
@ -3838,12 +3845,12 @@ diff -rc alpine-2.21/pith/osdep/color.h alpine-2.21.fillpara/pith/osdep/color.h
|
|||||||
! void record_quote_string (QSTRING_S *);
|
! void record_quote_string (QSTRING_S *);
|
||||||
|
|
||||||
#endif /* PITH_OSDEP_COLOR_INCLUDED */
|
#endif /* PITH_OSDEP_COLOR_INCLUDED */
|
||||||
diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.fillpara/pith/pine.hlp
|
diff -rc alpine-2.22/pith/pine.hlp alpine-2.22.fillpara/pith/pine.hlp
|
||||||
*** alpine-2.21/pith/pine.hlp Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/pine.hlp 2020-01-19 01:32:19.035498584 -0700
|
||||||
--- alpine-2.21.fillpara/pith/pine.hlp Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/pine.hlp 2020-05-07 16:46:16.739304066 -0600
|
||||||
***************
|
***************
|
||||||
*** 7446,7451 ****
|
*** 7820,7825 ****
|
||||||
--- 7446,7491 ----
|
--- 7820,7865 ----
|
||||||
"type the character ^".
|
"type the character ^".
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
@ -3890,12 +3897,12 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.fillpara/pith/pine.hlp
|
|||||||
<End of help on this topic>
|
<End of help on this topic>
|
||||||
</BODY>
|
</BODY>
|
||||||
</HTML>
|
</HTML>
|
||||||
diff -rc alpine-2.21/pith/reply.c alpine-2.21.fillpara/pith/reply.c
|
diff -rc alpine-2.22/pith/reply.c alpine-2.22.fillpara/pith/reply.c
|
||||||
*** alpine-2.21/pith/reply.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/reply.c 2020-01-19 01:32:19.475489776 -0700
|
||||||
--- alpine-2.21.fillpara/pith/reply.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/reply.c 2020-05-07 16:46:16.763304080 -0600
|
||||||
***************
|
***************
|
||||||
*** 2735,2740 ****
|
*** 2838,2843 ****
|
||||||
--- 2735,2743 ----
|
--- 2838,2846 ----
|
||||||
if(flow_res && ps_global->reply.use_flowed)
|
if(flow_res && ps_global->reply.use_flowed)
|
||||||
wrapflags |= GFW_FLOW_RESULT;
|
wrapflags |= GFW_FLOW_RESULT;
|
||||||
|
|
||||||
@ -3906,7 +3913,7 @@ diff -rc alpine-2.21/pith/reply.c alpine-2.21.fillpara/pith/reply.c
|
|||||||
/*
|
/*
|
||||||
* The 80 will cause longer lines than what is likely
|
* The 80 will cause longer lines than what is likely
|
||||||
***************
|
***************
|
||||||
*** 2828,2834 ****
|
*** 2931,2937 ****
|
||||||
dq.do_color = 0;
|
dq.do_color = 0;
|
||||||
dq.delete_all = 1;
|
dq.delete_all = 1;
|
||||||
|
|
||||||
@ -3914,7 +3921,7 @@ diff -rc alpine-2.21/pith/reply.c alpine-2.21.fillpara/pith/reply.c
|
|||||||
filters[filtcnt++].data = gf_line_test_opt(delete_quotes, &dq);
|
filters[filtcnt++].data = gf_line_test_opt(delete_quotes, &dq);
|
||||||
}
|
}
|
||||||
|
|
||||||
--- 2831,2837 ----
|
--- 2934,2940 ----
|
||||||
dq.do_color = 0;
|
dq.do_color = 0;
|
||||||
dq.delete_all = 1;
|
dq.delete_all = 1;
|
||||||
|
|
||||||
@ -3922,12 +3929,12 @@ diff -rc alpine-2.21/pith/reply.c alpine-2.21.fillpara/pith/reply.c
|
|||||||
filters[filtcnt++].data = gf_line_test_opt(delete_quotes, &dq);
|
filters[filtcnt++].data = gf_line_test_opt(delete_quotes, &dq);
|
||||||
}
|
}
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/state.c alpine-2.21.fillpara/pith/state.c
|
diff -rc alpine-2.22/pith/state.c alpine-2.22.fillpara/pith/state.c
|
||||||
*** alpine-2.21/pith/state.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/state.c 2020-01-19 01:32:18.700505323 -0700
|
||||||
--- alpine-2.21.fillpara/pith/state.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/state.c 2020-05-07 16:46:16.767304083 -0600
|
||||||
***************
|
***************
|
||||||
*** 225,230 ****
|
*** 229,234 ****
|
||||||
--- 225,232 ----
|
--- 229,236 ----
|
||||||
if((*pps)->kw_colors)
|
if((*pps)->kw_colors)
|
||||||
free_spec_colors(&(*pps)->kw_colors);
|
free_spec_colors(&(*pps)->kw_colors);
|
||||||
|
|
||||||
@ -3936,23 +3943,23 @@ diff -rc alpine-2.21/pith/state.c alpine-2.21.fillpara/pith/state.c
|
|||||||
if((*pps)->atmts){
|
if((*pps)->atmts){
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/state.h alpine-2.21.fillpara/pith/state.h
|
diff -rc alpine-2.22/pith/state.h alpine-2.22.fillpara/pith/state.h
|
||||||
*** alpine-2.21/pith/state.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/state.h 2020-01-19 01:32:18.561508121 -0700
|
||||||
--- alpine-2.21.fillpara/pith/state.h Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/state.h 2020-05-07 16:46:16.767304083 -0600
|
||||||
***************
|
***************
|
||||||
*** 249,254 ****
|
*** 251,256 ****
|
||||||
--- 249,256 ----
|
--- 251,258 ----
|
||||||
SPEC_COLOR_S *hdr_colors; /* list of configed colors for view */
|
SPEC_COLOR_S *hdr_colors; /* list of configured colors for view */
|
||||||
SPEC_COLOR_S *index_token_colors; /* list of configed colors for index */
|
SPEC_COLOR_S *index_token_colors; /* list of configured colors for index */
|
||||||
|
|
||||||
+ char *prefix; /* prefix for fillpara */
|
+ char *prefix; /* prefix for fillpara */
|
||||||
+ char **list_qstr; /* list of known quote strings */
|
+ char **list_qstr; /* list of known quote strings */
|
||||||
short init_context;
|
short init_context;
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
diff -rc alpine-2.21/pith/text.c alpine-2.21.fillpara/pith/text.c
|
diff -rc alpine-2.22/pith/text.c alpine-2.22.fillpara/pith/text.c
|
||||||
*** alpine-2.21/pith/text.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/text.c 2020-01-19 01:32:19.317492939 -0700
|
||||||
--- alpine-2.21.fillpara/pith/text.c Sun Feb 5 16:15:23 2017
|
--- alpine-2.22.fillpara/pith/text.c 2020-05-07 16:46:16.767304083 -0600
|
||||||
***************
|
***************
|
||||||
*** 92,98 ****
|
*** 92,98 ****
|
||||||
char *err, *charset;
|
char *err, *charset;
|
||||||
|
10
chappa-fillpara.txt
Normal file
10
chappa-fillpara.txt
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/fillpara.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
When you reply to a message, which has been quoted by several people and you
|
||||||
|
justify a paragraph, Alpine may not notice any other quote strings and justify
|
||||||
|
the paragraph as if there was no other quote strings in it. This patch will
|
||||||
|
help Alpine recognize extra levels of quoting, so that justifying will still
|
||||||
|
make the text readable. This is important because the purpose of justification
|
||||||
|
is to make the text more readable, and an incorrect justification may make the
|
||||||
|
text impossible to read.
|
@ -1,8 +1,8 @@
|
|||||||
diff -rc alpine-2.21/alpine/send.c alpine-2.21.fromheader/alpine/send.c
|
diff -rc alpine-2.22/alpine/send.c alpine-2.22.fromheader/alpine/send.c
|
||||||
*** alpine-2.21/alpine/send.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/alpine/send.c 2020-01-19 01:32:20.126476758 -0700
|
||||||
--- alpine-2.21.fromheader/alpine/send.c Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.fromheader/alpine/send.c 2020-01-19 01:34:53.915466200 -0700
|
||||||
***************
|
***************
|
||||||
*** 913,919 ****
|
*** 909,915 ****
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, KS_NONE},
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, KS_NONE},
|
||||||
{"From : ", "From", h_composer_from, 10, 0, NULL,
|
{"From : ", "From", h_composer_from, 10, 0, NULL,
|
||||||
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
||||||
@ -10,7 +10,7 @@ diff -rc alpine-2.21/alpine/send.c alpine-2.21.fromheader/alpine/send.c
|
|||||||
{"Reply-To: ", "Reply To", h_composer_reply_to, 10, 0, NULL,
|
{"Reply-To: ", "Reply To", h_composer_reply_to, 10, 0, NULL,
|
||||||
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
||||||
0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, KS_TOADDRBOOK},
|
0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, KS_TOADDRBOOK},
|
||||||
--- 913,919 ----
|
--- 909,915 ----
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, KS_NONE},
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, KS_NONE},
|
||||||
{"From : ", "From", h_composer_from, 10, 0, NULL,
|
{"From : ", "From", h_composer_from, 10, 0, NULL,
|
||||||
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
||||||
@ -19,8 +19,8 @@ diff -rc alpine-2.21/alpine/send.c alpine-2.21.fromheader/alpine/send.c
|
|||||||
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
build_address, NULL, NULL, addr_book_compose, "To AddrBk", NULL, abook_nickname_complete,
|
||||||
0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, KS_TOADDRBOOK},
|
0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, KS_TOADDRBOOK},
|
||||||
***************
|
***************
|
||||||
*** 2367,2372 ****
|
*** 2364,2369 ****
|
||||||
--- 2367,2377 ----
|
--- 2364,2374 ----
|
||||||
he->rich_header = 0;
|
he->rich_header = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -33,7 +33,7 @@ diff -rc alpine-2.21/alpine/send.c alpine-2.21.fromheader/alpine/send.c
|
|||||||
he_from = he;
|
he_from = he;
|
||||||
break;
|
break;
|
||||||
***************
|
***************
|
||||||
*** 3104,3110 ****
|
*** 3101,3107 ****
|
||||||
if(outgoing->return_path)
|
if(outgoing->return_path)
|
||||||
mail_free_address(&outgoing->return_path);
|
mail_free_address(&outgoing->return_path);
|
||||||
|
|
||||||
@ -41,7 +41,7 @@ diff -rc alpine-2.21/alpine/send.c alpine-2.21.fromheader/alpine/send.c
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Don't ever believe the sender that is there.
|
* Don't ever believe the sender that is there.
|
||||||
--- 3109,3117 ----
|
--- 3106,3114 ----
|
||||||
if(outgoing->return_path)
|
if(outgoing->return_path)
|
||||||
mail_free_address(&outgoing->return_path);
|
mail_free_address(&outgoing->return_path);
|
||||||
|
|
||||||
@ -51,12 +51,12 @@ diff -rc alpine-2.21/alpine/send.c alpine-2.21.fromheader/alpine/send.c
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Don't ever believe the sender that is there.
|
* Don't ever believe the sender that is there.
|
||||||
diff -rc alpine-2.21/pith/conf.c alpine-2.21.fromheader/pith/conf.c
|
diff -rc alpine-2.22/pith/conf.c alpine-2.22.fromheader/pith/conf.c
|
||||||
*** alpine-2.21/pith/conf.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conf.c 2020-01-19 01:32:18.678505766 -0700
|
||||||
--- alpine-2.21.fromheader/pith/conf.c Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.fromheader/pith/conf.c 2020-01-19 01:34:53.918466178 -0700
|
||||||
***************
|
***************
|
||||||
*** 2884,2889 ****
|
*** 2908,2913 ****
|
||||||
--- 2884,2891 ----
|
--- 2908,2915 ----
|
||||||
F_NO_FCC_ATTACH, h_config_no_fcc_attach, PREF_SEND, 0},
|
F_NO_FCC_ATTACH, h_config_no_fcc_attach, PREF_SEND, 0},
|
||||||
{"fcc-on-bounce", "Include Fcc When Bouncing Messages",
|
{"fcc-on-bounce", "Include Fcc When Bouncing Messages",
|
||||||
F_FCC_ON_BOUNCE, h_config_fcc_on_bounce, PREF_SEND, 0},
|
F_FCC_ON_BOUNCE, h_config_fcc_on_bounce, PREF_SEND, 0},
|
||||||
@ -65,12 +65,12 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.fromheader/pith/conf.c
|
|||||||
{"mark-fcc-seen", NULL,
|
{"mark-fcc-seen", NULL,
|
||||||
F_MARK_FCC_SEEN, h_config_mark_fcc_seen, PREF_SEND, 0},
|
F_MARK_FCC_SEEN, h_config_mark_fcc_seen, PREF_SEND, 0},
|
||||||
{"fcc-only-without-confirm", "Send to Fcc Only Without Confirming",
|
{"fcc-only-without-confirm", "Send to Fcc Only Without Confirming",
|
||||||
diff -rc alpine-2.21/pith/conftype.h alpine-2.21.fromheader/pith/conftype.h
|
diff -rc alpine-2.22/pith/conftype.h alpine-2.22.fromheader/pith/conftype.h
|
||||||
*** alpine-2.21/pith/conftype.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conftype.h 2020-01-19 01:32:18.702505283 -0700
|
||||||
--- alpine-2.21.fromheader/pith/conftype.h Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.fromheader/pith/conftype.h 2020-01-19 01:34:53.919466170 -0700
|
||||||
***************
|
***************
|
||||||
*** 399,404 ****
|
*** 404,409 ****
|
||||||
--- 399,405 ----
|
--- 404,410 ----
|
||||||
F_AUTO_REPLY_TO,
|
F_AUTO_REPLY_TO,
|
||||||
F_VERBOSE_POST,
|
F_VERBOSE_POST,
|
||||||
F_FCC_ON_BOUNCE,
|
F_FCC_ON_BOUNCE,
|
||||||
@ -78,12 +78,12 @@ diff -rc alpine-2.21/pith/conftype.h alpine-2.21.fromheader/pith/conftype.h
|
|||||||
F_SEND_WO_CONFIRM,
|
F_SEND_WO_CONFIRM,
|
||||||
F_USE_SENDER_NOT_X,
|
F_USE_SENDER_NOT_X,
|
||||||
F_BLANK_KEYMENU,
|
F_BLANK_KEYMENU,
|
||||||
diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.fromheader/pith/pine.hlp
|
diff -rc alpine-2.22/pith/pine.hlp alpine-2.22.fromheader/pith/pine.hlp
|
||||||
*** alpine-2.21/pith/pine.hlp Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/pine.hlp 2020-01-19 01:32:19.035498584 -0700
|
||||||
--- alpine-2.21.fromheader/pith/pine.hlp Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.fromheader/pith/pine.hlp 2020-01-19 01:34:53.931466081 -0700
|
||||||
***************
|
***************
|
||||||
*** 28940,28945 ****
|
*** 29530,29535 ****
|
||||||
--- 28940,28961 ----
|
--- 29530,29551 ----
|
||||||
<End of help on this topic>
|
<End of help on this topic>
|
||||||
</BODY>
|
</BODY>
|
||||||
</HTML>
|
</HTML>
|
||||||
@ -106,9 +106,9 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.fromheader/pith/pine.hlp
|
|||||||
====== h_config_use_sender_not_x =====
|
====== h_config_use_sender_not_x =====
|
||||||
<HTML>
|
<HTML>
|
||||||
<HEAD>
|
<HEAD>
|
||||||
diff -rc alpine-2.21/pith/send.c alpine-2.21.fromheader/pith/send.c
|
diff -rc alpine-2.22/pith/send.c alpine-2.22.fromheader/pith/send.c
|
||||||
*** alpine-2.21/pith/send.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/send.c 2020-01-19 01:32:18.956500171 -0700
|
||||||
--- alpine-2.21.fromheader/pith/send.c Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.fromheader/pith/send.c 2020-01-19 01:34:53.934466058 -0700
|
||||||
***************
|
***************
|
||||||
*** 53,59 ****
|
*** 53,59 ****
|
||||||
/* name::type::canedit::writehdr::localcopy::rcptto */
|
/* name::type::canedit::writehdr::localcopy::rcptto */
|
||||||
@ -127,25 +127,25 @@ diff -rc alpine-2.21/pith/send.c alpine-2.21.fromheader/pith/send.c
|
|||||||
{TONAME, Address, 1, 1, 1, 1},
|
{TONAME, Address, 1, 1, 1, 1},
|
||||||
{CCNAME, Address, 1, 1, 1, 1},
|
{CCNAME, Address, 1, 1, 1, 1},
|
||||||
***************
|
***************
|
||||||
*** 1232,1238 ****
|
*** 1227,1233 ****
|
||||||
*p = *(p+4);
|
}
|
||||||
|
|
||||||
pf->type = pf_template[i].type;
|
pf->type = pf_template[i].type;
|
||||||
! pf->canedit = pf_template[i].canedit;
|
! pf->canedit = pf_template[i].canedit;
|
||||||
pf->rcptto = pf_template[i].rcptto;
|
pf->rcptto = pf_template[i].rcptto;
|
||||||
pf->writehdr = pf_template[i].writehdr;
|
pf->writehdr = pf_template[i].writehdr;
|
||||||
pf->localcopy = pf_template[i].localcopy;
|
pf->localcopy = pf_template[i].localcopy;
|
||||||
--- 1232,1238 ----
|
--- 1227,1233 ----
|
||||||
*p = *(p+4);
|
}
|
||||||
|
|
||||||
pf->type = pf_template[i].type;
|
pf->type = pf_template[i].type;
|
||||||
! pf->canedit = (i == N_FROM) ? CAN_EDIT(ps_global) : pf_template[i].canedit;
|
! pf->canedit = (i == N_FROM) ? CAN_EDIT(ps_global) : pf_template[i].canedit;
|
||||||
pf->rcptto = pf_template[i].rcptto;
|
pf->rcptto = pf_template[i].rcptto;
|
||||||
pf->writehdr = pf_template[i].writehdr;
|
pf->writehdr = pf_template[i].writehdr;
|
||||||
pf->localcopy = pf_template[i].localcopy;
|
pf->localcopy = pf_template[i].localcopy;
|
||||||
diff -rc alpine-2.21/pith/send.h alpine-2.21.fromheader/pith/send.h
|
diff -rc alpine-2.22/pith/send.h alpine-2.22.fromheader/pith/send.h
|
||||||
*** alpine-2.21/pith/send.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/send.h 2020-01-19 01:32:19.354492198 -0700
|
||||||
--- alpine-2.21.fromheader/pith/send.h Sun Feb 5 16:15:24 2017
|
--- alpine-2.22.fromheader/pith/send.h 2020-01-19 01:34:53.934466058 -0700
|
||||||
***************
|
***************
|
||||||
*** 159,164 ****
|
*** 159,164 ****
|
||||||
--- 159,166 ----
|
--- 159,166 ----
|
||||||
|
5
chappa-fromheader.txt
Normal file
5
chappa-fromheader.txt
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/fromheader.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
This patch allows you to change the From header without you having to configure
|
||||||
|
anything. The From header will always be available to you.
|
@ -1,6 +1,6 @@
|
|||||||
diff -rc alpine-2.21/pico/display.c alpine-2.21.insertpat/pico/display.c
|
diff -rc alpine-2.22/pico/display.c alpine-2.22.insertpat/pico/display.c
|
||||||
*** alpine-2.21/pico/display.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/display.c 2020-01-19 01:32:18.428510798 -0700
|
||||||
--- alpine-2.21.insertpat/pico/display.c Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.insertpat/pico/display.c 2020-01-19 01:34:56.194449394 -0700
|
||||||
***************
|
***************
|
||||||
*** 2205,2210 ****
|
*** 2205,2210 ****
|
||||||
--- 2205,2222 ----
|
--- 2205,2222 ----
|
||||||
@ -22,9 +22,9 @@ diff -rc alpine-2.21/pico/display.c alpine-2.21.insertpat/pico/display.c
|
|||||||
case (CTRL|'G') : /* CTRL-G help */
|
case (CTRL|'G') : /* CTRL-G help */
|
||||||
if(term.t_mrow == 0 && km_popped == 0){
|
if(term.t_mrow == 0 && km_popped == 0){
|
||||||
movecursor(term.t_nrow-2, 0);
|
movecursor(term.t_nrow-2, 0);
|
||||||
diff -rc alpine-2.21/pico/search.c alpine-2.21.insertpat/pico/search.c
|
diff -rc alpine-2.22/pico/search.c alpine-2.22.insertpat/pico/search.c
|
||||||
*** alpine-2.21/pico/search.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pico/search.c 2020-01-19 01:32:18.347512428 -0700
|
||||||
--- alpine-2.21.insertpat/pico/search.c Sun Feb 5 16:15:26 2017
|
--- alpine-2.22.insertpat/pico/search.c 2020-01-19 01:34:56.195449387 -0700
|
||||||
***************
|
***************
|
||||||
*** 122,127 ****
|
*** 122,127 ****
|
||||||
--- 122,131 ----
|
--- 122,131 ----
|
||||||
|
7
chappa-insertpat.txt
Normal file
7
chappa-insertpat.txt
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/insertpat.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
This patch allows you to insert the pattern that you searched last to be
|
||||||
|
edited. Say for example you wanted to look for "foo_bar", but wrote mistakenly
|
||||||
|
"foo-bar" instead, then pressing ^W to search and then ^N you will make appear
|
||||||
|
in your input "foo-bar" from where you can now easily switch "-" to "_".
|
@ -1,164 +1,9 @@
|
|||||||
diff -rc alpine-2.21/README.maildir alpine-2.21.maildir/README.maildir
|
diff -rc alpine-2.22/alpine/alpine.c alpine-2.22.maildir/alpine/alpine.c
|
||||||
*** alpine-2.21/README.maildir Sun Feb 5 16:15:21 2017
|
*** alpine-2.22/alpine/alpine.c 2020-01-19 01:32:20.090477474 -0700
|
||||||
--- alpine-2.21.maildir/README.maildir Sun Feb 5 16:15:21 2017
|
--- alpine-2.22.maildir/alpine/alpine.c 2020-01-19 01:34:47.848512457 -0700
|
||||||
***************
|
***************
|
||||||
*** 0 ****
|
*** 591,596 ****
|
||||||
--- 1,149 ----
|
--- 591,601 ----
|
||||||
+ ---------------------------------------
|
|
||||||
+
|
|
||||||
+ Maildir Driver for Alpine 2.0
|
|
||||||
+ By Eduardo Chappa
|
|
||||||
+ <chappa@gmx.com>
|
|
||||||
+
|
|
||||||
+ ---------------------------------------
|
|
||||||
+ 1. General Information About This Patch
|
|
||||||
+ ---------------------------------------
|
|
||||||
+
|
|
||||||
+ This patch adds support for the maildir format to Alpine. We take the
|
|
||||||
+ approach that this patch is one more driver among the number of formats
|
|
||||||
+ supported by Alpine (more generally c-client). This approach differs from
|
|
||||||
+ older versions of similar patches, in that once a maildir patch was
|
|
||||||
+ applied, it was assumed that all your folders would be created in the
|
|
||||||
+ maildir format.
|
|
||||||
+
|
|
||||||
+ This patch does not assume that maildir is a preferred format, instead
|
|
||||||
+ puts maildir in equal footing with other formats (mbox, mbx, mix, etc),
|
|
||||||
+ and so a maildir folder in the mail/ collection is treated in the same way
|
|
||||||
+ as any other folder in any other format. In other words, just by reading
|
|
||||||
+ the name of a folder, or opening it, or doing any operation with it, you
|
|
||||||
+ can not know in which format the folder is.
|
|
||||||
+
|
|
||||||
+ This implies that if you want to add a folder in the maildir format to the
|
|
||||||
+ mail/ collection, then you must add by pressing "A" in the folder list
|
|
||||||
+ collection and enter "#driver.md/mail/name_maildir_folder".
|
|
||||||
+
|
|
||||||
+ If you only want to use maildir, however, you can do so too. In this case,
|
|
||||||
+ you must create a maildir collection. In that collection, only maildir
|
|
||||||
+ folders will be listed. If there is any folder in any other format, that
|
|
||||||
+ folder will be ignored. In another words, any folder listed there is in
|
|
||||||
+ maildir format and can be accessed through that collection, conversely,
|
|
||||||
+ any folder not listed there is not in maildir format and there is no way
|
|
||||||
+ to access it using this collection.
|
|
||||||
+
|
|
||||||
+ In order to create a maildir collection, you could press M S L, and "A" to
|
|
||||||
+ add a collection. Fill in the required fields as follows:
|
|
||||||
+
|
|
||||||
+ Nickname : Anything
|
|
||||||
+ Server :
|
|
||||||
+ Path : #md/relative/path/to/maildir/collection/
|
|
||||||
+ View :
|
|
||||||
+
|
|
||||||
+ For example, if "path" is set to "#md/mail/", then Alpine will look for your
|
|
||||||
+ maildir folders that are in ~/mail/.
|
|
||||||
+
|
|
||||||
+ The code in this patch is mostly based in code for the unix driver plus
|
|
||||||
+ some combinations of the mh, mbx and nntp drivers for the c-client
|
|
||||||
+ library. Those drivers were designed by Mark Crispin, and bugs in this
|
|
||||||
+ code are not his bugs, but my own.
|
|
||||||
+
|
|
||||||
+ I got all the specification for this patch from
|
|
||||||
+ http://cr.yp.to/proto/maildir.html. If you know of a place with a better
|
|
||||||
+ specification for maildir format please let me know. The method this patch
|
|
||||||
+ uses to create a unique filename for a message is one of the "old
|
|
||||||
+ fashioned" methods. I realize that this is old fashioned, but it is
|
|
||||||
+ portable, and portability is the main reason why I decided to use an old
|
|
||||||
+ fashioned method (most methods are not portable. See the word
|
|
||||||
+ "Unfortunately" in that document).
|
|
||||||
+
|
|
||||||
+ --------------
|
|
||||||
+ 2. Other Goals
|
|
||||||
+ --------------
|
|
||||||
+
|
|
||||||
+ It is intended that this code will work well with any application
|
|
||||||
+ written using the c-client library. Of paramount importance is to make the
|
|
||||||
+ associated imap server work well when the server accesses a folder in
|
|
||||||
+ Maildir format. The program mailutil should also work flawlessly with this
|
|
||||||
+ implemetation of the driver.
|
|
||||||
+
|
|
||||||
+ It is intended that this driver be fast and stable. We intend not to
|
|
||||||
+ patch Alpine to make this driver do its work, unless such patching is for
|
|
||||||
+ fixing bugs in Alpine or to pass parameters to the driver.
|
|
||||||
+
|
|
||||||
+ ------------------------------------------------------------------------
|
|
||||||
+ 3. What are the known bugs of this implementation of the Maildir driver?
|
|
||||||
+ ------------------------------------------------------------------------
|
|
||||||
+
|
|
||||||
+ I don't know any at this time. There have been bugs before, though, but
|
|
||||||
+ I try to fix bugs as soon as they are reported.
|
|
||||||
+
|
|
||||||
+ ----------
|
|
||||||
+ 4. On UIDs
|
|
||||||
+ ----------
|
|
||||||
+
|
|
||||||
+ This patch keeps uids in the name of the file that contains the message,
|
|
||||||
+ by adding a ",u=" string to the file name to save the uid of a message. A
|
|
||||||
+ file is kept between sessions to save information on the last uid assigned
|
|
||||||
+ and its time of validity. Only one session with writing access can write
|
|
||||||
+ uids, all others must wait for the other session to assign them. The
|
|
||||||
+ session assigning uids creates a ".uidtemp" file which other sessions must
|
|
||||||
+ not disturb.
|
|
||||||
+
|
|
||||||
+ Uid support appeared in Alpine 1.00 (snapshot 925), and is experimental,
|
|
||||||
+ please report any problems.
|
|
||||||
+
|
|
||||||
+ ----------------------------------------------
|
|
||||||
+ 5. Configuring Alpine and Setting up a Maildir
|
|
||||||
+ ----------------------------------------------
|
|
||||||
+
|
|
||||||
+ Once this approach was chosen, it implied the following:
|
|
||||||
+
|
|
||||||
+ * This patch assumes that your INBOX is located at "$HOME/Maildir".
|
|
||||||
+ This is a directory which should have three subdirectories "cur",
|
|
||||||
+ "tmp" and "new". Mail is delivered to 'new' and read from 'cur'. I
|
|
||||||
+ have added a configuration option "maildir-location" which can be
|
|
||||||
+ used to tell Alpine where your Maildir inbox is, in case your system
|
|
||||||
+ does not use the above directory (e.g. your system may use
|
|
||||||
+ "~/.maildir"). In this case define that variable to be the name of
|
|
||||||
+ the directory where your e-mail is being delivered (e.g.
|
|
||||||
+ ".maildir").
|
|
||||||
+
|
|
||||||
+ * If you want to use the above configuration as your inbox, you must
|
|
||||||
+ define your inbox-path as "#md/inbox" (no quotes). You can define
|
|
||||||
+ the inbox-path like above even if you have changed the
|
|
||||||
+ maildir-location variable. That's the whole point of that variable.
|
|
||||||
+
|
|
||||||
+ -------------------------------------------
|
|
||||||
+ 6. What about Courier/Dovecot file systems?
|
|
||||||
+ -------------------------------------------
|
|
||||||
+
|
|
||||||
+ In a courier file system all folders are subfolders of a root folder
|
|
||||||
+ called INBOX. Normally INBOX is located at ~/Maildir and subfolders are
|
|
||||||
+ "dot" directories in ~/Maildir. For example ~/Maildir/.Trash is a
|
|
||||||
+ subfolder of INBOX and is accessed with the nickname "INBOX.Trash".
|
|
||||||
+
|
|
||||||
+ You can not access folders in this way unless you preceed them with the
|
|
||||||
+ string "#mc/". The purpose of the string "#mc/" is to warn Alpine that a
|
|
||||||
+ collection in the Courier format is going to be accessed. Therefore, you
|
|
||||||
+ can SELECT a folder like "#mc/INBOX.Trash", but not "INBOX.Trash"
|
|
||||||
+
|
|
||||||
+ You can access a collection through a server, but if you want to access a
|
|
||||||
+ collection of folders created using the Courier server, you MUST edit your
|
|
||||||
+ ".pinerc" file and enter the definition of the collection as follows:
|
|
||||||
+
|
|
||||||
+ folder-collections="Anything you want" #mc/INBOX.[]
|
|
||||||
+
|
|
||||||
+ You can replace the string "#mc/INBOX." by something different, for example
|
|
||||||
+ "#mc/Courier/." will make Alpine search for your collection in ~/Courier.
|
|
||||||
+
|
|
||||||
+ You can not add this setting directly into Alpine because Alpine fails to
|
|
||||||
+ accept this value from its input, but it takes it correctly when it is
|
|
||||||
+ added through the ".pinerc" file.
|
|
||||||
+
|
|
||||||
+ You can access your inbox as "#mc/INBOX" or "#md/INBOX". Both definitions
|
|
||||||
+ point to the same place.
|
|
||||||
+
|
|
||||||
+ Last Updated May 28, 2011
|
|
||||||
diff -rc alpine-2.21/alpine/alpine.c alpine-2.21.maildir/alpine/alpine.c
|
|
||||||
*** alpine-2.21/alpine/alpine.c Sun Feb 5 16:02:36 2017
|
|
||||||
--- alpine-2.21.maildir/alpine/alpine.c Sun Feb 5 16:15:20 2017
|
|
||||||
***************
|
|
||||||
*** 576,581 ****
|
|
||||||
--- 576,586 ----
|
|
||||||
if(F_ON(F_MAILDROPS_PRESERVE_STATE, ps_global))
|
if(F_ON(F_MAILDROPS_PRESERVE_STATE, ps_global))
|
||||||
mail_parameters(NULL, SET_SNARFPRESERVE, (void *) TRUE);
|
mail_parameters(NULL, SET_SNARFPRESERVE, (void *) TRUE);
|
||||||
|
|
||||||
@ -170,12 +15,12 @@ diff -rc alpine-2.21/alpine/alpine.c alpine-2.21.maildir/alpine/alpine.c
|
|||||||
rvl = 0L;
|
rvl = 0L;
|
||||||
if(pine_state->VAR_NNTPRANGE){
|
if(pine_state->VAR_NNTPRANGE){
|
||||||
if(!SVAR_NNTPRANGE(pine_state, rvl, tmp_20k_buf, SIZEOF_20KBUF))
|
if(!SVAR_NNTPRANGE(pine_state, rvl, tmp_20k_buf, SIZEOF_20KBUF))
|
||||||
diff -rc alpine-2.21/alpine/confscroll.c alpine-2.21.maildir/alpine/confscroll.c
|
diff -rc alpine-2.22/alpine/confscroll.c alpine-2.22.maildir/alpine/confscroll.c
|
||||||
*** alpine-2.21/alpine/confscroll.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/alpine/confscroll.c 2020-01-19 01:32:20.190475483 -0700
|
||||||
--- alpine-2.21.maildir/alpine/confscroll.c Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/alpine/confscroll.c 2020-01-19 01:34:47.850512441 -0700
|
||||||
***************
|
***************
|
||||||
*** 5545,5550 ****
|
*** 5557,5562 ****
|
||||||
--- 5545,5556 ----
|
--- 5557,5568 ----
|
||||||
(void *)var->current_val.p);
|
(void *)var->current_val.p);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -188,11 +33,11 @@ diff -rc alpine-2.21/alpine/confscroll.c alpine-2.21.maildir/alpine/confscroll.c
|
|||||||
else if(revert && standard_radio_var(ps, var)){
|
else if(revert && standard_radio_var(ps, var)){
|
||||||
|
|
||||||
cur_rule_value(var, TRUE, FALSE);
|
cur_rule_value(var, TRUE, FALSE);
|
||||||
diff -rc alpine-2.21/imap/src/c-client/mail.c alpine-2.21.maildir/imap/src/c-client/mail.c
|
diff -rc alpine-2.22/imap/src/c-client/mail.c alpine-2.22.maildir/imap/src/c-client/mail.c
|
||||||
*** alpine-2.21/imap/src/c-client/mail.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/imap/src/c-client/mail.c 2020-01-19 01:32:23.162416684 -0700
|
||||||
--- alpine-2.21.maildir/imap/src/c-client/mail.c Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/imap/src/c-client/mail.c 2020-01-19 01:34:48.243509380 -0700
|
||||||
***************
|
***************
|
||||||
*** 1017,1023 ****
|
*** 1046,1052 ****
|
||||||
MAILSTREAM *ts;
|
MAILSTREAM *ts;
|
||||||
char *s,*t,tmp[MAILTMPLEN];
|
char *s,*t,tmp[MAILTMPLEN];
|
||||||
size_t i;
|
size_t i;
|
||||||
@ -200,7 +45,7 @@ diff -rc alpine-2.21/imap/src/c-client/mail.c alpine-2.21.maildir/imap/src/c-cli
|
|||||||
/* never allow names with newlines */
|
/* never allow names with newlines */
|
||||||
if ((s = strpbrk (mailbox,"\015\012")) != NULL) {
|
if ((s = strpbrk (mailbox,"\015\012")) != NULL) {
|
||||||
MM_LOG ("Can't create mailbox with such a name",ERROR);
|
MM_LOG ("Can't create mailbox with such a name",ERROR);
|
||||||
--- 1017,1023 ----
|
--- 1046,1052 ----
|
||||||
MAILSTREAM *ts;
|
MAILSTREAM *ts;
|
||||||
char *s,*t,tmp[MAILTMPLEN];
|
char *s,*t,tmp[MAILTMPLEN];
|
||||||
size_t i;
|
size_t i;
|
||||||
@ -209,8 +54,8 @@ diff -rc alpine-2.21/imap/src/c-client/mail.c alpine-2.21.maildir/imap/src/c-cli
|
|||||||
if ((s = strpbrk (mailbox,"\015\012")) != NULL) {
|
if ((s = strpbrk (mailbox,"\015\012")) != NULL) {
|
||||||
MM_LOG ("Can't create mailbox with such a name",ERROR);
|
MM_LOG ("Can't create mailbox with such a name",ERROR);
|
||||||
***************
|
***************
|
||||||
*** 1041,1046 ****
|
*** 1070,1075 ****
|
||||||
--- 1041,1048 ----
|
--- 1070,1077 ----
|
||||||
return NIL;
|
return NIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -220,8 +65,8 @@ diff -rc alpine-2.21/imap/src/c-client/mail.c alpine-2.21.maildir/imap/src/c-cli
|
|||||||
if ((mailbox[0] == '#') && ((mailbox[1] == 'd') || (mailbox[1] == 'D')) &&
|
if ((mailbox[0] == '#') && ((mailbox[1] == 'd') || (mailbox[1] == 'D')) &&
|
||||||
((mailbox[2] == 'r') || (mailbox[2] == 'R')) &&
|
((mailbox[2] == 'r') || (mailbox[2] == 'R')) &&
|
||||||
***************
|
***************
|
||||||
*** 1071,1076 ****
|
*** 1100,1105 ****
|
||||||
--- 1073,1085 ----
|
--- 1102,1114 ----
|
||||||
(((*mailbox == '{') || (*mailbox == '#')) &&
|
(((*mailbox == '{') || (*mailbox == '#')) &&
|
||||||
(stream = mail_open (NIL,mailbox,OP_PROTOTYPE | OP_SILENT))))
|
(stream = mail_open (NIL,mailbox,OP_PROTOTYPE | OP_SILENT))))
|
||||||
d = stream->dtb;
|
d = stream->dtb;
|
||||||
@ -235,12 +80,12 @@ diff -rc alpine-2.21/imap/src/c-client/mail.c alpine-2.21.maildir/imap/src/c-cli
|
|||||||
else if ((*mailbox != '{') && (ts = default_proto (NIL))) d = ts->dtb;
|
else if ((*mailbox != '{') && (ts = default_proto (NIL))) d = ts->dtb;
|
||||||
else { /* failed utterly */
|
else { /* failed utterly */
|
||||||
sprintf (tmp,"Can't create mailbox %.80s: indeterminate format",mailbox);
|
sprintf (tmp,"Can't create mailbox %.80s: indeterminate format",mailbox);
|
||||||
diff -rc alpine-2.21/imap/src/c-client/mail.h alpine-2.21.maildir/imap/src/c-client/mail.h
|
diff -rc alpine-2.22/imap/src/c-client/mail.h alpine-2.22.maildir/imap/src/c-client/mail.h
|
||||||
*** alpine-2.21/imap/src/c-client/mail.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/imap/src/c-client/mail.h 2020-01-19 01:32:23.166416605 -0700
|
||||||
--- alpine-2.21.maildir/imap/src/c-client/mail.h Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/imap/src/c-client/mail.h 2020-01-19 01:34:48.244509372 -0700
|
||||||
***************
|
***************
|
||||||
*** 366,371 ****
|
*** 374,379 ****
|
||||||
--- 366,375 ----
|
--- 374,383 ----
|
||||||
#define SET_SCANCONTENTS (long) 573
|
#define SET_SCANCONTENTS (long) 573
|
||||||
#define GET_MHALLOWINBOX (long) 574
|
#define GET_MHALLOWINBOX (long) 574
|
||||||
#define SET_MHALLOWINBOX (long) 575
|
#define SET_MHALLOWINBOX (long) 575
|
||||||
@ -251,80 +96,9 @@ diff -rc alpine-2.21/imap/src/c-client/mail.h alpine-2.21.maildir/imap/src/c-cli
|
|||||||
|
|
||||||
/* Driver flags */
|
/* Driver flags */
|
||||||
|
|
||||||
diff -rc alpine-2.21/imap/src/osdep/unix/Makefile alpine-2.21.maildir/imap/src/osdep/unix/Makefile
|
diff -rc alpine-2.22/imap/src/osdep/unix/dummy.c alpine-2.22.maildir/imap/src/osdep/unix/dummy.c
|
||||||
*** alpine-2.21/imap/src/osdep/unix/Makefile Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/imap/src/osdep/unix/dummy.c 2020-01-19 01:32:22.660426553 -0700
|
||||||
--- alpine-2.21.maildir/imap/src/osdep/unix/Makefile Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/imap/src/osdep/unix/dummy.c 2020-01-19 01:34:48.245509364 -0700
|
||||||
***************
|
|
||||||
*** 147,153 ****
|
|
||||||
# However, mh needs to be before any sysinbox formats (such as mmdf or unix)
|
|
||||||
# since otherwise INBOX won't work correctly when mh_allow_inbox is set.
|
|
||||||
#
|
|
||||||
! DEFAULTDRIVERS=imap nntp pop3 mix mx mbx tenex mtx mh mmdf unix news phile
|
|
||||||
CHUNKSIZE=65536
|
|
||||||
|
|
||||||
# Normally no need to change any of these
|
|
||||||
--- 147,153 ----
|
|
||||||
# However, mh needs to be before any sysinbox formats (such as mmdf or unix)
|
|
||||||
# since otherwise INBOX won't work correctly when mh_allow_inbox is set.
|
|
||||||
#
|
|
||||||
! DEFAULTDRIVERS=maildir courier imap nntp pop3 mix mx mbx tenex mtx mh mmdf unix news phile
|
|
||||||
CHUNKSIZE=65536
|
|
||||||
|
|
||||||
# Normally no need to change any of these
|
|
||||||
***************
|
|
||||||
*** 156,162 ****
|
|
||||||
BINARIES=osdep.o mail.o misc.o newsrc.o smanager.o utf8.o utf8aux.o siglocal.o \
|
|
||||||
dummy.o pseudo.o netmsg.o flstring.o fdstring.o \
|
|
||||||
rfc822.o nntp.o smtp.o imap4r1.o pop3.o \
|
|
||||||
! unix.o mbx.o mmdf.o tenex.o mtx.o news.o phile.o mh.o mx.o mix.o
|
|
||||||
CFLAGS=-g
|
|
||||||
|
|
||||||
CAT=cat
|
|
||||||
--- 156,162 ----
|
|
||||||
BINARIES=osdep.o mail.o misc.o newsrc.o smanager.o utf8.o utf8aux.o siglocal.o \
|
|
||||||
dummy.o pseudo.o netmsg.o flstring.o fdstring.o \
|
|
||||||
rfc822.o nntp.o smtp.o imap4r1.o pop3.o \
|
|
||||||
! unix.o mbx.o mmdf.o tenex.o mtx.o news.o phile.o mh.o mx.o mix.o maildir.o
|
|
||||||
CFLAGS=-g
|
|
||||||
|
|
||||||
CAT=cat
|
|
||||||
***************
|
|
||||||
*** 293,299 ****
|
|
||||||
|
|
||||||
cyg: # Cygwin - note that most local file drivers don't work!!
|
|
||||||
$(BUILD) `$(CAT) SPECIALS` OS=$@ \
|
|
||||||
! DEFAULTDRIVERS="imap nntp pop3 mbx unix phile" \
|
|
||||||
SIGTYPE=psx CHECKPW=cyg LOGINPW=cyg CRXTYPE=std \
|
|
||||||
SPOOLDIR=/var \
|
|
||||||
ACTIVEFILE=/usr/local/news/lib/active \
|
|
||||||
--- 293,299 ----
|
|
||||||
|
|
||||||
cyg: # Cygwin - note that most local file drivers don't work!!
|
|
||||||
$(BUILD) `$(CAT) SPECIALS` OS=$@ \
|
|
||||||
! DEFAULTDRIVERS="imap nntp pop3 mbx unix maildir phile" \
|
|
||||||
SIGTYPE=psx CHECKPW=cyg LOGINPW=cyg CRXTYPE=std \
|
|
||||||
SPOOLDIR=/var \
|
|
||||||
ACTIVEFILE=/usr/local/news/lib/active \
|
|
||||||
***************
|
|
||||||
*** 911,917 ****
|
|
||||||
unix.o: mail.h misc.h osdep.h unix.h pseudo.h dummy.h
|
|
||||||
utf8.o: mail.h misc.h osdep.h utf8.h tmap.c widths.c
|
|
||||||
utf8aux.o: mail.h misc.h osdep.h utf8.h
|
|
||||||
!
|
|
||||||
|
|
||||||
# OS-dependent
|
|
||||||
|
|
||||||
--- 911,917 ----
|
|
||||||
unix.o: mail.h misc.h osdep.h unix.h pseudo.h dummy.h
|
|
||||||
utf8.o: mail.h misc.h osdep.h utf8.h tmap.c widths.c
|
|
||||||
utf8aux.o: mail.h misc.h osdep.h utf8.h
|
|
||||||
! maildir.o: mail.h misc.h osdep.h maildir.h dummy.h
|
|
||||||
|
|
||||||
# OS-dependent
|
|
||||||
|
|
||||||
diff -rc alpine-2.21/imap/src/osdep/unix/dummy.c alpine-2.21.maildir/imap/src/osdep/unix/dummy.c
|
|
||||||
*** alpine-2.21/imap/src/osdep/unix/dummy.c Sun Feb 5 16:02:36 2017
|
|
||||||
--- alpine-2.21.maildir/imap/src/osdep/unix/dummy.c Sun Feb 5 16:15:20 2017
|
|
||||||
***************
|
***************
|
||||||
*** 103,115 ****
|
*** 103,115 ****
|
||||||
* Accepts: mailbox name
|
* Accepts: mailbox name
|
||||||
@ -479,16 +253,16 @@ diff -rc alpine-2.21/imap/src/osdep/unix/dummy.c alpine-2.21.maildir/imap/src/os
|
|||||||
return T; /* return success */
|
return T; /* return success */
|
||||||
}
|
}
|
||||||
|
|
||||||
diff -rc alpine-2.21/imap/src/osdep/unix/maildir.c alpine-2.21.maildir/imap/src/osdep/unix/maildir.c
|
diff -rc alpine-2.22/imap/src/osdep/unix/maildir.c alpine-2.22.maildir/imap/src/osdep/unix/maildir.c
|
||||||
*** alpine-2.21/imap/src/osdep/unix/maildir.c Sun Feb 5 16:15:21 2017
|
*** alpine-2.22/imap/src/osdep/unix/maildir.c 2020-01-19 01:34:48.437507873 -0700
|
||||||
--- alpine-2.21.maildir/imap/src/osdep/unix/maildir.c Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/imap/src/osdep/unix/maildir.c 2020-01-19 01:34:48.249509333 -0700
|
||||||
***************
|
***************
|
||||||
*** 0 ****
|
*** 0 ****
|
||||||
--- 1,2671 ----
|
--- 1,2671 ----
|
||||||
+ /*
|
+ /*
|
||||||
+ * Maildir driver for Alpine 2.20
|
+ * Maildir driver for Alpine 2.20
|
||||||
+ *
|
+ *
|
||||||
+ * Written by Eduardo Chappa <chappa@gmx.com>
|
+ * Written by Eduardo Chappa <alpine.chappa@gmx.com>
|
||||||
+ * Last Update: June 10, 2014
|
+ * Last Update: June 10, 2014
|
||||||
+ *
|
+ *
|
||||||
+ */
|
+ */
|
||||||
@ -3156,9 +2930,9 @@ diff -rc alpine-2.21/imap/src/osdep/unix/maildir.c alpine-2.21.maildir/imap/src/
|
|||||||
+ LOCAL->uidtempfile = cpystr(tmp);
|
+ LOCAL->uidtempfile = cpystr(tmp);
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
diff -rc alpine-2.21/imap/src/osdep/unix/maildir.h alpine-2.21.maildir/imap/src/osdep/unix/maildir.h
|
diff -rc alpine-2.22/imap/src/osdep/unix/maildir.h alpine-2.22.maildir/imap/src/osdep/unix/maildir.h
|
||||||
*** alpine-2.21/imap/src/osdep/unix/maildir.h Sun Feb 5 16:15:21 2017
|
*** alpine-2.22/imap/src/osdep/unix/maildir.h 2020-01-19 01:34:48.439507857 -0700
|
||||||
--- alpine-2.21.maildir/imap/src/osdep/unix/maildir.h Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/imap/src/osdep/unix/maildir.h 2020-01-19 01:34:48.250509325 -0700
|
||||||
***************
|
***************
|
||||||
*** 0 ****
|
*** 0 ****
|
||||||
--- 1,226 ----
|
--- 1,226 ----
|
||||||
@ -3388,9 +3162,73 @@ diff -rc alpine-2.21/imap/src/osdep/unix/maildir.h alpine-2.21.maildir/imap/src/
|
|||||||
+ void maildir_assign_uid(MAILSTREAM *stream, unsigned long msgno, unsigned long uid);
|
+ void maildir_assign_uid(MAILSTREAM *stream, unsigned long msgno, unsigned long uid);
|
||||||
+ void maildir_uid_renew_tempfile(MAILSTREAM *stream);
|
+ void maildir_uid_renew_tempfile(MAILSTREAM *stream);
|
||||||
+
|
+
|
||||||
diff -rc alpine-2.21/imap/src/osdep/unix/os_cyg.h alpine-2.21.maildir/imap/src/osdep/unix/os_cyg.h
|
diff -rc alpine-2.22/imap/src/osdep/unix/Makefile alpine-2.22.maildir/imap/src/osdep/unix/Makefile
|
||||||
*** alpine-2.21/imap/src/osdep/unix/os_cyg.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/imap/src/osdep/unix/Makefile 2020-01-19 01:32:22.615427440 -0700
|
||||||
--- alpine-2.21.maildir/imap/src/osdep/unix/os_cyg.h Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/imap/src/osdep/unix/Makefile 2020-01-19 01:34:48.250509325 -0700
|
||||||
|
***************
|
||||||
|
*** 147,153 ****
|
||||||
|
# However, mh needs to be before any sysinbox formats (such as mmdf or unix)
|
||||||
|
# since otherwise INBOX won't work correctly when mh_allow_inbox is set.
|
||||||
|
#
|
||||||
|
! DEFAULTDRIVERS=imap nntp pop3 mix mx mbx tenex mtx mh mmdf unix news phile
|
||||||
|
CHUNKSIZE=65536
|
||||||
|
|
||||||
|
# Normally no need to change any of these
|
||||||
|
--- 147,153 ----
|
||||||
|
# However, mh needs to be before any sysinbox formats (such as mmdf or unix)
|
||||||
|
# since otherwise INBOX won't work correctly when mh_allow_inbox is set.
|
||||||
|
#
|
||||||
|
! DEFAULTDRIVERS=maildir courier imap nntp pop3 mix mx mbx tenex mtx mh mmdf unix news phile
|
||||||
|
CHUNKSIZE=65536
|
||||||
|
|
||||||
|
# Normally no need to change any of these
|
||||||
|
***************
|
||||||
|
*** 156,162 ****
|
||||||
|
BINARIES=osdep.o mail.o misc.o newsrc.o smanager.o utf8.o utf8aux.o siglocal.o \
|
||||||
|
dummy.o pseudo.o netmsg.o flstring.o fdstring.o \
|
||||||
|
rfc822.o nntp.o smtp.o imap4r1.o http.o json.o pop3.o \
|
||||||
|
! unix.o mbx.o mmdf.o tenex.o mtx.o news.o phile.o mh.o mx.o mix.o
|
||||||
|
CFLAGS=-g
|
||||||
|
|
||||||
|
CAT=cat
|
||||||
|
--- 156,162 ----
|
||||||
|
BINARIES=osdep.o mail.o misc.o newsrc.o smanager.o utf8.o utf8aux.o siglocal.o \
|
||||||
|
dummy.o pseudo.o netmsg.o flstring.o fdstring.o \
|
||||||
|
rfc822.o nntp.o smtp.o imap4r1.o http.o json.o pop3.o \
|
||||||
|
! unix.o mbx.o mmdf.o tenex.o mtx.o news.o phile.o mh.o mx.o mix.o maildir.o
|
||||||
|
CFLAGS=-g
|
||||||
|
|
||||||
|
CAT=cat
|
||||||
|
***************
|
||||||
|
*** 293,299 ****
|
||||||
|
|
||||||
|
cyg: # Cygwin - note that most local file drivers don't work!!
|
||||||
|
$(BUILD) `$(CAT) SPECIALS` OS=$@ \
|
||||||
|
! DEFAULTDRIVERS="imap nntp pop3 mbx unix phile" \
|
||||||
|
SIGTYPE=psx CHECKPW=cyg LOGINPW=cyg CRXTYPE=std \
|
||||||
|
SPOOLDIR=/var \
|
||||||
|
ACTIVEFILE=/usr/local/news/lib/active \
|
||||||
|
--- 293,299 ----
|
||||||
|
|
||||||
|
cyg: # Cygwin - note that most local file drivers don't work!!
|
||||||
|
$(BUILD) `$(CAT) SPECIALS` OS=$@ \
|
||||||
|
! DEFAULTDRIVERS="imap nntp pop3 mbx unix maildir phile" \
|
||||||
|
SIGTYPE=psx CHECKPW=cyg LOGINPW=cyg CRXTYPE=std \
|
||||||
|
SPOOLDIR=/var \
|
||||||
|
ACTIVEFILE=/usr/local/news/lib/active \
|
||||||
|
***************
|
||||||
|
*** 922,927 ****
|
||||||
|
--- 922,928 ----
|
||||||
|
utf8aux.o: mail.h misc.h osdep.h utf8.h
|
||||||
|
json.o: mail.h misc.h osdep.h utf8.h json.h
|
||||||
|
http.o: mail.h misc.h osdep.h utf8.h http.h json.h
|
||||||
|
+ maildir.o: mail.h misc.h osdep.h maildir.h dummy.h
|
||||||
|
|
||||||
|
# OS-dependent
|
||||||
|
|
||||||
|
diff -rc alpine-2.22/imap/src/osdep/unix/os_cyg.h alpine-2.22.maildir/imap/src/osdep/unix/os_cyg.h
|
||||||
|
*** alpine-2.22/imap/src/osdep/unix/os_cyg.h 2020-01-19 01:32:22.664426475 -0700
|
||||||
|
--- alpine-2.22.maildir/imap/src/osdep/unix/os_cyg.h 2020-01-19 01:34:48.251509318 -0700
|
||||||
***************
|
***************
|
||||||
*** 47,52 ****
|
*** 47,52 ****
|
||||||
--- 47,53 ----
|
--- 47,53 ----
|
||||||
@ -3401,12 +3239,12 @@ diff -rc alpine-2.21/imap/src/osdep/unix/os_cyg.h alpine-2.21.maildir/imap/src/o
|
|||||||
#define geteuid Geteuid
|
#define geteuid Geteuid
|
||||||
uid_t Geteuid (void);
|
uid_t Geteuid (void);
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
diff -rc alpine-2.22/pith/conf.c alpine-2.22.maildir/pith/conf.c
|
||||||
*** alpine-2.21/pith/conf.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conf.c 2020-01-19 01:32:18.678505766 -0700
|
||||||
--- alpine-2.21.maildir/pith/conf.c Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/pith/conf.c 2020-01-19 01:34:48.253509302 -0700
|
||||||
***************
|
***************
|
||||||
*** 438,443 ****
|
*** 443,448 ****
|
||||||
--- 438,446 ----
|
--- 443,451 ----
|
||||||
|
|
||||||
CONF_TXT_T cf_text_newsrc_path[] = "Full path and name of NEWSRC file";
|
CONF_TXT_T cf_text_newsrc_path[] = "Full path and name of NEWSRC file";
|
||||||
|
|
||||||
@ -3417,8 +3255,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
/*----------------------------------------------------------------------
|
/*----------------------------------------------------------------------
|
||||||
These are the variables that control a number of pine functions. They
|
These are the variables that control a number of pine functions. They
|
||||||
***************
|
***************
|
||||||
*** 644,649 ****
|
*** 649,654 ****
|
||||||
--- 647,656 ----
|
--- 652,661 ----
|
||||||
NULL, cf_text_news_active},
|
NULL, cf_text_news_active},
|
||||||
{"news-spool-directory", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
{"news-spool-directory", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
||||||
NULL, cf_text_news_spooldir},
|
NULL, cf_text_news_spooldir},
|
||||||
@ -3430,8 +3268,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
NULL, cf_text_upload_cmd},
|
NULL, cf_text_upload_cmd},
|
||||||
{"upload-command-prefix", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
{"upload-command-prefix", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0,
|
||||||
***************
|
***************
|
||||||
*** 2301,2306 ****
|
*** 2322,2327 ****
|
||||||
--- 2308,2319 ----
|
--- 2329,2340 ----
|
||||||
mail_parameters(NULL, SET_NEWSSPOOL,
|
mail_parameters(NULL, SET_NEWSSPOOL,
|
||||||
(void *)VAR_NEWS_SPOOL_DIR);
|
(void *)VAR_NEWS_SPOOL_DIR);
|
||||||
|
|
||||||
@ -3445,8 +3283,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
set_current_val(&vars[V_DEFAULT_SAVE_FOLDER], TRUE, TRUE);
|
set_current_val(&vars[V_DEFAULT_SAVE_FOLDER], TRUE, TRUE);
|
||||||
if(!VAR_DEFAULT_SAVE_FOLDER || !VAR_DEFAULT_SAVE_FOLDER[0])
|
if(!VAR_DEFAULT_SAVE_FOLDER || !VAR_DEFAULT_SAVE_FOLDER[0])
|
||||||
***************
|
***************
|
||||||
*** 2930,2935 ****
|
*** 2954,2959 ****
|
||||||
--- 2943,2952 ----
|
--- 2967,2976 ----
|
||||||
F_SORT_DEFAULT_SAVE_ALPHA, h_config_sort_save_alpha, PREF_FLDR, 0},
|
F_SORT_DEFAULT_SAVE_ALPHA, h_config_sort_save_alpha, PREF_FLDR, 0},
|
||||||
{"vertical-folder-list", "Use Vertical Folder List",
|
{"vertical-folder-list", "Use Vertical Folder List",
|
||||||
F_VERTICAL_FOLDER_LIST, h_config_vertical_list, PREF_FLDR, 0},
|
F_VERTICAL_FOLDER_LIST, h_config_vertical_list, PREF_FLDR, 0},
|
||||||
@ -3458,7 +3296,7 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
/* Addr book */
|
/* Addr book */
|
||||||
{"combined-addrbook-display", "Combined Address Book Display",
|
{"combined-addrbook-display", "Combined Address Book Display",
|
||||||
***************
|
***************
|
||||||
*** 7036,7042 ****
|
*** 7068,7074 ****
|
||||||
int just_flip_value, EditWhich ew)
|
int just_flip_value, EditWhich ew)
|
||||||
{
|
{
|
||||||
char **vp, *p, **lval, ***alval;
|
char **vp, *p, **lval, ***alval;
|
||||||
@ -3466,7 +3304,7 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
char *err;
|
char *err;
|
||||||
long l;
|
long l;
|
||||||
|
|
||||||
--- 7053,7059 ----
|
--- 7085,7091 ----
|
||||||
int just_flip_value, EditWhich ew)
|
int just_flip_value, EditWhich ew)
|
||||||
{
|
{
|
||||||
char **vp, *p, **lval, ***alval;
|
char **vp, *p, **lval, ***alval;
|
||||||
@ -3475,8 +3313,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
long l;
|
long l;
|
||||||
|
|
||||||
***************
|
***************
|
||||||
*** 7089,7094 ****
|
*** 7121,7126 ****
|
||||||
--- 7106,7118 ----
|
--- 7138,7150 ----
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -3491,8 +3329,8 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
case F_DATES_TO_LOCAL :
|
case F_DATES_TO_LOCAL :
|
||||||
clear_index_cache(ps->mail_stream, 0);
|
clear_index_cache(ps->mail_stream, 0);
|
||||||
***************
|
***************
|
||||||
*** 7877,7882 ****
|
*** 7911,7916 ****
|
||||||
--- 7901,7910 ----
|
--- 7935,7944 ----
|
||||||
return(h_config_newmailwidth);
|
return(h_config_newmailwidth);
|
||||||
case V_NEWSRC_PATH :
|
case V_NEWSRC_PATH :
|
||||||
return(h_config_newsrc_path);
|
return(h_config_newsrc_path);
|
||||||
@ -3503,9 +3341,9 @@ diff -rc alpine-2.21/pith/conf.c alpine-2.21.maildir/pith/conf.c
|
|||||||
case V_BROWSER :
|
case V_BROWSER :
|
||||||
return(h_config_browser);
|
return(h_config_browser);
|
||||||
case V_HISTORY :
|
case V_HISTORY :
|
||||||
diff -rc alpine-2.21/pith/conf.h alpine-2.21.maildir/pith/conf.h
|
diff -rc alpine-2.22/pith/conf.h alpine-2.22.maildir/pith/conf.h
|
||||||
*** alpine-2.21/pith/conf.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conf.h 2020-01-19 01:32:19.489489496 -0700
|
||||||
--- alpine-2.21.maildir/pith/conf.h Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/pith/conf.h 2020-01-19 01:34:48.277509116 -0700
|
||||||
***************
|
***************
|
||||||
*** 256,261 ****
|
*** 256,261 ****
|
||||||
--- 256,265 ----
|
--- 256,265 ----
|
||||||
@ -3519,9 +3357,9 @@ diff -rc alpine-2.21/pith/conf.h alpine-2.21.maildir/pith/conf.h
|
|||||||
#define VAR_DISABLE_DRIVERS vars[V_DISABLE_DRIVERS].current_val.l
|
#define VAR_DISABLE_DRIVERS vars[V_DISABLE_DRIVERS].current_val.l
|
||||||
#define VAR_DISABLE_AUTHS vars[V_DISABLE_AUTHS].current_val.l
|
#define VAR_DISABLE_AUTHS vars[V_DISABLE_AUTHS].current_val.l
|
||||||
#define VAR_REMOTE_ABOOK_METADATA vars[V_REMOTE_ABOOK_METADATA].current_val.p
|
#define VAR_REMOTE_ABOOK_METADATA vars[V_REMOTE_ABOOK_METADATA].current_val.p
|
||||||
diff -rc alpine-2.21/pith/conftype.h alpine-2.21.maildir/pith/conftype.h
|
diff -rc alpine-2.22/pith/conftype.h alpine-2.22.maildir/pith/conftype.h
|
||||||
*** alpine-2.21/pith/conftype.h Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/conftype.h 2020-01-19 01:32:18.702505283 -0700
|
||||||
--- alpine-2.21.maildir/pith/conftype.h Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/pith/conftype.h 2020-01-19 01:34:48.278509108 -0700
|
||||||
***************
|
***************
|
||||||
*** 119,124 ****
|
*** 119,124 ****
|
||||||
--- 119,127 ----
|
--- 119,127 ----
|
||||||
@ -3535,8 +3373,8 @@ diff -rc alpine-2.21/pith/conftype.h alpine-2.21.maildir/pith/conftype.h
|
|||||||
, V_UPLOAD_CMD_PREFIX
|
, V_UPLOAD_CMD_PREFIX
|
||||||
, V_DOWNLOAD_CMD
|
, V_DOWNLOAD_CMD
|
||||||
***************
|
***************
|
||||||
*** 395,400 ****
|
*** 400,405 ****
|
||||||
--- 398,406 ----
|
--- 403,411 ----
|
||||||
F_PASS_C1_CONTROL_CHARS,
|
F_PASS_C1_CONTROL_CHARS,
|
||||||
F_SINGLE_FOLDER_LIST,
|
F_SINGLE_FOLDER_LIST,
|
||||||
F_VERTICAL_FOLDER_LIST,
|
F_VERTICAL_FOLDER_LIST,
|
||||||
@ -3546,9 +3384,9 @@ diff -rc alpine-2.21/pith/conftype.h alpine-2.21.maildir/pith/conftype.h
|
|||||||
F_TAB_CHK_RECENT,
|
F_TAB_CHK_RECENT,
|
||||||
F_AUTO_REPLY_TO,
|
F_AUTO_REPLY_TO,
|
||||||
F_VERBOSE_POST,
|
F_VERBOSE_POST,
|
||||||
diff -rc alpine-2.21/pith/init.c alpine-2.21.maildir/pith/init.c
|
diff -rc alpine-2.22/pith/init.c alpine-2.22.maildir/pith/init.c
|
||||||
*** alpine-2.21/pith/init.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/init.c 2020-01-19 01:32:18.764504035 -0700
|
||||||
--- alpine-2.21.maildir/pith/init.c Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/pith/init.c 2020-01-19 01:34:48.278509108 -0700
|
||||||
***************
|
***************
|
||||||
*** 408,413 ****
|
*** 408,413 ****
|
||||||
--- 408,416 ----
|
--- 408,416 ----
|
||||||
@ -3561,9 +3399,9 @@ diff -rc alpine-2.21/pith/init.c alpine-2.21.maildir/pith/init.c
|
|||||||
&& strcmp(filename, folder_base)){
|
&& strcmp(filename, folder_base)){
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
diff -rc alpine-2.21/pith/pattern.c alpine-2.21.maildir/pith/pattern.c
|
diff -rc alpine-2.22/pith/pattern.c alpine-2.22.maildir/pith/pattern.c
|
||||||
*** alpine-2.21/pith/pattern.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/pattern.c 2020-01-19 01:32:19.260494080 -0700
|
||||||
--- alpine-2.21.maildir/pith/pattern.c Sun Feb 5 16:15:20 2017
|
--- alpine-2.22.maildir/pith/pattern.c 2020-01-19 01:34:48.281509085 -0700
|
||||||
***************
|
***************
|
||||||
*** 49,55 ****
|
*** 49,55 ****
|
||||||
#include "../pith/icache.h"
|
#include "../pith/icache.h"
|
||||||
@ -3651,12 +3489,12 @@ diff -rc alpine-2.21/pith/pattern.c alpine-2.21.maildir/pith/pattern.c
|
|||||||
return(buf[0] != '\0');
|
return(buf[0] != '\0');
|
||||||
}
|
}
|
||||||
|
|
||||||
diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.maildir/pith/pine.hlp
|
diff -rc alpine-2.22/pith/pine.hlp alpine-2.22.maildir/pith/pine.hlp
|
||||||
*** alpine-2.21/pith/pine.hlp Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/pine.hlp 2020-01-19 01:32:19.035498584 -0700
|
||||||
--- alpine-2.21.maildir/pith/pine.hlp Sun Feb 5 16:15:21 2017
|
--- alpine-2.22.maildir/pith/pine.hlp 2020-01-19 01:34:48.306508890 -0700
|
||||||
***************
|
***************
|
||||||
*** 22364,22369 ****
|
*** 22897,22902 ****
|
||||||
--- 22364,22465 ----
|
--- 22897,22998 ----
|
||||||
<End of help on this topic>
|
<End of help on this topic>
|
||||||
</BODY>
|
</BODY>
|
||||||
</HTML>
|
</HTML>
|
||||||
@ -3760,8 +3598,8 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.maildir/pith/pine.hlp
|
|||||||
<HTML>
|
<HTML>
|
||||||
<HEAD>
|
<HEAD>
|
||||||
***************
|
***************
|
||||||
*** 30446,30451 ****
|
*** 31036,31041 ****
|
||||||
--- 30542,30590 ----
|
--- 31132,31180 ----
|
||||||
<P>
|
<P>
|
||||||
<End of help on this topic>
|
<End of help on this topic>
|
||||||
</BODY>
|
</BODY>
|
||||||
@ -3811,9 +3649,9 @@ diff -rc alpine-2.21/pith/pine.hlp alpine-2.21.maildir/pith/pine.hlp
|
|||||||
</HTML>
|
</HTML>
|
||||||
====== h_config_verbose_post =====
|
====== h_config_verbose_post =====
|
||||||
<HTML>
|
<HTML>
|
||||||
diff -rc alpine-2.21/pith/send.c alpine-2.21.maildir/pith/send.c
|
diff -rc alpine-2.22/pith/send.c alpine-2.22.maildir/pith/send.c
|
||||||
*** alpine-2.21/pith/send.c Sun Feb 5 16:02:36 2017
|
*** alpine-2.22/pith/send.c 2020-01-19 01:32:18.956500171 -0700
|
||||||
--- alpine-2.21.maildir/pith/send.c Sun Feb 5 16:15:21 2017
|
--- alpine-2.22.maildir/pith/send.c 2020-01-19 01:34:48.420508005 -0700
|
||||||
***************
|
***************
|
||||||
*** 47,52 ****
|
*** 47,52 ****
|
||||||
--- 47,55 ----
|
--- 47,55 ----
|
||||||
@ -3827,8 +3665,8 @@ diff -rc alpine-2.21/pith/send.c alpine-2.21.maildir/pith/send.c
|
|||||||
|
|
||||||
/* this is used in pine_send and pine_simple_send */
|
/* this is used in pine_send and pine_simple_send */
|
||||||
***************
|
***************
|
||||||
*** 257,262 ****
|
*** 250,255 ****
|
||||||
--- 260,272 ----
|
--- 253,265 ----
|
||||||
|
|
||||||
if(exists & FEX_ISFILE){
|
if(exists & FEX_ISFILE){
|
||||||
context_apply(tmp, p_cntxt, mbox, sizeof(tmp));
|
context_apply(tmp, p_cntxt, mbox, sizeof(tmp));
|
||||||
@ -3842,3 +3680,158 @@ diff -rc alpine-2.21/pith/send.c alpine-2.21.maildir/pith/send.c
|
|||||||
if(!(IS_REMOTE(tmp) || is_absolute_path(tmp))){
|
if(!(IS_REMOTE(tmp) || is_absolute_path(tmp))){
|
||||||
/*
|
/*
|
||||||
* The mbox is relative to the home directory.
|
* The mbox is relative to the home directory.
|
||||||
|
diff -rc alpine-2.22/README.maildir alpine-2.22.maildir/README.maildir
|
||||||
|
*** alpine-2.22/README.maildir 2020-01-19 01:34:48.441507842 -0700
|
||||||
|
--- alpine-2.22.maildir/README.maildir 2020-01-19 01:34:48.421507997 -0700
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,149 ----
|
||||||
|
+ ---------------------------------------
|
||||||
|
+
|
||||||
|
+ Maildir Driver for Alpine 2.0
|
||||||
|
+ By Eduardo Chappa
|
||||||
|
+ <alpine.chappa@gmx.com>
|
||||||
|
+
|
||||||
|
+ ---------------------------------------
|
||||||
|
+ 1. General Information About This Patch
|
||||||
|
+ ---------------------------------------
|
||||||
|
+
|
||||||
|
+ This patch adds support for the maildir format to Alpine. We take the
|
||||||
|
+ approach that this patch is one more driver among the number of formats
|
||||||
|
+ supported by Alpine (more generally c-client). This approach differs from
|
||||||
|
+ older versions of similar patches, in that once a maildir patch was
|
||||||
|
+ applied, it was assumed that all your folders would be created in the
|
||||||
|
+ maildir format.
|
||||||
|
+
|
||||||
|
+ This patch does not assume that maildir is a preferred format, instead
|
||||||
|
+ puts maildir in equal footing with other formats (mbox, mbx, mix, etc),
|
||||||
|
+ and so a maildir folder in the mail/ collection is treated in the same way
|
||||||
|
+ as any other folder in any other format. In other words, just by reading
|
||||||
|
+ the name of a folder, or opening it, or doing any operation with it, you
|
||||||
|
+ can not know in which format the folder is.
|
||||||
|
+
|
||||||
|
+ This implies that if you want to add a folder in the maildir format to the
|
||||||
|
+ mail/ collection, then you must add by pressing "A" in the folder list
|
||||||
|
+ collection and enter "#driver.md/mail/name_maildir_folder".
|
||||||
|
+
|
||||||
|
+ If you only want to use maildir, however, you can do so too. In this case,
|
||||||
|
+ you must create a maildir collection. In that collection, only maildir
|
||||||
|
+ folders will be listed. If there is any folder in any other format, that
|
||||||
|
+ folder will be ignored. In another words, any folder listed there is in
|
||||||
|
+ maildir format and can be accessed through that collection, conversely,
|
||||||
|
+ any folder not listed there is not in maildir format and there is no way
|
||||||
|
+ to access it using this collection.
|
||||||
|
+
|
||||||
|
+ In order to create a maildir collection, you could press M S L, and "A" to
|
||||||
|
+ add a collection. Fill in the required fields as follows:
|
||||||
|
+
|
||||||
|
+ Nickname : Anything
|
||||||
|
+ Server :
|
||||||
|
+ Path : #md/relative/path/to/maildir/collection/
|
||||||
|
+ View :
|
||||||
|
+
|
||||||
|
+ For example, if "path" is set to "#md/mail/", then Alpine will look for your
|
||||||
|
+ maildir folders that are in ~/mail/.
|
||||||
|
+
|
||||||
|
+ The code in this patch is mostly based in code for the unix driver plus
|
||||||
|
+ some combinations of the mh, mbx and nntp drivers for the c-client
|
||||||
|
+ library. Those drivers were designed by Mark Crispin, and bugs in this
|
||||||
|
+ code are not his bugs, but my own.
|
||||||
|
+
|
||||||
|
+ I got all the specification for this patch from
|
||||||
|
+ http://cr.yp.to/proto/maildir.html. If you know of a place with a better
|
||||||
|
+ specification for maildir format please let me know. The method this patch
|
||||||
|
+ uses to create a unique filename for a message is one of the "old
|
||||||
|
+ fashioned" methods. I realize that this is old fashioned, but it is
|
||||||
|
+ portable, and portability is the main reason why I decided to use an old
|
||||||
|
+ fashioned method (most methods are not portable. See the word
|
||||||
|
+ "Unfortunately" in that document).
|
||||||
|
+
|
||||||
|
+ --------------
|
||||||
|
+ 2. Other Goals
|
||||||
|
+ --------------
|
||||||
|
+
|
||||||
|
+ It is intended that this code will work well with any application
|
||||||
|
+ written using the c-client library. Of paramount importance is to make the
|
||||||
|
+ associated imap server work well when the server accesses a folder in
|
||||||
|
+ Maildir format. The program mailutil should also work flawlessly with this
|
||||||
|
+ implemetation of the driver.
|
||||||
|
+
|
||||||
|
+ It is intended that this driver be fast and stable. We intend not to
|
||||||
|
+ patch Alpine to make this driver do its work, unless such patching is for
|
||||||
|
+ fixing bugs in Alpine or to pass parameters to the driver.
|
||||||
|
+
|
||||||
|
+ ------------------------------------------------------------------------
|
||||||
|
+ 3. What are the known bugs of this implementation of the Maildir driver?
|
||||||
|
+ ------------------------------------------------------------------------
|
||||||
|
+
|
||||||
|
+ I don't know any at this time. There have been bugs before, though, but
|
||||||
|
+ I try to fix bugs as soon as they are reported.
|
||||||
|
+
|
||||||
|
+ ----------
|
||||||
|
+ 4. On UIDs
|
||||||
|
+ ----------
|
||||||
|
+
|
||||||
|
+ This patch keeps uids in the name of the file that contains the message,
|
||||||
|
+ by adding a ",u=" string to the file name to save the uid of a message. A
|
||||||
|
+ file is kept between sessions to save information on the last uid assigned
|
||||||
|
+ and its time of validity. Only one session with writing access can write
|
||||||
|
+ uids, all others must wait for the other session to assign them. The
|
||||||
|
+ session assigning uids creates a ".uidtemp" file which other sessions must
|
||||||
|
+ not disturb.
|
||||||
|
+
|
||||||
|
+ Uid support appeared in Alpine 1.00 (snapshot 925), and is experimental,
|
||||||
|
+ please report any problems.
|
||||||
|
+
|
||||||
|
+ ----------------------------------------------
|
||||||
|
+ 5. Configuring Alpine and Setting up a Maildir
|
||||||
|
+ ----------------------------------------------
|
||||||
|
+
|
||||||
|
+ Once this approach was chosen, it implied the following:
|
||||||
|
+
|
||||||
|
+ * This patch assumes that your INBOX is located at "$HOME/Maildir".
|
||||||
|
+ This is a directory which should have three subdirectories "cur",
|
||||||
|
+ "tmp" and "new". Mail is delivered to 'new' and read from 'cur'. I
|
||||||
|
+ have added a configuration option "maildir-location" which can be
|
||||||
|
+ used to tell Alpine where your Maildir inbox is, in case your system
|
||||||
|
+ does not use the above directory (e.g. your system may use
|
||||||
|
+ "~/.maildir"). In this case define that variable to be the name of
|
||||||
|
+ the directory where your e-mail is being delivered (e.g.
|
||||||
|
+ ".maildir").
|
||||||
|
+
|
||||||
|
+ * If you want to use the above configuration as your inbox, you must
|
||||||
|
+ define your inbox-path as "#md/inbox" (no quotes). You can define
|
||||||
|
+ the inbox-path like above even if you have changed the
|
||||||
|
+ maildir-location variable. That's the whole point of that variable.
|
||||||
|
+
|
||||||
|
+ -------------------------------------------
|
||||||
|
+ 6. What about Courier/Dovecot file systems?
|
||||||
|
+ -------------------------------------------
|
||||||
|
+
|
||||||
|
+ In a courier file system all folders are subfolders of a root folder
|
||||||
|
+ called INBOX. Normally INBOX is located at ~/Maildir and subfolders are
|
||||||
|
+ "dot" directories in ~/Maildir. For example ~/Maildir/.Trash is a
|
||||||
|
+ subfolder of INBOX and is accessed with the nickname "INBOX.Trash".
|
||||||
|
+
|
||||||
|
+ You can not access folders in this way unless you preceed them with the
|
||||||
|
+ string "#mc/". The purpose of the string "#mc/" is to warn Alpine that a
|
||||||
|
+ collection in the Courier format is going to be accessed. Therefore, you
|
||||||
|
+ can SELECT a folder like "#mc/INBOX.Trash", but not "INBOX.Trash"
|
||||||
|
+
|
||||||
|
+ You can access a collection through a server, but if you want to access a
|
||||||
|
+ collection of folders created using the Courier server, you MUST edit your
|
||||||
|
+ ".pinerc" file and enter the definition of the collection as follows:
|
||||||
|
+
|
||||||
|
+ folder-collections="Anything you want" #mc/INBOX.[]
|
||||||
|
+
|
||||||
|
+ You can replace the string "#mc/INBOX." by something different, for example
|
||||||
|
+ "#mc/Courier/." will make Alpine search for your collection in ~/Courier.
|
||||||
|
+
|
||||||
|
+ You can not add this setting directly into Alpine because Alpine fails to
|
||||||
|
+ accept this value from its input, but it takes it correctly when it is
|
||||||
|
+ added through the ".pinerc" file.
|
||||||
|
+
|
||||||
|
+ You can access your inbox as "#mc/INBOX" or "#md/INBOX". Both definitions
|
||||||
|
+ point to the same place.
|
||||||
|
+
|
||||||
|
+ Last Updated May 28, 2011
|
||||||
|
11
chappa-maildir.txt
Normal file
11
chappa-maildir.txt
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/maildir.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
I have added support for the Courier/Cyrus/Dovecot file system, read the configuration instructions.
|
||||||
|
|
||||||
|
This patch assumes that your INBOX is located at "$HOME/Maildir". This is a
|
||||||
|
directory which should have three subdirectories "cur", "tmp" and "new". If you
|
||||||
|
read maildir from another directory in your $HOME directory (e.g. .maildir),
|
||||||
|
then set the variable maildir-location to reflect this fact (e.g.
|
||||||
|
maildir-location=.maildir). This is the best way to change the path of the
|
||||||
|
inbox. Set Inbox Path = #md/INBOX.
|
12087
chappa-rules.patch
12087
chappa-rules.patch
File diff suppressed because it is too large
Load Diff
16
chappa-rules.txt
Normal file
16
chappa-rules.txt
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
From: http://alpine.x10host.com/alpine/info/rules.html
|
||||||
|
Upstream: constitutes upstream source, delivered in non-tarball form
|
||||||
|
|
||||||
|
This patch allows you to create specific hooks, so that operations that would normally be global in nature can be customized on a per message/folder/person
|
||||||
|
basis.
|
||||||
|
|
||||||
|
[...]
|
||||||
|
|
||||||
|
[For example:]
|
||||||
|
|
||||||
|
* Compose Rules
|
||||||
|
This option can be used to generate signatures in cases when setting up a
|
||||||
|
role does not work. Examples are
|
||||||
|
|
||||||
|
_TO_ >> {Peter Flinstones} => _SIGNATURE_{~/.petersignature}
|
||||||
|
_COLLECTION_ >> {Mail} => _SIGNATURE_{~/ll}
|
@ -1,26 +1,50 @@
|
|||||||
--- alpine-0.999/pico/osdep/shell.c 2007/08/02 12:09:33 1.1
|
---
|
||||||
+++ alpine-0.999/pico/osdep/shell.c 2007/08/02 12:10:03
|
imap/src/c-client/mail.h | 8 ++++++++
|
||||||
@@ -90,7 +90,6 @@ bktoshell(void) /* suspend MicroEMACS a
|
imap/src/osdep/unix/os_slx.h | 8 ++++++++
|
||||||
|
include/system.h | 8 ++++++++
|
||||||
|
pico/osdep/shell.c | 3 +--
|
||||||
|
4 files changed, 25 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: alpine-2.22/imap/src/c-client/mail.h
|
||||||
|
===================================================================
|
||||||
|
--- alpine-2.22.orig/imap/src/c-client/mail.h
|
||||||
|
+++ alpine-2.22/imap/src/c-client/mail.h
|
||||||
|
@@ -1914,6 +1914,14 @@ long INWAIT (long seconds);
|
||||||
|
int PSOUT (char *s);
|
||||||
|
int PSOUTR (SIZEDTEXT *s);
|
||||||
|
int PFLUSH (void);
|
||||||
|
+/*
|
||||||
|
+ * Shuts up spurious
|
||||||
|
+ * "warning: suggest parentheses around assignment used as truth value"
|
||||||
|
+ * which occurs in gcc4.2.1 and older when an assigment is used in a
|
||||||
|
+ * if, which works just fine and is not interpreted as always true:
|
||||||
|
+ */
|
||||||
|
+#define if(x) if((x))
|
||||||
|
+#define while(x) while((x))
|
||||||
|
|
||||||
if(gmode&MDSPWN){
|
/* XOAUTH Client-Side Support */
|
||||||
char *shell;
|
|
||||||
- int dummy;
|
|
||||||
|
|
||||||
vttidy();
|
Index: alpine-2.22/imap/src/osdep/unix/os_slx.h
|
||||||
movecursor(0, 0);
|
===================================================================
|
||||||
@@ -98,7 +97,7 @@ bktoshell(void) /* suspend MicroEMACS a
|
--- alpine-2.22.orig/imap/src/osdep/unix/os_slx.h
|
||||||
printf("\n\n\nUse \"exit\" to return to Pi%s\n",
|
+++ alpine-2.22/imap/src/osdep/unix/os_slx.h
|
||||||
(gmode & MDBRONLY) ? "lot" : "co");
|
@@ -69,3 +69,11 @@ int portable_utime (char *file,time_t ti
|
||||||
system((shell = (char *)getenv("SHELL")) ? shell : "/bin/csh");
|
#include "ftl.h"
|
||||||
- rtfrmshell(dummy); /* fixup tty */
|
#include "nl.h"
|
||||||
+ rtfrmshell(0); /* fixup tty */
|
#include "tcp.h"
|
||||||
}
|
+/*
|
||||||
else {
|
+ * Shuts up spurious
|
||||||
movecursor(term.t_nrow-1, 0);
|
+ * "warning: suggest parentheses around assignment used as truth value"
|
||||||
// Those may be obsolete now:
|
+ * which occurs ing gcc4.2.1 and older when an assigment is used in a
|
||||||
--- alpine-0.999/include/system.h 2007/08/03 13:16:15 1.1
|
+ * if, which works just fine and is not iterpreted as always true:
|
||||||
+++ alpine-0.999/include/system.h 2007/08/03 13:19:03
|
+ */
|
||||||
@@ -381,4 +381,12 @@
|
+#define if(x) if((x))
|
||||||
|
+#define while(x) while((x))
|
||||||
|
Index: alpine-2.22/include/system.h
|
||||||
|
===================================================================
|
||||||
|
--- alpine-2.22.orig/include/system.h
|
||||||
|
+++ alpine-2.22/include/system.h
|
||||||
|
@@ -389,4 +389,12 @@ typedef int gid_t;
|
||||||
# define LOCAL_PASSWD_CACHE
|
# define LOCAL_PASSWD_CACHE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -33,31 +57,24 @@
|
|||||||
+#define if(x) if((x))
|
+#define if(x) if((x))
|
||||||
+#define while(x) while((x))
|
+#define while(x) while((x))
|
||||||
#endif /* _SYSTEM_INCLUDED */
|
#endif /* _SYSTEM_INCLUDED */
|
||||||
--- alpine-0.999/imap/src/c-client/mail.h 2007/08/03 13:42:06 1.1
|
Index: alpine-2.22/pico/osdep/shell.c
|
||||||
+++ alpine-0.999/imap/src/c-client/mail.h 2007/08/03 13:42:57
|
===================================================================
|
||||||
@@ -1829,3 +1829,11 @@
|
--- alpine-2.22.orig/pico/osdep/shell.c
|
||||||
int PSOUT (char *s);
|
+++ alpine-2.22/pico/osdep/shell.c
|
||||||
int PSOUTR (SIZEDTEXT *s);
|
@@ -98,7 +98,6 @@ bktoshell(int f, int n)
|
||||||
int PFLUSH (void);
|
|
||||||
+/*
|
if(gmode&MDSPWN){
|
||||||
+ * Shuts up spurious
|
char *shell;
|
||||||
+ * "warning: suggest parentheses around assignment used as truth value"
|
- int dummy;
|
||||||
+ * which occurs ing gcc4.2.1 and older when an assigment is used in a
|
|
||||||
+ * if, which works just fine and is not iterpreted as always true:
|
vttidy();
|
||||||
+ */
|
movecursor(0, 0);
|
||||||
+#define if(x) if((x))
|
@@ -106,7 +105,7 @@ bktoshell(int f, int n)
|
||||||
+#define while(x) while((x))
|
printf("\n\n\nUse \"exit\" to return to Pi%s\n",
|
||||||
--- alpine-0.999/imap/src/osdep/unix/os_slx.h 2007/08/03 13:54:41 1.1
|
(gmode & MDBRONLY) ? "lot" : "co");
|
||||||
+++ alpine-0.999/imap/src/osdep/unix/os_slx.h 2007/08/03 13:55:38
|
system((shell = (char *)getenv("SHELL")) ? shell : "/bin/csh");
|
||||||
@@ -65,3 +65,11 @@
|
- rtfrmshell(dummy); /* fixup tty */
|
||||||
#include "ftl.h"
|
+ rtfrmshell(0); /* fixup tty */
|
||||||
#include "nl.h"
|
}
|
||||||
#include "tcp.h"
|
else {
|
||||||
+/*
|
movecursor(term.t_nrow-1, 0);
|
||||||
+ * Shuts up spurious
|
|
||||||
+ * "warning: suggest parentheses around assignment used as truth value"
|
|
||||||
+ * which occurs ing gcc4.2.1 and older when an assigment is used in a
|
|
||||||
+ * if, which works just fine and is not iterpreted as always true:
|
|
||||||
+ */
|
|
||||||
+#define if(x) if((x))
|
|
||||||
+#define while(x) while((x))
|
|
||||||
|
Loading…
Reference in New Issue
Block a user