When I start a shell session from Vim, I have my .bashrc modify my shell prompt to remind me I have a Vim session waiting
I have gotten caught forgetting the Vim session lots of times, so this way my shell prompt has been changed to remind me Vim is still waiting.
I just test for ${VIMRUNTIME} in .bashrc and if it exists I assume Vim is my parent process, and I adjust my prompt accordingly.
xterm-256colors comes in handy for coloring prompts too 🙂
I mostly use MacVim with the Firefox "Its all text" plugin
<https://addons.mozilla.org/en-US/firefox/addon/its-all-text/?src=search>
that makes every Firefox simple text box editable via MacVim (after you configure it to launch MacVim that is). The text box gets a little (edit) button in the lower right corner, and if you click it the exiting text gets put into a MacVim session. Every time you save the text changes in MacVim, the Firefox simple text field gets updated. NOTE: Does NOT apply to discussions.apple.com reply boxes, as they are not simple text fields 😟, however, I have to file out lots of simple text boxes when doing code reviews, and other web based forms at work, such that it makes it very handy to be in a Vim session, as my code review comments can be rather lengthy.
I think you can also hook Xcode into using your own editor, and MacVim can be the target for that (played with that many years ago, but just could not get into Xcode enough to stick with it).
My building my own Vim mostly came from the late '90's when I first discovered Vim and it was not available to Tru64 UNIX, so I had to build my own and make sure it has cscope support compiled in. Later, I had to build my own, because I wanted new Vim features, but at the time was staying on Snow Leopard on my iMac at work, taking the approach "If it ain't broke, don't fix it" vs the "If it ain't broke, fix it until it is broke" 😁