Gdzie zapisane makra są przechowywane w Notepad ++?

124

Nagrałem makro, którym chcę się podzielić z kolegą z pracy.

W jakiej lokalizacji zapisywane są te zarejestrowane makra, abym mógł je dodać do jego maszyny?

Jeśli jesteś zainteresowany, makro służy do pobierania listy wartości i dodawania cudzysłowów i przecinków, aby można je było użyć w WHEREklauzuli zapytania SQL ( WHERE x IN ('value1','value2','value3')).

uważaj
źródło
1
Wow ... wymyśliłem makro, które robi dokładnie to i chciałem je wyeksportować z prawie tego samego powodu i znalazłem twój post. Pokazuje, jak wiele z tego, co robią programiści, polega na ponownym wymyślaniu koła: / byłoby miło, gdyby notepad ++ miał społeczność do udostępniania makr.
user193130
Dla tych, którzy chcą faktycznie programować makra (w pythonie): npppythonscript.sourceforge.net (dostępne jako wtyczka z menedżera wtyczek notepad ++)
Użytkownik

Odpowiedzi:

145

W systemie Windows makra są zapisywane w %AppData%\Notepad++\shortcuts.xml ( klawisz z logo Windows + E oraz kopiuj i wklej %AppData%\Notepad++\ )

Lub:

  • W Windows <7 (w tym Win2008 / R2) makra są zapisywane w C:\Documents and Settings\%username%\Application Data\Notepad++\shortcuts.xml
  • W systemie Windows 7 | 8 | 10 C:\Users\%username%\AppData\Roaming\Notepad++\shortcuts.xml

Uwaga: będziesz musiał zamknąć Notepad ++, jeśli masz jakieś nowe makra, które chcesz „wyeksportować”.


Oto przykład:

<NotepadPlus>
    <InternalCommands />
    <Macros>
        <Macro name="Trim Trailing and save" Ctrl="no" Alt="yes" Shift="yes" Key="83">
            <Action type="2" message="0" wParam="42024" lParam="0" sParam="" />
            <Action type="2" message="0" wParam="41006" lParam="0" sParam="" />
        </Macro>
        <Macro name="abc" Ctrl="no" Alt="no" Shift="no" Key="0">
            <Action type="1" message="2170" wParam="0" lParam="0" sParam="a" />
            <Action type="1" message="2170" wParam="0" lParam="0" sParam="b" />
            <Action type="1" message="2170" wParam="0" lParam="0" sParam="c" />
        </Macro>
    </Macros>
    <UserDefinedCommands>....

Dodałem makro „abc” jako dowód słuszności koncepcji.

Harrison
źródło
12
Musiałem zamknąć i ponownie otworzyć notatnik ++, aby zobaczyć zmiany w plikach makra, które właśnie nagrałem.
Michel
3
Nawiasem mówiąc, możesz użyć% username% zamiast [nazwa użytkownika] i działa to automatycznie po wklejeniu do paska adresu eksploratora.
kor_
5
Zauważyłem, że musiałem edytować plik shortcuts.xml w innym edytorze, w przeciwnym razie Notepad ++ po prostu nadpisał moje zmiany, gdy go zamknąłem ... Możesz również użyć %appdata%paska adresu Explorers, aby przejść bezpośrednio do katalogów Roaming lub Application Data.
Zhaph - Ben Duguid
1
tak, edytuj go w innym edytorze tekstu, w przeciwnym razie Notepad ++ będzie go nadpisywać.
Jose Ospina
Możliwe jest połączenie kilku makr w jedno (operacja zostanie wykonana jedno po drugim). Jest to bardzo intuicyjne: wystarczy usunąć końcowe tagi makra po pierwszym + tagi wprowadzające drugie (tylko pierwsze makro pojawi się w notatniku ++). Uruchom go, a uruchomi operację pierwszego + działanie drugiego makra, które zostało dodane na końcu pierwszego). (@Zhaph, edytowałem moje makro za pomocą notatnika ++, nie ma problemu)
JinSnow
37

W przypadku systemu Windows 7 makra są przechowywane pod adresem .C:\Users\Username\AppData\Roaming\Notepad++\shortcuts.xml

DJB
źródło
1
Po prostu usunąłem kilka starych makr i utworzyłem nowe. Dla mnie makra, które zostały zapisane lub usunięte do shortcuts.xml najpierw po zapisaniu dowolnego / losowego pliku w Notepad ++, zajęło trochę czasu, zanim to rozgryzłem.
Liu Kang,
5

Trafienie F6

Wstawić::

npp_open $(PLUGINS_CONFIG_DIR)\..\..\shortcuts.xml

Kliknij OK

Masz teraz otwarty plik w swoim edytorze.


Przed zmianą rzeczy sprawdź powiązane dokumenty:

Thell
źródło
2
Zawartość definicji makra można edytować tylko w pliku shortcuts.xml: w Notepad ++ nie ma wbudowanego interfejsu. Aby uzyskać więcej informacji na temat szczegółów przechowywania makr i stosowanej składni, zobacz sekcję Szczegóły plików konfiguracyjnych:.
Mesut Akcan
Co oznacza dla ciebie [F6]? W mojej konfiguracji nic nie robi.
Wolf
4

W systemie Vista z włączoną wirtualizacją plik jest tutaj. Zwróć uwagę, że folder AppData jest ukryty. Pokaż ukryte foldery lub przejdź bezpośrednio do nich, wpisując % AppData% w pasku adresu Eksploratora Windows.

C:\Users\[user]\AppData\Roaming\Notepad++\shortcuts.xml
Dave Walker
źródło
3

Można znaleźć shortcuts.xmlw AppData\Roaming\Notepad++\ścieżce tylko przy użyciu ustawień domyślnych. Jeśli masz skonfigurowaną kopię zapasową, możesz znaleźć i ustawić ścieżkę w Preferences -> Backup -> Backup path.

Po zastosowaniu tych ustawień pliki w katalogu AppData nie będą używane.

Ko Cour
źródło
1

Jeśli zainstalujesz Notepad ++ w systemie Linux przez wine (w moim przypadku desktopowy Ubuntu 14.04-LTS_X64), plik "shortcuts.xml" znajduje się pod:

$/home/[USER-NAME]/.wine/drive_c/users/[USER-NAME]/My Documents/.wine/drive_c/Program Files (x86)/Notepad++/shortcuts.xml

Dziękuję Harrisonowi i wszystkim, którzy mają sugestie dotyczące tego problemu.

tedy58-user1045284
źródło
1

Notepad ++ zapomni twoich makr, chyba że zmapujesz je na klawisze skrótów za pomocą Ustawień - Mapowanie skrótów - Makra przed wyjściem z Notepad ++ (zgodnie z /superuser/332481/how-can-i-add-a-macro-in- Notatnik . Testowane z Notatnikiem w wersji 6.8.3 w systemie Windows7).

gherson
źródło
0

Przejdź do folderu% appdata% \ Notepad ++.

Definicje makr są przechowywane w pliku shortcuts.xml wewnątrz <Macros>tagu. Możesz skopiować cały plik lub skopiować tag i wkleić go do pliku shortcuts.xml w innym miejscu.
W tym drugim przypadku użyj innego edytora, ponieważ N ++ nadpisuje plik shortcuts.xml przy wyjściu.

Harish Pathak
źródło