Notepad где хранятся макросы
Я записал макрос, которым хочу поделиться со своим коллегой по работе.
В каком месте сохраняются эти записанные макросы, чтобы я мог добавить их на его машину?
Если интересно, макрос предназначен для получения списка значений и добавления кавычек и запятых, чтобы его можно было использовать в предложении WHERE запроса SQL ( WHERE x IN ('value1','value2','value3') ).
В Windows макросы сохраняются в %AppData%\Notepad++\shortcuts.xml ( клавиша с логотипом Windows + E и копировать и вставить %AppData%\Notepad++\ )
- В Windows C: \ Documents и Настройки \% username% \ Application Data \ Notepad ++ \ shortcuts.xml
- В Windows 7 | 8 | 10 C:\Users\%username%\AppData\Roaming\Notepad++\shortcuts.xml
Примечание. Вам нужно будет закрыть Notepad ++, если у вас есть какие-либо новые макросы, которые вы хотите «экспортировать».
Я добавил макрос abc в качестве доказательства концепции.
В Windows 7 макросы хранятся в C:\Users\ Username \AppData\Roaming\Notepad++\shortcuts.xml .
Теперь у вас есть файл, открытый в вашем редакторе.
Прежде чем что-то менять, ознакомьтесь с соответствующими документами:
В Vista с включенной виртуализацией файл находится здесь. Обратите внимание, что папка AppData скрыта. Либо покажите скрытые папки, либо перейдите прямо к нему, набрав % AppData% в адресной строке проводника Windows.
Вы можете найти shortcuts.xml в пути AppData\Roaming\Notepad++\ только при использовании настроек по умолчанию. Если у вас настроено резервное копирование, вы можете найти и установить путь в Preferences -> Backup -> Backup path .
При применении этих настроек файлы в каталоге AppData использоваться не будут.
Если вы устанавливаете Notepad ++ в системе Linux с помощью Wine (в моем случае настольный Ubuntu 14.04-LTS_X64), файл "shortcuts.xml" находится в папке:
Спасибо Харрисону и всем, у кого есть предложения по этому вопросу.
Перейдите в папку% appdata% \ Notepad ++.
Определения макросов хранятся в файле shortcuts.xml внутри тега . Вы можете скопировать файл целиком или скопировать тег и вставить его в файл shortcuts.xml в другом месте.
В последнем случае обязательно используйте другой редактор, поскольку N ++ при выходе перезаписывает файл shortcuts.xml.
макросы в Notepad++ - это просто куча закодированных операций: вы начинаете запись, работаете с буфером, возможно, активируете меню, останавливаете запись, а затем воспроизводите макрос.
После расследования, я узнал, что они сохраняются в файл ярлыков.xml в разделе макросы. Например, у меня там:
смотрим малость.iface файл, мы видим, что 2170-это код ReplaceSel (ie. вставить строку ничего не выбрано), 2327-это команда Tab и Resource Hacker (просто имейте это под рукой. ) показывает, что 42024-это пункт меню "Trim Trailing Space", а 41006 - "Save".
Я предполагаю, что тип действия 0 предназначен для команд Scintilla с числовыми параметрами, типа 1 для команд со строковым параметром, 2 для команд Notepad++.
проблема: Scintilla не имеет команды "заменить все": задача клиента - выполнить итерацию с подтверждением или без него и т. д.
Другая проблема: кажется, действие типа 1 ограничено 1 char (я редактировал вручную, при выходе из n++ оно было усечено).
Я пробовал некоторые трюки, но боюсь, что такая задача выходит за рамки возможностей макросов.
может быть, именно там SciTE со своим Lua скриптовая способность (или блокнот программиста, который, кажется, скриптовый с Python) имеет преимущество. :-)
[EDIT] похоже, я получил вышеуказанный макрос от этой теме или подобное место. :- ) Я думаю, что первые строки не нужны (побочный эффект или запись), но они все равно были хорошими примерами макрокода.
Я использую NPP Ver. 5.9.6.2 с Win7.
этот пост может помочь вам немного по теме :
предполагая, что буквенно-цифровые слова, вы можете использовать:
Поиск = ^([A-Za-z0-9]+)$ Replace = able: "\1"
или, если вы просто хотите выделить строки и использовать "заменить все" & "в выборе" (с той же заменой):
^ указывает на начало строки. $ указывает на конец линия.
\1 будет исходным совпадением в круглых скобках.
мой личный опыт заключается в том, что ярлыки.xml перезаписывается первоначально загруженными + позже записанными макросами и настройками при выходе Notepad++. Поэтому вы не можете использовать Notepad++ для редактирования этого файла.
закрыть Notepad++, редактировать ярлыки.xml другим инструментом, сохраните его и перезапустите Notepad++.
Я не уверен, что это помогает, Но мне нужно было создать макрос для хранения фрагмента, поэтому я просто записал себя, вставив элементы и установив ярлык для него. Конечно, я не использую версию 5.9, поэтому могут быть некоторые небольшие различия в версии. Для доступа к Macro recorder перейдите в раздел макрос > начать запись. Затем вы выполните свое действие, а затем перейдите к макро > остановить запись. Я бы рекомендовал воспроизвести его, чтобы убедиться, что он правильный, а затем сохранить и установить ярлык ключ.
надеюсь, что помогает.
Я только что сделал это в v5.9.1. Просто зайдите в меню макрос, нажмите кнопку "Начать запись", выполните 3 заменить все команды, а затем остановить запись. Затем вы можете выбрать "Сохранить текущий записанный макрос" и воспроизводить его так часто, как вам нравится, и он выполнит замену, как вы ожидаете.
на самом деле, ярлыки.файл XML не не храните пользовательские макросы, и никакие очевидные кандидаты не содержат эту информацию. Эти инструкции устарели.
вопреки советам различных веб-сайтов, хранение пользовательских макросов не включено для версии 5.4.2. Этот XML-файл есть, но макрос не сохраняется в.
Я предполагаю, что это ошибка, которая будет исправлена в следующей версии.
Я записал макрос, которым хочу поделиться со своим коллегой по работе.
В каком месте сохраняются эти записанные макросы, чтобы я мог добавить их на его машину?
Если интересно, макрос предназначен для получения списка значений и добавления кавычек и запятых, чтобы его можно было использовать в WHERE предложении запроса SQL ( WHERE x IN ('value1','value2','value3') ).
Вау . Я придумал макрос, который делает именно это, и хотел экспортировать его почти по той же причине, и нашел ваш пост. Показывает, насколько программисты заново изобретают колесо: / было бы неплохо, если бы в notepad ++ было сообщество для обмена макросами.
В Windows макросы сохраняются по адресу %AppData%\Notepad++\shortcuts.xml ( клавиша с логотипом Windows + E и копирование и вставка %AppData%\Notepad++\ )
Примечание: вам нужно будет закрыть Notepad ++, если у вас есть какие-либо новые макросы, которые вы хотите «экспортировать».
Я добавил макрос abc в качестве доказательства концепции.
Мне пришлось снова закрыть и открыть notepad ++, чтобы увидеть изменения в файлах для макроса, который я только что записал.
Кстати, вы можете использовать% username% вместо [username], и он работает автоматически при вставке в адресную строку проводника.
Я обнаружил, что мне пришлось отредактировать файл shortcuts.xml в другом редакторе, иначе Notepad ++ просто перезаписал мои изменения, когда я его закрыл . Также вы можете использовать %appdata% адресную строку в проводниках, чтобы попасть прямо в каталоги Roaming или Application Data.
Возможно объединение нескольких макросов в один (операции будут выполняться одна за другой). Это очень интуитивно понятно: просто удалите конечные теги макроса после первого + теги, вводящие второй (в блокноте ++ появится только первый макрос). Запустите его, и он запустит операцию первого + операцию второго макроса, который был добавлен в конец первого). (@Zhaph, я редактировал свой макрос с помощью блокнота ++, без проблем)
Макрос стандартными средствами Notepad++ отредактировать нельзя.
Текст макроса хранится в файле shortcuts.xml. А вот где хранится shortcuts.xml – зависит от вас.
Если при установке поставить галочку “Don’t use %APPDATA%”, то файл будет находиться в Program Files, в противном случае – в Document and Setings/%USERNAME%/Application Data/Notepad++.
Все макросы находятся между тегами
Каждый макрос имеет структуру:
name – это уникальное имя макроса, далее комбинация горячих клавиш, присвоенных макросу.
В теле макроса, то, что между < и />— это само действие, действий может быть сколько угодно.
Action type – это тип действия. В случае “0” – это действие относящееся к общим командам, в случае “2” – к командам, дублирующим команды меню.
Если писать общую команду, код указывается в message, а wParam принимает значение “0”.
Если писать команду, дублирующую команду меню, message принимает значение “0”, а wParam – код.
Для добавления нового макроса достаточно вставить его текст между тегами
Нельзя редактировать файл shortcuts.xml в редакторе Notepad++.
При закрытии редактора, он переписывает файл заново. Необходимо закрыть Notepad++, а затем отредактировать файл любым текстовым редактором, можно даже обычным блокнотом.
Список кодов команд макросов Notepad++
Общие команды (писать в message, wParam="0")
2300 - Курсор вниз
2301 - Курсор вниз с выделением
2302 - Курсор вверх
2303 - Курсор вверх с выделением
2304 - Курсор на одну позицию влево
2305 - Курсор на одну позицию влево с выделением
2306 - Курсор на одну позицию вправо
2307 - Курсор на одну позицию вправо с выделением
2308 - Переместить курсор на начало слова (влево)
2309 - Переместить курсор на начало слова (влево) с выделением
2310 - Переместить курсор на начало след. слова (вправо)
2311 - Переместить курсор на начало след. слова (вправо) с выделением
2312 - Курсор в начало строки
2313 - Курсор в начало строки с выделением
2314 - Курсор в конец строки
2315 - Курсор в конец строки с выделением
2316 - Курсор в начало текста
2317 - Курсор в начало текста с выделением
2318 - Курсор в конец текста
2319 - Курсор в конец текста с выделением
2320 - Курсор в первую строку с сохранением позиции
2321 - Курсор в первую строку с сохранением позиции с выделением
2322 - Курсор в конец текста
2323 - Курсор в конец текста с выделением
2324 - Изменить режим редактирования - Вставка или замена
2326 - Удалить одну позицию влево (BKSP)
2327 - TAB
2328 - Курсор влево на одну позицию табуляции
2329 - Перевод строки (ENTER)
2330 - Вставка в текст кода 12 (0CH)
2331 - Курсор в начало строки
2332 - Курсор в начало строки с выделением
2333 - Текст крупнее
2334 - Текст мельче
2335 - Удалить от курсора до начала текущего слова
2336 - Удалить от курсора до начала след. слова
2337 - Вырезать текущую строку в буфер обмена
2338 - Удалить текущую строку
2339 - Поднять текущую строку
2342 - Скролл текста вниз с сохранением позиции курсора
2343 - Скролл текста вверх с сохранением позиции курсора
2344 - Удалить одну позицию влево (BKSP)
2345 - Курсор в начало строки
2346 - Курсор в начало строки с выделением
2347 - Курсор в конец строки
2348 - Курсор в конец строки
2349 - Курсор в начало строки
2358 - Скрыть весь текст
2373 - Размер текста по умолчанию
2390 - Курсор влево на начало или конец слова
2391 - Курсор влево на начало или конец слова с выделением
2392 - Курсор вправо на начало или конец слова
2393 - Курсор вправо на начало или конец слова с выделением
2395 - Удалить от курсора до начала строки
2396 - Удалить от курсора до конца строки
2404 - Продублировать текущую строку
2413 - Курсор на след. фрагмент
2414 - Курсор на след. фрагмент с выделением
2415 - Курсор на пред. фрагмент
2416 - Курсор на пред. фрагмент с выделением
2426 - Курсор вниз
2427 - Курсор вверх
2428 - Курсор на одну позицию влево с выделением
2429 - Курсор на одну позицию вправо с выделением
2430 - Курсор в начало строки с выделением
2432 - Курсор в конец строки с выделением
2433 - Курсор в первую строку с сохранением позиции.
Если курсор сместился, с выделением блока
2434 - Курсор на хх (хх - кол-во строк на экране) строк вниз с сохранением позиции.
Если курсор сместился, с выделением блока
2435 - Курсор на верхнюю строку на экране
2436 - Курсор на верхнюю строку на экране с выделением
2437 - Курсор на нижнюю строку на экране, или на след. экран в нижнюю строку
2438 - Курсор на нижнюю строку на экране, или на след. экран в нижнюю строку с выделением
2439 - Курсор влево на конец пред. слова
2440 - Курсор влево на конец пред. слова с выделением
2441 - Курсор вправо на конец след. слова
2442 - Курсор вправо на конец след. слова с выделением
2450 - Курсор в начало строки с выделением
2451 - Курсор в конец строки
2452 - Курсор в конец строки с выделением
2453 - Курсор в начало строки
2454 - Курсор в конец строки с выделением
2455 - Скопировать текущую строку в буфер
2469 - Продублировать текущую строку
2470 - Убрать подсветку строки
Команды, дублирующие команды меню
(писать в wParam, message="0")
41001 - Новый
41002 - Открыть
41003 - Закрыть
41004 - Закрыть все
41005 - Закрыть все, кроме активного
41006 - Сохранить
41007 - Сохранить все
41008 - Сохранить как.
41010 - Печать.
1001 - Быстрая печать
41011 - Выход
41012 - Загрузить сессию.
41013 - Сохранить сессию.
41014 - Перезагрузить с диска
42001 - Вырезать
42002 - Копировать
42003 - Отмена
42004 - Повтор
42005 - Вставить
42006 - Удалить
42007 - Выделить всё
42008 - Вставить Tab (Отступ)
42009 - Удалить Tab (Втяжка)
42010 - Дублировать строку
42012 - Разбить строки
42013 - Объединить строки
42014 - Поднять текущую строку
42015 - Опустить текущую строку
42016 - ПРОПИСНЫЕ
42017 - строчные
42018 - Старт записи
42019 - Стоп записи
42021 - Прокрутить запись
42022 - Блоковый комментарий
42023 - Потоковый комментарий
42024 - Обрезать пробелы
42025 - Сохранить запись макро.
42026 - Текст справа налево
42027 - Текст слева направо
42028 - Только чтение
42029 - Копировать путь и имя файла в буфер обмена
42030 - Копировать имя файла в буфер обмена
42031 - Копировать путь к файлу в буфер обмена
42032 - Запустить многократно.
42033 - Снять флаг "только чтение"
43001 - Поиск.
43002 - Искать далее
43003 - Замена.
43004 - Переход к.
43005 - Закладки
43006 - Следующая.
43007 - Предыдущая.
43008 - Очистить все закладки
43009 - Сопоставить скобку
43010 - Искать ранее
43011 - Поиск по мере набора.
43013 - Найти в файлах
43014 - Найти такое же слово
43015 - Такое же предыдущее
43016 - Выделить все
43017 - Снять выделение
44010 - Свернуть все
44011 - Личные опции
44019 - Все символы
44020 - Значения отступов
44022 - Перенос строк
44023 - Крупнее
44024 - Мельче
44025 - Пустые пробелы и Tab
44026 - Символ конца строки
44029 - Развернуть все
44030 - Свернуть текущий фрагмент
44031 - Развернуть текущий фрагмент
44032 - Во весь экран
44033 - Восстановить масштаб.
44034 - Всегда сверху
44035 - Синхронизировать вертикальную полосу прокрутки
44036 - Синхронизировать горизонтальную полосу прокрутки
44041 - Показывать символ перевода строки
45001 - Преобразовать в Win-формат
45002 - Преобразовать в UNIX-формат
45003 - Преобразовать в MAC-формат
45004 - Кодировать в ANSI
45005 - Кодировать в UTF-8
45006 - Кодировать в UCS-2 Big Endian
45007 - Кодировать в UCS-2 Little Endian
45008 - Кодировать в UTF-8 (без BOM)
10001 - Вторым окном
10002 - Копировать во второе окно
46001 - Определение стилей.
47000 - О программе.
47001 - Домашняя страница Notepad++
47002 - Notepad++ : страница проекта
47003 - Помощь в Интернет
47004 - Форум
47005 - Больше дополнений
48009 - Горячие клавиши.
48011 - Настройки.
49000 - Запуск.
50000 - Завершение функций
50001 - Завершение слов
42034 - Редактор столбцов.
44042 - Спрятать строки
42040 - Открыть все недавние файлы
49000 - Запуск.
50000 - Дополнение функций
50001 - Дополнение слов
42034 - Редактор колонок.
44042 - Спрятать строки
42040 - Открыть все недавние файлы
42041 - Очистить список недавних файлов
Основы
Notepad++ позволяет записывать действия пользователя во время редактирования документа и воспроизводить их позже с помощью функции Макросы. Используя эту функцию можно ускорить работу с документами и избавить себя от монотонных повторений.
Вы можете сохранять макросы для последующего использования. Сохраненный Макрос можно вызвать через меню Макросы или назначить ему горячую клавишу для быстрого вызова. Клавишу можно назначить или изменить позднее, через нижнюю вкладку меню Макросы. Там же можно удалить не рабочий или ставший не нужным Макрос. .
Чтобы записать макрос, выберите Макрос→Начать запись макроса или нажмите кнопку на панели инструментов. Notepad++ теперь будет отслеживать последовательность действий по обработке документа.
Чтобы остановить запись, выберите Макрос→Остановить запись макроса или нажмите кнопку на панели инструментов. Как исключение в отличии от большинства команд, вы можете переключать начало и остановку записи специальной горячей клавишей, которая не указана в главном меню, но указана в Shortcut mapper (смотрите Опции→Горячие клавиши ). По умолчанию это комбинация Ctrl-Shift-R .
После остановки записи, она будет храниться в временном буфере. Если вы еще не выполняли каких-либо действий, этот буфер будет пуст. Если вы начали запись другого макроса без сохранения предыдущего, то он будет потерян.
Чтобы воспроизвести макрос в буфере, выберите Макрос→Воспроизвести макрос или нажмите кнопку . Это выполнит макрос один раз в текущей позиции.
Чтобы сохранить макрос в буфер, выберите Макрос→Сохранить запись макроса или нажмите кнопку . Появится диалоговое окно с возможностью задать имя макроса и горячую клавишу. Это можно позже изменить (и удалить) с помощью Shortcut mapper (смотрите Shortcut Mapper). При сохранении, макрос будет доступен в меню Макрос или в списке многократного воспроизведения макросов.
Чтобы воспроизвести текущий макрос в буфере или любой сохраненный макрос один или несколько раз, выберите Макрос→Воспроизвести макрос многократно. или нажмите кнопку . Всплывающее диалоговое окно позволит выбрать макрос (макрос буфера или любой сохраненный макрос) и количество повторов. Вы можете выбрать вариант, в котором макрос выполняется до тех пор, пока курсор не достигнет конца текущего файла (начиная с текущей позиции). Обратите внимание, что если нет доступных макросов, это диалоговое окно недоступно.
Чтобы редактировать или удалить существующий макрос, используйте Shortcut mapper, который отображает все макросы, и позволяет редактировать или удалить привязку к горячим клавишам. Диалог для изменения доступен в меню Макрос→Горячие клавиши: Макрос . Макросы сохраняются в файле shortcuts.xml (при закрытии Notepad++).
Одной из полезных возможностей программы Notepad++ является создание и использование макросов.
Пользователям, которые знакомы с популярным офисным пакетом MS Office (и Microsoft Excel в частности) должно быть знакомо понятие макросов. Если не знакомо, то вкратце поясню.
Макрос - это последовательность действий пользователя в программе, записанная и сохраненная этой программой. То есть, если в своей повседневной работе вы выполняете постоянно какие либо действия, то их можно записать с тем, чтобы не повторять снова. В последствии такую последовательность действий можно запустить на выполнение одним щелчком мыши или сочетанием горячих клавиш.
Сам процесс записи очень похож на то, как если бы действия в программе записывались на видеокамеру. Только в качестве пленки в этом случае выступает программный код. Точнее, язык программирования, в который переводится все манипуляции, которые пользователь выполняет в программе. Язык программирования может быть разным и целиком зависеть от конкретной программы. Например, в Microsoft Excel таким языком является VBA (Visual Basic for Applications). Для обычного пользователя знать как язык программирования, на котором кодируется действия, совсем необязательно. Ему достаточно уметь записывать макросы и запускать их на выполнение.
Вернемся к программному блокноту Notepad++. Чем могут быть полезны макросы в этом случае. Да тем же самым. Допустим, при написании кода существуют какие-либо его участки (куски), которые повторяются постоянно. Кстати, такие повторяющиеся куски кода называются сниппетами.
Так вот, такие сниппеты приходится вводить вручную снова и снова. Чтобы ускорить работу и облегчить ее, можно записать такие программные куски в качестве последовательности действий. А затем вставлять в текст одним нажатием горячих клавиш.
Давайте на примере разберем, каким образом можно записать и использовать макросы в Notepad++. Первое, что необходимо узнать, это какие кнопки отвечают за работу макросов. Посмотрите на панель инструментов Notepad++. Ближе к концу этой панели располагаются в ряд пять кнопок, каждая из которых отвечает за определенное действие:
Назначение каждой из них по порядку:
- Старт записи макроса
- Остановка записи макроса
- Воспроизведение записанного макроса
- Многократное воспроизведение записанного макроса
- Сохранение записанного макроса
Набор совсем несложный и разобраться в нем легко. Теперь давайте приступим к записи какого-либо макроса, чтобы увидеть воочию, как это делается. Предположим, что в качестве часто повторяемого кода (сниппета) у нас будет выступать строка , которую довольно часто применяют в коде javascript-программисты.
Нажимаем кнопку “Старт записи макроса”. При этом кнопка из красной превратиться в серую, что означает - запись пошла. Без ошибок, аккуратно вводим в основном окне Notepad++ вышеуказанную строку:
Когда строка введена, нажимаем кнопку “Остановка записи макроса”. Программа Notepad++ записала наши действия. В данном случае - это строка кода, которую мы ввели. Чтобы проверить, что запись была произведена верно, нажмем кнопку “Воспроизведение записанного макроса”. Notepad++ в точности воспроизведет указанную строку, если все было выполнено нами верно. Если нужно воспроизвести записанный макрос несколько раз, можно нажать кнопку “Многократное воспроизведение записанного макроса”.
Теперь необходимо сохранить записанный нами макрос, так как он хранится в оперативной памяти программы Notepad++ только до момента ее закрытия. Как только мы ее закроем, макрос пропадет. Для сохранения нажимаем кнопку “Сохранение записанного макроса”. Появится окно, в котором предлагается задать сочетание “горячих клавиш” для сохраняемого макроса и его имя для сохранения. выбираем любое понравившееся сочетание, а также задаем имя для макроса:
Проверить, произошло ли сохранение макроса, можно двумя способами. Первый - это перейти в меню “Макросы”. В выпадающей списке, наряду с общесистемными командами Notepad++ должен находиться и наш макрос . Второй способ - это открыть список всех сохраненных в программе макросов. Делается это через меню “Макросы - Изменить гор.клавишу/Удалить макрос”. Откроется окно редактирования, в котором должен быть представлен наш макрос:
В этом окне можно удалить сохраненный макрос кнопкой “Delete”. Или же изменить сочетание горячих клавиш для этого макроса кнопкой “Modify”.
Как вы уже догадались, с помощью макроса можно сохранять абсолютно любой код. Это может не обязательно javascript-сниппет, но и часть HTML или CSS-кода, если вы занимаетесь версткой в программе Notepad++.
На этом обзор макросов в Notepad++ закончен.
Что такое БФФ
"Back-end for front-end" - сервис-прослойка между фронтом и бэком, который обращается к микросервисам и собирает из них данные в удобной . … Continue reading
Читайте также: