Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Add "Open with Sublime Text 2" to Windows Explorer Context Menu (including folders)

MIT License

Copyright (c) [year] [fullname]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

@echo off
SET st2Path=C:\Program Files\Sublime Text 2\sublime_text.exe
rem add it for all file types
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text 2" /t REG_SZ /v "" /d "Open with Sublime Text 2" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text 2" /t REG_EXPAND_SZ /v "Icon" /d "%st2Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text 2\command" /t REG_SZ /v "" /d "%st2Path% \"%%1\"" /f
rem add it for folders
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 2" /t REG_SZ /v "" /d "Open with Sublime Text 2" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 2" /t REG_EXPAND_SZ /v "Icon" /d "%st2Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 2\command" /t REG_SZ /v "" /d "%st2Path% \"%%1\"" /f
pause
@thesafetylemur
Copy link

thesafetylemur commented Feb 5, 2016

Worked like a charm. Thanks!

@Nabnab9
Copy link

Nabnab9 commented Feb 11, 2016

Thanks, works great !

@HellfireXD
Copy link

HellfireXD commented Feb 24, 2016

For PowerShell fans, I have created a PowerShell script based on the registry entries in this script as well as a few forks.
Unfortunately i cannot fork to another file type.

https://gist.github.com/HellfireXD/7f8c5a0845a44dfa9e7d

@jreigel
Copy link

jreigel commented Mar 3, 2016

Awesome. Thanks for sharing.

@jaroberts-krittermedia-com

without admin right, boo, no luck

@gurkan0791
Copy link

gurkan0791 commented Apr 3, 2016

Thanks. work win10

@troyxuanyichen
Copy link

troyxuanyichen commented Apr 25, 2016

It's really cool! You just have to modify the path of your sublime.Thanks!

@AmirGeorge
Copy link

AmirGeorge commented May 7, 2016

This is very useful, thanks a lot!

@shawnthompson
Copy link

shawnthompson commented Jun 23, 2016

Thank you very much 👍

@HKhademian
Copy link

HKhademian commented Jun 24, 2016

(from my other gist comment)
This is a better command. save it to a bat file in app directory and run as administrator.
U can use this command for another applications like Atom,VSCode,... simply by changing App* lines

@echo off
SET AppKey=SublimeText3
SET AppTitle=Open with Sublime Text 3
SET AppPath=%~dp0sublime_text.exe
SET AppIcon=%AppPath%,0

REG ADD "HKEY_CLASSES_ROOT\*\shell\%AppKey%" /ve /f /d "%AppTitle%"
REG ADD "HKEY_CLASSES_ROOT\*\shell\%AppKey%" /v "Icon" /f /d "%AppIcon%"
REG ADD "HKEY_CLASSES_ROOT\*\shell\%AppKey%\command" /ve /f /d "%AppPath% \"%%1\""

REG ADD "HKEY_CLASSES_ROOT\Folder\shell\%AppKey%" /ve /f /d "%AppTitle%"
REG ADD "HKEY_CLASSES_ROOT\Folder\shell\%AppKey%" /v "Icon" /f /d "%AppIcon%"
REG ADD "HKEY_CLASSES_ROOT\Folder\shell\%AppKey%\command" /ve /f /d "%AppPath% \"%%v\""

REG ADD "HKEY_CLASSES_ROOT\Directory\Background\shell\%AppKey%" /ve /f /d "%AppTitle%"
REG ADD "HKEY_CLASSES_ROOT\Directory\Background\shell\%AppKey%" /v "Icon" /f /d "%AppIcon%"
REG ADD "HKEY_CLASSES_ROOT\Directory\Background\shell\%AppKey%\command" /ve /f /d "%AppPath% \"%%v\""

@hasham7861
Copy link

hasham7861 commented Aug 14, 2016

👍

@nulldim
Copy link

nulldim commented Dec 29, 2016

Works like a charm. Excellent work.

@Dengjiansheng
Copy link

Dengjiansheng commented Jan 9, 2017

Thank you

@aleksandr-kosobokov
Copy link

aleksandr-kosobokov commented Feb 8, 2017

Cool

@jehrenzweig
Copy link

jehrenzweig commented Feb 9, 2017

You just solved a problem I've been having for months, if not years. Thank you!

@Zihad-Dmrt
Copy link

Zihad-Dmrt commented Feb 17, 2017

How can i Remove this function after uninstall sublime text 2...... please help me

@mrchief
Copy link
Author

