Previous 1 2 Next 17 Replies Latest reply: Jan 22, 2014 5:18 PM by eric1980
Gnarlodious Level 4 (3,220 points)
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
  • Mark Szymczyk Level 4 (1,985 points)
    In Xcode's Fonts and Colors preferences, there is a Cursor color button. Click the button to change the cursor's color.
  • Gnarlodious Level 4 (3,220 points)
    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.
  • K T Level 7 (23,705 points)
    The 'i-beam' cursor is standard OS X - it is used to indicate a variety of text operations, some of which include editing.

    If you desire something different, I would suggest goggleing for any of the third party apps that provide customization of OS X.
  • Gnarlodious Level 4 (3,220 points)
    You can't edit text from the pointer, so why should it be an I-beam symbol at all? Why should the white arrow disappear when moving over the XCode editor?

    I don't get it. Seems like a bug. Or at least a usability issue.
  • K T Level 7 (23,705 points)
    It's a 'text' cursor/indicator - sometimes you can edit text...sometimes you can't - doesn't matter. Same as with Terminal, Safari, Mail, InterFace Builder, etc.

    It's system wide and Xcode is just along for the ride.
  • Gnarlodious Level 4 (3,220 points)
    Yes, but at least when hovering over Terminal the I-beam contrasts itself against the black background and is easy to see. Over XCode it stays black on black.
  • petermarks Level 1 (0 points)

    I'm also looking for a contrasting i-beam in xcode 4. The standard grey makes working with a dark background pretty much unusable. Did you find a solution?

  • laurent demaret Level 2 (205 points)

    You are right but it also tells you that you'll be able to select and copy text, that's not editing for sure but it requires a beam pointer to show where the selection starts doesn't it ?

    sorry for the late answer.

  • Peter Weil2 Level 1 (75 points)

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




    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.

  • Chris Dragon Level 1 (10 points)

    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.

  • Gnarlodious Level 4 (3,220 points)

    I just tried all those tricks with in 10.8 and none of them fixed it. I even emptied the cache to no avail.


    Pretty aggravating problem.

  • Chris Dragon Level 1 (10 points)

    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/ Resources/TIbeam.tiff

    /Applications/ sources/DVTIbeamCursor.png

    /Applications/ 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.

  • Gnarlodious Level 4 (3,220 points)

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

    open /Applications/

    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:



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

    Nice and bright cursor now!

  • Gnarlodious Level 4 (3,220 points)

    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/ 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 in /Applications, not older versions in /Developer/.

Previous 1 2 Next