Как добавить sublime text в контекстное меню
Перейти к содержимому

Как добавить sublime text в контекстное меню

  • автор:

Вызов контекстного меню в sublime text 3

введите сюда описание изображения

Как вызвать контекстное меню в боковом сайдбаре ST3 (кроме клика правой кнопкой мыши)? В настройках горячих клавиш пробовал повесить команду на различные комбинации:

Но ни один способ не заработал. В первом варианте контекстное меню работает в системных горячих клавишах (такое распознается нажатие на fn). Как вызвать контекстное меню в st3?

Отслеживать

задан 6 дек 2016 в 14:42

while1pass while1pass

2,265 1 1 золотой знак 29 29 серебряных знаков 58 58 бронзовых знаков

Добавление своего пункта в контекстное меню Windows

Сегодня расскажу о том как добавить свой собственный пункт в контекстное меню Windows. Я давненько пользуюсь Sublime, но меня всегда раздражало что нельзя сразу открыть папку в редакторе. Такого пункта просто нет.

Как выглядит контекстное меню изначально на моём ПК - Faranote.ru

Добавление (редактирование) пунктов в контекстное меню происходит в “Редакторе реестра”. Чтобы его открыть жмём “Пуск – Выполнить” или нажимаем одновременно клавиши “Windows и R”. В открывшимся окошке вписываем “regedit” и жмём “OK”.

Пуск - Выполнить - Faranote.ru

Ветка реестра в которой мы будем работать зависит от объекта над которым мы хотим произвести действие.

  • Для файлов: “HKEY_CLASSES_ROOT/*/shell”
  • Для папок папок: “HKEY_CLASSES_ROOT\Folder\shell”
  • Для запоминающих устройств (диски, флешки и др.): “HKEY_CLASSES_ROOT\Drive\shell”
  • Для “Мой компьютер” (“Этот компьютер”): “HKEY_CLASSES_ROOT\CLSID\shell”
  • Для “Рабочего стола”: “HKEY_CLASSES_ROOT\DesktopBackground\Shell”
  • Для “Корзины”: “HKEY_CLASSES_ROOT\CLSID\shell”

Итак, так как я хочу добавить пункт для папки, то я буду работать в ветке “HKEY_CLASSES_ROOT\Folder\shell”.

Для одиночного пункта

1. Переходим в ветку “HKEY_CLASSES_ROOT\Folder\shell”

Ветка

2. Внутри раздела “shell” создаём раздел с каким угодно названием, но на латинице. У меня будет “opentosublime”.

Создаём раздел внутри

3. Внутри нового раздела (“opentosublime”) создаём “Строковый параметр” с названием “MUIVerb”, а в значении пишем то что хотим видеть в контекстном меню. У меня будет “Открыть в Sublime”.

Создаём строковые параметры - Faranote.ru

Немного теории. Можно создать ещё несколько строковых параметров:

  • Position – определяет, в каком месте контекстного меню будет находиться пункт. “Top” (вверху) или “Bottom” (внизу). Если этот параметр не создавать, пункт будет отображаться в середине контекстного меню.
  • Icon – определяет, какая иконка будет отображаться в контекстном меню слева от пункта. В значении нужно указать путь до иконки формата “.ICO” или путь к программе, тогда будет использоваться иконка этой программы.
  • Extended – определяет, является ли созданный пункт “скрытым”. Чтобы он отображался, перед открытием контекстного меню нужно будет нажать и удерживать клавишу Shift. Если не создавать, пункт будет виден.
  • SubCommands – определяет, является ли пункт выпадающим списком.

4. Я создам “Строковый параметр” с названием “Icon”, а в значении укажу путь до программы “Sublime Text”.

Создаём строковый параметр

5. Создадим внутри раздела “opentosublime” ещё один раздел с названием “command”.

6. В разделе “command” есть 1 параметр типа “REG_SZ” и названием “По умолчанию”, изменим его значение на действие которое мы хотим совершить. Мне нужно чтобы папка по которой я щёлкаю правой кнопкой мыши открывалась в редакторе “Sublime”, для этого я впишу в значение путь до программы “C:\Program Files\Sublime Text\sublime_text.exe”, а также параметр “%1”. В этом параметре передаётся путь к элементу над котором мы совершаем действие. Т.е. у меня это путь к папке.

Прописываем команду для пункта в контекстном меню - Faranote.ru

Проверяем новый пункт меню. Работает.

Результат добавления пункта в контекстное меню - Faranote.ru

Для вложенных пунктов.

Я хочу чтобы у меня была возможность выбора редактора (“Sublime” и “Notepad++”) для открытия папки.

1. Создадим раздел “opentoeditor” внутри “HKEY_CLASSES_ROOT\Folder\shell”.

2. Внутри раздела “opentoeditor” создадим “Строковый параметр” с названием “MUIVerb” и значением “Открыть в редакторе”.

3. Внутри раздела “opentoeditor” создадим “Строковый параметр” с названием “SubCommands” и значением “editor1;editor2”. Значения пишем через “;” их количество должно соответствовать количество подпунктов.

Создаём строковый параметр

4. Переходим в ветку “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell и создаём в ней разделы с названием значений которые указывали раннее (editor1, editor2).

  • Внутри каждого нового пункта (editor1, editor2) создадим строковый параметр “Icon”.
  • Внутри каждого нового пункта (editor1, editor2) создадим раздел с названием “command”.

5. Внутри каждого “command” изменим значение параметра “REG_SZ” на путь до редактора + параметр “%1”

Прописываем команду для каждого пункта в контекстном меню - Faranote.ru

В итоге получилось так.

Результат добавления пунктов в контекстное меню - Faranote.ru

Вообще, есть множество готовых программ для редактирования контекстного меню, например Easy Context Menu

Как добавить иконку Sublime Text в контекстное меню проводника Windows?

После установки Sublime Text в Windows 10 я обнаружил, что при вызове контекстного меню в пункте “Open With Sublime Text” отсутствует иконка этого редактора, но, к счастью, это легко исправить, выполнив несколько несложных операций.

С помощью комбинации клавиш Win + R вызовите меню “Выполнить” и введите в нём regedit для запуска редактора реестра. В редакторе перейдите по пути:

HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text

В этой ветке реестра необходимо нажать СоздатьСтроковый параметр и в поле Имя укажите значение Icon , а в поле Значение укажите путь к exe-файлу, как показано ниже (кавычки обязательны):

«C:\Program Files\Sublime Text 3\sublime_text.exe»

Если вы всё сделали правильно, то в контекстном меню пункт “Open With Sublime Text” будет выглядеть так:

Аналогичным образом можно добавить иконку для любой другой программы.

Возможно ли sublime text 3 добавить в контекстное меню windows7?

Возможно ли добавить sublime text 3 в контекстное меню так, чтобы нажав на папке или файле правой кнопкой мыши была строчка «открыть в sublime text 3» ?
Если можно то напишите пожалуйста код, ведь он наверняка простой и не объемный.

  • Вопрос задан более трёх лет назад
  • 6991 просмотр

2 комментария

Оценить 2 комментария

Сергей @SirBataneg
получилось сделать?
vasIvas @vasIvas Автор вопроса
Сергей: неа. У меня портабл версия. А по ссылке на создание bat говорится о виндовс восемь.
Решения вопроса 2
Сергей @SirBataneg
веб-разработчик

Быть может поможет вот это

А так, в принципе, при установке он предлагает добавить пункты в контекстное меню.

Ответ написан более трёх лет назад
Нравится 8 6 комментариев
vasIvas @vasIvas Автор вопроса
К сожалению это для 8.1, а у меня семерка.
Сергей @SirBataneg
vasIvas: тут без разницы 7, 8, 8.1
Сергей @SirBataneg

vasIvas: If your are running on windows 8.1, to launch the file just right click the file and chose “Run as administrator”. О восьмёрке идёт речь только про запуск под админом батника.

vasIvas @vasIvas Автор вопроса

binzin

Проверено, на WIN7 работает
windows 10 — работает. Спасибо!

fallen8rwtf

Константин @fallen8rwtf

смотрите в сторону редактирование реестра. делал такое для открытия файла в cmd. под рукой сейчас нет инфо

Ответ написан более трёх лет назад
Нравится 1 8 комментариев

fallen8rwtf

Константин @fallen8rwtf
скиньте ссыль на портабл, вышлю вам решение
vasIvas @vasIvas Автор вопроса

fallen8rwtf

Константин @fallen8rwtf

vasIvas: окей.
к примеру, Sublime лежит у нас по C:\SUBLIME. Создайте REG-файл с таким содержимым:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Sublime\command]
@=»C:\\SUBLIME\\Sublime Text Build 3083 x64\\subl.exe %1″

и откройте его, либо вручную создайте нужные ветки в реестре (только используйте одиночные слэши)

fallen8rwtf

Константин @fallen8rwtf

vasIvas: Соответственно, вы можете сами назначить для каких типов файлов у вас будет появляться нужный пункт в контекстном меню. Здесь указана звездочка, можно задать для файлов log,txt и так далее на ваше усмотрение

fallen8rwtf

Константин @fallen8rwtf
Константин: И после shell указывается название самого пункта. Можете назначить что угодно))

fallen8rwtf

Константин @fallen8rwtf

Не заморачивался так, по идее вам нужно будет уже назначить конкретные типы расширений и для них создать раздел DefaulIcon со значением пути ярлыка

fallen8rwtf

Константин @fallen8rwtf
vasIvas: на папку? типа все файлы в папке открыть в sublime?
vasIvas @vasIvas Автор вопроса
Константин: наверное да. Но у меня уже получилось. Спасибо Вам за помощь!
Ответы на вопрос 3

afishr

make const not var

При установке Sublime есть checkbox «Add to explorer context menu»
a172a3e0b079403e9377e4b9b0d6bc18.png
3f104e1437134d05835010fe5b801978.png

Ответ написан более трёх лет назад
Нравится 3 2 комментария
vasIvas @vasIvas Автор вопроса
Только вот у меня портабл.

afishr

vasIvas: Ну тогда да, без редактирования реестра никак

Через реестр можно добавить:
С помощью комбинации клавиш Win + R вызовите меню “Выполнить” и введите в нём regedit для запуска редактора реестра. В редакторе перейдите по пути:
HKEY_CLASSES_ROOT\*\shell\Open with Sublime Text
В этой ветке реестра нам необходимо нажать Создать → Строковый параметр и в поле Имя укажите значение Icon, а в поле Значение укажите путь к exe-файлу, как показано ниже (кавычки обязательны):
“C:\Program Files\Sublime Text 3\subl.exe”

Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Jenya Sokolov @KoYoT_Style
full stack web-dev
Создайте «батник» с содержанием:

@echo off SET st3Path=C:\Program Files\Sublime Text 3\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 Text 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 Text 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 pause rem add it for right click on explorer @reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\Sublime" /t REG_SZ /v "" /d "Open with Sublime Text 3" /f @reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\Sublime" /t REG_SZ /v "Icon" /d "%st3Path%" /f @reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\Sublime\command" /t REG_SZ /v "" /d "%st3Path% \"%%V\"" /f pause

Нужное (путь к исполняемому файлу) заменить и запустить

Ответ написан более года назад
Комментировать
Нравится Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

windows

  • Windows
  • +2 ещё

Нужна ли нам вся эта безопасность?

  • 3 подписчика
  • 4 часа назад
  • 197 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *