Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

XCode 4: Editor's pointer I-beam is invisible

Does anyone know how to set the I-beam pointer to a smart color like white or preferably "XOR'd"? It is always the same grey regardless of background and I can never see where it is.

2.4 MBP, Mac OS X (10.6.7), 1983 biodiesel Vanagon

Posted on Apr 10, 2011 7:06 AM

Reply
17 replies

Apr 10, 2011 11:19 AM in response to Mark Szymczyk

That is actually an error, it should be labeled "Insertion point". I am referring to the pointer cursor, which I can't say is a mouse pointer since I am using the Magic Trackpad.

For some reason the pointer turns into a grey I-beam when I hover over an XCode window. I wonder what the purpose of this is, since you can't insert text at the pointer. It seems like poor programming. Maybe I should bug report it.

Jan 10, 2012 5:55 AM in response to Gnarlodious

Terminal uses its own "shadowed" i-beam (black with a white shadow) that makes it visible on a dark background.


/Applications/Utilities/Terminal.app/Contents/Resources/ShadowedIBeam.tiff


Other third-party Mac text editors, such as TextMate, and more recently, Sublime, have supplied custom i-beams. Others (Eclipse, Komodo) have not done so yet (AFAIK), but may have to do something soon to address this if Apple continues to ignore it. BBEdit, I believe is still a Carbon app, and apparently this issue affects only Cocoa apps.


It's a ridiculous oversight, and Apple really ought to do something about it at the OS level, rather than force every editor to supply an alternate i-beam. If you haven't done so already, send a message to Apple Feedback for OS X and ask them to fix it ASAP.

Aug 19, 2012 5:52 PM in response to Gnarlodious

I spent most of my weekend figuring this out, but the i-beam cursor in XCode CAN Be edited. It's simply a TIFF file in the following location for XCode 3.2.6 (and earlier, I assume, but have not tested):
/Developer/Library/PrivateFrameworks/XcodeEdit.framework/Versions/A/Resources/T Ibeam.tiff


XCode 4.1 has the same file but it does not affect the i-beam in the main editor (I assume it's used somewhere, though). Instead, the main editor in XCode 4.1 uses this file: /Developer/Library/PrivateFrameworks/DVTKit.framework/Versions/A/Resources/DVTI beamCursor.tiff


XCode does NOT use the system-wide i-beam cursor as everyone I found talking about it stated as if it was a known fact. If I hadn't believed those people, I wouldn't have spent two days figuring out how to alter the system i-beam cursor by editing /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ CoreGraphics.framework/Versions/A/CoreGraphics only to find that xcode's ibeam doesn't change.

Aug 19, 2012 8:34 PM in response to Gnarlodious

It's frustrating they have to relocate files in seemingly every release, but I did a search in Mountain Lion:


find / -name '*Ibeam*' -print


and found the i-beam cursors are now here in XCode 4.4:


/Applications/Xcode.app/Contents/OtherFrameworks/XcodeEdit.framework/Versions/A/ Resources/TIbeam.tiff

/Applications/Xcode.app/Contents/SharedFrameworks/DVTKit.framework/Versions/A/Re sources/DVTIbeamCursor.png

/Applications/Xcode.app/Contents/SharedFrameworks/DVTKit.framework/Versions/A/Re sources/DVTIbeamCursor@2x.png


Editing DVTIbeamCursor.png was enough to change the i-beam in the main editor on my system. I'm guessing DVTIbeamCursor@2x.png will be used on a retina display and who knows if TIbeam.tiff is even used anymore since they didn't update it to png.

Aug 20, 2012 6:47 AM in response to Chris Dragon

Ah yes, success at last! I modified the image at

open /Applications/Xcode.app/Contents/SharedFrameworks/DVTKit.framework/Versions/A/Resources/DVTIbeamCursor@2x.png

and wouldn't you know it works! My I-beam cursor is large and visible on black background in Xcode! I even left a little black in there so it will be visible on a white background. here is the image in case anyone doesn't have image editing software:


User uploaded file

You would have to replace your DVTIbeamCursor@2x.png file with this one and restart Xcode 🙂

Nice and bright cursor now!

Aug 20, 2012 7:33 AM in response to Gnarlodious

More hints. Any Xcode update will overwrite the hacked Ibeam image, so I moved the image to my userfolder and symlinked it to the original location:

file=/Applications/Xcode.app/Contents/SharedFrameworks/DVTKit.fr amework/Versions/A/Resources/DVTIbeamCursor@2x.png rm $file; ln -s ~/Xcode/DVTIbeamCursor@2x.png $file

Your path at the end will be wherever the image is stored. I also added the Terminal commands to the PNGs Comment field, so after updates all I need to do is open the image, copy the commands and fix the Ibeam.


This solution only works with the Xcode.app in /Applications, not older versions in /Developer/.

Aug 20, 2012 7:35 AM in response to Gnarlodious

Hooray!


Here's the cursor I use:

User uploaded file

I find the black outline makes it easier to see when it happens to be over blocks of bright text. Also note that the hot spot (where the mouse click is registered) is located where the black lines cross in the original cursor because that cursor was intended to be used on a white background, so the white lines in the cursor above are all where the original black lines were.


Still hard to believe Apple has a "Dusk" theme as their second color theme and yet they never bothered to change the ibeam to work on that theme. Then again, I never had a huge problem with it until we moved and I now sit in front of a bright window that makes my screen appear dimmer and the default ibeam much harder to see.

XCode 4: Editor's pointer I-beam is invisible

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.