Visual Studio Code is a class-leading code editor, but it has at least one surprising shortcoming.
The Background
I've been discovering first hand the challenges of abandoning a trusted program in favour of a new and better alternative.
I've used Macromedia HomeSite for over 20 years and, over time, I've customised it to meet my needs. In particular, I've written dozens of utility scripts that I now find indispensible.
Every few years a new editor would appear and I would try it out. Typically these contenders would be markedly better than HomeSite in one or more ways, but would fall short in terms of their overall feature set. Occasionally I'd retain one for specific tasks, for instance, Sublime Text will effortlessly open large text files that HomeSite would choke on. Aside from that, HomeSite, abandoned by its maker decades ago, has continued to be my editor of choice.
Last year I finally got on board the Visual Studio Code train. It had enough new and well-executed features to be compelling, but it took me a long time to replicate all the functionality I was used to with HomeSite. I now have the best of both worlds: a mature, modern, performant code editor that does all the things I want it to, and more besides.
There's just one issue that bugs me.
The Problem
Every desktop program that I've used that involves interacting with files has an easy way to reopen any file you viewed recently.
Most users will be familiar with the Most Recently Used (MRU) list, an easily accessible list of the last files you looked at, presented in reverse chronological order (the most recent files first). In some programs this list in the File menu (Adobe Acrobat) or its equivalent (Microsoft Word), or in a submenu under the File menu (Adobe Photoshop). It's clear that the designers regard this as an important facility.
Visual Studio Code has an MRU list as well, but it's quirky. It's right there, under the File menu, and all the entries are files you opened recently, but it has a habit of randomly ignoring certain files.
Visual Studio Code organises files around the concept of Workspaces. A Workspace is a container you create that lists all the files in a given folder, with the option to selectively exclude as many as you want. This makes it easy to switch from one project to another. VS will even preserve all your unsaved files in the current Workspace as you switch from one to another, a useful feature that I've never seen before.
I believe Visual Studio Code's quirky MRU file handling is related to how it manages Workspaces. It's not a bug in the official sense, but it's a deficiency, and is one of my top complaints about the program.
The Solution
Visual Studio Code is highly customisable. In particular, it supports extensions, which are self-contained code modules that provide additional functionality.
These are available for download in the Visual Studio Code Marketplace and are typically free. Among others, I've installed extensions to manage code snippets and to save regular expressions for reuse, and they work well.
My first thought was "surely someone has made an extension to plug this omission?" but no. There are several extensions that aim to manage recent files, but I didn't find any that provided a reliable and easily accessible list of all the files that were viewed recently. Time to roll my own.
My First Extension
Recent Files (All) is a simple extension that does what it says on the tin: it provides a list of all the files you opened recently, presented in reverse chronological order.
![]()
In addition to plugging that gap, it lists the date and time you last viewed each file, which I find useful for tracking time on projects. It also shows a matching icon next to each file, which makes the list easier to scan. Unlike typical MRU listings, which store the last 20 to 50 files, this extension stores 500. All of these attributes are adjustable in the settings.
Using the extension could hardly be simpler. A core feature of Visual Studio Code is the Command Palette; begin typing Recent Files (All) and you'll see it appear. If you're looking for a file that isn't visible in the first 20 or so, begin typing its name and the list will automatically filter in place.
Try It Out
If you use Visual Studio Code and you're even slightly bothered by this omission, please download my extension from the Marketplace and give it a whirl