diff --git a/MMAppController.m b/MMAppController.m index cc28797b9d..cec158df21 100644 --- a/MMAppController.m +++ b/MMAppController.m @@ -34,6 +34,7 @@ static NSTimeInterval MMTerminateTimeout = 3; @interface MMAppController (Private) - (MMVimController *)keyVimController; - (MMVimController *)topmostVimController; ++ (void)loadFonts; @end @interface NSMenu (MMExtras) @@ -67,6 +68,8 @@ static NSTimeInterval MMTerminateTimeout = 3; NSArray *types = [NSArray arrayWithObject:NSStringPboardType]; [NSApp registerServicesMenuSendTypes:types returnTypes:types]; + + [self loadFonts]; } - (id)init @@ -545,6 +548,28 @@ static NSTimeInterval MMTerminateTimeout = 3; return nil; } ++ (void)loadFonts +{ + // This loads all fonts from the Resources folder. + // (Code taken from cocoadev.com) + NSString *fontsFolder; + if (fontsFolder = [[NSBundle mainBundle] resourcePath]) { + NSURL *fontsURL; + if (fontsURL = [NSURL fileURLWithPath:fontsFolder]) { + FSRef fsRef; + FSSpec fsSpec; + CFURLGetFSRef((CFURLRef)fontsURL, &fsRef); + + if (FSGetCatalogInfo(&fsRef, kFSCatInfoNone, NULL, NULL, &fsSpec, + NULL) == noErr) { + ATSFontActivateFromFileSpecification(&fsSpec, + kATSFontContextGlobal, kATSFontFormatUnspecified, NULL, + kATSOptionFlagsDefault, NULL); + } + } + } +} + @end diff --git a/MMBackend.m b/MMBackend.m index 9459fda341..40f68a2506 100644 --- a/MMBackend.m +++ b/MMBackend.m @@ -21,6 +21,10 @@ static float MMFlushTimeoutInterval = 0.1f; static unsigned MMServerMax = 1000; //static NSTimeInterval MMEvaluateExpressionTimeout = 3; +// NOTE: The Bitstream Vera font is bundled with the application and loaded +// during initialization of MMAppController. +static NSString *MMDefaultFontName = @"Bitstream Vera Sans Mono"; +static float MMDefaultFontSize = 12.0f; // TODO: Move to separate file. static int eventModifierFlagsToVimModMask(int modifierFlags); @@ -757,8 +761,8 @@ enum { - (BOOL)setFontWithName:(char *)name { - NSString *fontName; - float size = 0.0f; + NSString *fontName = MMDefaultFontName; + float size = MMDefaultFontSize; BOOL parseFailed = NO; if (name) { @@ -787,8 +791,6 @@ enum { } else if ([components count] > 2) { parseFailed = YES; } - } else { - fontName = [[NSFont userFixedPitchFontOfSize:0] displayName]; } if (!parseFailed && [fontName length] > 0) { diff --git a/MacVim.xcodeproj/project.pbxproj b/MacVim.xcodeproj/project.pbxproj index 8af061e6f2..a7251aebc0 100644 --- a/MacVim.xcodeproj/project.pbxproj +++ b/MacVim.xcodeproj/project.pbxproj @@ -35,6 +35,10 @@ 1DD704310BA9F9C2008679E9 /* SpecialKeys.plist in Resources */ = {isa = PBXBuildFile; fileRef = 1DD704300BA9F9C2008679E9 /* SpecialKeys.plist */; }; 1DD9F5E50C85D60500E8D5A5 /* SystemColors.plist in Resources */ = {isa = PBXBuildFile; fileRef = 1DD9F5E40C85D60500E8D5A5 /* SystemColors.plist */; }; 1DDBEB6D0C7434150036EEDD /* EmptyWindow.nib in Resources */ = {isa = PBXBuildFile; fileRef = 1DDBEB6B0C7434150036EEDD /* EmptyWindow.nib */; }; + 1DE5F2520CA5B0B8005A40E4 /* VeraMoBd.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1DE5F24E0CA5B0B8005A40E4 /* VeraMoBd.ttf */; }; + 1DE5F2530CA5B0B8005A40E4 /* VeraMoBI.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1DE5F24F0CA5B0B8005A40E4 /* VeraMoBI.ttf */; }; + 1DE5F2540CA5B0B8005A40E4 /* VeraMoIt.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1DE5F2500CA5B0B8005A40E4 /* VeraMoIt.ttf */; }; + 1DE5F2550CA5B0B8005A40E4 /* VeraMono.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1DE5F2510CA5B0B8005A40E4 /* VeraMono.ttf */; }; 1DE608B40C587FDA0055263D /* runtime in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1DE602470C587FD10055263D /* runtime */; }; 1DE8CC620C5E2AAD003F56E3 /* Actions.plist in Resources */ = {isa = PBXBuildFile; fileRef = 1DE8CC610C5E2AAD003F56E3 /* Actions.plist */; }; 1DED78600C6DE43D0079945F /* vimrc in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1DED785F0C6DE43D0079945F /* vimrc */; }; @@ -158,6 +162,10 @@ 1DD704300BA9F9C2008679E9 /* SpecialKeys.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = SpecialKeys.plist; sourceTree = ""; }; 1DD9F5E40C85D60500E8D5A5 /* SystemColors.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = SystemColors.plist; sourceTree = ""; }; 1DDBEB6C0C7434150036EEDD /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/EmptyWindow.nib; sourceTree = ""; }; + 1DE5F24E0CA5B0B8005A40E4 /* VeraMoBd.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = VeraMoBd.ttf; path = "ttf-bitstream-vera-1.10/VeraMoBd.ttf"; sourceTree = ""; }; + 1DE5F24F0CA5B0B8005A40E4 /* VeraMoBI.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = VeraMoBI.ttf; path = "ttf-bitstream-vera-1.10/VeraMoBI.ttf"; sourceTree = ""; }; + 1DE5F2500CA5B0B8005A40E4 /* VeraMoIt.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = VeraMoIt.ttf; path = "ttf-bitstream-vera-1.10/VeraMoIt.ttf"; sourceTree = ""; }; + 1DE5F2510CA5B0B8005A40E4 /* VeraMono.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = VeraMono.ttf; path = "ttf-bitstream-vera-1.10/VeraMono.ttf"; sourceTree = ""; }; 1DE602470C587FD10055263D /* runtime */ = {isa = PBXFileReference; lastKnownFileType = folder; name = runtime; path = ../../runtime; sourceTree = SOURCE_ROOT; }; 1DE8CC610C5E2AAD003F56E3 /* Actions.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Actions.plist; sourceTree = ""; }; 1DED785F0C6DE43D0079945F /* vimrc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = vimrc; sourceTree = ""; }; @@ -344,6 +352,10 @@ 29B97317FDCFA39411CA2CEA /* Resources */ = { isa = PBXGroup; children = ( + 1DE5F24E0CA5B0B8005A40E4 /* VeraMoBd.ttf */, + 1DE5F24F0CA5B0B8005A40E4 /* VeraMoBI.ttf */, + 1DE5F2500CA5B0B8005A40E4 /* VeraMoIt.ttf */, + 1DE5F2510CA5B0B8005A40E4 /* VeraMono.ttf */, 1DD9F5E40C85D60500E8D5A5 /* SystemColors.plist */, 1DE8CC610C5E2AAD003F56E3 /* Actions.plist */, 1DD04DEB0C529C5E006CDC2B /* Credits.rtf */, @@ -471,6 +483,10 @@ 1DE8CC620C5E2AAD003F56E3 /* Actions.plist in Resources */, 1DDBEB6D0C7434150036EEDD /* EmptyWindow.nib in Resources */, 1DD9F5E50C85D60500E8D5A5 /* SystemColors.plist in Resources */, + 1DE5F2520CA5B0B8005A40E4 /* VeraMoBd.ttf in Resources */, + 1DE5F2530CA5B0B8005A40E4 /* VeraMoBI.ttf in Resources */, + 1DE5F2540CA5B0B8005A40E4 /* VeraMoIt.ttf in Resources */, + 1DE5F2550CA5B0B8005A40E4 /* VeraMono.ttf in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/MacVim.xcodeproj/winckler.mode1 b/MacVim.xcodeproj/winckler.mode1 index d134bd811e..5c10634098 100644 --- a/MacVim.xcodeproj/winckler.mode1 +++ b/MacVim.xcodeproj/winckler.mode1 @@ -368,9 +368,9 @@ TableOfContents - 1DD9F5E60C85D61F00E8D5A5 + 1D50F01D0CA5B246007DB9E5 1CE0B1FE06471DED0097A5F4 - 1DD9F5E70C85D61F00E8D5A5 + 1D50F01E0CA5B246007DB9E5 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -504,6 +504,8 @@ 5 WindowOrderList + 1C0AD2B3069F1EA900FABCE6 + 1D16B9EF0BA33E3800A69B33 /Users/winckler/Projects/vim7/src/MacVim/MacVim.xcodeproj WindowString @@ -528,7 +530,7 @@ PBXProjectModuleGUID 1CD0528F0623707200166675 PBXProjectModuleLabel - MMApplication.m + StatusBarVisibility @@ -586,7 +588,7 @@ TableOfContents 1D16B9EF0BA33E3800A69B33 - 1DD66EA90C802F9300EBDAB3 + 1D50F01F0CA5B246007DB9E5 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID @@ -628,8 +630,8 @@ yes sizes - {{0, 0}, {378, 339}} - {{378, 0}, {646, 339}} + {{0, 0}, {376, 339}} + {{376, 0}, {648, 339}} VerticalSplitView @@ -692,14 +694,14 @@ TableOfContents 1CD10A99069EF8BA00B06720 - 1DD66EAA0C802F9300EBDAB3 + 1DDA37E50C9F02BF00CE9A67 1C162984064C10D400B95A72 - 1DD66EAB0C802F9300EBDAB3 - 1DD66EAC0C802F9300EBDAB3 - 1DD66EAD0C802F9300EBDAB3 - 1DD66EAE0C802F9300EBDAB3 - 1DD66EAF0C802F9300EBDAB3 - 1DD66EB00C802F9300EBDAB3 + 1DDA37E60C9F02BF00CE9A67 + 1DDA37E70C9F02BF00CE9A67 + 1DDA37E80C9F02BF00CE9A67 + 1DDA37E90C9F02BF00CE9A67 + 1DDA37EA0C9F02BF00CE9A67 + 1DDA37EB0C9F02BF00CE9A67 ToolbarConfiguration xcode.toolbar.config.debug @@ -863,7 +865,7 @@ TableOfContents 1DE444730BA4445100C4C77A - 1DD66EB10C802F9300EBDAB3 + 1DDA37EC0C9F02BF00CE9A67 1C78EAAC065D492600B07095 WindowString @@ -958,9 +960,9 @@ TableOfContents 1C0AD2B3069F1EA900FABCE6 - 1DD66EDD0C803D7000EBDAB3 + 1D50F0200CA5B246007DB9E5 1CD0528B0623707200166675 - 1DD66EDE0C803D7000EBDAB3 + 1D50F0210CA5B246007DB9E5 ToolbarConfiguration xcode.toolbar.config.run diff --git a/MacVim.xcodeproj/winckler.pbxuser b/MacVim.xcodeproj/winckler.pbxuser index d065e0b1a3..18d6f6becf 100644 --- a/MacVim.xcodeproj/winckler.pbxuser +++ b/MacVim.xcodeproj/winckler.pbxuser @@ -49,17 +49,17 @@ }; 1D1474AE0C5678370038FA2B /* MMTextView.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {781, 11504}}"; - sepNavSelRange = "{18031, 7}"; - sepNavVisRect = "{{0, 9245}, {781, 608}}"; + sepNavIntBoundsRect = "{{0, 0}, {795, 15040}}"; + sepNavSelRange = "{31183, 0}"; + sepNavVisRect = "{{0, 343}, {795, 162}}"; sepNavWindowFrame = "{{15, 4}, {820, 737}}"; }; }; 1D1474B40C56796D0038FA2B /* MMVimController.m */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1637, 19840}}"; - sepNavSelRange = "{42712, 0}"; - sepNavVisRect = "{{0, 13527}, {795, 162}}"; + sepNavIntBoundsRect = "{{0, 0}, {1637, 20752}}"; + sepNavSelRange = "{7708, 0}"; + sepNavVisRect = "{{0, 4063}, {983, 274}}"; sepNavWindowFrame = "{{15, 4}, {820, 737}}"; }; }; @@ -222,7 +222,7 @@ delayBeforeContinue = 0; hitCount = 1; location = AppKit; - modificationTime = 209732042.802391; + modificationTime = 211747499.23789; state = 2; symbolName = "[NSView performKeyEquivalent:]"; }; @@ -235,7 +235,7 @@ delayBeforeContinue = 0; hitCount = 1; location = Foundation; - modificationTime = 209732047.262262; + modificationTime = 211747504.632111; state = 1; symbolName = "-[_NSZombie methodSignatureForSelector:]"; }; @@ -248,7 +248,7 @@ delayBeforeContinue = 0; hitCount = 1; location = Foundation; - modificationTime = 209732047.175895; + modificationTime = 211747504.576004; state = 1; symbolName = "[NSException raise]"; }; @@ -264,7 +264,7 @@ hitCount = 1; lineNumber = 594; location = MacVim; - modificationTime = 209732042.795645; + modificationTime = 211747499.23754; state = 2; }; 1DD66EB70C80301100EBDAB3 /* MMTextView.m:172 */ = { @@ -276,10 +276,10 @@ delayBeforeContinue = 0; fileReference = 1D1474AE0C5678370038FA2B /* MMTextView.m */; functionName = "-performKeyEquivalent:"; - hitCount = 3; + hitCount = 1; lineNumber = 172; location = MacVim; - modificationTime = 209732165.15915; + modificationTime = 211747499.237583; state = 2; }; 1DD66ECC0C803D3600EBDAB3 /* MMApplication.m */ = { @@ -438,8 +438,8 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 210097639; - PBXWorkspaceStateSaveDate = 210097639; + PBXPerProjectTemplateStateSaveDate = 212185620; + PBXWorkspaceStateSaveDate = 212185620; }; sourceControlManager = 1D16B9DD0BA33BB000A69B33 /* Source Control */; userBuildSettings = { diff --git a/ttf-bitstream-vera-1.10/COPYRIGHT.TXT b/ttf-bitstream-vera-1.10/COPYRIGHT.TXT new file mode 100644 index 0000000000..e651be1c4f --- /dev/null +++ b/ttf-bitstream-vera-1.10/COPYRIGHT.TXT @@ -0,0 +1,124 @@ +Bitstream Vera Fonts Copyright + +The fonts have a generous copyright, allowing derivative works (as +long as "Bitstream" or "Vera" are not in the names), and full +redistribution (so long as they are not *sold* by themselves). They +can be be bundled, redistributed and sold with any software. + +The fonts are distributed under the following copyright: + +Copyright +========= + +Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream +Vera is a trademark of Bitstream, Inc. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the fonts accompanying this license ("Fonts") and associated +documentation files (the "Font Software"), to reproduce and distribute +the Font Software, including without limitation the rights to use, +copy, merge, publish, distribute, and/or sell copies of the Font +Software, and to permit persons to whom the Font Software is furnished +to do so, subject to the following conditions: + +The above copyright and trademark notices and this permission notice +shall be included in all copies of one or more of the Font Software +typefaces. + +The Font Software may be modified, altered, or added to, and in +particular the designs of glyphs or characters in the Fonts may be +modified and additional glyphs or characters may be added to the +Fonts, only if the fonts are renamed to names not containing either +the words "Bitstream" or the word "Vera". + +This License becomes null and void to the extent applicable to Fonts +or Font Software that has been modified and is distributed under the +"Bitstream Vera" names. + +The Font Software may be sold as part of a larger software package but +no copy of one or more of the Font Software typefaces may be sold by +itself. + +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL +BITSTREAM OR THE GNOME FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, +OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT +SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. + +Except as contained in this notice, the names of Gnome, the Gnome +Foundation, and Bitstream Inc., shall not be used in advertising or +otherwise to promote the sale, use or other dealings in this Font +Software without prior written authorization from the Gnome Foundation +or Bitstream Inc., respectively. For further information, contact: +fonts at gnome dot org. + +Copyright FAQ +============= + + 1. I don't understand the resale restriction... What gives? + + Bitstream is giving away these fonts, but wishes to ensure its + competitors can't just drop the fonts as is into a font sale system + and sell them as is. It seems fair that if Bitstream can't make money + from the Bitstream Vera fonts, their competitors should not be able to + do so either. You can sell the fonts as part of any software package, + however. + + 2. I want to package these fonts separately for distribution and + sale as part of a larger software package or system. Can I do so? + + Yes. A RPM or Debian package is a "larger software package" to begin + with, and you aren't selling them independently by themselves. + See 1. above. + + 3. Are derivative works allowed? + Yes! + + 4. Can I change or add to the font(s)? + Yes, but you must change the name(s) of the font(s). + + 5. Under what terms are derivative works allowed? + + You must change the name(s) of the fonts. This is to ensure the + quality of the fonts, both to protect Bitstream and Gnome. We want to + ensure that if an application has opened a font specifically of these + names, it gets what it expects (though of course, using fontconfig, + substitutions could still could have occurred during font + opening). You must include the Bitstream copyright. Additional + copyrights can be added, as per copyright law. Happy Font Hacking! + + 6. If I have improvements for Bitstream Vera, is it possible they might get + adopted in future versions? + + Yes. The contract between the Gnome Foundation and Bitstream has + provisions for working with Bitstream to ensure quality additions to + the Bitstream Vera font family. Please contact us if you have such + additions. Note, that in general, we will want such additions for the + entire family, not just a single font, and that you'll have to keep + both Gnome and Jim Lyles, Vera's designer, happy! To make sense to add + glyphs to the font, they must be stylistically in keeping with Vera's + design. Vera cannot become a "ransom note" font. Jim Lyles will be + providing a document describing the design elements used in Vera, as a + guide and aid for people interested in contributing to Vera. + + 7. I want to sell a software package that uses these fonts: Can I do so? + + Sure. Bundle the fonts with your software and sell your software + with the fonts. That is the intent of the copyright. + + 8. If applications have built the names "Bitstream Vera" into them, + can I override this somehow to use fonts of my choosing? + + This depends on exact details of the software. Most open source + systems and software (e.g., Gnome, KDE, etc.) are now converting to + use fontconfig (see www.fontconfig.org) to handle font configuration, + selection and substitution; it has provisions for overriding font + names and subsituting alternatives. An example is provided by the + supplied local.conf file, which chooses the family Bitstream Vera for + "sans", "serif" and "monospace". Other software (e.g., the XFree86 + core server) has other mechanisms for font substitution. + diff --git a/ttf-bitstream-vera-1.10/README.TXT b/ttf-bitstream-vera-1.10/README.TXT new file mode 100644 index 0000000000..0f71795a7c --- /dev/null +++ b/ttf-bitstream-vera-1.10/README.TXT @@ -0,0 +1,11 @@ +Contained herin is the Bitstream Vera font family. + +The Copyright information is found in the COPYRIGHT.TXT file (along +with being incoporated into the fonts themselves). + +The releases notes are found in the file "RELEASENOTES.TXT". + +We hope you enjoy Vera! + + Bitstream, Inc. + The Gnome Project diff --git a/ttf-bitstream-vera-1.10/RELEASENOTES.TXT b/ttf-bitstream-vera-1.10/RELEASENOTES.TXT new file mode 100644 index 0000000000..270bc0d409 --- /dev/null +++ b/ttf-bitstream-vera-1.10/RELEASENOTES.TXT @@ -0,0 +1,162 @@ +Bitstream Vera Fonts - April 16, 2003 +===================================== + +The version number of these fonts is 1.10 to distinguish them from the +beta test fonts. + +Note that the Vera copyright is incorporated in the fonts themselves. +The License field in the fonts contains the copyright license as it +appears below. The TrueType copyright field is not large enough to +contain the full license, so the license is incorporated (as you might +think if you thought about it) into the license field, which +unfortunately can be obscure to find. (In pfaedit, see: Element->Font +Info->TTFNames->License). + +Our apologies for it taking longer to complete the fonts than planned. +Beta testers requested a tighter line spacing (less leading) and Jim +Lyles redesigned Vera's accents to bring its line spacing to more +typical of other fonts. This took additional time and effort. Our +thanks to Jim for this effort above and beyond the call of duty. + +There are four monospace and sans faces (normal, oblique, bold, bold +oblique) and two serif faces (normal and bold). Fontconfig/Xft2 (see +www.fontconfig.org) can artificially oblique the serif faces for you: +this loses hinting and distorts the faces slightly, but is visibly +different than normal and bold, and reasonably pleasing. + +On systems with fontconfig 2.0 or 2.1 installed, making your sans, +serif and monospace fonts default to these fonts is very easy. Just +drop the file local.conf into your /etc/fonts directory. This will +make the Bitstream fonts your default fonts for all applications using +fontconfig (if sans, serif, or monospace names are used, as they often +are as default values in many desktops). The XML in local.conf may +need modification to enable subpixel decimation, if appropriate, +however, the commented out phrase does so for XFree86 4.3, in the case +that the server does not have sufficient information to identify the +use of a flat panel. Fontconfig 2.2 adds Vera to the list of font +families and will, by default use it as the default sans, serif and +monospace fonts. + +During the testing of the final Vera fonts, we learned that screen +fonts in general are only typically hinted to work correctly at +integer pixel sizes. Vera is coded internally for integer sizes only. +We need to investigate further to see if there are commonly used fonts +that are hinted to be rounded but are not rounded to integer sizes due +to oversights in their coding. + +Most fonts work best at 8 pixels and below if anti-aliased only, as +the amount of work required to hint well at smaller and smaller sizes +becomes astronomical. GASP tables are typically used to control +whether hinting is used or not, but Freetype/Xft does not currently +support GASP tables (which are present in Vera). + +To mitigate this problem, both for Vera and other fonts, there will be +(very shortly) a new fontconfig 2.2 release that will, by default not +apply hints if the size is below 8 pixels. if you should have a font +that in fact has been hinted more agressively, you can use fontconfig +to note this exception. We believe this should improve many hinted +fonts in addition to Vera, though implemeting GASP support is likely +the right long term solution. + +Font rendering in Gnome or KDE is the combination of algorithms in +Xft2 and Freetype, along with hinting in the fonts themselves. It is +vital to have sufficient information to disentangle problems that you +may observe. + +Note that having your font rendering system set up correctly is vital +to proper judgement of problems of the fonts: + + * Freetype may or may not be configured to in ways that may + implement execution of possibly patented (in some parts of the world) + TrueType hinting algorithms, particularly at small sizes. Best + results are obtained while using these algorithms. + + * The freetype autohinter (used when the possibly patented + algorithms are not used) continues to improve with each release. If + you are using the autohinter, please ensure you are using an up to + date version of freetype before reporting problems. + + * Please identify what version of freetype you are using in any + bug reports, and how your freetype is configured. + + * Make sure you are not using the freetype version included in + XFree86 4.3, as it has bugs that significantly degrade most fonts, + including Vera. if you build XFree86 4.3 from source yourself, you may + have installed this broken version without intending it (as I + did). Vera was verified with the recently released Freetype 2.1.4. On + many systems, 'ldd" can be used to see which freetype shared library + is actually being used. + + * Xft/X Render does not (yet) implement gamma correction. This + causes significant problems rendering white text on a black background + (causing partial pixels to be insufficiently shaded) if the gamma of + your monitor has not been compensated for, and minor problems with + black text on a while background. The program "xgamma" can be used to + set a gamma correction value in the X server's color pallette. Most + monitors have a gamma near 2. + + * Note that the Vera family uses minimal delta hinting. Your + results on other systems when not used anti-aliased may not be + entirely satisfying. We are primarily interested in reports of + problems on open source systems implementing Xft2/fontconfig/freetype + (which implements antialiasing and hinting adjustements, and + sophisticated subpixel decimation on flatpanels). Also, the + algorithms used by Xft2 adjust the hints to integer widths and the + results are crisper on open source systems than on Windows or + MacIntosh. + + * Your fontconfig may (probably does) predate the release of + fontconfig 2.2, and you may see artifacts not present when the font is + used at very small sizes with hinting enabled. "vc-list -V" can be + used to see what version you have installed. + +We believe and hope that these fonts will resolve the problems +reported during beta test. The largest change is the reduction of +leading (interline spacing), which had annoyed a number of people, and +reduced Vera's utility for some applcations. The Vera monospace font +should also now make '0' and 'O' and '1' and 'l' more clearly +distinguishable. + +The version of these fonts is version 1.10. Fontconfig should be +choosing the new version of the fonts if both the released fonts and +beta test fonts are installed (though please discard them: they have +names of form tt20[1-12]gn.ttf). Note that older versions of +fontconfig sometimes did not rebuild their cache correctly when new +fonts are installed: please upgrade to fontconfig 2.2. "fc-cache -f" +can be used to force rebuilding fontconfig's cache files. + +If you note problems, please send them to fonts at gnome dot org, with +exactly which face and size and unicode point you observe the problem +at. The xfd utility from XFree86 CVS may be useful for this (e.g. "xfd +-fa sans"). A possibly more useful program to examine fonts at a +variety of sizes is the "waterfall" program found in Keith Packard's +CVS. + + $ cvs -d :pserver:anoncvs@keithp.com:/local/src/CVS login + Logging in to :pserver:anoncvs@keithp.com:2401/local/src/CVS + CVS password: + $ cvs -d :pserver:anoncvs@keithp.com:/local/src/CVS co waterfall + $ cd waterfall + $ xmkmf -a + $ make + # make install + # make install.man + +Again, please make sure you are running an up-to-date freetype, and +that you are only examining integer sizes. + +Reporting Problems +================== + +Please send problem reports to fonts at gnome org, with the following +information: + + 1. Version of Freetype, Xft2 and fontconfig + 2. Whether TT hinting is being used, or the autohinter + 3. Application being used + 4. Character/Unicode code point that has problems (if applicable) + 5. Version of which operating system + 6. Please include a screenshot, when possible. + +Please check the fonts list archives before reporting problems to cut +down on duplication. diff --git a/ttf-bitstream-vera-1.10/VeraMoBI.ttf b/ttf-bitstream-vera-1.10/VeraMoBI.ttf new file mode 100644 index 0000000000..8624542ed2 Binary files /dev/null and b/ttf-bitstream-vera-1.10/VeraMoBI.ttf differ diff --git a/ttf-bitstream-vera-1.10/VeraMoBd.ttf b/ttf-bitstream-vera-1.10/VeraMoBd.ttf new file mode 100644 index 0000000000..9be6547ed6 Binary files /dev/null and b/ttf-bitstream-vera-1.10/VeraMoBd.ttf differ diff --git a/ttf-bitstream-vera-1.10/VeraMoIt.ttf b/ttf-bitstream-vera-1.10/VeraMoIt.ttf new file mode 100644 index 0000000000..2404924856 Binary files /dev/null and b/ttf-bitstream-vera-1.10/VeraMoIt.ttf differ diff --git a/ttf-bitstream-vera-1.10/VeraMono.ttf b/ttf-bitstream-vera-1.10/VeraMono.ttf new file mode 100644 index 0000000000..139f0b4311 Binary files /dev/null and b/ttf-bitstream-vera-1.10/VeraMono.ttf differ