VIM with SFTP/FTP on Mac and Windows

If you’re a developer there is a pretty good chance that you spend a lot of time in either Sublime Text or MacVim [gVim on Windows] wrangling code. MacVim is one of the most popular and modern incantations of the vim editor, which is itself an improved version of ancient vi editor initially developed by Bill Joy (also popularly  known as co-founder of Sun Microsystems) in 1976. You’re doing something right if your interaction paradigm hangs around for nearly 40 years.

vim_header
Vim has a robust environment for plugins and a solid community of developers using and creating plugins to extend the functionality. There are a couple plugins out there to connect Vim to cloud storage, like vim-sync but as you can see [at least of the time of this writing], they are fairly spotty. Just hanging out in Github with a few commits and not much maintenance.

Connecting Vim to an SFTP server

Combining Vim and ExpanDrive is a powerful workflow – you actually edit and manipulate files on SFTP/FTP or S3 in real-time from directly within the editor. You don’t need to download the file, edit it, and then re-upload it. Here is a quick tutorial on how to get it going

Download ExpanDrive
First you want to download the latest ExpanDrive release here.  ExpanDrive is free to download and try out and is available on Mac and Windows. While these screenshots are on the Mac, it looks pretty much the same on Windows.


Create new SFTP Drive
Once you have installed ExpanDrive, you create a mapped drive to the remote server . This screenshot shows how you’d get going to setup MacVim with SFTP.


Select Authentication
Setup whatever SSH configuration options are needed for your connection, and then save the connection.. We generally use public key authentication combined with Google Authenticator for multi-factor authentication. You can even set a remote path so that you can mount /etc and twiddle configuration files directly. Once you’ve connected you’ll have a network drive accessible that you can easily use to browse the files on the SFTP server.


Server in Finder

Now you’re ready to start editing files via SFTP in Vim. A nice fork of Vim is the Alloy MacVim fork, which adds a sidebar to browse your project as well as a quick open, among other things. Vim purists will hate this, but I benefit from having a project structure visible.


macvim_screenshot
Now you can edit any file directly within Vim and have the entire tree visible in the sidebar. Like I mentioned above, there are some other options out now for accessing SFTP servers from within Vim, I feel pretty confident that ExpanDrive is the best. We have rock-solid background saves that let quickly save . You’ll have no delay as the file is saved instantly and pushed out to your server in the background.

ExpanDrive v4.1.6

ExpanDrive v4.1.6 is out on the auto-updater. Most notably fixing Windows XP support, improving WebDAV support on Windows as well as increasing the writeback cache so that larger files can stream in the background. Upcoming v4.2 will add OneDrive for Business and Azure support as well as improve the write-behind cache further.

  • New in v4.1.6
  • FIXEDWindows XP support fixed
  • FIXEDWebDav on Windows support improved
  • CHANGEDLarger write-back cache
  • New in v4.1.5
  • FIXEDFixed issue causing occasional slow directory listings in windows
  • FIXEDFixed unicode decode issue

ExpanDrive v4.1.4

ExpanDrive v4.1.4 is out on the auto-updater fixing a variety of small issues and improving other bits and pieces. Thanks to all our users who have helped provide valuable feedback and integration testing. I’m including the release notes from the last few builds in this post as well since we decided not to post about those minor updates on this blog.

  • New in v4.1.4
  • NEWImprovements to detecting new/deleted files on remote server
  • NEWImproved support for Textmate 2
  • FIXEDFixed support for very large S3 listings
  • FIXED[Windows] Fixed non-password auth changing in new SFTP Drives
  • FIXEDImproved support for non-ascii characters on google drive
  • New in v4.1.3
  • FIXED[Windows] Fixed SFTP authentication issue
  • FIXEDFixed issue renaming folders in Box/Dropbox
  • New in v4.1.2
  • NEWBackground write size increased to files of 600M
  • NEWS3 mime-types are set based on extension
  • FIXED[Windows] Fixed issue affecting SFTP saves on Sublime Text 3
  • FIXED[Mac] Fixed alignment of non-retina icons
  • FIXEDImproved connection error messages
  • CHANGED[Windows] UI now movable, remembers place between opens.
  • CHANGED[Windows] Improvements in creating and distinguishing multiple drives of the same type.
  • New in v4.1.1
  • FIXEDFixed issue affecting SFTP file creates
  • New in v4.1
  • NEWSupport for Google Cloud storage
  • NEWRemote change detection and updates
  • FIXEDMany small bug fixes and improvements since initial 4.0 release

ExpanDrive 3.0.3039

ExpanDrive 3.0.3039 is out. It’s a minor update with mostly bug fixes but a few notable new features. The Windows client now supports multiple instances in a terminal server environment and the Google Drive protocol will show you “Shared with Me” items as a folder in your root drive.

[NEW] Shared with Me folder now visible for Google Drive
[NEW] [windows] Support for multiple users in Windows Server environments
[NEW] Dropbox for business authentication
[NEW] Support tested for Oracle Cloud storage
[FIXED] Further Openstack Keystone improvements
[FIXED] Google Drive supports folders with large numbers of files better
[FIXED] First drive is always selected in UI on startup
[FIXED] Non-ascii usernames are now better supported in Dropbox
[FIXED] [windows] ExpanDrive doesn’t show the manager when being launched at login
[FIXED] [windows] Better support for windows username with non-ascii characters
[FIXED] [windows] Window position restore now correclty detects if monitor geometry or multimon has changed. No more hidden windows.
[CHANGED][mac] By default ExpanDrive no longer shows up in the dock on Mac

Support for Google Drive and Box.com

ExpanDrive now supports connecting directly to Google Drive and Box.com! While both of these services quite obviously come with their own sync client, ExpanDrive lets you connect to them and access all your data from within Finder, Explorer or any app without having to sync the entire contents of the account to your machine. Access everything on demand without taking up local storage.

Please send all feedback to support@expandrive.com rather than leaving a blog comment.

Windows – Download and Release notes
Mac – Download and Release notes

  • NEWSupport for Google Drive
  • NEWSupport for Box.com
  • NEWRetina icon for the Mac
  • FIXEDA refresh Finder button has been added to the statusbar menu to force Finder to notice new files.
  • FIXEDReconnect while waking from sleep has been improved for the mat

Introducing ExpanDrive 3: Dropbox, Rackspace, OpenStack, WebDAV, DreamObjects and more

I’m proud to announce that ExpanDrive 3 has been released. Many thanks to those who participated in the public beta and development process. ExpanDrive 3 sports a beautiful new user-interface and support for many more drive types such as Dropbox, OpenStack, Rackspace and WebDAV. Everything you already love has been improved. Download ExpanDrive 3 from our website or from the auto-updater within ExpanDrive. This update is available to all existing customers for $19.95 through the end of May and free to try out for 1 week. Those who purchased in 2013 are being upgraded automatically for free.

