Как сделать макрос на клавиатуру, мышку [пошаговый пример]. Утилиты для создания макросов (последовательность нажатий нужных клавиш)
Всем здравия!
Иногда при работе на компьютере необходимо нажимать последовательно несколько клавиш (причем, чем быстрее и «четче» это делаешь — тем лучше!). Например, это часто требуется в играх, при каких-то рутинных офисных задачах и пр.
Однако, всё можно упростить! Представьте, вы нажмёте только одну клавишу — а спец. программа за вас нажмет последовательность из 5÷10 клавиш, которую вы ей заранее укажите (причем, она может это сделать как очень быстро, так и с определенной паузой). Кстати, называют подобные «трюки» — макросами.
А если вы сделаете 3-4 таких макросов?! (на все возможные случаи). Да вы сможете нажимать так быстро любые комбинации клавиш, что ни один человек без «таких же фокусов» не сможет вас обогнать (обыграть!). Нажал одну клавишу в каком-нибудь «Mortal Kombat» — и боец делает всю связку без промедления! ?
Собственно, в текущей заметке приведу простейший пример макроса: от А до Я. Думаю, что, начав с малого и поэкспериментировав — многие пользователи смогут добиться весьма неплохих результатов. ?
Не обгонишь, я быстрее нажму!
Создание макроса: нажимам 1 клавишу — получаем последовательность из 10!
Пошаговый пример: делаем макрос для игры
? ШАГ 1
Для нашего примера я взял утилиту BotMek (ссылка на сайт разработчика). Она проста в настройке, полностью на русском, и позволяет создавать достаточно длинные и хитрые комбинации макросов. Это нам и нужно ?.
ШАГ 1 — открываем раздел «макрос»
? ШАГ 2
Далее нажать кнопку «Создать макрос» и дать ему имя (лучше использовать название игры или приложения, для которого макрос создается, чтобы вы по имени могли легко сориентировать к чему и зачем это. ).
ШАГ 2 — название макроса
? ШАГ 3
Теперь для созданного макроса нам нужно записать комбинацию нажатий мыши и клавиатуры: именно ее потом программа и будет воспроизводить (эмулировать нажатия за нас!).
ШАГ 3 — начать запись
После нажмите на клавиатуре последовательно всё клавиши, которые программа должна запомнить и записать! Учтите, что она запоминает даже паузы между нажатиями клавиш!
По сути, мы делаем образец, и он должен быть идеальным. ? В конце операции нажмите по клавише «Стоп» и затем «OK» (этим мы сохраним макрос и выйдем в меню).
нажимаем последовательность клавиш
? ШАГ 4
Теперь нам нужно этот макрос (последовательность клавиш) установить на какую-нибудь реальную клавишу — т.е. когда мы нажмем на неё — он и сработает.
ШАГ 4 — присваиваем макросу клавишу
? ШАГ 5
Осталось только войти в нужную нам игру/приложение (для которого мы создали макрос), и нажать кнопку активации макроса — в моем случае «Z».
Ву-а-ля, персонаж в игре начинает автоматически атаковать цель с применением всего боевого комбо! Задача решена?! ?
ШАГ 5 — испытания! // Скриншот из игры World of Warcraft
Разумеется, мой показанный пример очень прост и бесхитростный. Однако, если вы никогда не сталкивались с этим — то начинать лучше с малого, потихоньку усложняя и накручивая «свои заготовки».
Примечание : кстати, не во всех играх приветствуются подобные макросы. В ряде случаев они могут сильно влиять на итоговый результат, сильно улучшая навыки игрока.
Какие утилиты можно порекомендовать для начинающих
Разумеется, программ и утилит подобного рода достаточно много. В этой заметке у меня нет цели представить их все (с описанием плюсов и минусов) — самое главное дать несколько наводок для начинающих.
Т.е. те приложения, с которыми под силу разобраться «средней» руки пользователю, который накануне «открыл» для себя тему макросов. ?
BotMek
BotMek: главное окно программы
Добротная программа, позволяющая легко написать макросы на клавиатуру и мышку (причем, программа позволяет это делать даже для самых обычных моделей, не относящихся к игровым).
Keyran
Редактор макросов // главное окно программы Keyran
Довольно мощная программа для создания макросов на мышь и клавиатуру (позволяет задать вручную список кнопок, которые компьютер должен «сам нажать» с нужными интервалами времени).
TinyTask
TinyTask — совсем небольшая утилита (несколько килобайт веса), позволяющая записывать и воспроизводить активность реальной клавиатуры/мыши (т.е. являться на время их программным эмулятором).
Отлично подходит для решения и автоматизации рутинных задач.
Кстати, программа также позволяет сохранить записанную последовательность в файл исполняемый EXE (что сделает перенос и запуск нужного сочетания клавиш еще проще). ?
Недостаток : есть неудобства при работе сразу с несколькими макросами (переключение не удобно).
Macros Effects: Макроскин (ME)
Macros Effects — скриншот главного окна
«Узко-спец.» приложение для постановки макросов на практически любые виды мышек. Совместима с макросами, написанными в Oscar Editor в формате AMC.
Минус : отсутствует возможность записывать и загружать команды для клавиатуры!
Ну а у меня на сим пока всё, успехов!
Как написать макрос в блокноте
Макрос – это набор слэш команд. Обычные слэш команды выглядят следующим образом:
/say (/s)
/whisper (/w, /talk, /t)
/reply (/r)
/emote (/e, /em, /me)
/dance
При помощи макросов эти команды можно будет назначить на определенные кнопки, а также станет возможным использовать их одновременно. Каждая команда должна быть написана с новой строки и иметь точно такой синтаксис, как если бы вы писали её в чате. Например, макрос, который заставит вашего персонажа закричать «Танцуют все!» и пуститься в пляс, будет выглядеть так:
/y Танцуют все!
/dance
Примечание: должен вас предупредить, что макросы запускают все одновременно. Это означает, что после нажатия кнопки макрос исполняет каждую команду от начала до конца, прежде чем он возвратит контроль игре. Это дает два важных эффекта. Во–первых, если вы пишите длинный макрос, который будет очень долго исполнятся (например, /run for i=1, 10000000 do end), игра заморозится до тех пор, пока макрос не выполнится. Во–вторых, наиболее важный факт – нет способа подождать в макросе без заморозки игры. Это факт становится более очевидным, когда вы используете команду /cast или что–то подобное.
Как создавать макросы вы можете прочесть в этой теме.
Во время вашей игры вы врядли будете писать много слэш команд, которые могут быть полезными для макросов. Конечно, обычная команда эмоции может придать ролевой антураж вашей игре, но не более.
Введите /cast – самую наиболее используемую команду в макросах. Она позволяет произнести любое заклинание из вашей книги заклинаний или заклинание вашего питомца. Самый простой пример макроса:
/cast Shadow Word: Pain
Этот макрос повесит Слово тьмы боль на вашу цель. Макрос ведет себя точно также, как если бы вы просто использовали заклинание с панели заклинаний. Игра распознает макрос как заклинание, покажет кулдаун и расстояние до цели. Вы даже можете выбрать вашему макросу такое же изображение, как и у самой магии.
Зачем же использовать макрос, если можно просто поставить магию на панель? Ответ прост. Макросы позволяют комбинировать множество команд, и поэтому они столь полезны.
Представьте, что вы маг и хотите объявить вашей группе, когда вы овцуете кого–либо. Для этого вставьте заклинание и сообщение через /p в макрос:
/cast Превращение
/p Овцую %t!
Примечание: Макрос запускает все сразу, поэтому вы скажете свою реплику сразу после того, как начнете произносить заклинание. Это значит, что если поместить эти команды в другом порядке, эффект будет тот же. Поэтому если у вас возникает желание сказать что–то только после того, как вы фактически произнесли заклинание, то вы можете воспользоваться аддоном AfterCast, который заставит следующую слэш команду работать только после того, как вы произнесете заклинание. Например:
/aftercast /p Нажмите на портал, чтобы призвать %t.
/cast Ритуал призыва
Внимание: названия заклинаний
Команда /cast очень придирчива к тому, как вы пишите названия заклинаний. Для того, чтобы успешно написать макрос, вы должны полностью соблюдать орфографию, пунктуацию и интервалы. Гарантией верного написания заклинания будет следующее действие – во время написание макроса откройте вашу книгу заклинаний и shift+клик на нужную способность. Таким образом вы получите точное название заклинания в макросе, включая любые модификаторы вроде форм друида для Увечья.
Использование предметов и аксессуаров
Все очень просто. Команда для использования предметов — /use. Как и в случае с /cast, самая обычная форма записи использует название того, что вы хотите использовать:
/use Зеленый механодолгоног
Также есть несколько других форм этой команды.
Эта форма позволяет использовать предмет в определенной ячейке. Номера ячеек представлены на данном рисунке:
Создание макросов и пользовательских функций на VBA
Введение
В принципе, существует великое множество языков программирования (Pascal, Fortran, C++, C#, Java, ASP, PHP. ), но для всех программ пакета Microsoft Office стандартом является именно встроенный язык VBA. Команды этого языка понимает любое офисное приложение, будь то Excel, Word, Outlook или Access.
Способ 1. Создание макросов в редакторе Visual Basic
К сожалению, интерфейс редактора VBA и файлы справки не переводятся компанией Microsoft на русский язык, поэтому с английскими командами в меню и окнах придется смириться:
Макросы (т.е. наборы команд на языке VBA) хранятся в программных модулях. В любой книге Excel мы можем создать любое количество программных модулей и разместить там наши макросы. Один модуль может содержать любое количество макросов. Доступ ко всем модулям осуществляется с помощью окна Project Explorer в левом верхнем углу редактора (если его не видно, нажмите CTRL+R). Программные модули бывают нескольких типов для разных ситуаций:
Обычный макрос, введенный в стандартный модуль выглядит примерно так:
Давайте разберем приведенный выше в качестве примера макрос Zamena:
С ходу ясно, что вот так сразу, без предварительной подготовки и опыта в программировании вообще и на VBA в частности, сложновато будет сообразить какие именно команды и как надо вводить, чтобы макрос автоматически выполнял все действия, которые, например, Вы делаете для создания еженедельного отчета для руководства компании. Поэтому мы переходим ко второму способу создания макросов, а именно.
Способ 2. Запись макросов макрорекордером
Чтобы включить запись необходимо:
Затем необходимо настроить параметры записываемого макроса в окне Запись макроса:
После включения записи и выполнения действий, которые необходимо записать, запись можно остановить командой Остановить запись (Stop Recording) .
Запуск и редактирование макросов
Создание кнопки для запуска макросов
Чтобы не запоминать сочетание клавиш для запуска макроса, лучше создать кнопку и назначить ей нужный макрос. Кнопка может быть нескольких типов:
Кнопка на панели инструментов в Excel 2003 и старше
Перетащите ее к себе на панель инструментов и затем щелкните по ней правой кнопкой мыши. В контекстом меню можно назначить кнопке макрос, выбрать другой значок и имя:
Кнопка на панели быстрого доступа в Excel 2007 и новее
Щелкните правой кнопкой мыши по панели быстрого доступа в левом верхнем углу окна Excel и выберите команду Настройка панели быстрого доступа (Customise Quick Access Toolbar) :
Затем в открывшемся окне выберите категорию Макросы и при помощи кнопки Добавить (Add) перенесите выбранный макрос в правую половину окна, т.е. на панель быстрого доступа:
Кнопка на листе
Этот способ подходит для любой версии Excel. Мы добавим кнопку запуска макроса прямо на рабочий лист, как графический объект. Для этого:
Выберите объект Кнопка (Button) :
Затем нарисуйте кнопку на листе, удерживая левую кнопку мыши. Автоматически появится окно, где нужно выбрать макрос, который должен запускаться при щелчке по нарисованной кнопке.
Создание пользовательских функций на VBA
После выбора функции выделяем ячейки с аргументами (с суммой, для которой надо посчитать НДС) как в случае с обычной функцией:
Компиляция программ с помощью Notepad++
Компиляция программ при помощи текстового редактора на примере Notepad++
Цель: Научиться компилировать программы из командной строки. Научиться компилировать из текстового редактора Notepad++ (вернее научиться писать скрипты и связывать их), создавать скрипты и макросы, устанавливать системные переменные.
.EXE (сокр. англ. executable — исполнимый) — расширение исполняемых файлов, применяемое в операционных системах DOS, Windows, Symbian OS, OS/2 и в некоторых других, соответствующее ряду форматов. Процесс получения exe файла состоит из следующих этапов: препроцессинг, ассемблирование, компилирование, линковка.
ОUT файлы — исполняемые файлы для UNIX-подобных операционных систем.
Файл может хранить исполняемый код, общую динамическую библиотеку или объектный код.
Терминология
Cmd.exe — интерпретатор командной строки (англ. command line interpreter) для операционных систем OS/2, Windows CE и для семейства операционных систем, базирующихся на Windows NT (англ. Windows NT-based). cmd.exe является аналогом COMMAND.COM
Те́кстовый проце́ссор — компьютерная программа, используемая для написания и модификации документов, компоновки макета текста и предварительного просмотра документов в том виде, в котором они будут напечатаны (свойство, известное как WYSIWYG).
Текстовые процессоры, в отличие от текстовых редакторов, имеют больше возможностей для форматирования текста, внедрения в него графики, формул, таблиц и других объектов.
Интерфе́йс по́льзователя, он же по́льзовательский интерфейс (UI — англ. user interface) — интерфейс, обеспечивающий передачу информации между пользователем-человеком и программно-аппаратными компонентами компьютерной системы (ISO/IEC/IEEE 24765-2010).
GUI означает graphical user interface, графический интерфейс пользователя.
GUI состоит из одного или нескольких окон и каждое окно содержит один или несколько элементов управления.
SDK (от англ. software development kit) — набор средств разработки, который позволяет специалистам по программному обеспечению создавать приложения для определённого пакета программ, программного обеспечения базовых средств разработки, аппаратной платформы, компьютерной системы, игровых консолей, операционных систем и прочих платформ.
IDE (Integrated Development Environment) — интегрированная среда разработки программного обеспечения.
Переменная среды́ (англ. environment variable) — текстовая переменная операционной системы, хранящая какую-либо информацию — например, данные о настройках системы.
Переменные среды́ Windows делятся на две категории:
Переменные среды́ пользователя — указывают путь до пользовательских каталогов.
Системные переменные — хранят данные о некоторых каталогах операционной системы и конфигурации компьютера.
Предпосылки
Для сборки проектов, в настоящее время часто используется командная строка.
Как это упрощает сборку? Дело в том, что вы можете создать командный файл с параметрами компилятора, с параметрами логирования, с параметрами получения ошибок и многими другими параметрами, которые будут автоматизировать вашу сборку. Плюсы такого подхода очевидны:
у вас не тратится время на загрузку тяжелой IDE, вы можете автоматизировать многие детали вашей сборки. Из командной строки могут быть доступны аргументы программы, которые недоступны из GUI. У GUI обычно меньше возможностей, потому как не все команды и аргументы будут предоставлены пользователю. Вы можете записать ваш скрипт(набор команд, логику и переменные) в отдельный файл и запускать при надобности.
К тому же такой подход даст вам более глубокое изучение и понимание того, что происходит во время выполнения. Вы сможете рассмотреть каждый шаг отдельно. Другой аспект, использование блокнота для компиляции, предоставляет вам возможность отлаживать и запускать небольшие куски кода без использования вашей тяжелой IDE. У вас в нужный момент может не оказаться установленной IDE и отсутсвовать подключение к интернет. В принципе вы можете использовать другой текстовый редактор, не Notepad++. Основная идея остается та же. В этой статье я опишу использование cmd Windows 10, Notepad++ и плагина NppExec. В предыдущих версиях Windows это тоже работает. Могут быть незначительные отличия. В данном вопросе вы можете разобраться самостоятельно.
Заметьте, это не призыв отказаться от удобных средств IDE. Хорошие, удобные IDE повышают производительность команды разработчиков. К сожалению, по тем или иным причинам не всегда существует возможность их использовать.
Скачать программы вы можете с официальных сайтов:
Notepad++: notepad-plus-plus.org
Исходники релизов программы: github.com/notepad-plus-plus/notepad-plus-plus/releases
Автор программы: Don HO, Senior Software Engineer
Биография \ Резюме автора: donho.github.io
Автор плагина: Vitaliy Dovgan
Помощь: Don HO, Jens Lorenz, Juha Nieminen,Joel Yulilouma
Новую версию NppExec вы можете скачать с сайта.
Версии NppExec: Unicode и ANSI
Разработчик рекомендует использовать Unicode версию.
Узнать версию NppExec: Плагины\NppExec\Help/About
Вначале рассмотрим компиляцию из командной строки.
Программа cmd в Windows находится по следующему пути:
Выполнить программу можно нажав поиск cmd и нажав на приложение «командная строка» либо из меню «выполнить», набрав cmd.
Настройки консоли cmd
В левом верхнем углу нажмите на значке консоли и выберите «свойства» для изменения текущих свойств. Вы можете поменять ряд свойств консоли: цвет, шрифт, расположение.
Для изменения свойств по умолчанию выберите «значения по умолчанию».
Вы можете назначить горячие клавиши для вызова командной строки.
Для этого наберите в поиске cmd, щелкните на «Командная строка» правой кнопкой и выберите «перейти к расположению файла. Затем, правой кнопкой на расположении и свойства. Установите курсор в поле «Быстрый вызов» и нажмите на клавиатуре сочетание клавиш, например: Ctrl+Alt+T. Такое сочетание клавиш соответствует вызову терминала Linux Ubuntu и вам не нужно будет заучивать новое. Если хотите, можете задать свое сочетание клавиш. cmd будет вызываться от имени пользователя. Чтобы запустить cmd от имени администратора, нужно набрать cmd в поиске, щелкнуть на нем правой кнопкой мышки и выбрать «Запуск от имени администратора».
cmd.exe — файл, это часть системы, командный интерпретатор системы Windows.
Командный интерпретатор, интерпретатор командной строки — компьютерная программа, часть операционной системы, обеспечивающая базовые возможности управления компьютером посредством интерактивного ввода команд через интерфейс командной строки или последовательного исполнения пакетных командных файлов.
Ключи запуска cmd.exe:
/c исполняет команду, заданную строкой, и завершает работу приложения;
/k исполняет команду, заданную строкой, и продолжает работу приложения;
/a — устанавливает вывод в стандарте ANSI;
/u — устанавливает вывод в Юникоде;
/? — вывод справки в командной строке;
Для компиляции из командной строки, вам нужно знать минимальных набор команд.
Для более глубокого изучения вам, скорее всего, понадобятся такие понятия как:
Processes, Threads, Streams, Fibers, семафоры, мьютексы и так далее. Всё то, что связанно с многопоточностью и многозадачностью.
В этой небольшой статье, пока что, таких глубоких знаний не требуется.
Немного о переменных
Вы можете использовать переменные, которые относятся к переменным среды пользователя, к переменным cmd, к переменным программы Notepad++, к переменным плагина NppExec.
Aliases — в общем случае это псевдонимы переменных. Они могут быть использованы для задания короткого имени переменной в определенной области видимости.
В нашем контексте слово «команда» означает команда или программа. Получить список команд вы можете набрав в командной строке «help» без кавычек. Отобразится список команд с их описанием. Получить помощь по определенной команде, вы можете набрав «help имя_команды».
Компиляция программ java из командной строки
Для компиляции программ java, у вас на компьютере должна быть установлена jdk.
«Java Development Kit (сокращенно JDK) — бесплатно распространяемый компанией Oracle Corporation (ранее Sun Microsystems) комплект разработчика приложений на языке Java, включающий в себя компилятор Java (javac)». JDK включает стандартные библиотеки классов Java, примеры, документацию, различные утилиты и исполнительную систему Java (JRE). В состав JDK не входит интегрированная среда разработки на Java, поэтому разработчик, использующий только JDK, вынужден использовать внешний текстовый редактор и компилировать свои программы, используя утилиты командной строки. Скачать её вы можете с сайта Oracle, либо выбрать OpenJDK. Существуют комплекты разработки приложений на Java других производителей, доступные для ряда платформ. Ссылка для скачивания jdk: jdk.java.net/archive
Вот несколько существующих на сегодняшний день jdk: Oracle JDK, OpenJDK by Oracle, AdoptOpenJDK, Red Hat OpenJDK, Azul Zulu, Amazon Corretto. Скачиваете и устанавливаете, в документации об установке всё подробно расписано. Если же вы уже используете IDE — интегрированную среду разработки с уже установленной JDK, то вам остается только найти её на вашем диске. Среды разработки либо включают в комплект поставки одну из версий JDK, либо требуют для своей работы предварительной инсталляции JDK на машине разработчика. Для компиляции и выполнения, вам потребуются файлы: javac.exe — для компиляции и java.exe — для выполнения программы. Заметьте jdk должна быть установлена, потому как при компиляции и выполнении используются ряд файлов ресурсов, таких как библиотеки классов, отладчик и другие ресурсы.
Если вы просто выполните такую команду, предварительно ничего не настроив, то скорее всего вы получите ошибку: «javac не является внутренней или внешней командой, исполняемой программой или пакетным файлом». То есть ваша система «не знает» где находится javac и нам нужно явно указать где находится компилятор.
Где установлена java, вы можете узнать набрав команду в консоли:
Пишем новую строчку:
Здесь папка_на_диске_первая, папка_на_диске_вторая — это название ваших папок на диске.
То есть это полный путь до файла javac.
Скорее всего вы получите следующую ошибку:
В этом случае javac сообщает нам, что нет такого файла hello.java и предлагает ознакомиться с опциями компилятора.
Мы можем решить эту проблему двумя путями. Перейти в каталог в терминале.
Либо указать полный путь при компиляции.
Здесь следует сделать уточнение, в данном случае я рассматриваю путь в системах Windows.
В других системах пути прописываются по другому. Более подробно смотрите документацию.
В случае успешной компиляции у вас в каталоге появится файл HelloWorld.class
Выполнить этот файл мы можем командой:
В данном случае точка означает текущий пакет, текущий каталог.
Если вы указываете в классе пакет, то вам при запуске скомпилированного файла нужно указать путь к пакету.
Мы с вами немного разобрались, как компилировать и запускать java программы из командной строки. Теперь нам нужно сделать тоже самое в Notepad++ при помощи плагина NppExec. Скачиваем и устанавливаем плагин, если он у нас еще не установлен и устанавливаем.
После правильной установки, плагин NppExec появится в меню «Плагины».
NppExec имеет свою собственную консоль наподобие CMD.
По умолчанию приглашение на ввод команд не отображается. Для показа\скрытия консоли выберите: Плагины\NppExec\Show console.
Для получения справки наберите в консоли help и нажмите Enter. Для получения более подробной информации об NppExec наберите в консоли: help npp_exec.
Так что, вообще говоря, NppExec — это инструмент. Этот инструмент делает именно то, что вы говорите, без каких-либо предположений, без неявного вызова чего-либо и так далее.
Это может быть критичто при разработке, когда «родная», «умная» консоль о чем-то «догадывается», к примеру в какой системе она запущена и может подставлять свои «умные» значения.
Do _not_ use NPP_EXEC to start a batch file or an executable file in NppExec!
Не используйте команду npp_exec для старта exe файла или bat файла.
Цель NPP_EXEC — выполнить собственный скрипт.
Для старта стороннего приложения напечатайте:
application.exe // в этом случае exe файл с именем application.exe
batchfile.bat // в этом случае batch с именем«batchfile.bat»
Нам остается только создать настройки для компиляции и выполнения. Мы сделаем эти настройки отдельно. Создадим настройки «для компиляции» и создадим настройки «для компиляции и выполнения».
Настройка системных переменных
Для того чтобы не вводить каждый раз полный путь к программе, будь то компилятор,
компоновщик, система сборки и т.д., вы можете установить системные переменные.
Как задаются системные переменные? Вы можете задать их в графическом интерфейсе, из cmd, используя Power Shell, используя regedit.
Как задать системные переменные используя графический интерфейс
Свойства компьютера\Дополнительно\Переменные среды\Переменные среды пользователя для «имя пользователя». Здесь вы можете создать, либо отредактировать имеющуюся переменную среды.
Как задать переменную среды используя командную строку
Для задания переменных окружения, вам нужно иметь права администратора.
— вывод текущих установленных переменных системного окружения. Команда выводит не полный список.
Другие переменные принимают свои значения динамически:
переменная — Имя переменной среды.
строка — Строка символов, присваиваемая указанной переменной.
— Показывает текущее значение переменной с именем имя_переменной.
— Выводит значение переменной.
Переменные, задаваемые командой set, действуют лишь на протяжении командной сессии, в которой они были заданы. То есть переменные будут действительны до прекращения сессии текущего пользователя либо до перезагрузки.
Для того чтобы переменные работали после перезагрузки, вам нужно добавить их в системный реестр (В случае использования систем линейки Windows). Они могут быть добавлены средствами GUI Windows:
Выберите Run или Выполнить(Клавиша Win+R)
У вас отобразится окно свойств системы. Выберите «дополнительно» и «переменные среды».
Здесь есть два вида переменных среды. Это системные переменные и переменные среды пользователя. Переменные среды пользователя относятся к определенному пользователю системы и его системному окружению. Здесь вы можете задать переменную Path для быстрого доступа к часто используемым программам. Значение переменной представляет из себя строку.
Это набор путей разделенных символом «;».
Переменная среды́ (англ. environment variable) — текстовая переменная операционной системы, хранящая какую-либо информацию — например, данные о настройках системы. Переменные среды́ устанавливаются пользователем или сценариями оболочки.
Вы также можете сделать это с помощью утилиты командной строки для работы с реестром Windows — reg.
— получение справки по данной утилите.
Пример использования скрипта для добавления системной переменой:
Эти переменные сохраняются до окончания текущей командной сессии либо до изменения значения в текущей сессии.
Чтобы добавить переменную path для текущего пользователя(текущий пользователь — пользователь имя которого вы использовали при входе в сеанс):
Устанавливаем значения переменных и используем их в команде
Значение Path указываем пути через точку с запятой.
Нам нужно указать в значении PARAM все пути, которые у нас были уже установлены и путь к компилятору.
HKEY_CURRENT_USER — это ветка текущего пользователя в реестре.
Environment — здесь хранятся переменные среды.
Предупреждение: «Так вы работаете с системным реестром. Обязательно сделайте копию реестра и создайте контрольную точку восстановления вашей системы». Безопаснее будет устанавливать системные переменные и переменные среды пользователя штатными средствами.
Обязательно ознакомьтесь с материалами:
Как создать резервную копию и восстановить реестр в Windows
Применимо к: Windows 7, Windows 8.1, Windows 10 (Официальная поддержка Microsoft):
support.microsoft.com/ru-ru/help/322756
— запуск средства удаления вредоносных программ Malicious Software Removal Tool
Настройки NppExec в Notepad++
Выбираем Плагины\NppExec\Execute или нажимаем F6.
В открывшемся окне пишем:
Нажимаем Save… и в поле ScriptNme пишем: CompileJava.
Данный скрипт будет выполнять наш код java.
Снова выбираем Плагины\NppExec\Execete или нажимаем F6.
Нажимаем Save… и пишем имя «RunJava». Данный код, написанный выше, будет компилировать код Java.
Повторяем тоже самое и пишем (Для компиляции и выполнения):
Сохраняем как CompileAndRunJava.
Нажмем кнопку «ОК».
— перейти в текущую папку. В данном случае текущей будет та папка, куда вы сохранили текстовый файл.
— компилировать файл с именем находящимся в переменной FILE_NAME.
В нашем случае это имя сохраненного файла. Далее следует условие.
— если наш код не возвратил нормальное завершение == 0, то выйти.
— выполнить наш скомпилированный файл.
Далее мы свяжем наши скрипты с макросами.
В Notepad++ выбираем Плагины (Plugins) \NppExec \Advanced options…
Ставим галочку напротив «Place to the Macros submenu». В раскрывающемся списке «Associated script:» выбираем нужный нам скрипт и даем ему имя в поле «Item Name». И нажимаем Add/Modify. Проделываем это для всех наших скриптов, нажимаем «Ок» и перезапускаем Notepad.
Решение проблем с неправильным выводом русских букв в консоли:
Плагины (Plugins)/ NppExec / Console Output
Ставим нужные нам кодировки ввода и вывода.
Отключение сообщений внутренней консоли: Плагины (Plugins) / NppExec / No internal messages.
В случае появления сообщение при выполнении файла ИмяНашегоКласса.class, о том что main не найден, просто меняем наш скрипт: То есть нам нужно указать либо полный путь к пакету либо указать текущий пакет символом «.».
У нас получится такой скрипт:
Слегка улучшим наш код:
Скрипт компиляции Perl:
Скрипт для компиляции с#:
Здесь Путь_к_csc — это путь к вашему csc.exe
Обычно он выглядит так: %systemdrive%\Windows\Microsoft.NET\Framework64\версия\
Для 32-битной версии — Framework32. Вы можете не указывать полный путь, а добавить путь к вашей системной переменной.
Есть такая особенность cmd, когда вы меняете путь и указываете другой диск, то вы можете увидеть тот же самый путь. Кажется что ничего не происходит при выполнении команды:
.
Для смены диска вам нужно применять CD c ключем /D или явным образом указывать имя_диска: после ввода команды.
здесь е — имя диска, которое отличается от текущего.
Методика выявления ошибок компиляции
У вас на этапе подготовки могут возникать различного рода ошибки и первое что вам нужно выяснить — это к чему относится ваша ошибка. То есть локализировать проблему. Для этого выясняем на каком уровне возникает проблема. Относится ли она к системе, к командной оболочке, к компилятору, текстовому редактору или к опечатке, ошибке в скрипте.
Для более подробного вывода ошибок при компиляции смотрите документацию к вашей системе сборки, к компилятору и другим модулям, которые вы используете.
Теперь, когда мы создали, отладили и наши скрипты, убедились, что они работают предсказуемо, создали макросы для них, мы можем связать их с клавишами быстрого вызова. Как это сделать?
Мы не назначили горячие клавиши при создании скриптов, потому как назначение их, клавиш быстрого вызова, в окне создания скрипта ограничены.
Нам не предоставляется большого выбора из сочетаний клавиш на клавиатуре. К тому-же данные комбинации клавиш у нас могут быть заняты. Сделать назначение горячих клавиш или клавиш быстрого вызова мы можем в меню: Максросы/Измен.соч.клав./Удалить макро.
Какие у вас могут быть резоны познакомиться с командной строкой?
Вам может быть не придется использовать её часто. Но знать о её существовании просто необходимо. Например, на начальном этапе обучения вам нужно познакомиться с опциями компилятора, компоновщика, системы сборки и протестировать их. Вам понадобятся знание того, какие аргументы и ключи принимает программа на входе и что она может возвращать.
Не всегда у вас будет возможность использовать умные и дорогие IDE. И не потому что они могут оказаться слишком дороги, а по той причине, что вы просто не сможете установить их на некоторые системы. В других системах этого могут требовать меры безопасности. Вам может понадобится протестировать каждый модуль, такой как компилятор, линковщик, компановщик, систему сборки, систему контроля версий отдельно. То есть каждую часть вашей системы разработки. Вам может понадобится проверить корректность их работы по отдельности. В некоторых случаях вам может понадобится использовать другой компилятор с вашей IDE или любой другой отдельный модуль. Собирание кубиков графического интерфейса в IDE не делает из вас программиста. Вам понадобятся знания языков, знания архитектуры, знание некоторых скриптов, математические знания и т.д, то есть умение использовать в работе многих инструментов. В различных терминалах и консолях командная строка работает по разному. Это зависит от вашей консоли или терминала. Общие принципы работы для некоторых схожи, но для некоторых могут отличаться очень сильно. Командная строка — это только дополнительный инструмент в ваших руках, а насколько вы его эффективно использовать зависит от вас. В случае, когда вы занимаетесь opensource проектом, вы сможете предоставить командные файлы вашим пользователям для сборки, для тестирования проекта, развертывания проекта и тд. Для команды разработчиков такой подход может помочь более эффективно взаимодействовать. При этом это может оказаться выходом за пределы «комфорта» и нести дополнительные риски. Но использование любых инструментов несет в себе риски, во многом это определяется надежностью инструментов и умением их использовать.
В чем преимущество такого подхода к компиляции? Для обучающихся это приобретение новых навыков работы с командной строкой и связывание кода скриптов с текстовым редактором, изучение компиляции из командной строки. Экономия времени на тестировании небольшого кода без загрузки тяжелых IDE. В некоторых случаях, когда нет возможности установить полноценную IDE такой подход может выручить. Изучение скриптов для командной строки позволяет компилировать из исходников там где вообще нет никакой возможности применять UI, например на серверах. И хотя там не будет возможности использовать текстовые редакторы типа Notepad++, будет возможность использовать текстовые процессоры типа vi, vim, emacs, nano и тд. Основные принципы работы остаются теми же.
Мы с вами, несколько обзорно, познакомились с компиляцией из командной строки, с написанием скриптов для этого, с заданием и использованием системных переменных,
со связыванием кода скриптов с макросами Notepad++, c внутренними переменными Notepad++. Надеюсь данная статья будет полезна обучающимся. Здесь я описал подробно общие методики. Прежде чем обращаться в службу поддержки или отправлять баги, вам следует самостоятельно все выяснить. Во многих случаях может оказаться, что это ваша ошибка или опечатка, а не инженеров разработчиков.
Современные IDE имеют собственные консоли или эмуляторы консолей. Так что вам не обязательно использовать cmd для сборки. К тому же кроме cmd существует достаточно много подобных инструментов. Изучение работы скриптов может помочь вам в будущем в освоении таких инструментов, как системы сборки, компиляторов, компоновщиков, линковщиков. К тому же некоторые SDK не предоставляют графического пользовательского интереса(GUI), использование GUI может быть запрещено политикой безопасности, так как несет дополнительные угрозы в критических для этого областях применения.
Надеюсь данная публикация будет полезной в освоении, расширении новых знаний и навыков.