Skip to content

Instantly share code, notes, and snippets.

@rsodre
Last active August 3, 2018 16:22
Show Gist options
  • Save rsodre/783781a1a6dfdbc35e00f36217faeb28 to your computer and use it in GitHub Desktop.
Save rsodre/783781a1a6dfdbc35e00f36217faeb28 to your computer and use it in GitHub Desktop.
XCode Persistent Bugs

XCode used to be awesome

It still is, more or less, because a lot of good stuff is breaking with each new release.

Maybe some of these problems do not occur on Swift or Objective-C, since that's all that Apple uses internally, but using XCode for C++ projects is becoming a pain. Apple is probably too focused on Swift and leaving C++ to roth.

  • Code coloring: Generally fucked. If you can Jump to Definition, why can't you color it accordingly?

  • Quick help (OPT+click): Generally fucked. Rarely tells me any information about any method, member or class. Even those that are colored (thus identified), do not show any information.

  • Jum to Definition: Usually works, but sometimes takes to far away places.

  • Code completion: Usually works, but often does not show me anything.

  • Debugging: Hovering over a variable often do not show any information about it.

  • Debugging: Variables view often do not show all the variables that are in scope, just a few.

  • Refactor/Rename is useless. It does a Repace All instead of actually changing only the name of the symbol. It's NOT the same thing, try to refactor a variable called alpha or enabled and see your whole project going red!

  • Moving a group in Project Navigator often crashes XCode. GRRRRRRR!!!!

  • Can’t customize indentation and code formatting beyond the limited settings. Some teams have very specific coding guidelines that we should be able to follow.

  • Indexing takes waaaaaay too long on big projects or when we have other projects as dependence.

  • Sometimes there are duplicated projects in the Open Recent menu, both showing the full file path.

  • XCode can figure out a lot of build errors, like this: "use of undeclared identifier 'DumpContainer'; did you mean 'av::DumpContainer'?". In the past we were able to accept that suggestion and XCode would fix it, but we can't anymore! I need to go to that like and fix manyally when XCode already knows what to do. Let us accept the fixes!

  • Changing a plain text File Type in the File Inspector does color it properly, when it's Syntax Coloring is set to Default for File Type. We need to manually set the Syntax Coloring to the file type.

  • The File Type set for a specific file is not saved in the project. A generic file identified as Default Plain Text, if is set to C Header, for example, when the project is reopened goes back to Default. Anyway, this File Type is useless, since XCode is not coloring it properly, so first fix the previous bug.

  • The Syntax Coloring for a specific file is not saved in the project. If I have a plain text file and I set it's Syntax Coloring to C source, every time I open the project I need to set their Syntax Coloring manually again.

Hey Apple, learn something from Microsoft Visual Studio...

On the other hand, while I can't get used to use Visual Studio, but it just works!

Here's some stuff that XCode is losing to Visual Studio...

  • Indexing is fast!

  • The quick help context menu is amazing

    • Go to Definition (it works!)
    • Go to Declaration (it works!)
    • Peek Definition (it works!)
    • Find all references (NOT Find all, but actual symbol references)
    • Rename (NOT Relace all, but actual symbol references)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment