M2 Resources

Attribution line Syntax

When you start using M2, you will probably want to change the attribution line format. The syntax is a bit extended from Opera6, and this is a quick description of the possibilities:

E-mail related:
%n - name
%e - e-mail
%f - name & e-mail
Time related:
%a - Abbreviated weekday name
%A - Full weekday name
%b - Abbreviated month name
%B - Full month name
%c - Date and time representation appropriate for locale
%d - Day of month as decimal number (01 - 31)
%H - Hour in 24-hour format (00 - 23)
%I - Hour in 12-hour format (01 - 12)
%j - Day of year as decimal number (001 - 366)
%m - Month as decimal number (01 - 12)
%M - Minute as decimal number (00 - 59)
%p - Current local A.M./P.M. indicator for 12-hour clock
%S - Second as decimal number (00 - 59)
%U - Week of year as decimal number, with Sunday as first day of week (00 - 53)
%w - Weekday as decimal number (0 - 6; Sunday is 0)
%W - Week of year as decimal number, with Monday as first day of week (00 - 53)
%x - Date representation for current locale
%X - Time representation for current locale
%y - Year without century, as decimal number (00 - 99)
%Y - Year with century, as decimal number
%z - Time-zone name
%Z - Time-zone abbreviation
News-related:
%g - newsgroups
Character-related:
%% - %
Direct access to headers
%:Headername: (ex "Using %:useragent:, %n wrote:")

M2 File Structure

A note of warning is justified about M2's filestructure. It is adviced to only edit the accounts.ini file manually because editing other files may mess up M2's internal indexing system.

My thanks to Opera Developer Johan Borg for explaining the function of the files!

Directory Listing

Cache
This directory contains hfcache#.hca files and hpcache#.hca files. They can only be opened when Opera is closed. "hf" stands for Header File, while "hp" is Header Pointer. These files are independent of the accounts, and one pair is created per 10.000 received messages. The hp files contain 12 bytes per message and basically point to the correct position of the header information for a given message in the hf files. This allows us to have variable sized header formation (among other things). The hf files also keep track of where the message bodies are stored (.mbs).
Index
This directory is filled with a lot of .idx files which only contain pointers (unique IDs) to messages in the header cache. That way M2 can quickly locate the mails belonging to the accesspoints.
Storage
This is where the e-mails are actually stored. They are stored in .mbs files. Unlike other e-mail clients, such as Outlook Express, M2 does not store its messages on a per-folder basis. There are many mbox files which are roughly a maximum of 1MB of size. There are larger ones, but they contain large attachments and such. When the mbox files contain a lot of unused space, they are automatically compressed above a wastage of 25%.
Signature#.txt
This contains the signature belonging to account #. You can edit them here manually of course.
<newsserver>.newsrc
This file contains the newsgroup listing on a server.
msgidcache.dat
For POP accounts, msgidcache.dat and msgidcache.recent will only be used for threading. For NNTP, they store each message-id to prevent duplicate downloads. Msgidcache.recent is merged with msgidcache.dat when Opera is closed, so if there's a crash, msgidcache.recent will be merged during the next clean exit. Msgidcache.recent is used for new messages ids seen during a session.
m2.dat
This file contains some administrative info, in particular the next unique ID of new messages.
index.ini
Here the accesspoints and their properties are stored, for instance which .idx file to associate with a certain Active Thread.
incoming#.txt
This file contains protocol-specific information about account #. For POP that means the list of e-mails on the server.
accounts.ini
The preferences file for M2, which can be manually edited as described in the Advanced Tweakery section .