Here is a Part solution for setting the focus for ⌘⌥F
Save this Applescript down as a Text file instead of a script.
#!/usr/bin/osascript
tell application "Xcode" to activate
delay 0.5
tell application "System Events"
tell process "Xcode"
keystroke "z" using {command down, option down}
delay 0.3
keystroke tab
end tell
end tell
In terminal.app
Make the script file executable by running
chmod +x /path/to/foo.applescript
In Xcode go to the Preferences-> Key Bindings Tab.
And change the Find and Replace (menu) 's hotkey to ⌘⌥z
Now still in Preferences go to the Behaviours Tab
Click the '+' button to add a new custom Behaviour.
Name it and give it the hotkey ⌘⌥f
On the right hand pane of the Behaviours Tab scroll down to the bottom
And using the Run dropdown choose script. Select your Script file.
Now you can use the ⌘⌥F and the find and replace will appear and focus will go to the replace field.
As to replicating the keeping the Replace in view if it is already showing when you hit ⌘F. I think that in most cases it is redundant because you will want to still hit ⌘⌥F to get back to the replace field and the Find's text field will still be show with the changes you just made.
Go to Preferences->General tab and uncheck "Show live issues" under Issues. Notice that this is a work around to be able to continue working with Xcode, at least until they issue an official fix. This glitch seems to be noticeable when you have lots of lines of code (1000+).
After this, the glitch will still be happening but not while coding but during building phase. Not perfect but at least you will be able to continue working.
Best Answer
Find/replace uses what's known as the Kill Ring, rather than regular Copy/Paste
It's similar to the regular Copy/Paste buffers, but uses a separate memory area.
You can 'Kill' using Ctrl ⌃ K which is similar to Cut &
'Yank' using Ctrl ⌃ Y which is like Paste.
The kill ring is also used in a lot of search routines, so will be replaced any time you perform a new search.
Don't rely on it as a data store.