Sorry for chiming in late after gui_mac.c is actually removed (that's how I discovered this thread!), but I'm the current maintainer of MacVim (but not the original author). But yeah MacVim doesn't use gui_mac.c at all and it exists as a downstream fork of Vim in a different repository. Mac GUI apps generally work as an app bundle that only have a single instance running, and so MacVim's GUI code serves as a separate container app that spawns multiple Vim processes (one per window). The code to do all of that are a bunch of Objective C code (in the folder linked to above) and a fair bit of modifications inside Vim source code itself to provide MacVim-specific behaviors using ifdef's. There is a file called gui_macvim.m ( https://github.com/macvim-dev/macvim/blob/master/src/MacVim/gui_macvim.m) that serves a similar function as gui_mac.c as the entry point of GUI code in MacVim.
Some of the MacVim modifications in Vim are sort of just general Mac improvements and maybe could be ported over to Vim itself, but I haven't done a scrub of the Vim-MacVim diff to see if that's the case. Some others are very MacVim-specific (e.g. help page for MacVim, or support for mapping Cmd keys and touchpad gestures). But long story short, yes, gui_mac.c is a totally separate thing from MacVim. I think I tried to build that legacy Mac GUI before with varying success and can't remember how far I got, but yes it didn't work well at all. Removing it actually probably makes merging from upstream easier for us because there are fewer potential places to have merge conflicts. On Sun, Jul 12, 2020 at 8:47 AM Emir SARI <[email protected]> wrote: > Looks like no. There is its own implementation: > https://github.com/macvim-dev/macvim/tree/master/src/MacVim > > 11 Temmuz 2020 Cumartesi 23:20:56 UTC+3 tarihinde Bram Moolenaar yazdı: >> >> >> So MacVim does not use src/gui_mac.c ? >> >> -- >> hundred-and-one symptoms of being an internet addict: >> 7. You finally do take that vacation, but only after buying a USB modem >> and a laptop. >> >> /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net >> \\\ >> /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ >> \\\ >> \\\ an exciting new programming language -- http://www.Zimbu.org >> /// >> \\\ help me help AIDS victims -- http://ICCF-Holland.org >> /// >> > -- > -- > You received this message from the "vim_dev" maillist. > Do not top-post! Type your reply below the text you are replying to. > For more information, visit http://www.vim.org/maillist.php > > --- > You received this message because you are subscribed to the Google Groups > "vim_dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/vim_dev/ecdb4f6e-8f9b-4369-b4b9-531640ce7445o%40googlegroups.com > <https://groups.google.com/d/msgid/vim_dev/ecdb4f6e-8f9b-4369-b4b9-531640ce7445o%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/CAHTeOx-OCj4gVfU4HzxtOKJgHGdsTJCPcODde-z2JfrdsVMBHg%40mail.gmail.com.
