X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=doc%2Fdevel-notes.txt;h=7d238d15c12c22df4c79eb97c9e6fcb887e7257e;hp=85b3b7e36cbcd87e9d443ad64c60a047a7e661b6;hb=c598d6a40f47fba9400589a84ae5573d1a9f74ef;hpb=b1b9961ff1c305dff57f547d28cb509bf007bad7 diff --git a/doc/devel-notes.txt b/doc/devel-notes.txt index 85b3b7e..7d238d1 100644 --- a/doc/devel-notes.txt +++ b/doc/devel-notes.txt @@ -1,13 +1,8 @@ -Subject: Developers' notes -From: Thomas Roessler -Date: Tue, 9 May 2000 19:48:08 +0200 - - Required tools -------------- -If you are planning to hack on mutt-ng, please subscribe to the -mutt-dev mailinglist (mutt-ng-deve-@lists.berlios.de). +If you are planning to hack on Mutt-ng, please subscribe to the +Mutt-ng-devel mailinglist (mutt-ng-deve-l@lists.berlios.de). Announcements about recent development versions go to that mailing list, as go technical discussions and patches. @@ -57,25 +52,26 @@ You'll need several GNU development utilities for working on mutt-ng: - GNU make may be needed for the dependency tricks -Getting started from CVS +Getting started from SVN ------------------------ -Once you've checked out a copy of the source from CVS, you'll need to -run the script called 'prepare' that is in the root directory. The -script does all the automake/autoconf magic that needs to be done with -a fresh checkout. +Once you've checked out a copy of the source from SVN from +svn.berlios.de/svnroot/repos/mutt-ng , you'll need to run the script +called 'autogen.sh' that is in the root directory. The script does all the +automake/autoconf magic that needs to be done with a fresh checkout. If +all steps succeed, you'll have a configure script to start off with. A word about warnings --------------------- -Mutt's default build process sets some pretty restrictive compiler +Mutt-ng's default build process sets some pretty restrictive compiler flags which may lead to lots of warnings. Generally, warnings are something which should be eliminated. Nevertheless, the code in intl/ is said to generate some warnings with the compiler settings we usually rely upon. This code is not -maintained by the mutt-ng developpers, so please redirect any comments to +maintained by the Mutt-ng developpers, so please redirect any comments to the GNU gettext library's developpers. @@ -99,7 +95,7 @@ Style Guide - when adding new options, make the old behaviour the default. -- try to keep mutt-ng as portable as possible. +- try to keep Mutt-ng as portable as possible. - do not use C++-style comments (i.e. "// Comment") @@ -119,8 +115,9 @@ Configuration _variables_ are documented directly in init.h. Note that this includes documentation for possibly added format flags! When adding variables which depend on system-functionality and/or -./configure switches, you have to add additional availability -information to avoid confusion in the manual. +./configure switches, you have to add additional "availability" +information to init.h to avoid confusion in the manual. Please see +init.h for examples. The parts of The Manual and the muttngrc manual page dealing with these variables, and the global Muttrc, are generated automatically @@ -143,6 +140,8 @@ similar to [ntg]roff: - \fB switches to boldface + - \fT switches to typewriter (only for SGML and ignored otherwise) + - \fP switches to normal display - \(as can be used to represent an asterisk (*). This is intended @@ -180,4 +179,18 @@ similar to [ntg]roff: Do _not_ use any other SGML or nroff formatting instructions here! -$Id: devel-notes.txt,v 3.0 2002/01/24 13:35:07 roessler Exp $ + +String comparison +----------------- + +A word of warning about string comparisons: Since Mutt-ng may run in a +huge variety of locales, case-insensitive string comparisons and +case conversions may be dangerous. For instance, in iso-8859-9, +tolower('I') is DIFFERENT from 'i' - it's indeed the Turkish dotless +lowercase i. + +For this reason, always use the ascii_* functions defined in ascii.h +and implemented in ascii.c when comparing or handling strings which +are defined as us-ascii. This concerns lots of text-based +protocols, message header tags, character set names, domain names, +e-mail addresses, etc.