Keyboard shortcut: Alt+Shift+F — one of the JOSM windows
The filter window allows the user to temporarily disable certain types of objects based on one (or multiple) filters.
- not selectable using selection tools (with few minor exceptions in #4929, comment 14)
- not returned during Search action
- will disappear from several menus until filters are disabled (example: Help/Dialog/SelectionList#SmalltriangleinSelectbutton)
Simple usage is to enter single tag (or more complex expression similar to search) in "Text" column: objects complying with that text will be disabled.
More complex scenarios include filters as quick way to develop and test custom tagchecker rules (Extend JOSM).
- De-clutter main view by (de-)activating features only when you need them. This allows for easier editing in areas with densely located objects or infrastructure.
- Completely hide features you don't use
- Avoid unnecessary or accidental edits
- Disable/separate objects that were fully tagged (using tag count and custom filters) from incomplete objects
- Disable recently modified objects (and it is irrelevant: if it modified by you or another person)
- Untagged objects untagged can be used instead of Notes at osm.org. It is faster than to set/remove fixme=resurvey - please don't overuse this principle
The filter lines are evaluated from top down, with respect to values in #Columns.
- E (Enable): Enable or disable this filter line.
- H (Hide elements from main view): normally, all matched objects are disabled, but you can completely hide them:
- disabled - visible and displayed as grey
- hidden - the chosen objects are completely hidden
- Text: The search term or property that defines the objects that are filtered. Every search query from Search action is supported:
- standard substring search (or exact search with "quotes")
- Regular expressions (standard Java)
- MapCSS syntax
- I (Inverse Filter): Normally, the specified objects are hidden and the rest is shown. If this option is activated, only the specified objects are shown and the rest is hidden.
- M (Filter Mode) - how a filter line is combined with filter lines above filter line in question:
- A (replace selection) - most users want this, filter lines with this mode are independent of each other
- R (replace selection) - effectively disable all filter lines above
- D (remove from selection) - un-filter all elements matched
- F (find in selection) - TODO
TODO explain 5 buttons.
|Filter text||Description or note|
|((landuse:|natural:|leisure:|building:) | (role:outer|role:inner))||Doesn't handle relations perfectly|
|shop=* opening_hours=*||shop= + opening_hours= tagged objects|
|shop=* name=*||shop= + name= tagged objects|
|type:node -shop=*||All nodes except shops. Geometry modification using mouse move disabled, but possible using other modes (ex. - Improve Way Accuracy mode (W))|
|(type:node | type:way | type:relation) (modified | user:Steve)||Hide objects if you are the latest editor (useful during mass re-tagging and semi-mechanical edits)|
|-highway:||Everything except highway= tagged objecets|
|boundary: | leisure: | landuse: | waterway: | amenity: | natural: | building:||De-clutters map, aggressive (sometimes you may want to keep buildings or amenity key)|
|type:node & untagged||Make it easier to select ways|
|modified||Quickly see your changes|
|child (type:way & highway:)||All nodes that's part of a highway|
|child (type:relation & (natural:|landuse:))||All natural and landuse areas formed by relations|
|-((highway | child highway | untagged | public_transport) & -(highway=footway | highway=path | highway=steps | highway=track))||Only roads for public transport. Good for mapping bus networks.|
See also Help/Action/Search#Examples other examples. If you have some clever filters, add them here.
If any filter is active, a transparent message box will appear in the top right corner of main view.
It is only visible if at least one object was disabled or hidden.