+7 (495) 229-0436   shopadmin@itshop.ru 119334, г. Москва, ул. Бардина, д. 4, корп. 3
 
 
Вход
 
 
Каталог
 
 
Подписка на новости
Новости ITShop
Windows 7 и Office: Новости и советы
Обучение и сертификация Microsoft
Вопросы и ответы по MSSQLServer
Delphi - проблемы и решения
Adobe Photoshop: алхимия дизайна
 
Ваш отзыв
Оцените качество магазина ITShop.ru на Яндекс.Маркете. Если вам нравится наш магазин - скажите об этом Google!
 
 
Способы оплаты
 
Курс расчета
 
 1 у.е. = 91.78 руб.
 
 Цены показывать:
 
 
 
 
  
Новости, статьи, акции
 

Запуск внешних приложений из Notepad++. NppExec: ускоряем поиск в Интернете и не только…

20.07.2012 12:33
Placido

Поскольку я не очень опытный разработчик - так вышло, что в веб я пришел недавно - по ходу написания кода мне часто приходится обращаться к официальной документации PHP и MySQL, а также искать во время работы с текстами определенную информацию еще на паре сайтов, не связанных с IT, но связанных с другой моей работой.

Notepad++ и поиск в Интернете


Раньше в случае возникновения вопроса мне нужно было выполнить следующие действия:

  1. Выделить фрагмент текста (или кода);
  2. Скопировать его в буфер обмена;
  3. Перейти в браузер;
  4. Вставить текст из буфера обмена в строку поиска (где предварительно должно уже было быть введено site: адрес сайта или открыт требуемый сайт);
  5. Нажать кнопку "искать" (ввод).

С помощью дополнения NppExec это можно сделать в несколько раз быстрее. Предварительно, конечно, NppExec необходимо настроить.

Установка NppExec


Плагины->Plugin Manager->Show Plugin Manager->NppExec->Install. Перезапускаем Notepad++.

Настройка


Нажимаем F6.

В поле Command(s) вводим следующее:

C:\...\chrome.exe php.net/manual-lookup.php?function="$(CURRENT_WORD)"&lang=ru

(вместо троеточия вставляем полный путь к exe-шнику требуемого браузера).

image

Сохраняем: Save… - php_search

image

image

Аналогично настраиваем поиск по сайту MySQL. Поскольку я так и не смог разобраться с поиском на сайте mysql.com - при попытке найти что-либо через строку поиска на dev.mysql.com почему-то происходит перенаправление на search.oracle.com (а там сам черт ногу сломит) - ищем с помощью Google:

Нажимаем F6.

"C:\...\chrome.exe" http://www.google.com/search?q="site:dev.mysql.com $(CURRENT_WORD)"

Сохраняем: Save… - mysql_search.

image

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


Теперь все, что нужно сделать - выделить фразу или слово (например, имя функции) - Shift+Ctrl+rightArrow - и нажать Ctrl+F6. Браузер откроется на необходимой странице и отправит GET-запрос с выделенным словом в строке поиска (первый вызов Ctrl+F6 аналогичен F6 - необходимо ввести или выбрать сохраненную команду, в нашем случае - php_search или mysql_search).

В моем примере я использовал переменную окружения (переменная среды, англ. environment variable) CURRENT_WORD, но возможности дополнения NppExec гораздо шире, чем просто ускорение поиска в Интернете. C помощью этого плагина можно запускать практически любые внешние приложения и передавать им обширный ряд переменных - как собственных, так и системных переменных Windows. Это подробно описано в статье How to Run an external program from Notepad++ на сайте sourceforge.net, перевод которой я представляю ниже.

Как запустить внешнюю программу из Notepad++


Предположим, вам необходимо запустить внешнее приложение (например, компилятор, интерпретатор или веб-браузер) из Notepad++ (пункт меню "Запуск"), передав текущий документ в качестве аргумента. Чтобы это сделать, вам придется использовать переменные окружения. Плагин NppExec предоставляет в этом отношении большую гибкость.

Переменные окружения файлового уровня


Использование переменной окружения:

$(ПЕРЕМЕННАЯ_ОКРУЖЕНИЯ)

Например, текущий файл, который вы редактируете в Notepad++ - "E:\my Web\main\welcome.html".

Ниже приведены некоторые переменные окружения, содержащие информацию о текущей сессии:

FULL_CURRENT_PATH - "E:\my Web\main\welcome.html".
CURRENT_DIRECTORY - "E:\my Web\main\".
FILE_NAME - "welcome.html". 
NAME_PART - "welcome".
EXT_PART - "html". 
SYS.<переменная> - имя системной переменной окружения, например, $(SYS.PATH).

Переменные стоит обрамлять двойными кавычками, поскольку они могут содержать пробелы:

"$(ПЕРЕМЕННАЯ_ОКРУЖЕНИЯ)"

Примеры

firefox "$(FULL_CURRENT_PATH)"
iexplore "$(FULL_CURRENT_PATH)" 

Эти две пользовательские команды также включены в Notepad++ 3.0 и в более поздние версии. Их можно запустить, нажав Ctrl+Alt+Shift+X и Ctrl+Alt+Shift+I соответственно.

Переменные окружения уровня документа


Существуют следующие переменные:

CURRENT_WORD - содержит слово (слова), которое в текущий момент выделено в Notepad++. 
CURRENT_LINE - содержит номер строки Notepad++, на которой в данный момент находится курсор. 
CURRENT_COLUMN - содержит номер колонки Notepad++, на которой в данный момент находится курсор. 
NPP_DIRECTORY - содержит абсолютный путь к системной директории Notepad++. 

Дополнительные переменные, доступные с помощью плагина NppExec:

PLUGINS_CONFIG_DIR - полный путь к конфигурационной директории, в которой находятся файлы плагинов.
#N - полный путь к n-ному открытому документу (n = 1, 2, 3 ...).
#0 - Полный путь к файлу notepad++.exe.
LEFT_VIEW_FILE - путь к файлу, открытому в главном (левом) окне Notepad++.
RIGHT_VIEW_FILE - путь к файлу, открытому в дополнительном (правом) окне Notepad++.
Если вы знаете, в какой директории находится плагин, вы можете вызвать любую функцию этого плагина, передав в rundll.exe имя плагина, имя функции и, если требуется, аргументы. Или же выгрузить плагин командой regsvr /u.

Примеры

http://www.php.net/%20$(CURRENT_WORD)
http://www.google.com/search?q=$(CURRENT_WORD)
http://en.wikipedia.org/wiki/Special:Search?search=$(CURRENT_WORD) 
$(NPP_DIRECTORY)\notepad++.exe $(CURRENT_WORD)

В примерах 1-3 мы передаем в качестве аргумента URL + выделенное в данный момент слово браузеру, установленному по умолчанию, с целью поиска слова в Интернете.
Четвертый пример полезен в том случае, если вы хотите открыть файл из текущего документа. 

Предположим, что у нас есть файл, содержащий следующую запись:

include("../myFuncs.php");

Если выделить ../myFuncs.php и нажать сочетание клавиш, которому вы назначите эту команду, то в Notepad++ откроется файл myFuncs.php, если, конечно, он существует и находится по указанному пути.
Переменная CURRENT_WORD позволяет удобно конфигурировать внешние команды.

Запуск команды


Когда вы используете NppExec для запуска команды, перед ее запуском устанавливаются и становятся доступными для использования следующие переменные:

CWD - текущая рабочая директория NppExec (используйте "cd" для ее изменения).
ARGC - количество аргументов, переданных команде NPP_EXEC.
ARGV - все аргументы, переданные команде NPP_EXEC, которые следуют после имени скрипта.
ARGV[0] - имя скрипта - первый параметр команды NPP_EXEC.
ARGV[n] - n-ный аргумент (1, 2, 3...)
RARGV - все аргументы в обратном порядке (за исключением имени скрипта).
RARGV[n] - n-ный аргумент с конца (n, n-1, n-2, n-3...).
INPUT - это значение задается командой 'inputbox'.
INPUT[n] - n-ное поле переменной $(INPUT).

Если внешний процесс "знает" о NppExec, то может установить некоторые переменные для использования в NppExec (с версии 0.3.1):

OUTPUT - это значение может быть задано дочерним процессом (подробнее - в описании команды npe_console v+).
OUTPUT1 - первая строка в $(OUTPUT).
OUTPUTL - последняя строка в $(OUTPUT).

Нужно добавить, что возможность быстрого поиска в google.com и en.wikipedia.org встроена в Notepad++ по умолчанию. Нужно выделить необходимую фразу и нажать Alt-F2 и Alt-F3 соответственно.

Ссылки по теме

  
Помощь
Задать вопрос
 программы
 обучение
 экзамены
 компьютеры
Бесплатный звонок
ICQ-консультанты
Skype-консультанты

Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 
Бестселлеры
Курсы обучения "Atlassian JIRA - система управления проектами и задачами на предприятии"
Microsoft Windows 10 Профессиональная 32-bit/64-bit. Все языки. Электронный ключ
Microsoft Office для Дома и Учебы 2019. Все языки. Электронный ключ
Курс "Oracle. Программирование на SQL и PL/SQL"
Курс "Основы TOGAF® 9"
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год. Электронный ключ
Курс "Нотация BPMN 2.0. Ее использование для моделирования бизнес-процессов и их регламентации"
 

О нас
Интернет-магазин ITShop.ru предлагает широкий спектр услуг информационных технологий и ПО.

На протяжении многих лет интернет-магазин предлагает товары и услуги, ориентированные на бизнес-пользователей и специалистов по информационным технологиям.

Хорошие отзывы постоянных клиентов и высокий уровень специалистов позволяет получить наивысший результат при совместной работе.

В нашем магазине вы можете приобрести лицензионное ПО выбрав необходимое из широкого спектра и ассортимента по самым доступным ценам. Наши менеджеры любезно помогут определиться с выбором ПО, которое необходимо именно вам. Также мы проводим учебные курсы. Мы приглашаем к сотрудничеству учебные центры, организаторов семинаров и бизнес-тренингов, преподавателей. Сфера сотрудничества - продвижение бизнес-тренингов и курсов обучения по информационным технологиям.



 

О нас

 
Главная
Каталог
Новинки
Акции
Вакансии
 

Помощь

 
Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 

Способы оплаты

 

Проекты Interface Ltd.

 
Interface.ru   ITShop.ru   Interface.ru/training   Olap.ru   ITnews.ru  
 

119334, г. Москва, ул. Бардина, д. 4, корп. 3
+7 (495) 229-0436   shopadmin@itshop.ru
Проверить аттестат
© ООО "Interface Ltd."
Продаем программное обеспечение с 1990 года