mrchief commented Mar 2, 2017

Just delete those reg entries or use a registry cleaner

@klendi
Copy link

klendi commented Apr 12, 2017

when i right click recycle bin it shows edit with sublime text, how to remove that and make this work only with the files?

@mittalyashu
Copy link

mittalyashu commented Jul 17, 2017

It just works on a file. What about the folder?

What if we want to open a whole folder in sublime? ("Open as Sublime Text Project")

@mittalyashu
Copy link

mittalyashu commented Jul 17, 2017

I somehow managed to find on internet and created a new gist.

In this gist you can create keys to open file and folders in sublime.

@ZubairKarim
Copy link

ZubairKarim commented Jul 23, 2017

WoW, very nice solution

@gtalarico
Copy link

gtalarico commented Sep 11, 2017

Minor Fix:

  1. Add Quotes path to allow file paths with spaces
  2. Added Option to "Open Sublime Here" to allow right clicking on directory background (
@echo off
SET st3Path=\"C:\Users\gtalarico\Dropbox\Shared\_Common\_Portable Apps\Sublime3\sublime_text.exe\"

rem add it for all file types
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text 3"         /t REG_SZ /v "" /d "Open with Sublime 3"   /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text 3"         /t REG_EXPAND_SZ /v "Icon" /d "%st3Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text 3\command" /t REG_SZ /v "" /d "%st3Path% \"%%1\"" /f

rem add it for folders
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 3"         /t REG_SZ /v "" /d "Open with Sublime 3"   /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 3"         /t REG_EXPAND_SZ /v "Icon" /d "%st3Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 3\command" /t REG_SZ /v "" /d "%st3Path% \"%%1\"" /f

rem add it for folder background
@reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\Open with Sublime Text 3 Here"         /t REG_SZ /v "" /d "Open Sublime 3 Here"   /f
@reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\Open with Sublime Text 3 Here"         /t REG_EXPAND_SZ /v "Icon" /d "%st3Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\Open with Sublime Text 3 Here\command" /t REG_SZ /v "" /d "%st3Path% \"%%V\"" /f
pause

image

@jahidulsaeid
Copy link

jahidulsaeid commented Oct 26, 2017

it's work for linux ?

@mittalyashu
Copy link

mittalyashu commented Oct 30, 2017

Everything works fine.

But I have one problem and that is if we select a directory and open in Sublime Text.
The probme is that it open's that directory in new sublime window.

I want to append that directory in the existing sublime window.

@adarshanand123
Copy link

adarshanand123 commented Mar 8, 2018

Very very Thanks.I reduced my work.

@1j01
Copy link

1j01 commented Jul 28, 2018

Remove / uninstall for the original script:

@echo off
SET st2Path=C:\Program Files\Sublime Text 2\sublime_text.exe

rem remove it for "all file types"
@reg delete "HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text 2" /f

rem remove it for folders
@reg delete "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 2" /f
pause

@filviu
Copy link

filviu commented Dec 13, 2018

License?

I want to fork https://github.com/jcppkkk/OpenWithSublime to create a similar set of scripts for Visual Basic Code. Asked him about license and he pointed that his scripts are forked from https://gist.github.com/FoxColdMetal/7403764 which are forked from these. So what license would it be ? :)

@ibrahimoguzhany
Copy link

ibrahimoguzhany commented Oct 6, 2020

I've never used Sublime Text 2 and i didn't read carefully that this post is about Sublime Text 2. I'm using Sublime Text 3 instead. So i added open with Sublime Text 2 option to the right click and don't know how to undo it. Any ideas?

I succesfully added open with sublime text 3 option by changing everything from 2 to 3 by editing the folder. You should change st2 to st3 in addition to that.

@mrchief
Copy link
Author

mrchief commented Oct 6, 2020

Added License. Feel free to send your st3 updates and I can add them here. I don't use ST anymore but seeing how useful this is, I want continue supporting this.

@TheZoc
Copy link

TheZoc commented Dec 28, 2020

Thank you for this script!
Based on many comments on this gist, I went to create my overengineered version of this script, that can install and uninstall those changes.
I also added a way to add the path to sublime text to the current user environment variables (As I got used to run subl from command line while working on different operating systems).
And as a final touch, it will ask for admin permissions, in case the user forgot to run it.

In hopes it will be useful to someone else, I thought I'd it here: https://gist.github.com/TheZoc/e3295df094801fa937596964499ac048

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