1 # Offlineimap sample configuration file
 
   3 # This file documents *all* possible options and can be quite scary.
 
   4 # Looking for a quick start?  Take a look at offlineimap.conf.minimal.
 
   5 # More details can be found in the included user documention, which is
 
   6 # also available at: http://docs.offlineimap.org/en/latest/
 
   8 # NOTE: Settings generally support python interpolation. This means
 
   9 # values can contain python format strings which refer to other values
 
  10 # in the same section, or values in a special DEFAULT section. This
 
  11 # allows you for example to use common settings for multiple accounts:
 
  14 # trashfolder: %(gmailtrashfolder)s
 
  17 # trashfolder: %(gmailtrashfolder)s
 
  20 # gmailtrashfolder = [Gmail]/Papierkorb
 
  22 # would set the trashfolder setting for your German Gmail accounts.
 
  24 # NOTE2: This implies that any '%' needs to be encoded as '%%'
 
  26 ##################################################
 
  28 ##################################################
 
  32 # This specifies where offlineimap is to store its metadata.
 
  33 # This directory will be created if it does not already exist.
 
  35 #metadata = ~/.offlineimap
 
  37 # This variable specifies which accounts are defined.  Separate them
 
  38 # with commas.  Account names should be alphanumeric only.
 
  39 # You will need to specify one section per account below.  You may
 
  40 # not use "general" for an account name.
 
  44 # Offlineimap can synchronize more than one account at a time.  If you
 
  45 # want to enable this feature, set the below value to something
 
  46 # greater than 1.  To force it to synchronize only one account at a
 
  49 # Note: if you are using autorefresh and have more than one account,
 
  50 # you must set this number to be >= to the number of accounts you have;
 
  51 # since any given sync run never "finishes" due to a timer, you will never
 
  52 # sync your additional accounts if this is 1.
 
  56 # You can specify one or more user interface modules for OfflineIMAP
 
  57 # to use.  OfflineIMAP will try the first in the list, and if it
 
  58 # fails, the second, and so forth.
 
  60 # The pre-defined options are:
 
  61 # Blinkenlights -- A fancy (terminal) interface
 
  62 # TTYUI         -- a text-based (terminal) interface
 
  63 # Basic         -- Noninteractive interface suitable for cron'ing
 
  64 # Quiet         -- Noninteractive interface, generates no output
 
  66 # MachineUI     -- Interactive interface suitable for machine
 
  69 # You can override this with a command-line option -u.
 
  73 # If you try to synchronize messages to a folder which the IMAP server
 
  74 # considers read-only, OfflineIMAP will generate a warning.  If you want
 
  75 # to suppress these warnings, set ignore-readonly to yes.  Read-only
 
  76 # IMAP folders allow reading but not modification, so if you try to
 
  77 # change messages in the local copy of such a folder, the IMAP server
 
  78 # will prevent OfflineIMAP from propagating those changes to the IMAP
 
  79 # server.  Note that ignore-readonly is unrelated to the "readonly"
 
  80 # setting which prevents a repository from being modified at all.
 
  84 ########## Advanced settings
 
  86 # You can give a Python source filename here and all config file
 
  87 # python snippets will be evaluated in the context of that file.
 
  88 # This allows you to e.g. define helper functions in the Python
 
  89 # source file and call them from this config file.  You can find
 
  90 # an example of this in the manual.
 
  92 pythonfile = ~/bin/offlineimap_utils.py
 
  94 # By default, OfflineIMAP will not exit due to a network error until
 
  95 # the operating system returns an error code.  Operating systems can sometimes
 
  96 # take forever to notice this.  Here you can activate a timeout on the
 
  97 # socket.  This timeout applies to individual socket reads and writes,
 
  98 # not to an overall sync operation.  You could perfectly well have a 30s
 
  99 # timeout here and your sync still take minutes.
 
 101 # Values in the 30-120 second range are reasonable.
 
 103 # The default is to have no timeout beyond the OS.  Times are given in seconds.
 
 107 # By default, OfflineIMAP will use fsync() to force data out to disk at
 
 108 # opportune times to ensure consistency.  This can, however, reduce
 
 109 # performance.  Users where /home is on SSD (Flash) may also wish to reduce
 
 110 # write cycles.  Therefore, you can disable OfflineIMAP's use of fsync().
 
 111 # Doing so will come at the expense of greater risk of message duplication
 
 112 # in the event of a system crash or power loss.  Default is fsync = true.
 
 113 # Set fsync = false to disable fsync.
 
 117 ##################################################
 
 118 # Mailbox name recorder
 
 119 ##################################################
 
 123 # offlineimap can record your mailbox names in a format you specify.
 
 124 # You can define the header, each mailbox item, the separator,
 
 125 # and the footer.  Here is an example for Mutt.
 
 126 # If enabled is yes, all six setting must be specified, even if they
 
 127 # are just the empty string "".
 
 129 # The header, peritem, sep, and footer are all Python expressions passed
 
 130 # through eval, so you can (and must) use Python quoting.
 
 132 # The following hash key are available to the expansion for 'peritem':
 
 133 # - accountname: the name of the corresponding account;
 
 134 # - foldername: the name of the folder;
 
 135 # - localfolders: path to the local directory hosting all Maildir
 
 136 #   folders for the account.
 
 139 filename = ~/.mutt/mailboxes
 
 140 header = "mailboxes "
 
 141 peritem = "+%(accountname)s/%(foldername)s"
 
 145 # You can also specify a folderfilter.  It will apply to the
 
 146 # *translated* folder name here, and it takes TWO arguments:
 
 147 # accountname and foldername.  In all other ways, it will
 
 148 # behave identically to the folderfilter for accounts.  Please see
 
 149 # that section for more information and examples.
 
 151 # Note that this filter can be used only to further restrict mbnames
 
 152 # to a subset of folders that pass the account's folderfilter.
 
 155 # You can customize the order in which mailbox names are listed in the
 
 156 # generated file by specifying a sort_keyfunc, which takes a single
 
 157 # dict argument containing keys 'accountname' and 'foldername'.  This
 
 158 # function will be called once for each mailbox, and should return a
 
 159 # suitable sort key that defines this mailbox' position in the custom
 
 162 # This is useful with e.g. Mutt-sidebar, which uses the mailbox order
 
 163 # from the generated file when listing mailboxes in the sidebar.
 
 166 # sort_keyfunc = lambda d: (d['accountname'], d['foldername'])
 
 167 sort_keyfunc = sort_key
 
 170 ##################################################
 
 172 ##################################################
 
 174 # This is an account definition clause.  You'll have one of these
 
 175 # for each account listed in general/accounts above.
 
 178 ########## Basic settings
 
 180 # These settings specify the two folders that you will be syncing.
 
 181 # You'll need to have a "Repository ..." section for each one.
 
 183 localrepository = gmail-local
 
 184 remoterepository = gmail-remote
 
 186 ########## Advanced settings
 
 188 # You can have offlineimap continue running indefinitely, automatically
 
 189 # syncing your mail periodically.  If you want that, specify how
 
 190 # frequently to do that (in minutes) here.  You can also specify
 
 191 # fractional minutes (ie, 3.25).
 
 195 # OfflineImap can replace a number of full updates by quick
 
 196 # synchronizations.  It only synchronizes a folder if 1) a Maildir
 
 197 # folder has changed, or 2) if an IMAP folder has received new messages
 
 198 # or had messages deleted, ie it does not update if only IMAP flags have
 
 199 # changed.  Full updates need to fetch ALL flags for all messages, so
 
 200 # this makes quite a performance difference (especially if syncing
 
 201 # between two IMAP servers).
 
 202 # Specify 0 for never, -1 for always (works even in non-autorefresh
 
 203 # mode), or a positive integer <n> to do <n> quick updates before doing
 
 204 # another full synchronization (requires autorefresh).  Updates are
 
 205 # always performed after <autorefresh> minutes, be they quick or full.
 
 209 # You can specify a pre and post sync hook to execute a external command.
 
 210 # In this case a call to imapfilter to filter mail before the sync process
 
 211 # starts and a custom shell script after the sync completes.
 
 212 # The pre sync script has to complete before a sync to the account will
 
 215 # presynchook = imapfilter
 
 216 # postsynchook = notifysync.sh
 
 218 # You can also specify parameters to the commands
 
 219 # presynchook = imapfilter -c someotherconfig.lua
 
 221 # OfflineImap caches the state of the synchronisation to e.g. be able to
 
 222 # determine if a mail has been deleted on one side or added on the
 
 225 # The default and historical backend is 'plain' which writes out the
 
 226 # state in plain text files. On Repositories with large numbers of
 
 227 # mails, the performance might not be optimal, as we write out the
 
 228 # complete file for each change.  Another new backend 'sqlite' is
 
 229 # available which stores the status in sqlite databases.
 
 231 # If you switch the backend, you may want to delete the old cache
 
 232 # directory in ~/.offlineimap/Account-<account>/LocalStatus manually
 
 233 # once you are sure that things work.
 
 235 status_backend = sqlite
 
 237 # If you have a limited amount of bandwidth available you can exclude larger
 
 238 # messages (e.g. those with large attachments etc).  If you do this it
 
 239 # will appear to offlineimap that these messages do not exist at all.  They
 
 240 # will not be copied, have flags changed etc.  For this to work on an IMAP
 
 241 # server the server must have server side search enabled.  This works with Gmail
 
 242 # and most imap servers (e.g. cyrus etc)
 
 243 # The maximum size should be specified in bytes - e.g. 2000000 for approx 2MB
 
 248 # When you are starting to sync an already existing account you can tell
 
 249 # offlineimap to sync messages from only the last x days.  When you do
 
 250 # this messages older than x days will be completely ignored.  This can
 
 251 # be useful for importing existing accounts when you do not want to
 
 252 # download large amounts of archive email.
 
 254 # Messages older than maxage days will not be synced, their flags will
 
 255 # not be changed, they will not be deleted etc.  For offlineimap it will
 
 256 # be like these messages do not exist.  This will perform an IMAP search
 
 257 # in the case of IMAP or Gmail and therefore requires that the server
 
 258 # support server side searching.  This will calculate the earliest day
 
 259 # that would be included in the search and include all messages from
 
 260 # that day until today.  e.g. maxage = 3 to sync only the last 3 days
 
 266 # Maildir file format uses colon (:) separator between uniq name and info.
 
 267 # Unfortunatelly colon is not allowed character in windows file name. If you
 
 268 # enable maildir-windows-compatible option, offlineimap will be able to store
 
 269 # messages on windows drive, but you will probably loose compatibility with
 
 270 # other programs working with the maildir
 
 272 #maildir-windows-compatible = no
 
 275 [Repository gmail-local]
 
 277 # Each repository requires a "type" declaration. The types supported for
 
 278 # local repositories are Maildir and IMAP.
 
 282 # Specify local repository.  Your IMAP folders will be synchronized
 
 283 # to maildirs created under this path.  OfflineIMAP will create the
 
 284 # maildirs for you as needed.
 
 286 localfolders = ~/mail/gmail
 
 288 # You can specify the "folder separator character" used for your Maildir
 
 289 # folders.  It is inserted in-between the components of the tree. If you
 
 290 # want your folders to be nested directories, set it to "/". 'sep' is
 
 291 # ignored for IMAP repositories, as it is queried automatically.
 
 295 # Some users may not want the atime (last access time) of folders to be
 
 296 # modified by OfflineIMAP.  If 'restoreatime' is set to yes, OfflineIMAP
 
 297 # will restore the atime of the "new" and "cur" folders in each maildir
 
 298 # folder to their original value after each sync.
 
 300 # In nearly all cases, the default should be fine.
 
 304 # function is defined in [general]pythonfile
 
 305 nametrans = translocal
 
 307 [Repository gmail-remote]
 
 309 # A repository using Gmail's IMAP interface.  Any configuration
 
 310 # parameter of `IMAP` type repositories can be used here.  Only
 
 311 # `remoteuser` (or `remoteusereval` ) is mandatory.  Default values
 
 312 # for other parameters are OK, and you should not need fiddle with
 
 315 # The Gmail repository will use hard-coded values for `remotehost`,
 
 316 # `remoteport`, `tunnel` and `ssl`.  (See
 
 317 # http://mail.google.com/support/bin/answer.py?answer=78799&topic=12814)
 
 318 # Any attempt to set those parameters will be silently ignored.
 
 322 # Specify the Gmail user name. This is the only mandatory parameter.
 
 323 remoteuser = samir.benmendil@gmail.com
 
 325 # function is defined in [general]pythonfile
 
 326 nametrans = transremote
 
 328 folderfilter = lambda foldername: foldername not in '[Google Mail]/All Mail'
 
 330 sslcacertfile = /etc/ssl/certs/ca-certificates.crt
 
 332 # The trash folder name may be different from [Gmail]/Trash
 
 333 # for example on German Gmail, this setting should be
 
 335 trashfolder = '[Google Mail]/Bin'
 
 337 # You should look for the localized names of the spam folder too:
 
 338 # "spamfolder" tunable will help you to override the standard name.
 
 339 spamfolder = '[Google Mail]/Spam'
 
 341 # OfflineIMAP can use multiple connections to the server in order
 
 342 # to perform multiple synchronization actions simultaneously.
 
 343 # This may place a higher burden on the server.  In most cases,
 
 344 # setting this value to 2 or 3 will speed up the sync, but in some
 
 345 # cases, it may slow things down.  The safe answer is 1.  You should
 
 346 # probably never set it to a value more than 5.
 
 350 # OfflineIMAP normally closes IMAP server connections between refreshes if
 
 351 # the global option autorefresh is specified.  If you wish it to keep the
 
 352 # connection open, set this to true.  If not specified, the default is
 
 353 # false.  Keeping the connection open means a faster sync start the
 
 354 # next time and may use fewer server resources on connection, but uses
 
 355 # more server memory.  This setting has no effect if autorefresh is not set.
 
 357 holdconnectionopen = yes
 
 359 # If you want to have "keepalives" sent while waiting between syncs,
 
 360 # specify the amount of time IN SECONDS between keepalives here.  Note that
 
 361 # sometimes more than this amount of time might pass, so don't make it
 
 362 # tight.  This setting has no effect if autorefresh and holdconnectionopen
 
 367 # Enable 1-way synchronization. See above for explanation.
 
 371 [Repository RemoteExample]
 
 372 # And this is the remote repository.  We only support IMAP or Gmail here.
 
 376 # The following can fetch the account credentials via a python expression that
 
 377 # is parsed from the pythonfile parameter. For example, a function called
 
 378 # "getcredentials" that parses a file "filename" and returns the account
 
 379 # details for "hostname".
 
 380 # remotehosteval = getcredentials("filename", "hostname", "hostname")
 
 381 # remoteporteval = getcredentials("filename", "hostname", "port")
 
 382 # remoteusereval = getcredentials("filename", "hostname", "user")
 
 383 # remotepasseval = getcredentials("filename", "hostname", "passwd")
 
 385 # Specify the remote hostname.
 
 386 remotehost = examplehost
 
 388 # Whether or not to use SSL.
 
 391 # SSL Client certificate (optional)
 
 392 # sslclientcert = /path/to/file.crt
 
 394 # SSL Client key (optional)
 
 395 # sslclientkey = /path/to/file.key
 
 397 # SSL CA Cert(s) to verify the server cert against (optional).
 
 398 # No SSL verification is done without this option. If it is
 
 399 # specified, the CA Cert(s) need to verify the Server cert AND
 
 400 # match the hostname (* wildcard allowed on the left hand side)
 
 401 # The certificate should be in PEM format.
 
 402 # sslcacertfile = /path/to/cacertfile.crt
 
 404 # If you connect via SSL/TLS (ssl=true) and you have no CA certificate
 
 405 # specified, offlineimap will refuse to sync as it connects to a server
 
 406 # with an unknown "fingerprint". If you are sure you connect to the
 
 407 # correct server, you can then configure the presented server
 
 408 # fingerprint here. OfflineImap will verify that the server fingerprint
 
 409 # has not changed on each connect and refuse to connect otherwise.
 
 410 # You can also configure this in addition to CA certificate validation
 
 411 # above and it will check both ways.
 
 413 #cert_fingerprint = <SHA1_of_server_certificate_here>
 
 415 # SSL version (optional)
 
 416 # It is best to leave this unset, in which case the correct version will be
 
 417 # automatically detected. In rare cases, it may be necessary to specify a
 
 418 # particular version from: tls1, ssl2, ssl3, ssl23 (SSLv2 or SSLv3)
 
 420 # ssl_version = ssl23
 
 422 # Specify the port.  If not specified, use a default port.
 
 425 # Specify the remote user name.
 
 426 remoteuser = username
 
 428 # Specify the user to be authorized as.  Sometimes we want to
 
 429 # authenticate with our login/password, but tell the server that we
 
 430 # really want to be treated as some other user; perhaps server will
 
 431 # allow us to do that (or, may be, not).  Some IMAP servers migrate
 
 432 # account names using this functionality: your credentials remain
 
 433 # intact, but remote identity changes.
 
 435 # Currently this variable is used only for SASL PLAIN authentication
 
 436 # mechanism, so consider using auth_mechanisms to prioritize PLAIN
 
 437 # or even make it the only mechanism to be tried.
 
 439 # remote_identity = authzuser
 
 441 # Specify which authentication/authorization mechanisms we should try
 
 442 # and the order in which OfflineIMAP will try them.  NOTE: any given
 
 443 # mechanism will be tried only if it is supported by the remote IMAP
 
 446 # Due to the technical limitations, if you're specifying GSSAPI
 
 447 # as the mechanism to try, it will be tried first, no matter where
 
 448 # it was specified in the list.
 
 451 # auth_mechanisms = GSSAPI, CRAM-MD5, PLAIN, LOGIN
 
 452 # ranged is from strongest to more weak ones.
 
 456 # There are six ways to specify the password for the IMAP server:
 
 458 # 1. No password at all specified in the config file.
 
 459 #    If a matching entry is found in ~/.netrc (see netrc (5) for
 
 460 #    information) this password will be used. Do note that netrc only
 
 461 #    allows one entry per hostname. If there is no ~/.netrc file but
 
 462 #    there is an /etc/netrc file, the password will instead be taken
 
 463 #    from there. Otherwise you will be prompted for the password when
 
 464 #    OfflineIMAP starts when using a UI that supports this.
 
 466 # 2. The remote password stored in this file with the remotepass
 
 467 #    option. Any '%' needs to be encoded as '%%'. Example:
 
 468 #    remotepass = mypassword
 
 470 # 3. The remote password stored as a single line in an external
 
 471 #    file, which is referenced by the remotefile option.  Example:
 
 472 #    remotepassfile = ~/Password.IMAP.Account1
 
 474 # 4. With a preauth tunnel.  With this method, you invoke an external
 
 475 #    program that is guaranteed *NOT* to ask for a password, but rather
 
 476 #    to read from stdin and write to stdout an IMAP procotol stream that
 
 477 #    begins life in the PREAUTH state.  When you use a tunnel, you do
 
 478 #    NOT specify a user or password (if you do, they'll be ignored.)
 
 479 #    Instead, you specify a preauthtunnel, as this example illustrates
 
 480 #    for Courier IMAP on Debian:
 
 481 #    preauthtunnel = ssh -q imaphost '/usr/bin/imapd ./Maildir'
 
 483 # 5. If you are using Kerberos and have the Python Kerberos package
 
 484 #    installed, you should not specify a remotepass.  If the user has a
 
 485 #    valid Kerberos TGT, OfflineIMAP will figure out the rest all by
 
 486 #    itself, and fall back to password authentication if needed.
 
 488 # 6. Using arbitrary python code.  With this method, you invoke a
 
 489 #    function from your pythonfile.  To use this method assign the name
 
 490 #    of the function to the variable 'remotepasseval'.  Example:
 
 491 #    remotepasseval = get_password("imap.example.net")
 
 492 #    You can also query for the username:
 
 493 #    remoteusereval = get_username("imap.example.net")
 
 494 #    This method can be used to design more elaborate setups, e.g. by
 
 495 #    querying the gnome-keyring via its python bindings.
 
 497 ########## Advanced settings
 
 499 # Tunnels.  There are two types:
 
 501 # - preauth: they teleport your connection to the remote system
 
 502 #   and you don't need to authenticate yourself there; the sole
 
 503 #   fact that you succeeded to get the tunnel running is enough.
 
 504 #   This tunnel type was explained above in the 'Passwords' section.
 
 506 # - transport: the just provide the transport (probably encrypted)
 
 507 #   to the IMAP server, but you still need to authenticate at the
 
 510 # Tunnels are currently working only with IMAP servers and their
 
 511 # derivatives (currently, GMail).  Additionally, for GMail accounts
 
 512 # preauth tunnel settings are ignored: we don't believe that there
 
 513 # are ways to preauthenticate at Google mail system IMAP servers.
 
 515 # You must choose at most one tunnel type, be wise M'Lord.
 
 517 # preauthtunnel = ssh -q imaphost '/usr/bin/imapd ./Maildir'
 
 518 # transporttunnel = openssl s_client -host myimap -port 993 -quiet
 
 520 # Some IMAP servers need a "reference" which often refers to the "folder
 
 521 # root".  This is most commonly needed with UW IMAP, where you might
 
 522 # need to specify the directory in which your mail is stored. The
 
 523 # 'reference' value will be prefixed to all folder paths refering to
 
 524 # that repository. E.g. accessing folder 'INBOX' with reference = Mail
 
 525 # will try to access Mail/INBOX. Note that the nametrans and
 
 526 # folderfilter functions will still apply the full path including the
 
 527 # reference prefix.  Most users will not need this.
 
 531 # In between synchronisations, OfflineIMAP can monitor mailboxes for new
 
 532 # messages using the IDLE command. If you want to enable this, specify here
 
 533 # the folders you wish to monitor. Note that the IMAP protocol requires a
 
 534 # separate connection for each folder monitored in this way, so setting
 
 535 # this option will force settings for:
 
 536 #     maxconnections - to be at least the number of folders you give
 
 537 #     holdconnectionopen - to be true
 
 538 #     keepalive - to be 29 minutes unless you specify otherwise
 
 540 # This feature isn't complete and may well have problems. See the manual
 
 543 # This option should return a Python list. For example
 
 545 # idlefolders = ['INBOX', 'INBOX.Alerts']
 
 548 # OfflineIMAP can use multiple connections to the server in order
 
 549 # to perform multiple synchronization actions simultaneously.
 
 550 # This may place a higher burden on the server.  In most cases,
 
 551 # setting this value to 2 or 3 will speed up the sync, but in some
 
 552 # cases, it may slow things down.  The safe answer is 1.  You should
 
 553 # probably never set it to a value more than 5.
 
 557 # OfflineIMAP normally closes IMAP server connections between refreshes if
 
 558 # the global option autorefresh is specified.  If you wish it to keep the
 
 559 # connection open, set this to true.  If not specified, the default is
 
 560 # false.  Keeping the connection open means a faster sync start the
 
 561 # next time and may use fewer server resources on connection, but uses
 
 562 # more server memory.  This setting has no effect if autorefresh is not set.
 
 564 #holdconnectionopen = no
 
 566 # If you want to have "keepalives" sent while waiting between syncs,
 
 567 # specify the amount of time IN SECONDS between keepalives here.  Note that
 
 568 # sometimes more than this amount of time might pass, so don't make it
 
 569 # tight.  This setting has no effect if autorefresh and holdconnectionopen
 
 574 # Normally, OfflineIMAP will expunge deleted messages from the server.
 
 575 # You can disable that if you wish.  This means that OfflineIMAP will
 
 576 # mark them deleted on the server, but not actually delete them.
 
 577 # You must use some other IMAP client to delete them if you use this
 
 578 # setting; otherwise, the messages will just pile up there forever.
 
 579 # Therefore, this setting is definitely NOT recommended.
 
 583 # Specify whether to process all mail folders on the server, or only
 
 584 # those listed as "subscribed".
 
 588 # You can specify a folder translator.  This must be a eval-able
 
 589 # Python expression that takes a foldername arg and returns the new
 
 590 # value.  I suggest a lambda.  This example below will remove "INBOX." from
 
 591 # the leading edge of folders (great for Courier IMAP users)
 
 593 # See the user documentation for details and use cases. They are also
 
 595 # http://docs.offlineimap.org/en/latest/nametrans.html
 
 597 # WARNING: you MUST construct this such that it NEVER returns
 
 598 # the same value for two folders, UNLESS the second values are
 
 599 # filtered out by folderfilter below.  Failure to follow this rule
 
 600 # will result in undefined behavior
 
 602 # nametrans = lambda foldername: re.sub('^INBOX\.', '', foldername)
 
 604 # Using Courier remotely and want to duplicate its mailbox naming
 
 607 # nametrans = lambda foldername: re.sub('^INBOX\.*', '.', foldername)
 
 609 # You can specify which folders to sync using the folderfilter
 
 610 # setting. You can provide any python function (e.g. a lambda function)
 
 611 # which will be invoked for each foldername. If the filter function
 
 612 # returns True, the folder will be synced, if it returns False, it. The
 
 613 # folderfilter operates on the *UNTRANSLATED* name (before any nametrans
 
 614 # translation takes place).
 
 616 # Example 1: synchronizing only INBOX and Sent.
 
 618 # folderfilter = lambda foldername: foldername in ['INBOX', 'Sent']
 
 620 # Example 2: synchronizing everything except Trash.
 
 622 # folderfilter = lambda foldername: foldername not in ['Trash']
 
 624 # Example 3: Using a regular expression to exclude Trash and all folders
 
 625 # containing the characters "Del".
 
 627 # folderfilter = lambda foldername: not re.search('(^Trash$|Del)', foldername)
 
 629 # If folderfilter is not specified, ALL remote folders will be
 
 632 # You can span multiple lines by indenting the others.  (Use backslashes
 
 633 # at the end when required by Python syntax)  For instance:
 
 635 # folderfilter = lambda foldername: foldername in
 
 636 #        ['INBOX', 'Sent Mail', 'Deleted Items',
 
 641 # You can specify folderincludes to include additional folders.  It
 
 642 # should return a Python list.  This might be used to include a folder
 
 643 # that was excluded by your folderfilter rule, to include a folder that
 
 644 # your server does not specify with its LIST option, or to include a
 
 645 # folder that is outside your basic reference. The 'reference' value
 
 646 # will not be prefixed to this folder name, even if you have specified
 
 648 # folderincludes = ['debian.user', 'debian.personal']
 
 651 # If you do not want to have any folders created on this repository,
 
 652 # set the createfolders variable to False, the default is True. Using
 
 653 # this feature you can e.g. disable the propagation of new folders to
 
 654 # the new repository.
 
 655 #createfolders = True
 
 658 # You can specify 'foldersort' to determine how folders are sorted.
 
 659 # This affects order of synchronization and mbnames. The expression
 
 660 # should return -1, 0, or 1, as the default Python cmp() does.  The two
 
 661 # arguments, x and y, are strings representing the names of the folders
 
 662 # to be sorted.  The sorting is applied *AFTER* nametrans, if any.  The
 
 663 # default is to sort IMAP folders alphabetically
 
 664 # (case-insensitive). Usually, you should never have to modify this.  To
 
 665 # eg. reverse the sort:
 
 667 # foldersort = lambda x, y: -cmp(x, y)
 
 669 # Enable 1-way synchronization. When setting 'readonly' to True, this
 
 670 # repository will not be modified during synchronization. Use to
 
 671 # e.g. backup an IMAP server. The readonly setting can be applied to any
 
 672 # type of Repository (Maildir, Imap, etc).