Pl:Wyszukiwarka JOSM
Instalacja | Pierwsze kroki | Proste edycje | Zaawansowane edycje | Wtyczki | Wyszukiwarka | Częste pytania | ||||||||||||||
Wyszukiwarka JOSM jest dość zaawansowanym systemem, który najpierw bierze pod uwagę ciąg znaków (string), kompiluje go w strukturze drzewa i działa na bazie ciągu danych.
Na poziomie podstawowym są dopasowania słów kluczowych (en:token czyli ciąg jednego lub więcej znaków, które są istotne w grupie), które mogą być następnie łączone w celu utworzenia złożonych wyszukiwania.
Aby uzyskać dostęp do okna wyszukiwania, naciskamy Ctrl+F, lub klikamy menu Edycja, a następnie Szukaj.
Uwaga: Uwzględnienie wielkości liter jest aktywowane bezpośrednio z okna wyszukiwania.
Słowa kluczowe
To jest lista podstawowych słów kluczowych użytych w JOSM:
Słowo kluczowe | Znaczenie |
---|---|
selected | Dopasowuje tylko obiekty, które są aktualnie wybrane |
modified | Dopasowuje tylko obiekty, które zostały zmodyfikowane. Jest to w zasadzie wszystko, co mogłoby być dodane jeśli naciśniemy przycisk Wyślij, obejmując również nowo utworzone obiekty. |
incomplete | Dopasowuje wszystkie obiekty które są niekompletne (np. odwołuje się relacji, ale nie potwierdzonych przez serwer) |
untagged | Dopasowuje wszystkie obiekty które nie są oznaczone (z wyjątkiem nieciekawych tagów jak created_by , itd ...)
|
child | Dopasowuje obiekty które są podrzędne w stosunku do innych obiektów, np. węzły drogi. |
type:node type:way |
Dopasowuje określony typu obiektu |
user:name | Dopasowuje obiekty które zostały ostatnio edytowane przez użytkownika name (dokładne dopasowanie). Zauważmy, że to odzwierciedla informacje JOSM pobierane z serwera, nawet jeśli, lokalnie, zmodyfikowaliśmy obiekt w JOSM. Jeśli nazwa użytkownika zawiera spacje, wyszukiwanie musi je zawierać. Na przykład: |
nodes:number nodes:number1-number2 |
Dopasowuje linie, które dokładnie zawierają liczbę węzłów lub węzły w danym przedziale (włącznie) |
id:value | Dopasowuje obiekt z wartością ID serwera. (Obiekty które nie zostały umieszczone jeszcze na serwerze mają ID równe 0). |
key:value | Dopasowuje obiekty z kluczem key i wartością value. Klucz jest dokładnie dopasowywany, ale wartość jest dopasowaniem podrzędnym. Zarówno klucz jak i wartość mogą być wewnątrz podwójnych cudzysłowów (trzeba z nich korzystać, jeśli klucz zawiera dwukropek). |
key: |
Dopasowuje obiekty z kluczem key bez względu na wartość. |
value | Dopasowuje daną wartość jako podrzędne dopasowanie dla każdego klucza, wartości lub nazwy użytkownika. Jeśli value zawiera dwukropek, należy użyć podwójnego cudzysłowu, aby wartość była jednoznaczna. |
Modyfikatory
Istnieje aktualnie jeden modyfikator, Znak minus (-), który jest używany, aby odwrócić ustawienia. Należy pamiętać, że rzeczywisty efekt w JOSM nie musi być taki, jaki się spodziewamy, ponieważ zaznacza wszystko, w tym węzły. Zobacz poniższe przykłady.
Przykład | Opis |
---|---|
-selection | Wszystko, co nie jest zaznaczone |
-id:value | Wszystko, z wyjątkiem obiektów o danym ID |
-key:value | Wszystko, z wyjątkiem obiektów z danym kluczem (dokładne dopasowanie) i podanej wartości (dopasowanie podrzędne). Należy pamiętać, że zaznaczamy wszystkie obiekty, które nie mają w ogóle klucza. |
key:-value | Wszystko z danym kluczem (dokładne dopasowanie), ale bez danej wartości (wartość podrzędna). |
Wydaje się, że jest więcej modyfikatorów:
Pierwsza litera jest wartością modalną:
Wartość modalna | Opis |
---|---|
R | Replace (Zastąp) |
A | Add (Dodaj) |
D | Remove (Usuń) |
S | In selection (Wybierz) |
Oznaczenia: Druga litera, do momentu kiedy " " są oznaczone:
Wartość modalna | Opis |
---|---|
C | Wielkość liter ma znaczenie |
R | Regexp |
A | Wszystkie elementy |
Połączone słowa kluczowe
Istnieją dwa sposoby łączenia słów kluczowych, za pomocą AND lub OR. Nie ma jednoznacznego symbolu AND, więc po prostu podając listę słów do wyszukiwania oznacza, że wszystkie z nich muszą być uwzględnione. OR ma wyższy priorytet niż AND, tak więc, "a b OR c" i "b OR c a" oznacza to samo.
Połączone słowa kluczowe | Opis |
---|---|
token token | Dopasowuje jeśli oba słowa' pasują. |
token OR token | Dopasowuje jeśli któryś z nich pasuje |
Przykłady
Jeśli powyższe jest dla ciebie bełkotem, oto kilka praktycznych przykładów, w tym kilka sztuczek:
highway unclassified | Daje jakikolwiek wynik, który zawiera słowa highway i unclassified jako słowo podrzędne dla każdego klucza lub pola wartości
|
highway:unclass | Daje wynik w których klucz highway ma wartość podrzędną unclass .
|
-highway:unclassified | Wydaje się, że odznaczono wszystkie drogi. Zastanawiamy się, dlaczego, ponieważ większość dróg nie jest unclassified . Powodem jest to, że dotyczy wszystkiego, co nie zawiera unclassified w kluczu highway (to znaczy, wszystko, co nie ma klucza highway ).
|
-highway:unclassified type:way | To jest lepsze, teraz wszystkie drogi są odznaczone, ale nadal są cieki. Do tego potrzeba: |
-highway:unclassified type:way highway: | Teraz mamy odznaczone tylko te drogi, które mają klucz highway .
|
selected -type:node | Usuwa wszystkie węzły z bieżącego zaznaczenia. |
selected OR type:node | Dodaje wszystkie węzły do bieżącego zaznaczenia. |
selected OR type:node place:London | Tutaj wybór intuicyjnego pierwszeństwa daje o sobie znać. Można by pokusić się aby interpretować go jako selected OR (type:node place:London), podczas gdy w rzeczywistości jest to interpretowane jako (selected OR type:node) place:London. Teraz potrzeba zrobić ... |
selected OR (type:node place:London) | To jest to, czego się spodziewamy, chociaż można osiągnąć ten sam rezultat, wybierając opcję dodaj do zaznaczenia w oknie wyszukiwania. |
foo bar OR baz zap | Uwaga: AND ma niższy priorytet niż OR. Będzie to interpretowane jako "foo (bar OR baz) zap". |
(foo bar) OR (baz zap) | Możemy użyć nawiasów aby zastąpić domyślny priorytet. Pozwoli to wybrać obiekty, które pasują do foo i bar, a także słów, które pasują do baz i zap. |
"name:secret":"Foo \"the Baz\" Bar" | Jeżeli wyszukiwany "klucz" lub "wartość" zawiera jakieś specjalne znaki (takich jak (, ), :, space) muszą one być ujęte w cudzysłów. Sam znak cudzysłowu (") może być zawarty w cudzysłowie, dodając przed nim ukośnik (\). Jeśli odwrotny ukośnik musi być włączony w ciąg słów, to z kolei musi być dodany dodatkowy ukośnik. Zobacz use case. |
type:node untagged -child | Dodajemy węzły (type:node), nie otagowane (untagged), nie używamy (-child) w linii, lub relacji (przydatne do czyszczenia ze starych śladów GPS) |
Powodzenia w wyszukiwaniu!