I am using iTerm2, which is working well for me. I've been using VIM for almost 2 years now, with MacVim. Then suddenly I became curious whether my coding experience will improve when I use terminal inside VIM, rather than using 2 separate apps.
I agree any answer to this question will be somehow subjective, but I also agree with Eyal Karin that there may be an objective component too. I've been using the Neovim terminal as my main terminal for at least two years now, maybe more, even while SSH to a remote machine, and despite its rough edges, I cannot go back to a dedicated one, not because my coding experience improved, but my terminal experience is better:
- I have all motion and operators to navigate the terminal output and yank text. I can navigate and operate on windows using Vim's default mappings. I can use BRE to search the buffer, and I can jump to a specific file with
gffrom the output of a compiler or Git or other tool 💜
- It is easier to get everything to look and feel the same. Same colour schemes, same status line, same custom mappings
- Vim's plugins may make sense in the terminal too. I started to use EasyMotion again, mainly to jump to far lines without needing number lines and it's so cool I can use it in the terminal too
I think all of the above are "objective" advantages, even when some people don't consider them that important. I know tmux users with big configurations won't switch, and it's understandable. Is up to you to decide, and it doesn't hurt to try, even when running it inside Vim inside iTerm may feel a bit redundant (that's what I do and feels that way).
As I mentioned before, Neovim's terminal has some rough edges (for example text may disappear from the buffer if the window width is reduced, this is a really ugly one), but the previous features overweight them IMHO.
Keep in mind that Vim's implementation is different. I don't know how they compare. Probably you can do with it all that I mentioned, and maybe it has less bugs