Nilesoft Shell — менеджер контекстных меню для Windows

Nilesoft Shell — менеджер контекстных меню для Windows

Использование утилиты Nilesoft Shell Гибких редакторов контекстных меню рабочего стола, файлов, папок, панели задач и других элементов Проводника Windows, одинаково совместимых с Windows 11, 10, 8.1 и 7 не так много. Nilesoft Shell — одна из таких бесплатных программ.

В этом обзоре о возможностях Nilesoft Shell — утилиты с открытым исходным кодом для настройки собственных контекстных меню Windows и дополнительная информация, которая может пригодиться, если вы решите разобраться с программой.

Как выглядят контекстные меню Nilesoft Shell

Ранее на сайте публиковались статьи об инструментах редактирования контекстных меню в Windows 10 и Windows 11, таких как Easy Context Menu или Custom Context Menu . Эти программы позволяют добавлять или менять пункты стандартных контекстных меню. Nilesoft Shell полностью заменяет системные контекстные меню проводника своими (но добавляет в них и стандартные системные пункты контекстного меню текущей системы):

Пример контекстных меню Nilesoft Shell

При этом дизайн меню, как вы можете видеть из скриншотов выше, имеет «стиль Windows 11» в том числе при работе в Windows 10 (нижний скриншот) — с закругленными углами, соответствующими значками и поддержкой прозрачности.

Shell меняет меню для различных элементов Проводника Windows:

  • Файлов и папок, дисков в проводнике
  • Рабочего стола
  • Панели задач (при этом его можно редактировать отдельно от общего меню для элементов проводника)

Всё это работает быстро и почти не вызывает дополнительной нагрузки на компьютер. Во всяком случае, в моем тесте дела обстояли именно так.

Использование Nilesoft Shell

Скачать Nilesoft Shell можно одним из следующих способов:

Сразу после установки контекстные меню Windows будут изменены: примеры меню рабочего стола и файлов вы могли увидеть на скриншотах выше, в них будут добавлены дополнительные пункты, такие как « Стать владельцем », пункты для изменения атрибутов файлов и другие. Дополнительно будет модифицировано контекстное меню панели задач:

Активные меню Nilesoft Shell

С этого момента можно просто начать пользоваться новым контекстным меню, но самая интересная часть программы — возможность редактирования, создания собственных пунктов меню, команд и значков для них, изменения оформления. Учитывайте, это потребует от вас готовности разобраться в коде для описания структуры меню в Shell.

Действия по настройке меню путем редактирования файлов скриптов из папки Nilesoft Shell на собственном, сравнительно простом для понимания скриптовом языке. Здесь пригодится следующая информация:

  • Чтобы попасть в папку со скриптами, удерживая Shift, нажмите правой кнопкой мыши по панели задач и выберите пункт меню Shell — Directory. Открыть папку скриптов Shell
  • Основной файл контекстных меню имеет имя shell.nss (редактировать можно в любом текстовом редакторе) и содержит строки для настройки оформления (например, прозрачности) и импорта модулей (таких же файлов .nss), содержащих пункты меню. Файл shell.nss
  • В основном файле shell.nss содержатся несколько секций: var — для задания глобальных переменных; set — для указания глобальных настроек, например, цвета, прозрачности и других параметров оформления; static — для настройки и изменения стандартных пунктов контекстных меню; dynamic — для создания собственных пунктов контекстных меню.
  • Файлы модулей контекстного меню содержатся в папке imports — вы можете изучить уже имеющиеся, чтобы разобраться в скриптовом языке или изменить их (например, поменять названия пунктов меню на русский язык). Папка imports
  • Собственные пункты меню можно прописать прямо в shell.nss , но лучше создать собственный файл .nss в imports, а затем прописать его импорт в разделе Dynamic главного файла контекстного меню. Контекстное меню панели задач, возможно, удобнее будет редактировать прямо в файле taskbar.nss
  • Для редактирования стандартных пунктов меню можно использовать уже имеющийся файл static.nss , импорт которого прописан в разделе Static файла shell.nss. Например, следующий код в static.nss скроет стандартные пункты «Обновить» и «Персонализация», а для пункта «Сортировка» изменит имя, значок и его цвет:
    item(find='"Обновить"|"Персонализация"' visibility="remove")item(find='Сортировка' title='Порядок' image=[uE010,#1096f7])

Изучить синтаксис скриптов можно как путем просмотра уже готовых файлов .nss в папке imports, так и обратившись к документации на официальном сайте , где показаны все поддерживаемые функции, способы описать свойства пунктов меню и представлена дополнительная информация.

На творчество ниже мне потребовалось около 15 минут без предварительного знакомства с синтаксисом языка, используемого в Nilesoft Shell. Некоторые из пунктов даже работают, а большая часть времени была потрачена на то, чтобы разобраться со значками для пунктов меню:

Собственное контекстное меню в Nilesoft Shell

Код файла .nss для примера на изображении выглядел следующим образом:

Код своего меню в Nilesoft Shell

После внесения изменений в код shell.nss и ваших модулей .nss потребуется повторно зарегистрировать меню в Проводнике, шаги будут следующими:

  1. Удерживая Shift нажать правой кнопкой мыши по панели задач.
  2. В разделе «Shell» открыть пункт «Manager».
  3. Нажать кнопку «Register» и подтвердить перезапуск проводника после выполнения регистрации. Менеджер меню Nilesoft Shell

Если после регистрации измененных контекстных меню стали отображаться меню Windows по умолчанию, это говорит о том, что где-то в вашем коде была ошибка: потребуется найти и исправить ошибку (либо убрать импорт вашего кода из shell.nss), запустить Shell Manager через меню Пуск или из папки с программой (от имени администратора), а затем снова выполнить регистрацию.

Краткий список возможностей при редактировании и настройке контекстных меню в NileSoft Shell:

  • Использование переменных в именах пунктов меню (то есть названия пунктов могут меняться динамически), пример на скриншоте — подстановка имени папки, внутри которой производится действие в качестве части имени пункта меню: Использование переменных для имен пунктов меню
  • Настройка показа пунктов меню только для определенных элементов — папок, файлов, только при выборе одного или несколько элементов, только для файлов одного типа.
  • Изменение степени прозрачности, цвета, эффекта прозрачности (в файле shell.nss)
  • Добавление значков и настройка их цветов из SVG (код иконок SVG удобно прописать в images.nss и обращаться к ним по имени), символьных шрифтов (через указание кода символа и имени шрифта), файлов DLL и других файлов с графическими ресурсами. Коды встроенных значков Shell можно посмотреть на этой странице .
  • Использование переменных, условных операторов.
  • Встроенные функции для работы с файловой системой, реестром, окружением Windows, запуска системных утилит.

Подводя итог, Shell — один из лучших инструментов для работы с контекстными меню, которые я встречал. Если вас не смущает необходимость изучения синтаксиса используемого скриптового языка, используемого в программе — рекомендую.

Дать исчерпывающую инструкции по написанию кода в рамках этого обзора я не могу (пришлось бы переводить и адаптировать всё оригинальное руководство), но, если возникнут вопросы по реализации какой-то задумки, дайте знать в комментариях: возможно, мне или кому-то из читателей удастся вам помочь.

EnglishRussianUkrainian