New Drive Types

  • Dropbox – connect as a network drive!
  • WebDAV
  • Rackspace Cloud Files
  • OpenStack Swift
  • Dreamhost DreamObjects
  • Google Drive, SkyDrive, Box and more coming soon
  • Awesome new UI

  • Fully compatible with Windows 8
  • Beautiful Metro-style UI on Windows
  • Clean and simple new user interface
  • Context menu in Finder and Explorer
  • Command-line interface
  • Major improvements

  • Huge speed increases in transfers
  • Improved responsiveness & browsing
  • Alternate S3 endpoints
  • S3 multi-part uploads
  • Large object support on S3
  • Along with everything you see here, development continues on support for other providers such as Google Drive, Box.com and Microsoft SkyDrive. We post regular updates on our Facebook page and this blog if you’re interested in staying up to date.

    ExpanDrive adds Dropbox Support

    ExpanDrive 3 Development build 3017 integrates support for Dropbox! Now you can directly mount Dropbox as a network drive and access all of your files without needing to sync everything down. This is great if you have a large Dropbox and and limited space on your PC. It also let’s you have native access to multiple Dropbox’s on a single machine, something not possible with the official client.

    Please send all feedback to support@expandrive.com rather than leaving a blog comment.

    Windows – Download and Release notes
    Mac – Download and Release notes

    • NEWAdded support for Dropbox!
    • fixedFixed WebDAV and Swift connecting on alternate ports

    Support for WebDAV

    ExpanDrive 3 Development build 3016 adds yet another highly requested feature – WebDAV. WebDAV is a very popular protocol used to help power Microsoft Sharepoint and a raft of other online storage services such such as iDisk/Mobile Me and Golden Frog Dumptruck, one of our favorites.

    While Mac and Windows both have built in support for WebDAV it’s usually quite slow and clunky. We’ve given WebDAV the ExpanDrive treatment – extremely fast and reliable. That being said, this support is still fairly new and will likely need some revisions to improve compatibility across the wide variety of WebDAV implementations in the wild.

    Please send all feedback to support@expandrive.com rather than leaving a blog comment.

    Windows – Download and Release notes
    Mac – Download and Release notes

    • NEWAdded support for WebDAV and WebDAV over HTTPS.
    • NEWDramatically improved metadata responsiveness for S3/Swift/DreamObjects/Rackspace
    • fixedFixed support for OpenStack Swift Storage. using swauth

    Rackspace Cloud Files & OpenStack Swift

    ExpanDrive 3 Development build 3015 finally builds in support for two often requested drive types – Rackspace Cloud Files and OpenStack Swift. Cloud Files is a popular S3-like durable storage platform run by RackSpace. It is built from the OpenStack Swift project, a very popular solution for deploying a S3-like type storage on premise or as part of a service offering.

    ExpanDrive connects scale-out storage platforms like Swift and CEPH to existing solutions, apps and infrastructure. Out of the box Swift and CEPH are products designed to be access via an API, not terrifically useful if you’re trying to migrate off a big iron NetApp Filer. ExpanDrive maps this API to so that it looks and feels just like a USB drive that is accessible from within any application on Mac, Windows [and soon, Linux].

    Please send all feedback to support@expandrive.com rather than leaving a blog comment.

    Windows – Download and Release notes
    Mac – Download and Release notes

    • NEWAdded support for Rackspace Cloud Files.
    • NEWAdded support for OpenStack Swift Storage.
    • NEWCreate S3/Swift/Cloud Files buckets from within ExpanDrive. Create a new folder in the drive root. If you create with Finder or Explorer, create the default folder name and rename it.

    DreamObjects, CEPH & S3 Endpoints

    ExpanDrive 3 build 3014 adds support for Dream Host DreamObjects Cloud storage. DreamObjects is a fantastic cloud storage platform built on top of CEPH, an open source S3-like object store built by Inktank. DreamHost is one of the biggest and most popular website hosting platforms around and is currently running a DreamObjects promo for storage and bandwidth for $0.03/GB, awesome pricing.

    With ExpanDrive for DreamObjects you can take what is normally only accesible via API and mount it just like a USB drive in Finder or Windows Explorer. ExpanDrive makes DreamObjects and CEPH available inside every Mac and PC application.

    Along with DreamObjects/CEPH support ExpanDrive now supports alternate S3 endpoints. You can use this to connect to alternate S3 regions or other S3-like storage.

    Please send all feedback to support@expandrive.com rather than leaving a blog comment.

    Windows – Download and Release notes
    Mac – Download and Release notes

    • NEWAdded support for DreamObjects cloud storage.
    • NEWAlternate S3 endpoints are now supported
    • FIXEDSymbolic links to directories outside out of the drive root work again.
    • FIXEDSmall tweaks on expan tool