Skip to content

Macvim in console mode hangs with custom viminfo location #752

Closed

Description

@chdiza

I have a wrapper script that does exec somestuff "$@", where somestuff calls the Vim binary inside of MacVim. This wrapper's been working fine for a long time, so I don't think it's the problem.

As of (at latest) MacVim 8.1.425, if I call that embedded Vim binary and have the line se vi='20,<0,s10,h,n~/.tmp/viminfo in my vimrc, then Vim will hang if I make some app other than the terminal active and try to click back into the terminal.

If I omit the last part of &vi setting the custom location, there is no hang.

Also, there is no hang at all, ever, using upstream Vim.

The hang happens in both iTerm2 and Terminal.app

This is on High Sierra 10.13.6 and a MacVim built with Xcode 10.

Activity

  1. chdiza commented on Sep 25, 2018

    @chdiza
    ContributorAuthor

    A vimrc that contains only se vi+=~/.tmp/viminfo will cause the hang.

    (Obviously you have to make sure that the dir .tmp exists first).

  2. chdiza commented on Sep 25, 2018

    @chdiza
    ContributorAuthor

    I had suspected Xcode 10 of being a cause, but I can reproduce on a different High Sierra machine that still only has Xcode 9.4.1.

  3. chdiza commented on Sep 25, 2018

    @chdiza
    ContributorAuthor

    I have manually bisected, and it required going to a machine with Xcode 9.4.1 because the bug is old.

    The first bad commit is fa3b48c, "Control sharing the find pasteboard with defaults"

  4. chdiza commented on Sep 25, 2018

    @chdiza
    ContributorAuthor

    To see the bug, one needs MMShareFindPboard set to -bool false. I've had it set that way the whole time. If I turn it on, the bug doesn't manifest.

    I don't like that setting turned on, because it makes a bunch of vim search patterns (which often have regex stuff in them) show up in the search boxes of other Cocoa apps, where those search patterns are useless.

    I guess the custom location of a viminfo file is relevant because (at least in part) that viminfo file has the last search pattern stored in it. My guess is that console-MacVim is choking on that for some reason.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions