Is there a way to undock the assistant editor in Xcode into its own window or onto a second monitor - xcode

Is it possible to have one assistant editor (on my second monitor for example) which always shows the counterpart to the file which I am currently editing (on my first monitor)?
I can create a new tab, drag it out into its own window and show the assistant editor but of course it doesn't show the counterpart to the file I am editing on my primary window/monitor.
Is there any way to make it do this?

No there isn't. But you can always send feedback to apple regarding what you'd like to see in future updates. If this request comes from many devs, maybe there is a chance to see it added to xcode.

Agreed. With the focus on multi-monitor support this is a feature that has been missing.

In Xcode 7.3, I just double click a file in the Project Navigator view and a new editor window with the file is opened.

Related

Is there a way to use PyCharm on multiple monitors

I'm using PyCharm with multiple monitors on Mac OSX (10.10.5), normally you can drag windows off to a separate monitor. In PyCharm that works, but they (and in particular the Run window) snap back to the main monitor.
I've only seen this on the latest PyCharm 5 CE though its possible older versions also had the problem. I've searched all the settings and searched online, but can't find a setting that makes the window stay where it was placed.
Right click on the tab and select View Mode as Window.
Then you can move the window to another monitor.
It's crappy behaviour from the best python IDE out there.
There is a OSX solution but i'm not sure if you will like it:
You can enable old style multiple screen support again in OSX by going to System Preferences, Mission Control and uncheck "Displays have separate spaces". Now your floating windows will not snap back and you can even extend your PyCharm main window over the screens.
The downside of this solution is that you'll have the OSX dock and main menu only on your main monitor. I hope Jetbrains will fix this behaviour soon.
Another way to achieve what you want is to open multiple instances of the project. When you try to open the project for the second time you can choose "open project in new window". You can drag the new window to the second screen; it won't snap back to your primary monitor.
For Ubuntu and Windows users landing up here:
Press Shift + F4 or
Right-click and select 'Move Tab to New Window'
Drag the newly created window to the next screen
The best option is to detach an editor window and drag it to your second monitor.

Xcode 6 open Assistant Editor in New Window

I feel like I have read every link on Google pertaining to this question, but none that I have read have helped.
All I want to do is view my Storyboard layout on the left monitor, and on my right monitor, in a new window, have the Assistant Editor open to "Preview" for my Storyboard so that I can preview the different devices sizes (clicking different storyboard views on the left screen should update the assistant editor preview on the right). This seems so simple, but has not proved to be.
Please tell me this is possible.
EDIT: This guy seems to have it working but following the steps didn't work for me.
It's possible.. and it's awesome:
I do have this working after following the instructions linked in the OP. I think the author left out that you need to click on the view controller that you're editing in BOTH instances of the story board window to see the changes update. Then as you're editing on your main window the changes will update to the open storyboard and thus the preview will update as well. I was able to test this and achieved a somewhat desired result.
In case the link goes dead here are the instructions lined out
Here’s how you can set this up…
In the Project Navigator pane, single-click a storyboard/XIB file to open it in the main Xcode window.
Now double-click that same file to open it in a new window.
Move the new window to another monitor and maximize it
(So now you have the story board on 2 windows)
Click on the new window to make sure it has input focus, then type Option+Command+Enter to open an assistant editor in that window.
In the assistant editor’s jump bar click on ‘Automatic‘ to open the drop-down menu (see the screenshot below if you don’t know what this means).
Click on the ‘Preview‘ menu item to open the preview editor.
Click and hold next to the assistant editor’s jump bar, then drag up or left (depending on which editor layout you prefer; vertical or horizontal), to maximize the preview’s screen real estate.
Lastly... the part the author left out is that you need to select the view controller you want to edit in BOTH story board windows and then just drag the preview window to cover more of the screen.
It's not pretty but it's effective.
Edit: wording and grammar :)
This is not currently possible (Xcode 6.3.1 at the time of writing). The best you can do is open your storyboard in one window, open it again in a new window, open the preview, and slide the assistant editor as far left as possible. The preview won't take up the entire window, but it'll be pretty close.

How to get back the XCode dialog that was shown when I attempted to edit a locked file?

I am using Perforce with XCode 4.4, and these two seem to to be somewhat incompatible.
Perforce seems to be locking files, and XCode normally shows a dialog when you attempt to edit a locked file, asking whether you'd like to unlock it.
I dismissed this dialog, but now I have to manually press the unlock button in the top-right hand corner.
Does anyone know how to get this automatic dialog back so that it shows the dialog is I start typing in the locked file?
Here's an article describing how to use XCode behaviors to solve the problem:
http://kb.perforce.com/article/1735/automatically-checking-out-files-for-edit-in-xcode-43

How to cycle through xcode windows (or open 'help' within the bottom pane)?

In Xcode 3.2 the help/reference pops up in a new window when I ALT, CMD, DOUBLECLICK on a class name**. In previous versions it looks like it used to open up in the bottom pane of the main Xcode window. Can I replicate that in 3.2+?
The problem I'm having is that if either one of the Xcode windows (help or main) is maximised, it's easy to loose one window behind the other, and I seem unable to cycle through the individual Xcode windows (the normal window cycling doesn't work - both windows just show up as one item, 'Xcode').
I'd be happy to find out how to cycle through the Xcode windows or bring up the help window in the bottom pane, as it was in prior versions. Currently I'm using Expose to access the hidden window - which is okay, but not optimal.
Thanks.
** ALT & DOUBLE-CLICK now brings up QuickHelp in 3.2
Can you not simply type Command-~ (command tilde)? That works for me and is the common method of cycling between the windows of an application.
At least with XCode 4, but probably with 3 too, you can use Ctrl+Command+Arrows for navigating between tabs. The Up/Down buttons will switch between header files and source files and the Left/Right between opened windows/tabs.

Xcode window positions when switching from dual to single monitor

When I'm working at home I plug my MacBook in to my 20" monitor as a second (right side) monitor. I do all my editing in Xcode on the larger monitor, and leave the menu bar, debugging and documentation on the laptop's monitor.
The problem is when I disconnect from the second monitor and want to work on code in "laptop" mode. Now, whenever I open a file for editing, it shows up almost entirely off the screen and I have to drag it over to edit it. I understand (sort of) why this is happening, since I last had it open in a different monitor. What I'd like to do is reset the window positions in Xcode so the edit windows show up completely on the laptop monitor. Any ideas on how to do this?
I'd even be willing to nuke entries out of the preferences (or set up an applescript to do it) but the xcode plist is inscrutable to me.
Right click the project in finder, select show package contents, and delete the two username.* files. Its not automated... but it works.
Additionally if your using some kind of version control system you probably want to add username.* to your ignore pattern.

Resources