On Thu, 10 Dec 2009, René Köcher wrote:
> Dragging apps into the application folder is how it's always been on
> mac - easy. In my opinion it's the best way to install MacVim.
Agreed. Mac apps shouldn't use installers unless they have considerably
complicated installations, like installing kernel extensions and other
bits all over the filesystem. Installers (vs. a plain "drag this to
somewhere" app) tend to evoke distrust, and sometimes even ire, from
some (particularly old-school) Mac users.
> Regarding the optional mvim script - why not take the same approach
> as Textmate did?
> In Textmate you have a click able help entry to install optional
> components like mate (the mvim for Textmate) or "Edit in Textmate".
>
> MacVim could bundle the mvim script right in it's application bundle
> and provide a simple command or script to create the needed symlinks.
A menu choice somewhere in MacVim for "install mvim command-line script"
would be helpful, but it could be even simpler...
On startup, MacVim already reads (and occasionally updates) some (Mac)
preferences (out of ~/Library/Preferences/org.vim.MacVim.plist), right?
So store a "last version/build run" field, check it when MacVim starts
up, if the current version number differs from the last (or if there's
no last version, because this is a first time install), then check the
directories in $PATH for mvim. If it isn't found (or if it is, but the
contents compare as different to the one stored in MacVim's Resources),
pop up a dialog box over the initial Vim window, offering to install
mvim. It doesn't even need to be complicated with a file chooser. If
/usr/local/bin is on the users $PATH, offer to install it there, else
if $HOME/bin is on the path, offer that, otherwise make it a simple
informational alert box that explains there's this optional script
called mvim that the user could install if they felt inclined to do
so (along with "see :h mvim-install for details").
Chances are, anyone who would be interested in using mvim already has
put /usr/local/bin, or ~/bin, on their path, and the dialog only
appears once for each new version of MacVim installed (and actually not
even that -- because of the heavy overlap between "MacVim users" and
"Terminal users", a very common case will be that you already have
mvim on your path and the contents are the same as new MacVim's
version of mvim, so you'd only get the dialog in the rare case of
starting a new version of MacVim that also has an updated version
of mvim).
Then, if you want to complete the "look like other apps" install
experience, put MacVim.app in a .dmg file along with a Mac alias to
/Applications, and a background image for the folder that gives simple
instructions, like this (apologies to those not reading with fixed-width
fonts):
"Drag this..." "...to here"
[ MacVim.app ] [ /Applications alias ]
This also effectively answers the "what's the right way to install"
question, because the user would be led through it.
Several apps get around the "some users end up running the app straight
out of the dmg" problem by checking their location when they start up;
if they're under /Volumes, they offer to copy themselves into the
/Applications folder. Alternatively, since MacVim.app could be the
only thing in the container (.dmg, .zip, .tgz), especially if any
necessary "readme" info is presented in an initial (one-time) "Welcome
to MacVim" alert, you could package MacVim.app as the only contents of
a .zip (or .tgz, but .zip might look more familiar to most) -- the user
downloads it, double-clicks MacVim###.zip, and ends up with MacVim.app,
figure they can run it right there, or move it to /Applications or
/Other/App/Folder as they see fit (one could also offer to move oneself
to /Applications if one finds oneself running from ~/Downloads -- you
could wrap that with a "last version run from downloads" value in the
preferences, to keep from continually annoying the one odd user out
there who wants to keep/run apps in ~/Downloads).
I know these suggestions would carry more weight if I offered patches
instead of instructions; alas, no time right now, perhaps in the near
future (programming comes naturally, but I'm rusty on Mac coding, and
haven't poked around inside MacVim's code before, though I've been a
*very* happy user/recommender of MacVim for a couple years).
> +1 D&D app-bundle
+2 :)
Cheers,
-- Carl
--
You received this message from the "vim_mac" maillist.
For more information, visit http://www.vim.org/maillist.php