/offlineimap/head: changeset 346
Initial phase of conversion to SGML documentation complete.
This commit is contained in:
parent
6658c0bd65
commit
399f7d9de9
@ -15,8 +15,57 @@ Copyright (C) 2002, 2003 John Goerzen
|
|||||||
along with this program; if not, write to the Free Software
|
along with this program; if not, write to the Free Software
|
||||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
|
ONLY imaplib.py is Copyright (c) 2001 Python Software Foundation;
|
||||||
|
All Rights Reserved
|
||||||
|
|
||||||
imaplib.py comes from Python dev tree and is licensed inder the
|
imaplib.py comes from Python dev tree and is licensed inder the
|
||||||
GPL-compatible PSF license as follows:
|
GPL-compatible PSF license as follows:
|
||||||
|
|
||||||
ONLY imaplib.py is Copyright (c) 2001 Python Software Foundation;
|
|
||||||
All Rights Reserved
|
PSF LICENSE AGREEMENT FOR PYTHON 2.2
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
1. This LICENSE AGREEMENT is between the Python Software Foundation
|
||||||
|
("PSF"), and the Individual or Organization ("Licensee") accessing and
|
||||||
|
otherwise using Python 2.2 software in source or binary form and its
|
||||||
|
associated documentation.
|
||||||
|
|
||||||
|
2. Subject to the terms and conditions of this License Agreement, PSF
|
||||||
|
hereby grants Licensee a nonexclusive, royalty-free, world-wide
|
||||||
|
license to reproduce, analyze, test, perform and/or display publicly,
|
||||||
|
prepare derivative works, distribute, and otherwise use Python 2.2
|
||||||
|
alone or in any derivative version, provided, however, that PSF's
|
||||||
|
License Agreement and PSF's notice of copyright, i.e., "Copyright (c)
|
||||||
|
2001 Python Software Foundation; All Rights Reserved" are retained in
|
||||||
|
Python 2.2 alone or in any derivative version prepared by Licensee.
|
||||||
|
|
||||||
|
3. In the event Licensee prepares a derivative work that is based on
|
||||||
|
or incorporates Python 2.2 or any part thereof, and wants to make
|
||||||
|
the derivative work available to others as provided herein, then
|
||||||
|
Licensee hereby agrees to include in any such work a brief summary of
|
||||||
|
the changes made to Python 2.2.
|
||||||
|
|
||||||
|
4. PSF is making Python 2.2 available to Licensee on an "AS IS"
|
||||||
|
basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
||||||
|
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
|
||||||
|
DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
|
||||||
|
FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 2.2 WILL NOT
|
||||||
|
INFRINGE ANY THIRD PARTY RIGHTS.
|
||||||
|
|
||||||
|
5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
|
||||||
|
2.2 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
|
||||||
|
A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 2.2,
|
||||||
|
OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
|
||||||
|
|
||||||
|
6. This License Agreement will automatically terminate upon a material
|
||||||
|
breach of its terms and conditions.
|
||||||
|
|
||||||
|
7. Nothing in this License Agreement shall be deemed to create any
|
||||||
|
relationship of agency, partnership, or joint venture between PSF and
|
||||||
|
Licensee. This License Agreement does not grant permission to use PSF
|
||||||
|
trademarks or trade name in a trademark sense to endorse or promote
|
||||||
|
products or services of Licensee, or any third party.
|
||||||
|
|
||||||
|
8. By copying, installing or otherwise using Python 2.2, Licensee
|
||||||
|
agrees to be bound by the terms and conditions of this License
|
||||||
|
Agreement.
|
||||||
|
@ -26,6 +26,8 @@ clean:
|
|||||||
-rm -f `find . -name "*.class"`
|
-rm -f `find . -name "*.class"`
|
||||||
-rm -f `find . -name "*.bak"`
|
-rm -f `find . -name "*.bak"`
|
||||||
-rm -f `find . -name ".cache*"`
|
-rm -f `find . -name ".cache*"`
|
||||||
|
-rm manpage.links
|
||||||
|
-rm manpage.refs
|
||||||
-find . -name auth -exec rm -vf {}/password {}/username \;
|
-find . -name auth -exec rm -vf {}/password {}/username \;
|
||||||
-svn cleanup
|
-svn cleanup
|
||||||
|
|
||||||
@ -33,7 +35,12 @@ changelog:
|
|||||||
svn log -v > ChangeLog
|
svn log -v > ChangeLog
|
||||||
|
|
||||||
docs:
|
docs:
|
||||||
|
docbook2man offlineimap.sgml
|
||||||
|
docbook2man offlineimap.sgml
|
||||||
|
docbook2html -u offlineimap.sgml
|
||||||
|
mv offlineimap.html manual.html
|
||||||
man -t -l offlineimap.1 > manual.ps
|
man -t -l offlineimap.1 > manual.ps
|
||||||
ps2pdf manual.ps
|
ps2pdf manual.ps
|
||||||
groff -Tascii -man offlineimap.1 | sed $$'s/.\b//g' > manual.txt
|
groff -Tascii -man offlineimap.1 | sed $$'s/.\b//g' > manual.txt
|
||||||
groff -Thtml -man offlineimap.1 > manual.html
|
-rm manpage.links manpage.refs
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
|||||||
OFFLINEIMAP(1) OfflineIMAP manual OFFLINEIMAP(1)
|
OFFLINEIMAP(1) OfflineIMAP Manual OFFLINEIMAP(1)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -7,10 +7,12 @@ NAME
|
|||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
offlineimap [ -1 ] [ -P profiledir ] [ -a accountlist ] [ -c configfile
|
offlineimap [ -1 ] [ -P profiledir ] [ -a accountlist ] [ -c configfile
|
||||||
] [ -d debugtype[,debugtype...] ] [ -o ] [ -u interface ]
|
] [ -d debugtype[,...] ] [ -o ] [ -u interface ]
|
||||||
|
|
||||||
|
|
||||||
offlineimap -h | --help
|
offlineimap -h | --help
|
||||||
|
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
OfflineIMAP is a tool to simplify your e-mail reading. With
|
OfflineIMAP is a tool to simplify your e-mail reading. With
|
||||||
OfflineIMAP, you can read the same mailbox from multiple computers.
|
OfflineIMAP, you can read the same mailbox from multiple computers.
|
||||||
@ -42,7 +44,9 @@ DESCRIPTION
|
|||||||
at all costs. Because of the design of this algorithm, even program-
|
at all costs. Because of the design of this algorithm, even program-
|
||||||
ming errors should not result in loss of mail. I am so confident in
|
ming errors should not result in loss of mail. I am so confident in
|
||||||
the algorithm that I use my own personal and work accounts for testing
|
the algorithm that I use my own personal and work accounts for testing
|
||||||
of OfflineIMAP pre-release, development, and beta releases.
|
of OfflineIMAP pre-release, development, and beta releases. Of course,
|
||||||
|
legally speaking, OfflineIMAP comes with no warranty, so I am not
|
||||||
|
responsible if this turns out to be wrong.
|
||||||
|
|
||||||
METHOD OF OPERATION
|
METHOD OF OPERATION
|
||||||
OfflineIMAP operates by maintaining a hierarchy of mail folders in
|
OfflineIMAP operates by maintaining a hierarchy of mail folders in
|
||||||
@ -52,73 +56,111 @@ DESCRIPTION
|
|||||||
own computer and bi-directionally synchronize them, copying, marking,
|
own computer and bi-directionally synchronize them, copying, marking,
|
||||||
and deleting messages as necessary.
|
and deleting messages as necessary.
|
||||||
|
|
||||||
|
QUICK START
|
||||||
|
If you have already installed OfflineIMAP system-wide, or your system
|
||||||
|
adminstrator has done that for you, your task for setting up
|
||||||
|
OfflineIMAP for the first time is quite simple. You just need to set
|
||||||
|
up your configuration file, make your folder directory, and run it!
|
||||||
|
|
||||||
|
You can quickly set up your configuration file. The distribution
|
||||||
|
includes a file offlineimap.conf.minimal (Debian users may find this at
|
||||||
|
/usr/share/doc/offlineimap/examples/offlineimap.conf.minimal) that is a
|
||||||
|
basic example of setting of OfflineIMAP. You can simply copy this file
|
||||||
|
into your home directory and name it .offlineimaprc (note the leading
|
||||||
|
period). A command such as cp offlineimap.conf.minimal
|
||||||
|
~/.offlineimaprc will do it. Or, if you prefer, you can just copy this
|
||||||
|
text to ~/.offlineimaprc:
|
||||||
|
|
||||||
|
[general]
|
||||||
|
accounts = Test
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
localfolders = ~/Test
|
||||||
|
remotehost = examplehost
|
||||||
|
remoteuser = jgoerzen
|
||||||
|
|
||||||
|
Now, edit the ~/.offlineimaprc file with your favorite editor. All you
|
||||||
|
have to do is specify a directory for your folders to be in (on the
|
||||||
|
localfolders line), the host name of your IMAP server (on the remote-
|
||||||
|
host line), and your login name on the remote (on the remoteuser line).
|
||||||
|
That's it!
|
||||||
|
|
||||||
|
To run OfflineIMAP, you just have to say offlineimap -- it will fire
|
||||||
|
up, ask you for a login password if necessary, synchronize your fold-
|
||||||
|
ers, and exit. See? You can just throw away the rest of this finely-
|
||||||
|
crafted, perfectly-honed manual! Of course, if you want to see how you
|
||||||
|
can make OfflineIMAP FIVE TIMES FASTER FOR JUST $19.95 (err, well, $0),
|
||||||
|
you have to read on!
|
||||||
|
|
||||||
INSTALLATION
|
INSTALLATION
|
||||||
If you are reading this document via the "man" command, it is likely
|
If you are reading this document via the "man" command, it is likely
|
||||||
that you have no installation tasks to perform; your system administra-
|
that you have no installation tasks to perform; your system administra-
|
||||||
tor has already installed it. If you need to install it yourself, you
|
tor has already installed it. If you need to install it yourself, you
|
||||||
have three options: a system-wide installation with Debian, system-wide
|
have three options: a system-wide installation with Debian, system-wide
|
||||||
installation with other systems, and a single-user installation. You
|
installation with other systems, and a single-user installation. You
|
||||||
can download the latest version of OfflineIMAP from
|
can download the latest version of OfflineIMAP from the OfflineIMAP
|
||||||
http://quux.org/devel/offlineimap/.
|
website <URL:http://quux.org/devel/offlineimap/>.
|
||||||
|
|
||||||
PREREQUISITES
|
PREREQUISITES
|
||||||
In order to use OfflineIMAP, you need to have these conditions satis-
|
In order to use OfflineIMAP, you need to have these conditions satis-
|
||||||
fied:
|
fied:
|
||||||
|
|
||||||
o Your mail server must support IMAP. Most Internet Service
|
o Your mail server must support IMAP. Most Internet Service Providers
|
||||||
Providers and corporate networks do, and most operating systems
|
and corporate networks do, and most operating systems have an IMAP
|
||||||
have an IMAP implementation readily available.
|
implementation readily available.
|
||||||
|
|
||||||
o You must have Python version 2.2.1 or above installed. If you
|
o You must have Python version 2.2.1 or above installed. If you are
|
||||||
are running on Debian GNU/Linux, this requirement will automati-
|
running on Debian GNU/Linux, this requirement will automatically be
|
||||||
cally be taken care of for you. If you do not have Python
|
taken care of for you. If you do not have Python already, check with
|
||||||
already, check with your system administrator or operating sys-
|
your system administrator or operating system vendor; or, download it
|
||||||
tem vendor; or, download it from http://www.python.org/. If you
|
from the Python website <URL:http://www.python.org/>. If you intend
|
||||||
intend to use the Tk interface, you must have Tkinter (python-
|
to use the Tk interface, you must have Tkinter (python-tk) installed.
|
||||||
tk) installed. If you intend to use the SSL interface, your
|
If you intend to use the SSL interface, your Python must have been
|
||||||
Python must have been built with SSL support.
|
built with SSL support.
|
||||||
|
|
||||||
o Have a mail reader that supports the Maildir mailbox format.
|
o Have a mail reader that supports the Maildir mailbox format. Most
|
||||||
Most modern mail readers have this support built-in, so you can
|
modern mail readers have this support built-in, so you can choose
|
||||||
choose from a wide variety of mail servers. This format is also
|
from a wide variety of mail servers. This format is also known as
|
||||||
known as the "qmail" format, so any mail reader compatible with
|
the "qmail" format, so any mail reader compatible with it will work
|
||||||
it will work with OfflineIMAP.
|
with OfflineIMAP.
|
||||||
|
|
||||||
DEBIAN SYSTEM-WIDE INSTALLATION
|
SYSTEM-WIDE INSTALLATION, DEBIAN
|
||||||
If you are tracking Debian unstable, you may install OfflineIMAP by
|
If you are tracking Debian unstable, you may install OfflineIMAP by
|
||||||
simply running the following command as root:
|
simply running the following command as root:
|
||||||
|
|
||||||
apt-get install offlineimap
|
apt-get install offlineimap
|
||||||
|
|
||||||
If you are not tracking Debian unstable, download the Debian .deb pack-
|
If you are not tracking Debian unstable, download the Debian .deb pack-
|
||||||
age from the OfflineIMAP website and then run dpkg -i to install the
|
age from the OfflineIMAP website
|
||||||
downloaded package. Then, go to CONFIGURATION below. You will type
|
<URL:http://quux.org/devel/offlineimap/> and then run dpkg -i to
|
||||||
offlineimap to invoke the program.
|
install the downloaded package. Then, skip to [XRef to CONFIGURATION]
|
||||||
|
below. You will type offlineimap to invoke the program.
|
||||||
|
|
||||||
OTHER SYSTEM-WIDE INSTALLATION
|
SYSTEM-WIDE INSTALLATION, OTHER
|
||||||
Download the tar.gz version of the package from the website. Then run
|
Download the tar.gz version of the package from the website
|
||||||
these commands, making sure that you are the "root" user first:
|
<URL:http://quux.org/devel/offlineimap/>. Then run these commands,
|
||||||
|
making sure that you are the "root" user first:
|
||||||
|
|
||||||
tar -zxvf offlineimap_x.y.z.tar.gz
|
tar -zxvf offlineimap_x.y.z.tar.gz
|
||||||
cd offlineimap-x.y.z
|
cd offlineimap-x.y.z
|
||||||
python2.2 setup.py install
|
python2.2 setup.py install
|
||||||
|
|
||||||
Some systems will need to use python instead of python2.2. Next, pro-
|
On some systems, you will need to use python instead of python2.2.
|
||||||
ceed to configuration. You will type offlineimap to invoke the pro-
|
Next, proceed to [XRef to CONFIGURATION] below. You will type
|
||||||
gram.
|
offlineimap to invoke the program.
|
||||||
|
|
||||||
SINGLE-ACCOUNT INSTALLATION
|
SINGLE-ACCOUNT INSTALLATION
|
||||||
Download the tar.gz version of the package from the website. Then run
|
Download the tar.gz version of the package from the website
|
||||||
these commands:
|
<URL:http://quux.org/devel/offlineimap/>. Then run these commands:
|
||||||
|
|
||||||
tar -zxvf offlineimap-x.y.z.tar.gz
|
tar -zxvf offlineimap_x.y.z.tar.gz
|
||||||
cd offlineimap-x.y.z
|
cd offlineimap-x.y.z
|
||||||
|
|
||||||
When you want to run OfflineIMAP, you will issue the cd command as
|
When you want to run OfflineIMAP, you will issue the cd command as
|
||||||
above and then type ./offlineimap.py; there is no installation step
|
above and then type ./offlineimap.py; there is no installation step
|
||||||
necessary.
|
necessary.
|
||||||
|
|
||||||
CONFIGURATION
|
CONFIGRUATION
|
||||||
OfflineIMAP is regulated by a configuration file that is normally
|
OfflineIMAP is regulated by a configuration file that is normally
|
||||||
stored in ~/.offlineimaprc. OfflineIMAP ships with a file named
|
stored in ~/.offlineimaprc. OfflineIMAP ships with a file named
|
||||||
offlineimap.conf that you should copy to that location and then edit.
|
offlineimap.conf that you should copy to that location and then edit.
|
||||||
@ -133,11 +175,11 @@ CONFIGURATION
|
|||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
Most configuration is done via the configuration file. Nevertheless,
|
Most configuration is done via the configuration file. Nevertheless,
|
||||||
there are a few options that you may set for OfflineIMAP.
|
there are a few command-line options that you may set for OfflineIMAP.
|
||||||
|
|
||||||
-1 Disable all multithreading operations and use solely a single-
|
-1 Disable most multithreading operations and use solely a single-
|
||||||
thread sync. This effectively sets the maxsyncaccounts and all
|
connection sync. This effectively sets the maxsyncaccounts and
|
||||||
maxconnections configuration file variables to 1.
|
all maxconnections configuration file variables to 1.
|
||||||
|
|
||||||
-P profiledir
|
-P profiledir
|
||||||
Sets OfflineIMAP into profile mode. The program will create
|
Sets OfflineIMAP into profile mode. The program will create
|
||||||
@ -149,79 +191,71 @@ OPTIONS
|
|||||||
mance, may reduce reliability, and can generate huge amounts of
|
mance, may reduce reliability, and can generate huge amounts of
|
||||||
data. You must use the -1 option when you use -P.
|
data. You must use the -1 option when you use -P.
|
||||||
|
|
||||||
|
|
||||||
-a accountlist
|
-a accountlist
|
||||||
Overrides the accounts section in the config file. Lets you
|
Overrides the accounts option in the general section of the con-
|
||||||
specify a particular account or set of accounts to sync without
|
figuration file. You might use this to exclude certain
|
||||||
having to edit the config file. You might use this to exclude
|
accounts, or to sync some accounts that you normally prefer not
|
||||||
certain accounts, or to sync some accounts that you normally
|
to. Separate the accounts by commas, and use no embedded
|
||||||
prefer not to.
|
spaces.
|
||||||
|
|
||||||
-c configfile
|
-c configfile
|
||||||
Specifies a configuration file to use in lieu of the default,
|
Specifies a configuration file to use in lieu of the default,
|
||||||
~/.offlineimaprc.
|
~/.offlineimaprc.
|
||||||
|
|
||||||
-d debugtype[,debugtype...]
|
-d debugtype[,...]
|
||||||
Enables debugging for OfflineIMAP. This is useful if you are
|
Enables debugging for OfflineIMAP. This is useful if you are
|
||||||
trying to track down a malfunction or figure out what is going
|
trying to track down a malfunction or figure out what is going
|
||||||
on under the hood. I suggest that you use this with -1 in order
|
on under the hood. I suggest that you use this with -1 to make
|
||||||
to make the results more sensible.
|
the results more sensible.
|
||||||
|
|
||||||
-d now requires one or more debugtypes, separated by commas.
|
-d requires one or more debugtypes, separated by commas. These
|
||||||
These define what exactly will be debugged, and so far include
|
define what exactly will be debugged, and include two options:
|
||||||
two options: imap and maildir. The imap option will enable IMAP
|
imap and maildir. The imap option will enable IMAP protocol
|
||||||
protocol stream and parsing debugging. Note that the output may
|
stream and parsing debugging. Note that the output may contain
|
||||||
contain passwords, so take care to remove that from the debug-
|
passwords, so take care to remove that from the debugging output
|
||||||
ging output before sending it to anyone else. The maildir
|
before sending it to anyone else. The maildir option will
|
||||||
option will enable debugging for certain Maildir operations.
|
enable debugging for certain Maildir operations.
|
||||||
|
|
||||||
-o Run only once, ignoring any autorefresh setting in the config
|
-o Run only once, ignoring all autorefresh settings in the configu-
|
||||||
file.
|
ration file.
|
||||||
|
|
||||||
-h, --help
|
-h
|
||||||
Show summary of options.
|
|
||||||
|
--help Show summary of options.
|
||||||
|
|
||||||
-u interface
|
-u interface
|
||||||
Specifies an alternative user interface module to use. This
|
Specifies an alternative user interface module to use. This
|
||||||
overrides the default specified in the configuration file. The
|
overrides the defailt specified in the configuration file. The
|
||||||
UI specified with -u will be forced to be used, even if its
|
pre-defined options are listed in the User Interfaces section.
|
||||||
isuable() method states that it cannot be. Use this option with
|
|
||||||
care. The pre-defined options are listed in the USER INTERFACES
|
|
||||||
section.
|
|
||||||
|
|
||||||
USER INTERFACES
|
USER INTERFACES
|
||||||
OfflineIMAP has a pluggable user interface system that lets you choose
|
OfflineIMAP has a pluggable user interface system that lets you choose
|
||||||
how the program communicates information to you. There are two graphi-
|
how the program communicates information to you. There are two graphi-
|
||||||
cal interfaces, two terminal interfaces, and two noninteractive inter-
|
cal interfaces, two terminal interfaces, and two noninteractive inter-
|
||||||
faces suitable for scripting or logging purposes. The ui option in the
|
faces suitable for scripting or logging purposes. The ui option in the
|
||||||
configuration file specifies the user interface preferences. The -u
|
configuration file specifies user interface preferences. The -u com-
|
||||||
command-line option can override the configuration file. The available
|
mand-line option can override the configuration file setting. The
|
||||||
values for the configuration file or command-line are describef in this
|
available values for the configuration file or command-line are
|
||||||
section.
|
described in this section.
|
||||||
|
|
||||||
|
TK.BLINKENLIGHTS
|
||||||
|
Tk.Blinkenlights is an interface designed to be sleek, fun to watch,
|
||||||
|
and informative of the overall picture of what OfflineIMAP is doing. I
|
||||||
|
consider it to be the best general-purpose interface in OfflineIMAP.
|
||||||
|
|
||||||
Tk.Blinkenlights or Curses.Blinkenlights
|
|
||||||
This is an interface designed to be sleek, fun to watch, and informa-
|
|
||||||
tive of the overall picture of what OfflineIMAP is doing. I consider
|
|
||||||
it to be the best general-purpose interface in OfflineIMAP.
|
|
||||||
Tk.Blinkenlights contains, by default, a small window with a row of
|
Tk.Blinkenlights contains, by default, a small window with a row of
|
||||||
LEDs and a row of command buttons. The total size of the window is
|
LEDs, a small log, and a row of command buttons. The total size of the
|
||||||
very small, so it uses little desktop space, yet it is quite func-
|
window is very small, so it uses little desktop space, yet it is quite
|
||||||
tional. There is also an optional, toggable, log that shows more
|
functional. The optional, toggleable, log shows more detail about what
|
||||||
detail about what is happening and is color-coded to match the color of
|
is happening and is color-coded to match the color of the lights.
|
||||||
the lights.
|
|
||||||
|
|
||||||
Curses.Blinkenlights is an interface very similar to Tk.Blinkenlights,
|
|
||||||
but is designed to be run in a console window (an xterm, Linux virtual
|
|
||||||
terminal, etc.) Since it doesn't have access to graphics, it isn't
|
|
||||||
quite as pretty, but it still gets the job done.
|
|
||||||
|
|
||||||
Tk.Blinkenlights is the only user interface that has configurable
|
Tk.Blinkenlights is the only user interface that has configurable
|
||||||
parameters; see the example offlineimap.conf for more details.
|
parameters; see the example offlineimap.conf for more details.
|
||||||
|
|
||||||
Each light in the Tk.Blinkenlights or Curses.Blinkenlights interface
|
Each light in the Blinkenlights interface represents a thread of execu-
|
||||||
represents a thread of execution -- that is, a particular task that
|
tion -- that is, a particular task that OfflineIMAP is performing right
|
||||||
OfflineIMAP is performing right now. The color indicates what task the
|
now. The colors indicate what task the particular thread is perform-
|
||||||
particular thread is performing, and are as follows:
|
ing, and are as follows:
|
||||||
|
|
||||||
Black indicates that this light's thread has terminated; it will light
|
Black indicates that this light's thread has terminated; it will light
|
||||||
up again later when new threads start up. So, black indicates
|
up again later when new threads start up. So, black indicates
|
||||||
@ -245,21 +279,25 @@ USER INTERFACES
|
|||||||
|
|
||||||
Blue is the color of a message synchronization controller thread.
|
Blue is the color of a message synchronization controller thread.
|
||||||
|
|
||||||
Orange indicates that an actual message is being copied.
|
Orange indicates that an actual message is being copied. (We use
|
||||||
|
fuschia for fake messages.)
|
||||||
|
|
||||||
Red (Meaning 2)
|
Red (meaning 2)
|
||||||
indicates that a message is being deleted.
|
indicates that a message is being deleted.
|
||||||
|
|
||||||
Yellow (bright orange) indicates that message flags are being added.
|
Yellow / bright orange
|
||||||
|
indicates that message flags are being added.
|
||||||
|
|
||||||
Pink (bright red) indicates that message flags are being removed.
|
Pink / bright red
|
||||||
|
indicates that message flags are being removed.
|
||||||
|
|
||||||
Red / Black Flashing
|
Red / Black Flashing
|
||||||
corresponds to the countdown timer that runs between synchro-
|
corresponds to the countdown timer that runs between synchro-
|
||||||
nizations.
|
nizations.
|
||||||
|
|
||||||
The name of this interface derives from a bit of computer science his-
|
The name of this interfaces derives from a bit of computer history.
|
||||||
tory. Eric Raymond's Jargon File defines blinkenlights, in part, as:
|
Eric Raymond's Jargon File defines blinkenlights, in part, as:
|
||||||
|
|
||||||
|
|
||||||
Front-panel diagnostic lights on a computer, esp. a dinosaur.
|
Front-panel diagnostic lights on a computer, esp. a dinosaur.
|
||||||
Now that dinosaurs are rare, this term usually refers to status
|
Now that dinosaurs are rare, this term usually refers to status
|
||||||
@ -279,63 +317,75 @@ USER INTERFACES
|
|||||||
pickenen hans in das pockets muss; relaxen und watchen das
|
pickenen hans in das pockets muss; relaxen und watchen das
|
||||||
blinkenlichten.
|
blinkenlichten.
|
||||||
|
|
||||||
Tk.VerboseUI
|
CURSES.BLINKENLIGHTS
|
||||||
This interface (formerly known as Tk.TkUI) is a graphical interface
|
Curses.Blinkenlights is an interface very similar to Tk.Blinkenlights,
|
||||||
that presents a variable-sized window. In the window, each currently-
|
but is designed to be run in a console window (an xterm, Linux virtual
|
||||||
executing thread has a section where its name and current status are
|
terminal, etc.) Since it doesn't have access to graphics, it isn't
|
||||||
displayed. This interface is best suited to people running on slower
|
quite as pretty, but it still gets the job done.
|
||||||
connections, as you get a lot of detail, but for fast connections, the
|
|
||||||
|
Please see the Tk.Blinkenlights section above for more information
|
||||||
|
about the colors used in this interface.
|
||||||
|
|
||||||
|
TK.VERBOSEUI
|
||||||
|
Tk.VerboseUI (formerly known as Tk.TkUI) is a graphical interface that
|
||||||
|
presents a variable-sized window. In the window, each currently-exe-
|
||||||
|
cuting thread has a section where its name and current status are dis-
|
||||||
|
played. This interface is best suited to people running on slower con-
|
||||||
|
nections, as you get a lot of detail, but for fast connections, the
|
||||||
detail may go by too quickly to be useful. People with fast connec-
|
detail may go by too quickly to be useful. People with fast connec-
|
||||||
tions may wish to use Tk.Blinkenlights instead.
|
tions may wish to use Tk.Blinkenlights instead.
|
||||||
|
|
||||||
TTY.TTYUI
|
TTY.TTYUI
|
||||||
This interface is the default for people running in terminals. It
|
TTY.TTYUI interface is for people running in basic, non-color termi-
|
||||||
prints out basic status messages and is generally friendly to use on a
|
nals. It prints out basic status messages and is generally friendly to
|
||||||
console or xterm.
|
use on a console or xterm.
|
||||||
|
|
||||||
Noninteractive.Basic
|
NONINTERACTIVE.BASIC
|
||||||
This interface is designed for situations where OfflineIMAP will be run
|
Noninteractive.Basic is designed for situations in which OfflineIMAP
|
||||||
non-attended and the status of its execution will be logged. You might
|
will be run non-attended and the status of its execution will be
|
||||||
use it, for instance, to have the system run automatically and e-mail
|
logged. You might use it, for instance, to have the system run auto-
|
||||||
you the results of the synchronization. This user interface is not
|
matically and e-mail you the results of the synchronization. This user
|
||||||
capable of reading a password from the keyboard; account passwords must
|
|
||||||
be specified using one of the configuration file options.
|
|
||||||
|
|
||||||
Noninteractive.Quiet
|
|
||||||
This interface is designed for non-attended running in situations where
|
|
||||||
normal status messages are not desired. It will output nothing except
|
|
||||||
errors and serious warnings. Like Noninteractive.Basic, this user
|
|
||||||
interface is not capable of reading a password from the keyboard;
|
interface is not capable of reading a password from the keyboard;
|
||||||
account passwords must be specified using one of the configuration file
|
account passwords must be specified using one of the configuration file
|
||||||
options.
|
options.
|
||||||
|
|
||||||
|
NONINTERACTIVE.QUIET
|
||||||
|
Noninteractive.Quiet is designed for non-attended running in situations
|
||||||
|
where normal status messages are not desired. It will output nothing
|
||||||
|
except errors and serious warnings. Like Noninteractive.Basic, this
|
||||||
|
user interface is not capable of reading a password from the keyboard;
|
||||||
|
account passwords must be specified using one of the configuration file
|
||||||
|
options.
|
||||||
|
|
||||||
EXAMPLES
|
EXAMPLES
|
||||||
Here is an example configuration for a particularly complex situation;
|
Here are some example configurations for various situations. Please e-
|
||||||
more examples will be added later.
|
mail any other examples you have that may be useful to me.
|
||||||
|
|
||||||
MULTIPLE ACCOUNTS WITH MUTT
|
MULTIPLE ACCOUNTS WITH MUTT
|
||||||
This example shows you how to set up OfflineIMAP to synchronize multi-
|
This example shows you how to set up OfflineIMAP to synchronize multi-
|
||||||
ple accounts with the mutt mail reader.
|
ple accounts with the mutt mail reader.
|
||||||
|
|
||||||
Start by creating a directory to hold your folders:
|
Start by creating a directory to hold your folders by running mkdir
|
||||||
mkdir ~/Mail
|
~/Mail. Then, in your ~/.offlineimaprc, specify:
|
||||||
|
|
||||||
In your ~/.offlineimaprc, specify this:
|
|
||||||
accounts = Personal, Work
|
accounts = Personal, Work
|
||||||
|
|
||||||
Make sure that you have both a [Personal] and a [Work] section, with
|
Make sure that you have both a [Personal] and a [Work] section, each
|
||||||
different localfolder pathnames and enable [mbnames].
|
with different localfolder path names. Also, make sure to enable
|
||||||
|
[mbnames].
|
||||||
|
|
||||||
|
In each account section, write something like this:
|
||||||
|
|
||||||
In each account section, do something like this:
|
|
||||||
localfolders = ~/Mail/Personal
|
localfolders = ~/Mail/Personal
|
||||||
|
|
||||||
Add these lines to your ~/.muttrc:
|
Finally, add these lines to your ~/.muttrc:
|
||||||
|
|
||||||
source ~/path-to-mbnames-muttrc-mailboxes
|
source ~/path-to-mbnames-muttrc-mailboxes
|
||||||
folder-hook Personal set from="youremail@personal.com"
|
folder-hook Personal set from="youremail@personal.com"
|
||||||
folder-hook Work set from="youremail@work.com"
|
folder-hook Work set from="youremail@work.com"
|
||||||
set mbox_type=Maildir
|
set mbox_type=Maildir
|
||||||
set folder=$HOME/Mail
|
set folder=$HOME/Mail
|
||||||
set spoolfile=+Personal/INBOX
|
spoolfile=+Personal/INBOX
|
||||||
|
|
||||||
That's it!
|
That's it!
|
||||||
|
|
||||||
@ -392,8 +442,7 @@ EXAMPLES
|
|||||||
|
|
||||||
def test_mycmp():
|
def test_mycmp():
|
||||||
import os, os.path
|
import os, os.path
|
||||||
folders=os.list-
|
folders=os.listdir(os.path.expanduser('~/data/mail/tv@hq.yok.utu.fi'))
|
||||||
dir(os.path.expanduser('~/data/mail/tv@hq.yok.utu.fi'))
|
|
||||||
folders.sort(mycmp)
|
folders.sort(mycmp)
|
||||||
print folders
|
print folders
|
||||||
|
|
||||||
@ -405,9 +454,9 @@ ERRORS
|
|||||||
If you get one of some frequently-encountered or confusing errors,
|
If you get one of some frequently-encountered or confusing errors,
|
||||||
please check this section.
|
please check this section.
|
||||||
|
|
||||||
UID validity problem for folder
|
UID VALIDITY PROBLEM FOR FOLDER
|
||||||
IMAP servers use a unique ID (UID) to refer to a specific message.
|
IMAP servers use a unique ID (UID) to refer to a specific message.
|
||||||
This number is guaranteed to be unique to a particular message FOREVER.
|
This number is guaranteed to be unique to a particular message forever.
|
||||||
No other message in the same folder will ever get the same UID. UIDs
|
No other message in the same folder will ever get the same UID. UIDs
|
||||||
are an integral part of OfflineIMAP's synchronization scheme; they are
|
are an integral part of OfflineIMAP's synchronization scheme; they are
|
||||||
used to match up messages on your computer to messages on the server.
|
used to match up messages on your computer to messages on the server.
|
||||||
@ -424,10 +473,10 @@ ERRORS
|
|||||||
problem is INBOX, you'd type this:
|
problem is INBOX, you'd type this:
|
||||||
|
|
||||||
rm -r ~/Folders/INBOX
|
rm -r ~/Folders/INBOX
|
||||||
rm ~/.offlineimap/AccountName/INBOX
|
rm -r ~/.offlineimap/AccountName/INBOX
|
||||||
|
|
||||||
(replacing AccountName with the account name as specified in
|
(Of course, replace AccountName with the account name as specified in
|
||||||
~/.offlineimaprc)
|
~/.offlineimaprc).
|
||||||
|
|
||||||
Next time you run OfflineIMAP, it will re-download the folder with the
|
Next time you run OfflineIMAP, it will re-download the folder with the
|
||||||
new UIDs. Note that the procedure specified above will lose any local
|
new UIDs. Note that the procedure specified above will lose any local
|
||||||
@ -439,19 +488,18 @@ ERRORS
|
|||||||
category. OfflineIMAP is incompatible with such servers. Using
|
category. OfflineIMAP is incompatible with such servers. Using
|
||||||
OfflineIMAP with them will not destroy any mail, but at the same time,
|
OfflineIMAP with them will not destroy any mail, but at the same time,
|
||||||
it will not actually synchronize it either. (OfflineIMAP will detect
|
it will not actually synchronize it either. (OfflineIMAP will detect
|
||||||
this condition and abort prior to synchronization)
|
this condition and abort prior to synchronization.)
|
||||||
|
|
||||||
|
|
||||||
OTHER FREQUENTLY ASKED QUESTIONS
|
OTHER FREQUENTLY ASKED QUESTIONS
|
||||||
There are some other FAQs that might not fit into another section of
|
There are some other FAQs that might not fit into another section of
|
||||||
this document, and they are enumerated here.
|
the document, so they are discussed here.
|
||||||
|
|
||||||
What platforms does OfflineIMAP run on?
|
What platforms does OfflineIMAP run on?
|
||||||
It should run on most platforms supported by Python, which are
|
It should run on most platforms supported by Python, which are
|
||||||
quite a few.
|
quite a few.
|
||||||
|
|
||||||
I'm using Mutt. Other IMAP sync programs require me to use set
|
I'm using Mutt. Other IMAP sync programs require me to use "set
|
||||||
maildir_trash=yes . Do I need to do that with OfflineIMAP?
|
maildir_trash=yes". Do I need to do that with OfflineIMAP?
|
||||||
No. OfflineIMAP is smart enough to figure out message deletion
|
No. OfflineIMAP is smart enough to figure out message deletion
|
||||||
without this extra crutch. You'll get the best results if you
|
without this extra crutch. You'll get the best results if you
|
||||||
don't use this setting, in fact.
|
don't use this setting, in fact.
|
||||||
@ -472,25 +520,26 @@ OTHER FREQUENTLY ASKED QUESTIONS
|
|||||||
locally automatically.
|
locally automatically.
|
||||||
|
|
||||||
Are there any other warnings that I should be aware of?
|
Are there any other warnings that I should be aware of?
|
||||||
Yes; see the NOTES section below.
|
Yes; see the Notes section below.
|
||||||
|
|
||||||
What is the mailbox name recorder (mbnames) for?
|
What is the mailbox name recorder (mbnames) for?
|
||||||
The Mutt mail reader is not capable of automatically determining
|
Some mail readers, such as Mutt, are not capable of automati-
|
||||||
the names of your mailboxes. OfflineIMAP can help it (or many
|
cally determining the names of your mailboxes. OfflineIMAP can
|
||||||
other) programs out be writing these names out in a format you
|
help these programs by writing the names of the folders ni a
|
||||||
specify. See the example offlineimap.conf file for details.
|
format you specify. See the example offlineimap.conf for
|
||||||
|
details.
|
||||||
|
|
||||||
Can I synchronize multiple accounts with OfflineIMAP?
|
Can I synchronize multiple accounts with OfflineIMAP?
|
||||||
Sure. Just name them all in the accounts line in the general
|
Sure. Just name them all in the accounts line in the general
|
||||||
section of the config file, and add a per-account section for
|
section of the configuration file, and add a per-account section
|
||||||
each one.
|
for each one.
|
||||||
|
|
||||||
Does OfflineIMAP support POP?
|
Does OfflineIMAP support POP?
|
||||||
No. POP is not robust enough to do a completely reliable multi-
|
No. POP is not robust enough to do a completely reliable multi-
|
||||||
machine synchronization like OfflineIMAP can do. OfflineIMAP
|
machine synchronization like OfflineIMAP can do. OfflineIMAP
|
||||||
will not support it.
|
will not support it.
|
||||||
|
|
||||||
Do you support mailbox formats other than Maildir?
|
Does OfflineIMAP support mailbox formats other than Maildir?
|
||||||
Not at present. There is no technical reason not to; just no
|
Not at present. There is no technical reason not to; just no
|
||||||
demand yet. Maildir is a superior format anyway.
|
demand yet. Maildir is a superior format anyway.
|
||||||
|
|
||||||
@ -529,21 +578,27 @@ OTHER FREQUENTLY ASKED QUESTIONS
|
|||||||
|
|
||||||
An informal benchmark yields these results for my setup:
|
An informal benchmark yields these results for my setup:
|
||||||
|
|
||||||
10 minutes with MacOS X Mail.app "manual cache"
|
o 10 minutes with MacOS X Mail.app "manual cache"
|
||||||
5 minutes with GNUS agent sync
|
|
||||||
20 seconds with OfflineIMAP 1.x
|
o 5 minutes with GNUS agent sync
|
||||||
9 seconds with OfflineIMAP 2.x
|
|
||||||
3 seconds with OfflineIMAP 3.x "cold start"
|
o 20 seconds with OfflineIMAP 1.x
|
||||||
2 seconds with OfflineIMAP 3.x "held connection"
|
|
||||||
|
o 9 seconds with OfflineIMAP 2.x
|
||||||
|
|
||||||
|
o 3 seconds with OfflineIMAP 3.x "cold start"
|
||||||
|
|
||||||
|
o 2 seconds with OfflineIMAP 3.x "held connection"
|
||||||
|
|
||||||
CONFORMING TO
|
CONFORMING TO
|
||||||
o Internet Message Access Protocol version 4rev1 (IMAP 4rev1) as
|
o Internet Message Access Protocol version 4rev1 (IMAP 4rev1) as speci-
|
||||||
specified in RFC2060
|
fied in RFC2060
|
||||||
|
|
||||||
o CRAM-MD5 as specified in RFC2195
|
o CRAM-MD5 as specified in RFC2195
|
||||||
|
|
||||||
o Maildir as specified in http://www.qmail.org/qmail-manual-
|
o Maildir as specified in the Maildir manpage
|
||||||
html/man5/maildir.html and http://cr.yp.to/proto/maildir.html.
|
<URL:http://www.qmail.org/qmail-manual-html/man5/maildir.html> and
|
||||||
|
the qmail website <URL:http://cr.yp.to/proto/maildir.html>.
|
||||||
|
|
||||||
o Standard Python 2.2.1 as implemented on POSIX-compliant systems.
|
o Standard Python 2.2.1 as implemented on POSIX-compliant systems.
|
||||||
|
|
||||||
@ -574,12 +629,10 @@ NOTES
|
|||||||
|
|
||||||
USE WITH EVOLUTION
|
USE WITH EVOLUTION
|
||||||
OfflineIMAP can work with Evolution. To do so, first configure your
|
OfflineIMAP can work with Evolution. To do so, first configure your
|
||||||
OfflineIMAP account to have:
|
OfflineIMAP account to have sep = / in its configuration. Then, con-
|
||||||
sep = /
|
figure Evolution with the "Maildir-format mail directories" server
|
||||||
in its configuration. Then, configure Evolution with the "Maildir-for-
|
type. For the path, you will need to specify the name of the top-level
|
||||||
mat mail directories" server type. For the path, you will need to
|
folder inside your OfflineIMAP storage location. You're now set!
|
||||||
specify the name of the top-level folder inside your OfflineIMAP stor-
|
|
||||||
age location. You're now set!
|
|
||||||
|
|
||||||
USE WITH KMAIL
|
USE WITH KMAIL
|
||||||
At this time, I believe that OfflineIMAP is not compatible with KMail.
|
At this time, I believe that OfflineIMAP is not compatible with KMail.
|
||||||
@ -588,18 +641,17 @@ NOTES
|
|||||||
tally broken) is incompatible with OfflineIMAP.
|
tally broken) is incompatible with OfflineIMAP.
|
||||||
|
|
||||||
MAILING LIST
|
MAILING LIST
|
||||||
There is an OfflineIMAP mailing list available.
|
There is an OfflineIMAP mailing list available. To subscribe, send the
|
||||||
|
text "Subscribe" in the subject of a mail to offlineimap-request@com-
|
||||||
|
plete.org. To post, send the message to offlineimap@complete.org.
|
||||||
|
|
||||||
To subscribe, send the text "Subscribe" in the subject of a mail to
|
BUGS
|
||||||
offlineimap-request@complete.org. To post, send the message to
|
|
||||||
offlineimap@complete.org.
|
|
||||||
|
|
||||||
BUGS
|
|
||||||
Reports of bugs should be sent via e-mail to the OfflineIMAP bug-track-
|
Reports of bugs should be sent via e-mail to the OfflineIMAP bug-track-
|
||||||
ing system (BTS) at offlineimap@bugs.complete.org or submitted on-line
|
ing system (BTS) at offlineimap@bugs.complete.org or submitted online
|
||||||
using the Web interface at http://bugs.complete.org/. The Web site
|
using the web interface <URL:http://bugs.complete.org/>.
|
||||||
also lists all current bugs, where you can check their status or con-
|
|
||||||
tribute to fixing them.
|
The Web site also lists all current bugs, where you can check their
|
||||||
|
status or contribute to fixing them.
|
||||||
|
|
||||||
COPYRIGHT
|
COPYRIGHT
|
||||||
OfflineIMAP, and this manual, are Copyright (C) 2002, 2003 John
|
OfflineIMAP, and this manual, are Copyright (C) 2002, 2003 John
|
||||||
@ -616,35 +668,31 @@ COPYRIGHT
|
|||||||
Public License for more details.
|
Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License along
|
You should have received a copy of the GNU General Public License along
|
||||||
with this program; if not, write to:
|
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
|
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
Free Software Foundation, Inc.
|
imaplib.py comes from the Python dev tree and is licensed under the
|
||||||
59 Temple Place
|
GPL-compatible PSF license as stated in the file COPYRIGHT in the
|
||||||
Suite 330
|
OfflineIMAP distribution.
|
||||||
Boston, MA 02111-1307
|
|
||||||
USA
|
|
||||||
|
|
||||||
AUTHOR
|
AUTHOR
|
||||||
OfflineIMAP, its libraries, documentation, and all included files,
|
OfflineIMAP, its libraries, documentation, and all included files,
|
||||||
except where noted, was written by John Goerzen <jgoerzen@complete.org>
|
except where noted, was written by John Goerzen <jgoerzen@complete.org>
|
||||||
and copyright is held as stated in the COPYRIGHT section.
|
and copyright is held as stated in the COPYRIGHT section.
|
||||||
|
|
||||||
OfflineIMAP may be downloaded, and information found, from its homepage
|
OfflineIMAP may be downloaded, and information found, from is homepage
|
||||||
via either Gopher or HTTP:
|
via either Gopher <URL:gopher://quux.org/1/devel/offlineimap> or HTTP
|
||||||
|
<URL:http://quux.org/devel/offlineimap>.
|
||||||
gopher://quux.org/1/devel/offlineimap
|
|
||||||
http://quux.org/devel/offlineimap
|
|
||||||
|
|
||||||
OfflineIMAP may also be downloaded using Subversion. Additionally, the
|
OfflineIMAP may also be downloaded using Subversion. Additionally, the
|
||||||
distributed tar.gz may be updated with a simple "svn update" command;
|
distributed tar.gz may be updated with a simple "svn update" command;
|
||||||
it is ready to go. For information on getting OfflineIMAP with Subver-
|
it is ready to go. For information on getting OfflineIMAP with Subver-
|
||||||
sion, please visit:
|
sion, please visit the complete.org Subversion page
|
||||||
|
<URL:http://svn.complete.org/>.
|
||||||
http://svn.complete.org/
|
|
||||||
|
|
||||||
SEE ALSO
|
SEE ALSO
|
||||||
mutt(1), python(1).
|
mutt(1), python(1)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
John Goerzen July 12, 2002 OFFLINEIMAP(1)
|
John Goerzen 08 January 2003 OFFLINEIMAP(1)
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -11,7 +11,7 @@
|
|||||||
<refentryinfo>
|
<refentryinfo>
|
||||||
<address><email>jgoerzen@complete.org</email></address>
|
<address><email>jgoerzen@complete.org</email></address>
|
||||||
<author><firstname>John</firstname><surname>Goerzen</surname></author>
|
<author><firstname>John</firstname><surname>Goerzen</surname></author>
|
||||||
<date> $Date: 2003-01-08 10:12:49 -0600 (Wed, 08 Jan 2003) $ </date>
|
<date> $Date: 2003-01-08 11:03:58 -0600 (Wed, 08 Jan 2003) $ </date>
|
||||||
</refentryinfo>
|
</refentryinfo>
|
||||||
|
|
||||||
<refmeta>
|
<refmeta>
|
||||||
@ -992,13 +992,13 @@ rm -r ~/.offlineimap/AccountName/INBOX</programlisting>
|
|||||||
<refsect1>
|
<refsect1>
|
||||||
<title>Author</title>
|
<title>Author</title>
|
||||||
<para>&OfflineIMAP;, its libraries, documentation, and all included files, except where
|
<para>&OfflineIMAP;, its libraries, documentation, and all included files, except where
|
||||||
noted, was written by John Goerzen (<address>jgoerzen@complete.org</address>) and
|
noted, was written by John Goerzen <email>jgoerzen@complete.org</email> and
|
||||||
copyright is held as stated in the COPYRIGHT section.
|
copyright is held as stated in the COPYRIGHT section.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
&OfflineIMAP; may be downloaded, and information found, from is
|
&OfflineIMAP; may be downloaded, and information found, from is
|
||||||
hopepage via either <ulink url="gopher://quux.org/1/devel/offlineimap">Gopher</ulink>
|
homepage via either <ulink url="gopher://quux.org/1/devel/offlineimap">Gopher</ulink>
|
||||||
or <ulink url="http://quux.org/devel/offlineimap">HTTP</ulink>.
|
or <ulink url="http://quux.org/devel/offlineimap">HTTP</ulink>.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user