macvim-dev / macvim

Vim - the text editor - for macOS
https://macvim.org
Vim License
7.56k stars 682 forks source link

Files opened through `:e` don't appear in macOS recents views #1320

Open adinklotz opened 2 years ago

adinklotz commented 2 years ago

Steps to reproduce

  1. Make a new text file somewhere: touch ~/Desktop/test.txt
  2. Open a new empty macvim window
  3. Open that file from the Vim command line: :e ~/Desktop/test.txt
  4. Right click the macvim dock icon and note that the file is not in the list of recent files

Expected behaviour

macOS shows recently opened files in a number of places, e.g. in Apple menu > Recent Items, in the right-click menu on the dock icon, and at the bottom of the App Expose / "Show all windows" view.

Files opened in macvim through other means (I've tested opening from Finder, opening from ⌘O in macvim, and opening with vim -g $file on the command line) adds the files to this recents list. I would expect files opened the vimmy way with :e to also be included. It adds an extra cognitive step to know I had a file open in macvim recently, but to have to remember how I opened it to know the fastest way of getting back to it. (Not sure if this qualifies as a bug per se or just a non-feature, but either way I'd love it taken care of)

Version of Vim and architecture

Vim 9.0, compiled Sep 15 2022, macOS version arm64,

Environment

OS: macOS Monterey 12.6 terminal: iTerm $TERM: xterm-256color shell: zsh 5.8.1

How MacVim was installed

Homebrew

Logs and stack traces

No response

Vim configuration where issue is reproducable

Reproducible on clean config

Issue has been tested with given configuration

Issue has been tested with no configuration

Other conditions

ychin commented 2 years ago

(Not sure if this qualifies as a bug per se or just a feature oversight, but either way I'd love it taken care of)

It's not really a bug per se but more a lack of feature. But yes this has been on my mind to fix, but probably not in the next couple releases. I've been trying to understand what the desired behavior should be since there are a lot of ways to load files in to Vim and it doesn't always communicate the result back to MacVim (aka the GUI layer), so if we want to cover all use cases we need to install a lot of hooks within Vim to communicate back to MacVim, so I'll need to think a little more about how to properly do that or would we even want that.