2013-09-26 59 views
12

使用Xcode时,似乎没有办法将代码编辑器字体设置为锐利(即没有'字体平滑处理)。尽管您可能会在预览区域的首选项>字体&颜色中看到,但在实际代码视图中,它总是被平滑/消除锯齿。在代码编辑器中禁用Xcode反锯齿文本?

有一些olderquestions地址以前版本的Xcode。他们建议使用defaults write com.apple.dt.Xcode <etc>更改各种设置,但这些似乎不影响Mac OS X 10.8.5上Xcode 5中的代码视图。我正在使用具有一个Retina和一个非Retina屏幕的双显示器设置。

我已经试过关闭的字体在系统偏好设置平滑复选框>常规>“使用LCD字体平滑可用的地方”,但只影响子像素渲染...

更新(情节中字):Mac OS X 10.10.1和Xcode 6.1.1仍然存在问题。这里是在使用这些终端命令后,在编辑器视图(平滑)和喜好窗口(不平滑)截图:

defaults write com.apple.dt.Xcode NSFontDefaultScreenFontSubstitutionEnabled -bool YES 
defaults write com.apple.dt.Xcode AppleAntiAliasingThreshold 16 

Xcode

+0

添加了一个答案Xcode的6优胜美地。 –

+0

你可以把原始的未压缩,非缩放截图的链接?并不是我不相信你,只是因为SO缩放了图像,所以它实际上在所有像素上应用了抗锯齿功能,因此您无法真正看到它们的差异! –

+0

它在我看来像是有原始图像。您可以在新的浏览器窗口中打开它。 –

回答

6

MikeAsh说他能够构建一个Xcode插件来告诉文本视图使用屏幕字体。看起来这会很简单,尽管我还没有尝试过。

一般策略是(从他的推特)将是“补丁-[NSTextView drawRect:]和做[[self layoutManager] setUsesScreenFonts: YES];”。

更新(2015-08-14):这是来自Ash的blog post和他的插件Xcode project的说明。如果我将7FDF5C7A-131F-4ABB-9EDC-8C5F8F0B8A90添加到DVTPlugInCompatibilityUUIDs,它适用于Xcode 6.4。我认为这个问题解决了!

更新(2016年6月20日):由于Xcode 8,则不能使用Xcode的插件,但该用户默认的工作:

defaults write com.apple.dt.Xcode NSFontDefaultScreenFontSubstitutionEnabled -bool YES 
+0

谢谢。你赢得我的赏金;-)让我们希望他做出版物向我们展示如何使用它。另外,如果你设法修复你的Xcode,请通过编辑你的答案来保持我们的发布。如果我在做之前弄明白,我也会这样做。 –

+0

我也可以确认这适用于XCode 7。 0420B86A-AA43-4792-9ED0-6FE0F2B16A13是xcode 7的新uuid。 – costa

+0

7.1中是7265231C-39B4-402C-89E1-16167C4CC990。必须重新编译插件。 – costa

6

如果使用非视网膜显示器,尝试

defaults write com.apple.dt.Xcode NSFontDefaultScreenFontSubstitutionEnabled -bool YES
并重新启动的XCode。

UPDATE:

而且调用此:

defaults write com.apple.dt.Xcode AppleAntiAliasingThreshold 24
+1

谢谢。不幸的是,这不适用于我的混合分辨率双显示器设置。 –

+0

谢谢;你是我的英雄!在Mac Pro上与Mavericks一起在Xcode 5中很好用。 – lifjoy

+0

无法在我的MacBook Pro 2012(非Retina)上使用Xcode 5.0.2和OS X 10.9.1 –

1

我不知道以前的版本,但在Xcode 6.1和优胜美地(OS X 10.10)两个命令实际上是需要禁用在Xcode中进行本地反锯齿。

首先,正如已经说明,你需要在终端控制台输入以下内容:

defaults write com.apple.dt.Xcode NSFontDefaultScreenFontSubstitutionEnabled -bool YES 

然后,其次:

defaults write com.apple.dt.Xcode AppleAntiAliasingThreshold <some integer value> 

这是最好禁用字体平滑或抗锯齿贯穿整个操作系统。 它应该真的是一个选项来检查/取消选中程序本身,但至少这是有效的。

+0

感谢您的帮助,但是这并不适合我。我将字体设置为Monaco 9.这些命令使字体在Xcode字体首选项中以我想要的方式显示,但它们似乎不影响主文本编辑器视图。 –

+0

@MichaelTsai嗨迈克尔,你能给我更多的信息吗?你目前的配置是什么?你现在正在使用Xcode 6.1和Yosemite,还是仍然使用与你的问题相同的配置?你可以给我一个截图(通过在键盘上按Cmd-Shift-3),而在Xcode中显示前台的字体和颜色窗口以及它后面的编辑器,只是让我可以看到你在说什么?不要压缩它,只需直接上传屏幕截图。 –

+0

我已经更新了这个附加信息的问题。 –