SeaMonkey:Suite Directory Layout: Difference between revisions

m
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This document describes the directory layout to be used within the suite/ directory in the mozilla.org source tree.
This document describes the directory layout to be used within the suite/ directory in the mozilla.org source tree.


'''''Do NOT change this document unless SeaMonkey Council has agreed with what you are saying!''''' You can add your comments or proposals to the [[Talk:SeaMonkey:Suite Directory Layout|Discussion]] page.
'''''Do NOT change this document unless SeaMonkey Council people have agreed with what those edits are telling!'''''
<br>You can add your comments or proposals to the [[Talk:SeaMonkey:Suite Directory Layout|Discussion]] page instead, we're glad to read your opinion there.


== Guidelines ==
== Guidelines ==


* organize things according to function, not according to "how it's built"
* organize things according to function, not according to "how it's built"
* organize locales in a way that works well for "source L10n" (even if that might not fit with the above rule)
* organize locales in a way that works well for "source L10n" (even if that might not fit with the above rule), i.e. '''all''' localizable stuff goes into mozilla/suite/locales/en-US/ directories (other locales will have the same structure of files under l10n/<ab-CD>/suite/ in the future)
* use general descriptive names for the components's directories, not "brand" names ("common" instead of "communicator", "browser" instead of "navigator", "mailnews" instead of "messenger", etc.)
* themes are kept in suite/themes/<name>/
* use general descriptive names for the components' directories, not "brand" names ("common" instead of "communicator", "browser" instead of "navigator", "mailnews" instead of "messenger", etc.)


== Example ==
== Example ==


''main repository:''
mozilla/
*suite/
*suite/
**branding/ - ''stuff used for branding the application (mainly artwork)''
**app/ - ''application startup''
**branding/ - ''common place for application branding (mainly artwork)''
**browser/
**browser/
**common/
**common/
***prefs/
***pref/
**installer/
**installer/
**locales/
***en-US/
****chrome/
*****[branding|browser|common|mailnews|...]/
****installer/
**mailnews/
**mailnews/
**themes/
***classic/
****[browser|common|mailnews|...]/
***modern/
****[browser|common|mailnews|...]/
''L10n repository:''
l10n/
*<ab-CD>/
**suite/
***chrome/
****[branding|browser|common|mailnews|...]/
***installer/
== Proposed Mailnews l10n layout ==
''Thunderbird's Layout:''
l10n/
*<ab-CD>/
**mail/
***chrome/
****messenger/
*****addressbook/
*****messengercompose/
*****migration/
*****preferences/
****messenger-mapi/
****messenger-newsblog/
****messenger-offline/
****messenger-region/
****messenger-smime/
''Proposed SeaMonkey Layout:''
l10n/
*<ab-CD>/
**suite/
***chrome/
****messenger/
*****addressbook/
*****messengercompose/
*****pref/
****messenger-mapi/
****messenger-region/
****messenger-smime/
Note: migration is elsewhere in the SeaMonkey tree.
Note: preferences renamed to pref to match suite/chrome/common/pref/
''Where to move directories to/from:''
Note that * means the files need to move to more than one directory.
To mozilla/suite/locales/en-US/chrome/messenger/:
* [http://lxr.mozilla.org/seamonkey/source/mailnews/base/resources/locale/en-US/ mozilla/mailnews/base/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/base/search/resources/locale/en-US/ mozilla/mailnews/base/search/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/extensions/mailviews/resources/locale/en-US/ mozilla/mailnews/extensions/mailviews/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/extensions/mdn/resources/locale/en-US/ mozilla/mailnews/extensions/mdn/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/imap/resources/locale/en-US/ mozilla/mailnews/imap/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/import/comm4x/resources/locale/en-US/ mozilla/mailnews/import/comm4x/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/import/eudora/resources/locale/en-US/ mozilla/mailnews/import/eudora/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/import/oexpress/resources/locale/en-us/ mozilla/mailnews/import/oexpress/resources/locale/en-us/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/import/outlook/resources/locale/en-us/ mozilla/mailnews/import/outlook/resources/locale/en-us/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/import/resources/locale/en-us/ mozilla/mailnews/import/resources/locale/en-us/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/import/text/resources/locale/en-US/ mozilla/mailnews/import/text/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/local/resources/locale/en-US/ mozilla/mailnews/local/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/mime/cthandlers/resources/ mozilla/mailnews/mime/cthandlers/resources/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/mime/resources/ mozilla/mailnews/mime/resources/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/news/resources/locale/en-US/ mozilla/mailnews/news/resources/locale/en-US/]
To mozilla/suite/locales/en-US/chrome/messenger/addressbook/:
* [http://lxr.mozilla.org/seamonkey/source/mailnews/addrbook/resources/locales/en-US/  mozilla/mailnews/addrbook/resources/locales/en-US/]
To mozilla/suite/locales/en-US/chrome/messenger/pref/:
* [http://lxr.mozilla.org/seamonkey/source/mailnews/base/prefs/resources/locale/en-US/ mozilla/mailnews/base/prefs/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/compose/prefs/resources/locale/en-US/ mozilla/mailnews/compose/prefs/resources/locale/en-US/]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/mapi/resources/locale/en-US/ mozilla/mailnews/mapi/resources/locale/en-US/]*
To mozilla/suite/locales/en-US/chrome/messenger/messengercompose/:
* [http://lxr.mozilla.org/seamonkey/source/mailnews/compose/resources/locale/en-US/ mozilla/mailnews/compose/resources/locale/en-US/]
To mozilla/suite/locales/en-US/chrome/messenger-offline/:
* [http://lxr.mozilla.org/seamonkey/source/mailnews/extensions/offline-startup/resources/locale/en-US/ mozilla/mailnews/extensions/offline-startup/resources/locale/en-US/]
To mozilla/suite/locales/en-US/chrome/messenger-smime/:
* [http://lxr.moziila.org/seamonkey/source/mailnews/extensions/smime/resources/locale/en-US/ mozilla/mailnews/extensions/smime/resources/locale/en-US/]
To mozilla/suite/locales/en-US/chrome/messenger-mapi/:
* [http://lxr.mozilla.org/seamonkey/source/mailnews/mapi/resources/locale/en-US/ mozilla/mailnews/mapi/resources/locale/en-US/]*
''relevant jar.mn files (containing locale information):''
* [http://lxr.mozilla.org/seamonkey/source/mailnews/jar.mn mozilla/mailnews/jar.mn]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/extensions/mdn/jar.mn mozilla/mailnews/extensions/mdn/jar.mn]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/extensions/mailviews/jar.mn mozilla/mailnews/extensions/mailviews/jar.mn]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/extensions/offline-startup/jar.mn mozilla/mailnews/extensions/offline-startup/jar.mn]
* [http://lxr.mozilla.org/seamonkey/source/mailnews/extensions/smime/jar.mn mozilla/mailnews/extensions/smime/jar.mn]


== IRC discussion snippets ==
== IRC discussion snippets ==


[2006-01-17 07:00 PST] - topic: suite/ organization
=== [2007-01-12 13:39 PST] - topic: mailnews locale organization in suite ===
<br><KaiRo> Standard8Away: btw, as we usually have only one or two files there, we tend not to do a separate *-region in suite/
<br><KaiRo> phew, locale/en-US/messenger/ in en-US.jar really has all the files of the different dirs merged, (almost) no subdirs? wow...
<br><NeilZZZ> KaiRo: my memory is that addressbook and messengercompose have their own subdirs, but everything else is in that dir
<br><KaiRo> NeilZZZ: yes, that's what I'm seeing... which means that we probably need/want(?) to mirror that in the new structure in suite/locales/
<br><KaiRo> hmm, even pref panels are directly in mailnews/
<br><NeilZZZ> well, there are two things to consider
<br><NeilZZZ> 1) we could reorganise mailnews under suite but in jar.mn it would still be mapped to the original locations
<br><NeilZZZ> 2) we could then reorganise messenger.jar with the new locations
<br><NeilZZZ> but we could only do that for forked files
<br><KaiRo> hmm, true, we could reorganize in the source tree, but as you said, matching chrome structure to that would be a good idea, and that's hard because of shared files
<br><KaiRo> though somehow I start thinking that it might be a good idea to think of forking the whole mailnews UI and make mozilla/mailnews/ only have backend code in the long term
<br><KaiRo> NeilZZZ: it might be safe and perhaps a good idea in any case to move pref panels the way you describe, like Standard8Away proposes in his doc
<br><KaiRo> just not sure if it's correct/good to move the MAPI one there as well
<br><KaiRo> wait, that's not even a panel, that's just an overlay
 
=== [2006-01-17 07:00 PST] - topic: suite/ organization ===
<br><KaiRo> bsmedberg: you seemed to have a preety good image in mind when discusssing some "move to suite/" stuff a few months back... now that plans are getting more concrete on our side, can you give us some good rules to follow for the directory structure, so that we are a "good citizen" in your eyes?
<br><KaiRo> bsmedberg: you seemed to have a preety good image in mind when discusssing some "move to suite/" stuff a few months back... now that plans are getting more concrete on our side, can you give us some good rules to follow for the directory structure, so that we are a "good citizen" in your eyes?
<br><bsmedberg> KaiRo: organize things according to function, not according to "how it's built"
<br><bsmedberg> KaiRo: organize things according to function, not according to "how it's built"
Line 51: Line 185:
<br><bsmedberg> 3) have dir/classic and dir/modern
<br><bsmedberg> 3) have dir/classic and dir/modern
<br><bsmedberg> 2) is probably best
<br><bsmedberg> 2) is probably best
[[category:SeaMonkey|s]]
213

edits