diff --git a/.rubocop.yml b/.rubocop.yml index 24d57fb37..31c14773c 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,5 +1,8 @@ inherit_from: .rubocop_todo.yml +AllCops: + TargetRubyVersion: 2.3 + Rails: Enabled: true @@ -27,6 +30,9 @@ Rails/ApplicationRecord: Rails/CreateTableWithTimestamps: Enabled: false +Rails/FindEach: + Enabled: false + Rails/HasManyOrHasOneDependent: Enabled: false diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 78ed84ac3..d3e51600d 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -1,23 +1,11 @@ # This configuration was generated by # `rubocop --auto-gen-config` -# on 2018-06-19 09:02:55 +0100 using RuboCop version 0.57.2. +# on 2018-09-19 14:24:02 +0100 using RuboCop version 0.58.2. # The point is for the user to remove these configuration records # one by one as the offenses are removed from the code base. # Note that changes in the inspected code, or installation of new # versions of RuboCop, may require this file to be generated again. -# Offense count: 34 -Lint/AmbiguousOperator: - Exclude: - - 'test/controllers/amf_controller_test.rb' - - 'test/controllers/changeset_controller_test.rb' - - 'test/lib/bounding_box_test.rb' - - 'test/lib/country_test.rb' - -# Offense count: 96 -Lint/AmbiguousRegexpLiteral: - Enabled: false - # Offense count: 32 # Configuration parameters: AllowSafeAssignment. Lint/AssignmentInCondition: @@ -42,17 +30,13 @@ Lint/HandleExceptions: - 'app/controllers/amf_controller.rb' - 'app/controllers/user_controller.rb' -# Offense count: 2 -Lint/ShadowingOuterLocalVariable: - Exclude: - - 'app/views/changeset/list.atom.builder' - -# Offense count: 690 +# Offense count: 692 Metrics/AbcSize: Max: 280 -# Offense count: 41 +# Offense count: 40 # Configuration parameters: CountComments, ExcludedMethods. +# ExcludedMethods: refine Metrics/BlockLength: Max: 262 @@ -70,7 +54,7 @@ Metrics/ClassLength: Metrics/CyclomaticComplexity: Max: 20 -# Offense count: 688 +# Offense count: 691 # Configuration parameters: CountComments. Metrics/MethodLength: Max: 179 @@ -85,7 +69,7 @@ Metrics/ModuleLength: Metrics/ParameterLists: Max: 9 -# Offense count: 71 +# Offense count: 72 Metrics/PerceivedComplexity: Max: 23 @@ -178,10 +162,17 @@ Style/AsciiComments: Exclude: - 'test/models/message_test.rb' -# Offense count: 229 +# Offense count: 230 Style/Documentation: Enabled: false +# Offense count: 462 +# Cop supports --auto-correct. +# Configuration parameters: EnforcedStyle. +# SupportedStyles: when_needed, always, never +Style/FrozenStringLiteralComment: + Enabled: false + # Offense count: 2 # Cop supports --auto-correct. Style/IfUnlessModifier: @@ -194,7 +185,7 @@ Style/IfUnlessModifier: Style/NumericLiterals: MinDigits: 11 -# Offense count: 3064 +# Offense count: 3080 # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns. # URISchemes: http, https Metrics/LineLength: diff --git a/Gemfile.lock b/Gemfile.lock index 2f6eb8406..76a31e169 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,7 +2,7 @@ GEM remote: https://rubygems.org/ specs: SystemTimer (1.2.3) - aasm (5.0.0) + aasm (5.0.1) concurrent-ruby (~> 1.0) actioncable (5.2.0) actionpack (= 5.2.0) @@ -63,7 +63,7 @@ GEM bigdecimal (1.1.0) binding_of_caller (0.8.0) debug_inspector (>= 0.0.1) - bootsnap (1.3.1) + bootsnap (1.3.2) msgpack (~> 1.0) builder (3.2.3) canonical-rails (0.2.4) @@ -104,10 +104,10 @@ GEM erubi (1.7.1) execjs (2.7.0) exifr (1.3.4) - factory_bot (4.11.0) + factory_bot (4.11.1) activesupport (>= 3.0.0) - factory_bot_rails (4.11.0) - factory_bot (~> 4.11.0) + factory_bot_rails (4.11.1) + factory_bot (~> 4.11.1) railties (>= 3.0.0) faraday (0.12.2) multipart-post (>= 1.2, < 3) @@ -169,7 +169,7 @@ GEM nokogiri (>= 1.5.9) mail (2.7.0) mini_mime (>= 0.1.1) - marcel (0.3.2) + marcel (0.3.3) mimemagic (~> 0.3.2) method_source (0.9.0) mime-types (3.2.2) @@ -301,7 +301,7 @@ GEM rack (>= 1.4) rinku (2.0.4) rotp (3.3.1) - rubocop (0.58.2) + rubocop (0.59.1) jaro_winkler (~> 1.5.1) parallel (~> 1.10) parser (>= 2.5, != 2.5.1.1) @@ -317,7 +317,7 @@ GEM crass (~> 1.0.2) nokogiri (>= 1.4.4) nokogumbo (~> 1.4) - sass (3.5.7) + sass (3.6.0) sass-listen (~> 4.0.0) sass-listen (4.0.0) rb-fsevent (~> 0.9, >= 0.9.4) @@ -358,7 +358,7 @@ GEM tins (1.16.3) tzinfo (1.2.5) thread_safe (~> 0.1) - uglifier (4.1.18) + uglifier (4.1.19) execjs (>= 0.3.0, < 3) unicode-display_width (1.4.0) validates_email_format_of (1.6.3) diff --git a/INSTALL.md b/INSTALL.md index 768cbd540..8e47cb266 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -5,7 +5,7 @@ If you want to deploy the software for your own project, then see the notes at t You can install the software directly on your machine, which is the traditional and probably best-supported approach. However, there is an alternative which may be easier: Vagrant. This installs the software into a virtual machine, which makes it easier to get a consistent development environment and may avoid installation difficulties. For Vagrant instructions, see [VAGRANT.md](VAGRANT.md). -These instructions are based on Ubuntu 12.04 LTS, which is the platform used by the OSMF servers. +These instructions are based on Ubuntu 16.04 LTS, which is the platform used by the OSMF servers. The instructions also work, with only minor amendments, for all other current Ubuntu releases, Fedora and MacOSX We don't recommend attempting to develop or deploy this software on Windows. If you need to use Windows, then try developing this software using Ubuntu in a virtual machine, or use [Vagrant](VAGRANT.md). diff --git a/Vagrantfile b/Vagrantfile index d10934b37..fcb4790fe 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -4,23 +4,26 @@ Vagrant.configure("2") do |config| # use official ubuntu image for virtualbox config.vm.provider "virtualbox" do |vb, override| - override.vm.box = "ubuntu/xenial64" + override.vm.box = "ubuntu/bionic64" override.vm.synced_folder ".", "/srv/openstreetmap-website" vb.customize ["modifyvm", :id, "--memory", "1024"] vb.customize ["modifyvm", :id, "--cpus", "2"] vb.customize ["modifyvm", :id, "--uartmode1", "disconnected"] end - # use third party image and NFS sharing for lxc + # Use sshfs sharing if available, otherwise NFS sharing + sharing_type = Vagrant.has_plugin?("vagrant-sshfs") ? "sshfs" : "nfs" + + # use third party image and sshfs or NFS sharing for lxc config.vm.provider "lxc" do |_, override| - override.vm.box = "generic/ubuntu1604" - override.vm.synced_folder ".", "/srv/openstreetmap-website", :type => "nfs" + override.vm.box = "generic/ubuntu1804" + override.vm.synced_folder ".", "/srv/openstreetmap-website", :type => sharing_type end - # use third party image and NFS sharing for libvirt + # use third party image and sshfs or NFS sharing for libvirt config.vm.provider "libvirt" do |_, override| - override.vm.box = "generic/ubuntu1604" - override.vm.synced_folder ".", "/srv/openstreetmap-website", :type => "nfs" + override.vm.box = "generic/ubuntu1804" + override.vm.synced_folder ".", "/srv/openstreetmap-website", :type => sharing_type end # configure shared package cache if possible diff --git a/Vendorfile b/Vendorfile index 5303d738f..15a8eba1b 100644 --- a/Vendorfile +++ b/Vendorfile @@ -11,13 +11,13 @@ folder 'vendor/assets' do end folder 'leaflet' do - file 'leaflet.js', 'https://unpkg.com/leaflet@1.3.3/dist/leaflet-src.js' - file 'leaflet.css', 'https://unpkg.com/leaflet@1.3.3/dist/leaflet.css' + file 'leaflet.js', 'https://unpkg.com/leaflet@1.3.4/dist/leaflet-src.js' + file 'leaflet.css', 'https://unpkg.com/leaflet@1.3.4/dist/leaflet.css' [ 'layers.png', 'layers-2x.png', 'marker-icon.png', 'marker-icon-2x.png', 'marker-shadow.png' ].each do |image| - file "images/#{image}", "https://unpkg.com/leaflet@1.3.3/dist/images/#{image}" + file "images/#{image}", "https://unpkg.com/leaflet@1.3.4/dist/images/#{image}" end from 'git://github.com/aratcliffe/Leaflet.contextmenu.git', :tag => 'v1.5.0' do @@ -69,7 +69,7 @@ folder 'vendor/assets' do folder 'javascripts' do file 'html5shiv.js', 'https://raw.githubusercontent.com/aFarkas/html5shiv/master/src/html5shiv.js' - file 'bowser.js', 'https://github.com/lancedikson/bowser/releases/download/1.9.3/bowser.js' + file 'bowser.js', 'https://github.com/lancedikson/bowser/releases/download/1.9.4/bowser.js' end folder 'swfobject' do diff --git a/app/assets/javascripts/index.js b/app/assets/javascripts/index.js index ccf4e561c..e8e566f53 100644 --- a/app/assets/javascripts/index.js +++ b/app/assets/javascripts/index.js @@ -187,12 +187,12 @@ $(document).ready(function () { $.cookie('_osm_location', OSM.locationCookie(map), { expires: expiry, path: '/' }); }); - if ($.cookie('_osm_welcome') === 'hide') { - $('.welcome').hide(); + if ($.cookie('_osm_welcome') !== 'hide') { + $('.welcome').addClass('visible'); } $('.welcome .close-wrap').on('click', function() { - $('.welcome').hide(); + $('.welcome').removeClass('visible'); $.cookie('_osm_welcome', 'hide', { expires: expiry, path: '/' }); }); diff --git a/app/assets/javascripts/leaflet.map.js b/app/assets/javascripts/leaflet.map.js index ba88e5904..e712a8d1f 100644 --- a/app/assets/javascripts/leaflet.map.js +++ b/app/assets/javascripts/leaflet.map.js @@ -61,6 +61,12 @@ L.OSM.Map = L.Map.extend({ code: "G", name: I18n.t("javascripts.map.base.gps") }); + + this.on("layeradd", function (event) { + if (this.baseLayers.indexOf(event.layer) >= 0) { + this.setMaxZoom(event.layer.options.maxZoom); + } + }); }, updateLayers: function(layerParam) { diff --git a/app/assets/stylesheets/common.scss b/app/assets/stylesheets/common.scss index f9214b24d..4b8a80c54 100644 --- a/app/assets/stylesheets/common.scss +++ b/app/assets/stylesheets/common.scss @@ -611,11 +611,18 @@ body.compact { height: auto; overflow: hidden; - #banner, - .welcome { + #banner { display: block; } + .welcome { + display: none; + + &.visible { + display: block; + } + } + #sidebar_content { display: none; } @@ -971,6 +978,8 @@ header .search_forms, img.button { display: block; + width: 20px; + height: 20px; } span.force_width { @@ -1501,7 +1510,7 @@ tr.turn:hover { /* Rules for the trace view */ -.trace-view { +.trace-show { .trace_pending { color: red; } @@ -1585,7 +1594,7 @@ tr.turn:hover { margin-left: 70px; } -.user-view { +.user-show { // Silly exception; remove when user page is redesigned. .content-inner { max-width: none; @@ -1712,7 +1721,7 @@ tr.turn:hover { } } -.diary_entry-view img.user_thumbnail { +.diary_entry-show img.user_thumbnail { float: left; } diff --git a/app/assets/stylesheets/small.scss b/app/assets/stylesheets/small.scss index 984364736..12e21c7d8 100644 --- a/app/assets/stylesheets/small.scss +++ b/app/assets/stylesheets/small.scss @@ -126,9 +126,12 @@ body.small { } } - #sidebar .welcome, - #sidebar #banner { - display: none !important; + .overlay-sidebar #sidebar .welcome.visible { + display: none; + } + + .overlay-sidebar #sidebar #banner { + display: none; } .leaflet-top.leaflet-right { diff --git a/app/controllers/amf_controller.rb b/app/controllers/amf_controller.rb index 07e7669b1..4f6adae5d 100644 --- a/app/controllers/amf_controller.rb +++ b/app/controllers/amf_controller.rb @@ -143,6 +143,7 @@ class AmfController < ApplicationController if cstags return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(cstags) + cstags = strip_non_xml_chars cstags end @@ -471,7 +472,7 @@ class AmfController < ApplicationController return -1, t("application.setup_user_auth.blocked") if user.blocks.active.exists? query = Trace.visible_to(user) - query = if searchterm.to_i > 0 + query = if searchterm.to_i.positive? query.where(:id => searchterm.to_i) else query.where("MATCH(name) AGAINST (?)", searchterm).limit(21) @@ -497,6 +498,7 @@ class AmfController < ApplicationController rel = Relation.where(:id => relid).first return [-4, "relation", relid] if rel.nil? || !rel.visible + [0, "", relid, rel.tags, rel.members, rel.version] end end @@ -506,9 +508,9 @@ class AmfController < ApplicationController def findrelations(searchterm) rels = [] - if searchterm.to_i > 0 + if searchterm.to_i.positive? rel = Relation.where(:id => searchterm.to_i).first - rels.push([rel.id, rel.tags, rel.members, rel.version]) if rel && rel.visible + rels.push([rel.id, rel.tags, rel.members, rel.version]) if rel&.visible else RelationTag.where("v like ?", "%#{searchterm}%").limit(11).each do |t| rels.push([t.relation.id, t.relation.tags, t.relation.members, t.relation.version]) if t.relation.visible @@ -533,6 +535,7 @@ class AmfController < ApplicationController return -1, "You must accept the contributor terms before you can edit." if REQUIRE_TERMS_AGREED && user.terms_agreed.nil? return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(tags) + tags = strip_non_xml_chars tags relid = relid.to_i @@ -542,7 +545,7 @@ class AmfController < ApplicationController relation = nil Relation.transaction do # create a new relation, or find the existing one - relation = Relation.find(relid) if relid > 0 + relation = Relation.find(relid) if relid.positive? # We always need a new node, based on the data that has been sent to us new_relation = Relation.new @@ -550,7 +553,7 @@ class AmfController < ApplicationController typedmembers = [] members.each do |m| mid = m[1].to_i - if mid < 0 + if mid.negative? mid = renumberednodes[mid] if m[0] == "Node" mid = renumberedways[mid] if m[0] == "Way" end @@ -622,6 +625,7 @@ class AmfController < ApplicationController return -2, "Server error - way is only #{pointlist.length} points long." if pointlist.length < 2 return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(attributes) + attributes = strip_non_xml_chars attributes originalway = originalway.to_i @@ -651,6 +655,7 @@ class AmfController < ApplicationController # fixup node tags in a way as well return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(node.tags) + node.tags = strip_non_xml_chars node.tags node.tags.delete("created_by") @@ -728,6 +733,7 @@ class AmfController < ApplicationController return -1, "You must accept the contributor terms before you can edit." if REQUIRE_TERMS_AGREED && user.terms_agreed.nil? return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(tags) + tags = strip_non_xml_chars tags id = id.to_i @@ -735,7 +741,7 @@ class AmfController < ApplicationController node = nil new_node = nil Node.transaction do - if id > 0 + if id.positive? begin node = Node.find(id) rescue ActiveRecord::RecordNotFound @@ -883,12 +889,10 @@ class AmfController < ApplicationController # in the +tags+ hash. def strip_non_xml_chars(tags) new_tags = {} - unless tags.nil? - tags.each do |k, v| - new_k = k.delete "\000-\037\ufffe\uffff", "^\011\012\015" - new_v = v.delete "\000-\037\ufffe\uffff", "^\011\012\015" - new_tags[new_k] = new_v - end + tags&.each do |k, v| + new_k = k.delete "\000-\037\ufffe\uffff", "^\011\012\015" + new_v = v.delete "\000-\037\ufffe\uffff", "^\011\012\015" + new_tags[new_k] = new_v end new_tags end diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index db4ae9ad3..f35493b26 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -283,8 +283,7 @@ class ApplicationController < ActionController::Base # TODO: some sort of escaping of problem characters in the message response.headers["Error"] = message - if request.headers["X-Error-Format"] && - request.headers["X-Error-Format"].casecmp("xml").zero? + if request.headers["X-Error-Format"]&.casecmp("xml")&.zero? result = OSM::API.new.get_xml_doc result.root.name = "osmError" result.root << (XML::Node.new("status") << "#{Rack::Utils.status_code(status)} #{Rack::Utils::HTTP_STATUS_CODES[status]}") @@ -310,7 +309,7 @@ class ApplicationController < ActionController::Base helper_method :preferred_languages def set_locale(reset = false) - if current_user && current_user.languages.empty? && !http_accept_language.user_preferred_languages.empty? + if current_user&.languages&.empty? && !http_accept_language.user_preferred_languages.empty? current_user.languages = http_accept_language.user_preferred_languages current_user.save end @@ -435,7 +434,7 @@ class ApplicationController < ActionController::Base def preferred_editor editor = if params[:editor] params[:editor] - elsif current_user && current_user.preferred_editor + elsif current_user&.preferred_editor current_user.preferred_editor else DEFAULT_EDITOR diff --git a/app/controllers/browse_controller.rb b/app/controllers/browse_controller.rb index b4cb4594f..89b9c6ca3 100644 --- a/app/controllers/browse_controller.rb +++ b/app/controllers/browse_controller.rb @@ -58,7 +58,7 @@ class BrowseController < ApplicationController def changeset @type = "changeset" @changeset = Changeset.find(params[:id]) - @comments = if current_user && current_user.moderator? + @comments = if current_user&.moderator? @changeset.comments.unscope(:where => :visible).includes(:author) else @changeset.comments.includes(:author) @@ -77,7 +77,7 @@ class BrowseController < ApplicationController def note @type = "note" - if current_user && current_user.moderator? + if current_user&.moderator? @note = Note.find(params[:id]) @note_comments = @note.comments.unscope(:where => :visible) else diff --git a/app/controllers/changeset_controller.rb b/app/controllers/changeset_controller.rb index 56fab0fc4..c03ed9056 100644 --- a/app/controllers/changeset_controller.rb +++ b/app/controllers/changeset_controller.rb @@ -4,19 +4,19 @@ class ChangesetController < ApplicationController layout "site" require "xml/libxml" - skip_before_action :verify_authenticity_token, :except => [:list] - before_action :authorize_web, :only => [:list, :feed, :comments_feed] - before_action :set_locale, :only => [:list, :feed, :comments_feed] + skip_before_action :verify_authenticity_token, :except => [:index] + before_action :authorize_web, :only => [:index, :feed, :comments_feed] + before_action :set_locale, :only => [:index, :feed, :comments_feed] before_action :authorize, :only => [:create, :update, :upload, :close, :comment, :subscribe, :unsubscribe, :hide_comment, :unhide_comment] before_action :require_moderator, :only => [:hide_comment, :unhide_comment] before_action :require_allow_write_api, :only => [:create, :update, :upload, :close, :comment, :subscribe, :unsubscribe, :hide_comment, :unhide_comment] before_action :require_public_data, :only => [:create, :update, :upload, :close, :comment, :subscribe, :unsubscribe] before_action :check_api_writable, :only => [:create, :update, :upload, :comment, :subscribe, :unsubscribe, :hide_comment, :unhide_comment] - before_action :check_api_readable, :except => [:create, :update, :upload, :download, :query, :list, :feed, :comment, :subscribe, :unsubscribe, :comments_feed] - before_action(:only => [:list, :feed, :comments_feed]) { |c| c.check_database_readable(true) } - around_action :api_call_handle_error, :except => [:list, :feed, :comments_feed] - around_action :api_call_timeout, :except => [:list, :feed, :comments_feed, :upload] - around_action :web_timeout, :only => [:list, :feed, :comments_feed] + before_action :check_api_readable, :except => [:create, :update, :upload, :download, :query, :index, :feed, :comment, :subscribe, :unsubscribe, :comments_feed] + before_action(:only => [:index, :feed, :comments_feed]) { |c| c.check_database_readable(true) } + around_action :api_call_handle_error, :except => [:index, :feed, :comments_feed] + around_action :api_call_timeout, :except => [:index, :feed, :comments_feed, :upload] + around_action :web_timeout, :only => [:index, :feed, :comments_feed] # Helper methods for checking consistency include ConsistencyValidations @@ -255,7 +255,7 @@ class ChangesetController < ApplicationController ## # list non-empty changesets in reverse chronological order - def list + def index @params = params.permit(:display_name, :bbox, :friends, :nearby, :max_id, :list) if request.format == :atom && @params[:max_id] @@ -300,14 +300,14 @@ class ChangesetController < ApplicationController @edits = changesets.order("changesets.id DESC").limit(20).preload(:user, :changeset_tags, :comments) - render :action => :list, :layout => false + render :action => :index, :layout => false end end ## # list edits as an atom feed def feed - list + index end ## @@ -481,6 +481,7 @@ class ChangesetController < ApplicationController u = if name.nil? # user input checking, we don't have any UIDs < 1 raise OSM::APIBadUserInput, "invalid user ID" if user.to_i < 1 + u = User.find(user.to_i) else u = User.find_by(:display_name => name) @@ -581,7 +582,7 @@ class ChangesetController < ApplicationController # Get the maximum number of comments to return def comments_limit if params[:limit] - if params[:limit].to_i > 0 && params[:limit].to_i <= 10000 + if params[:limit].to_i.positive? && params[:limit].to_i <= 10000 params[:limit].to_i else raise OSM::APIBadUserInput, "Comments limit must be between 1 and 10000" diff --git a/app/controllers/diary_entry_controller.rb b/app/controllers/diary_entry_controller.rb index f2c11fc74..723fff17e 100644 --- a/app/controllers/diary_entry_controller.rb +++ b/app/controllers/diary_entry_controller.rb @@ -4,11 +4,11 @@ class DiaryEntryController < ApplicationController before_action :authorize_web before_action :set_locale before_action :require_user, :only => [:new, :edit, :comment, :hide, :hidecomment, :subscribe, :unsubscribe] - before_action :lookup_user, :only => [:view, :comments] + before_action :lookup_user, :only => [:show, :comments] before_action :check_database_readable before_action :check_database_writable, :only => [:new, :edit, :comment, :hide, :hidecomment, :subscribe, :unsubscribe] before_action :require_administrator, :only => [:hide, :hidecomment] - before_action :allow_thirdparty_images, :only => [:new, :edit, :list, :view, :comments] + before_action :allow_thirdparty_images, :only => [:new, :edit, :index, :show, :comments] def new @title = t "diary_entry.new.title" @@ -29,7 +29,7 @@ class DiaryEntryController < ApplicationController # Subscribe user to diary comments @diary_entry.subscriptions.create(:user => current_user) - redirect_to :action => "list", :display_name => current_user.display_name + redirect_to :action => "index", :display_name => current_user.display_name else render :action => "edit" end @@ -47,9 +47,9 @@ class DiaryEntryController < ApplicationController @diary_entry = DiaryEntry.find(params[:id]) if current_user != @diary_entry.user - redirect_to :action => "view", :id => params[:id] + redirect_to diary_entry_path(@diary_entry.user, @diary_entry) elsif params[:diary_entry] && @diary_entry.update(entry_params) - redirect_to :action => "view", :id => params[:id] + redirect_to diary_entry_path(@diary_entry.user, @diary_entry) end set_map_location @@ -71,9 +71,9 @@ class DiaryEntryController < ApplicationController # Add the commenter to the subscribers if necessary @entry.subscriptions.create(:user => current_user) unless @entry.subscribers.exists?(current_user.id) - redirect_to :action => "view", :display_name => @entry.user.display_name, :id => @entry.id + redirect_to diary_entry_path(@entry.user, @entry) else - render :action => "view" + render :action => "show" end rescue ActiveRecord::RecordNotFound render :action => "no_such_entry", :status => :not_found @@ -84,7 +84,7 @@ class DiaryEntryController < ApplicationController diary_entry.subscriptions.create(:user => current_user) unless diary_entry.subscribers.exists?(current_user.id) - redirect_to :action => "view", :display_name => diary_entry.user.display_name, :id => diary_entry.id + redirect_to diary_entry_path(diary_entry.user, diary_entry) rescue ActiveRecord::RecordNotFound render :action => "no_such_entry", :status => :not_found end @@ -94,17 +94,17 @@ class DiaryEntryController < ApplicationController diary_entry.subscriptions.where(:user => current_user).delete_all if diary_entry.subscribers.exists?(current_user.id) - redirect_to :action => "view", :display_name => diary_entry.user.display_name, :id => diary_entry.id + redirect_to diary_entry_path(diary_entry.user, diary_entry) rescue ActiveRecord::RecordNotFound render :action => "no_such_entry", :status => :not_found end - def list + def index if params[:display_name] @user = User.active.find_by(:display_name => params[:display_name]) if @user - @title = t "diary_entry.list.user_title", :user => @user.display_name + @title = t "diary_entry.index.user_title", :user => @user.display_name @entries = @user.diary_entries else render_unknown_user params[:display_name] @@ -112,7 +112,7 @@ class DiaryEntryController < ApplicationController end elsif params[:friends] if current_user - @title = t "diary_entry.list.title_friends" + @title = t "diary_entry.index.title_friends" @entries = DiaryEntry.where(:user_id => current_user.friend_users) else require_user @@ -120,7 +120,7 @@ class DiaryEntryController < ApplicationController end elsif params[:nearby] if current_user - @title = t "diary_entry.list.title_nearby" + @title = t "diary_entry.index.title_nearby" @entries = DiaryEntry.where(:user_id => current_user.nearby) else require_user @@ -130,10 +130,10 @@ class DiaryEntryController < ApplicationController @entries = DiaryEntry.joins(:user).where(:users => { :status => %w[active confirmed] }) if params[:language] - @title = t "diary_entry.list.in_language_title", :language => Language.find(params[:language]).english_name + @title = t "diary_entry.index.in_language_title", :language => Language.find(params[:language]).english_name @entries = @entries.where(:language_code => params[:language]) else - @title = t "diary_entry.list.title" + @title = t "diary_entry.index.title" end end @@ -157,7 +157,7 @@ class DiaryEntryController < ApplicationController @entries = user.diary_entries @title = t("diary_entry.feed.user.title", :user => user.display_name) @description = t("diary_entry.feed.user.description", :user => user.display_name) - @link = url_for :controller => "diary_entry", :action => "list", :display_name => user.display_name, :host => SERVER_URL, :protocol => SERVER_PROTOCOL + @link = url_for :controller => "diary_entry", :action => "index", :display_name => user.display_name, :host => SERVER_URL, :protocol => SERVER_PROTOCOL else head :not_found return @@ -169,21 +169,21 @@ class DiaryEntryController < ApplicationController @entries = @entries.where(:language_code => params[:language]) @title = t("diary_entry.feed.language.title", :language_name => Language.find(params[:language]).english_name) @description = t("diary_entry.feed.language.description", :language_name => Language.find(params[:language]).english_name) - @link = url_for :controller => "diary_entry", :action => "list", :language => params[:language], :host => SERVER_URL, :protocol => SERVER_PROTOCOL + @link = url_for :controller => "diary_entry", :action => "index", :language => params[:language], :host => SERVER_URL, :protocol => SERVER_PROTOCOL else @title = t("diary_entry.feed.all.title") @description = t("diary_entry.feed.all.description") - @link = url_for :controller => "diary_entry", :action => "list", :host => SERVER_URL, :protocol => SERVER_PROTOCOL + @link = url_for :controller => "diary_entry", :action => "index", :host => SERVER_URL, :protocol => SERVER_PROTOCOL end end @entries = @entries.visible.includes(:user).order("created_at DESC").limit(20) end - def view + def show @entry = @user.diary_entries.visible.where(:id => params[:id]).first if @entry - @title = t "diary_entry.view.title", :user => params[:display_name], :title => @entry.title + @title = t "diary_entry.show.title", :user => params[:display_name], :title => @entry.title else @title = t "diary_entry.no_such_entry.title", :id => params[:id] render :action => "no_such_entry", :status => :not_found @@ -193,13 +193,13 @@ class DiaryEntryController < ApplicationController def hide entry = DiaryEntry.find(params[:id]) entry.update(:visible => false) - redirect_to :action => "list", :display_name => entry.user.display_name + redirect_to :action => "index", :display_name => entry.user.display_name end def hidecomment comment = DiaryComment.find(params[:comment]) comment.update(:visible => false) - redirect_to :action => "view", :display_name => comment.diary_entry.user.display_name, :id => comment.diary_entry.id + redirect_to diary_entry_path(comment.diary_entry.user, comment.diary_entry) end def comments @@ -235,7 +235,7 @@ class DiaryEntryController < ApplicationController def require_administrator unless current_user.administrator? flash[:error] = t("user.filter.not_an_administrator") - redirect_to :action => "view" + redirect_to :action => "show" end end diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index d4e9a3bdf..ad38454f0 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -18,7 +18,7 @@ class IssuesController < ApplicationController @issues = Issue.visible_to(current_user) # If search - if params[:search_by_user] && params[:search_by_user].present? + if params[:search_by_user]&.present? @find_user = User.find_by(:display_name => params[:search_by_user]) if @find_user @issues = @issues.where(:reported_user_id => @find_user.id) @@ -28,11 +28,11 @@ class IssuesController < ApplicationController end end - @issues = @issues.where(:status => params[:status]) if params[:status] && params[:status].present? + @issues = @issues.where(:status => params[:status]) if params[:status]&.present? - @issues = @issues.where(:reportable_type => params[:issue_type]) if params[:issue_type] && params[:issue_type].present? + @issues = @issues.where(:reportable_type => params[:issue_type]) if params[:issue_type]&.present? - if params[:last_updated_by] && params[:last_updated_by].present? + if params[:last_updated_by]&.present? last_updated_by = params[:last_updated_by].to_s == "nil" ? nil : params[:last_updated_by].to_i @issues = @issues.where(:updated_by => last_updated_by) end diff --git a/app/controllers/node_controller.rb b/app/controllers/node_controller.rb index 20baf6bb4..84b814a34 100644 --- a/app/controllers/node_controller.rb +++ b/app/controllers/node_controller.rb @@ -54,6 +54,7 @@ class NodeController < ApplicationController new_node = Node.from_xml(request.raw_post) raise OSM::APIBadUserInput, "The id in the url (#{node.id}) is not the same as provided in the xml (#{new_node.id})" unless new_node && new_node.id == node.id + node.delete_with_history!(new_node, current_user) render :plain => node.version.to_s end @@ -65,6 +66,7 @@ class NodeController < ApplicationController ids = params["nodes"].split(",").collect(&:to_i) raise OSM::APIBadUserInput, "No nodes were given to search for" if ids.empty? + doc = OSM::API.new.get_xml_doc Node.find(ids).each do |node| diff --git a/app/controllers/notes_controller.rb b/app/controllers/notes_controller.rb index 94d0fdb55..19ff725dc 100644 --- a/app/controllers/notes_controller.rb +++ b/app/controllers/notes_controller.rb @@ -211,7 +211,7 @@ class NotesController < ApplicationController # Find the note and check it is valid @note = Note.find(params[:id]) raise OSM::APINotFoundError unless @note - raise OSM::APIAlreadyDeletedError.new("note", @note.id) unless @note.visible? || (current_user && current_user.moderator?) + raise OSM::APIAlreadyDeletedError.new("note", @note.id) unless @note.visible? || current_user&.moderator? # Render the result respond_to do |format| @@ -286,7 +286,7 @@ class NotesController < ApplicationController @page = (params[:page] || 1).to_i @page_size = 10 @notes = @user.notes - @notes = @notes.visible unless current_user && current_user.moderator? + @notes = @notes.visible unless current_user&.moderator? @notes = @notes.order("updated_at DESC, id").distinct.offset((@page - 1) * @page_size).limit(@page_size).preload(:comments => :author).to_a else @title = t "user.no_such_user.title" @@ -307,7 +307,7 @@ class NotesController < ApplicationController # Get the maximum number of results to return def result_limit if params[:limit] - if params[:limit].to_i > 0 && params[:limit].to_i <= 10000 + if params[:limit].to_i.positive? && params[:limit].to_i <= 10000 params[:limit].to_i else raise OSM::APIBadUserInput, "Note limit must be between 1 and 10000" @@ -327,9 +327,9 @@ class NotesController < ApplicationController 7 end - if closed_since < 0 + if closed_since.negative? notes.where.not(:status => "hidden") - elsif closed_since > 0 + elsif closed_since.positive? notes.where(:status => "open") .or(notes.where(:status => "closed") .where(notes.arel_table[:closed_at].gt(Time.now - closed_since.days))) diff --git a/app/controllers/old_controller.rb b/app/controllers/old_controller.rb index 9adf141d9..4f01b1e2a 100644 --- a/app/controllers/old_controller.rb +++ b/app/controllers/old_controller.rb @@ -70,6 +70,6 @@ class OldController < ApplicationController private def show_redactions? - current_user && current_user.moderator? && params[:show_redactions] == "true" + current_user&.moderator? && params[:show_redactions] == "true" end end diff --git a/app/controllers/traces_controller.rb b/app/controllers/traces_controller.rb index c77d884b3..b78ae2959 100644 --- a/app/controllers/traces_controller.rb +++ b/app/controllers/traces_controller.rb @@ -92,8 +92,8 @@ class TracesController < ApplicationController def show @trace = Trace.find(params[:id]) - if @trace && @trace.visible? && - (@trace.public? || @trace.user == current_user) + if @trace&.visible? && + (@trace&.public? || @trace&.user == current_user) @title = t ".title", :name => @trace.name else flash[:error] = t ".trace_not_found" @@ -318,7 +318,7 @@ class TracesController < ApplicationController visibility = params[:visibility] if visibility.nil? - visibility = if params[:public] && params[:public].to_i.nonzero? + visibility = if params[:public]&.to_i&.nonzero? "public" else "private" diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index 7e22c63b4..78299dccf 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -14,11 +14,11 @@ class UserController < ApplicationController before_action :require_allow_read_prefs, :only => [:api_details] before_action :require_allow_read_gpx, :only => [:api_gpx_files] before_action :require_cookies, :only => [:new, :login, :confirm] - before_action :require_administrator, :only => [:set_status, :delete, :list] + before_action :require_administrator, :only => [:set_status, :delete, :index] around_action :api_call_handle_error, :only => [:api_read, :api_users, :api_details, :api_gpx_files] before_action :lookup_user_by_id, :only => [:api_read] before_action :lookup_user_by_name, :only => [:set_status, :delete] - before_action :allow_thirdparty_images, :only => [:view, :account] + before_action :allow_thirdparty_images, :only => [:show, :account] def terms @legale = params[:legale] || OSM.ip_to_country(request.remote_ip) || DEFAULT_LEGALE @@ -29,7 +29,7 @@ class UserController < ApplicationController else @title = t "user.terms.title" - if current_user && current_user.terms_agreed? + if current_user&.terms_agreed? # Already agreed to terms, so just show settings redirect_to :action => :account, :display_name => current_user.display_name elsif current_user.nil? && session[:new_user].nil? @@ -276,7 +276,7 @@ class UserController < ApplicationController if params[:session] == session.id if session[:token] token = UserToken.find_by(:token => session[:token]) - token.destroy if token + token&.destroy session.delete(:token) end session.delete(:user) @@ -292,7 +292,7 @@ class UserController < ApplicationController def confirm if request.post? token = UserToken.find_by(:token => params[:confirm_string]) - if token && token.user.active? + if token&.user&.active? flash[:error] = t("user.confirm.already active") redirect_to :action => "login" elsif !token || token.expired? @@ -349,7 +349,7 @@ class UserController < ApplicationController def confirm_email if request.post? token = UserToken.find_by(:token => params[:confirm_string]) - if token && token.user.new_email? + if token&.user&.new_email? self.current_user = token.user current_user.email = current_user.new_email current_user.new_email = nil @@ -409,11 +409,11 @@ class UserController < ApplicationController render :xml => doc.to_s end - def view + def show @user = User.find_by(:display_name => params[:display_name]) if @user && - (@user.visible? || (current_user && current_user.administrator?)) + (@user.visible? || (current_user&.administrator?)) @title = @user.display_name else render_unknown_user params[:display_name] @@ -440,7 +440,7 @@ class UserController < ApplicationController if params[:referer] redirect_to params[:referer] else - redirect_to :action => "view" + redirect_to :action => "show" end end else @@ -463,7 +463,7 @@ class UserController < ApplicationController if params[:referer] redirect_to params[:referer] else - redirect_to :action => "view" + redirect_to :action => "show" end end else @@ -476,19 +476,19 @@ class UserController < ApplicationController def set_status @user.status = params[:status] @user.save - redirect_to :action => "view", :display_name => params[:display_name] + redirect_to user_path(:display_name => params[:display_name]) end ## # delete a user, marking them as deleted and removing personal data def delete @user.delete - redirect_to :action => "view", :display_name => params[:display_name] + redirect_to user_path(:display_name => params[:display_name]) end ## # display a list of users matching specified criteria - def list + def index if request.post? ids = params[:user].keys.collect(&:to_i) @@ -552,7 +552,7 @@ class UserController < ApplicationController if user.nil? && provider == "google" openid_url = auth_info[:extra][:id_info]["openid_id"] user = User.find_by(:auth_provider => "openid", :auth_uid => openid_url) if openid_url - user.update(:auth_provider => provider, :auth_uid => uid) if user + user&.update(:auth_provider => provider, :auth_uid => uid) end if user @@ -757,7 +757,7 @@ class UserController < ApplicationController flash[:error] = t("user.filter.not_an_administrator") if params[:display_name] - redirect_to :action => "view", :display_name => params[:display_name] + redirect_to user_path(:display_name => params[:display_name]) else redirect_to :action => "login", :referer => request.fullpath end @@ -826,6 +826,7 @@ class UserController < ApplicationController def gravatar_enable(user) # code from example https://en.gravatar.com/site/implement/images/ruby/ return false if user.image.present? + hash = Digest::MD5.hexdigest(user.email.downcase) url = "https://www.gravatar.com/avatar/#{hash}?d=404" # without d=404 we will always get an image back response = OSM.http_client.get(URI.parse(url)) diff --git a/app/helpers/banner_helper.rb b/app/helpers/banner_helper.rb index 661369454..fef6eaa5e 100644 --- a/app/helpers/banner_helper.rb +++ b/app/helpers/banner_helper.rb @@ -26,7 +26,7 @@ module BannerHelper # rotate all banner queue positions index = cval.to_i - cookies[ckey] = index - 1 if index > 0 + cookies[ckey] = index - 1 if index.positive? # pick banner with mininum queue position next if index > min_index diff --git a/app/helpers/changeset_helper.rb b/app/helpers/changeset_helper.rb index 7eb389023..bc19bc857 100644 --- a/app/helpers/changeset_helper.rb +++ b/app/helpers/changeset_helper.rb @@ -3,7 +3,7 @@ module ChangesetHelper if changeset.user.status == "deleted" t("user.no_such_user.deleted") elsif changeset.user.data_public? - link_to(changeset.user.display_name, user_path(changeset.user.display_name)) + link_to(changeset.user.display_name, user_path(changeset.user)) else t("browse.anonymous") end @@ -32,15 +32,15 @@ module ChangesetHelper end end - def changeset_list_title(params, user) + def changeset_index_title(params, user) if params[:friends] && user - t "changeset.list.title_friend" + t "changeset.index.title_friend" elsif params[:nearby] && user - t "changeset.list.title_nearby" + t "changeset.index.title_nearby" elsif params[:display_name] - t "changeset.list.title_user", :user => params[:display_name] + t "changeset.index.title_user", :user => params[:display_name] else - t "changeset.list.title" + t "changeset.index.title" end end end diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb index f9a84ba7d..43ca98c91 100644 --- a/app/helpers/issues_helper.rb +++ b/app/helpers/issues_helper.rb @@ -2,11 +2,11 @@ module IssuesHelper def reportable_url(reportable) case reportable when DiaryEntry - url_for(:controller => reportable.class.name.underscore, :action => :view, :display_name => reportable.user.display_name, :id => reportable.id) + diary_entry_url(reportable.user, reportable) when User - url_for(:controller => reportable.class.name.underscore, :action => :view, :display_name => reportable.display_name) + user_url(reportable) when DiaryComment - url_for(:controller => reportable.diary_entry.class.name.underscore, :action => :view, :display_name => reportable.diary_entry.user.display_name, :id => reportable.diary_entry.id, :anchor => "comment#{reportable.id}") + diary_entry_url(reportable.diary_entry.user, reportable.diary_entry, :anchor => "comment#{reportable.id}") when Note url_for(:controller => :browse, :action => :note, :id => reportable.id) end @@ -29,7 +29,7 @@ module IssuesHelper count = Issue.visible_to(current_user).open.limit(100).size if count > 99 content_tag(:span, "99+", :class => "count-number") - elsif count > 0 + elsif count.positive? content_tag(:span, count, :class => "count-number") end end diff --git a/app/helpers/note_helper.rb b/app/helpers/note_helper.rb index 6ebd18345..efe2346c9 100644 --- a/app/helpers/note_helper.rb +++ b/app/helpers/note_helper.rb @@ -18,7 +18,7 @@ module NoteHelper elsif author.status == "deleted" t("user.no_such_user.deleted") else - link_to h(author.display_name), link_options.merge(:controller => "user", :action => "view", :display_name => author.display_name) + link_to h(author.display_name), link_options.merge(:controller => "user", :action => "show", :display_name => author.display_name) end end end diff --git a/app/helpers/notifier_helper.rb b/app/helpers/notifier_helper.rb index dbd2d245d..2915a0880 100644 --- a/app/helpers/notifier_helper.rb +++ b/app/helpers/notifier_helper.rb @@ -29,6 +29,6 @@ module NotifierHelper # Because we can't use stylesheets in HTML emails, we need to inline the # styles. Rather than copy-paste the same string of CSS into every message, # we apply it once here, after the message has been composed. - html.gsub /
/, '
' + html.gsub(/
/, '
') end end diff --git a/app/helpers/user_roles_helper.rb b/app/helpers/user_roles_helper.rb index 805abb58f..0b7e9c616 100644 --- a/app/helpers/user_roles_helper.rb +++ b/app/helpers/user_roles_helper.rb @@ -6,24 +6,24 @@ module UserRolesHelper end def role_icon(user, role) - if current_user && current_user.administrator? + if current_user&.administrator? if user.has_role?(role) image = "roles/#{role}" - alt = t("user.view.role.revoke.#{role}") - title = t("user.view.role.revoke.#{role}") + alt = t("user.show.role.revoke.#{role}") + title = t("user.show.role.revoke.#{role}") url = revoke_role_path(:display_name => user.display_name, :role => role) confirm = t("user_role.revoke.are_you_sure", :name => user.display_name, :role => role) else image = "roles/blank_#{role}" - alt = t("user.view.role.grant.#{role}") - title = t("user.view.role.grant.#{role}") + alt = t("user.show.role.grant.#{role}") + title = t("user.show.role.grant.#{role}") url = grant_role_path(:display_name => user.display_name, :role => role) confirm = t("user_role.grant.are_you_sure", :name => user.display_name, :role => role) end elsif user.has_role?(role) image = "roles/#{role}" - alt = t("user.view.role.#{role}") - title = t("user.view.role.#{role}") + alt = t("user.show.role.#{role}") + title = t("user.show.role.#{role}") end if image diff --git a/app/models/changeset.rb b/app/models/changeset.rb index 1aa1e1fd3..5cdfeb994 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -106,6 +106,7 @@ class Changeset < ActiveRecord::Base pt.find("tag").each do |tag| raise OSM::APIBadXMLError.new("changeset", pt, "tag is missing key") if tag["k"].nil? raise OSM::APIBadXMLError.new("changeset", pt, "tag is missing value") if tag["v"].nil? + cs.add_tag_keyval(tag["k"], tag["v"]) end @@ -207,7 +208,7 @@ class Changeset < ActiveRecord::Base user_display_name_cache = {} if user_display_name_cache.nil? - if user_display_name_cache && user_display_name_cache.key?(user_id) + if user_display_name_cache&.key?(user_id) # use the cache if available elsif user.data_public? user_display_name_cache[user_id] = user.display_name diff --git a/app/models/client_application.rb b/app/models/client_application.rb index ef1a0110e..d11942beb 100644 --- a/app/models/client_application.rb +++ b/app/models/client_application.rb @@ -51,12 +51,13 @@ class ClientApplication < ActiveRecord::Base def self.find_token(token_key) token = OauthToken.includes(:client_application).find_by(:token => token_key) - token if token && token.authorized? + token if token&.authorized? end def self.verify_request(request, options = {}, &block) signature = OAuth::Signature.build(request, options, &block) return false unless OauthNonce.remember(signature.request.nonce, signature.request.timestamp) + value = signature.verify value rescue OAuth::Signature::UnknownSignatureMethod diff --git a/app/models/node.rb b/app/models/node.rb index c09fcbd67..989cdee5c 100644 --- a/app/models/node.rb +++ b/app/models/node.rb @@ -88,19 +88,23 @@ class Node < ActiveRecord::Base raise OSM::APIBadXMLError.new("node", pt, "lat missing") if pt["lat"].nil? raise OSM::APIBadXMLError.new("node", pt, "lon missing") if pt["lon"].nil? + node.lat = OSM.parse_float(pt["lat"], OSM::APIBadXMLError, "node", pt, "lat not a number") node.lon = OSM.parse_float(pt["lon"], OSM::APIBadXMLError, "node", pt, "lon not a number") raise OSM::APIBadXMLError.new("node", pt, "Changeset id is missing") if pt["changeset"].nil? + node.changeset_id = pt["changeset"].to_i raise OSM::APIBadUserInput, "The node is outside this world" unless node.in_world? # version must be present unless creating raise OSM::APIBadXMLError.new("node", pt, "Version is required when updating") unless create || !pt["version"].nil? + node.version = create ? 0 : pt["version"].to_i unless create raise OSM::APIBadXMLError.new("node", pt, "ID is required when updating.") if pt["id"].nil? + node.id = pt["id"].to_i # .to_i will return 0 if there is no number that can be parsed. # We want to make sure that there is no id with zero anyway @@ -119,6 +123,7 @@ class Node < ActiveRecord::Base pt.find("tag").each do |tag| raise OSM::APIBadXMLError.new("node", pt, "tag is missing key") if tag["k"].nil? raise OSM::APIBadXMLError.new("node", pt, "tag is missing value") if tag["v"].nil? + node.add_tag_key_val(tag["k"], tag["v"]) end diff --git a/app/models/notifier.rb b/app/models/notifier.rb index 11658cfd9..01b807607 100644 --- a/app/models/notifier.rb +++ b/app/models/notifier.rb @@ -87,16 +87,8 @@ class Notifier < ActionMailer::Base @from_user = comment.user.display_name @text = comment.body @title = comment.diary_entry.title - @readurl = url_for(:controller => "diary_entry", - :action => "view", - :display_name => comment.diary_entry.user.display_name, - :id => comment.diary_entry.id, - :anchor => "comment#{comment.id}") - @commenturl = url_for(:controller => "diary_entry", - :action => "view", - :display_name => comment.diary_entry.user.display_name, - :id => comment.diary_entry.id, - :anchor => "newcomment") + @readurl = diary_entry_url(comment.diary_entry.user, comment.diary_entry, :anchor => "comment#{comment.id}") + @commenturl = diary_entry_url(comment.diary_entry.user, comment.diary_entry, :anchor => "newcomment") @replyurl = new_message_url(comment.user, :message => { :title => "Re: #{comment.diary_entry.title}" }) @author = @from_user @@ -112,8 +104,7 @@ class Notifier < ActionMailer::Base def friend_notification(friend) with_recipient_locale friend.befriendee do @friend = friend - @viewurl = url_for(:controller => "user", :action => "view", - :display_name => @friend.befriender.display_name) + @viewurl = user_url(@friend.befriender) @friendurl = url_for(:controller => "user", :action => "make_friend", :display_name => @friend.befriender.display_name) @author = @friend.befriender.display_name @@ -190,8 +181,8 @@ class Notifier < ActionMailer::Base end def user_avatar_file_path(user) - image = user && user.image - if image && image.file? + image = user&.image + if image&.file? return image.path(:small) else return Rails.root.join("app", "assets", "images", "users", "images", "small.png") diff --git a/app/models/oauth_nonce.rb b/app/models/oauth_nonce.rb index 0952f068e..9d2773e8f 100644 --- a/app/models/oauth_nonce.rb +++ b/app/models/oauth_nonce.rb @@ -22,8 +22,10 @@ class OauthNonce < ActiveRecord::Base # Remembers a nonce and it's associated timestamp. It returns false if it has already been used def self.remember(nonce, timestamp) return false if Time.now.to_i - timestamp.to_i > 86400 + oauth_nonce = OauthNonce.create(:nonce => nonce, :timestamp => timestamp.to_i) return false if oauth_nonce.new_record? + oauth_nonce end end diff --git a/app/models/relation.rb b/app/models/relation.rb index 2495830ee..202db12da 100644 --- a/app/models/relation.rb +++ b/app/models/relation.rb @@ -70,12 +70,15 @@ class Relation < ActiveRecord::Base relation = Relation.new raise OSM::APIBadXMLError.new("relation", pt, "Version is required when updating") unless create || !pt["version"].nil? + relation.version = pt["version"] raise OSM::APIBadXMLError.new("relation", pt, "Changeset id is missing") if pt["changeset"].nil? + relation.changeset_id = pt["changeset"] unless create raise OSM::APIBadXMLError.new("relation", pt, "ID is required when updating") if pt["id"].nil? + relation.id = pt["id"].to_i # .to_i will return 0 if there is no number that can be parsed. # We want to make sure that there is no id with zero anyway @@ -94,6 +97,7 @@ class Relation < ActiveRecord::Base pt.find("tag").each do |tag| raise OSM::APIBadXMLError.new("relation", pt, "tag is missing key") if tag["k"].nil? raise OSM::APIBadXMLError.new("relation", pt, "tag is missing value") if tag["v"].nil? + relation.add_tag_keyval(tag["k"], tag["v"]) end @@ -106,6 +110,7 @@ class Relation < ActiveRecord::Base pt.find("member").each do |member| # member_type = raise OSM::APIBadXMLError.new("relation", pt, "The #{member['type']} is not allowed only, #{TYPES.inspect} allowed") unless TYPES.include? member["type"] + # member_ref = member['ref'] # member_role member["role"] ||= "" # Allow the upload to not include this, in which case we default to an empty string. @@ -207,6 +212,7 @@ class Relation < ActiveRecord::Base lock! check_consistency(self, new_relation, user) raise OSM::APIPreconditionFailedError, "Cannot update relation #{id}: data or member data is invalid." unless new_relation.preconditions_ok?(members) + self.changeset_id = new_relation.changeset_id self.changeset = new_relation.changeset self.tags = new_relation.tags @@ -219,6 +225,7 @@ class Relation < ActiveRecord::Base def create_with_history(user) check_create_consistency(self, user) raise OSM::APIPreconditionFailedError, "Cannot create relation: data or member data is invalid." unless preconditions_ok? + self.version = 0 self.visible = true save_with_history! @@ -253,7 +260,8 @@ class Relation < ActiveRecord::Base element = model.lock("for share").find_by(:id => m[1]) # and check that it is OK to use. - raise OSM::APIPreconditionFailedError, "Relation with id #{id} cannot be saved due to #{m[0]} with id #{m[1]}" unless element && element.visible? && element.preconditions_ok? + raise OSM::APIPreconditionFailedError, "Relation with id #{id} cannot be saved due to #{m[0]} with id #{m[1]}" unless element&.visible? && element&.preconditions_ok? + hash[m[1]] = true end @@ -267,9 +275,10 @@ class Relation < ActiveRecord::Base def fix_placeholders!(id_map, placeholder_id = nil) members.map! do |type, id, role| old_id = id.to_i - if old_id < 0 + if old_id.negative? new_id = id_map[type.downcase.to_sym][old_id] raise OSM::APIBadUserInput, "Placeholder #{type} not found for reference #{old_id} in relation #{self.id.nil? ? placeholder_id : self.id}." if new_id.nil? + [type, new_id, role] else [type, id, role] @@ -372,7 +381,7 @@ class Relation < ActiveRecord::Base # reasonable on the assumption that adding or removing members doesn't # materially change the rest of the relation. any_relations = - changed_members.collect { |_id, type| type == "relation" } + changed_members.collect { |type, _id, _role| type == "Relation" } .inject(false) { |acc, elem| acc || elem } update_members = if tags_changed || any_relations diff --git a/app/models/request_token.rb b/app/models/request_token.rb index 335a735bc..ed0cc3ae4 100644 --- a/app/models/request_token.rb +++ b/app/models/request_token.rb @@ -40,6 +40,7 @@ class RequestToken < OauthToken def authorize!(user) return false if authorized? + self.user = user self.authorized_at = Time.now self.verifier = OAuth::Helper.generate_key(20)[0, 20] unless oauth10? diff --git a/app/models/trace.rb b/app/models/trace.rb index 214b0b647..5096a81aa 100644 --- a/app/models/trace.rb +++ b/app/models/trace.rb @@ -214,10 +214,12 @@ class Trace < ActiveRecord::Base def update_from_xml_node(pt, create = false) raise OSM::APIBadXMLError.new("trace", pt, "visibility missing") if pt["visibility"].nil? + self.visibility = pt["visibility"] unless create raise OSM::APIBadXMLError.new("trace", pt, "ID is required when updating.") if pt["id"].nil? + id = pt["id"].to_i # .to_i will return 0 if there is no number that can be parsed. # We want to make sure that there is no id with zero anyway @@ -232,6 +234,7 @@ class Trace < ActiveRecord::Base description = pt.find("description").first raise OSM::APIBadXMLError.new("trace", pt, "description missing") if description.nil? + self.description = description.content self.tags = pt.find("tag").collect do |tag| @@ -303,7 +306,7 @@ class Trace < ActiveRecord::Base tp.save! end - if gpx.actual_points > 0 + if gpx.actual_points.positive? max_lat = Tracepoint.where(:gpx_id => id).maximum(:latitude) min_lat = Tracepoint.where(:gpx_id => id).minimum(:latitude) max_lon = Tracepoint.where(:gpx_id => id).maximum(:longitude) diff --git a/app/models/way.rb b/app/models/way.rb index e5b73ceaa..c95a12122 100644 --- a/app/models/way.rb +++ b/app/models/way.rb @@ -68,12 +68,15 @@ class Way < ActiveRecord::Base way = Way.new raise OSM::APIBadXMLError.new("way", pt, "Version is required when updating") unless create || !pt["version"].nil? + way.version = pt["version"] raise OSM::APIBadXMLError.new("way", pt, "Changeset id is missing") if pt["changeset"].nil? + way.changeset_id = pt["changeset"] unless create raise OSM::APIBadXMLError.new("way", pt, "ID is required when updating") if pt["id"].nil? + way.id = pt["id"].to_i # .to_i will return 0 if there is no number that can be parsed. # We want to make sure that there is no id with zero anyway @@ -92,6 +95,7 @@ class Way < ActiveRecord::Base pt.find("tag").each do |tag| raise OSM::APIBadXMLError.new("way", pt, "tag is missing key") if tag["k"].nil? raise OSM::APIBadXMLError.new("way", pt, "tag is missing value") if tag["v"].nil? + way.add_tag_keyval(tag["k"], tag["v"]) end @@ -123,7 +127,7 @@ class Way < ActiveRecord::Base ordered_nodes[nd.sequence_id] = nd.node_id.to_s if visible_nodes[nd.node_id] else # otherwise, manually go to the db to check things - ordered_nodes[nd.sequence_id] = nd.node_id.to_s if nd.node && nd.node.visible? + ordered_nodes[nd.sequence_id] = nd.node_id.to_s if nd.node&.visible? end end @@ -194,6 +198,7 @@ class Way < ActiveRecord::Base def create_with_history(user) check_create_consistency(self, user) raise OSM::APIPreconditionFailedError, "Cannot create way: data is invalid." unless preconditions_ok? + self.version = 0 self.visible = true save_with_history! @@ -249,9 +254,10 @@ class Way < ActiveRecord::Base # to IDs +id_map+. def fix_placeholders!(id_map, placeholder_id = nil) nds.map! do |node_id| - if node_id < 0 + if node_id.negative? new_id = id_map[:node][node_id] raise OSM::APIBadUserInput, "Placeholder node not found for reference #{node_id} in way #{id.nil? ? placeholder_id : id}" if new_id.nil? + new_id else node_id diff --git a/app/views/browse/changeset.html.erb b/app/views/browse/changeset.html.erb index 85b9515df..545b6d072 100644 --- a/app/views/browse/changeset.html.erb +++ b/app/views/browse/changeset.html.erb @@ -127,7 +127,7 @@ <% end %> <%= user = (@prev_by_user || @next_by_user).user.display_name - link_to content_tag(:bdi, user), :controller => "changeset", :action => "list", :display_name => user + link_to content_tag(:bdi, user), :controller => "changeset", :action => "index", :display_name => user %> <% if @next_by_user %> · diff --git a/app/views/changeset/_changeset.html.erb b/app/views/changeset/_changeset.html.erb index f27b0bc91..03ba013a3 100644 --- a/app/views/changeset/_changeset.html.erb +++ b/app/views/changeset/_changeset.html.erb @@ -14,7 +14,7 @@ <%= content_tag "li", :id => "changeset_#{changeset.id}", :data => {:changeset => changeset_data} do %>
<%= rss_link_to :action => :rss, :display_name => @entry.user.display_name %>
<%= t 'layouts.intro_text' %>
-<%= t 'layouts.partners_html', +
<%= t 'layouts.hosting_partners_html', :ucl => link_to(t('layouts.partners_ucl'), "https://www.ucl.ac.uk"), - :ic => link_to(t('layouts.partners_ic'), "https://www.imperial.ac.uk/"), :bytemark => link_to(t('layouts.partners_bytemark'), "https://www.bytemark.co.uk"), :partners => link_to(t('layouts.partners_partners'), "https://hardware.openstreetmap.org/thanks/") %>
diff --git a/app/views/oauth/authorize.html.erb b/app/views/oauth/authorize.html.erb index efb7de7ec..d53181c17 100644 --- a/app/views/oauth/authorize.html.erb +++ b/app/views/oauth/authorize.html.erb @@ -2,7 +2,7 @@<%= raw t(".request_access", :app_name => link_to(@token.client_application.name, @token.client_application.url), :user => link_to(current_user.display_name, :controller => :user, :action => :view, :display_name => current_user.display_name)) %>
+<%= raw t(".request_access", :app_name => link_to(@token.client_application.name, @token.client_application.url), :user => link_to(current_user.display_name, user_path(current_user))) %>
<%= form_tag authorize_url do %> <%= hidden_field_tag "oauth_token", @token.token %> diff --git a/app/views/site/about.html.erb b/app/views/site/about.html.erb index 702a0243d..111815c12 100644 --- a/app/views/site/about.html.erb +++ b/app/views/site/about.html.erb @@ -32,9 +32,8 @@<%= t 'layouts.partners_html', +
<%= t 'layouts.hosting_partners_html', :ucl => link_to(t('layouts.partners_ucl'), "https://www.ucl.ac.uk"), - :ic => link_to(t('layouts.partners_ic'), "https://www.imperial.ac.uk/"), :bytemark => link_to(t('layouts.partners_bytemark'), "https://www.bytemark.co.uk"), :partners => link_to(t('layouts.partners_partners'), "https://hardware.openstreetmap.org/thanks/") %>
diff --git a/app/views/traces/georss.rss.builder b/app/views/traces/georss.rss.builder index c2f569ae9..b17192ec8 100644 --- a/app/views/traces/georss.rss.builder +++ b/app/views/traces/georss.rss.builder @@ -21,8 +21,8 @@ xml.rss("version" => "2.0", xml.item do xml.title trace.name - xml.link url_for(:controller => :traces, :action => :view, :id => trace.id, :display_name => trace.user.display_name, :only_path => false) - xml.guid url_for(:controller => :traces, :action => :view, :id => trace.id, :display_name => trace.user.display_name, :only_path => false) + xml.link url_for(:controller => :traces, :action => :show, :id => trace.id, :display_name => trace.user.display_name, :only_path => false) + xml.guid url_for(:controller => :traces, :action => :show, :id => trace.id, :display_name => trace.user.display_name, :only_path => false) xml.description do xml.cdata! render(:partial => "description", :object => trace, :formats => [:html]) diff --git a/app/views/user/_contact.html.erb b/app/views/user/_contact.html.erb index 613283371..123f511d2 100644 --- a/app/views/user/_contact.html.erb +++ b/app/views/user/_contact.html.erb @@ -14,16 +14,16 @@ <% if @user.home_lon and @user.home_lat and contact.home_lon and contact.home_lat %> <% distance = @user.distance(contact) %> <% if distance < 1 %> - (<%= t 'user.view.m away', :count => (distance * 1000).round %>) + (<%= t 'user.show.m away', :count => (distance * 1000).round %>) <% else %> - (<%= t 'user.view.km away', :count => distance.round %>) + (<%= t 'user.show.km away', :count => distance.round %>) <% end %> <% end %><% changeset = contact.changesets.first %> <% if changeset %> - <%= t('user.view.latest edit', :ago => t('user.view.ago', :time_in_words_ago => time_ago_in_words(changeset.created_at))) %> + <%= t('user.show.latest edit', :ago => t('user.show.ago', :time_in_words_ago => time_ago_in_words(changeset.created_at))) %> <% comment = changeset.tags['comment'].to_s != '' ? changeset.tags['comment'] : t('browse.no_comment') %> "<%= link_to(comment, {:controller => 'browse', :action => 'changeset', :id => changeset.id}, @@ -35,12 +35,12 @@
<% if user.creation_ip %> - <%= raw t 'user.list.summary', - :name => link_to(h(user.display_name), :action => "view", :display_name => user.display_name), + <%= raw t 'user.index.summary', + :name => link_to(h(user.display_name), user_path(user)), :ip_address => link_to(user.creation_ip, :ip => user.creation_ip), :date => l(user.creation_time, :format => :friendly) %> <% else %> - <%= raw t 'user.list.summary_no_ip', - :name => link_to(h(user.display_name), :action => "view", :display_name => user.display_name), + <%= raw t 'user.index.summary_no_ip', + :name => link_to(h(user.display_name), user_path(user)), :date => l(user.creation_time, :format => :friendly) %> <% end %> diff --git a/app/views/user/account.html.erb b/app/views/user/account.html.erb index 16fbc46ca..352adf887 100644 --- a/app/views/user/account.html.erb +++ b/app/views/user/account.html.erb @@ -6,7 +6,7 @@
بر خلاف سایر نقشهها، OpenStreetMap کاملاً توسط افرادی مثل شما ساختهشده و برای تعمیر، بهروزرسانی، دریافت و استفاده برای هر کسی آزاد است.
-برای شروع کمک ثبت نام کنید. برای تأیید حسابتان ایمیلی میفرستیم.
+بر خلاف سایر نقشهها، OpenStreetMap کاملاً توسط افرادی مثل شما ساختهشده و اصلاح، بهروزرسانی، بارگیری و استفادهٔ آن برای همه آزاد است.
+برای شروع همکاری ثبت نام کنید. برای تأیید حساب ایمیلی برای شما میفرستیم.
license_agreement: وقتی ایمیلتان را تایید کردید نیاز است که با شرایط همکاری موافقت کنید. email address: 'آدرس ایمیل:' @@ -1943,7 +1957,7 @@ fa: body: با عرض پوزش، هیچ کاربری با نام %{user} وجود ندارد. لطفاً نحوه نوشتن تان را بررسی کنید، یا شاید پیوندی که کلیک کردید اشتباه است. deleted: حذف شده - view: + show: my diary: روزنوشت من new diary entry: روزنوشت تازه my edits: ویرایش های من @@ -1954,7 +1968,7 @@ fa: my settings: تنظیمات من my comments: نظرات من oauth settings: تنظیمات oauth - blocks on me: بلوک های بر من + blocks on me: مسدودیهای من blocks by me: بوک های توسط من send message: ارسال پیام diary: روزنوشت @@ -1979,9 +1993,10 @@ fa: if set location: مکان خانهتان را در صفحهٔ %{settings_link} تنظیم کنید تا کاربران نزدیکتان را ببینید. settings_link_text: تنظیمات + my friends: دوستان من no friends: شما هنوز هیچ دوستی اضافه نکردهاید - km away: '%{count} کیلومتر فاصله' - m away: '%{count} متر فاصله' + km away: %{count} کیلومتر فاصله + m away: %{count} متر فاصله nearby users: دیگر کاربران نزدیک no nearby users: در این حوالی هیچ کاربری نقشه ترسیم نکرده است role: @@ -1993,10 +2008,10 @@ fa: revoke: administrator: لغو دسترسی سرپرست moderator: لغو دسترسی مدیر - block_history: بلوک شده های فعال - moderator_history: بلوک های گرفته شده + block_history: مسدودیهای فعال + moderator_history: مسدودکردنها comments: نظرات - create_block: بلوک کردن این کاربر + create_block: این کاربر مسدود شود activate_user: فعال کردن این کاربر deactivate_user: غیر فعال کردن این کاربر confirm_user: تأیید این کاربر @@ -2099,7 +2114,7 @@ fa: دهید. button: تأیید success: تغییر ایمیل شما تأیید شد! - failure: یک آدرس ایمیل با این نشانه قبلاً تأیید شده است. + failure: یک آدرس ایمیل با این توکن قبلاً تأیید شده است. unknown_token: کد تأیید منقضی شده یا وجود ندارد. set_home: flash success: موقعیت خانه با موفقیت ذخیره شد @@ -2118,7 +2133,7 @@ fa: not_a_friend: '%{name} یکی از دوستان شما نیست.' filter: not_an_administrator: برای انجام آن عملیات نیاز هست که سرپرست باشید - list: + index: title: کاربران heading: کاربران showing: @@ -2178,103 +2193,102 @@ fa: و نقش اطمینان حاصل نمایید. user_blocks: model: - non_moderator_update: برای بروزرسانی یا ایجاد بلوک باید یک مدیر بود. - non_moderator_revoke: برای لغو یک بلوک باید مدیر بود. + non_moderator_update: برای بهروزرسانی یا ایجاد مسدودی باید مدیر بود. + non_moderator_revoke: برای لغو یک مسدودی باید مدیر بود. not_found: - sorry: پوزش، بلوک کاربر با شناسه %{id} یافت نمی شود. + sorry: پوزش، مسدودی کاربر با شناسه %{id} یافت نمیشود. back: بازگشت به فهرست new: - title: ایجاد بلوک در %{name} - heading: ایجاد بلوک در %{name} - reason: دلیل اینکه چرا %{name} بلوک شده است. لطفاً آرام باشید و تا جایی که ممکن - است معقول و منطقی باشید، تا جایی که میتوانید دربارهٔ وضعیت اطلاع دهید، این - را به خاطر داشته باشید که این پیام بهصورت عمومی پدیدار است. به یاد داشته - باشید همهٔ کاربران اصطلاحات خاص انجمن را نمیفهمند، پس لطفاً سعی کنید از شرایط - تازهواردان استفاده کنید. - period: چه مدت، الان شروع شود، کاربر از API بلوک میشود برای. - submit: ایجاد بلوک + title: در حال مسدودکردن %{name} + heading: مسدودکردن %{name} + reason: |- + دلیل مسدودشدن کاربری %{name}. لطفاً خونسرد و منطقی باشید و هرچه میتوانید بهشکل جزئیتر اوضاع را شرح دهید و همچنین به یاد داشته باشید که پیام شما بهطور عمومی قابل مشاهده است. + در نظر داشته باشید که همهٔ کاربران اصطلاحات تخصصی انجمن را نمیفهمند، لطفاً سعی کنید واژههایی که استفاده میکنید غیرتخصصی باشد. + period: مدتزمان مسدودی کاربر از API (شروع از حالا). + submit: ایجاد مسدودی tried_contacting: من با کاربر تماس گرفته و درخواست کردم توقف کند. tried_waiting: من مقدار مناسبی زمان را به کاربر دادم تا به این ارتباط پاسخ دهد. - needs_view: کاربر قبل از پاک شدن این بلوک نیاز به وارد شدن دارد - back: مشاهده تمام بلوک ها + needs_view: برای پاکشدن این مسدودی کاربر باید وارد حسابش شود. + back: دیدن تمام مسدودیها edit: - title: ویرایش بلوک در %{name} - heading: ویرایش بلوک در %{name} - reason: دلیل اینکه چرا %{name} بلوک شده است. لطفاً آرام باشید و تا جایی که ممکن - است معقول و منطقی باشید، تا جایی که میتوانید دربارهٔ وضعیت اطلاع دهید. به - یاد داشته باشید همهٔ کاربران اصطلاحات خاص انجمن را نمیفهمند، پس لطفاً سعی - کنید از شرایط تازهواردان استفاده کنید. - period: چه مدت، الان شروع شود، کاربر از API بلوک میشود برای. - submit: به روز رسانی بلوک - show: مشاهده این بلوک - back: مشاهده تمام بلوک ها - needs_view: چرا قبل از پاک کردن این بلوک کاربر نیاز به وارد شدن دارد؟ + title: ویرایش مسدودی کاربر %{name} + heading: ویرایش مسدودی %{name} + reason: دلیل مسدودشدن کاربری %{name}. لطفاً خونسرد و منطقی باشید و هرچه میتوانید + بهشکل جزئیتر اوضاع را شرح دهید. در نظر داشته باشید که همهٔ کاربران اصطلاحات + تخصصی انجمن را نمیفهمند، لطفاً سعی کنید واژههایی که استفاده میکنید غیرتخصصی + باشد. + period: مدتزمان مسدودی کاربر از API (شروع از حالا). + submit: بهروزرسانی مسدودی + show: مشاهده این مسدودی + back: دیدن تمام مسدودیها + needs_view: آیا قبل از پاکشدن این مسدودی، کاربر باید وارد حساب کاربری شود؟ filter: - block_expired: بلوک قبلا منقضی شده و قابل ویرایش نیست. - block_period: دوره ی بلوک کردن باید یکی از مقدار های قابل انتخاب در لیست بازشو - باشد. + block_expired: مسدودی قبلا منقضی شده و قابل ویرایش نیست. + block_period: دوره مسدودی باید یکی از مقدارهای قابل انتخاب در لیست بازشو باشد. create: - try_contacting: لطفاً قبل از بلوک کردن با کاربر تماس بگیرید و به آنها زمان مناسب - دهید تا پاسخ دهند. - try_waiting: لطفاً به کاربر زمان کافی دهید تا قبل از بستهشدن بتواند پاسخگو + try_contacting: لطفاً قبل از مسدودکردن کاربر با وی تماس بگیرید و به او زمان + بدهید تا پاسخگو باشد. + try_waiting: لطفاً پیش از مسدودکردن کاربر به او زمان کافی بدهید تا بتواند پاسخگو باشد. - flash: یک بلوک روی کاربر %{name} ایجاد شد. + flash: یک مسدودی روی کاربری %{name} ایجاد شد. update: - only_creator_can_edit: فقط مدیری که این بلوک را ایجاد کرده میتواند آنرا ویرایش + only_creator_can_edit: فقط مدیری که این مسدودی را ایجاد کرده میتواند آنرا ویرایش کند. - success: بلوک بروزرسانی شد. + success: مسدودی بهروزرسانی شد. index: - title: بلوک های کاربر - heading: لیست بلوک های کاربر - empty: هنوز بلوکی ساخته نشده. + title: مسدودیهای کاربر + heading: لیست مسدودیهای کاربری + empty: هنوز مسدودیتی ساخته نشده. revoke: - title: لغو بلوک در %{block_on} - heading: لغو بلوک در %{block_on} توسط %{block_by} - time_future: این بلوک در %{time} پایان می یابد. - past: این بلوک %{time} پایان یافته و اکنون قابل لغو کردن نیست. - confirm: مطمئنید میخواهید این بلوک را لغو کنید؟ - revoke: باطل کردن! - flash: این بلوک باطل شد. + title: لغو مسدودی از %{block_on} + heading: لغو مسدودی از %{block_on}، مسدودشده توسط %{block_by} + time_future: این مسدودی در %{time} پایان می یابد. + past: این مسدودی %{time} پیش پایان یافته و اکنون قابل لغوکردن نیست. + confirm: مطمئنید میخواهید این مسدودی را لغو کنید؟ + revoke: باطل شود! + flash: این مسدودی لغو شد. period: one: 1 ساعت other: '%{count} ساعت' helper: time_future: در %{time} پایان می پذیرد. until_login: فعال تا وقتی کاربر وارد شود. - time_past: به پایان رسیده %{time} قبل. + time_future_and_until_login: تا %{time} دیگر و پس از ورود به حساب کاربری پایان + مییابد. + time_past: '%{time} پیش به پایان رسید.' blocks_on: - title: بلوک ها در %{name} - heading: فهرست بلوک ها در %{name} - empty: '%{name} هنوز بلوک نشده.' + title: مسدودیهای کاربری %{name} + heading: فهرست مسدودیهای %{name} + empty: '%{name} تاکنون مسدود نبوده.' blocks_by: - title: بلوک توسط %{name} - heading: فهرست بلوک توسط %{name} - empty: '%{name} هنوز بلوکی ایجاد نکرده.' + title: مسدودشدهها توسط %{name} + heading: فهرست مسدودشدهها توسط %{name} + empty: '%{name} تاکنون مسدود نکرده.' show: - title: '%{block_on} توسط %{block_by} بلوک شده' - heading: '%{block_on} توسط %{block_by} بلوک شده' + title: '%{block_on} توسط %{block_by} مسدود شده' + heading: '%{block_on} توسط %{block_by} مسدود شده' time_future: در %{time} پایان می پذیرد - time_past: به پایان رسیده %{time} قبل + time_past: '%{time} پیش به پایان رسید' created: ایجاد شده ago: '%{time} پیش' status: وضعیت show: نمایش edit: ویرایش - revoke: باطل کردن! + revoke: باطل شود! confirm: آیا مطمئن هستید؟ - reason: 'دلیل بلوک:' - back: مشاهده تمام بلوک ها + reason: 'دلیل مسدودی:' + back: دیدن تمام مسدودیها revoker: 'باطل کننده:' - needs_view: کاربر قبل از پاک شدن این بلوک نیاز به وارد شدن دارد. + needs_view: برای پاکشدن این مسدودی کاربر باید وارد حسابش شود. block: not_revoked: (باطل نشده) show: نمایش edit: ویرایش - revoke: باطل کردن! + revoke: باطل شود! blocks: - display_name: کاربر بلوک شده + display_name: کاربر مسدودشده creator_name: ایجاد کننده - reason: دلیل بلوک + reason: دلیل مسدودی status: وضعیت revoker_name: باطل شده توسط showing_page: صفحهٔ %{page} @@ -2315,7 +2329,7 @@ fa: javascripts: close: بستن share: - title: بهاشتراکگذاری + title: همرسانی cancel: لغو image: تصویر link: پیوند یا اچتیامال @@ -2368,7 +2382,7 @@ fa: createnote_disabled_tooltip: برای افزودن یادداشت به نقشه بزرگنمایی کنید map_notes_zoom_in_tooltip: برای دیدن یادداشتهای نقشه بزرگنمایی کنید map_data_zoom_in_tooltip: برای دیدن دادههای نقشه بزرگنمایی کنید - queryfeature_tooltip: کوئری ویژگیها + queryfeature_tooltip: پرسوجوی ویژگیها queryfeature_disabled_tooltip: برای پرسوجوی ویژگیها بزرگنمایی کنید changesets: show: @@ -2474,33 +2488,33 @@ fa: redactions: edit: description: شرح - heading: ویرایش کردن ویرایش + heading: بازویرایی ویرایش submit: ذخیره ویرایش - title: ویرایش کردن ویرایش + title: بازویرایی ویرایش index: empty: ویرایشی برای نشان دادن نیست. - heading: فهرست ویرایش ها - title: فهرست ویرایش ها + heading: سیاههٔ بازویراستهها(redactions) + title: فهرست ویرایشهای حذفشده new: description: شرح - heading: اطلاعات را برای ویرایش جدید وارد کنید + heading: اطلاعات را برای بازویرایی جدید وارد کنید submit: ایجاد ویرایش - title: ایجاد ویرایش جدید + title: ایجاد بازویرایی جدید show: description: 'شرح:' - heading: نمایش ویرایش %{title} + heading: نمایش بازویرایستهٔ %{title} title: نمایش دادن ویرایش user: 'ایجاد کننده:' - edit: ویرایش این ویرایش + edit: ویرایش این بازویراسته destroy: حذف این ویرایش confirm: آیا مطمئن هستید؟ create: - flash: ویرایش پاک شد. + flash: بازویراسته ایجاد شد. update: flash: تغییرات ذخیره شد. destroy: - not_empty: ویرایش خالی نیست. لطفاً همهٔ نسخههای متعلق به این ویرایش را در آورید - قبل از نابود کردنش. + not_empty: بازویرایی خالی نیست. لطفاً پیش از نابود کردنش، همهٔ نسخههای متعلق + به این بازویرایی را از بازویراستگی درآورید. flash: ویرایش از بین رفت. - error: در حال از بین بردن این ویرایش خطایی رخ داد. + error: هنگام از بین بردن این بازویراسته خطایی رخ داد. ... diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 3aedef0a0..30782ba28 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -269,7 +269,7 @@ fi: user: Käyttäjä comment: Kommentti area: Alue - list: + index: title: Muutoskokoelmat title_user: Käyttäjän %{user} muutoskokoelmat title_friend: Kaverieni muutoskokoelmat @@ -295,7 +295,7 @@ fi: new: title: Uusi päiväkirjamerkintä publish_button: Julkaise - list: + index: title: Käyttäjien päiväkirjamerkinnät title_friends: Kaverien päiväkirjat title_nearby: Lähellä olevien käyttäjien päiväkirjat @@ -318,7 +318,7 @@ fi: use_map_link: valitse kartalta save_button: Tallenna marker_text: Päiväkirjamerkinnän sijainti - view: + show: title: Käyttäjän %{user} päiväkirja | %{title} user_title: Käyttäjän %{user} päiväkirja leave_a_comment: Kommentoi tätä kirjoitusta @@ -1200,11 +1200,12 @@ fi: commented_note: '%{commenter} on kommentoinut yhtä kommentoimaasi merkintää. Merkintä on lähellä paikkaa %{place}.' closed: - subject_own: '[OpenStreetMap] %{commenter} on selvittänyt yhden merkintäsi' - subject_other: '[OpenStreetMap] %{commenter} on selvittänyt sinua kiinnostavan - merkinnän' - your_note: '%{commenter} on selvittänyt yhden merkintäsi lähellä paikkaa %{place}' - commented_note: '%{commenter} on selvittänyt merkinnän, jota olet kommentoinut. + subject_own: '[OpenStreetMap] %{commenter} on ratkaissut karttailmoituksesi' + subject_other: '[OpenStreetMap] %{commenter} on ratkaissut sinua kiinnostavan + karttailmoituksen' + your_note: '%{commenter} on ratkaissut lähettämäsi karttailmoituksen lähellä + paikkaa %{place}.' + commented_note: '%{commenter} on ratkaissut karttailmoituksen, jota olet kommentoinut. Merkintä on lähellä paikkaa %{place}.' reopened: subject_own: '[OpenStreetMap] %{commenter} on avannut karttamerkintäsi uudelleen' @@ -1215,7 +1216,7 @@ fi: commented_note: '%{commenter} on aktivoinut karttailmoituksen uudelleen. Tämä viesti lähetetään siksi, että olet kommentoinut tätä karttailmoitusta, joka on lähellä paikkaa %{place}.' - details: Lisää tietoja merkinnästä löytyy osoitteesta %{url}. + details: Lisätietoja merkinnästä löytyy osoitteesta %{url}. changeset_comment_notification: hi: Hei %{to_user}, greeting: Hei, @@ -2086,7 +2087,7 @@ fi: heading: Käyttäjää %{user} ei ole olemassa body: Käyttäjää %{user} ei löytynyt. Tarkista oikeikirjoitus. deleted: poistettu - view: + show: my diary: Oma päiväkirja new diary entry: uusi päiväkirjamerkintä my edits: Omat muokkaukset @@ -2261,7 +2262,7 @@ fi: not_a_friend: '%{name} ei ole enää kaverisi.' filter: not_an_administrator: Tähän toimintoon tarvitaan ylläpitäjän oikeudet. - list: + index: title: Käyttäjät heading: Käyttäjät showing: diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 154682dd6..5c78de29e 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -294,7 +294,7 @@ fr: user: Utilisateur comment: Commentaire area: Zone - list: + index: title: Groupes de modifications title_user: Groupes de modifications par %{user} title_friend: Groupes de modifications par mes amis @@ -322,7 +322,7 @@ fr: new: title: Nouvelle entrée du journal publish_button: Publier - list: + index: title: Journaux des utilisateurs title_friends: Journaux des amis title_nearby: Journaux des utilisateurs à proximité @@ -345,7 +345,7 @@ fr: use_map_link: utiliser la carte save_button: Enregistrer marker_text: Emplacement de l’entrée du journal - view: + show: title: Journal de %{user} | %{title} user_title: Journal de %{user} leave_a_comment: Laisser un commentaire @@ -462,7 +462,7 @@ fr: courthouse: Palais de justice crematorium: Crématorium dentist: Dentiste - doctors: Docteurs + doctors: Cabinet médical drinking_water: Eau potable driving_school: École de conduite embassy: Ambassade @@ -2172,7 +2172,7 @@ fr: body: Désolé, il n’y a pas d’utilisateur avec le nom %{user}. Veuillez vérifier l’orthographe, ou le lien que vous avez cliqué n’est pas valide. deleted: supprimé - view: + show: my diary: Mon journal new diary entry: nouvelle entrée dans le journal my edits: Mes modifications @@ -2360,11 +2360,12 @@ fr: not_a_friend: '%{name} n’est pas parmi vos amis.' filter: not_an_administrator: Vous devez être administrateur pour effectuer cette action. - list: + index: title: Utilisateurs heading: Utilisateurs showing: - other: Page %{page} (%{first_item}one= sur %{items}) + one: Page %{page} (%{first_item} sur %{items}) + other: Page %{page} (%{first_item}-%{last_item} sur %{items}) summary: '%{name} créé depuis %{ip_address} le %{date}' summary_no_ip: '%{name} créé le %{date}' confirm: Confirmer les utilisateurs sélectionnés diff --git a/config/locales/fur.yml b/config/locales/fur.yml index efeee30ad..f5885e8dc 100644 --- a/config/locales/fur.yml +++ b/config/locales/fur.yml @@ -223,7 +223,7 @@ fur: user: Utent comment: Coment area: Aree - list: + index: title: Grups di cambiaments title_user: Grups di cambiaments di %{user} title_friend: Grups di cambiaments dai tiei amîs @@ -248,7 +248,7 @@ fur: diary_entry: new: title: Gnove vôs dal diari - list: + index: title: Diaris dai utents title_friends: Diaris dai amîs title_nearby: Diaris dai utents dongje @@ -271,7 +271,7 @@ fur: use_map_link: dopre mape save_button: Salve marker_text: Lûc de vôs dal diari - view: + show: title: Diari di %{user} | %{title} user_title: Diari di %{user} leave_a_comment: Lasse un coment @@ -1136,7 +1136,7 @@ fur: heading: L'utent %{user} nol esist body: Nol esist un utent di non %{user}. Controle par plasê la grafie o che tu vedis seguît il leam just. - view: + show: my diary: Il gno diari new diary entry: gnove vôs dal diari my edits: I miei cambiaments @@ -1287,7 +1287,7 @@ fur: button: Gjave dai amîs success: '%{name} al è stât gjavât dai tiei amîs.' not_a_friend: '%{name} nol è un dai tiei amîs.' - list: + index: title: Utents heading: Utents showing: diff --git a/config/locales/ga.yml b/config/locales/ga.yml index c1a76ffc3..d5471e60c 100644 --- a/config/locales/ga.yml +++ b/config/locales/ga.yml @@ -228,7 +228,7 @@ ga: user: Úsáideoir comment: Nóta tráchta area: Limistéar - list: + index: title: Tacair athruithe title_user: Tacair athruithe de chuid %{user} title_friend: Tacair athruithe de chuid mo chairde @@ -254,7 +254,7 @@ ga: new: title: Iontráil Nua Dialainne publish_button: Foilsigh - list: + index: title: Dialanna úsáideoirí title_friends: Dialanna cairde title_nearby: Dialann de chuid Úsáideoirí In Aice Láimhe @@ -277,7 +277,7 @@ ga: use_map_link: an léarscáil a úsáid save_button: Sábháil marker_text: Suíomh na hiontrála dialainne - view: + show: title: Dialann %{user} | %{title} user_title: Dialann %{user} leave_a_comment: Fág nóta tráchta @@ -1866,7 +1866,7 @@ ga: no_such_user: title: Níl an t-úsáideoir sin ann deleted: scriosta - view: + show: my diary: Mo Dhialann new diary entry: iontráil nua dialainne my edits: Mo Athruithe @@ -1971,7 +1971,7 @@ ga: button: Cuir leis mar chara success: Is cara leat %{name} anois! failed: Ár leithscéal, níorbh fhéidir %{name} a chur leis mar chara. - list: + index: title: Úsáideoirí heading: Úsáideoirí suspended: diff --git a/config/locales/gd.yml b/config/locales/gd.yml index 65670c15d..9cb1b7e34 100644 --- a/config/locales/gd.yml +++ b/config/locales/gd.yml @@ -244,7 +244,7 @@ gd: user: Cleachdaiche comment: Beachd area: Raon - list: + index: title: Seataichean atharraichean title_user: Seataichean atharraichean le %{user} title_friend: Seataichean atharraichean le do charaidean @@ -272,7 +272,7 @@ gd: new: title: Clàr ùr an leabhair-latha publish_button: Foillsich - list: + index: title: Leabhraichean-latha title_friends: Leabhraichean-latha do charaidean title_nearby: Leabhraichean-latha am fagas @@ -295,7 +295,7 @@ gd: use_map_link: cleachd mapa save_button: Sàbhail marker_text: Àite clàr an leabhair-latha - view: + show: title: An leabhar-latha aig %{user} | %{title} user_title: An leabhar-latha aig %{user} leave_a_comment: Thoir do bheachd @@ -1920,7 +1920,7 @@ gd: an litreachadh no 's dòcha nach eil an ceangal air an do rinn thu briogadh mar bu chòir. deleted: air a sguabadh às - view: + show: my diary: An leabhar-latha agam new diary entry: clàr leabhair-latha ùr my edits: Na dheasaich mi @@ -2102,7 +2102,7 @@ gd: not_a_friend: Chan eil càirdeas eadar thu fhèin agus %{name}. filter: not_an_administrator: Feumaidh tu bhith 'nad rianaire gus an gnìomh seo a dhèanamh. - list: + index: title: Cleachdaichean heading: Cleachdaichean showing: diff --git a/config/locales/gl.yml b/config/locales/gl.yml index 005817bca..cd2b55037 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -14,12 +14,15 @@ # Author: Vivaelcelta --- gl: + html: + dir: ltr time: formats: - friendly: '%e de %B de %Y ás %H:%M' + friendly: '%e de %B do %Y ás %H:%M' + blog: '%e %B %Y' activerecord: models: - acl: Lista de control de acceso + acl: Listaxe do control de acceso changeset: Conxunto de cambios changeset_tag: Etiqueta do conxunto de cambios country: País @@ -37,7 +40,7 @@ gl: old_relation_member: Membro da relación vella old_relation_tag: Etiqueta da relación vella old_way: Camiño vello - old_way_node: Nodo do camiño vello + old_way_node: Nó do camiño vello old_way_tag: Etiqueta do camiño vello relation: Relación relation_member: Membro da relación @@ -50,7 +53,7 @@ gl: user_preference: Preferencia do usuario user_token: Pase de usuario way: Camiño - way_node: Nodo do camiño + way_node: Nó do camiño way_tag: Etiqueta do camiño attributes: diary_comment: @@ -85,6 +88,9 @@ gl: description: Descrición languages: Linguas pass_crypt: Contrasinal + printable_name: + with_version: '%{id}, v%{version}' + with_name_html: '%{name} (%{id})' editor: default: Predeterminado (actualmente, %{name}) potlatch: @@ -115,7 +121,7 @@ gl: part_of: Parte de download_xml: Descargar en XML view_history: Ver o historial - view_details: Ver os detalles + view_details: Ve-los detalles location: 'Localización:' changeset: title: 'Conxunto de cambios: %{id}' @@ -127,18 +133,18 @@ gl: relation: Relacións (%{count}) relation_paginated: Relacións (%{x}-%{y} de %{count}) comment: Comentarios (%{count}) - hidden_commented_by: Comentario oculto de %{user} + hidden_commented_by: Comentario agochado de %{user} hai %{when} commented_by: Comentario de %{user} hai %{when} - changesetxml: Conxunto de cambios XML + changesetxml: Conxunto de cambios do XML osmchangexml: osmChange XML feed: title: Conxunto de cambios %{id} title_comment: Conxunto de cambios %{id} - %{comment} - join_discussion: Inicie sesión para unirse á discusión - discussion: Conversa - still_open: O conxunto de cambios permanece aberto - A conversa comeza cando - o conxunto de cambios está pechado. + join_discussion: Inicia-la sesión pra unirse á parola + discussion: Parola + still_open: O conxunto de cambios segue aberto - Abrirase a parola cando o conxunto + de cambios estea pechado. node: title: 'Nó: %{name}' history_title: 'Historial do nó: %{name}' @@ -154,6 +160,7 @@ gl: history_title: 'Historial da relación: %{name}' members: Membros relation_member: + entry: '%{type} %{name}' entry_role: '%{type} %{name} como %{role}' type: node: Nó @@ -221,7 +228,7 @@ gl: hidden_by: Agochado por %{user} hai %{when} report: Informar desta nota query: - title: Consultar as características + title: Consulta-las características introduction: Prema no mapa para atopar características preto de aquí. nearby: Características preto de aquí enclosing: Características envolventes @@ -233,43 +240,43 @@ gl: changeset: anonymous: Anónimo no_edits: (sen edicións) - view_changeset_details: Ollar os detalles do conxunto de cambios + view_changeset_details: Ve-los detalles do conxunto de cambios changesets: id: ID saved_at: Gardado o user: Usuario comment: Comentario area: Zona - list: + index: title: Conxuntos de cambios title_user: Conxuntos de cambios por %{user} title_friend: Conxuntos de cambios das amizades - title_nearby: Conxuntos de cambios dos usuarios de lugares próximos - empty: Non se atopou ningún conxunto de cambios. + title_nearby: Conxuntos de cambios dos usuarios de lugares preto de ti + empty: Non se atoparon conxuntos de cambios. empty_area: Non hai conxuntos de cambios nesta zona. - empty_user: Este usuario non ten ningún conxunto de cambios. - no_more: Non se atopou ningún outro conxunto de cambios. + empty_user: Non hai conxuntos de cambios deste usuario. + no_more: Non se atoparon máis conxuntos de cambios. no_more_area: Non hai máis conxuntos de cambios nesta zona. - no_more_user: Este usuario non ten ningún outro conxunto de cambios. + no_more_user: Non hai máis conxuntos de cambios deste usuario. load_more: Cargar máis timeout: - sorry: Sentímolo, a lista do conxunto de cambios solicitada tardou demasiado - tempo en ser recuperada. + sorry: Desculpe que levase moito tempo obter a listaxe do conxunto de cambios + que solicitou. rss: - title_all: Discusión do conxunto de cambios no OpenStreetMap - title_particular: 'Conversa do conxunto de cambios #%{changeset_id} de OpenStreetMap' - comment: 'Comentario novo sobre o conxunto de cambios #%{changeset_id} de %{author}' + title_all: Parola da edición no OpenStreetMap + title_particular: 'Parola da edición #%{changeset_id} no OpenStreetMap' + comment: 'Novo comentario sobre os cambios #%{changeset_id} de %{author}' commented_at_html: Actualizado hai %{when} commented_at_by_html: Actualizado hai %{when} por %{user} - full: Conversa completa + full: Parola completa diary_entry: new: title: Nova entrada no diario publish_button: Publicar - list: - title: Diarios de usuarios - title_friends: Diarios de amigos - title_nearby: Diarios de usuarios de lugares próximos + index: + title: Diarios dos usuarios + title_friends: Diarios das amizades + title_nearby: Diarios dos usuarios de lugares preto de ti user_title: Diario de %{user} in_language_title: Entradas de diario en %{language} new: Nova entrada no diario @@ -286,25 +293,25 @@ gl: location: 'Localización:' latitude: 'Latitude:' longitude: 'Lonxitude:' - use_map_link: usar o mapa + use_map_link: usa-lo mapa save_button: Gardar marker_text: Lugar da entrada do diario - view: + show: title: Diario de %{user} | %{title} user_title: Diario de %{user} leave_a_comment: Deixar un comentario login_to_leave_a_comment: '%{login_link} para deixar un comentario' - login: Iniciar sesión + login: Inicia-la sesión save_button: Gardar no_such_entry: title: Non hai tal entrada de diario - heading: 'Non hai ningunha entrada co id: %{id}' + heading: 'Non hai ningunha entrada co ID: %{id}' body: Non existe ningunha entrada no diario ou comentario co id %{id}. Comprobe a ortografía ou que a ligazón que seguiu estea ben. diary_entry: posted_by: Publicado por %{link_user} o %{created} en %{language_link} comment_link: Comentar nesta entrada - reply_link: Responder a esta entrada + reply_link: Respostar a esta entrada comment_count: one: '%{count} comentario' zero: Sen comentarios @@ -354,6 +361,7 @@ gl: Nominatim geonames_reverse: Resultados dende GeoNames search_osm_nominatim: + prefix_format: '%{name}' prefix: aerialway: cable_car: Teleférico @@ -389,7 +397,7 @@ gl: biergarten: Terraza boat_rental: Aluguer de botes brothel: Prostíbulo - bureau_de_change: Casa de cambio + bureau_de_change: Casa de troco bus_station: Estación de autobuses cafe: Cafetaría car_rental: Aluguer de automóbiles @@ -914,7 +922,7 @@ gl: mooring: Atraque rapids: Rápidos river: Río - stream: Arroio + stream: Regato wadi: Uadi waterfall: Fervenza weir: Vaira @@ -929,9 +937,9 @@ gl: level10: Fronteira do barrio description: title: - osm_nominatim: Localización desde OpenStreetMap + osm_nominatim: Localización dende o OpenStreetMap Nominatim - geonames: Localización desde GeoNames + geonames: Localización dende o GeoNames types: cities: Cidades towns: Municipios @@ -944,7 +952,7 @@ gl: title: Problemas select_status: Seleccionar estado select_type: Seleccionar tipo - select_last_updated_by: Seleccionar última actualización por + select_last_updated_by: Seleccionar a última actualización por reported_user: Usuario denunciado not_updated: Non Actualizados search: Procurar @@ -976,29 +984,29 @@ gl: one: 1 informe other: '%{count} informes' report_created_at: Primeira incidencia o %{datetime} - last_resolved_at: Resolto por última vez o %{datetime} - last_updated_at: Última actualización o %{datetime} por%{displayname} + last_resolved_at: Resolto por derradeira vez o %{datetime} + last_updated_at: Última actualización o %{datetime} por %{displayname} resolve: Resolver ignore: Ignorar reopen: Reabrir reports_of_this_issue: Informes deste erro read_reports: Ler informes new_reports: Informes novos - other_issues_against_this_user: Outro informe sobre deste usuario - no_other_issues: Non hai máis informes sobre deste usuario. + other_issues_against_this_user: Outro informe deste usuario + no_other_issues: Non hai máis informes deste usuario. comments_on_this_issue: Comentarios neste informe resolve: - resolved: O estado da incidencia pasou a "Resolta" + resolved: O estado da incidencia mudou a "Resolta" ignore: - ignored: O estado da incidencia pasou a "Ignorada" + ignored: O estado da incidencia mudou a "Ignorada" reopen: - reopened: O estado da incidencia pasou a "Aberta" + reopened: O estado da incidencia mudou a "Aberta" comments: created_at: O %{datetime} reassign_param: Reasignar o erro? reports: updated_at: O %{datetime} - reported_by_html: Clasificouse como %{category} por parte de %{user} + reported_by_html: Clasificouse coma %{category} por parte de %{user} helper: reportable_title: diary_comment: '%{entry_title}, comentario #%{comment_id}' @@ -1045,12 +1053,15 @@ gl: successful_report: O seu informe rexistrouse con éxito provide_details: Por favor, achegue os detalles que se lle solicitan. layouts: + project_name: + title: OpenStreetMap + h1: OpenStreetMap logo: alt_text: Logotipo do OpenStreetMap home: Ir á localización inicial - logout: Saír - log_in: Iniciar sesión - log_in_tooltip: Acceder ao sistema cunha conta existente + logout: Pecha-la sesión + log_in: Inicia-la sesión + log_in_tooltip: Inicia-la sesión cunha conta existente sign_up: Rexistrarse start_mapping: Comezar a cartografar sign_up_tooltip: Crear unha conta para editar @@ -1101,18 +1112,19 @@ gl: header: '%{from_user} comentou na entrada de diario no OpenStreetMap co asunto "%{subject}":' footer: Tamén pode ler o comentario en %{readurl}, comentar en %{commenturl} - ou responder en %{replyurl} + ou respostar en %{replyurl} message_notification: + subject_header: '[OpenStreetMap] %{subject}' hi: 'Ola %{to_user}:' header: '%{from_user} envioulle unha mensaxe a través do OpenStreetMap co asunto "%{subject}":' - footer_html: Tamén pode ler a mensaxe en %{readurl} e pode responder en %{replyurl} + footer_html: Tamén pode ler a mensaxe en %{readurl} e pode respostar en %{replyurl} friend_notification: hi: 'Ola %{to_user}:' - subject: '[OpenStreetMap] %{user} engadiuno como amigo' - had_added_you: '%{user} engadiuno como amigo en OpenStreetMap.' + subject: '[OpenStreetMap] %{user} engadiuno coma amizade' + had_added_you: '%{user} engadiuno coma amizade no OpenStreetMap.' see_their_profile: Pode ollar o seu perfil en %{userurl}. - befriend_them: Tamén pode engadilo como amigo en %{befriendurl}. + befriend_them: Tamén pode engadilo coma amizade no %{befriendurl}. gpx_notification: greeting: 'Ola:' your_gpx_file: Semella que o seu ficheiro GPX @@ -1124,6 +1136,7 @@ gl: failed_to_import: 'erro ao importar. Velaquí atópase o erro:' more_info_1: Máis información sobre os erros de importación GPX e como evitalos more_info_2: 'pódense atopar en:' + import_failures_url: https://wiki.openstreetmap.org/wiki/GPX_Import_Failures success: subject: '[OpenStreetMap] Importación GPX correcta' loaded_successfully: cargou correctamente %{trace_points} do máximo de %{possible_points} @@ -1132,7 +1145,7 @@ gl: subject: '[OpenStreetMap] Dámoslle a benvida ao OpenStreetMap' greeting: Boas! created: Alguén (probablemente vostede) acaba de crear unha conta en %{site_url}. - confirm: 'Antes de facer nada, cómpre confirmar que esta solicitude veu de vostede. + confirm: 'Antes de facer ren, cómpre confirmar que esta solicitude veu de vostede. Se é así, prema na ligazón inferior para confirma-la conta:' welcome: Despois de confirma-la súa conta, proporcionarémoslle algunha información adicional como axuda para comezar. @@ -1171,42 +1184,42 @@ gl: subject_own: '[OpenStreetMap] %{commenter} comentou nunha das súas notas' subject_other: '[OpenStreetMap] %{commenter} comentou nunha das notas nas que ten interese' - your_note: '%{commenter} deixou un comentario nunha das súas notas de mapa + your_note: '%{commenter} deixou un comentario nunha das súas notas do mapa preto de %{place}.' - commented_note: '%{commenter} deixou un comentario nunha das súas notas de + commented_note: '%{commenter} deixou un comentario nunha das súas notas do mapa nas que vostede comentou. A nota está preto de %{place}.' closed: subject_own: '[OpenStreetMap] %{commenter} resolveu unha das súas notas' subject_other: '[OpenStreetMap] %{commenter} resolveu unha das notas nas que ten interese' - your_note: '%{commenter} resolveu unha das súas notas de mapa preto de %{place}.' - commented_note: '%{commenter} resolveu unha das súas notas de mapa nas que + your_note: '%{commenter} resolveu unha das súas notas do mapa preto de %{place}.' + commented_note: '%{commenter} resolveu unha das súas notas do mapa nas que vostede comentou. A nota está preto de %{place}.' reopened: subject_own: '[OpenStreetMap] %{commenter} reactivou unha das súas notas' subject_other: '[OpenStreetMap] %{commenter} reactivou unha das notas nas que ten interese' - your_note: '%{commenter} reactivou unha das súas notas de mapa preto de %{place}.' - commented_note: '%{commenter} reactivou unha das súas notas de mapa nas que + your_note: '%{commenter} reactivou unha das súas notas do mapa preto de %{place}.' + commented_note: '%{commenter} reactivou unha das súas notas do mapa nas que vostede comentou. A nota está preto de %{place}.' details: Pode atopar máis detalles da nota en %{url}. changeset_comment_notification: hi: Ola %{to_user}, greeting: Ola, commented: - subject_own: '[OpenStreetMap] %{commenter} comentou nun dos teus conxuntos - de cambios' + subject_own: O %{commenter} de [OpenStreetMap] fixo un comentario nun dos + seus conxuntos de cambios subject_other: '[OpenStreetMap] %{commenter} comentou nun conxunto de cambios - no que vostede está interesado' + no que estás atinxido' your_changeset: '%{commenter} deixou un comentario nun dos seus conxuntos - de cambios creado o %{time}' + de cambios xerado o %{time}' commented_changeset: '%{commenter} deixou un comentario nun conxunto de cambios - de mapa que está seguindo, creado por %{changeset_author} o %{time}' + do mapa que está seguindo, xerado por %{changeset_author} o %{time}' partial_changeset_with_comment: co comentario '%{changeset_comment}' partial_changeset_without_comment: sen comentarios - details: Máis detalles sobre o conxunto de cambios poden atoparse en %{url}. + details: Pódense atopar máis detalles acerca do conxunto de cambios en %{url}. unsubscribe: Para darse de baixa das actualizacións deste conxunto de cambios, - visite %{url} e prema en "darse de baixa". + olle %{url} e prema en "darse de baixa". messages: inbox: title: Caixa de entrada @@ -1228,7 +1241,7 @@ gl: message_summary: unread_button: Marcar como non lido read_button: Marcar como lido - reply_button: Responder + reply_button: Respostar destroy_button: Borrar new: title: Enviar unha mensaxe @@ -1236,15 +1249,15 @@ gl: subject: Asunto body: Corpo send_button: Enviar - back_to_inbox: Volver á caixa de entrada + back_to_inbox: Voltar á caixa de entrada create: message_sent: Mensaxe enviada - limit_exceeded: Estivo enviando unha morea de mensaxes ultimamente. Agarde uns - intres antes de intentar enviar máis. + limit_exceeded: Estivo enviando unha morea de mensaxes recentemente. Agarde + uns intres denantes de tentar enviar máis. no_such_message: title: Non se atopou a mensaxe heading: Non se atopou a mensaxe - body: Non hai ningunha mensaxe con esa id. + body: Non hai ningunha mensaxe con esa ID. outbox: title: Caixa de saída my_inbox: A miña %{inbox_link} @@ -1258,19 +1271,19 @@ gl: date: Data no_sent_messages: Aínda non enviou ningunha mensaxe. Por que non se pon en contacto con algunhas das %{people_mapping_nearby_link}? - people_mapping_nearby: persoas próximas a vostede + people_mapping_nearby: persoas preto a vostede reply: - wrong_user: Accedeu ao sistema como "%{user}", pero a mensaxe que pediu responder - non lla enviou a ese usuario. Acceda co usuario correcto para redactar a resposta. + wrong_user: Accedeu ó sistema coma "%{user}", pero a mensaxe que pediu respostar + non lla enviou a ese usuario. Acceda co usuario correcto para redacta-la resposta. show: title: Ler a mensaxe from: De subject: Asunto date: Data - reply_button: Responder + reply_button: Respostar unread_button: Marcar como non lida destroy_button: Borrar - back: Volver + back: Voltar to: Para wrong_user: Accedeu ao sistema como "%{user}", pero a mensaxe que pediu ler non lla enviou a ese usuario ou el non lla enviou a vostede. Acceda co usuario @@ -1278,8 +1291,8 @@ gl: sent_message_summary: destroy_button: Borrar mark: - as_read: Mensaxe marcada como lida - as_unread: Mensaxe marcada como non lida + as_read: Mensaxe marcada coma lida + as_unread: Mensaxe marcada coma non lida destroy: destroyed: Mensaxe borrada site: @@ -1332,8 +1345,8 @@ gl: english_link: a orixinal en inglés native: title: Acerca desta páxina - text: Estás vendo a versión en inglés da páxina de dereitos de autor. Pode - volver á %{native_link} desta páxina ou pode deixar de ler sobre os dereitos + text: Estás ollando a versión en inglés da páxina de dereitos de autor. Pode + voltar á %{native_link} desta páxina ou pode deixar de ler sobre os dereitos de autor e %{mapping_link}. native_link: versión en galego mapping_link: comezar a contribuír @@ -1354,7 +1367,7 @@ gl: Os datos cartográficos dos cuadrantes dos nosos mapas e a nosa documentación atópanse baixo a licenza Creative Commons recoñecemento compartir igual 2.0 (CC BY-SA). - credit_title_html: Como acreditar o OpenStreetMap + credit_title_html: De que xeito acredita-lo OpenStreetMap credit_1_html: |- Pedímoslle que acredite o traballo así: “© dos contribuíntes do OpenStreetMap”. @@ -1369,18 +1382,18 @@ gl: poñendo o texto\n\"OpenStreetMap\" no enderezo completo), a opendatacommons.org e,\nse fose relevante, a creativecommons.org." credit_3_html: |- - Nun mapa electrónico explorable, o crédito debe aparecer na beira do mapa. + Nun mapa electrónico explorábel, o crédito debe aparecer na beira do mapa. Por exemplo: attribution_example: - alt: Exemplo de como recoñecer o OpenStreetMap nunha páxina web + alt: Exemplo de que xeito recoñece-lo OpenStreetMap nunha páxina web title: Exemplo de recoñecemento more_title_html: Máis información more_1_html: |- - Descubra máis sobre como empregar os nosos datos e como acreditarnos na páxina de licenza de OSMF. + Descobra máis sobre de que xeito emprega-los nosos datos e como acreditarnos na páxina de licenza do OSMF. more_2_html: |- - Malia que o OpenStreetMap é de datos abertos, non podemos proporcionar un - mapa API gratuíto aos desenvolvedores. + Malia que o OpenStreetMap é de datos abertos, non podemos fornecer un + mapa API de balde aos desenvolvedores. Vexa a política de uso da API, a política de uso de cuadrantes e a política de uso do Nominatim. @@ -1466,28 +1479,29 @@ gl: estea cargado e que a opción do control remoto estea activada edit: not_public: Non fixo que as súas edicións fosen públicas. - not_public_description: Non pode editar o mapa a menos que o faga. Pode establecer - as súas edicións como públicas desde a súa %{user_page}. + not_public_description: Non pode edita-lo mapa a menos que o faga. Pode establece-las + súas edicións coma públicas dende a súa %{user_page}. user_page_link: páxina de usuario - anon_edits_link_text: Descubra aquí o motivo. + anon_edits: (%{link}) + anon_edits_link_text: Descobra velaquí o motivo. flash_player_required: Precisa un reprodutor Flash para usar Potlatch, o editor Flash de OpenStreetMap. Pode descargar Flash do sitio Adobe.com. Tamén están dispoñíbeis outras opcións para editar OpenStreetMap. - potlatch_unsaved_changes: Ten cambios sen gardar. (Para gardar no Potlatch, - ten que desmarcar o camiño actual ou o punto, se está a editar no modo en - vivo, ou premer sobre o botón "Gardar".) + potlatch_unsaved_changes: Ten cambios sen gardar. (Para gardalos no Potlatch + ten que desmarcar o camiño actual ou o punto se está a editar no modo en vivo + ou premer sobre o botón "Gardar".) potlatch2_not_configured: O Potlatch 2 non está configurado; consulte https://wiki.openstreetmap.org/wiki/The_Rails_Port para obter máis información potlatch2_unsaved_changes: Ten cambios sen gardar. (Para gardar no Potlatch 2, prema en "Gardar".) - id_not_configured: iD non está configurado + id_not_configured: O iD non está configurado no_iframe_support: O seu navegador non soporta os iframes HTML, necesarios para esta característica. export: title: Exportar area_to_export: Zona a exportar - manually_select: Seleccionar manualmente outra zona + manually_select: Seleccionar de xeito manual outra zona format_to_export: Formato de exportación osm_xml_data: Datos XML do OpenStreetMap map_image: Imaxe do mapa (amosa unha capa normal) @@ -1496,8 +1510,8 @@ gl: export_details: Os datos do OpenStreetMap están licenciados baixo a licenza Open Data Commons Open Database License (ODbL). too_large: - advice: 'Se a exportación anterior falla, considere utilizar unha das fontes - listadas a continuación:' + advice: 'Se a exportación anterior falla, considere empregar unha das fontes + listadas deseguido:' body: 'Esta zona é grande de máis para ser exportada como datos XML do OpenStreetMap. Amplíe a zona ou escolla unha menor, ou utilice unha das seguintes fontes para as descargas masivas de datos:' @@ -1514,10 +1528,11 @@ gl: países e cidades seleccionados metro: title: Extraccións do Metro - description: Extraccións das maiores cidades do mundo e as súas zonas próximas + description: Extraccións das maiores cidades do mundo e as súas zonas máis + pretas other: title: Outras fontes - description: Fontes adicionais listadas no wiki do OpenStreetMap + description: Fontes adicionais listadas na wiki do OpenStreetMap options: Opcións format: Formato scale: Escala @@ -1533,7 +1548,7 @@ gl: fixthemap: title: Informar dun problema/Corrixir o mapa how_to_help: - title: Como axudar + title: De que xeito axudar join_the_community: title: Únase á comunidade explanation_html: |- @@ -1553,7 +1568,7 @@ gl: help: title: Obter axuda introduction: |- - O OpenStreetMap ten varios recursos para aprender sobre o proxecto, para formular e responder preguntas, + O OpenStreetMap ten varios recursos para aprender sobre o proxecto, para formular e respostar preguntas, así como para debater e documentar colaborativamente sobre temas de cartografía. welcome: url: /welcome @@ -1566,19 +1581,19 @@ gl: help: url: https://help.openstreetmap.org/ title: help.openstreetmap.org - description: Formule unha pregunta ou busque respostas no sitio de preguntas + description: Faga unha cuestión ou procure respostas no sitio de cuestións e respostas do OSM. mailing_lists: - title: Listas de correo - description: Pregunta ou conversa sobre temas interesantes nun amplo abano - de listas de correo temáticas ou rexionais. + title: Listaxes de correo + description: Pregunta ou parola sobre temas interesantes nun amplo abano de + listaxes de correo temáticas ou rexionais. forums: title: Foros - description: Preguntas e conversas para os que prefiren unha interface do - estilo carteleira de anuncios. + description: Preguntas e parolas pra os que prefiren unha interface do estilo + carteleira de anuncios. irc: title: IRC - description: Conversa interactiva en moitas linguaxes diferentes e sobre moitos + description: Parola interactiva en moitas linguaxes diferentes e sobre moitos temas. switch2osm: title: Migra a OSM @@ -1600,7 +1615,7 @@ gl: where_am_i: Onde está isto? where_am_i_title: Describa a localización actual empregando o motor de procuras submit_text: Ir - reverse_directions_text: Inverter as direccións + reverse_directions_text: Inverte-las direccións key: table: entry: @@ -1629,7 +1644,7 @@ gl: - Pista do aeroporto - vía de circulación do aeroporto apron: - - Terminal de aeroporto + - Terminal do aeroporto - terminal admin: Límite administrativo forest: Bosque @@ -1645,7 +1660,7 @@ gl: commercial: Zona comercial heathland: Breixeira lake: - - Lago + - Lagoa - encoro farm: Granxa brownfield: Sitio baldío @@ -1679,8 +1694,8 @@ gl: headings: Cabeceiras heading: Cabeceira subheading: Subcabeceira - unordered: Lista sen ordenar - ordered: Lista ordenada + unordered: Listaxe sen ordear + ordered: Listaxe ordeada first: Primeiro elemento second: Segundo elemento link: Ligazón @@ -1708,28 +1723,28 @@ gl: paragraph_1_html: O OpenStreetMap ten unha xerga propia. Velaquí hai unhas palabras clave que son de utilidade. editor_html: Un editor é un programa ou sitio web que pode - usar para editar o mapa. - node_html: Un nodo é un punto no mapa, como un restaurante + empregar para edita-lo mapa. + node_html: Un nó é un punto no mapa, coma un restaurante ou unha árbore. way_html: Un camiño é unha liña ou área, como unha estrada, - un arroio, un lago ou un edificio. - tag_html: Unha etiqueta é unha peza de datos sobre un nodo + un regato, unha lagoa ou un edificio. + tag_html: Unha etiqueta é unha peza de datos sobre un nó ou un camiño, como o nome dun restaurante ou o límite de velocidade dunha estrada. rules: title: Regras! paragraph_1_html: OpenStreetMap ten poucas regras formais, pero esperamos - que todos os participantes colaboraren e se comuniquen coa comunidade. Se - está considerando algunha actividade que non sexa a edición manual, lea - e siga as instrucións sobre org/wiki/Import/Guidelines'>importacións + que tódolos participantes contribúan e se comuniquen ca comunidade. Se estás + a estudar algunha actividade que non sexa a edición manual, le e segue as + instrucións sobre org/wiki/Import/Guidelines'>importacións e edicións automatizadas. questions: title: Ten algunha pregunta? paragraph_1_html: |- - O OpenStreetMap ten varios recursos para aprender sobre o proxecto, para formular e responder + O OpenStreetMap ten varios recursos para aprender sobre o proxecto, para formular e respostar preguntas, así como para debater e documentar colaborativamente sobre temas de cartografía. - Obteña axuda aquí. + Obteña axuda eiquí. start_mapping: Comezar a cartografar add_a_note: title: Non ten tempo para editar? Engada unha nota! @@ -1741,8 +1756,8 @@ gl: no botón de gardar e os outros contribuíntes comprobaranlo.' traces: visibility: - private: Privado (só compartido como anónimo; puntos desordenados) - public: Público (amosado na listaxe de pistas e como anónimo; puntos desordeados) + private: Privado (só compartido coma anónimo; puntos desordenados) + public: Público (amosado na listaxe de pistas e coma anónimo; puntos desordeados) trackable: Rastrexable (só compartido como anónimo; puntos ordenados coa data e hora) identifiable: Identificábel (amosado na listaxe de pistas e coma identificábel; @@ -1765,7 +1780,7 @@ gl: na base de datos. Isto adoita ocorrer nun período de tempo de media hora. Recibirá un correo electrónico cando remate. upload_failed: Desculpa, a subida GPX fallou. Avisouse a un administrador do - erro. Inténteo de novo. + erro. Ténteo de novo. traces_waiting: one: Ten %{count} pista á espera de ser cargada. Considere agardar a que remate antes de cargar máis para non bloquear a cola do resto de usuarios. @@ -1785,9 +1800,10 @@ gl: description: 'Descrición:' tags: 'Etiquetas:' tags_help: separadas por comas - save_button: Gardar os cambios + save_button: Garda-los cambios visibility: 'Visibilidade:' visibility_help: que significa isto? + visibility_help_url: https://wiki.openstreetmap.org/wiki/Visibility_of_GPS_traces update: updated: Ruta actualizada trace_optionals: @@ -1838,9 +1854,9 @@ gl: public_traces_from: Pistas GPS públicas de %{user} description: Explorar as pistas GPS cargadas recentemente tagged_with: ' etiquetadas con %{tags}' - empty_html: Aínda non hai nada por aquí. Cargue unha + empty_html: Aínda non hai ren por eiquí. Cargue unha nova pista ou obteña máis información sobre as pistas GPS na páxina - do wiki. + da wiki. upload_trace: Cargar unha pista see_all_traces: Ollar todas as pistas see_my_traces: Ollar as miñas pistas @@ -1877,7 +1893,7 @@ gl: blocked: O seu acceso á API foi bloqueado. Acceda ao sistema para atopar máis información na interface web. need_to_see_terms: O seu acceso á API está suspendido temporalmente. Acceda - ao sistema para ollar os termos do colaborador. Non ten que aceptalos, pero + ao sistema para ollar os termos do contribuínte. Non ten que aceptalos, pero debe coñecelos. oauth: authorize: @@ -1888,11 +1904,11 @@ gl: allow_to: 'Permitir á aplicación de cliente a:' allow_read_prefs: ler as súas preferencias de usuario. allow_write_prefs: modificar as súas preferencias de usuario. - allow_write_diary: crear entradas de diario, comentarios e facer amigos. + allow_write_diary: crear entradas de diario, comentarios e facer amizades. allow_write_api: modificar o mapa. allow_read_gpx: ler as súas pistas GPS privadas. allow_write_gpx: cargar pistas GPS. - allow_write_notes: modificar as notas. + allow_write_notes: modifica-las notas. grant_access: Permitir o acceso authorize_success: title: Aceptouse a solicitude de autorización @@ -1927,11 +1943,11 @@ gl: requests: 'Solicitar os seguintes permisos ao usuario:' allow_read_prefs: ler as súas preferencias de usuario. allow_write_prefs: modificar as súas preferencias de usuario. - allow_write_diary: crear entradas de diario, comentarios e facer amigos. + allow_write_diary: crear entradas de diario, comentarios e facer amizades. allow_write_api: modificar o mapa. allow_read_gpx: ler as súas pistas GPS privadas. allow_write_gpx: cargar pistas GPS. - allow_write_notes: modificar as notas. + allow_write_notes: modifica-las notas. index: title: Os meus datos OAuth my_tokens: As miñas aplicacións rexistradas @@ -1954,11 +1970,11 @@ gl: requests: 'Solicitar os seguintes permisos ao usuario:' allow_read_prefs: ler as súas preferencias de usuario. allow_write_prefs: modificar as súas preferencias de usuario. - allow_write_diary: crear entradas de diario, comentarios e facer amigos. + allow_write_diary: crear entradas de diario, comentarios e facer amizades. allow_write_api: modificar o mapa. allow_read_gpx: ler as súas pistas GPS privadas. allow_write_gpx: cargar pistas GPS. - allow_write_notes: modificar as notas. + allow_write_notes: modifica-las notas. not_found: sorry: Sentímolo, non se puido atopar este %{type}. create: @@ -1969,22 +1985,22 @@ gl: flash: Destruíu o rexistro da aplicación de cliente user: login: - title: Rexistro + title: Rexistrarse heading: Rexistro email or username: 'Enderezo de correo electrónico ou nome de usuario:' password: 'Contrasinal:' openid: '%{logo} OpenID:' remember: Lembrádeme lost password link: Perdeu o seu contrasinal? - login_button: Acceder ao sistema + login_button: Inicia-la sesión register now: Rexístrese agora with username: 'Xa ten unha conta no OpenStreetMap? Acceda ao sistema co seu nome de usuario e contrasinal:' - with external: 'O ben, utilice un servizo de terceiros para acceder:' + with external: 'Ou ben, empregue un servizo de terceiros para accederes:' new to osm: É novo no OpenStreetMap? to make changes: Para realizar as modificacións nos datos do OpenStreetMap, cómpre ter unha conta. - create account minute: Crear unha conta. Tan só leva un minuto. + create account minute: Crear unha conta. Tan só cústache un minuto. no account: Non está rexistrado? account not active: Sentímolo, a súa conta aínda non está activada.A diferenza doutros mapas, o OpenStreetMap está completamente creado por xente coma vostede, e calquera persoa é libre de corrixilo, actualizalo, descargalo e utilizalo.
Rexístrese para comezar a contribuír. Enviarémoslle un correo electrónico para confirmar a súa conta.
- license_agreement: Cando confirme a súa conta necesitará aceptar os termos - do colaborador. + license_agreement: Cando confirme a súa conta necesitará acepta-los termos + do contribuínte. email address: 'Enderezo de correo electrónico:' confirm email address: Confirma-lo enderezo de correo electrónico not displayed publicly: O seu enderezo IP non se amosa publicamente, vexa a @@ -2075,24 +2091,27 @@ gl: auth no password: Coa autenticación de terceiros non se precisa un contrasinal, aínda que hai algunhas ferramentas e servidores que aínda a solicitan. continue: Rexistrarse - terms accepted: Grazas por aceptar os novos termos do colaborador! - terms declined: Sentimos que decidise non aceptar os novos Termos do colaborador. + terms accepted: Grazas por acepta-los novos termos do contribuínte! + terms declined: Sentimos que decidise non acepta-los novos Termos do contribuínte. Para obter máis información, consulte esta páxina wiki. + terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined terms: - title: Termos do colaborador - heading: Termos do colaborador + title: Termos do contribuínte + heading: Termos do contribuínte read and accept: Por favor, lea o acordo seguinte e prema no botón "Aceptar" para confirmar que acepta os termos deste acordo para as súas contribucións anteriores e futuras. consider_pd: Ademais do acordo anterior, considero que as miñas contribucións están no dominio público consider_pd_why: que é isto? + consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain guidance: 'Información para axudar a entender estes termos: un resumo e algunhas traducións non oficiais' agree: Acepto + declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined decline: Rexeitar - you need to accept or decline: Lea e, a continuación, acepte ou rexeite os novos - Termos do colaborador para continuar. + you need to accept or decline: Lea e, deseguido, acepte ou rexeite os novos + Termos do contribuínte para proseguer. legale_select: 'Seleccione o seu país de residencia:' legale_names: france: Francia @@ -2104,12 +2123,12 @@ gl: body: Non existe ningún usuario co nome "%{user}". Comprobe a ortografía ou que a ligazón que seguiu estea ben. deleted: borrado - view: + show: my diary: O meu diario new diary entry: nova entrada no diario my edits: As miñas edicións my traces: As miñas pistas - my notes: As miñas notas de mapa + my notes: As miñas notas do mapa my messages: As miñas mensaxes my profile: O meu perfil my settings: Os meus axustes @@ -2121,12 +2140,12 @@ gl: diary: Diario edits: Edicións traces: Pistas - notes: Notas de mapa - remove as friend: Eliminar como amigo - add as friend: Engadir como amigo - mapper since: 'Cartógrafo desde:' + notes: Notas do mapa + remove as friend: Eliminar coma amizade + add as friend: Engadir coma amizade + mapper since: 'Cartógrafo dende:' ago: (hai %{time_in_words_ago}) - ct status: 'Termos do colaborador:' + ct status: 'Termos do contribuínte:' ct undecided: Indeciso ct declined: Rexeitou ct accepted: Aceptou hai %{ago} @@ -2138,14 +2157,14 @@ gl: description: Descrición user location: Localización do usuario if set location: Defina a súa localización na páxina de %{settings_link} para - ollar usuarios de lugares próximos. + ollar usuarios de lugares preto de ti. settings_link_text: axustes - my friends: Os meus amigos - no friends: Aínda non engadiu ningún amigo. + my friends: As miñas amizades + no friends: Aínda non engadiu ningunha amizade. km away: a %{count}km de distancia m away: a %{count}m de distancia - nearby users: Outros usuarios próximos - no nearby users: Aínda non hai usuarios que estean situados na súa proximidade. + nearby users: Outros usuarios preto de ti + no nearby users: Aínda non hai usuarios que estean situados preto de vostede. role: administrator: Este usuario é administrador moderator: Este usuario é moderador @@ -2163,18 +2182,18 @@ gl: deactivate_user: Desactivar este usuario confirm_user: Confirmar este usuario hide_user: Agochar este usuario - unhide_user: Descubrir este usuario + unhide_user: Descobrir este usuario delete_user: Borrar este usuario confirm: Confirmar - friends_changesets: conxuntos de cambios dos amigos - friends_diaries: entradas de diario dos amigos - nearby_changesets: conxuntos de cambios dos usuarios de lugares próximos - nearby_diaries: entradas de diario dos usuarios de lugares próximos + friends_changesets: conxuntos de cambios das amizades + friends_diaries: entradas de diario das amizades + nearby_changesets: conxuntos de cambios dos usuarios de lugares preto de ti + nearby_diaries: entradas de diario dos usuarios de lugares preto de ti report: Denunciar este usuario popup: your location: A súa localización - nearby mapper: Cartógrafo próximo - friend: Amigo + nearby mapper: Cartógrafo preto de ti + friend: Amizade account: title: Edita-la conta my settings: Os meus axustes @@ -2204,38 +2223,39 @@ gl: públicos.Axiña un administrador revisará esta decisión. - Quizais queira contactar co %{webmaster} para conversar sobre isto. + Se cadra queira contactar co %{webmaster} para parolar sobre isto.
auth_failure: connection_failed: Fallou a conexión ó proveedor de autenticación @@ -2351,52 +2371,51 @@ gl: non_moderator_revoke: Cómpre ser moderador para revogar un bloqueo. not_found: sorry: Non se puido atopar o bloqueo de usuario número %{id}. - back: Volver ao índice + back: Voltar ó índice new: title: Creando un bloqueo a %{name} heading: Creando un bloqueo a %{name} - reason: O motivo polo que bloquea a %{name}. Permaneza tranquilo e sexa razoable, - dando a maior cantidade de detalles sobre a situación e lembrando que a mensaxe - será visible publicamente. Teña presente que non todos os usuarios entenden - o argot da comunidade, de modo que intente utilizar termos comúns. + reason: O motivo polo que bloquea a %{name}. Fique calmo e sexa razoábel, dando + a maior cantidade de detalles sobre a situación e lembrando que a mensaxe + será visíbel publicamente. Teña presente que non tódolos usuarios entenden + o argot da comunidade, de modo que tente empregar termos comúns. period: Por canto tempo, a partir de agora, o usuario terá bloqueado o uso da API? submit: Crear un bloqueo tried_contacting: Púxenme en contacto co usuario e pedinlle que parase. - tried_waiting: Deille ao usuario tempo suficiente para responder ás mensaxes. + tried_waiting: Dálle ó usuario tempo suficiente para respostar ás mensaxes. needs_view: O usuario ten que acceder ao sistema antes de que o bloqueo sexa retirado - back: Ollar todos os bloqueos + back: Ollar tódolos bloqueos edit: title: Editando o bloqueo de %{name} heading: Editando o bloqueo de %{name} - reason: O motivo polo que bloquea a %{name}. Permaneza tranquilo e sexa razoable, - dando a maior cantidade de detalles sobre a situación. Teña presente que non - todos os usuarios entenden o argot da comunidade, de modo que intente utilizar - termos comúns. + reason: O motivo polo que bloquea a %{name}. Fique calmo e sexa razoábel, dando + a maior cantidade de detalles sobre a situación. Teña presente que non tódolos + usuarios entenden o argot da comunidade, de modo que tente empregar termos + comúns. period: Por canto tempo, a partir de agora, o usuario terá bloqueado o uso da API? - submit: Actualizar o bloqueo + submit: Actualiza-lo bloqueo show: Ollar este bloqueo - back: Ollar todos os bloqueos + back: Ollar tódolos bloqueos needs_view: O usuario ten que acceder ao sistema antes de que o bloqueo sexa retirado? filter: block_expired: O bloqueo xa caducou. Non se pode editar. block_period: O período de bloqueo debe elixirse de entre os valores presentes - na lista despregable. + na listaxe despregábel. create: - try_contacting: Intente poñerse en contacto co usuario antes de bloquealo. Déalle - un prazo de tempo razoable para que poida responder. - try_waiting: Intente dar ao usuario un prazo razoable para responder antes de - bloquealo. + try_contacting: Tente en poñerse en contacto co usuario antes de bloquealo. + Déalle un prazo de tempo razoábel para que poida respostar. + try_waiting: Tente dar ó usuario un prazo razoábel para respostar antes de bloquealo. flash: Bloqueo creado para o usuario %{name}. update: only_creator_can_edit: Só o moderador que creou o bloqueo pode editalo. success: Bloqueo actualizado. index: title: Bloqueos de usuario - heading: Lista de bloqueos de usuario + heading: Listaxe dos bloqueos de usuario empty: Aínda non se fixo ningún bloqueo. revoke: title: Revogando o bloqueo en %{block_on} @@ -2411,17 +2430,17 @@ gl: other: '%{count} horas' helper: time_future: Remata en %{time}. - until_login: Activo ata que o usuario inicie sesión. + until_login: Activo até que o usuario inicie sesión. time_future_and_until_login: Remata en %{time} e despois de que o usuario iniciou a sesión. time_past: Rematou hai %{time}. blocks_on: title: Bloqueos feitos a %{name} - heading: Lista dos bloqueos feitos a %{name} + heading: Listaxe dos bloqueos feitos a %{name} empty: '%{name} aínda non foi bloqueado.' blocks_by: title: Bloqueos feitos por %{name} - heading: Lista dos bloqueos feitos por %{name} + heading: Listaxe dos bloqueos feitos por %{name} empty: '%{name} aínda non efectuou ningún bloqueo.' show: title: '%{block_on} bloqueado por %{block_by}' @@ -2436,7 +2455,7 @@ gl: revoke: Revogar! confirm: Está seguro? reason: 'Motivo para o bloqueo:' - back: Ollar todos os bloqueos + back: Ollar tódolos bloqueos revoker: 'Autor da revogación:' needs_view: O usuario ten que acceder ao sistema antes de que o bloqueo sexa retirado. @@ -2458,15 +2477,15 @@ gl: comment: opened_at_html: Creado hai %{when} opened_at_by_html: Creado hai %{when} por %{user} - commented_at_html: Subido hai %{when} - commented_at_by_html: Cargado hai %{when} por %{user} + commented_at_html: Actualizado hai %{when} + commented_at_by_html: Actualizado hai %{when} por %{user} closed_at_html: Resolto hai %{when} closed_at_by_html: Resolto hai %{when} por %{user} reopened_at_html: Reactivado hai %{when} reopened_at_by_html: Reactivado hai %{when} por %{user} rss: title: Notas do OpenStreetMap - description_area: Unha lista das notas recibidas, comentadas ou pechadas na + description_area: Unha listaxe das notas recibidas, comentadas ou pechadas na súa zona [(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})] description_item: Unha fonte de novas RSS para a nota %{id} opened: nota nova (preto de %{place}) @@ -2507,7 +2526,7 @@ gl: center_marker: Centrar o mapa no marcador paste_html: Pegue o código HTML para incluílo na páxina web view_larger_map: Ver un mapa máis grande - only_standard_layer: Só a capa estándar pode exportarse como unha imaxe + only_standard_layer: Só a capa estándar pode exportarse coma unha imaxe embed: report_problem: Informar sobre un problema key: @@ -2522,43 +2541,43 @@ gl: title: Amosa-la miña localización popup: Está a {distance} {unit} deste punto base: - standard: Estándar + standard: Mapa estándar cycle_map: Mapa ciclista - transport_map: Mapa de transporte - hot: Humanitario + transport_map: Mapa do transporte + hot: Mapa humanitario layers: header: Capas do mapa - notes: Notas de mapa + notes: Notas do mapa data: Datos do mapa gps: Trazas GPS públicas - overlays: Activar a sobreposición para reparar o mapa + overlays: Activa-las sobreposicións para solucionares os problemas no mapa title: Capas copyright: © Contribuíntes do OpenStreetMap donate_link_text: Facer unha doazón site: edit_tooltip: Edita-lo mapa edit_disabled_tooltip: Achegue para edita-lo mapa - createnote_tooltip: Engadir unha nota ao mapa + createnote_tooltip: Engadir unha nota ó mapa createnote_disabled_tooltip: Achegar o mapa para engadirlle unha nota - map_notes_zoom_in_tooltip: Achegar para ver as notas do mapa + map_notes_zoom_in_tooltip: Achegar para veres as notas do mapa map_data_zoom_in_tooltip: Achegar para ver os datos do mapa - queryfeature_tooltip: Consultar as características + queryfeature_tooltip: Consulta-las características queryfeature_disabled_tooltip: Achegar para consulta-las características changesets: show: comment: Comentario subscribe: Subscribirse - unsubscribe: Cancelar a subscrición + unsubscribe: Cancela-la subscrición hide_comment: agochar unhide_comment: amosar notes: new: - intro: Atopou un erro ou descubriu que falta algún dato? Informe aos outros + intro: Atopou un erro ou descobriu que falla algún dato? Informe ós outros cartógrafos para que poidamos solucionalo. Mova o marcador á posición correcta - e escriba unha nota explicando o problema. - advice: A túa nota será pública e poderá utilizarse para actualizar o mapa, + e escriba unha nota expoñendo o problema. + advice: A túa nota será pública e poderá empregarse para actualiza-lo mapa, por conseguinte, non insiras información persoal, nin datos de mapas protexidos - por dereitos de autoría ou listas de directorios. + por dereitos de autoría ou listaxes de directorios. add: Engadir a nota show: anonymous_warning: Esta nota inclúe comentarios de usuarios anónimos que deben @@ -2664,7 +2683,7 @@ gl: tenth: 10.ª time: Tempo query: - node: Nodo + node: Nó way: Camiño relation: Relación nothing_found: Non se atoparon características @@ -2672,7 +2691,7 @@ gl: timeout: Tempo de espera esgotado ó contactar a %{server} context: directions_from: Indicacións dende aquí - directions_to: Indicacións ata aquí + directions_to: Indicacións até aquí add_note: Engadir unha nota aquí show_address: Amosar enderezo query_features: Consultar características @@ -2685,8 +2704,8 @@ gl: title: Edita-la redacción index: empty: Non hai ningunha redacción que amosar. - heading: Lista de redaccións - title: Lista de redaccións + heading: Listaxe das redaccións + title: Listaxe das redaccións new: description: Descrición heading: Escriba a información da nova redacción diff --git a/config/locales/he.yml b/config/locales/he.yml index 497e81700..025a97119 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -251,7 +251,7 @@ he: user: משתמש comment: הערה area: שטח - list: + index: title: ערכות שינויים title_user: ערכות שינויים של %{user} title_friend: ערכות שינויים של החברים שלי @@ -276,7 +276,7 @@ he: new: title: רשומת יומן חדשה publish_button: פרסום - list: + index: title: יומנים של המשתמש title_friends: יומנים של חברים title_nearby: יומנים של משתמשים בסביבה @@ -299,7 +299,7 @@ he: use_map_link: להשתמש במפה save_button: שמירה marker_text: מיקום רשומת היומן - view: + show: title: היומן של %{user} | %{title} user_title: היומן של %{user} leave_a_comment: הוספת תגובה @@ -1937,7 +1937,7 @@ he: heading: המשתמש %{user} אינו קיים body: סליחה, אין חשבון בשם %{user}. אולי האיות לא נכון ואולי לחצת על קישור שגוי. deleted: נמחק - view: + show: my diary: היומן שלי new diary entry: רשומה חדשה ביומן my edits: העריכות שלי @@ -2110,7 +2110,7 @@ he: not_a_friend: '%{name} לא אחד מהחברים שלך.' filter: not_an_administrator: צריך להיות מנהל כדי לבצע את הפעולה הזאת. - list: + index: title: משתמשים heading: משתמשים showing: diff --git a/config/locales/hr.yml b/config/locales/hr.yml index 03e79eca4..8cab0b004 100644 --- a/config/locales/hr.yml +++ b/config/locales/hr.yml @@ -238,7 +238,7 @@ hr: user: Korisnik comment: Komentar area: Područje - list: + index: title: Setovi promjena title_user: Setovi promjena od %{user} title_friend: Paketi uređivanja tvojih prijatelja @@ -264,7 +264,7 @@ hr: new: title: Novi zapis u dnevnik publish_button: Objavi - list: + index: title: Dnevnici korisnika title_friends: Dnevnici prijatelja title_nearby: Dnevnici obližnjih članova @@ -287,7 +287,7 @@ hr: use_map_link: koristi kartu save_button: Spremi marker_text: Lokacija unosa u dnevnik - view: + show: title: Blog korisnika %{user} | %{title} user_title: '%{user}ov dnevnik' leave_a_comment: Ostavi komentar @@ -1623,7 +1623,7 @@ hr: body: Žao mi je, ne postoji korisnik s imenom %{user}. Molim provjerite ukucano ili je link na koji ste kliknuli neispravan. deleted: obrisano - view: + show: my diary: Moj dnevnik new diary entry: novi unos u dnevnik my edits: Moje promjene @@ -1782,7 +1782,7 @@ hr: not_a_friend: '%{name} nije tvoj prijatelj.' filter: not_an_administrator: Morate biti administrator za izvođenje ovih akcija. - list: + index: title: Korisnici heading: Korisnici showing: diff --git a/config/locales/hsb.yml b/config/locales/hsb.yml index 75e7a7d47..c0d9ca3ab 100644 --- a/config/locales/hsb.yml +++ b/config/locales/hsb.yml @@ -232,7 +232,7 @@ hsb: user: Wužiwar comment: Komentar area: Wobłuk - list: + index: title: Sadźby změnow title_user: Sadźby změnow wot %{user} title_friend: Změny twojich přećelow @@ -257,7 +257,7 @@ hsb: new: title: Nowy dźenikowy zapisk publish_button: Wozjewić - list: + index: title: Dźeniki wužiwarjow title_friends: Dźeniki přećelow title_nearby: Dźeniki wužiwarjow w bliskosći @@ -280,7 +280,7 @@ hsb: use_map_link: kartu wužiwać save_button: Składować marker_text: Městno dźenikoweho zapiska - view: + show: title: Dźenik %{user} | %{title} user_title: dźenik wužiwarja %{user} leave_a_comment: Spisaj komentar @@ -1849,7 +1849,7 @@ hsb: body: Bohužel žadyn wužiwar z mjenom %{user} njeje. Prošu skontroluj prawopis, abo wotkaz, na kotryž sy kliknył, je njepłaćiwy. deleted: zhašany - view: + show: my diary: Mój dźenik new diary entry: nowy dźenikowy zapisk my edits: Moje změny @@ -2022,7 +2022,7 @@ hsb: not_a_friend: '%{name} twój přećel njeje.' filter: not_an_administrator: Dyrbiš administrator być, zo by tutu akciju wuwjedł. - list: + index: title: Wužiwarjo heading: Wužiwarjo showing: diff --git a/config/locales/hu.yml b/config/locales/hu.yml index b0d449f09..3799bfc84 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -250,7 +250,7 @@ hu: user: Felhasználó comment: Megjegyzés area: Terület - list: + index: title: Módosításcsomagok title_user: '%{user} módosításcsomagjai' title_friend: Ismerőseim módosításcsomagjai @@ -276,7 +276,7 @@ hu: new: title: Új naplóbejegyzés publish_button: Publikálás - list: + index: title: Felhasználók naplói title_friends: Ismerősök naplói title_nearby: Közeli felhasználók naplói @@ -299,7 +299,7 @@ hu: use_map_link: térkép használata save_button: Mentés marker_text: Naplóbejegyzés helye - view: + show: title: '%{user} naplója | %{title}' user_title: '%{user} naplója' leave_a_comment: Hozzászólás írása @@ -1966,7 +1966,7 @@ hu: body: Sajnálom, nincs %{user} nevű felhasználó. Ellenőrizd a helyességét, vagy lehet, hogy a link, amire kattintottál, rossz. deleted: törölve - view: + show: my diary: Naplóm new diary entry: új naplóbejegyzés my edits: Szerkesztéseim @@ -2147,7 +2147,7 @@ hu: filter: not_an_administrator: Ennek a műveletnek az elvégzéséhez adminisztrátori jogosultsággal kell rendelkezned. - list: + index: title: Felhasználók heading: Felhasználók showing: diff --git a/config/locales/ia.yml b/config/locales/ia.yml index 536f07727..f5188f1ea 100644 --- a/config/locales/ia.yml +++ b/config/locales/ia.yml @@ -237,7 +237,7 @@ ia: user: Usator comment: Commento area: Area - list: + index: title: Gruppos de modificationes title_user: Gruppos de modificationes per %{user} title_friend: Gruppos de modificationes facite per mi amicos @@ -265,7 +265,7 @@ ia: new: title: Nove entrata de diario publish_button: Publicar - list: + index: title: Diarios de usatores title_friends: Diarios de amicos title_nearby: Diarios de usatores vicin @@ -288,7 +288,7 @@ ia: use_map_link: usar carta save_button: Salveguardar marker_text: Loco de entrata de diario - view: + show: title: Diario de %{user} | %{title} user_title: Diario de %{user} leave_a_comment: Lassar un commento @@ -1900,7 +1900,7 @@ ia: body: Non existe un usator con le nomine %{user}. Per favor verifica le orthographia, o pote esser que le ligamine que tu sequeva es incorrecte. deleted: delite - view: + show: my diary: Mi diario new diary entry: nove entrata de diario my edits: Mi modificationes @@ -2078,7 +2078,7 @@ ia: not_a_friend: '%{name} non es un de tu amicos.' filter: not_an_administrator: Tu debe esser administrator pro executar iste action. - list: + index: title: Usatores heading: Usatores showing: diff --git a/config/locales/id.yml b/config/locales/id.yml index dfb7d0e20..69e9f896c 100644 --- a/config/locales/id.yml +++ b/config/locales/id.yml @@ -256,7 +256,7 @@ id: user: Pengguna comment: Komentar area: Area - list: + index: title: Set perubahan title_user: Set perubahan oleh %{user} title_friend: Set perubahan oleh teman saya @@ -282,7 +282,7 @@ id: new: title: Entri Baru Catatan Harian publish_button: Terbitkan - list: + index: title: Catatan harian pengguna title_friends: Catatan harian teman title_nearby: Catatan harian pengguna terdekat @@ -305,7 +305,7 @@ id: use_map_link: Gunakan peta save_button: Simpan marker_text: Lokasi entri catatan harian - view: + show: title: Catatan harian %{user} | %{title} user_title: Catatan harian %{user} leave_a_comment: Tinggalkan komentar @@ -1961,7 +1961,7 @@ id: body: Maaf, tidak ada pengguna dengan nama %{user}. Silahkan cek kembali ejaan, atau mungkin link yang Anda klik salah. deleted: dihapus - view: + show: my diary: Catatan Harian Saya new diary entry: Entri baru catatan harian my edits: Suntingan Saya @@ -2143,7 +2143,7 @@ id: filter: not_an_administrator: Anda harus merupakan administrator untuk melakukan tindakan ini. - list: + index: title: Pengguna heading: Pengguna showing: diff --git a/config/locales/is.yml b/config/locales/is.yml index 8ae6170cc..7f8920f2d 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -248,7 +248,7 @@ is: user: Notandi comment: Athugasemd area: Svæði - list: + index: title: Breytingasett title_user: Breytingar eftir %{user} title_friend: Breytingar eftir vini mína @@ -274,7 +274,7 @@ is: new: title: Ný bloggfærsla publish_button: Birta - list: + index: title: Blogg notenda title_friends: Blogg vina title_nearby: Blogg notenda í nágrenninu @@ -297,7 +297,7 @@ is: use_map_link: finna á korti save_button: Vista marker_text: Staðsetning bloggfærslu - view: + show: title: Blogg | %{user} user_title: Blogg %{user} leave_a_comment: Bæta við athugasemd @@ -2077,7 +2077,7 @@ is: body: Það er ekki til notandi með nafninu %{user}. Kannski slóstu nafnið rangt inn eða fylgdir ógildum tengli. deleted: eytt - view: + show: my diary: Bloggið mitt new diary entry: ný bloggfærsla my edits: Breytingarnar mínar @@ -2260,7 +2260,7 @@ is: not_a_friend: '%{name} er ekki vinur þinn.' filter: not_an_administrator: Þú þarft að vera möppudýr til að framkvæma þessa aðgerð. - list: + index: title: Notendur heading: Notendur showing: diff --git a/config/locales/it.yml b/config/locales/it.yml index 4ae80a274..478460809 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -273,7 +273,7 @@ it: user: Utente comment: Commento area: Area - list: + index: title: Gruppi di modifiche title_user: Gruppi di modifiche di %{user} title_friend: Gruppi di modifiche dei miei amici @@ -300,7 +300,7 @@ it: new: title: Nuova voce del diario publish_button: Pubblica - list: + index: title: Diari degli utenti title_friends: Diari degli amici title_nearby: Diari degli utenti nelle vicinanze @@ -323,7 +323,7 @@ it: use_map_link: utilizza mappa save_button: Salva marker_text: Luogo della voce del diario - view: + show: title: Diario di %{user} | %{title} user_title: Diario dell'utente %{user} leave_a_comment: Lascia un commento @@ -2132,7 +2132,7 @@ it: body: Spiacenti, non c'è alcun utente con il nome %{user}. Controllare la digitazione, o che il collegamento sul quale hai cliccato non sia errato. deleted: cancellato - view: + show: my diary: Il mio diario new diary entry: nuova voce del diario my edits: Mie modifiche @@ -2315,7 +2315,7 @@ it: filter: not_an_administrator: Bisogna essere amministratori per poter eseguire questa azione. - list: + index: title: Utenti heading: Utenti showing: diff --git a/config/locales/ja.yml b/config/locales/ja.yml index c846148e0..37da9173c 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -255,7 +255,7 @@ ja: user: 利用者 comment: コメント area: 領域 - list: + index: title: 変更セット title_user: '%{user} によるメモ' title_friend: 友達による変更セット @@ -280,7 +280,7 @@ ja: new: title: 日記エントリの新規作成 publish_button: 公開 - list: + index: title: 利用者さんの日記 title_friends: 友達の日記 title_nearby: 周辺の利用者の日記 @@ -303,7 +303,7 @@ ja: use_map_link: 地図を使用 save_button: 保存 marker_text: 日記のロケーション - view: + show: title: '%{user}さんの日記 | %{title}' user_title: '%{user}さんの日記' leave_a_comment: コメントを書いてください @@ -1809,7 +1809,7 @@ ja: heading: '%{user} という利用者は存在しません' body: 申し訳ありませんが、%{user} という名前の利用者は存在しません。スペルを確認してください。またはクリックしたリンクが間違っている可能性があります。 deleted: 削除済 - view: + show: my diary: 自分の日記 new diary entry: 新しい日記エントリ my edits: 自分の編集 @@ -1973,7 +1973,7 @@ ja: not_a_friend: '%{name} は友達ではありません。' filter: not_an_administrator: この作業を行うには、管理者になる必要があります。 - list: + index: title: 利用者 heading: ユーザー showing: diff --git a/config/locales/ka.yml b/config/locales/ka.yml index 42b1d8304..1f85fe55a 100644 --- a/config/locales/ka.yml +++ b/config/locales/ka.yml @@ -198,7 +198,7 @@ ka: user: მომხმარებელი comment: კომენტარი area: ტერიტორია - list: + index: title: ცვლილებების პაკეტი load_more: მეტის ჩატვირთვა rss: @@ -209,7 +209,7 @@ ka: new: title: დღიურში ახალი ჩანაწერის გაკეთება publish_button: გამოქვეყნება - list: + index: title: მომხმარებლების დღიურები title_friends: მეგობრების დღიურები title_nearby: მეზობელი მომხმარებლების დღიურები @@ -229,7 +229,7 @@ ka: longitude: 'გრძედი:' use_map_link: რუკაზე ჩვენება save_button: შენახვა - view: + show: title: '%{user}-ის დღიური | %{title}' user_title: '%{user}-ის დღიური' leave_a_comment: დატოვეთ კომენტარი @@ -1052,7 +1052,7 @@ ka: rest_of_world: დანარჩენი მსოფლიო no_such_user: heading: მომხმარებელი %{user} არ არსებობს - view: + show: my diary: ჩემი დღიური new diary entry: დღიურში ახალი ჩანაწერის გაკეთება my edits: ჩემი რედაქტირება @@ -1125,7 +1125,7 @@ ka: remove_friend: heading: წავშალო მეგობრებიდან %{user}? button: მეგობრებიდან წაშლა - list: + index: title: მომხმარებლები heading: მომხმარებლები suspended: diff --git a/config/locales/kab.yml b/config/locales/kab.yml index 115f9fb39..7cb76e292 100644 --- a/config/locales/kab.yml +++ b/config/locales/kab.yml @@ -241,7 +241,7 @@ kab: user: Aseqdac comment: Awennit area: Tamnaḍt - list: + index: title: Agraw n usnifel title_user: Igrawen n usnifel sɣur %{user} title_friend: Igrawen n usnifel n imdukal-ik @@ -267,7 +267,7 @@ kab: new: title: Anekcam amaynut n uɣmis publish_button: Suffeɣ-d - list: + index: title: Iɣmisen n useqdac title_friends: Iɣmisen n imdukal title_nearby: Iɣmisen n iseqdacen iqeṛben @@ -290,7 +290,7 @@ kab: use_map_link: seqdec takarḍa save_button: Sekles marker_text: Adig n unekcam n uɣmis - view: + show: title: Aɣmis n %{user} | %{title} user_title: Aɣmis n %{user} leave_a_comment: Eǧǧ-d awennit @@ -1227,7 +1227,7 @@ kab: no_such_user: title: Ulac aseqdac deleted: yettwakkes - view: + show: my diary: Aɣmis-iw new diary entry: anekcam amaynut n uɣmis my edits: Tiẓrigin-iw @@ -1353,7 +1353,7 @@ kab: not_a_friend: '%{name} ur yelli ara d amdakkel.' filter: not_an_administrator: Teriḍ ad tiliḍ d anedbal akken ad teggeḍ tigawt-agi. - list: + index: title: Iseqdacen heading: Iseqdacen showing: diff --git a/config/locales/km.yml b/config/locales/km.yml index 322b9d1d8..a50eac416 100644 --- a/config/locales/km.yml +++ b/config/locales/km.yml @@ -68,7 +68,7 @@ km: display_name: ឈ្មោះអេក្រង់ (Display name) description: បរិយាយ languages: ភាសា - pass_crypt: លេខសម្ងាត់ + pass_crypt: ពាក្យសម្ងាត់ browse: created: បានបង្កើត closed: បានបិទ @@ -78,6 +78,7 @@ km: deleted_by_html: បានលុបចោល %{time} មុន ដោយ %{user} edited_by_html: បានកែប្រែ %{time} មុន ដោយ %{user} closed_by_html: បានបិទ %{time} មុន ដោយ %{user} + version: កំណែ in_changeset: សំណុំបន្លាស់ប្ដូរ anonymous: អនាមិក no_comment: (គ្មានមតិយោបល់) @@ -95,11 +96,13 @@ km: way_paginated: ផ្លូវចំនួន (%{x}-%{y} ក្នុងចំណោម %{count}) relation: ទំនាក់ទំនងចំនួន (%{count}) relation_paginated: ទំនាក់ទំនងចំនួន (%{x}-%{y} ក្នុងចំណោម %{count}) + comment: មតិយោបល់ (%{count}) changesetxml: សំណុំបន្លាស់ប្ដូរ XML feed: title: សំណុំបន្លាស់ប្ដូរ %{id} - title_comment: សំនុំបំលាស់ប្តូរ %{id} - %{comment} + title_comment: សំណុំបន្លាស់ប្តូរ %{id} - %{comment} join_discussion: កត់ឈ្មោះចូលដើម្បីចូលរួមពិភាក្សា + discussion: ការពិភាក្សា node: title: ខ្នែង៖ %{name} history_title: ប្រវត្តិខ្នែង៖ %{name} @@ -166,7 +169,7 @@ km: user: អ្នកប្រើប្រាស់ comment: មតិយោបល់ area: តំបន់ - list: + index: title: សំណុំបន្លាស់ប្ដូរ title_user: សំនុំបំលាស់ប្តូរ ដោយ %{user} title_friend: សំណុំបន្លាស់ប្ដូរដោយមិត្តភក្ដិខ្ញុំ @@ -182,7 +185,7 @@ km: new: title: ប្រកាសកំណត់ហេតុថ្មី publish_button: បោះផ្សាយ - list: + index: title: កំណត់ហេតុរបស់អ្នកប្រើប្រាស់ title_friends: កំណត់ហេតុរបស់មិត្តភក្ដិ title_nearby: កំណត់ហេតុរបស់អ្នកប្រើប្រាស់នៅក្បែរៗ @@ -205,7 +208,7 @@ km: use_map_link: ប្រើផែនទី save_button: រក្សាទុក marker_text: ទីតាំងប្រកាសន៍កំណត់ហេតុ - view: + show: title: កំណត់ហេតុរបស់ %{user} | %{title} user_title: កំណត់ហេតុរបស់ %{user} leave_a_comment: បញ្ចេញមតិយោបល់ @@ -233,6 +236,10 @@ km: geonames: លទ្ធផលពី GeoNames search_osm_nominatim: prefix: + aerialway: + cable_car: ឡានយោង + chair_lift: កៅអីយោង + pylon: ប៉មខ្សែភ្លើង amenity: arts_centre: មជ្ឍមណ្ឌលសិល្បៈ atm: ATM @@ -370,6 +377,7 @@ km: motorway_link: ផ្លូវល្បឿនលឿន rest_area: កន្លែងសម្រាក road: ផ្លូវ + steps: ជណ្ដើរ stop: ផ្លាកសញ្ញាឈប់ street_lamp: ភ្លើងបំភ្លឺផ្លូវ traffic_signals: ភ្លើងសញ្ញាចរាចរណ៍ @@ -413,7 +421,9 @@ km: vineyard: ចំការទំពាំងបាយជូរ leisure: beach_resort: ឆ្នេរកំសាន្ត + bird_hide: ខ្ទមមើលបក្សី common: ដីរួម + firepit: ចង្ក្រាន fishing: តំបន់ស្ទូចត្រី fitness_centre: មណ្ឌលហាត់ប្រាណ fitness_station: ស្ថានីយ៍ហាត់ប្រាណ @@ -430,8 +440,23 @@ km: stadium: កីឡាដ្ឋាន swimming_pool: អាងហែលទឹក water_park: ឧទ្យានទឹក + man_made: + bridge: ស្ពាន + bunker_silo: ត្រង់សេ + chimney: បំពង់ផ្សែង + dyke: ទំនប់ + flagpole: បង្គោលទង់ជាតិ + kiln: ឡ + petroleum_well: អណ្ដូងប្រេង + wastewater_plant: ស្ថានីយ៍សម្អាតទឹក + water_tower: ប៉មទឹក + water_well: អណ្ដូង military: airfield: មូលដ្ឋានទ័ពអាកាស + bunker: ត្រង់សេ + "yes": មូលដ្ឋានយោធា + mountain_pass: + "yes": ផ្លូវភ្នំ natural: bay: ឆកសមុទ្រ beach: ឆ្នេរខ្សាច់ @@ -440,12 +465,14 @@ km: cliff: ជ្រោះ crater: មាត់ភ្នំភ្លើង dune: ភ្នំខ្សាច់ + forest: ព្រៃ hill: កូនភ្នំ island: កោះ land: ដី mud: ភក់ peak: កំពូល point: ចំនុច + spring: ទឹកផុស strait: ដៃសមុទ្រ tree: ដើមឈើ valley: ជ្រលងភ្នំ @@ -465,7 +492,7 @@ km: insurance: ការិយាល័យធានារ៉ាប់រង it: ការិយាល័យព័តមានវិទ្យា lawyer: មេធាវី - ngo: ការិយាល័យ NGO + ngo: ការិយាល័យអង្គការ telecommunication: ការិយាល័យទូរគមនាគមន៍ travel_agent: ភ្នាក់ងារទេសចរណ៍ "yes": ការិយាល័យ @@ -529,18 +556,42 @@ km: gallery: វិចិត្រសាល gift: ហាងវត្ថុអនុស្សាវរីយ៍ greengrocer: ហាងបន្លែនិងផ្លែឈើ + grocery: ហាងចំណីអាហារ hairdresser: ហាងកាត់សក់និងអ៊ុតសក់ jewelry: ហាងលក់គ្រឿងអល័ង្ការ laundry: ហាងបោកអ៊ុត + market: ផ្សារ massage: ហាងម៉ាស្សា mobile_phone: ហាងទូរស័ព្ទ motorcycle: ហាងទោចក្រយានយន្ត music: ហាងតន្ត្រី newsagent: ហាងកាសែត optician: ហាងវ៉ែនតា + pawnbroker: ហាងបញ្ចាំ + pet: ហាងសត្វចិញ្ចឹម + pharmacy: ឱសថស្ថាន + photo: ហាងថតរូប + seafood: ហាងគ្រឿងសមុទ្រ + second_hand: ហាងជជុះ + shoes: ហាងស្បែកជើង + sports: ហាងសម្ភារៈកីឡា + stationery: បណ្ណាគារ + supermarket: ផ្សារទំនើប + tailor: ហាងកាត់ដេរ + ticket: ហាងសំបុត្រ + tobacco: ហាងបារី + travel_agency: ភ្នាក់ងារទេសចរណ៍ + tyres: ហាងកង់ឡាន tourism: camp_site: កន្លែងបោះតង់ caravan_site: កន្លែងចតឡានបោះតង់ + guest_house: ផ្ទះសំណាក់ + hostel: ផ្ទះសំណាក់ + hotel: សណ្ឋាគារ + museum: សារមន្ទីរ + zoo: សួនសត្វ + waterway: + canal: ព្រែកជីក description: types: cities: ក្រុង @@ -750,7 +801,7 @@ km: france: ប្រទេសបារាំង italy: ប្រទេសអ៊ីតាលី rest_of_world: ប្រទេសផ្សេងទៀត - view: + show: my edits: កំណែប្រែរបស់ខ្ញុំ edits: កំណែប្រែ remove as friend: ដកចេញជាមិត្ត diff --git a/config/locales/kn.yml b/config/locales/kn.yml index 49d9ad74e..7518a5666 100644 --- a/config/locales/kn.yml +++ b/config/locales/kn.yml @@ -190,7 +190,7 @@ kn: user: ಬಳಕೆದಾರ comment: ಟಿಪ್ಪಣಿ area: ಪ್ರದೇಶ - list: + index: title: ಬದಲಾವಣೆಗಳು title_user: ' %{user}ಅವರಿಂದಾದ ಬದಲಾವಣೆಗಳು' title_friend: ನಿಮ್ಮ ಗೆಳೆಯರಿಂದಾದ ಬದಲಾವಣೆಗಳು @@ -215,7 +215,7 @@ kn: new: title: ದಿನಚರಿಯಲ್ಲಿ ಹೊಸದಾದ ದಾಖಲೆ publish_button: ಪ್ರಕಟಿಸು - list: + index: title: ಬಳಕೆದಾರರ ದಿನಚರಿ title_friends: ಗೆಳೆಯರ ದಿನಚರಿ title_nearby: ಹತ್ತಿರದ ಬಳಕೆದಾರರ ದಿನಚರಿ @@ -238,7 +238,7 @@ kn: use_map_link: ನಕ್ಷೆ ಬಳಸು save_button: ಉಳಿಸಿ marker_text: ದಿನಚರಿ ದಾಖಲೆಯ ಸ್ಥಳ - view: + show: title: '%{user}ಅವರ ದಿನಚರಿ | %{title}' user_title: '%{user}ಅವರ ದಿನಚರಿ' leave_a_comment: ಟಿಪ್ಪಣಿ ನೀಡಿರಿ diff --git a/config/locales/ko.yml b/config/locales/ko.yml index 0ec9e946d..9cf339afe 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -255,7 +255,7 @@ ko: user: 사용자 comment: 댓글 area: 구역 - list: + index: title: 바뀜집합 title_user: '%{user}님의 바뀜집합' title_friend: 내 친구의 바뀜집합 @@ -280,7 +280,7 @@ ko: new: title: 새 일기 항목 publish_button: 발행 - list: + index: title: 사용자의 일기 title_friends: 친구의 일기 title_nearby: 근처 사용자의 일기 @@ -303,7 +303,7 @@ ko: use_map_link: 지도 사용 save_button: 저장 marker_text: 일기 항목 위치 - view: + show: title: '%{user}의 일기 | %{title}' user_title: '%{user}의 일기' leave_a_comment: 댓글 남기기 @@ -2014,7 +2014,7 @@ ko: heading: '%{user} 사용자는 존재하지 않습니다' body: 죄송합니다, %{user} 이름으로 된 사용자가 없습니다. 맞춤법이나 클릭한 링크가 잘못됐는지 확인하세요. deleted: 삭제됨 - view: + show: my diary: 내 일기 new diary entry: 새 일기 항목 my edits: 내 편집 @@ -2179,7 +2179,7 @@ ko: not_a_friend: '%{name}님은 친구 중 하나가 아닙니다.' filter: not_an_administrator: 해당 동작을 수행하려면 관리자 권한이 필요합니다. - list: + index: title: 사용자 heading: 사용자 showing: diff --git a/config/locales/ku-Latn.yml b/config/locales/ku-Latn.yml index b2fa55baf..d0086608a 100644 --- a/config/locales/ku-Latn.yml +++ b/config/locales/ku-Latn.yml @@ -248,7 +248,7 @@ ku-Latn: user: Bikarhêner comment: Şîrove area: Herêm - list: + index: title: Desteya guhertinan title_user: Desteyên guhertinan yên ji alî %{user} ve title_friend: Desteyên guhertinan yên ji aliyê hevalên te ve @@ -275,7 +275,7 @@ ku-Latn: new: title: Nivîsa nû yê rojane publish_button: Biweșîne - list: + index: title: Rojnivîskên bikarhêneran title_friends: Rojnivîskên hevalan title_nearby: Rojnivîskên Bikarhênerên nêzîk @@ -298,7 +298,7 @@ ku-Latn: use_map_link: nexşeyê bikarbîne save_button: Tomar bike marker_text: Cihê nivîsên rojane - view: + show: title: Rojnivîska %{user} | %{title} user_title: Nivîsên rojane yên %{user} leave_a_comment: Şiroveyeke binivîse @@ -2109,7 +2109,7 @@ ku-Latn: body: Bibore, bikarhênerek bi navê %{user} tine. Xêra xwe kontrol bike ka te rast nivîsandiye an na. Yan jî dibe ku lînkê te tikandiye nerast be. deleted: hate jêbirin - view: + show: my diary: Rojnivîska min new diary entry: nivîsa nû yê rojane my edits: Guhertinên min @@ -2293,7 +2293,7 @@ ku-Latn: not_a_friend: '%{name} ne hevalê te ye.' filter: not_an_administrator: Ji bo ku tu vê kiryarê bikî divê tu bibî rêvebirek. - list: + index: title: Bikarhêner heading: Bikarhêner showing: diff --git a/config/locales/lb.yml b/config/locales/lb.yml index e0c076040..7d03808d1 100644 --- a/config/locales/lb.yml +++ b/config/locales/lb.yml @@ -183,7 +183,7 @@ lb: user: Benotzer comment: Bemierkung area: Beräich - list: + index: title: Sette vun Ännerungen title_user: Sete vun Ännerunge vum %{user} title_friend: Ännerunge vun Äre Frënn @@ -202,7 +202,7 @@ lb: diary_entry: new: publish_button: Verëffentlechen - list: + index: title: Blogge vun de Benotzer user_title: Blog vum %{user} edit: @@ -213,7 +213,7 @@ lb: longitude: 'Längtegrad:' use_map_link: Kaart benotzen save_button: Späicheren - view: + show: leave_a_comment: Eng Bemierkung maachen login_to_leave_a_comment: '%{login_link} fir eng Bemierkung ze schreiwen' login: Aloggen @@ -1091,7 +1091,7 @@ lb: title: Sou e Benotzer gëtt et net heading: De Benotzer %{user} gëtt et net deleted: geläscht - view: + show: my diary: Mäi Blog my edits: Meng Ännerungen my notes: Meng Notizen @@ -1200,7 +1200,7 @@ lb: filter: not_an_administrator: Dir musst Administrateur si fir déi Aktioun maachen ze kënnen. - list: + index: title: Benotzer heading: Benotzer confirm: Erausgesicht Benotzer confirméieren diff --git a/config/locales/lt.yml b/config/locales/lt.yml index 7de89f947..db9ba951b 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -247,7 +247,7 @@ lt: user: Naudotojas comment: Komentaras area: Plotas - list: + index: title: Pakeitimai title_user: Naudotojo %{user} pakeitimai title_friend: Mano draugų pakeitimai @@ -272,7 +272,7 @@ lt: new: title: Naujas dienoraščio įrašas publish_button: Publikuoti - list: + index: title: Naudotojo dienoraščiai title_friends: Draugų dienoraščiai title_nearby: Netoliese esančių naudotojų dienoraščiai @@ -295,7 +295,7 @@ lt: use_map_link: naudoti žemėlapį save_button: Įrašyti marker_text: Dienoraščio įrašo pozicija - view: + show: title: '%{user} dienoraštis | %{title}' user_title: '%{user} dienoraštis' leave_a_comment: Palikti komentarą @@ -1921,7 +1921,7 @@ lt: body: Atsiprašome, bet čia nėra jokio naudotojo vardu „%{user}“. Pasitikrinkite rašybą, arba nuoroda, kurią jūs paspaudėte yra klaidinga. deleted: ištrinta - view: + show: my diary: Mano dienoraštis new diary entry: naujas dienoraščio įrašas my edits: Mano keitimai @@ -2101,7 +2101,7 @@ lt: not_a_friend: '%{name} nėra jūsų draugas.' filter: not_an_administrator: Norėdami atlikti šį veiksmą, turite būti administratoriumi. - list: + index: title: Naudotojai heading: Naudotojai showing: diff --git a/config/locales/lv.yml b/config/locales/lv.yml index 6f9daeafa..c0971803b 100644 --- a/config/locales/lv.yml +++ b/config/locales/lv.yml @@ -242,7 +242,7 @@ lv: user: Lietotājs comment: Komentārs area: Apgabals - list: + index: title: Izmaiņu kopas title_user: Lietotāja %{user} izmaiņu kopas title_friend: Tavu draugu izmaiņu kopas @@ -268,7 +268,7 @@ lv: new: title: Jauns dienasgrāmatas ieraksts publish_button: Publicēt - list: + index: title: Lietotāju dienasgrāmatas title_friends: Draugu dienasgrāmatas title_nearby: Tuvumā esošu lietotāju dienasgrāmatas @@ -291,7 +291,7 @@ lv: use_map_link: izmantot karti save_button: Saglabāt marker_text: Dienasgrāmatas ieraksta atrašanās vieta - view: + show: title: '%{user} dienasgrāmata | %{title}' user_title: '%{user} dienasgrāmata' leave_a_comment: Ierakstīt komentāru @@ -1897,7 +1897,7 @@ lv: body: Atvaino, nav lietotāja ar lietotājvārdu %{user}. Lūdzu pārbaudi pareizrakstību, vai varbūt saite, uz kuras Tu uzspiedi, ir nepareiza. deleted: dzēsts - view: + show: my diary: Mana dienasgrāmata new diary entry: jauns dienasgrāmatas ieraksts my edits: Mani labojumi @@ -2072,7 +2072,7 @@ lv: not_a_friend: '%{name} nav no jūsu draugs.' filter: not_an_administrator: Jums jābūt administratoram, lai veiktu šo darbību. - list: + index: title: Lietotāji heading: Lietotāji showing: diff --git a/config/locales/mk.yml b/config/locales/mk.yml index a8cce1020..b5e19b23e 100644 --- a/config/locales/mk.yml +++ b/config/locales/mk.yml @@ -236,7 +236,7 @@ mk: user: Корисник comment: Коментар area: Површина - list: + index: title: Измени title_user: Измени на %{user} title_friend: Измени на мои пријатели @@ -262,7 +262,7 @@ mk: new: title: Нова дневничка ставка publish_button: Објави - list: + index: title: Дневници на корисници title_friends: Дневници на пријателите title_nearby: Дневници на соседните корисници @@ -285,7 +285,7 @@ mk: use_map_link: покажи на карта save_button: Зачувај marker_text: Место на дневничкиот запис - view: + show: title: Дневникот на %{user} | %{title} user_title: дневник на %{user} leave_a_comment: Пиши коментар @@ -2089,7 +2089,7 @@ mk: body: Жалиме, но не постои корисник по име %{user}. Проверете да не сте згрешиле во пишувањето, или пак да не сте стиснале на погрешна врска. deleted: избришан - view: + show: my diary: Мојот дневник new diary entry: нова ставка во дневникот my edits: Мои уредувања @@ -2270,7 +2270,7 @@ mk: not_a_friend: '%{name} не е меѓу вашите пријатели.' filter: not_an_administrator: За да го изведете тоа, треба да сте администратор. - list: + index: title: Корисници heading: Корисници showing: diff --git a/config/locales/mo.yml b/config/locales/mo.yml index 0c5dedeb5..19e4ab821 100644 --- a/config/locales/mo.yml +++ b/config/locales/mo.yml @@ -174,7 +174,7 @@ mo: location: 'Ситуаре:' latitude: 'Латитудине:' longitude: 'Лонӂитудине:' - view: + show: login: Ынтраря ын конт diary_entry: confirm: Конфирмаре @@ -629,4 +629,13 @@ mo: heading: Аць уйтат парола? email address: 'Адреса де поштэ електроникэ:' new password button: Рестабилиря паролей + show: + my diary: Журналул меу + my messages: Месажеле меле + my profile: Профилул меу + my settings: Реглажеле меле + my comments: Коментарииле меле + my friends: Приетений мей + account: + my settings: Реглажеле меле ... diff --git a/config/locales/mr.yml b/config/locales/mr.yml index 717fa5fa8..c99724070 100644 --- a/config/locales/mr.yml +++ b/config/locales/mr.yml @@ -222,7 +222,7 @@ mr: user: सदस्य comment: अभिप्राय area: क्षेत्र - list: + index: title: बदलसंच title_user: '%{user}चे बदलसंच' title_friend: आपल्या मित्रांचे बदलसंच @@ -239,7 +239,7 @@ mr: diary_entry: new: title: अनुदिनीत नवी नोंद - list: + index: title: सदस्यांच्या अनुदिनी title_friends: मित्रांच्या अनुदिनी title_nearby: जवळपासच्या सदस्यांच्या अनुदिनी @@ -262,7 +262,7 @@ mr: use_map_link: नकाशा वापरा save_button: जतन करा marker_text: रोजनिशीतील नोंदीचे ठिकाण - view: + show: title: '%{user}ची रोजनिशी | %{title}' user_title: '%{user}ची रोजनिशी' leave_a_comment: टिप्पणी टाका @@ -1281,7 +1281,7 @@ mr: heading: सदस्य %{user} अस्तित्वात नाही body: क्षमा असावी, %{user} नामक सदस्य अस्तित्वात नाही. कृपया आपले वर्णलेखन तपासा, किंवा कदाचित आपण चुकीच्या दुव्यावर टिचकी दिली असेल. - view: + show: my diary: माझी अनुदिनी new diary entry: अनुदिनीत नवी नोंद my edits: माझी संपादने @@ -1356,7 +1356,7 @@ mr: टिचकी मारा. confirm_resend: failure: सदस्य %{name} सापडला नाही. - list: + index: title: सदस्य heading: सदस्य showing: diff --git a/config/locales/ms.yml b/config/locales/ms.yml index bfea9fd51..e00afc072 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -235,7 +235,7 @@ ms: user: Pengguna comment: Komen area: Kawasan - list: + index: title: Set Ubah title_user: Set Ubah oleh %{user} title_friend: Set ubah oleh kawan anda @@ -256,7 +256,7 @@ ms: new: title: Catatan Diari Baru publish_button: Terbitkan - list: + index: title: Diari pengguna title_friends: Diari kawan title_nearby: Diari pengguna berdekatan @@ -279,7 +279,7 @@ ms: use_map_link: gunakan peta save_button: Simpan marker_text: Lokasi catatan diari - view: + show: title: Diari %{user} | %{title} user_title: Diari %{user} leave_a_comment: Tinggalkan komen @@ -1795,7 +1795,7 @@ ms: heading: Pengguna %{user} tidak wujud body: Maaf, tiada pengguna dengan nama %{user}. Sila semak ejaan anda, atau mungkin pautan yang anda klik itu tidak betul. - view: + show: my diary: Diari Saya new diary entry: catatan diari baru my edits: Suntingan Saya @@ -1973,7 +1973,7 @@ ms: filter: not_an_administrator: Anda perlu menjadi pentadbir untuk melakukan tindakan itu. - list: + index: title: Pengguna heading: Pengguna showing: diff --git a/config/locales/nb.yml b/config/locales/nb.yml index dcad73ffa..98cc2f317 100644 --- a/config/locales/nb.yml +++ b/config/locales/nb.yml @@ -16,6 +16,7 @@ # Author: Laaknor # Author: Macofe # Author: MarkusHD +# Author: Mathias-S # Author: Nemo bis # Author: Nghtwlkr # Author: Oyvind @@ -253,7 +254,7 @@ nb: user: Bruker comment: Kommentar area: Område - list: + index: title: Endringssett title_user: Endringssett av %{user} title_friend: Endringssett fra mine venner @@ -278,7 +279,7 @@ nb: new: title: Ny dagbokoppføring publish_button: Publiser - list: + index: title: Brukernes dagbøker title_friends: Dagbøkene til vennene dine title_nearby: Dagbøkene til nærliggende brukere @@ -301,7 +302,7 @@ nb: use_map_link: bruk kart save_button: Lagre marker_text: Lokalisasjonen for dagbokoppføring - view: + show: title: '%{user} sin dagbok | %{title}' user_title: Dagboken til %{user} leave_a_comment: Legg igjen en kommentar @@ -1026,6 +1027,32 @@ nb: not_just_mistake: Du er sikker på at problemet ikke er basert på en misforståelse unable_to_fix: Du er ikke i stand til å fikse problemet selv eller med hjelp fra dine kolleger + resolve_with_user: Du har allerede prøvd å løse problemet med berørt bruker + categories: + diary_entry: + spam_label: Dette dagbokinnlegget er/inneholder spam + offensive_label: Dette dagbokinnlegget er uanstendig + threat_label: Dette dagbokinnlegget inneholder en trussel + other_label: Annet + diary_comment: + spam_label: Denne dagbokkommentaren er/inneholder spam + offensive_label: Denne dagbokkommentaren er uanstendig + threat_label: Denne dagbokkommenataren inneholder en trussel + other_label: Annet + user: + spam_label: Denne brukerprofilen er/inneholder spam + offensive_label: Denne brukerprofilen er uanstendig + threat_label: Denne brukerprofilen inneholder en trussel + vandal_label: Denne brukeren er en vandal + other_label: Annet + note: + spam_label: Dette notatet er spam + personal_label: Dette notatet inneholder personlige data + abusive_label: Dette notatet er krenkende + other_label: Annet + create: + successful_report: Din rapport har blitt vellykket registrert + provide_details: Vær vennlig å angi de påkrevde detaljer layouts: project_name: title: OpenStreetMap @@ -1042,6 +1069,7 @@ nb: edit: Rediger history: Historikk export: Eksporter + issues: Problemer data: Data export_data: Eksporter data gps_traces: GPS-spor @@ -1373,7 +1401,9 @@ nb: (www.and.com) contributors_nz_html: |- New Zealand: Inneholder data hentet fra - Land Information New Zealand. Crown Copyright reservert. + LINZ Data Service og + lisensiert for gjenbruk under + CC BY 4.0. contributors_si_html: |- Slovenia: Inneholder data fra Geologisk undersøkelse og kartmyndighet and @@ -1424,14 +1454,15 @@ nb: Du kan gjøre dine redigeringer offentlige fra din %{user_page}. user_page_link: brukerside anon_edits_link_text: Finn ut hvorfor dette er tilfellet. - flash_player_required: Du trenger en Flash-spiller for å kunne bruke Potlatch, - Flasheditoren for OpenStreetMap. Du kan laste - ned Flash Player fra Adobe.com. Flere - andre alternativ er også tilgjengelig for redigering av OpenStreetMap. + flash_player_required: Du trenger en Flash-spiller for å kunne bruke Potlatch + som er Flasheditoren for OpenStreetMap. Du kan laste + ned Flash Player fra Adobe.com. Det + finnes flere alternativer for å redigere OpenStreetMap. potlatch_unsaved_changes: Du har ulagrede endringer. (For å lagre i Potlatch, må du fjerne markeringen av gjeldende vei eller punkt hvis du redigerer i live-modues eller klikke lagre hvis du har en lagreknapp.) - potlatch2_not_configured: Potlatch 2 har ikke blitt konfigurert - se http://wiki.openstreetmap.org/wiki/The_Rails_Port + potlatch2_not_configured: Potlatch 2 har ikke blitt konfigurert - se https://wiki.openstreetmap.org/wiki/The_Rails_Port#Potlatch_2 + for mer informasjon potlatch2_unsaved_changes: Du har endringer som ikke er lagret. (For å lagre i Potlatch 2, må du klikke lagre.) id_not_configured: iD er ikke satt opp @@ -1550,6 +1581,7 @@ nb: where_am_i: Hvor er dette? where_am_i_title: Bruke søkemotoren til å beskrive gjeldende lokasjon. submit_text: Gå + reverse_directions_text: Motsatte retninger key: table: entry: @@ -1624,7 +1656,7 @@ nb: edit: Rediger preview: Forhåndsvisning markdown_help: - title_html: Tolket med Markdown + title_html: Tolket med Markdown headings: Overskrifter heading: Overskrift subheading: Underoverskrift @@ -1701,13 +1733,17 @@ nb: tags_help: kommaseparert visibility: 'Synlighet:' visibility_help: hva betyr dette? + visibility_help_url: https://wiki.openstreetmap.org/wiki/Visibility_of_GPS_traces upload_button: Last opp help: Hjelp + help_url: https://wiki.openstreetmap.org/wiki/Upload create: upload_trace: Last opp GPS-spor trace_uploaded: Din GPX-fil er lastet opp og venter på å bli satt inn i databasen. Dette skjer vanligvis innen en halvtime og en e-post blir sendt til deg når det er gjort. + upload_failed: Beklager, GPX-opplastingen mislyktes. En administrator har blitt + varslet om feilen. Prøv på nytt traces_waiting: one: Du har %{count} spor som venter på opplasting. Du bør vurdere å la dette bli ferdig før du laster opp flere spor slik at du ikke blokkerer køa for @@ -1732,6 +1768,8 @@ nb: save_button: Lagre endringer visibility: 'Synlighet:' visibility_help: hva betyr dette? + update: + updated: Sporet ble oppdatert trace_optionals: tags: Merkelapper show: @@ -1753,6 +1791,7 @@ nb: delete_trace: Slett dette sporet trace_not_found: Sporet ble ikke funnet! visibility: 'Synlighet:' + confirm_delete: Slett dette sporet? trace_paging_nav: showing_page: Side %{page} older: Eldre spor @@ -1783,6 +1822,7 @@ nb: eller lær å lage GPS-spor på wiki-siden. upload_trace: Last opp et GPS-spor see_all_traces: Se alle spor + see_my_traces: Se alle mine spor delete: scheduled_for_deletion: Spor planlagt slettet make_public: @@ -1804,8 +1844,12 @@ nb: require_cookies: cookies_needed: Du ser ut til å ha deaktivert informasjonskapsler. Aktiver informasjonskapsler i nettleseren din før du fortsetter. + require_admin: + not_an_admin: Du må være administrator for å kunne utføre denne handlingen. require_moderator: not_a_moderator: Du må være en moderator for å utføre den handlinga. + require_moderator_or_admin: + not_a_moderator_or_admin: Du må være en moderator for kunne å utføre den handlingen. setup_user_auth: blocked_zero_hour: Du har en viktig beskjed på OpenStreetMap-nettsida. Du må lese beskjeden før du vil kunne lagre redigeringene dine. @@ -1989,11 +2033,12 @@ nb: html: |-I motsetning til andre kart, er OpenStreetMap laget av folk som deg, og det er fritt for alle å rette, oppdatere, laste ned og bruke kartet.
Registrer deg for å komme i gang med å bidra. Vi vil sende en e-mail for å bekrefte din konto.
- license_agreement: Når du bekrefter kontoen din må du godkjenne bidragsytervilkårene. + license_agreement: Når du bekrefter kontoen din må du godkjenne betingelsene + for bidragsytere. email address: 'E-postadresse:' confirm email address: 'Bekreft e-postadresse:' - not displayed publicly: Adressa di vises ikke offentlig, se vår + not displayed publicly: Adressen din vises ikke offentlig, se vår personvernpolitikk for mer informasjon. display name: 'Visningsnavn:' display name description: Ditt offentlig fremviste brukernavn. Du kan endre @@ -2034,7 +2079,7 @@ nb: body: Det er ingen bruker med navnet %{user}. Sjekk om du har skrevet navnet feil eller om lenka du klikket er feil. deleted: slettet - view: + show: my diary: Min dagbok new diary entry: ny dagbokoppføring my edits: Mine redigeringer @@ -2101,6 +2146,7 @@ nb: friends_diaries: venners dagbokoppføringer nearby_changesets: endringssett av brukere i nærheten nearby_diaries: dagbokoppføringer av brukere i nærheten + report: Rapporter denne brukeren popup: your location: Din posisjon nearby mapper: Bruker i nærheten @@ -2113,12 +2159,12 @@ nb: email never displayed publicly: ' (vises aldri offentlig)' external auth: 'Ekstern bekreftelse:' openid: - link: http://wiki.openstreetmap.org/wiki/OpenID + link: https://wiki.openstreetmap.org/wiki/OpenID link text: hva er dette? public editing: heading: 'Offentlig redigering:' enabled: Aktivert. Ikke anonym og kan redigere data. - enabled link: http://wiki.openstreetmap.org/wiki/Anonymous_edits + enabled link: https://wiki.openstreetmap.org/wiki/Anonymous_edits enabled link text: hva er dette? disabled: Deaktivert og kan ikke redigere data. Alle tidligere redigeringer er anonyme. @@ -2129,10 +2175,9 @@ nb: deg meldinger eller se posisjonen din. For å vise hva du redigerte og tillate folk å kontakte deg gjennom nettsiden, klikk på knappen nedenfor. Siden overgangen til 0.6 API-et, kan kun offentlige brukere redigere kartdata. - ( Finn ut hvorfor - ).За разлику од осталих мапа, OpenStreetMap у потпуности стварају људи као Ви, и бесплатан је за свакога да поправља, ажурира, преузима и користи.
Пријавите се да бисте почели да доприносите. Послаћемо Вам имејл за потврду Вашег налога.
- license_agreement: Након што потврдите налог, мораћете да прихватите услове - уређивања. + license_agreement: Када потврдите налог, мораћете да прихватите услове + сарадника. email address: 'Имејл адреса:' confirm email address: 'Потврдите имејл адресу:' not displayed publicly: Ваша адреса се не приказује јавно, погледајте "changeset#comments_feed", :as => :changeset_comments_feed, :id => /\d*/, :defaults => { :format => "rss" } get "/note/:id" => "browse#note", :id => /\d+/, :as => "browse_note" get "/note/new" => "browse#new_note" - get "/user/:display_name/history" => "changeset#list" + get "/user/:display_name/history" => "changeset#index" get "/user/:display_name/history/feed" => "changeset#feed", :defaults => { :format => :atom } get "/user/:display_name/notes" => "notes#mine" - get "/history/friends" => "changeset#list", :friends => true, :as => "friend_changesets", :defaults => { :format => :html } - get "/history/nearby" => "changeset#list", :nearby => true, :as => "nearby_changesets", :defaults => { :format => :html } + get "/history/friends" => "changeset#index", :friends => true, :as => "friend_changesets", :defaults => { :format => :html } + get "/history/nearby" => "changeset#index", :nearby => true, :as => "nearby_changesets", :defaults => { :format => :html } get "/browse/way/:id", :to => redirect(:path => "/way/%{id}") get "/browse/way/:id/history", :to => redirect(:path => "/way/%{id}/history") @@ -150,7 +150,7 @@ OpenStreetMap::Application.routes.draw do get "/fixthemap" => "site#fixthemap" get "/help" => "site#help" get "/about" => "site#about" - get "/history" => "changeset#list" + get "/history" => "changeset#index" get "/history/feed" => "changeset#feed", :defaults => { :format => :atom } get "/history/comments/feed" => "changeset#comments_feed", :as => :changesets_comments_feed, :defaults => { :format => "rss" } get "/export" => "site#export" @@ -208,26 +208,24 @@ OpenStreetMap::Application.routes.draw do get "/traces/mine/tag/:tag" => "traces#mine" get "/traces/mine/page/:page" => "traces#mine" get "/traces/mine" => "traces#mine" - post "/trace/create" => "traces#create" # remove after deployment get "/trace/create", :to => redirect(:path => "/traces/new") get "/trace/:id/data" => "traces#data", :id => /\d+/, :as => "trace_data" - post "trace/:id/edit" => "traces#update" # remove after deployment get "/trace/:id/edit", :to => redirect(:path => "/traces/%{id}/edit") post "/trace/:id/delete" => "traces#delete", :id => /\d+/ # diary pages match "/diary/new" => "diary_entry#new", :via => [:get, :post] - get "/diary/friends" => "diary_entry#list", :friends => true, :as => "friend_diaries" - get "/diary/nearby" => "diary_entry#list", :nearby => true, :as => "nearby_diaries" + get "/diary/friends" => "diary_entry#index", :friends => true, :as => "friend_diaries" + get "/diary/nearby" => "diary_entry#index", :nearby => true, :as => "nearby_diaries" get "/user/:display_name/diary/rss" => "diary_entry#rss", :defaults => { :format => :rss } get "/diary/:language/rss" => "diary_entry#rss", :defaults => { :format => :rss } get "/diary/rss" => "diary_entry#rss", :defaults => { :format => :rss } get "/user/:display_name/diary/comments/:page" => "diary_entry#comments", :page => /[1-9][0-9]*/ get "/user/:display_name/diary/comments/" => "diary_entry#comments" - get "/user/:display_name/diary" => "diary_entry#list" - get "/diary/:language" => "diary_entry#list" - get "/diary" => "diary_entry#list" - get "/user/:display_name/diary/:id" => "diary_entry#view", :id => /\d+/, :as => :diary_entry + get "/user/:display_name/diary" => "diary_entry#index" + get "/diary/:language" => "diary_entry#index" + get "/diary" => "diary_entry#index" + get "/user/:display_name/diary/:id" => "diary_entry#show", :id => /\d+/, :as => :diary_entry post "/user/:display_name/diary/:id/newcomment" => "diary_entry#comment", :id => /\d+/ match "/user/:display_name/diary/:id/edit" => "diary_entry#edit", :via => [:get, :post], :id => /\d+/ post "/user/:display_name/diary/:id/hide" => "diary_entry#hide", :id => /\d+/, :as => :hide_diary_entry @@ -236,7 +234,7 @@ OpenStreetMap::Application.routes.draw do post "/user/:display_name/diary/:id/unsubscribe" => "diary_entry#unsubscribe", :as => :diary_entry_unsubscribe, :id => /\d+/ # user pages - get "/user/:display_name" => "user#view", :as => "user" + get "/user/:display_name" => "user#show", :as => "user" match "/user/:display_name/make_friend" => "user#make_friend", :via => [:get, :post], :as => "make_friend" match "/user/:display_name/remove_friend" => "user#remove_friend", :via => [:get, :post], :as => "remove_friend" match "/user/:display_name/account" => "user#account", :via => [:get, :post] @@ -244,8 +242,8 @@ OpenStreetMap::Application.routes.draw do get "/user/:display_name/delete" => "user#delete", :as => :delete_user # user lists - match "/users" => "user#list", :via => [:get, :post] - match "/users/:status" => "user#list", :via => [:get, :post] + match "/users" => "user#index", :via => [:get, :post] + match "/users/:status" => "user#index", :via => [:get, :post] # geocoder get "/search" => "geocoder#search" diff --git a/config/wiki_pages.yml b/config/wiki_pages.yml index ccf8744af..7555362c5 100644 --- a/config/wiki_pages.yml +++ b/config/wiki_pages.yml @@ -21,6 +21,11 @@ bg: natural=heath: Bg:Tag:natural=heath railway=crossing: Bg:Tag:railway=crossing railway=level_crossing: Bg:Tag:railway=level crossing +bn: + key: + highway: Bn:Key:highway + tag: + highway=residential: Bn:Tag:highway=residential ca: key: amenity: Ca:Key:amenity @@ -28,8 +33,10 @@ ca: operator:type: Ca:Key:operator:type phone: Ca:Key:phone tag: + amenity=post_box: Ca:Tag:amenity=post box landuse=farmland: Ca:Tag:landuse=farmland leisure=swimming_pool: Ca:Tag:leisure=swimming pool + office=notary: Ca:Tag:office=notary place=isolated_dwelling: Ca:Tag:place=isolated dwelling shop=frozen_food: Ca:Tag:shop=frozen food cs: @@ -45,6 +52,7 @@ cs: abandoned:amenity: Cs:Key:abandoned:amenity abutters: Cs:Key:abutters access: Cs:Key:access + access:conditional: Cs:Key:access:conditional access:lanes: Cs:Key:access:lanes addr: Cs:Key:addr addr:city: Cs:Key:addr:city @@ -964,6 +972,7 @@ cs: amenity=townhall: Cs:Tag:amenity=townhall amenity=university: Cs:Tag:amenity=university amenity=vacuum_cleaner: Cs:Tag:amenity=vacuum cleaner + amenity=vehicle_inspection: Cs:Tag:amenity=vehicle inspection amenity=vending_machine: Cs:Tag:amenity=vending machine amenity=veterinary: Cs:Tag:amenity=veterinary amenity=waste_basket: Cs:Tag:amenity=waste basket @@ -1740,6 +1749,7 @@ cs: place=suburb: Cs:Tag:place=suburb place=town: Cs:Tag:place=town place=village: Cs:Tag:place=village + power=catenary_mast: Cs:Tag:power=catenary mast power=generator: Cs:Tag:power=generator power=heliostat: Cs:Tag:power=heliostat power=terminal: Cs:Tag:power=terminal @@ -1974,7 +1984,6 @@ cs: shop=pharmacy: Cs:Tag:shop=pharmacy shop=photo: Cs:Tag:shop=photo shop=photography: Cs:Tag:shop=photography - shop=piercing: Cs:Tag:shop=piercing shop=pottery: Cs:Tag:shop=pottery shop=printing: Cs:Tag:shop=printing shop=pyrotechnics: Cs:Tag:shop=pyrotechnics @@ -2212,6 +2221,7 @@ da: amenity=place_of_worship: Da:Tag:amenity=place of worship amenity=veterinary: Da:Tag:amenity=veterinary highway=bridleway: Da:Tag:highway=bridleway + highway=cycleway: Da:Tag:highway=cycleway highway=ford: Da:Tag:highway=ford highway=road: Da:Tag:highway=road highway=tertiary: Da:Tag:highway=tertiary @@ -2223,6 +2233,7 @@ da: place=village: Da:Tag:place=village route=ferry: Da:Tag:route=ferry service=driveway: Da:Tag:service=driveway + shop=charity: Da:Tag:shop=charity de: key: AlpinRes_ID: DE:Key:AlpinRes ID @@ -2230,6 +2241,7 @@ de: Annotations: DE:Key:Annotations FIXME: DE:Key:FIXME TODO: DE:Key:TODO + VRS:ref: DE:Key:VRS:ref WDPA_ID:ref: DE:Key:WDPA ID:ref 'abandoned:': 'DE:Key:abandoned:' abandoned:*: DE:Key:abandoned:* @@ -2249,6 +2261,7 @@ de: advertising: DE:Key:advertising aerialway: DE:Key:aerialway aerialway:drag_lift: DE:Key:aerialway:drag lift + aerodrome:type: DE:Key:aerodrome:type aeroway: DE:Key:aeroway after_school: DE:Key:after school agricultural: DE:Key:agricultural @@ -2262,8 +2275,10 @@ de: automated: DE:Key:automated backcountry: DE:Key:backcountry backrest: DE:Key:backrest + backward: DE:Key:backward barrier: DE:Key:barrier basin: DE:Key:basin + bath:type: DE:Key:bath:type bdouble: DE:Key:bdouble beacon:type: DE:Key:beacon:type beds: DE:Key:beds @@ -2308,6 +2323,7 @@ de: carriage: DE:Key:carriage castle_type: DE:Key:castle type cemetery: DE:Key:cemetery + check_date: DE:Key:check date circuits: DE:Key:circuits circumference: DE:Key:circumference city_limit: DE:Key:city limit @@ -2376,6 +2392,8 @@ de: diaper: DE:Key:diaper diet: DE:Key:diet diet:*: DE:Key:diet:* + diet:vegan: DE:Key:diet:vegan + diet:vegetarian: DE:Key:diet:vegetarian diplomatic: DE:Key:diplomatic direction: DE:Key:direction display: DE:Key:display @@ -2402,17 +2420,21 @@ de: ferry:cable: DE:Key:ferry:cable fetish: DE:Key:fetish fire_hydrant: DE:Key:fire hydrant - fire_hydrant:type: DE:Key:fire hydrant:type fireplace: DE:Key:fireplace fixme: DE:Key:fixme floating: DE:Key:floating foot: DE:Key:foot footway: DE:Key:footway ford: DE:Key:ford + format: DE:Key:format fortification_type: DE:Key:fortification type + forward: DE:Key:forward frequency: DE:Key:frequency from: DE:Key:from fuel: DE:Key:fuel + fuel:LH2: DE:Key:fuel:LH2 + garden:style: DE:Key:garden:style + garden:type: DE:Key:garden:type gauge: DE:Key:gauge generator:method: DE:Key:generator:method generator:output: DE:Key:generator:output @@ -2428,6 +2450,7 @@ de: geological: DE:Key:geological golf:course: DE:Key:golf:course government: DE:Key:government + group_only: DE:Key:group only guest_house: DE:Key:guest house hazard: DE:Key:hazard hazmat: DE:Key:hazmat @@ -2437,6 +2460,7 @@ de: hgv: DE:Key:hgv highspeed: DE:Key:highspeed highway: DE:Key:highway + hiking: DE:Key:hiking historic: DE:Key:historic historic:civilization: DE:Key:historic:civilization historic:period: DE:Key:historic:period @@ -2460,6 +2484,7 @@ de: kids_area: DE:Key:kids area kms: DE:Key:kms kneipp_water_cure: DE:Key:kneipp water cure + landfill:waste: DE:Key:landfill:waste landuse: DE:Key:landuse lanes: DE:Key:lanes lanes:bus: DE:Key:lanes:bus @@ -2482,24 +2507,29 @@ de: lock: DE:Key:lock lock_name: DE:Key:lock name lock_ref: DE:Key:lock ref + lockable: DE:Key:lockable lottery: DE:Key:lottery love_locks: DE:Key:love locks man_made: DE:Key:man made manhole: DE:Key:manhole manufacturer: DE:Key:manufacturer manufacturer:type: DE:Key:manufacturer:type + mapillary: DE:Key:mapillary + massage: DE:Key:massage material: DE:Key:material max_age: DE:Key:max age maxaxleload: DE:Key:maxaxleload maxheight: DE:Key:maxheight maxlength: DE:Key:maxlength maxspeed: DE:Key:maxspeed + maxspeed:type: DE:Key:maxspeed:type maxstay: DE:Key:maxstay maxweight: DE:Key:maxweight maxwidth: DE:Key:maxwidth megalith_type: DE:Key:megalith type memorial: DE:Key:memorial memorial:type: DE:Key:memorial:type + milestone_type: DE:Key:milestone type military: DE:Key:military min_age: DE:Key:min age mineshaft_type: DE:Key:mineshaft type @@ -2526,6 +2556,7 @@ de: motorcycle: DE:Key:motorcycle motorcycle:clothes: DE:Key:motorcycle:clothes motorcycle:conditional: DE:Key:motorcycle:conditional + motorcycle:parking: DE:Key:motorcycle:parking motorcycle:parts: DE:Key:motorcycle:parts motorcycle:rental: DE:Key:motorcycle:rental motorcycle:repair: DE:Key:motorcycle:repair @@ -2549,16 +2580,21 @@ de: note: DE:Key:note nudism: DE:Key:nudism nursery: DE:Key:nursery + observatory:type: DE:Key:observatory:type office: DE:Key:office + official_name: DE:Key:official name offshore: DE:Key:offshore + old_name: DE:Key:old name oneway: DE:Key:oneway oneway:bicycle: DE:Key:oneway:bicycle oneway:moped: DE:Key:oneway:moped onkz: DE:Key:onkz openfire: DE:Key:openfire opening_hours: DE:Key:opening hours + opening_hours:kitchen: DE:Key:opening hours:kitchen operator: DE:Key:operator operator:MNC: DE:Key:operator:MNC + operator:type: DE:Key:operator:type organic: DE:Key:organic osak: DE:Key:osak osmc:status: DE:Key:osmc:status @@ -2579,6 +2615,9 @@ de: placement: DE:Key:placement plant: DE:Key:plant plant:output: DE:Key:plant:output + plant:output:electricity: DE:Key:plant:output:electricity + plant:output:hot_water: DE:Key:plant:output:hot water + plant:source: DE:Key:plant:source playground: DE:Key:playground 'playground:': 'DE:Key:playground:' population: DE:Key:population @@ -2625,6 +2664,7 @@ de: seamark: DE:Key:seamark seamark:fixme: DE:Key:seamark:fixme seamark:type: DE:Key:seamark:type + seasonal: DE:Key:seasonal seats: DE:Key:seats second_hand: DE:Key:second hand segregated: DE:Key:segregated @@ -2636,6 +2676,7 @@ de: shelter_type: DE:Key:shelter type shooting: DE:Key:shooting shop: DE:Key:shop + short_protection_title: DE:Key:short protection title shower: DE:Key:shower sidewalk: DE:Key:sidewalk site_type: DE:Key:site type @@ -2665,11 +2706,14 @@ de: surface: DE:Key:surface surveillance: DE:Key:surveillance surveillance:zone: DE:Key:surveillance:zone + survey:date: DE:Key:survey:date + swimming_pool: DE:Key:swimming pool symbol: DE:Key:symbol tactile_paving: DE:Key:tactile paving tactile_writing: DE:Key:tactile writing takeaway: DE:Key:takeaway target: DE:Key:target + telescope:type: DE:Key:telescope:type tidal: DE:Key:tidal to: DE:Key:to todo: DE:Key:todo @@ -2678,6 +2722,7 @@ de: toll: DE:Key:toll tomb: DE:Key:tomb tourism: DE:Key:tourism + tower:construction: DE:Key:tower:construction tower:type: DE:Key:tower:type tracks: DE:Key:tracks tracktype: DE:Key:tracktype @@ -2702,6 +2747,7 @@ de: voltage: DE:Key:voltage waste: DE:Key:waste water: DE:Key:water + water_characteristic: DE:Key:water characteristic waterway: DE:Key:waterway website: DE:Key:website wetland: DE:Key:wetland @@ -2725,6 +2771,7 @@ de: abandoned:amenity=prison_camp: DE:Tag:abandoned:amenity=prison camp abandoned=yes: DE:Tag:abandoned=yes access=designated: DE:Tag:access=designated + access=destination: DE:Tag:access=destination access=private: DE:Tag:access=private admin_level=2: DE:Tag:admin level=2 advertising=column: DE:Tag:advertising=column @@ -2736,6 +2783,9 @@ de: aerialway=magic_carpet: DE:Tag:aerialway=magic carpet aerialway=pylon: DE:Tag:aerialway=pylon aerialway=station: DE:Tag:aerialway=station + aerodrome:type=gliding: DE:Tag:aerodrome:type=gliding + aerodrome:type=international: DE:Tag:aerodrome:type=international + aerodrome:type=regional: DE:Tag:aerodrome:type=regional aeroway=aerodrome: DE:Tag:aeroway=aerodrome aeroway=apron: DE:Tag:aeroway=apron aeroway=gate: DE:Tag:aeroway=gate @@ -2743,6 +2793,7 @@ de: aeroway=helipad: DE:Tag:aeroway=helipad aeroway=heliport: DE:Tag:aeroway=heliport aeroway=navigationaid: DE:Tag:aeroway=navigationaid + aeroway=parking_position: DE:Tag:aeroway=parking position aeroway=runway: DE:Tag:aeroway=runway aeroway=spaceport: DE:Tag:aeroway=spaceport aeroway=taxiway: DE:Tag:aeroway=taxiway @@ -2847,6 +2898,7 @@ de: amenity=school: DE:Tag:amenity=school amenity=shelter: DE:Tag:amenity=shelter amenity=shower: DE:Tag:amenity=shower + amenity=ski_school: DE:Tag:amenity=ski school amenity=smoking_area: DE:Tag:amenity=smoking area amenity=social_facility: DE:Tag:amenity=social facility amenity=stables: DE:Tag:amenity=stables @@ -2874,28 +2926,35 @@ de: atm=yes: DE:Tag:atm=yes attraction=animal: DE:Tag:attraction=animal attraction=train: DE:Tag:attraction=train + attraction=water_slide: DE:Tag:attraction=water slide barrier=block: DE:Tag:barrier=block barrier=bollard: DE:Tag:barrier=bollard barrier=cattle_grid: DE:Tag:barrier=cattle grid barrier=city_wall: DE:Tag:barrier=city wall barrier=cycle_barrier: DE:Tag:barrier=cycle barrier barrier=ditch: DE:Tag:barrier=ditch + barrier=entrance: DE:Tag:barrier=entrance barrier=fence: DE:Tag:barrier=fence barrier=gate: DE:Tag:barrier=gate barrier=hedge: DE:Tag:barrier=hedge barrier=hedge_bank: DE:Tag:barrier=hedge bank + barrier=height_restrictor: DE:Tag:barrier=height restrictor barrier=kissing_gate: DE:Tag:barrier=kissing gate barrier=lift_gate: DE:Tag:barrier=lift gate barrier=retaining_wall: DE:Tag:barrier=retaining wall barrier=sally_port: DE:Tag:barrier=sally port barrier=toll_booth: DE:Tag:barrier=toll booth barrier=wall: DE:Tag:barrier=wall + bath:type=hammam: DE:Tag:bath:type=hammam + bath:type=thermal: DE:Tag:bath:type=thermal + bay=fjord: DE:Tag:bay=fjord bicycle=designated: DE:Tag:bicycle=designated bicycle=use_sidepath: DE:Tag:bicycle=use sidepath biosphärenwirt=yes: DE:Tag:biosphärenwirt=yes boundary=national_park: DE:Tag:boundary=national park boundary=postal_code: DE:Tag:boundary=postal code boundary=protected_area: DE:Tag:boundary=protected area + boundary=religious_administration: DE:Tag:boundary=religious administration boundary=water_protection_area: DE:Tag:boundary=water protection area bridge:movable=bascule: DE:Tag:bridge:movable=bascule bridge:movable=drawbridge: DE:Tag:bridge:movable=drawbridge @@ -2919,12 +2978,14 @@ de: bridge=viaduct: DE:Tag:bridge=viaduct building=apartments: DE:Tag:building=apartments building=barn: DE:Tag:building=barn + building=boathouse: DE:Tag:building=boathouse building=bungalow: DE:Tag:building=bungalow building=cathedral: DE:Tag:building=cathedral building=chapel: DE:Tag:building=chapel building=church: DE:Tag:building=church building=civic: DE:Tag:building=civic building=commercial: DE:Tag:building=commercial + building=container: DE:Tag:building=container building=detached: DE:Tag:building=detached building=dormitory: DE:Tag:building=dormitory building=entrance: DE:Tag:building=entrance @@ -2953,11 +3014,13 @@ de: building=shed: DE:Tag:building=shed building=shrine: DE:Tag:building=shrine building=slurry_tank: DE:Tag:building=slurry tank + building=sports_hall: DE:Tag:building=sports hall building=stable: DE:Tag:building=stable building=static_caravan: DE:Tag:building=static caravan building=sty: DE:Tag:building=sty building=synagogue: DE:Tag:building=synagogue building=tech_cab: DE:Tag:building=tech cab + building=temple: DE:Tag:building=temple building=terrace: DE:Tag:building=terrace building=train_station: DE:Tag:building=train station building=university: DE:Tag:building=university @@ -2977,17 +3040,21 @@ de: club=fan: DE:Tag:club=fan club=scout: DE:Tag:club=scout club=sport: DE:Tag:club=sport + communication=line: DE:Tag:communication=line craft=agricultural_engines: DE:Tag:craft=agricultural engines craft=basket_maker: DE:Tag:craft=basket maker craft=beekeeper: DE:Tag:craft=beekeeper craft=blacksmith: DE:Tag:craft=blacksmith craft=boatbuilder: DE:Tag:craft=boatbuilder craft=bookbinder: DE:Tag:craft=bookbinder + craft=builder: DE:Tag:craft=builder craft=car_repair: DE:Tag:craft=car repair craft=carpenter: DE:Tag:craft=carpenter craft=carpet_layer: DE:Tag:craft=carpet layer + craft=caterer: DE:Tag:craft=caterer craft=chimney_sweeper: DE:Tag:craft=chimney sweeper craft=cooper: DE:Tag:craft=cooper + craft=dental_technician: DE:Tag:craft=dental technician craft=distillery: DE:Tag:craft=distillery craft=dressmaker: DE:Tag:craft=dressmaker craft=electrican: DE:Tag:craft=electrican @@ -3014,6 +3081,8 @@ de: craft=scaffolder: DE:Tag:craft=scaffolder craft=shoemaker: DE:Tag:craft=shoemaker craft=stonemason: DE:Tag:craft=stonemason + craft=sun_protection: DE:Tag:craft=sun protection + craft=tailor: DE:Tag:craft=tailor craft=tiler: DE:Tag:craft=tiler craft=tinsmith: DE:Tag:craft=tinsmith craft=toolmaker: DE:Tag:craft=toolmaker @@ -3053,8 +3122,13 @@ de: emergency=emergency_ward_entrance: DE:Tag:emergency=emergency ward entrance emergency=fire_hydrant: DE:Tag:emergency=fire hydrant emergency=fire_water_pond: DE:Tag:emergency=fire water pond + emergency=first_aid: DE:Tag:emergency=first aid + emergency=first_aid_kit: DE:Tag:emergency=first aid kit emergency=life_ring: DE:Tag:emergency=life ring + emergency=lifeguard_base: DE:Tag:emergency=lifeguard base + emergency=lifeguard_place: DE:Tag:emergency=lifeguard place emergency=lifeguard_tower: DE:Tag:emergency=lifeguard tower + emergency=mountain_rescue: DE:Tag:emergency=mountain rescue emergency=phone: DE:Tag:emergency=phone emergency=siren: DE:Tag:emergency=siren emergency=suction_point: DE:Tag:emergency=suction point @@ -3062,9 +3136,11 @@ de: emergency_service=technical: DE:Tag:emergency service=technical entrance=main: DE:Tag:entrance=main entrance=yes: DE:Tag:entrance=yes - food=gourmet: DE:Tag:food=gourmet foot=designated: DE:Tag:foot=designated + footway=crossing: DE:Tag:footway=crossing footway=sidewalk: DE:Tag:footway=sidewalk + ford=stepping_stones: DE:Tag:ford=stepping stones + ford=yes: DE:Tag:ford=yes fortification_type=hill_fort: DE:Tag:fortification type=hill fort fortification_type=limes: DE:Tag:fortification type=limes fortification_type=ringfort: DE:Tag:fortification type=ringfort @@ -3125,17 +3201,24 @@ de: golf=rough: DE:Tag:golf=rough golf=tee: DE:Tag:golf=tee golf=water_hazard: DE:Tag:golf=water hazard + government=cadaster: DE:Tag:government=cadaster + government=customs: DE:Tag:government=customs + government=healthcare: DE:Tag:government=healthcare government=ministry: DE:Tag:government=ministry government=prosecutor: DE:Tag:government=prosecutor government=register_office: DE:Tag:government=register office + government=statistics: DE:Tag:government=statistics government=tax: DE:Tag:government=tax + government=youth_welfare_department: DE:Tag:government=youth welfare department hazmat:water=permissive: DE:Tag:hazmat:water=permissive healthcare=blood_donation: DE:Tag:healthcare=blood donation + healthcare=laboratory: DE:Tag:healthcare=laboratory highway=abandoned: DE:Tag:highway=abandoned highway=access: DE:Tag:highway=access highway=bridleway: DE:Tag:highway=bridleway highway=bus_guideway: DE:Tag:highway=bus guideway highway=bus_stop: DE:Tag:highway=bus stop + highway=byway: DE:Tag:highway=byway highway=corridor: DE:Tag:highway=corridor highway=crossing: DE:Tag:highway=crossing highway=cycleway: DE:Tag:highway=cycleway @@ -3149,6 +3232,7 @@ de: highway=give_way: DE:Tag:highway=give way highway=kerb: DE:Tag:highway=kerb highway=living_street: DE:Tag:highway=living street + highway=milestone: DE:Tag:highway=milestone highway=mini_roundabout: DE:Tag:highway=mini roundabout highway=motorway: DE:Tag:highway=motorway highway=motorway_junction: DE:Tag:highway=motorway junction @@ -3217,6 +3301,7 @@ de: historic=wayside_shrine: DE:Tag:historic=wayside shrine historic=wreck: DE:Tag:historic=wreck horse=designated: DE:Tag:horse=designated + industrial=bakery: DE:Tag:industrial=bakery industrial=scrap_yard: DE:Tag:industrial=scrap yard information=audioguide: DE:Tag:information=audioguide information=board: DE:Tag:information=board @@ -3308,6 +3393,7 @@ de: leisure=tanning_salon: DE:Tag:leisure=tanning salon leisure=track: DE:Tag:leisure=track leisure=water_park: DE:Tag:leisure=water park + leisure=wildlife_hide: DE:Tag:leisure=wildlife hide level_crossing=automatic_barrier: DE:Tag:level crossing=automatic barrier level_crossing=traffic_signals: DE:Tag:level crossing=traffic signals level_crossing=uncontrolled: DE:Tag:level crossing=uncontrolled @@ -3397,6 +3483,9 @@ de: military=range: DE:Tag:military=range military=training_area: DE:Tag:military=training area motorcycle:type=scooter: DE:Tag:motorcycle:type=scooter + museum=history: DE:Tag:museum=history + museum=local: DE:Tag:museum=local + museum=railway: DE:Tag:museum=railway natural=anthill: DE:Tag:natural=anthill natural=arete: DE:Tag:natural=arete natural=bare_rock: DE:Tag:natural=bare rock @@ -3410,6 +3499,7 @@ de: natural=geyser: DE:Tag:natural=geyser natural=glacier: DE:Tag:natural=glacier natural=grassland: DE:Tag:natural=grassland + natural=gully: DE:Tag:natural=gully natural=heath: DE:Tag:natural=heath natural=hot_spring: DE:Tag:natural=hot spring natural=moor: DE:Tag:natural=moor @@ -3450,6 +3540,7 @@ de: network=rcn: DE:Tag:network=rcn network=rhn: DE:Tag:network=rhn network=rwn: DE:Tag:network=rwn + observatory:type=astronomical: DE:Tag:observatory:type=astronomical office=accountant: DE:Tag:office=accountant office=administrative: DE:Tag:office=administrative office=advertising_agency: DE:Tag:office=advertising agency @@ -3460,16 +3551,19 @@ de: office=energy_supplier: DE:Tag:office=energy supplier office=estate_agent: DE:Tag:office=estate agent office=forestry: DE:Tag:office=forestry + office=geodesist: DE:Tag:office=geodesist office=government: DE:Tag:office=government office=guide: DE:Tag:office=guide office=insurance: DE:Tag:office=insurance office=lawyer: DE:Tag:office=lawyer office=moving_company: DE:Tag:office=moving company office=newspaper: DE:Tag:office=newspaper + office=ngo: DE:Tag:office=ngo office=parish: DE:Tag:office=parish office=political_party: DE:Tag:office=political party office=religion: DE:Tag:office=religion office=research: DE:Tag:office=research + office=surveyor: DE:Tag:office=surveyor office=tax_advisor: DE:Tag:office=tax advisor office=therapist: DE:Tag:office=therapist office=travel_agent: DE:Tag:office=travel agent @@ -3482,6 +3576,7 @@ de: operator=cambio: DE:Tag:operator=cambio operator=stadtmobil: DE:Tag:operator=stadtmobil operator=teilAuto: DE:Tag:operator=teilAuto + park_ride: DE:Tag:park ride parking:lane:hgv=on_street: DE:Tag:parking:lane:hgv=on street pipeline=marker: DE:Tag:pipeline=marker pipeline=substation: DE:Tag:pipeline=substation @@ -3537,6 +3632,7 @@ de: railway=halt: DE:Tag:railway=halt railway=level_crossing: DE:Tag:railway=level crossing railway=light_rail: DE:Tag:railway=light rail + railway=milestone: DE:Tag:railway=milestone railway=miniature: DE:Tag:railway=miniature railway=monorail: DE:Tag:railway=monorail railway=narrow_gauge: DE:Tag:railway=narrow gauge @@ -3558,6 +3654,7 @@ de: railway=traverser: DE:Tag:railway=traverser railway=turntable: DE:Tag:railway=turntable railway=wash: DE:Tag:railway=wash + railway=water_tower: DE:Tag:railway=water tower railway=yard: DE:Tag:railway=yard religion=buddhist: DE:Tag:religion=buddhist religion=christian: DE:Tag:religion=christian @@ -3595,6 +3692,7 @@ de: service=siding: DE:Tag:service=siding service=spur: DE:Tag:service=spur service=yard: DE:Tag:service=yard + shelter_type=basic_hut: DE:Tag:shelter type=basic hut shelter_type=lean_to: DE:Tag:shelter type=lean to shop=agrarian: DE:Tag:shop=agrarian shop=alcohol: DE:Tag:shop=alcohol @@ -3614,10 +3712,12 @@ de: shop=boutique: DE:Tag:shop=boutique shop=butcher: DE:Tag:shop=butcher shop=camera: DE:Tag:shop=camera + shop=candles: DE:Tag:shop=candles shop=car: DE:Tag:shop=car shop=car_parts: DE:Tag:shop=car parts shop=car_repair: DE:Tag:shop=car repair shop=carpet: DE:Tag:shop=carpet + shop=ceramics: DE:Tag:shop=ceramics shop=charity: DE:Tag:shop=charity shop=cheese: DE:Tag:shop=cheese shop=chemist: DE:Tag:shop=chemist @@ -3638,6 +3738,7 @@ de: shop=doityourself: DE:Tag:shop=doityourself shop=dry_cleaning: DE:Tag:shop=dry cleaning shop=electronics: DE:Tag:shop=electronics + shop=equestrian: DE:Tag:shop=equestrian shop=erotic: DE:Tag:shop=erotic shop=fabric: DE:Tag:shop=fabric shop=farm: DE:Tag:shop=farm @@ -3647,6 +3748,7 @@ de: shop=flooring: DE:Tag:shop=flooring shop=florist: DE:Tag:shop=florist shop=frame: DE:Tag:shop=frame + shop=frozen_food: DE:Tag:shop=frozen food shop=funeral_directors: DE:Tag:shop=funeral directors shop=furniture: DE:Tag:shop=furniture shop=garden_centre: DE:Tag:shop=garden centre @@ -3659,6 +3761,7 @@ de: shop=hairdresser: DE:Tag:shop=hairdresser shop=hairdresser_supply: DE:Tag:shop=hairdresser supply shop=hardware: DE:Tag:shop=hardware + shop=health_food: DE:Tag:shop=health food shop=hearing_aids: DE:Tag:shop=hearing aids shop=herbalist: DE:Tag:shop=herbalist shop=hifi: DE:Tag:shop=hifi @@ -3691,9 +3794,12 @@ de: shop=perfumery: DE:Tag:shop=perfumery shop=pet: DE:Tag:shop=pet shop=photo: DE:Tag:shop=photo + shop=religion: DE:Tag:shop=religion + shop=robot: DE:Tag:shop=robot shop=scuba_diving: DE:Tag:shop=scuba diving shop=seafood: DE:Tag:shop=seafood shop=second_hand: DE:Tag:shop=second hand + shop=sewing: DE:Tag:shop=sewing shop=shoes: DE:Tag:shop=shoes shop=spare_parts: DE:Tag:shop=spare parts shop=spices: DE:Tag:shop=spices @@ -3715,6 +3821,7 @@ de: shop=vacant: DE:Tag:shop=vacant shop=variety_store: DE:Tag:shop=variety store shop=video: DE:Tag:shop=video + shop=video_games: DE:Tag:shop=video games shop=watches: DE:Tag:shop=watches shop=weapons: DE:Tag:shop=weapons shop=wholesale: DE:Tag:shop=wholesale @@ -3745,6 +3852,7 @@ de: sport=10pin: DE:Tag:sport=10pin sport=9pin: DE:Tag:sport=9pin sport=archery: DE:Tag:sport=archery + sport=athletics: DE:Tag:sport=athletics sport=baseball: DE:Tag:sport=baseball sport=basketball: DE:Tag:sport=basketball sport=bobsleigh: DE:Tag:sport=bobsleigh @@ -3783,6 +3891,7 @@ de: substation=transmission: DE:Tag:substation=transmission summit:cross=yes: DE:Tag:summit:cross=yes surface=asphalt: DE:Tag:surface=asphalt + telescope:type=radio: DE:Tag:telescope:type=radio tourism=alpine_hut: DE:Tag:tourism=alpine hut tourism=apartment: DE:Tag:tourism=apartment tourism=aquarium: DE:Tag:tourism=aquarium @@ -3805,6 +3914,12 @@ de: tourism=wilderness_hut: DE:Tag:tourism=wilderness hut tourism=wine_cellar: DE:Tag:tourism=wine cellar tourism=zoo: DE:Tag:tourism=zoo + tower:construction=dish: DE:Tag:tower:construction=dish + tower:construction=dome: DE:Tag:tower:construction=dome + tower:construction=freestanding: DE:Tag:tower:construction=freestanding + tower:construction=guyed_lattice: DE:Tag:tower:construction=guyed lattice + tower:construction=guyed_tube: DE:Tag:tower:construction=guyed tube + tower:construction=lattice: DE:Tag:tower:construction=lattice tower:type=bell_tower: DE:Tag:tower:type=bell tower tower:type=bridge: DE:Tag:tower:type=bridge tower:type=communication: DE:Tag:tower:type=communication @@ -3822,6 +3937,7 @@ de: tower:type=watchtower: DE:Tag:tower:type=watchtower traffic_sign=city_limit: DE:Tag:traffic sign=city limit tunnel=culvert: DE:Tag:tunnel=culvert + vending: DE:Tag:vending vending=animal_feed: DE:Tag:vending=animal feed vending=bicycle_tube: DE:Tag:vending=bicycle tube vending=bottle_return: DE:Tag:vending=bottle return @@ -3840,15 +3956,22 @@ de: vending=parcel_pickup: DE:Tag:vending=parcel pickup vending=parcel_pickup;parcel_mail_in: DE:Tag:vending=parcel pickup;parcel mail in + vending=parking_tickets: DE:Tag:vending=parking tickets vending=public_transport_tickets: DE:Tag:vending=public transport tickets vending=sex_toys: DE:Tag:vending=sex toys vending=stamps: DE:Tag:vending=stamps vending=toys: DE:Tag:vending=toys vending=water: DE:Tag:vending=water vending_machine=fuel: DE:Tag:vending machine=fuel + water=canal: DE:Tag:water=canal + water=lagoon: DE:Tag:water=lagoon water=lake: DE:Tag:water=lake water=lock: DE:Tag:water=lock + water=oxbow: DE:Tag:water=oxbow + water=pond: DE:Tag:water=pond water=reservoir: DE:Tag:water=reservoir + water=river: DE:Tag:water=river + water=wastewater: DE:Tag:water=wastewater waterway=boat_lift: DE:Tag:waterway=boat lift waterway=boatyard: DE:Tag:waterway=boatyard waterway=canal: DE:Tag:waterway=canal @@ -3890,6 +4013,7 @@ el: building:architecture: El:Key:building:architecture building:levels: El:Key:building:levels height: El:Key:height + shop: El:Key:shop tag: amenity=bar: El:Tag:amenity=bar amenity=bbq: El:Tag:amenity=bbq @@ -3917,12 +4041,14 @@ el: amenity=university: El:Tag:amenity=university en: key: + 3dmr: Key:3dmr 3dr:type: Key:3dr:type 4wd_only: Key:4wd only :lanes: Key::lanes AND_nosr_r: Key:AND nosr r AlpinRes_ID: Key:AlpinRes ID CEMT: Key:CEMT + CLC:code: Key:CLC:code DGPS_correction: Key:DGPS correction EHAK:code: Key:EHAK:code EH_ref: Key:EH ref @@ -3930,6 +4056,7 @@ en: Fetish: Key:Fetish Finance_agent: Key:Finance agent HE_ref: Key:HE ref + HU:ed_direction: Key:HU:ed direction HU:hu-go:length: Key:HU:hu-go:length HU:hu-go:milestone: Key:HU:hu-go:milestone HU:hu-go:road: Key:HU:hu-go:road @@ -3979,6 +4106,7 @@ en: addr:city:de: Key:addr:city:de addr:city:en: Key:addr:city:en addr:city:it: Key:addr:city:it + addr:city:simc: Key:addr:city:simc addr:conscriptionnumber: Key:addr:conscriptionnumber addr:country: Key:addr:country addr:district: Key:addr:district @@ -4019,15 +4147,20 @@ en: aerialway:drag_lift: Key:aerialway:drag lift aerialway:duration: Key:aerialway:duration aerodrome: Key:aerodrome + aerodrome:type: Key:aerodrome:type aeroway: Key:aeroway after_school: Key:after school agricultural: Key:agricultural air_conditioning: Key:air conditioning + airconditioned: Key:airconditioned alt_name: Key:alt name alt_name:ar: Key:alt name:ar + alt_name:be: Key:alt name:be alt_name:en: Key:alt name:en alt_name:ko: Key:alt name:ko alt_name:mg: Key:alt name:mg + alt_name:pl: Key:alt name:pl + alt_name:ru: Key:alt name:ru alt_name:th: Key:alt name:th alt_name_1: Key:alt name 1 amenity: Key:amenity @@ -4036,6 +4169,7 @@ en: animal: Key:animal animated: Key:animated architect: Key:architect + architect:wikipedia: Key:architect:wikipedia area: Key:area area:highway: Key:area:highway artist_name: Key:artist name @@ -4059,12 +4193,14 @@ en: barrier:personnel: Key:barrier:personnel baseball: Key:baseball basin: Key:basin + bath:type: Key:bath:type bdouble: Key:bdouble beacon: Key:beacon beacon:colour: Key:beacon:colour beacon:function: Key:beacon:function beacon:type: Key:beacon:type beds: Key:beds + bell_tower: Key:bell tower bench: Key:bench bicycle: Key:bicycle bicycle:class:mtb: Key:bicycle:class:mtb @@ -4082,12 +4218,12 @@ en: board_type: Key:board type boat: Key:boat bollard: Key:bollard + booking: Key:booking books: Key:books border_type: Key:border type both: Key:both bottom:material: Key:bottom:material boundary: Key:boundary - boundary_type: Key:boundary type branch: Key:branch brand: Key:brand brand:wikidata: Key:brand:wikidata @@ -4101,6 +4237,7 @@ en: bridge:name: Key:bridge:name bridge:official_name: Key:bridge:official name bridge:old_name: Key:bridge:old name + bridge:ref: Key:bridge:ref bridge:short_name: Key:bridge:short name bridge:structure: Key:bridge:structure bridge:support: Key:bridge:support @@ -4121,6 +4258,7 @@ en: building:obm: Key:building:obm building:part: Key:building:part building:place: Key:building:place + building:roof: Key:building:roof building:roof:colour: Key:building:roof:colour building:ruian:type: Key:building:ruian:type building:type: Key:building:type @@ -4144,6 +4282,8 @@ en: canoe: Key:canoe capacity: Key:capacity capacity:disabled: Key:capacity:disabled + capacity:parent: Key:capacity:parent + capacity:women: Key:capacity:women capital: Key:capital capital_city: Key:capital city car_wash: Key:car wash @@ -4163,7 +4303,6 @@ en: center_turn_lane: Key:center turn lane centralkey: Key:centralkey centre_turn_lane: Key:centre turn lane - cep: Key:cep change: Key:change changesets_count: Key:changesets count charge: Key:charge @@ -4173,6 +4312,7 @@ en: circuits: Key:circuits circumference: Key:circumference city_limit: Key:city limit + clacks_overhead: Key:clacks overhead class: Key:class class:bicycle: Key:class:bicycle class:bicycle:commute: Key:class:bicycle:commute @@ -4182,10 +4322,14 @@ en: class:bicycle:roadcycling: Key:class:bicycle:roadcycling class:bicycle:touring: Key:class:bicycle:touring class:bicycle:trailer: Key:class:bicycle:trailer + climbing: Key:climbing + climbing:*: Key:climbing:* + climbing:rock: Key:climbing:rock clli: Key:clli clothes: Key:clothes club: Key:club club-mate: Key:club-mate + coach: Key:coach coastline:survey_quality: Key:coastline:survey quality cocktails: Key:cocktails coffee: Key:coffee @@ -4197,6 +4341,7 @@ en: communication:amateur_radio: Key:communication:amateur radio communication:amateur_radio:repeater: Key:communication:amateur radio:repeater communication:bos: Key:communication:bos + communication:gsm-r: Key:communication:gsm-r communication:microwave: Key:communication:microwave communication:mobile_phone: Key:communication:mobile phone communication:radio: Key:communication:radio @@ -4205,15 +4350,18 @@ en: community_centre:for: Key:community centre:for condition: Key:condition conditional: Key:conditional + condo: Key:condo construction: Key:construction construction:website: Key:construction:website construction_end_expected: Key:construction end expected + construction_start_expected: Key:construction start expected contact: Key:contact contact:diaspora: Key:contact:diaspora contact:email: Key:contact:email contact:facebook: Key:contact:facebook contact:fax: Key:contact:fax contact:flickr: Key:contact:flickr + contact:foursquare: Key:contact:foursquare contact:gnusocial: Key:contact:gnusocial contact:google_plus: Key:contact:google plus contact:instagram: Key:contact:instagram @@ -4221,12 +4369,16 @@ en: contact:mastodon: Key:contact:mastodon contact:phone: Key:contact:phone contact:skype: Key:contact:skype + contact:telegram: Key:contact:telegram contact:twitter: Key:contact:twitter contact:vhf: Key:contact:vhf + contact:viber: Key:contact:viber contact:vk: Key:contact:vk contact:webcam: Key:contact:webcam contact:website: Key:contact:website + contact:whatsapp: Key:contact:whatsapp contact:xing: Key:contact:xing + contact:xmpp: Key:contact:xmpp contact:youtube: Key:contact:youtube content: Key:content conveying: Key:conveying @@ -4250,6 +4402,7 @@ en: currency:EUR: Key:currency:EUR currency:GBP: Key:currency:GBP currency:PLN: Key:currency:PLN + currency:RUB: Key:currency:RUB currency:USD: Key:currency:USD currency:XXX: Key:currency:XXX currency:others: Key:currency:others @@ -4257,10 +4410,12 @@ en: cyclability: Key:cyclability cycle: Key:cycle cycle_network: Key:cycle network + cyclestreet: Key:cyclestreet cyclestreets_id: Key:cyclestreets id cycleway: Key:cycleway cycleway:both: Key:cycleway:both cycleway:buffer: Key:cycleway:buffer + cycleway:lane: Key:cycleway:lane cycleway:left: Key:cycleway:left cycleway:left=backward: Key:cycleway:left=backward cycleway:right: Key:cycleway:right @@ -4274,12 +4429,17 @@ en: de:regionalschluessel: Key:de:regionalschluessel de:strassenschluessel: Key:de:strassenschluessel deanery: Key:deanery + default_language: Key:default language dehoga: Key:dehoga delivery: Key:delivery + delivery_point: Key:delivery point + delivery_point:access: Key:delivery point:access + delivery_point:type: Key:delivery point:type demolished: Key:demolished 'demolished:': 'Key:demolished:' denomination: Key:denomination denotation: Key:denotation + departures_board: Key:departures board depth: Key:depth depth:clearance: Key:depth:clearance depth:dangerous: Key:depth:dangerous @@ -4293,6 +4453,7 @@ en: description: Key:description description:restrictions: Key:description:restrictions descriptions:restrictions: Key:descriptions:restrictions + design: Key:design design:ref: Key:design:ref designation: Key:designation destination: Key:destination @@ -4302,14 +4463,18 @@ en: destination:lanes:backward: Key:destination:lanes:backward destination:lanes:forward: Key:destination:lanes:forward detour: Key:detour + devices: Key:devices dhm_id: Key:dhm id diameter: Key:diameter diaper: Key:diaper dibavod:id: Key:dibavod:id diet: Key:diet + 'diet:': 'Key:diet:' diet:*: Key:diet:* diet:dairy_free: Key:diet:dairy free diet:gluten_free: Key:diet:gluten free + diet:halal: Key:diet:halal + diet:kosher: Key:diet:kosher diet:lactose_free: Key:diet:lactose free diet:vegan: Key:diet:vegan diet:vegetarian: Key:diet:vegetarian @@ -4324,6 +4489,7 @@ en: dispensing: Key:dispensing display: Key:display distance: Key:distance + distillery: Key:distillery disused: Key:disused 'disused:': 'Key:disused:' disused:amenity: Key:disused:amenity @@ -4353,6 +4519,7 @@ en: drive_through: Key:drive through drive_thru: Key:drive thru driving_side: Key:driving side + dryer: Key:dryer duration: Key:duration earthquake: Key:earthquake earthquake:damage: Key:earthquake:damage @@ -4360,6 +4527,7 @@ en: ele: Key:ele ele:NHN: Key:ele:NHN ele:local: Key:ele:local + electricity: Key:electricity electrified: Key:electrified email: Key:email embankment: Key:embankment @@ -4402,7 +4570,6 @@ en: finance_agent: Key:finance agent fire_boundary: Key:fire boundary fire_hydrant: Key:fire hydrant - fire_hydrant:type: Key:fire hydrant:type fire_object:type: Key:fire object:type fire_operator: Key:fire operator fire_rank: Key:fire rank @@ -4414,13 +4581,17 @@ en: flood_mark: Key:flood mark flood_prone: Key:flood prone floor:material: Key:floor:material + flow_rate: Key:flow rate foot: Key:foot footway: Key:footway ford: Key:ford forestry: Key:forestry format: Key:format + format:top: Key:format:top fortification_type: Key:fortification type forward: Key:forward + fountain: Key:fountain + free_refill: Key:free refill frequency: Key:frequency fridge: Key:fridge from: Key:from @@ -4431,6 +4602,7 @@ en: fuel:E10: Key:fuel:E10 fuel:GTL_diesel: Key:fuel:GTL diesel fuel:HGV_diesel: Key:fuel:HGV diesel + fuel:LH2: Key:fuel:LH2 fuel:adblue: Key:fuel:adblue fuel:alcohol: Key:fuel:alcohol fuel:biodiesel: Key:fuel:biodiesel @@ -4463,6 +4635,7 @@ en: garden:style: Key:garden:style garden:type: Key:garden:type gauge: Key:gauge + gender_segregated: Key:gender segregated generator:method: Key:generator:method generator:output: Key:generator:output generator:output:biogas: Key:generator:output:biogas @@ -4481,6 +4654,7 @@ en: generator:type: Key:generator:type genus: Key:genus genus:de: Key:genus:de + genus:ru: Key:genus:ru geocodigo: Key:geocodigo geological: Key:geological geothermal: Key:geothermal @@ -4505,7 +4679,11 @@ en: gun_emplacement_type: Key:gun emplacement type gun_turret: Key:gun turret gvr:code: Key:gvr:code + handicap: Key:handicap handrail: Key:handrail + handrail:center: Key:handrail:center + handrail:left: Key:handrail:left + handrail:right: Key:handrail:right happy_hours: Key:happy hours harbour: Key:harbour harbour:category: Key:harbour:category @@ -4521,9 +4699,12 @@ en: healthcare: Key:healthcare healthcare:speciality: Key:healthcare:speciality height: Key:height + height:hub: Key:height:hub heritage: Key:heritage hgv: Key:hgv + hgv_articulated: Key:hgv articulated high_water_mark: Key:high water mark + highchair: Key:highchair highspeed: Key:highspeed highway: Key:highway highway:category: Key:highway:category @@ -4562,6 +4743,7 @@ en: indoormark: Key:indoormark industrial: Key:industrial industry:isic_code: Key:industry:isic code + infant_bed: Key:infant bed informal: Key:informal information: Key:information inline_skates: Key:inline skates @@ -4590,7 +4772,9 @@ en: is_in:region: Key:is in:region is_in:sea: Key:is in:sea is_in:state: Key:is in:state + is_in:state_code: Key:is in:state code is_in:ward: Key:is in:ward + isced:level: Key:isced:level it:fvg:ctrn:code: Key:it:fvg:ctrn:code jel: Key:jel jetski:sales: Key:jetski:sales @@ -4623,13 +4807,12 @@ en: label: Key:label lacounty:ain: Key:lacounty:ain lacounty:bld_id: Key:lacounty:bld id - lactose_free: Key:lactose free ladder: Key:ladder lamp_mount: Key:lamp mount lamp_type: Key:lamp type + landfill:waste: Key:landfill:waste landmark: Key:landmark landuse: Key:landuse - lane_hint: Key:lane hint lanes: Key:lanes lanes:backward: Key:lanes:backward lanes:both_ways: Key:lanes:both ways @@ -4638,6 +4821,7 @@ en: lanes:psv: Key:lanes:psv lanes:psv:backward: Key:lanes:psv:backward lanes:psv:forward: Key:lanes:psv:forward + language:LL: Key:language:LL lawyer: Key:lawyer layer: Key:layer lcn_ref: Key:lcn ref @@ -4671,6 +4855,7 @@ en: long_name:ar: Key:long name:ar lottery: Key:lottery love_locks: Key:love locks + luminous: Key:luminous lunch: Key:lunch lunch:specials: Key:lunch:specials maintained: Key:maintained @@ -4695,7 +4880,10 @@ en: maxlength: Key:maxlength maxspeed: Key:maxspeed maxspeed:advisory: Key:maxspeed:advisory + maxspeed:backward: Key:maxspeed:backward maxspeed:conditional: Key:maxspeed:conditional + maxspeed:forward: Key:maxspeed:forward + maxspeed:hgv: Key:maxspeed:hgv maxspeed:practical: Key:maxspeed:practical maxspeed:source: Key:maxspeed:source maxspeed:type: Key:maxspeed:type @@ -4703,14 +4891,18 @@ en: maxweight: Key:maxweight maxwidth: Key:maxwidth maxwidth:physical: Key:maxwidth:physical + mcrb:criteria: Key:mcrb:criteria mdb_id: Key:mdb id measurement: Key:measurement medical_supply: Key:medical supply megalith_type: Key:megalith type + membership: Key:membership memorial: Key:memorial memorial:type: Key:memorial:type message: Key:message + mhs:inscription_date: Key:mhs:inscription date microbrewery: Key:microbrewery + milestone_type: Key:milestone type military: Key:military min_age: Key:min age min_height: Key:min height @@ -4745,10 +4937,13 @@ en: motorcycle: Key:motorcycle motorcycle:clothes: Key:motorcycle:clothes motorcycle:conditional: Key:motorcycle:conditional + motorcycle:lanes: Key:motorcycle:lanes + motorcycle:parking: Key:motorcycle:parking motorcycle:parts: Key:motorcycle:parts motorcycle:rental: Key:motorcycle:rental motorcycle:repair: Key:motorcycle:repair motorcycle:sales: Key:motorcycle:sales + motorcycle:scale: Key:motorcycle:scale motorcycle:type: Key:motorcycle:type motorcycle:tyres: Key:motorcycle:tyres motorhome: Key:motorhome @@ -4770,20 +4965,24 @@ en: name:be: Key:name:be name:be-tarask: Key:name:be-tarask name:ber: Key:name:ber + name:bn: Key:name:bn name:botanical: Key:name:botanical name:br: Key:name:br name:ca: Key:name:ca name:cs: Key:name:cs name:cy: Key:name:cy + name:da: Key:name:da name:de: Key:name:de name:dv: Key:name:dv name:el: Key:name:el name:en: Key:name:en name:eo: Key:name:eo name:es: Key:name:es + name:et: Key:name:et name:etymology: Key:name:etymology name:etymology:wikipedia: Key:name:etymology:wikipedia name:eu: Key:name:eu + name:fa: Key:name:fa name:fi: Key:name:fi name:fr: Key:name:fr name:fy: Key:name:fy @@ -4791,22 +4990,28 @@ en: name:gd: Key:name:gd name:he: Key:name:he name:hi: Key:name:hi + name:hr: Key:name:hr name:hu: Key:name:hu + name:hy: Key:name:hy name:io: Key:name:io name:it: Key:name:it name:ja: Key:name:ja name:ja-Hira: Key:name:ja-Hira name:jbo: Key:name:jbo + name:ka: Key:name:ka name:kab: Key:name:kab name:kn: Key:name:kn name:kn:iso15919: Key:name:kn:iso15919 name:ko: Key:name:ko + name:ko-Latn: Key:name:ko-Latn name:ko_rm: Key:name:ko rm name:ku: Key:name:ku name:left: Key:name:left name:left:ar: Key:name:left:ar name:left:fr: Key:name:left:fr name:lg: Key:name:lg + name:lt: Key:name:lt + name:lv: Key:name:lv name:mg: Key:name:mg name:mk: Key:name:mk name:ml: Key:name:ml @@ -4818,15 +5023,19 @@ en: name:nov: Key:name:nov name:pl: Key:name:pl name:prefix: Key:name:prefix + name:prefix:be: Key:name:prefix:be name:pronunciation: Key:name:pronunciation name:pt: Key:name:pt name:right: Key:name:right name:right:ar: Key:name:right:ar + name:ro: Key:name:ro name:ru: Key:name:ru name:ru:word_stress: Key:name:ru:word stress name:sc: Key:name:sc name:sk: Key:name:sk name:sl: Key:name:sl + name:sr: Key:name:sr + name:sr-Latn: Key:name:sr-Latn name:suffix: Key:name:suffix name:sv: Key:name:sv name:ta: Key:name:ta @@ -4836,8 +5045,12 @@ en: name:tr: Key:name:tr name:tzl: Key:name:tzl name:uk: Key:name:uk + name:ur: Key:name:ur name:vo: Key:name:vo + name:wikipedia: Key:name:wikipedia + name:yue: Key:name:yue name:zh: Key:name:zh + name:zh-sg: Key:name:zh-sg name_1: Key:name 1 narrow: Key:narrow nat_name: Key:nat name @@ -4860,6 +5073,7 @@ en: ncn_milepost: Key:ncn milepost ncn_ref: Key:ncn ref network: Key:network + network:wikidata: Key:network:wikidata no-barnehage:nsrid: Key:no-barnehage:nsrid noaddress: Key:noaddress noexit: Key:noexit @@ -4879,19 +5093,26 @@ en: nursery: Key:nursery nvdb:date: Key:nvdb:date nvdb:id: Key:nvdb:id + observatory:type: Key:observatory:type obstacle: Key:obstacle occurrence: Key:occurrence office: Key:office official_name: Key:official name official_name:ar: Key:official name:ar + official_name:be: Key:official name:be official_ref: Key:official ref offshore: Key:offshore ois:fixme: Key:ois:fixme old_name: Key:old name old_name:ar: Key:old name:ar + old_name:be: Key:old name:be old_name:etymology:wikidata: Key:old name:etymology:wikidata + old_name:pl: Key:old name:pl + old_name:ru: Key:old name:ru + old_name:uk: Key:old name:uk old_railway_operator: Key:old railway operator old_ref: Key:old ref + old_ref:legislative: Key:old ref:legislative old_ref_legislative: Key:old ref legislative oneclass: Key:oneclass oneway: Key:oneway @@ -4902,18 +5123,23 @@ en: openfire: Key:openfire opening_date: Key:opening date opening_hours: Key:opening hours + opening_hours:atm: Key:opening hours:atm opening_hours:kitchen: Key:opening hours:kitchen openplaques:id: Key:openplaques:id openplaques_plaque: Key:openplaques plaque opensource: Key:opensource operator: Key:operator operator:MNC: Key:operator:MNC + operator:be: Key:operator:be + operator:en: Key:operator:en + operator:ru: Key:operator:ru operator:type: Key:operator:type operator:wikipedia: Key:operator:wikipedia organic: Key:organic orientation: Key:orientation orienteering: Key:orienteering origin: Key:origin + orv: Key:orv osak: Key:osak osak:identifier: Key:osak:identifier osak:municipality_no: Key:osak:municipality no @@ -4935,6 +5161,7 @@ en: ownership: Key:ownership par: Key:par parish: Key:parish + park:type: Key:park:type parking: Key:parking parking:condition: Key:parking:condition parking:condition:both: Key:parking:condition:both @@ -4956,11 +5183,16 @@ en: paved:date: Key:paved:date payment: Key:payment payment:account_cards: Key:payment:account cards + payment:american_express: Key:payment:american express payment:cash: Key:payment:cash payment:coins: Key:payment:coins + payment:contactless: Key:payment:contactless payment:credit_cards: Key:payment:credit cards + payment:debit_cards: Key:payment:debit cards payment:electronic_purses: Key:payment:electronic purses payment:foo: Key:payment:foo + payment:girocard: Key:payment:girocard + payment:maestro: Key:payment:maestro payment:mastercard: Key:payment:mastercard payment:mir: Key:payment:mir payment:none: Key:payment:none @@ -5005,8 +5237,10 @@ en: 'playground:': 'Key:playground:' playground:theme: Key:playground:theme point: Key:point + pole:type: Key:pole:type police: Key:police population: Key:population + population:date: Key:population:date population_rank: Key:population rank post_box:type: Key:post box:type post_office:type: Key:post office:type @@ -5019,6 +5253,7 @@ en: power_supply: Key:power supply power_supply:schedule: Key:power supply:schedule preschool: Key:preschool + pressure: Key:pressure previous: Key:previous previous:access: Key:previous:access previous:vehicle: Key:previous:vehicle @@ -5032,6 +5267,7 @@ en: protected: Key:protected protection_title: Key:protection title prow_ref: Key:prow ref + pruning: Key:pruning psv: Key:psv public_bookcase:type: Key:public bookcase:type public_transport: Key:public transport @@ -5065,6 +5301,8 @@ en: ramp:stroller: Key:ramp:stroller ramp:wheelchair: Key:ramp:wheelchair ramsar: Key:ramsar + razed: Key:razed + 'razed:': 'Key:razed:' rcn_ref: Key:rcn ref real_ale: Key:real ale real_cider: Key:real cider @@ -5099,6 +5337,7 @@ en: ref:IFOPT: Key:ref:IFOPT ref:INSEE: Key:ref:INSEE ref:ISTAT: Key:ref:ISTAT + ref:NLPG:UPRN:1: Key:ref:NLPG:UPRN:1 ref:NPLG:UPRN:1: Key:ref:NPLG:UPRN:1 ref:TECB: Key:ref:TECB ref:TECC: Key:ref:TECC @@ -5123,12 +5362,15 @@ en: ref:isil: Key:ref:isil ref:kmb: Key:ref:kmb ref:lor: Key:ref:lor + ref:mcrb: Key:ref:mcrb ref:mhs: Key:ref:mhs ref:miaaddr: Key:ref:miaaddr ref:miabldg: Key:ref:miabldg + ref:mise: Key:ref:mise ref:mobil-parken.de: Key:ref:mobil-parken.de ref:ortsnetz: Key:ref:ortsnetz ref:penndot: Key:ref:penndot + ref:raa: Key:ref:raa ref:ruian: Key:ref:ruian ref:ruian:addr: Key:ref:ruian:addr ref:ruian:building: Key:ref:ruian:building @@ -5140,6 +5382,7 @@ en: ref:sitp: Key:ref:sitp ref:taskey: Key:ref:taskey ref:vatin: Key:ref:vatin + ref:vatin:hu: Key:ref:vatin:hu ref:vorwahl: Key:ref:vorwahl ref:wawa: Key:ref:wawa ref:whc: Key:ref:whc @@ -5160,6 +5403,7 @@ en: reservation: Key:reservation residential: Key:residential resource: Key:resource + restaurant: Key:restaurant restriction:conditional: Key:restriction:conditional retreat: Key:retreat retroreflecting: Key:retroreflecting @@ -5173,11 +5417,13 @@ en: roof:colour: Key:roof:colour roof:direction: Key:roof:direction roof:material: Key:roof:material + roof:shape: Key:roof:shape room: Key:room rooms: Key:rooms rotor:diameter: Key:rotor:diameter roundtrip: Key:roundtrip route: Key:route + route_availability: Key:route availability route_master: Key:route master route_ref: Key:route ref route_ref:De_Lijn: Key:route ref:De Lijn @@ -5204,6 +5450,11 @@ en: sagns_id: Key:sagns id salt: Key:salt sanitary_dump_station: Key:sanitary dump station + sauna: Key:sauna + sauna:fuel: Key:sauna:fuel + sauna:heating: Key:sauna:heating + sauna:temperature: Key:sauna:temperature + sauna:water:description: Key:sauna:water:description scenic: Key:scenic school: Key:school seamark: Key:seamark @@ -5306,6 +5557,7 @@ en: sidewalk: Key:sidewalk sidewalk_orientation: Key:sidewalk orientation sign: Key:sign + sinkhole: Key:sinkhole site_type: Key:site type size: Key:size ski: Key:ski @@ -5327,6 +5579,8 @@ en: socket: Key:socket sorting_name: Key:sorting name sorting_name:ar: Key:sorting name:ar + sorting_name:be: Key:sorting name:be + sorting_name:ru: Key:sorting name:ru source: Key:source source:ProRail: Key:source:ProRail source:addr: Key:source:addr @@ -5338,7 +5592,10 @@ en: source:ja: Key:source:ja source:loc: Key:source:loc source:maxspeed: Key:source:maxspeed + source:maxspeed:backward: Key:source:maxspeed:backward + source:maxspeed:forward: Key:source:maxspeed:forward source:name: Key:source:name + source:population: Key:source:population source:position: Key:source:position source:postcode: Key:source:postcode source:ref: Key:source:ref @@ -5348,6 +5605,8 @@ en: species:cs: Key:species:cs species:de: Key:species:de species:en: Key:species:en + species:ru: Key:species:ru + species:wikidata: Key:species:wikidata speech_input: Key:speech input speech_input:lg: Key:speech input:lg speech_output: Key:speech output @@ -5371,10 +5630,13 @@ en: stop: Key:stop storage_area: Key:storage area stranded: Key:stranded + strapline: Key:strapline stream: Key:stream stroller: Key:stroller + structure: Key:structure sub_sea: Key:sub sea subject: Key:subject + subject:wikipedia: Key:subject:wikipedia subsea: Key:subsea substance: Key:substance substation: Key:substation @@ -5412,6 +5674,7 @@ en: technical_type: Key:technical type technology: Key:technology telecom: Key:telecom + telescope:type: Key:telescope:type temporary: Key:temporary tenant: Key:tenant tents: Key:tents @@ -5438,12 +5701,16 @@ en: toilets:type: Key:toilets:type toilets:wheelchair: Key:toilets:wheelchair toll: Key:toll + toll:hgv: Key:toll:hgv + toll:motorcycle: Key:toll:motorcycle topmark: Key:topmark topmark:colour: Key:topmark:colour touring: Key:touring tourism: Key:tourism tourist_bus: Key:tourist bus + tower:construction: Key:tower:construction tower:type: Key:tower:type + townhall:type: Key:townhall:type tracks: Key:tracks tracktype: Key:tracktype traffic: Key:traffic @@ -5461,10 +5728,13 @@ en: traffic_signals:turn:forward: Key:traffic signals:turn:forward traffic_signals:vibration: Key:traffic signals:vibration trail_visibility: Key:trail visibility + trailblazed: Key:trailblazed trailer: Key:trailer train: Key:train tram: Key:tram + transformer:devices: Key:transformer:devices trees: Key:trees + trench: Key:trench trolley_wire: Key:trolley wire trolleybus: Key:trolleybus tsunami: Key:tsunami @@ -5494,8 +5764,11 @@ en: usage: Key:usage user_defined_other: Key:user defined other utahagrc:parcelid: Key:utahagrc:parcelid + validate:ants:yellow: Key:validate:ants:yellow validate:no_name: Key:validate:no name validate:no_ref: Key:validate:no ref + vegan: Key:vegan + vegetarian: Key:vegetarian vehicle: Key:vehicle vehicle:conditional: Key:vehicle:conditional verge: Key:verge @@ -5504,10 +5777,13 @@ en: visibility: Key:visibility voltage: Key:voltage wall:material: Key:wall:material + washing_machine: Key:washing machine waste: Key:waste waste_basket: Key:waste basket water: Key:water + water_characteristic: Key:water characteristic water_point: Key:water point + water_system: Key:water system waterway: Key:waterway way_area: Key:way area website: Key:website @@ -5522,8 +5798,26 @@ en: wikimedia_commons: Key:wikimedia commons wikipedia: Key:wikipedia wikipedia:ar: Key:wikipedia:ar + wikipedia:be: Key:wikipedia:be + wikipedia:de: Key:wikipedia:de wikipedia:en: Key:wikipedia:en + wikipedia:fr: Key:wikipedia:fr + wikipedia:pl: Key:wikipedia:pl + windings: Key:windings + windings:configuration: Key:windings:configuration + windings:primary: Key:windings:primary + windings:secondary: Key:windings:secondary + windings:tertiary: Key:windings:tertiary + wine:grape: Key:wine:grape + wine:region: Key:wine:region + wine:type: Key:wine:type + wine:vineyard: Key:wine:vineyard + winery: Key:winery winter_road: Key:winter road + winter_service: Key:winter service + winter_service:gritting: Key:winter service:gritting + winter_service:priority: Key:winter service:priority + winter_service:salting: Key:winter service:salting wires: Key:wires woeid: Key:woeid wood: Key:wood @@ -5531,6 +5825,7 @@ en: workrules: Key:workrules www.prezzibenzina.it: Key:www.prezzibenzina.it xmas:feature: Key:xmas:feature + xmpp: Key:xmpp year_of_construction: Key:year of construction yh:LINE_NAME: Key:yh:LINE NAME yh:LINE_NUM: Key:yh:LINE NUM @@ -5597,6 +5892,11 @@ en: aerialway=station: Tag:aerialway=station aerialway=t-bar: Tag:aerialway=t-bar aerialway=zip_line: Tag:aerialway=zip line + aerodrome:type=airfield: Tag:aerodrome:type=airfield + aerodrome:type=gliding: Tag:aerodrome:type=gliding + aerodrome:type=international: Tag:aerodrome:type=international + aerodrome:type=private: Tag:aerodrome:type=private + aerodrome:type=regional: Tag:aerodrome:type=regional aeroway=aerodrome: Tag:aeroway=aerodrome aeroway=airport: Tag:aeroway=airport aeroway=airstrip: Tag:aeroway=airstrip @@ -5606,6 +5906,7 @@ en: aeroway=hangar: Tag:aeroway=hangar aeroway=helipad: Tag:aeroway=helipad aeroway=heliport: Tag:aeroway=heliport + aeroway=highway_strip: Tag:aeroway=highway strip aeroway=holding_position: Tag:aeroway=holding position aeroway=landingpad: Tag:aeroway=landingpad aeroway=launchpad: Tag:aeroway=launchpad @@ -5645,7 +5946,6 @@ en: amenity=bicycle_repair_station: Tag:amenity=bicycle repair station amenity=bicycle_trailer_sharing: Tag:amenity=bicycle trailer sharing amenity=biergarten: Tag:amenity=biergarten - amenity=bikeshed: Tag:amenity=bikeshed amenity=boat_rental: Tag:amenity=boat rental amenity=boat_sharing: Tag:amenity=boat sharing amenity=boat_storage: Tag:amenity=boat storage @@ -5655,7 +5955,6 @@ en: amenity=bus_station: Tag:amenity=bus station amenity=bus_stop: Tag:amenity=bus stop amenity=cafe: Tag:amenity=cafe - amenity=canoe_hire: Tag:amenity=canoe hire amenity=car_pooling: Tag:amenity=car pooling amenity=car_rental: Tag:amenity=car rental amenity=car_repair: Tag:amenity=car repair @@ -5668,6 +5967,7 @@ en: amenity=cinema: Tag:amenity=cinema amenity=citymap_post: Tag:amenity=citymap post amenity=clinic: Tag:amenity=clinic + amenity=cloakroom: Tag:amenity=cloakroom amenity=clock: Tag:amenity=clock amenity=club: Tag:amenity=club amenity=coast_guard: Tag:amenity=coast guard @@ -5677,6 +5977,7 @@ en: amenity=community_centre: Tag:amenity=community centre amenity=compressed_air: Tag:amenity=compressed air amenity=concert_hall: Tag:amenity=concert hall + amenity=concession_stand: Tag:amenity=concession stand amenity=conference_centre: Tag:amenity=conference centre amenity=courthouse: Tag:amenity=courthouse amenity=coworking_space: Tag:amenity=coworking space @@ -5688,6 +5989,7 @@ en: amenity=dancing_school: Tag:amenity=dancing school amenity=dead_pub: Tag:amenity=dead pub amenity=dentist: Tag:amenity=dentist + amenity=device_charging_station: Tag:amenity=device charging station amenity=disused: Tag:amenity=disused amenity=dive_centre: Tag:amenity=dive centre amenity=doctor: Tag:amenity=doctor @@ -5695,13 +5997,13 @@ en: amenity=dog_bin: Tag:amenity=dog bin amenity=dog_waste_bin: Tag:amenity=dog waste bin amenity=dojo: Tag:amenity=dojo + amenity=dressing_room: Tag:amenity=dressing room amenity=drinking_water: Tag:amenity=drinking water amenity=driving_school: Tag:amenity=driving school amenity=dryer: Tag:amenity=dryer amenity=education: Tag:amenity=education amenity=embassy: Tag:amenity=embassy amenity=emergency_phone: Tag:amenity=emergency phone - amenity=emergency_service: Tag:amenity=emergency service amenity=ev_charging: Tag:amenity=ev charging amenity=events_venue: Tag:amenity=events venue amenity=exercise_point: Tag:amenity=exercise point @@ -5737,6 +6039,7 @@ en: amenity=ice_cream: Tag:amenity=ice cream amenity=internet_cafe: Tag:amenity=internet cafe amenity=jobcentre: Tag:amenity=jobcentre + amenity=juice_bar: Tag:amenity=juice bar amenity=kindergarten: Tag:amenity=kindergarten amenity=kiosk: Tag:amenity=kiosk amenity=kitchen: Tag:amenity=kitchen @@ -5748,6 +6051,7 @@ en: amenity=life_ring: Tag:amenity=life ring amenity=lifeboat_station: Tag:amenity=lifeboat station amenity=loading_dock: Tag:amenity=loading dock + amenity=lounger: Tag:amenity=lounger amenity=love_hotel: Tag:amenity=love hotel amenity=marae: Tag:amenity=marae amenity=marketplace: Tag:amenity=marketplace @@ -5770,6 +6074,7 @@ en: amenity=parking_space: Tag:amenity=parking space amenity=parkink: Tag:amenity=parkink amenity=payment_centre: Tag:amenity=payment centre + amenity=payment_terminal: Tag:amenity=payment terminal amenity=pharmacy: Tag:amenity=pharmacy amenity=photo_booth: Tag:amenity=photo booth amenity=place_of_worship: Tag:amenity=place of worship @@ -5787,7 +6092,6 @@ en: amenity=public_bath: Tag:amenity=public bath amenity=public_bookcase: Tag:amenity=public bookcase amenity=public_building: Tag:amenity=public building - amenity=public_hall: Tag:amenity=public hall amenity=ranger_station: Tag:amenity=ranger station amenity=reception_desk: Tag:amenity=reception desk amenity=recycling: Tag:amenity=recycling @@ -5811,6 +6115,7 @@ en: amenity=ski_rental: Tag:amenity=ski rental amenity=ski_school: Tag:amenity=ski school amenity=smoking_area: Tag:amenity=smoking area + amenity=snow_removal_station: Tag:amenity=snow removal station amenity=social_centre: Tag:amenity=social centre amenity=social_facility: Tag:amenity=social facility amenity=spa: Tag:amenity=spa @@ -5824,7 +6129,6 @@ en: amenity=swingerclub: Tag:amenity=swingerclub amenity=table: Tag:amenity=table amenity=taxi: Tag:amenity=taxi - amenity=taxi_point: Tag:amenity=taxi point amenity=telephone: Tag:amenity=telephone amenity=television: Tag:amenity=television amenity=theatre: Tag:amenity=theatre @@ -5834,6 +6138,7 @@ en: amenity=toilets: Tag:amenity=toilets amenity=townhall: Tag:amenity=townhall amenity=trolley_bay: Tag:amenity=trolley bay + amenity=tuition: Tag:amenity=tuition amenity=university: Tag:amenity=university amenity=vacuum_cleaner: Tag:amenity=vacuum cleaner amenity=vehicle_inspection: Tag:amenity=vehicle inspection @@ -5854,9 +6159,14 @@ en: amenity=yacht_club: Tag:amenity=yacht club amenity=youth_centre: Tag:amenity=youth centre aminety=sceptic_tank: Tag:aminety=sceptic tank + animal=horse_walker: Tag:animal=horse walker animal=school: Tag:animal=school animated=trivision_blades: Tag:animated=trivision blades animated=winding_posters: Tag:animated=winding posters + area:highway=cycleway: Tag:area:highway=cycleway + area:highway=footway: Tag:area:highway=footway + area:highway=path: Tag:area:highway=path + area:highway=pedestrian: Tag:area:highway=pedestrian artwork_type=sculpture: Tag:artwork type=sculpture artwork_type=statue: Tag:artwork type=statue atm=no: Tag:atm=no @@ -5864,6 +6174,7 @@ en: attraction=animal: Tag:attraction=animal attraction=maze: Tag:attraction=maze attraction=train: Tag:attraction=train + attraction=water_slide: Tag:attraction=water slide baby_hatch=yes: Tag:baby hatch=yes bakehouse: Tag:bakehouse baking_oven: Tag:baking oven @@ -5917,6 +6228,10 @@ en: barrier=turnstile: Tag:barrier=turnstile barrier=wall: Tag:barrier=wall baseball=softball: Tag:baseball=softball + bath:type=hammam: Tag:bath:type=hammam + bath:type=hot_spring: Tag:bath:type=hot spring + bath:type=onsen: Tag:bath:type=onsen + bath:type=thermal: Tag:bath:type=thermal bay=fjord: Tag:bay=fjord bicycle=designated: Tag:bicycle=designated bicycle=official: Tag:bicycle=official @@ -5941,15 +6256,20 @@ en: boundary=protected_area: Tag:boundary=protected area boundary=regional_park: Tag:boundary=regional park boundary=timezone: Tag:boundary=timezone + boundary=urban: Tag:boundary=urban boundary=vice_county: Tag:boundary=vice county boundary=water_protection_area: Tag:boundary=water protection area + brand=Harley-Davidson: Tag:brand=Harley-Davidson brand=KTM: Tag:brand=KTM + brand=Moto_Guzzi: Tag:brand=Moto Guzzi brand=Zero: Tag:brand=Zero bridge:movable=bascule: Tag:bridge:movable=bascule bridge:movable=drawbridge: Tag:bridge:movable=drawbridge bridge:movable=lift: Tag:bridge:movable=lift + bridge:movable=retractable: Tag:bridge:movable=retractable bridge:movable=submersible: Tag:bridge:movable=submersible bridge:movable=swing: Tag:bridge:movable=swing + bridge:movable=tilt: Tag:bridge:movable=tilt bridge:movable=transporter: Tag:bridge:movable=transporter bridge:structure=arch: Tag:bridge:structure=arch bridge:structure=beam: Tag:bridge:structure=beam @@ -6001,6 +6321,7 @@ en: building=font: Tag:building=font building=garage: Tag:building=garage building=garages: Tag:building=garages + building=government: Tag:building=government building=grandstand: Tag:building=grandstand building=greenhouse: Tag:building=greenhouse building=ground_station: Tag:building=ground station @@ -6028,10 +6349,13 @@ en: building=ruins: Tag:building=ruins building=school: Tag:building=school building=semi: Tag:building=semi + building=semidetached_house: Tag:building=semidetached house building=service: Tag:building=service building=shed: Tag:building=shed building=shrine: Tag:building=shrine building=slurry_tank: Tag:building=slurry tank + building=sports_centre: Tag:building=sports centre + building=sports_hall: Tag:building=sports hall building=stable: Tag:building=stable building=stadium: Tag:building=stadium building=static_caravan: Tag:building=static caravan @@ -6042,6 +6366,7 @@ en: building=tech_cab: Tag:building=tech cab building=temple: Tag:building=temple building=terrace: Tag:building=terrace + building=toilets: Tag:building=toilets building=train_station: Tag:building=train station building=transformer_tower: Tag:building=transformer tower building=transportation: Tag:building=transportation @@ -6049,9 +6374,11 @@ en: building=warehouse: Tag:building=warehouse building=water_tower: Tag:building=water tower building=yes: Tag:building=yes + bunker_type=gun_emplacement: Tag:bunker type=gun emplacement bunker_type=hardened_aircraft_shelter: Tag:bunker type=hardened aircraft shelter bunker_type=munitions: Tag:bunker type=munitions bunker_type=pillbox: Tag:bunker type=pillbox + bunker_type=technical: Tag:bunker type=technical busway:left=lane: Tag:busway:left=lane busway:right=lane: Tag:busway:right=lane busway=lane: Tag:busway=lane @@ -6069,6 +6396,7 @@ en: clothes=motorcycle: Tag:clothes=motorcycle clothes=sports: Tag:clothes=sports clothes=underwear: Tag:clothes=underwear + club=amateur_radio: Tag:club=amateur radio club=automobile: Tag:club=automobile club=fan: Tag:club=fan club=scout: Tag:club=scout @@ -6095,11 +6423,13 @@ en: craft=clockmaker: Tag:craft=clockmaker craft=confectionery: Tag:craft=confectionery craft=cooper: Tag:craft=cooper + craft=dental_technician: Tag:craft=dental technician craft=distillery: Tag:craft=distillery craft=dressmaker: Tag:craft=dressmaker craft=electrican: Tag:craft=electrican craft=electrician: Tag:craft=electrician craft=electronics_repair: Tag:craft=electronics repair + craft=embroiderer: Tag:craft=embroiderer craft=engraver: Tag:craft=engraver craft=floorer: Tag:craft=floorer craft=gardener: Tag:craft=gardener @@ -6114,6 +6444,7 @@ en: craft=key_cutter: Tag:craft=key cutter craft=locksmith: Tag:craft=locksmith craft=metal_construction: Tag:craft=metal construction + craft=mint: Tag:craft=mint craft=musical_instrument: Tag:craft=musical instrument craft=oil_mill: Tag:craft=oil mill craft=optician: Tag:craft=optician @@ -6127,6 +6458,7 @@ en: craft=plasterer: Tag:craft=plasterer craft=plumber: Tag:craft=plumber craft=pottery: Tag:craft=pottery + craft=printmaker: Tag:craft=printmaker craft=rigger: Tag:craft=rigger craft=roofer: Tag:craft=roofer craft=saddler: Tag:craft=saddler @@ -6178,6 +6510,7 @@ en: cuisine=tea_shop: Tag:cuisine=tea shop cycle_network=US:CA:SF: Tag:cycle network=US:CA:SF cycle_network=US:GA: Tag:cycle network=US:GA + cycle_network=US:LA:NO: Tag:cycle network=US:LA:NO cycle_network=US:NC: Tag:cycle network=US:NC cycle_network=US:NM: Tag:cycle network=US:NM cycle_network=US:NY: Tag:cycle network=US:NY @@ -6206,10 +6539,12 @@ en: defensive=bergfried: Tag:defensive=bergfried defensive=donjon: Tag:defensive=donjon defensive=keep: Tag:defensive=keep + demolished=yes: Tag:demolished=yes dennert_fir_tree=yes: Tag:dennert fir tree=yes denomination=mormon: Tag:denomination=mormon denomination=reformed: Tag:denomination=reformed denotation=cluster: Tag:denotation=cluster + destroyed=yes: Tag:destroyed=yes diplomatic=ambassadors_residence: Tag:diplomatic=ambassadors residence diplomatic=consulate: Tag:diplomatic=consulate diplomatic=consulate_general: Tag:diplomatic=consulate general @@ -6221,6 +6556,8 @@ en: dock=drydock: Tag:dock=drydock dock=floating: Tag:dock=floating dock=tidal: Tag:dock=tidal + electrified=contact_line: Tag:electrified=contact line + electrified=rail: Tag:electrified=rail emergency=access_point: Tag:emergency=access point emergency=aed: Tag:emergency=aed emergency=ambulance_station: Tag:emergency=ambulance station @@ -6228,23 +6565,33 @@ en: emergency=coast_guard: Tag:emergency=coast guard emergency=defibrilator: Tag:emergency=defibrilator emergency=defibrillator: Tag:emergency=defibrillator + emergency=disaster_response: Tag:emergency=disaster response emergency=dry_riser: Tag:emergency=dry riser emergency=dry_riser_inlet: Tag:emergency=dry riser inlet emergency=emergency_ward_entrance: Tag:emergency=emergency ward entrance + emergency=fire_alarm: Tag:emergency=fire alarm + emergency=fire_alarm_box: Tag:emergency=fire alarm box emergency=fire_extinguisher: Tag:emergency=fire extinguisher emergency=fire_flapper: Tag:emergency=fire flapper emergency=fire_hose: Tag:emergency=fire hose emergency=fire_hydrant: Tag:emergency=fire hydrant + emergency=fire_point_stand: Tag:emergency=fire point stand + emergency=fire_sand_bin: Tag:emergency=fire sand bin emergency=fire_water_pond: Tag:emergency=fire water pond + emergency=first_aid: Tag:emergency=first aid + emergency=first_aid_kit: Tag:emergency=first aid kit emergency=landing_site: Tag:emergency=landing site emergency=life_ring: Tag:emergency=life ring emergency=lifeboat_station: Tag:emergency=lifeboat station + emergency=lifeguard: Tag:emergency=lifeguard emergency=lifeguard_base: Tag:emergency=lifeguard base emergency=lifeguard_place: Tag:emergency=lifeguard place emergency=lifeguard_platform: Tag:emergency=lifeguard platform emergency=lifeguard_tower: Tag:emergency=lifeguard tower emergency=marine_refuge: Tag:emergency=marine refuge + emergency=mountain_rescue: Tag:emergency=mountain rescue emergency=phone: Tag:emergency=phone + emergency=rescue_box: Tag:emergency=rescue box emergency=ses_station: Tag:emergency=ses station emergency=siamese: Tag:emergency=siamese emergency=siren: Tag:emergency=siren @@ -6263,11 +6610,15 @@ en: esperanto=esperanto: Tag:esperanto=esperanto estuary=yes: Tag:estuary=yes fast_food=cafeteria: Tag:fast food=cafeteria - food=gourmet: Tag:food=gourmet + flood_mark=painting: Tag:flood mark=painting + flood_mark=plaque: Tag:flood mark=plaque foot=designated: Tag:foot=designated foot=official: Tag:foot=official footway=crossing: Tag:footway=crossing footway=sidewalk: Tag:footway=sidewalk + ford=boat: Tag:ford=boat + ford=stepping_stones: Tag:ford=stepping stones + ford=yes: Tag:ford=yes fortification_type=hill_fort: Tag:fortification type=hill fort fortification_type=limes: Tag:fortification type=limes fortification_type=ring_ditch: Tag:fortification type=ring ditch @@ -6336,11 +6687,15 @@ en: golf=tee: Tag:golf=tee golf=water_hazard: Tag:golf=water hazard government=audit: Tag:government=audit + government=cadaster: Tag:government=cadaster + government=customs: Tag:government=customs + government=healthcare: Tag:government=healthcare government=ministry: Tag:government=ministry government=prosecutor: Tag:government=prosecutor government=register_office: Tag:government=register office government=statistics: Tag:government=statistics government=tax: Tag:government=tax + government=youth_welfare_department: Tag:government=youth welfare department grit_bin: Tag:grit bin guidepost=simple: Tag:guidepost=simple harbour:category=RoRo: Tag:harbour:category=RoRo @@ -6444,12 +6799,15 @@ en: historic=boundary_stone: Tag:historic=boundary stone historic=cannon: Tag:historic=cannon historic=castle: Tag:historic=castle + historic=castle_wall: Tag:historic=castle wall historic=charcoal_pile: Tag:historic=charcoal pile + historic=church: Tag:historic=church historic=city_gate: Tag:historic=city gate historic=city_wall: Tag:historic=city wall historic=citywalls: Tag:historic=citywalls historic=event: Tag:historic=event historic=farm: Tag:historic=farm + historic=flood_mark: Tag:historic=flood mark historic=fort: Tag:historic=fort historic=gallows: Tag:historic=gallows historic=heritage: Tag:historic=heritage @@ -6459,6 +6817,7 @@ en: historic=memorial: Tag:historic=memorial historic=milestone: Tag:historic=milestone historic=mine: Tag:historic=mine + historic=mine_shaft: Tag:historic=mine shaft historic=monastery: Tag:historic=monastery historic=monument: Tag:historic=monument historic=optical_telegraph: Tag:historic=optical telegraph @@ -6478,6 +6837,10 @@ en: historic=wreck: Tag:historic=wreck horse=designated: Tag:horse=designated hunting=raised_hide: Tag:hunting=raised hide + indoor=area: Tag:indoor=area + indoor=corridor: Tag:indoor=corridor + indoor=room: Tag:indoor=room + indoor=wall: Tag:indoor=wall indoormark=beacon: Tag:indoormark=beacon industrial=aluminium_smelting: Tag:industrial=aluminium smelting industrial=auto_wrecker: Tag:industrial=auto wrecker @@ -6497,6 +6860,7 @@ en: industrial=oil: Tag:industrial=oil industrial=oil_mill: Tag:industrial=oil mill industrial=port: Tag:industrial=port + industrial=rice_mill: Tag:industrial=rice mill industrial=salt_pond: Tag:industrial=salt pond industrial=sawmill: Tag:industrial=sawmill industrial=scrap_yard: Tag:industrial=scrap yard @@ -6514,6 +6878,7 @@ en: information=tactile_model: Tag:information=tactile model information=terminal: Tag:information=terminal internet_access=wlan: Tag:internet access=wlan + irrigation=pivot: Tag:irrigation=pivot junction=circular: Tag:junction=circular junction=crossing: Tag:junction=crossing junction=filter: Tag:junction=filter @@ -6536,7 +6901,6 @@ en: landmark=large_rock: Tag:landmark=large rock landmark=mast: Tag:landmark=mast landmark=memorial_plaque: Tag:landmark=memorial plaque - landmark=monument: Tag:landmark=monument landmark=obelisk: Tag:landmark=obelisk landmark=pillar: Tag:landmark=pillar landmark=radar_scanner: Tag:landmark=radar scanner @@ -6549,6 +6913,7 @@ en: landmark=windsock: Tag:landmark=windsock landuse=agriculture: Tag:landuse=agriculture landuse=allotments: Tag:landuse=allotments + landuse=animal_keeping: Tag:landuse=animal keeping landuse=apiary: Tag:landuse=apiary landuse=aquaculture: Tag:landuse=aquaculture landuse=basin: Tag:landuse=basin @@ -6558,6 +6923,7 @@ en: landuse=cemetery: Tag:landuse=cemetery landuse=churchyard: Tag:landuse=churchyard landuse=commercial: Tag:landuse=commercial + landuse=conservation: Tag:landuse=conservation landuse=construction: Tag:landuse=construction landuse=depot: Tag:landuse=depot landuse=farm: Tag:landuse=farm @@ -6572,6 +6938,7 @@ en: landuse=grave_yard: Tag:landuse=grave yard landuse=greenfield: Tag:landuse=greenfield landuse=greenhouse_horticulture: Tag:landuse=greenhouse horticulture + landuse=harbour: Tag:landuse=harbour landuse=highway: Tag:landuse=highway landuse=hop_garden: Tag:landuse=hop garden landuse=industrial: Tag:landuse=industrial @@ -6600,7 +6967,6 @@ en: landuse=traffic_island: Tag:landuse=traffic island landuse=trees: Tag:landuse=trees landuse=turbary: Tag:landuse=turbary - landuse=utility: Tag:landuse=utility landuse=village_green: Tag:landuse=village green landuse=vineyard: Tag:landuse=vineyard landuse=well: Tag:landuse=well @@ -6691,6 +7057,7 @@ en: level_crossing=uncontrolled: Tag:level crossing=uncontrolled line=bay: Tag:line=bay line=busbar: Tag:line=busbar + line=substation: Tag:line=substation lines=phone: Tag:lines=phone locality=subtownland: Tag:locality=subtownland locality=townland: Tag:locality=townland @@ -6698,6 +7065,7 @@ en: maintenance=gritting: Tag:maintenance=gritting man_made=MDF: Tag:man made=MDF man_made=adit: Tag:man made=adit + man_made=animal_trap: Tag:man made=animal trap man_made=antenna: Tag:man made=antenna man_made=archimedes_screw: Tag:man made=archimedes screw man_made=beacon: Tag:man made=beacon @@ -6707,6 +7075,7 @@ en: man_made=bunker_silo: Tag:man made=bunker silo man_made=cairn: Tag:man made=cairn man_made=campanile: Tag:man made=campanile + man_made=carpet_hanger: Tag:man made=carpet hanger man_made=chimney: Tag:man made=chimney man_made=clearcut: Tag:man made=clearcut man_made=communications_tower: Tag:man made=communications tower @@ -6725,6 +7094,7 @@ en: man_made=flagpole: Tag:man made=flagpole man_made=flare: Tag:man made=flare man_made=floating_storage: Tag:man made=floating storage + man_made=footwear_decontamination: Tag:man made=footwear decontamination man_made=frost_fan: Tag:man made=frost fan man_made=gasometer: Tag:man made=gasometer man_made=geoglyph: Tag:man made=geoglyph @@ -6819,6 +7189,7 @@ en: memorial=stele: Tag:memorial=stele memorial=stolperstein: Tag:memorial=stolperstein memorial=stone: Tag:memorial=stone + memorial=storm_surge_post: Tag:memorial=storm surge post memorial=war_memorial: Tag:memorial=war memorial microbrewery=yes: Tag:microbrewery=yes military=airfield: Tag:military=airfield @@ -6845,9 +7216,21 @@ en: mooring=sbm: Tag:mooring=sbm mooring=spm: Tag:mooring=spm mooring=visitor: Tag:mooring=visitor + motorcycle:theme=yes: Tag:motorcycle:theme=yes motorcycle:type=electric: Tag:motorcycle:type=electric motorcycle:type=sportbike: Tag:motorcycle:type=sportbike - motorcycle_friendly: Tag:motorcycle friendly + motorcycle_friendly=customary: Tag:motorcycle friendly=customary + museum=archaeological: Tag:museum=archaeological + museum=art: Tag:museum=art + museum=history: Tag:museum=history + museum=living_history: Tag:museum=living history + museum=local: Tag:museum=local + museum=military: Tag:museum=military + museum=nature: Tag:museum=nature + museum=open_air: Tag:museum=open air + museum=railway: Tag:museum=railway + museum=technology: Tag:museum=technology + museum=transport: Tag:museum=transport name=7-Eleven: Tag:name=7-Eleven name=BMO: Tag:name=BMO name=BMO_Bank_of_Montreal: Tag:name=BMO Bank of Montreal @@ -6871,6 +7254,7 @@ en: natural=bay: Tag:natural=bay natural=beach: Tag:natural=beach natural=bedrock: Tag:natural=bedrock + natural=birds_nest: Tag:natural=birds nest natural=blowhole: Tag:natural=blowhole natural=breaker: Tag:natural=breaker natural=cape: Tag:natural=cape @@ -6895,7 +7279,7 @@ en: natural=grassland: Tag:natural=grassland natural=gully: Tag:natural=gully natural=heath: Tag:natural=heath - natural=herb: Tag:natural=herb + natural=hill: Tag:natural=hill natural=hot_spring: Tag:natural=hot spring natural=lake: Tag:natural=lake natural=land: Tag:natural=land @@ -6931,6 +7315,7 @@ en: natural=termite_mound: Tag:natural=termite mound natural=tree: Tag:natural=tree natural=tree_row: Tag:natural=tree row + natural=tree_stump: Tag:natural=tree stump natural=tundra: Tag:natural=tundra natural=valley: Tag:natural=valley natural=volcano: Tag:natural=volcano @@ -7096,6 +7481,7 @@ en: network=US:TX:NASA: Tag:network=US:TX:NASA network=US:TX:RM: Tag:network=US:TX:RM network=US:TX:Spur: Tag:network=US:TX:Spur + network=US:TX:Wood: Tag:network=US:TX:Wood network=US:US: Tag:network=US:US network=US:UT: Tag:network=US:UT network=US:VA: Tag:network=US:VA @@ -7114,14 +7500,19 @@ en: network=jp:prefectural:nagano: Tag:network=jp:prefectural:nagano network=lcn: Tag:network=lcn network=lhn: Tag:network=lhn + network=lpn: Tag:network=lpn network=lwn: Tag:network=lwn network=ncn: Tag:network=ncn network=nextbike: Tag:network=nextbike network=nwn: Tag:network=nwn network=rcn: Tag:network=rcn network=rhn: Tag:network=rhn + network=rin: Tag:network=rin + network=rmn: Tag:network=rmn + network=rpn: Tag:network=rpn network=rwn: Tag:network=rwn noexit=no: Tag:noexit=no + observatory:type=astronomical: Tag:observatory:type=astronomical odbl=clean: Tag:odbl=clean office:realtor: Tag:office:realtor office=accountant: Tag:office=accountant @@ -7136,10 +7527,12 @@ en: office=educational_institution: Tag:office=educational institution office=employment_agency: Tag:office=employment agency office=energy_supplier: Tag:office=energy supplier + office=engineer: Tag:office=engineer office=estate_agent: Tag:office=estate agent office=financial: Tag:office=financial office=forestry: Tag:office=forestry office=foundation: Tag:office=foundation + office=geodesist: Tag:office=geodesist office=government: Tag:office=government office=guide: Tag:office=guide office=insurance: Tag:office=insurance @@ -7155,6 +7548,7 @@ en: office=parish: Tag:office=parish office=political_party: Tag:office=political party office=private_investigator: Tag:office=private investigator + office=property_management: Tag:office=property management office=quango: Tag:office=quango office=real_estate_agent: Tag:office=real estate agent office=realtor: Tag:office=realtor @@ -7166,6 +7560,7 @@ en: office=tax_advisor: Tag:office=tax advisor office=telecommunication: Tag:office=telecommunication office=therapist: Tag:office=therapist + office=tourist_accommodation: Tag:office=tourist accommodation office=travel_agent: Tag:office=travel agent office=water_utility: Tag:office=water utility office=yes: Tag:office=yes @@ -7197,6 +7592,7 @@ en: pilotage=office: Tag:pilotage=office pipeline=marker: Tag:pipeline=marker pipeline=substation: Tag:pipeline=substation + pipeline=surge_tank: Tag:pipeline=surge tank pipeline=valve: Tag:pipeline=valve piste:type=connection: Tag:piste:type=connection piste:type=downhill: Tag:piste:type=downhill @@ -7221,6 +7617,7 @@ en: place=quarter: Tag:place=quarter place=region: Tag:place=region place=sea: Tag:place=sea + place=shieling: Tag:place=shieling place=square: Tag:place=square place=state: Tag:place=state place=suburb: Tag:place=suburb @@ -7229,6 +7626,7 @@ en: placement=right_of:1: Tag:placement=right of:1 placement=transition: Tag:placement=transition pole=transition: Tag:pole=transition + power=busbar: Tag:power=busbar power=cable: Tag:power=cable power=cable_distribution_cabinet: Tag:power=cable distribution cabinet power=catenary_mast: Tag:power=catenary mast @@ -7238,6 +7636,7 @@ en: power=heliostat: Tag:power=heliostat power=insulator: Tag:power=insulator power=line: Tag:power=line + power=marker: Tag:power=marker power=minor_line: Tag:power=minor line power=outlet: Tag:power=outlet power=plant: Tag:power=plant @@ -7256,6 +7655,7 @@ en: priority=national: Tag:priority=national priority=regional: Tag:priority=regional prison_camp=concentration_camp: Tag:prison camp=concentration camp + prison_camp=extermination_camp: Tag:prison camp=extermination camp psv=designated: Tag:psv=designated public_transport=pay_scale_area: Tag:public transport=pay scale area public_transport=platform: Tag:public transport=platform @@ -7290,6 +7690,7 @@ en: railway=abandoned: Tag:railway=abandoned railway=buffer_stop: Tag:railway=buffer stop railway=crossing: Tag:railway=crossing + railway=crossing_controller: Tag:railway=crossing controller railway=derail: Tag:railway=derail railway=diamond: Tag:railway=diamond railway=disused: Tag:railway=disused @@ -7322,6 +7723,8 @@ en: railway=traverser: Tag:railway=traverser railway=turntable: Tag:railway=turntable railway=wash: Tag:railway=wash + railway=water_crane: Tag:railway=water crane + railway=water_tower: Tag:railway=water tower railway=yard: Tag:railway=yard recycling_type=container: Tag:recycling type=container religion=buddhist: Tag:religion=buddhist @@ -7332,6 +7735,7 @@ en: religion=multifaith: Tag:religion=multifaith religion=muslim: Tag:religion=muslim religion=pagan: Tag:religion=pagan + religion=self-realization_fellowship: Tag:religion=self-realization fellowship religion=shinto: Tag:religion=shinto religion=sikh: Tag:religion=sikh religion=taoist: Tag:religion=taoist @@ -7348,8 +7752,11 @@ en: route=bicycle: Tag:route=bicycle route=bus: Tag:route=bus route=canal: Tag:route=canal + route=canoe: Tag:route=canoe route=coach: Tag:route=coach route=detour: Tag:route=detour + route=evacuation: Tag:route=evacuation + route=ferrata: Tag:route=ferrata route=ferry: Tag:route=ferry route=fitness_trail: Tag:route=fitness trail route=foot: Tag:route=foot @@ -7359,6 +7766,7 @@ en: route=light_rail: Tag:route=light rail route=minibus: Tag:route=minibus route=monorail: Tag:route=monorail + route=motorboat: Tag:route=motorboat route=ncn: Tag:route=ncn route=nordic_walking: Tag:route=nordic walking route=pipeline: Tag:route=pipeline @@ -7372,6 +7780,7 @@ en: route=tracks: Tag:route=tracks route=train: Tag:route=train route=tram: Tag:route=tram + route=transhumance: Tag:route=transhumance route=trolleybus: Tag:route=trolleybus seamark:beacon_cardinal:colour_pattern=horizontal: Tag:seamark:beacon cardinal:colour pattern=horizontal @@ -7701,6 +8110,7 @@ en: service=spur: Tag:service=spur service=yard: Tag:service=yard shelter_type=basic_hut: Tag:shelter type=basic hut + shelter_type=field_shelter: Tag:shelter type=field shelter shelter_type=lean_to: Tag:shelter type=lean to shelter_type=public_transport: Tag:shelter type=public transport shop=*: Tag:shop=* @@ -7711,6 +8121,7 @@ en: shop=anime: Tag:shop=anime shop=antique: Tag:shop=antique shop=antiques: Tag:shop=antiques + shop=appliance: Tag:shop=appliance shop=art: Tag:shop=art shop=atv: Tag:shop=atv shop=audiologist: Tag:shop=audiologist @@ -7725,6 +8136,7 @@ en: shop=betting: Tag:shop=betting shop=beverages: Tag:shop=beverages shop=bicycle: Tag:shop=bicycle + shop=board: Tag:shop=board shop=boat: Tag:shop=boat shop=bookmaker: Tag:shop=bookmaker shop=books: Tag:shop=books @@ -7734,14 +8146,14 @@ en: shop=butcher: Tag:shop=butcher shop=camera: Tag:shop=camera shop=candles: Tag:shop=candles - shop=canoe_hire: Tag:shop=canoe hire + shop=cannabis: Tag:shop=cannabis shop=car: Tag:shop=car - shop=car_bodyshop: Tag:shop=car bodyshop shop=car_parts: Tag:shop=car parts shop=car_repair: Tag:shop=car repair shop=car_service: Tag:shop=car service shop=carpet: Tag:shop=carpet shop=cell_phones: Tag:shop=cell phones + shop=ceramics: Tag:shop=ceramics shop=chandler: Tag:shop=chandler shop=charity: Tag:shop=charity shop=cheese: Tag:shop=cheese @@ -7774,6 +8186,7 @@ en: shop=electrical: Tag:shop=electrical shop=electronics: Tag:shop=electronics shop=energy: Tag:shop=energy + shop=equestrian: Tag:shop=equestrian shop=erotic: Tag:shop=erotic shop=estate_agent: Tag:shop=estate agent shop=fabric: Tag:shop=fabric @@ -7826,7 +8239,7 @@ en: shop=herbalist: Tag:shop=herbalist shop=hifi: Tag:shop=hifi shop=hobby: Tag:shop=hobby - shop=household: Tag:shop=household + shop=hookah: Tag:shop=hookah shop=houseware: Tag:shop=houseware shop=hunting: Tag:shop=hunting shop=ice_cream: Tag:shop=ice cream @@ -7880,7 +8293,6 @@ en: shop=photo: Tag:shop=photo shop=photo_studio: Tag:shop=photo studio shop=photography: Tag:shop=photography - shop=piercing: Tag:shop=piercing shop=pottery: Tag:shop=pottery shop=printer_ink: Tag:shop=printer ink shop=printing: Tag:shop=printing @@ -7917,6 +8329,7 @@ en: shop=tickets: Tag:shop=tickets shop=tiles: Tag:shop=tiles shop=tobacco: Tag:shop=tobacco + shop=tool_hire: Tag:shop=tool hire shop=toy: Tag:shop=toy shop=toys: Tag:shop=toys shop=trade: Tag:shop=trade @@ -7941,8 +8354,6 @@ en: shop=winery: Tag:shop=winery shop=wool: Tag:shop=wool shop=yes: Tag:shop=yes - sign=no: Tag:sign=no - sign=yes: Tag:sign=yes signal_station=bridge: Tag:signal station=bridge signal_station=control: Tag:signal station=control signal_station=distress: Tag:signal station=distress @@ -7983,17 +8394,22 @@ en: social_facility=shelter: Tag:social facility=shelter social_facility=soup_kitchen: Tag:social facility=soup kitchen social_facility=workshop: Tag:social facility=workshop + source:addr=GURS: Tag:source:addr=GURS source:ele=barometric: Tag:source:ele=barometric source:geometry=ACT2016: Tag:source:geometry=ACT2016 source:geometry=ACTMapiRoads: Tag:source:geometry=ACTMapiRoads source:geometry=ACTMapiTP: Tag:source:geometry=ACTMapiTP source:geometry=Bing: Tag:source:geometry=Bing + source:geometry=NPWS_Estate: Tag:source:geometry=NPWS Estate source:geometry=NSW_LPI_Base_Map: Tag:source:geometry=NSW LPI Base Map source:geometry=NSW_LPI_Imagery: Tag:source:geometry=NSW LPI Imagery source:maxspeed=implicit: Tag:source:maxspeed=implicit source:name=LPI_NSW_Base_Map: Tag:source:name=LPI NSW Base Map + source:name=NPWS_Estate: Tag:source:name=NPWS Estate source:name=NSW_LPI_Base_Map: Tag:source:name=NSW LPI Base Map + source:position=NPWS_Estate: Tag:source:position=NPWS Estate source=ACT2016: Tag:source=ACT2016 + source=ACT2017: Tag:source=ACT2017 source=ACTMapiRoads: Tag:source=ACTMapiRoads source=ACTMapiTP: Tag:source=ACTMapiTP source=Bymiljøetaten: Tag:source=Bymiljøetaten @@ -8007,11 +8423,13 @@ en: source=LPI_NSW_Base_Map: Tag:source=LPI NSW Base Map source=LPI_NSW_Imagery: Tag:source=LPI NSW Imagery source=NAIP: Tag:source=NAIP + source=NPWS_Estate: Tag:source=NPWS Estate source=NSW_LPI_Base_Map: Tag:source=NSW LPI Base Map source=NSW_LPI_Imagery: Tag:source=NSW LPI Imagery source=Naturbase: Tag:source=Naturbase source=PGS: Tag:source=PGS source=RABA-KGZ: Tag:source=RABA-KGZ + source=Schadow1_Expeditions: Tag:source=Schadow1 Expeditions source=YahooJapan/ALPSMAP: Tag:source=YahooJapan/ALPSMAP source=gurs: Tag:source=gurs sport=10pin: Tag:sport=10pin @@ -8030,6 +8448,7 @@ en: sport=base: Tag:sport=base sport=baseball: Tag:sport=baseball sport=basketball: Tag:sport=basketball + sport=batting_cage: Tag:sport=batting cage sport=beachvolleyball: Tag:sport=beachvolleyball sport=billards: Tag:sport=billards sport=billiards: Tag:sport=billiards @@ -8075,9 +8494,11 @@ en: sport=ice_skating: Tag:sport=ice skating sport=ice_stock: Tag:sport=ice stock sport=judo: Tag:sport=judo + sport=karate: Tag:sport=karate sport=karting: Tag:sport=karting sport=kitesurfing: Tag:sport=kitesurfing sport=korfball: Tag:sport=korfball + sport=lacrosse: Tag:sport=lacrosse sport=laser_tag: Tag:sport=laser tag sport=model_aerodrome: Tag:sport=model aerodrome sport=motocross: Tag:sport=motocross @@ -8087,6 +8508,7 @@ en: sport=obstacle_course: Tag:sport=obstacle course sport=orienteering: Tag:sport=orienteering sport=paddle_tennis: Tag:sport=paddle tennis + sport=padel: Tag:sport=padel sport=paintball: Tag:sport=paintball sport=parachuting: Tag:sport=parachuting sport=paragliding: Tag:sport=paragliding @@ -8126,6 +8548,7 @@ en: sport=yoga: Tag:sport=yoga sports=aikido: Tag:sports=aikido sports=athletics: Tag:sports=athletics + spring:type=hot: Tag:spring:type=hot station=light_rail: Tag:station=light rail station=subway: Tag:station=subway substation=compensation: Tag:substation=compensation @@ -8148,6 +8571,9 @@ en: telecom=datacenter: Tag:telecom=datacenter telecom=remote_digital_terminal: Tag:telecom=remote digital terminal telecom=remote_terminal: Tag:telecom=remote terminal + telescope:type=optical: Tag:telescope:type=optical + telescope:type=radio: Tag:telescope:type=radio + tourism=accommodation: Tag:tourism=accommodation tourism=alpine_hut: Tag:tourism=alpine hut tourism=apartment: Tag:tourism=apartment tourism=aquarium: Tag:tourism=aquarium @@ -8177,6 +8603,8 @@ en: tower:construction=dish: Tag:tower:construction=dish tower:construction=dome: Tag:tower:construction=dome tower:construction=freestanding: Tag:tower:construction=freestanding + tower:construction=guyed_lattice: Tag:tower:construction=guyed lattice + tower:construction=guyed_tube: Tag:tower:construction=guyed tube tower:construction=lattice: Tag:tower:construction=lattice tower:type: Tag:tower:type tower:type=bell_tower: Tag:tower:type=bell tower @@ -8189,6 +8617,7 @@ en: tower:type=intake: Tag:tower:type=intake tower:type=lattice: Tag:tower:type=lattice tower:type=lighting: Tag:tower:type=lighting + tower:type=minaret: Tag:tower:type=minaret tower:type=monitoring: Tag:tower:type=monitoring tower:type=monument: Tag:tower:type=monument tower:type=observation: Tag:tower:type=observation @@ -8211,6 +8640,7 @@ en: transformer=traction: Tag:transformer=traction transformer=yes: Tag:transformer=yes tunnel=culvert: Tag:tunnel=culvert + tunnel=flooded: Tag:tunnel=flooded two_sided=yes: Tag:two sided=yes type=AutoPASS: Tag:type=AutoPASS type=autopass: Tag:type=autopass @@ -8220,10 +8650,24 @@ en: type=observation_spot: Tag:type=observation spot type=public_transport: Tag:type=public transport type=triangulation: Tag:type=triangulation + usage=distribution: Tag:usage=distribution + usage=facility: Tag:usage=facility + usage=flare_header: Tag:usage=flare header + usage=flowline: Tag:usage=flowline + usage=gathering: Tag:usage=gathering + usage=headrace: Tag:usage=headrace + usage=injection: Tag:usage=injection + usage=irrigation: Tag:usage=irrigation + usage=penstock: Tag:usage=penstock + usage=spillway: Tag:usage=spillway + usage=tailrace: Tag:usage=tailrace + usage=transmission: Tag:usage=transmission + vending: Tag:vending vending=SIM-cards: Tag:vending=SIM-cards vending=SIM_cards: Tag:vending=SIM cards vending=admission_tickets: Tag:vending=admission tickets vending=animal_feed: Tag:vending=animal feed + vending=art: Tag:vending=art vending=bicycle_tube: Tag:vending=bicycle tube vending=books: Tag:vending=books vending=bottle_return: Tag:vending=bottle return @@ -8279,11 +8723,17 @@ en: wall=seawall: Tag:wall=seawall wall=training_wall: Tag:wall=training wall waste=dog_excrement: Tag:waste=dog excrement + water=canal: Tag:water=canal water=intermittent: Tag:water=intermittent + water=lagoon: Tag:water=lagoon water=lake: Tag:water=lake water=lock: Tag:water=lock + water=oxbow: Tag:water=oxbow + water=pond: Tag:water=pond water=reservoir: Tag:water=reservoir + water=river: Tag:water=river water=tidal: Tag:water=tidal + water=wastewater: Tag:water=wastewater waterway=boat_lift: Tag:waterway=boat lift waterway=boatyard: Tag:waterway=boatyard waterway=brook: Tag:waterway=brook @@ -8304,11 +8754,13 @@ en: waterway=milestone: Tag:waterway=milestone waterway=mooring: Tag:waterway=mooring waterway=offshore_field: Tag:waterway=offshore field + waterway=pressurised: Tag:waterway=pressurised waterway=rapids: Tag:waterway=rapids waterway=river: Tag:waterway=river waterway=riverbank: Tag:waterway=riverbank waterway=sanitary_dump_station: Tag:waterway=sanitary dump station waterway=seaway: Tag:waterway=seaway + waterway=spillway: Tag:waterway=spillway waterway=stream: Tag:waterway=stream waterway=stream_end: Tag:waterway=stream end waterway=swept_area: Tag:waterway=swept area @@ -8343,7 +8795,8 @@ en: eo: key: esperanto: Eo:Key:esperanto - esperanto=yes: Eo:Key:esperanto=yes + tag: + esperanto=yes: Eo:Tag:esperanto=yes es: key: abandoned: ES:Key:abandoned @@ -8369,27 +8822,36 @@ es: addr:subdistrict: ES:Key:addr:subdistrict addr:suburb: ES:Key:addr:suburb aerialway: ES:Key:aerialway + aeroway: ES:Key:aeroway amenity: ES:Key:amenity + area:highway: ES:Key:area:highway artist_name: ES:Key:artist name artwork_subject: ES:Key:artwork subject barrier: ES:Key:barrier bicycle_parking: ES:Key:bicycle parking bicycle_road: ES:Key:bicycle road + branch: ES:Key:branch brand: ES:Key:brand brewery: ES:Key:brewery bridge:structure: ES:Key:bridge:structure building: ES:Key:building building:levels: ES:Key:building:levels + building:material: ES:Key:building:material + building:part: ES:Key:building:part bus_bay: ES:Key:bus bay busway: ES:Key:busway cemetery: ES:Key:cemetery + check_date: ES:Key:check date circumference: ES:Key:circumference clothes: ES:Key:clothes + club: ES:Key:club comment: ES:Key:comment construction: ES:Key:construction contact: ES:Key:contact + content: ES:Key:content conveying: ES:Key:conveying craft: ES:Key:craft + crossing: ES:Key:crossing cuisine: ES:Key:cuisine cutting: ES:Key:cutting cycleway: ES:Key:cycleway @@ -8415,6 +8877,8 @@ es: footway: ES:Key:footway ford: ES:Key:ford fuel:diesel_G2: ES:Key:fuel:diesel G2 + garden:style: ES:Key:garden:style + garden:type: ES:Key:garden:type generator:output: ES:Key:generator:output generator:source: ES:Key:generator:source geological: ES:Key:geological @@ -8427,9 +8891,13 @@ es: historic: ES:Key:historic historic:civilization: ES:Key:historic:civilization image: ES:Key:image + imagery_used: ES:Key:imagery used + incline: ES:Key:incline indoor: ES:Key:indoor + industrial: ES:Key:industrial intermittent: ES:Key:intermittent is_in: ES:Key:is in + kerb: ES:Key:kerb ladder: ES:Key:ladder landuse: ES:Key:landuse lanes: ES:Key:lanes @@ -8439,12 +8907,15 @@ es: leisure: ES:Key:leisure local_ref: ES:Key:local ref locale: ES:Key:locale + location: ES:Key:location man_made: ES:Key:man made manufacturer: ES:Key:manufacturer mapillary: ES:Key:mapillary material: ES:Key:material maxheight: ES:Key:maxheight maxspeed: ES:Key:maxspeed + maxspeed:advisory: ES:Key:maxspeed:advisory + maxspeed:practical: ES:Key:maxspeed:practical memorial: ES:Key:memorial monitoring:galileo: ES:Key:monitoring:galileo monitoring:glonass: ES:Key:monitoring:glonass @@ -8485,16 +8956,22 @@ es: public_transport:version: ES:Key:public transport:version pump: ES:Key:pump railway: ES:Key:railway + railway:preserved: ES:Key:railway:preserved + ramp: ES:Key:ramp ref: ES:Key:ref ref:bic: ES:Key:ref:bic ref:color: ES:Key:ref:color ref:colour: ES:Key:ref:colour ref:isil: ES:Key:ref:isil religion: ES:Key:religion + 'removed:': 'ES:Key:removed:' resource: ES:Key:resource roof:direction: ES:Key:roof:direction + roof:material: ES:Key:roof:material + roundtrip: ES:Key:roundtrip route: ES:Key:route route_master: ES:Key:route master + route_ref: ES:Key:route ref ruins: ES:Key:ruins 'ruins:': 'ES:Key:ruins:' rungs: ES:Key:rungs @@ -8516,6 +8993,7 @@ es: todo: ES:Key:todo tourism: ES:Key:tourism tracktype: ES:Key:tracktype + traffic: ES:Key:traffic traffic_calming: ES:Key:traffic calming traffic_sign: ES:Key:traffic sign traffic_signals: ES:Key:traffic signals @@ -8525,6 +9003,7 @@ es: tunnel: ES:Key:tunnel turn: ES:Key:turn type: ES:Key:type + unnamed: ES:Key:unnamed url: ES:Key:url water: ES:Key:water waterway: ES:Key:waterway @@ -8540,9 +9019,11 @@ es: aerialway=cable_car: ES:Tag:aerialway=cable car aerialway=gondola: ES:Tag:aerialway=gondola aerialway=station: ES:Tag:aerialway=station + aerodrome:type=regional: ES:Tag:aerodrome:type=regional aeroway=apron: ES:Tag:aeroway=apron aeroway=helipad: ES:Tag:aeroway=helipad aeroway=heliport: ES:Tag:aeroway=heliport + aeroway=navigationaid: ES:Tag:aeroway=navigationaid aeroway=terminal: ES:Tag:aeroway=terminal aeroway=windsock: ES:Tag:aeroway=windsock airmark=beacon: ES:Tag:airmark=beacon @@ -8552,19 +9033,24 @@ es: amenity=atm: ES:Tag:amenity=atm amenity=bank: ES:Tag:amenity=bank amenity=bar: ES:Tag:amenity=bar + amenity=bbq: ES:Tag:amenity=bbq amenity=bench: ES:Tag:amenity=bench amenity=bicycle_parking: ES:Tag:amenity=bicycle parking amenity=bicycle_rental: ES:Tag:amenity=bicycle rental amenity=biergarten: ES:Tag:amenity=biergarten + amenity=boat_storage: ES:Tag:amenity=boat storage amenity=brothel: ES:Tag:amenity=brothel amenity=bus_station: ES:Tag:amenity=bus station amenity=cafe: ES:Tag:amenity=cafe amenity=car_rental: ES:Tag:amenity=car rental amenity=car_wash: ES:Tag:amenity=car wash amenity=clinic: ES:Tag:amenity=clinic + amenity=clock: ES:Tag:amenity=clock amenity=college: ES:Tag:amenity=college amenity=community_centre: ES:Tag:amenity=community centre + amenity=compressed_air: ES:Tag:amenity=compressed air amenity=courthouse: ES:Tag:amenity=courthouse + amenity=coworking_space: ES:Tag:amenity=coworking space amenity=crematorium: ES:Tag:amenity=crematorium amenity=crypt: ES:Tag:amenity=crypt amenity=dentist: ES:Tag:amenity=dentist @@ -8577,6 +9063,7 @@ es: amenity=exhibition_centre: ES:Tag:amenity=exhibition centre amenity=fast_food: ES:Tag:amenity=fast food amenity=ferry_terminal: ES:Tag:amenity=ferry terminal + amenity=food_court: ES:Tag:amenity=food court amenity=fountain: ES:Tag:amenity=fountain amenity=fuel: ES:Tag:amenity=fuel amenity=grave_yard: ES:Tag:amenity=grave yard @@ -8589,15 +9076,18 @@ es: amenity=love_hotel: ES:Tag:amenity=love hotel amenity=marketplace: ES:Tag:amenity=marketplace amenity=mobile_library: ES:Tag:amenity=mobile library + amenity=mortuary: ES:Tag:amenity=mortuary amenity=music_school: ES:Tag:amenity=music school amenity=nightclub: ES:Tag:amenity=nightclub amenity=parking: ES:Tag:amenity=parking + amenity=parking_entrance: ES:Tag:amenity=parking entrance amenity=parking_space: ES:Tag:amenity=parking space amenity=payment_centre: ES:Tag:amenity=payment centre amenity=payment_terminal: ES:Tag:amenity=payment terminal amenity=pharmacy: ES:Tag:amenity=pharmacy amenity=photo_booth: ES:Tag:amenity=photo booth amenity=place_of_worship: ES:Tag:amenity=place of worship + amenity=planetarium: ES:Tag:amenity=planetarium amenity=police: ES:Tag:amenity=police amenity=prison_camp: ES:Tag:amenity=prison camp amenity=pub: ES:Tag:amenity=pub @@ -8605,10 +9095,12 @@ es: amenity=public_building: ES:Tag:amenity=public building amenity=recycling: ES:Tag:amenity=recycling amenity=refugee_housing: ES:Tag:amenity=refugee housing + amenity=research_institute: ES:Tag:amenity=research institute amenity=restaurant: ES:Tag:amenity=restaurant amenity=school: ES:Tag:amenity=school amenity=shelter: ES:Tag:amenity=shelter amenity=shower: ES:Tag:amenity=shower + amenity=social_facility: ES:Tag:amenity=social facility amenity=stripclub: ES:Tag:amenity=stripclub amenity=taxi: ES:Tag:amenity=taxi amenity=theatre: ES:Tag:amenity=theatre @@ -8622,21 +9114,30 @@ es: amenity=water_point: ES:Tag:amenity=water point amenity=watering_place: ES:Tag:amenity=watering place amenity=youth_centre: ES:Tag:amenity=youth centre + animal=school: ES:Tag:animal=school + area:highway=cycleway: ES:Tag:area:highway=cycleway + area:highway=footway: ES:Tag:area:highway=footway + area:highway=path: ES:Tag:area:highway=path + area:highway=pedestrian: ES:Tag:area:highway=pedestrian barrier=block: ES:Tag:barrier=block barrier=bollard: ES:Tag:barrier=bollard barrier=cable_barrier: ES:Tag:barrier=cable barrier barrier=chain: ES:Tag:barrier=chain + barrier=city_wall: ES:Tag:barrier=city wall + barrier=debris: ES:Tag:barrier=debris barrier=entrance: ES:Tag:barrier=entrance barrier=fence: ES:Tag:barrier=fence barrier=gate: ES:Tag:barrier=gate barrier=guard_rail: ES:Tag:barrier=guard rail barrier=hedge: ES:Tag:barrier=hedge + barrier=height_restrictor: ES:Tag:barrier=height restrictor barrier=jersey_barrier: ES:Tag:barrier=jersey barrier barrier=kerb: ES:Tag:barrier=kerb barrier=lift_gate: ES:Tag:barrier=lift gate barrier=retaining_wall: ES:Tag:barrier=retaining wall barrier=rope: ES:Tag:barrier=rope barrier=swing_gate: ES:Tag:barrier=swing gate + barrier=toll_booth: ES:Tag:barrier=toll booth barrier=wall: ES:Tag:barrier=wall bicycle=use_sidepath: ES:Tag:bicycle=use sidepath boundary=national_park: ES:Tag:boundary=national park @@ -8646,14 +9147,19 @@ es: bridge=aqueduct: ES:Tag:bridge=aqueduct building=apartments: ES:Tag:building=apartments building=barn: ES:Tag:building=barn + building=boathouse: ES:Tag:building=boathouse building=brewery: ES:Tag:building=brewery building=bungalow: ES:Tag:building=bungalow + building=carport: ES:Tag:building=carport building=cathedral: ES:Tag:building=cathedral building=chapel: ES:Tag:building=chapel building=church: ES:Tag:building=church building=civic: ES:Tag:building=civic building=commercial: ES:Tag:building=commercial building=construction: ES:Tag:building=construction + building=container: ES:Tag:building=container + building=detached: ES:Tag:building=detached + building=dormitory: ES:Tag:building=dormitory building=farm: ES:Tag:building=farm building=garage: ES:Tag:building=garage building=garages: ES:Tag:building=garages @@ -8661,7 +9167,9 @@ es: building=greenhouse: ES:Tag:building=greenhouse building=hospital: ES:Tag:building=hospital building=house: ES:Tag:building=house + building=houseboat: ES:Tag:building=houseboat building=hut: ES:Tag:building=hut + building=industrial: ES:Tag:building=industrial building=kiosk: ES:Tag:building=kiosk building=office: ES:Tag:building=office building=public: ES:Tag:building=public @@ -8670,24 +9178,45 @@ es: building=roof: ES:Tag:building=roof building=ruins: ES:Tag:building=ruins building=school: ES:Tag:building=school + building=service: ES:Tag:building=service building=shed: ES:Tag:building=shed + building=sports_hall: ES:Tag:building=sports hall building=sty: ES:Tag:building=sty + building=terrace: ES:Tag:building=terrace building=university: ES:Tag:building=university building=warehouse: ES:Tag:building=warehouse cemetery=grave: ES:Tag:cemetery=grave club=scout: ES:Tag:club=scout + club=sport: ES:Tag:club=sport craft=agricultural_engines: ES:Tag:craft=agricultural engines craft=bakery: ES:Tag:craft=bakery + craft=basket_maker: ES:Tag:craft=basket maker craft=beekeeper: ES:Tag:craft=beekeeper + craft=blacksmith: ES:Tag:craft=blacksmith + craft=boatbuilder: ES:Tag:craft=boatbuilder + craft=bookbinder: ES:Tag:craft=bookbinder craft=brewery: ES:Tag:craft=brewery + craft=builder: ES:Tag:craft=builder + craft=carpet_layer: ES:Tag:craft=carpet layer + craft=caterer: ES:Tag:craft=caterer + craft=chimney_sweeper: ES:Tag:craft=chimney sweeper craft=clockmaker: ES:Tag:craft=clockmaker + craft=confectionery: ES:Tag:craft=confectionery + craft=dental_technician: ES:Tag:craft=dental technician + craft=distillery: ES:Tag:craft=distillery craft=electrician: ES:Tag:craft=electrician + craft=electronics_repair: ES:Tag:craft=electronics repair + craft=engraver: ES:Tag:craft=engraver + craft=gardener: ES:Tag:craft=gardener craft=handicraft: ES:Tag:craft=handicraft + craft=hvac: ES:Tag:craft=hvac craft=jeweller: ES:Tag:craft=jeweller craft=oil_mill: ES:Tag:craft=oil mill craft=optician: ES:Tag:craft=optician craft=photographer: ES:Tag:craft=photographer craft=plumber: ES:Tag:craft=plumber + craft=pottery: ES:Tag:craft=pottery + craft=tailor: ES:Tag:craft=tailor craft=tiler: ES:Tag:craft=tiler craft=watchmaker: ES:Tag:craft=watchmaker cycleway=lane: ES:Tag:cycleway=lane @@ -8695,6 +9224,7 @@ es: cycleway=track: ES:Tag:cycleway=track emergency=ambulance_station: ES:Tag:emergency=ambulance station emergency=defibrillator: ES:Tag:emergency=defibrillator + emergency=dry_riser: ES:Tag:emergency=dry riser emergency=fire_extinguisher: ES:Tag:emergency=fire extinguisher emergency=fire_hydrant: ES:Tag:emergency=fire hydrant emergency=landing_site: ES:Tag:emergency=landing site @@ -8735,6 +9265,7 @@ es: highway=platform: ES:Tag:highway=platform highway=primary: ES:Tag:highway=primary highway=raceway: ES:Tag:highway=raceway + highway=razed: ES:Tag:highway=razed highway=residential: ES:Tag:highway=residential highway=road: ES:Tag:highway=road highway=secondary: ES:Tag:highway=secondary @@ -8750,6 +9281,8 @@ es: highway=turning_circle: ES:Tag:highway=turning circle highway=turning_loop: ES:Tag:highway=turning loop highway=unclassified: ES:Tag:highway=unclassified + historic=archaeological_site: ES:Tag:historic=archaeological site + historic=boundary_stone: ES:Tag:historic=boundary stone historic=farm: ES:Tag:historic=farm historic=heritage: ES:Tag:historic=heritage historic=memorial: ES:Tag:historic=memorial @@ -8758,11 +9291,14 @@ es: historic=ruins: ES:Tag:historic=ruins historic=tomb: ES:Tag:historic=tomb historic=wayside_shrine: ES:Tag:historic=wayside shrine + historic=wreck: ES:Tag:historic=wreck + industrial=factory: ES:Tag:industrial=factory information=board: ES:Tag:information=board information=guidepost: ES:Tag:information=guidepost information=map: ES:Tag:information=map information=tactile_map: ES:Tag:information=tactile map internet_access=wlan: ES:Tag:internet access=wlan + junction=circular: ES:Tag:junction=circular junction=roundabout: ES:Tag:junction=roundabout landcover=grass: ES:Tag:landcover=grass landcover=trees: ES:Tag:landcover=trees @@ -8788,6 +9324,7 @@ es: landuse=recreation_ground: ES:Tag:landuse=recreation ground landuse=reservoir: ES:Tag:landuse=reservoir landuse=residential: ES:Tag:landuse=residential + landuse=retail: ES:Tag:landuse=retail landuse=salt_pond: ES:Tag:landuse=salt pond landuse=traffic_island: ES:Tag:landuse=traffic island landuse=village_green: ES:Tag:landuse=village green @@ -8799,6 +9336,7 @@ es: leisure=bandstand: ES:Tag:leisure=bandstand leisure=bird_hide: ES:Tag:leisure=bird hide leisure=bleachers: ES:Tag:leisure=bleachers + leisure=bowling_alley: ES:Tag:leisure=bowling alley leisure=common: ES:Tag:leisure=common leisure=dog_park: ES:Tag:leisure=dog park leisure=firepit: ES:Tag:leisure=firepit @@ -8815,6 +9353,8 @@ es: leisure=pitch: ES:Tag:leisure=pitch leisure=playground: ES:Tag:leisure=playground leisure=sports_centre: ES:Tag:leisure=sports centre + leisure=swimming_pool: ES:Tag:leisure=swimming pool + leisure=track: ES:Tag:leisure=track leisure=water_park: ES:Tag:leisure=water park man_made=adit: ES:Tag:man made=adit man_made=archimedes_screw: ES:Tag:man made=archimedes screw @@ -8827,6 +9367,7 @@ es: man_made=mast: ES:Tag:man made=mast man_made=monitoring_station: ES:Tag:man made=monitoring station man_made=nesting_site: ES:Tag:man made=nesting site + man_made=observatory: ES:Tag:man made=observatory man_made=pier: ES:Tag:man made=pier man_made=power_wind: ES:Tag:man made=power wind man_made=pumping_rig: ES:Tag:man made=pumping rig @@ -8834,6 +9375,7 @@ es: man_made=reservoir_covered: ES:Tag:man made=reservoir covered man_made=storage_tank: ES:Tag:man made=storage tank man_made=survey_point: ES:Tag:man made=survey point + man_made=telescope: ES:Tag:man made=telescope man_made=wastewater_plant: ES:Tag:man made=wastewater plant man_made=water_tap: ES:Tag:man made=water tap man_made=water_tower: ES:Tag:man made=water tower @@ -8861,6 +9403,7 @@ es: natural=cave_entrance: ES:Tag:natural=cave entrance natural=cliff: ES:Tag:natural=cliff natural=coastline: ES:Tag:natural=coastline + natural=esker: ES:Tag:natural=esker natural=fell: ES:Tag:natural=fell natural=geyser: ES:Tag:natural=geyser natural=glacier: ES:Tag:natural=glacier @@ -8870,6 +9413,7 @@ es: natural=mud: ES:Tag:natural=mud natural=peak: ES:Tag:natural=peak natural=ridge: ES:Tag:natural=ridge + natural=riverbed: ES:Tag:natural=riverbed natural=rock: ES:Tag:natural=rock natural=saddle: ES:Tag:natural=saddle natural=sand: ES:Tag:natural=sand @@ -8886,12 +9430,16 @@ es: natural=water: ES:Tag:natural=water natural=wetland: ES:Tag:natural=wetland natural=wood: ES:Tag:natural=wood + office=administrative: ES:Tag:office=administrative office=advertising_agency: ES:Tag:office=advertising agency office=association: ES:Tag:office=association office=company: ES:Tag:office=company + office=engineer: ES:Tag:office=engineer + office=estate_agent: ES:Tag:office=estate agent office=foundation: ES:Tag:office=foundation office=government: ES:Tag:office=government office=insurance: ES:Tag:office=insurance + office=it: ES:Tag:office=it office=lawyer: ES:Tag:office=lawyer office=logistics: ES:Tag:office=logistics office=moving_company: ES:Tag:office=moving company @@ -8899,12 +9447,16 @@ es: office=ngo: ES:Tag:office=ngo office=notary: ES:Tag:office=notary office=occupational_safety: ES:Tag:office=occupational safety + office=parish: ES:Tag:office=parish + office=political_party: ES:Tag:office=political party office=private_investigator: ES:Tag:office=private investigator office=quango: ES:Tag:office=quango office=religion: ES:Tag:office=religion office=research: ES:Tag:office=research + office=surveyor: ES:Tag:office=surveyor office=tax: ES:Tag:office=tax office=therapist: ES:Tag:office=therapist + office=water_utility: ES:Tag:office=water utility passenger=yes: ES:Tag:passenger=yes place=borough: ES:Tag:place=borough place=city: ES:Tag:place=city @@ -8938,8 +9490,12 @@ es: railway=subway_entrance: ES:Tag:railway=subway entrance railway=yard: ES:Tag:railway=yard route=bus: ES:Tag:route=bus + route=transhumance: ES:Tag:route=transhumance service=crossover: ES:Tag:service=crossover + service=driveway: ES:Tag:service=driveway service=parking_aisle: ES:Tag:service=parking aisle + service=siding: ES:Tag:service=siding + shelter_type=lean_to: ES:Tag:shelter type=lean to shop=alcohol: ES:Tag:shop=alcohol shop=baby_goods: ES:Tag:shop=baby goods shop=bakery: ES:Tag:shop=bakery @@ -8949,6 +9505,7 @@ es: shop=bookmaker: ES:Tag:shop=bookmaker shop=books: ES:Tag:shop=books shop=butcher: ES:Tag:shop=butcher + shop=car: ES:Tag:shop=car shop=car_parts: ES:Tag:shop=car parts shop=car_repair: ES:Tag:shop=car repair shop=chocolate: ES:Tag:shop=chocolate @@ -8961,10 +9518,12 @@ es: shop=craft: ES:Tag:shop=craft shop=doityourself: ES:Tag:shop=doityourself shop=electrical: ES:Tag:shop=electrical + shop=electronics: ES:Tag:shop=electronics shop=florist: ES:Tag:shop=florist shop=funeral_directors: ES:Tag:shop=funeral directors shop=games: ES:Tag:shop=games shop=garden_centre: ES:Tag:shop=garden centre + shop=gas: ES:Tag:shop=gas shop=gift: ES:Tag:shop=gift shop=greengrocer: ES:Tag:shop=greengrocer shop=hairdresser: ES:Tag:shop=hairdresser @@ -8974,11 +9533,14 @@ es: shop=ice_cream: ES:Tag:shop=ice cream shop=jewelry: ES:Tag:shop=jewelry shop=kiosk: ES:Tag:shop=kiosk + shop=kitchen: ES:Tag:shop=kitchen shop=laundry: ES:Tag:shop=laundry shop=locksmith: ES:Tag:shop=locksmith shop=lottery: ES:Tag:shop=lottery + shop=mobile_phone: ES:Tag:shop=mobile phone shop=model: ES:Tag:shop=model shop=motorcycle: ES:Tag:shop=motorcycle + shop=nuts: ES:Tag:shop=nuts shop=optician: ES:Tag:shop=optician shop=outdoor: ES:Tag:shop=outdoor shop=paint: ES:Tag:shop=paint @@ -8986,10 +9548,14 @@ es: shop=pastry: ES:Tag:shop=pastry shop=pawnbroker: ES:Tag:shop=pawnbroker shop=pet: ES:Tag:shop=pet + shop=pottery: ES:Tag:shop=pottery shop=seafood: ES:Tag:shop=seafood + shop=sewing: ES:Tag:shop=sewing shop=shoes: ES:Tag:shop=shoes shop=sports: ES:Tag:shop=sports shop=stationery: ES:Tag:shop=stationery + shop=storage_rental: ES:Tag:shop=storage rental + shop=supermarket: ES:Tag:shop=supermarket shop=tattoo: ES:Tag:shop=tattoo shop=tea: ES:Tag:shop=tea shop=ticket: ES:Tag:shop=ticket @@ -9003,13 +9569,20 @@ es: shop=water: ES:Tag:shop=water shop=window_blind: ES:Tag:shop=window blind social_facility=clothing_bank: ES:Tag:social facility=clothing bank + social_facility=food_bank: ES:Tag:social facility=food bank + social_facility=nursing_home: ES:Tag:social facility=nursing home source:geometry=Bing: ES:Tag:source:geometry=Bing sport=boules: ES:Tag:sport=boules + sport=chess: ES:Tag:sport=chess sport=cycling: ES:Tag:sport=cycling sport=equestrian: ES:Tag:sport=equestrian sport=futsal: ES:Tag:sport=futsal sport=model_aerodrome: ES:Tag:sport=model aerodrome sport=motocross: ES:Tag:sport=motocross + sport=motor: ES:Tag:sport=motor + sport=paddle_tennis: ES:Tag:sport=paddle tennis + sport=padel: ES:Tag:sport=padel + sport=paintball: ES:Tag:sport=paintball sport=shooting: ES:Tag:sport=shooting sport=soccer: ES:Tag:sport=soccer tourism=alpine_hut: ES:Tag:tourism=alpine hut @@ -9017,8 +9590,12 @@ es: tourism=artwork: ES:Tag:tourism=artwork tourism=attraction: ES:Tag:tourism=attraction tourism=camp_site: ES:Tag:tourism=camp site + tourism=chalet: ES:Tag:tourism=chalet + tourism=guest_house: ES:Tag:tourism=guest house + tourism=hostel: ES:Tag:tourism=hostel tourism=hotel: ES:Tag:tourism=hotel tourism=motel: ES:Tag:tourism=motel + tourism=museum: ES:Tag:tourism=museum tourism=picnic_site: ES:Tag:tourism=picnic site tourism=trail_riding_station: ES:Tag:tourism=trail riding station tourism=viewpoint: ES:Tag:tourism=viewpoint @@ -9057,11 +9634,21 @@ et: building=roof: Et:Tag:building=roof fa: key: + area: Fa:Key:area + bridge: Fa:Key:bridge + enforcement: Fa:Key:enforcement highway: Fa:Key:highway level: Fa:Key:level - name: FA:Key:name + name: Fa:Key:name + noexit: Fa:Key:noexit + source: Fa:Key:source + traffic_calming: Fa:Key:traffic calming tag: amenity=fountain: Fa:Tag:amenity=fountain + highway=footway: Fa:Tag:highway=footway + highway=service: Fa:Tag:highway=service + shop=garden_centre: Fa:Tag:shop=garden centre + waterway=drain: Fa:Tag:waterway=drain fi: key: addr: Fi:Key:addr @@ -9165,6 +9752,7 @@ fi: fr: key: CEMT: FR:Key:CEMT + FIXME: FR:Key:FIXME abutters: FR:Key:abutters access: FR:Key:access addr: FR:Key:addr @@ -9173,16 +9761,20 @@ fr: addr:place: FR:Key:addr:place addr:street: FR:Key:addr:street addr:suburb: FR:Key:addr:suburb + admin_level: FR:Key:admin level advertising: FR:Key:advertising aeroway: FR:Key:aeroway alt_name: FR:Key:alt name amenity: FR:Key:amenity + animal: FR:Key:animal animated: FR:Key:animated area: FR:Key:area + artist_name: FR:Key:artist name artwork_type: FR:Key:artwork type backrest: FR:Key:backrest backward: FR:Key:backward barrier: FR:Key:barrier + baseball: FR:Key:baseball basin: FR:Key:basin bench: FR:Key:bench bicycle: FR:Key:bicycle @@ -9190,19 +9782,21 @@ fr: boat: FR:Key:boat bollard: FR:Key:bollard books: FR:Key:books - boundary: FR:Key:boundary brand: FR:Key:brand brewery: FR:Key:brewery bridge: FR:Key:bridge bridge:movable: FR:Key:bridge:movable building: FR:Key:building + building:flats: FR:Key:building:flats building:levels: FR:Key:building:levels building:material: FR:Key:building:material building:part: FR:Key:building:part + building:use: FR:Key:building:use bulk_purchase: FR:Key:bulk purchase bus: FR:Key:bus capacity: FR:Key:capacity capacity:disabled: FR:Key:capacity:disabled + check_date: FR:Key:check date class:bicycle:commute: FR:Key:class:bicycle:commute clothes: FR:Key:clothes club: FR:Key:club @@ -9218,6 +9812,7 @@ fr: contact:vhf: FR:Key:contact:vhf contact:webcam: FR:Key:contact:webcam contact:website: FR:Key:contact:website + content: FR:Key:content covered: FR:Key:covered craft: FR:Key:craft crop: FR:Key:crop @@ -9226,6 +9821,7 @@ fr: currency: FR:Key:currency cutting: FR:Key:cutting cycleway: FR:Key:cycleway + cycleway:lane: FR:Key:cycleway:lane delivery: FR:Key:delivery denomination: FR:Key:denomination description: FR:Key:description @@ -9246,8 +9842,10 @@ fr: enforcement: FR:Key:enforcement entrance: FR:Key:entrance est_width: FR:Key:est width + fair_trade: FR:Key:fair trade fax: FR:Key:fax fee: FR:Key:fee + female: FR:Key:female fishing: FR:Key:fishing fixme: FR:Key:fixme flood_prone: FR:Key:flood prone @@ -9256,6 +9854,7 @@ fr: ford: FR:Key:ford format: FR:Key:format forward: FR:Key:forward + fuel: FR:Key:fuel garden:style: FR:Key:garden:style garden:type: FR:Key:garden:type generator:method: FR:Key:generator:method @@ -9273,6 +9872,7 @@ fr: generator:plant: FR:Key:generator:plant generator:source: FR:Key:generator:source geological: FR:Key:geological + grande_circulation: FR:Key:grande circulation healthcare: FR:Key:healthcare height: FR:Key:height heritage: FR:Key:heritage @@ -9280,6 +9880,7 @@ fr: highway: FR:Key:highway historic: FR:Key:historic historic:civilization: FR:Key:historic:civilization + horse: FR:Key:horse hov: FR:Key:hov incline: FR:Key:incline information: FR:Key:information @@ -9288,6 +9889,7 @@ fr: intermittent: FR:Key:intermittent junction: FR:Key:junction kindergarten:FR: FR:Key:kindergarten:FR + ladder: FR:Key:ladder landuse: FR:Key:landuse lanes: FR:Key:lanes layer: FR:Key:layer @@ -9302,6 +9904,7 @@ fr: lock: FR:Key:lock lock_name: FR:Key:lock name lock_ref: FR:Key:lock ref + male: FR:Key:male man_made: FR:Key:man made manhole: FR:Key:manhole manufacturer: FR:Key:manufacturer @@ -9317,15 +9920,18 @@ fr: maxwidth: FR:Key:maxwidth memorial: FR:Key:memorial message: FR:Key:message + microbrewery: FR:Key:microbrewery military: FR:Key:military min_age: FR:Key:min age minage: FR:Key:minage monitoring:meteoric_activity: FR:Key:monitoring:meteoric activity mooring: FR:Key:mooring motorboat: FR:Key:motorboat + motorcycle:parking: FR:Key:motorcycle:parking mountain_pass: FR:Key:mountain pass mtb:scale: FR:Key:mtb:scale name: FR:Key:name + name:oc: FR:Key:name:oc nat_name: FR:Key:nat name natural: FR:Key:natural network: FR:Key:network @@ -9337,9 +9943,12 @@ fr: old_name: FR:Key:old name oneway: FR:Key:oneway oneway:bicycle: FR:Key:oneway:bicycle + openfire: FR:Key:openfire + opening_date: FR:Key:opening date opening_hours: FR:Key:opening hours operator: FR:Key:operator operator:type: FR:Key:operator:type + organic: FR:Key:organic outdoor_seating: FR:Key:outdoor seating overtaking: FR:Key:overtaking parking: FR:Key:parking @@ -9410,6 +10019,7 @@ fr: smoothness: FR:Key:smoothness social_facility: FR:Key:social facility source: FR:Key:source + source:date: FR:Key:source:date source:maxspeed: FR:Key:source:maxspeed source:maxwidth: FR:Key:source:maxwidth species: FR:Key:species @@ -9418,9 +10028,12 @@ fr: step:condition: FR:Key:step:condition step:contrast: FR:Key:step:contrast step_count: FR:Key:step count + support: FR:Key:support surface: FR:Key:surface surveillance: FR:Key:surveillance + survey:date: FR:Key:survey:date switch: FR:Key:switch + symbol: FR:Key:symbol tactile_paving: FR:Key:tactile paving takeaway: FR:Key:takeaway tidal: FR:Key:tidal @@ -9432,6 +10045,7 @@ fr: traffic_calming: FR:Key:traffic calming traffic_sign: FR:Key:traffic sign traffic_signals:direction: FR:Key:traffic signals:direction + traffic_signals:sound: FR:Key:traffic signals:sound trail_visibility: FR:Key:trail visibility trees: FR:Key:trees tunnel: FR:Key:tunnel @@ -9440,6 +10054,7 @@ fr: turning_radius: FR:Key:turning radius type: FR:Key:type type:FR:FINESS: FR:Key:type:FR:FINESS + unisex: FR:Key:unisex url: FR:Key:url usage: FR:Key:usage visibility: FR:Key:visibility @@ -9454,11 +10069,14 @@ fr: wikidata: FR:Key:wikidata wikimedia_commons: FR:Key:wikimedia commons wikipedia: FR:Key:wikipedia + windings: FR:Key:windings xmas:feature: FR:Key:xmas:feature tag: Bascule_publique: FR:Tag:Bascule publique FIXME=Position_estimated: FR:Tag:FIXME=Position estimated abandoned=yes: FR:Tag:abandoned=yes + access=designated: FR:Tag:access=designated + access=no: FR:Tag:access=no access=private: FR:Tag:access=private advertising=billboard: FR:Tag:advertising=billboard advertising=board: FR:Tag:advertising=board @@ -9477,10 +10095,15 @@ fr: amenity=arts_centre: FR:Tag:amenity=arts centre amenity=atm: FR:Tag:amenity=atm amenity=bank: FR:Tag:amenity=bank + amenity=bar: FR:Tag:amenity=bar + amenity=bbq: FR:Tag:amenity=bbq amenity=bench: FR:Tag:amenity=bench amenity=bicycle_parking: FR:Tag:amenity=bicycle parking amenity=bicycle_rental: FR:Tag:amenity=bicycle rental + amenity=bicycle_repair_station: FR:Tag:amenity=bicycle repair station amenity=biergarten: FR:Tag:amenity=biergarten + amenity=brothel: FR:Tag:amenity=brothel + amenity=bus_station: FR:Tag:amenity=bus station amenity=cafe: FR:Tag:amenity=cafe amenity=car_rental: FR:Tag:amenity=car rental amenity=car_sharing: FR:Tag:amenity=car sharing @@ -9501,20 +10124,25 @@ fr: amenity=driving_school: FR:Tag:amenity=driving school amenity=embassy: FR:Tag:amenity=embassy amenity=fast_food: FR:Tag:amenity=fast food + amenity=feeding_place: FR:Tag:amenity=feeding place amenity=fire_station: FR:Tag:amenity=fire station amenity=food_court: FR:Tag:amenity=food court amenity=fountain: FR:Tag:amenity=fountain amenity=fuel: FR:Tag:amenity=fuel amenity=grave_yard: FR:Tag:amenity=grave yard + amenity=hookah_lounge: FR:Tag:amenity=hookah lounge amenity=hospital: FR:Tag:amenity=hospital amenity=hunting_stand: FR:Tag:amenity=hunting stand amenity=kindergarten: FR:Tag:amenity=kindergarten + amenity=lavoir: FR:Tag:amenity=lavoir amenity=letter_box: FR:Tag:amenity=letter box amenity=library: FR:Tag:amenity=library + amenity=love_hotel: FR:Tag:amenity=love hotel amenity=marketplace: FR:Tag:amenity=marketplace amenity=motorcycle_parking: FR:Tag:amenity=motorcycle parking amenity=nightclub: FR:Tag:amenity=nightclub amenity=parking: FR:Tag:amenity=parking + amenity=parking_entrance: FR:Tag:amenity=parking entrance amenity=parking_space: FR:Tag:amenity=parking space amenity=pharmacy: FR:Tag:amenity=pharmacy amenity=photo_booth: FR:Tag:amenity=photo booth @@ -9533,6 +10161,8 @@ fr: amenity=shelter: FR:Tag:amenity=shelter amenity=social_centre: FR:Tag:amenity=social centre amenity=social_facility: FR:Tag:amenity=social facility + amenity=stripclub: FR:Tag:amenity=stripclub + amenity=swingerclub: FR:Tag:amenity=swingerclub amenity=taxi: FR:Tag:amenity=taxi amenity=telephone: FR:Tag:amenity=telephone amenity=theatre: FR:Tag:amenity=theatre @@ -9540,26 +10170,42 @@ fr: amenity=townhall: FR:Tag:amenity=townhall amenity=university: FR:Tag:amenity=university amenity=vacuum_cleaner: FR:Tag:amenity=vacuum cleaner + amenity=vehicle_inspection: FR:Tag:amenity=vehicle inspection amenity=vending_machine: FR:Tag:amenity=vending machine amenity=veterinary: FR:Tag:amenity=veterinary amenity=waste_basket: FR:Tag:amenity=waste basket amenity=waste_disposal: FR:Tag:amenity=waste disposal + amenity=water_point: FR:Tag:amenity=water point + amenity=watering_place: FR:Tag:amenity=watering place amenity=weighbridge: FR:Tag:amenity=weighbridge + animal=horse_walker: FR:Tag:animal=horse walker + atm=yes: FR:Tag:atm=yes barrier=block: FR:Tag:barrier=block barrier=bollard: FR:Tag:barrier=bollard barrier=city_wall: FR:Tag:barrier=city wall barrier=cycle_barrier: FR:Tag:barrier=cycle barrier + barrier=entrance: FR:Tag:barrier=entrance + barrier=fence: FR:Tag:barrier=fence barrier=gate: FR:Tag:barrier=gate + barrier=guard_rail: FR:Tag:barrier=guard rail barrier=hedge: FR:Tag:barrier=hedge + barrier=hedge_bank: FR:Tag:barrier=hedge bank + barrier=horse_stile: FR:Tag:barrier=horse stile barrier=lift_gate: FR:Tag:barrier=lift gate barrier=retaining_wall: FR:Tag:barrier=retaining wall + barrier=rope: FR:Tag:barrier=rope barrier=select_acces: FR:Tag:barrier=select acces barrier=wall: FR:Tag:barrier=wall + bicycle=use_sidepath: FR:Tag:bicycle=use sidepath + boundary=administrative: FR:Tag:boundary=administrative brand=Trilib': FR:Tag:brand=Trilib' building=apartments: FR:Tag:building=apartments building=barn: FR:Tag:building=barn building=cabin: FR:Tag:building=cabin + building=chapel: FR:Tag:building=chapel + building=church: FR:Tag:building=church building=commercial: FR:Tag:building=commercial + building=construction: FR:Tag:building=construction building=farm: FR:Tag:building=farm building=garage: FR:Tag:building=garage building=garages: FR:Tag:building=garages @@ -9571,6 +10217,7 @@ fr: building=kiosk: FR:Tag:building=kiosk building=public: FR:Tag:building=public building=residential: FR:Tag:building=residential + building=riding_hall: FR:Tag:building=riding hall building=roof: FR:Tag:building=roof building=ruins: FR:Tag:building=ruins building=shed: FR:Tag:building=shed @@ -9581,12 +10228,31 @@ fr: building=warehouse: FR:Tag:building=warehouse club=sport: FR:Tag:club=sport construction=yes: FR:Tag:construction=yes + craft=agricultural_engines: FR:Tag:craft=agricultural engines + craft=bakery: FR:Tag:craft=bakery + craft=basket_maker: FR:Tag:craft=basket maker craft=beekeeper: FR:Tag:craft=beekeeper craft=brewery: FR:Tag:craft=brewery craft=builder: FR:Tag:craft=builder craft=cabinet_maker: FR:Tag:craft=cabinet maker craft=car_repair: FR:Tag:craft=car repair + craft=carpenter: FR:Tag:craft=carpenter + craft=carpet_layer: FR:Tag:craft=carpet layer + craft=caterer: FR:Tag:craft=caterer + craft=chimney_sweeper: FR:Tag:craft=chimney sweeper + craft=distillery: FR:Tag:craft=distillery + craft=electrician: FR:Tag:craft=electrician + craft=floorer: FR:Tag:craft=floorer + craft=gardener: FR:Tag:craft=gardener + craft=handicraft: FR:Tag:craft=handicraft + craft=hvac: FR:Tag:craft=hvac + craft=insulation: FR:Tag:craft=insulation + craft=jeweller: FR:Tag:craft=jeweller craft=joiner: FR:Tag:craft=joiner + craft=key_cutter: FR:Tag:craft=key cutter + craft=locksmith: FR:Tag:craft=locksmith + craft=metal_construction: FR:Tag:craft=metal construction + craft=photographer: FR:Tag:craft=photographer cuisine=coffee_shop: FR:Tag:cuisine=coffee shop cycleway=asl: FR:Tag:cycleway=asl cycleway=bike_box: FR:Tag:cycleway=bike box @@ -9617,6 +10283,7 @@ fr: generator:source=solar: FR:Tag:generator:source=solar generator:source=tidal: FR:Tag:generator:source=tidal generator:source=wind: FR:Tag:generator:source=wind + healthcare=laboratory: FR:Tag:healthcare=laboratory highway=bridleway: FR:Tag:highway=bridleway highway=bus_guideway: FR:Tag:highway=bus guideway highway=bus_stop: FR:Tag:highway=bus stop @@ -9648,6 +10315,7 @@ fr: highway=stop: FR:Tag:highway=stop highway=tertiary: FR:Tag:highway=tertiary highway=track: FR:Tag:highway=track + highway=traffic_mirror: FR:Tag:highway=traffic mirror highway=traffic_signals: FR:Tag:highway=traffic signals highway=trunk: FR:Tag:highway=trunk highway=turning_circle: FR:Tag:highway=turning circle @@ -9681,8 +10349,12 @@ fr: historic=wayside_shrine: FR:Tag:historic=wayside shrine historic=wreck: FR:Tag:historic=wreck industrial=brewery: FR:Tag:industrial=brewery + information=guidepost: FR:Tag:information=guidepost + information=map: FR:Tag:information=map junction=roundabout: FR:Tag:junction=roundabout + landcover=grass: FR:Tag:landcover=grass landuse=allotments: FR:Tag:landuse=allotments + landuse=animal_keeping: FR:Tag:landuse=animal keeping landuse=basin: FR:Tag:landuse=basin landuse=cemetery: FR:Tag:landuse=cemetery landuse=commercial: FR:Tag:landuse=commercial @@ -9695,6 +10367,7 @@ fr: landuse=garages: FR:Tag:landuse=garages landuse=grass: FR:Tag:landuse=grass landuse=greenhouse_horticulture: FR:Tag:landuse=greenhouse horticulture + landuse=industrial: FR:Tag:landuse=industrial landuse=meadow: FR:Tag:landuse=meadow landuse=orchard: FR:Tag:landuse=orchard landuse=plant_nursery: FR:Tag:landuse=plant nursery @@ -9705,7 +10378,10 @@ fr: landuse=salt_pond: FR:Tag:landuse=salt pond landuse=village_green: FR:Tag:landuse=village green leaf_cycle=deciduous: FR:Tag:leaf cycle=deciduous + leisure=bandstand: FR:Tag:leisure=bandstand leisure=dog_park: FR:Tag:leisure=dog park + leisure=escape_game: FR:Tag:leisure=escape game + leisure=firepit: FR:Tag:leisure=firepit leisure=fishing: FR:Tag:leisure=fishing leisure=fitness_centre: FR:Tag:leisure=fitness centre leisure=garden: FR:Tag:leisure=garden @@ -9726,14 +10402,18 @@ fr: leisure=track: FR:Tag:leisure=track leisure=water_park: FR:Tag:leisure=water park man_made=adit: FR:Tag:man made=adit + man_made=carpet_hanger: FR:Tag:man made=carpet hanger man_made=cutline: FR:Tag:man made=cutline man_made=dovecote: FR:Tag:man made=dovecote man_made=flagpole: FR:Tag:man made=flagpole + man_made=insect_hotel: FR:Tag:man made=insect hotel man_made=kiln: FR:Tag:man made=kiln man_made=lighthouse: FR:Tag:man made=lighthouse + man_made=mast: FR:Tag:man made=mast man_made=mineshaft: FR:Tag:man made=mineshaft man_made=monitoring_station: FR:Tag:man made=monitoring station man_made=pier: FR:Tag:man made=pier + man_made=reservoir_covered: FR:Tag:man made=reservoir covered man_made=street_cabinet: FR:Tag:man made=street cabinet man_made=surveillance: FR:Tag:man made=surveillance man_made=survey_point: FR:Tag:man made=survey point @@ -9746,9 +10426,11 @@ fr: man_made=windmill: FR:Tag:man made=windmill man_made=windpump: FR:Tag:man made=windpump medical=aed: FR:Tag:medical=aed + memorial=plaque: FR:Tag:memorial=plaque microbrewery=yes: FR:Tag:microbrewery=yes military=bunker: FR:Tag:military=bunker natural=bare_rock: FR:Tag:natural=bare rock + natural=beach: FR:Tag:natural=beach natural=cave_entrance: FR:Tag:natural=cave entrance natural=cliff: FR:Tag:natural=cliff natural=coastline: FR:Tag:natural=coastline @@ -9767,8 +10449,13 @@ fr: natural=volcano: FR:Tag:natural=volcano natural=water: FR:Tag:natural=water natural=wetland: FR:Tag:natural=wetland + office=association: FR:Tag:office=association + office=company: FR:Tag:office=company office=employment_agency: FR:Tag:office=employment agency office=estate_agent: FR:Tag:office=estate agent + office=foundation: FR:Tag:office=foundation + office=government: FR:Tag:office=government + office=insurance: FR:Tag:office=insurance office=lawyer: FR:Tag:office=lawyer office=ngo: FR:Tag:office=ngo place=city: FR:Tag:place=city @@ -9801,6 +10488,8 @@ fr: power=transformer: FR:Tag:power=transformer public_transport=platform: FR:Tag:public transport=platform public_transport=station: FR:Tag:public transport=station + public_transport=stop_area: FR:Tag:public transport=stop area + public_transport=stop_position: FR:Tag:public transport=stop position pump=powered: FR:Tag:pump=powered railway=crossing: FR:Tag:railway=crossing railway=disused: FR:Tag:railway=disused @@ -9827,12 +10516,18 @@ fr: religion=sikh: FR:Tag:religion=sikh religion=taoist: FR:Tag:religion=taoist religion=zoroastrian: FR:Tag:religion=zoroastrian + route=bicycle: FR:Tag:route=bicycle route=coach: FR:Tag:route=coach + route=fitness_trail: FR:Tag:route=fitness trail route=piste: FR:Tag:route=piste + route=railway: FR:Tag:route=railway + route=transhumance: FR:Tag:route=transhumance service=alley: FR:Tag:service=alley service=driveway: FR:Tag:service=driveway service=parking_aisle: FR:Tag:service=parking aisle shelter_type=basic_hut: FR:Tag:shelter type=basic hut + shelter_type=lean_to: FR:Tag:shelter type=lean to + shop=agrarian: FR:Tag:shop=agrarian shop=alcohol: FR:Tag:shop=alcohol shop=anime: FR:Tag:shop=anime shop=baby_goods: FR:Tag:shop=baby goods @@ -9860,8 +10555,11 @@ fr: shop=department_store: FR:Tag:shop=department store shop=dive: FR:Tag:shop=dive shop=doityourself: FR:Tag:shop=doityourself + shop=dry_cleaning: FR:Tag:shop=dry cleaning shop=electronics: FR:Tag:shop=electronics + shop=erotic: FR:Tag:shop=erotic shop=farm: FR:Tag:shop=farm + shop=fashion: FR:Tag:shop=fashion shop=florist: FR:Tag:shop=florist shop=frame: FR:Tag:shop=frame shop=frozen_food: FR:Tag:shop=frozen food @@ -9874,6 +10572,7 @@ fr: shop=hairdresser: FR:Tag:shop=hairdresser shop=hardware: FR:Tag:shop=hardware shop=hunting: FR:Tag:shop=hunting + shop=interior_decoration: FR:Tag:shop=interior decoration shop=jewelry: FR:Tag:shop=jewelry shop=kiosk: FR:Tag:shop=kiosk shop=kitchen: FR:Tag:shop=kitchen @@ -9883,21 +10582,28 @@ fr: shop=motorcycle: FR:Tag:shop=motorcycle shop=newsagent: FR:Tag:shop=newsagent shop=optician: FR:Tag:shop=optician + shop=outdoor: FR:Tag:shop=outdoor shop=pastry: FR:Tag:shop=pastry shop=pet: FR:Tag:shop=pet shop=pharmacy: FR:Tag:shop=pharmacy shop=photo: FR:Tag:shop=photo shop=second_hand: FR:Tag:shop=second hand + shop=sewing: FR:Tag:shop=sewing shop=shoes: FR:Tag:shop=shoes shop=supermarket: FR:Tag:shop=supermarket shop=ticket: FR:Tag:shop=ticket shop=toys: FR:Tag:shop=toys shop=trade: FR:Tag:shop=trade + shop=vacant: FR:Tag:shop=vacant shop=video: FR:Tag:shop=video + shop=video_games: FR:Tag:shop=video games sport=8pin: FR:Tag:sport=8pin + sport=archery: FR:Tag:sport=archery sport=boules: FR:Tag:sport=boules sport=climbing: FR:Tag:sport=climbing + sport=equestrian: FR:Tag:sport=equestrian sport=free_flying: FR:Tag:sport=free flying + sport=horse_racing: FR:Tag:sport=horse racing sport=shooting: FR:Tag:sport=shooting sport=soccer: FR:Tag:sport=soccer switch=circuit_breaker: FR:Tag:switch=circuit breaker @@ -9922,16 +10628,37 @@ fr: tourism=museum: FR:Tag:tourism=museum tourism=picnic_site: FR:Tag:tourism=picnic site tourism=theme_park: FR:Tag:tourism=theme park + tourism=trail_riding_station: FR:Tag:tourism=trail riding station tourism=viewpoint: FR:Tag:tourism=viewpoint tourism=wilderness_hut: FR:Tag:tourism=wilderness hut tourism=zoo: FR:Tag:tourism=zoo + tower:type=communication: FR:Tag:tower:type=communication traffic_sign=city_limit: FR:Tag:traffic sign=city limit tunnel=culvert: FR:Tag:tunnel=culvert + tunnel=flooded: FR:Tag:tunnel=flooded + usage=headrace: FR:Tag:usage=headrace + usage=irrigation: FR:Tag:usage=irrigation + usage=penstock: FR:Tag:usage=penstock + usage=spillway: FR:Tag:usage=spillway + usage=tailrace: FR:Tag:usage=tailrace + vending=bread: FR:Tag:vending=bread vending=chemist: FR:Tag:vending=chemist + vending=coffee: FR:Tag:vending=coffee vending=condoms: FR:Tag:vending=condoms + vending=drinks: FR:Tag:vending=drinks + vending=electronics: FR:Tag:vending=electronics vending=excrement_bags: FR:Tag:vending=excrement bags + vending=fishing_bait: FR:Tag:vending=fishing bait + vending=flowers: FR:Tag:vending=flowers + vending=food: FR:Tag:vending=food + vending=ice_cream: FR:Tag:vending=ice cream + vending=milk: FR:Tag:vending=milk vending=parcel_pickup: FR:Tag:vending=parcel pickup + vending=parking_tickets: FR:Tag:vending=parking tickets + vending=sweets: FR:Tag:vending=sweets + vending=water: FR:Tag:vending=water wall=no: FR:Tag:wall=no + water=reservoir: FR:Tag:water=reservoir waterway=boatyard: FR:Tag:waterway=boatyard waterway=canal: FR:Tag:waterway=canal waterway=dam: FR:Tag:waterway=dam @@ -9940,6 +10667,7 @@ fr: waterway=drain: FR:Tag:waterway=drain waterway=fish_pass: FR:Tag:waterway=fish pass waterway=lock_gate: FR:Tag:waterway=lock gate + waterway=pressurised: FR:Tag:waterway=pressurised waterway=river: FR:Tag:waterway=river waterway=riverbank: FR:Tag:waterway=riverbank waterway=stream: FR:Tag:waterway=stream @@ -9949,9 +10677,20 @@ fr: wetland=swamp: FR:Tag:wetland=swamp gl: key: + imagery_used: Gl:Key:imagery used + locale: Gl:Key:locale + name: Gl:Key:name + route: Gl:Key:route + sport: Gl:Key:sport + tourism: Gl:Key:tourism + tunnel: Gl:Key:tunnel wheelchair: Gl:Key:wheelchair tag: amenity=recycling: Gl:Tag:amenity=recycling + railway=tram: Gl:Tag:railway=tram + social_facility=nursing_home: Gl:Tag:social facility=nursing home + sport=padel: Gl:Tag:sport=padel + waterway=dock: Gl:Tag:waterway=dock hr: key: amenity: Hr:Key:amenity @@ -9973,6 +10712,7 @@ ht: pump: Ht:Key:pump hu: key: + HU:ed_direction: Hu:Key:HU:ed direction HU:hu-go:length: Hu:Key:HU:hu-go:length HU:hu-go:milestone: Hu:Key:HU:hu-go:milestone HU:hu-go:road: Hu:Key:HU:hu-go:road @@ -10010,18 +10750,24 @@ hu: wood: Hu:Key:wood tag: boundary=administrative: Hu:Tag:boundary=administrative + highway=street_lamp: Hu:Tag:highway=street lamp natural=wallow: Hu:Tag:natural=wallow railway=level_crossing: Hu:Tag:railway=level crossing id: tag: highway=track: Id:Tag:highway=track + shop=pawnbroker: Id:Tag:shop=pawnbroker it: key: abutters: IT:Key:abutters access: IT:Key:access addr: IT:Key:addr + addr:housenumber: IT:Key:addr:housenumber + addr:postcode: IT:Key:addr:postcode + addr:street: IT:Key:addr:street aerialway: IT:Key:aerialway aeroway: IT:Key:aeroway + alt_name: IT:Key:alt name amenity: IT:Key:amenity artwork_type: IT:Key:artwork type backrest: IT:Key:backrest @@ -10030,6 +10776,7 @@ it: bicycle_parking: IT:Key:bicycle parking boundary: IT:Key:boundary bridge: IT:Key:bridge + bridge:structure: IT:Key:bridge:structure building: IT:Key:building building:levels: IT:Key:building:levels cables: IT:Key:cables @@ -10075,6 +10822,13 @@ it: maxwidth: IT:Key:maxwidth military: IT:Key:military mooring: IT:Key:mooring + motorcycle:clothes: IT:Key:motorcycle:clothes + motorcycle:parts: IT:Key:motorcycle:parts + motorcycle:rental: IT:Key:motorcycle:rental + motorcycle:repair: IT:Key:motorcycle:repair + motorcycle:sales: IT:Key:motorcycle:sales + motorcycle:type: IT:Key:motorcycle:type + motorcycle:tyres: IT:Key:motorcycle:tyres mountain_pass: IT:Key:mountain pass mtb:scale: IT:Key:mtb:scale mtb:scale:imba: IT:Key:mtb:scale:imba @@ -10083,6 +10837,7 @@ it: noexit: IT:Key:noexit note: IT:Key:note office: IT:Key:office + oneway: IT:Key:oneway opening_hours: IT:Key:opening hours operator: IT:Key:operator organic: IT:Key:organic @@ -10096,18 +10851,27 @@ it: proposed: IT:Key:proposed railway: IT:Key:railway ref: IT:Key:ref + ref:mise: IT:Key:ref:mise ref:vatin: IT:Key:ref:vatin religion: IT:Key:religion residential: IT:Key:residential route: IT:Key:route sac_scale: IT:Key:sac scale + second_hand: IT:Key:second hand service: IT:Key:service + service:bicycle:diy: IT:Key:service:bicycle:diy + service:bicycle:rental: IT:Key:service:bicycle:rental + service:bicycle:repair: IT:Key:service:bicycle:repair + service:bicycle:retail: IT:Key:service:bicycle:retail + service:bicycle:second_hand: IT:Key:service:bicycle:second hand shop: IT:Key:shop + sidewalk: IT:Key:sidewalk smoothness: IT:Key:smoothness sport: IT:Key:sport stop: IT:Key:stop surface: IT:Key:surface surveillance: IT:Key:surveillance + tank_trap: IT:Key:tank trap tourism: IT:Key:tourism tracktype: IT:Key:tracktype traffic_calming: IT:Key:traffic calming @@ -10122,10 +10886,28 @@ it: wires: IT:Key:wires zone:maxspeed: IT:Key:zone:maxspeed tag: + aeroway=aerodrome: IT:Tag:aeroway=aerodrome + aeroway=airstrip: IT:Tag:aeroway=airstrip + aeroway=apron: IT:Tag:aeroway=apron + aeroway=gate: IT:Tag:aeroway=gate + aeroway=hangar: IT:Tag:aeroway=hangar + aeroway=helipad: IT:Tag:aeroway=helipad + aeroway=heliport: IT:Tag:aeroway=heliport + aeroway=holding_position: IT:Tag:aeroway=holding position + aeroway=navigationaid: IT:Tag:aeroway=navigationaid + aeroway=parking_position: IT:Tag:aeroway=parking position + aeroway=runway: IT:Tag:aeroway=runway + aeroway=spaceport: IT:Tag:aeroway=spaceport + aeroway=taxilane: IT:Tag:aeroway=taxilane + aeroway=taxiway: IT:Tag:aeroway=taxiway + aeroway=terminal: IT:Tag:aeroway=terminal + aeroway=windsock: IT:Tag:aeroway=windsock amenity=animal_boarding: IT:Tag:amenity=animal boarding amenity=animal_breeding: IT:Tag:amenity=animal breeding amenity=animal_shelter: IT:Tag:amenity=animal shelter + amenity=bank: IT:Tag:amenity=bank amenity=bar: IT:Tag:amenity=bar + amenity=bbq: IT:Tag:amenity=bbq amenity=bench: IT:Tag:amenity=bench amenity=bicycle_rental: IT:Tag:amenity=bicycle rental amenity=cafe: IT:Tag:amenity=cafe @@ -10152,17 +10934,103 @@ it: amenity=spa: IT:Tag:amenity=spa amenity=university: IT:Tag:amenity=university amenity=waste_basket: IT:Tag:amenity=waste basket + barrier=block: IT:Tag:barrier=block + barrier=bollard: IT:Tag:barrier=bollard + barrier=border_control: IT:Tag:barrier=border control + barrier=bump_gate: IT:Tag:barrier=bump gate + barrier=cable_barrier: IT:Tag:barrier=cable barrier + barrier=city_wall: IT:Tag:barrier=city wall barrier=ditch: IT:Tag:barrier=ditch barrier=fence: IT:Tag:barrier=fence + barrier=guard_rail: IT:Tag:barrier=guard rail + barrier=handrail: IT:Tag:barrier=handrail + barrier=hedge: IT:Tag:barrier=hedge barrier=jersey_barrier: IT:Tag:barrier=jersey barrier + barrier=kerb: IT:Tag:barrier=kerb barrier=retaining_wall: IT:Tag:barrier=retaining wall + barrier=tank_trap: IT:Tag:barrier=tank trap barrier=toll_booth: IT:Tag:barrier=toll booth + barrier=wall: IT:Tag:barrier=wall building=residential: IT:Tag:building=residential building=train_station: IT:Tag:building=train station + craft=agricultural_engines: IT:Tag:craft=agricultural engines + craft=bakery: IT:Tag:craft=bakery + craft=basket_maker: IT:Tag:craft=basket maker + craft=beekeeper: IT:Tag:craft=beekeeper + craft=blacksmith: IT:Tag:craft=blacksmith + craft=boatbuilder: IT:Tag:craft=boatbuilder + craft=bookbinder: IT:Tag:craft=bookbinder + craft=brewery: IT:Tag:craft=brewery + craft=builder: IT:Tag:craft=builder + craft=cabinet_maker: IT:Tag:craft=cabinet maker + craft=car_repair: IT:Tag:craft=car repair + craft=carpenter: IT:Tag:craft=carpenter + craft=carpet_layer: IT:Tag:craft=carpet layer + craft=caterer: IT:Tag:craft=caterer + craft=chimney_sweeper: IT:Tag:craft=chimney sweeper + craft=clockmaker: IT:Tag:craft=clockmaker + craft=confectionery: IT:Tag:craft=confectionery + craft=cooper: IT:Tag:craft=cooper + craft=dental_technician: IT:Tag:craft=dental technician + craft=distillery: IT:Tag:craft=distillery + craft=dressmaker: IT:Tag:craft=dressmaker + craft=electrician: IT:Tag:craft=electrician + craft=electronics_repair: IT:Tag:craft=electronics repair + craft=embroiderer: IT:Tag:craft=embroiderer + craft=engraver: IT:Tag:craft=engraver + craft=floorer: IT:Tag:craft=floorer + craft=gardener: IT:Tag:craft=gardener + craft=glaziery: IT:Tag:craft=glaziery + craft=grinding_mill: IT:Tag:craft=grinding mill + craft=handicraft: IT:Tag:craft=handicraft + craft=hvac: IT:Tag:craft=hvac + craft=insulation: IT:Tag:craft=insulation + craft=jeweller: IT:Tag:craft=jeweller + craft=joiner: IT:Tag:craft=joiner + craft=key_cutter: IT:Tag:craft=key cutter + craft=locksmith: IT:Tag:craft=locksmith + craft=metal_construction: IT:Tag:craft=metal construction + craft=mint: IT:Tag:craft=mint + craft=musical_instrument: IT:Tag:craft=musical instrument + craft=oil_mill: IT:Tag:craft=oil mill + craft=optician: IT:Tag:craft=optician + craft=organ_builder: IT:Tag:craft=organ builder + craft=painter: IT:Tag:craft=painter + craft=parquet_layer: IT:Tag:craft=parquet layer + craft=photographer: IT:Tag:craft=photographer + craft=photographic_laboratory: IT:Tag:craft=photographic laboratory + craft=piano_tuner: IT:Tag:craft=piano tuner + craft=plasterer: IT:Tag:craft=plasterer + craft=plumber: IT:Tag:craft=plumber + craft=pottery: IT:Tag:craft=pottery + craft=printmaker: IT:Tag:craft=printmaker + craft=rigger: IT:Tag:craft=rigger + craft=roofer: IT:Tag:craft=roofer + craft=saddler: IT:Tag:craft=saddler + craft=sailmaker: IT:Tag:craft=sailmaker + craft=sawmill: IT:Tag:craft=sawmill + craft=scaffolder: IT:Tag:craft=scaffolder + craft=sculptor: IT:Tag:craft=sculptor + craft=shoemaker: IT:Tag:craft=shoemaker + craft=stand_builder: IT:Tag:craft=stand builder + craft=stonemason: IT:Tag:craft=stonemason + craft=sun_protection: IT:Tag:craft=sun protection + craft=tailor: IT:Tag:craft=tailor + craft=tiler: IT:Tag:craft=tiler + craft=tinsmith: IT:Tag:craft=tinsmith + craft=toolmaker: IT:Tag:craft=toolmaker + craft=turner: IT:Tag:craft=turner + craft=upholsterer: IT:Tag:craft=upholsterer + craft=watchmaker: IT:Tag:craft=watchmaker + craft=window_construction: IT:Tag:craft=window construction + craft=winery: IT:Tag:craft=winery emergency=fire_hydrant: IT:Tag:emergency=fire hydrant footway=crossing: IT:Tag:footway=crossing footway=sidewalk: IT:Tag:footway=sidewalk + geological=moraine: IT:Tag:geological=moraine + geological=outcrop: IT:Tag:geological=outcrop geological=palaeontological_site: IT:Tag:geological=palaeontological site + highway=bus_stop: IT:Tag:highway=bus stop highway=crossing: IT:Tag:highway=crossing highway=cycleway: IT:Tag:highway=cycleway highway=footway: IT:Tag:highway=footway @@ -10170,6 +11038,7 @@ it: highway=living_street: IT:Tag:highway=living street highway=mini_roundabout: IT:Tag:highway=mini roundabout highway=motorway: IT:Tag:highway=motorway + highway=motorway_junction: IT:Tag:highway=motorway junction highway=motorway_link: IT:Tag:highway=motorway link highway=path: IT:Tag:highway=path highway=pedestrian: IT:Tag:highway=pedestrian @@ -10195,11 +11064,15 @@ it: landuse=cemetery: IT:Tag:landuse=cemetery landuse=construction: IT:Tag:landuse=construction landuse=greenhouse_horticulture: IT:Tag:landuse=greenhouse horticulture + landuse=salt_pond: IT:Tag:landuse=salt pond leisure=beach_resort: IT:Tag:leisure=beach resort leisure=dog_park: IT:Tag:leisure=dog park + leisure=garden: IT:Tag:leisure=garden leisure=marina: IT:Tag:leisure=marina + leisure=nature_reserve: IT:Tag:leisure=nature reserve leisure=playground: IT:Tag:leisure=playground leisure=swimming_pool: IT:Tag:leisure=swimming pool + leisure=track: IT:Tag:leisure=track man_made=mast: IT:Tag:man made=mast man_made=works: IT:Tag:man made=works natural=bare_rock: IT:Tag:natural=bare rock @@ -10210,6 +11083,8 @@ it: natural=spring: IT:Tag:natural=spring natural=tree_row: IT:Tag:natural=tree row natural=wetland: IT:Tag:natural=wetland + office=foundation: IT:Tag:office=foundation + office=it: IT:Tag:office=it oneway=alternating: IT:Tag:oneway=alternating place=village: IT:Tag:place=village power=cable: IT:Tag:power=cable @@ -10223,6 +11098,10 @@ it: power=substation: IT:Tag:power=substation power=tower: IT:Tag:power=tower power=transformer: IT:Tag:power=transformer + public_transport=platform: IT:Tag:public transport=platform + public_transport=station: IT:Tag:public transport=station + public_transport=stop_area: IT:Tag:public transport=stop area + public_transport=stop_position: IT:Tag:public transport=stop position railway=level_crossing: IT:Tag:railway=level crossing residential=rural: IT:Tag:residential=rural residential=urban: IT:Tag:residential=urban @@ -10235,15 +11114,20 @@ it: shop=bicycle: IT:Tag:shop=bicycle shop=butcher: IT:Tag:shop=butcher shop=car: IT:Tag:shop=car + shop=car_parts: IT:Tag:shop=car parts + shop=car_repair: IT:Tag:shop=car repair shop=chemist: IT:Tag:shop=chemist shop=clothes: IT:Tag:shop=clothes shop=coffee: IT:Tag:shop=coffee shop=confectionery: IT:Tag:shop=confectionery shop=convenience: IT:Tag:shop=convenience shop=deli: IT:Tag:shop=deli + shop=electrical: IT:Tag:shop=electrical + shop=electronics: IT:Tag:shop=electronics shop=farm: IT:Tag:shop=farm shop=florist: IT:Tag:shop=florist shop=greengrocer: IT:Tag:shop=greengrocer + shop=hardware: IT:Tag:shop=hardware shop=hifi: IT:Tag:shop=hifi shop=kiosk: IT:Tag:shop=kiosk shop=mall: IT:Tag:shop=mall @@ -10255,13 +11139,17 @@ it: shop=supermarket: IT:Tag:shop=supermarket shop=tea: IT:Tag:shop=tea shop=tobacco: IT:Tag:shop=tobacco + shop=tyres: IT:Tag:shop=tyres shop=wine: IT:Tag:shop=wine + sport=balle_pelote: IT:Tag:sport=balle pelote sport=climbing: IT:Tag:sport=climbing sport=surfing: IT:Tag:sport=surfing summit:cross=yes: IT:Tag:summit:cross=yes + tourism=aquarium: IT:Tag:tourism=aquarium tourism=artwork: IT:Tag:tourism=artwork tourism=museum: IT:Tag:tourism=museum waterway=ditch: IT:Tag:waterway=ditch + waterway=river: IT:Tag:waterway=river waterway=stream: IT:Tag:waterway=stream ja: key: @@ -10336,7 +11224,10 @@ ja: border_type: JA:Key:border type both: JA:Key:both boundary: JA:Key:boundary + branch: JA:Key:branch brand: JA:Key:brand + brand:wikidata: JA:Key:brand:wikidata + breakfast: JA:Key:breakfast brewery: JA:Key:brewery bridge: JA:Key:bridge bridge:alt_name: JA:Key:bridge:alt name @@ -10375,6 +11266,7 @@ ja: cemetery: JA:Key:cemetery change: JA:Key:change check_date: JA:Key:check date + checkpoint: JA:Key:checkpoint circumference: JA:Key:circumference clothes: JA:Key:clothes club: JA:Key:club @@ -10665,6 +11557,7 @@ ja: parking: JA:Key:parking parking:condition: JA:Key:parking:condition parking:lane: JA:Key:parking:lane + passenger_information_display: JA:Key:passenger information display passing_places: JA:Key:passing places payment: JA:Key:payment payment:coins: JA:Key:payment:coins @@ -11268,6 +12161,7 @@ ja: geological=outcrop: JA:Tag:geological=outcrop geological=palaeontological_site: JA:Tag:geological=palaeontological site golf=bunker: JA:Tag:golf=bunker + golf=driving_range: JA:Tag:golf=driving range golf=fairway: JA:Tag:golf=fairway government=ministry: JA:Tag:government=ministry government=prosecutor: JA:Tag:government=prosecutor @@ -11437,6 +12331,7 @@ ja: leisure=common: JA:Tag:leisure=common leisure=dance: JA:Tag:leisure=dance leisure=dog_park: JA:Tag:leisure=dog park + leisure=escape_game: JA:Tag:leisure=escape game leisure=firepit: JA:Tag:leisure=firepit leisure=fishing: JA:Tag:leisure=fishing leisure=fitness_centre: JA:Tag:leisure=fitness centre @@ -11474,6 +12369,7 @@ ja: man_made=cross: JA:Tag:man made=cross man_made=cutline: JA:Tag:man made=cutline man_made=dike: JA:Tag:man made=dike + man_made=dovecote: JA:Tag:man made=dovecote man_made=dyke: JA:Tag:man made=dyke man_made=embankment: JA:Tag:man made=embankment man_made=flagpole: JA:Tag:man made=flagpole @@ -11555,6 +12451,7 @@ ja: natural=stone: JA:Tag:natural=stone natural=tree: JA:Tag:natural=tree natural=tree_row: JA:Tag:natural=tree row + natural=tree_stump: JA:Tag:natural=tree stump natural=valley: JA:Tag:natural=valley natural=volcano: JA:Tag:natural=volcano natural=water: JA:Tag:natural=water @@ -11801,6 +12698,7 @@ ja: shop=pawnbroker: JA:Tag:shop=pawnbroker shop=perfumery: JA:Tag:shop=perfumery shop=pet: JA:Tag:shop=pet + shop=pet_grooming: JA:Tag:shop=pet grooming shop=pharmacy: JA:Tag:shop=pharmacy shop=photo: JA:Tag:shop=photo shop=printing: JA:Tag:shop=printing @@ -11817,6 +12715,7 @@ ja: shop=spices: JA:Tag:shop=spices shop=sports: JA:Tag:shop=sports shop=stationery: JA:Tag:shop=stationery + shop=storage_rental: JA:Tag:shop=storage rental shop=supermarket: JA:Tag:shop=supermarket shop=swimming_pool: JA:Tag:shop=swimming pool shop=tailor: JA:Tag:shop=tailor @@ -11904,6 +12803,9 @@ ja: vending=excrement_bags: JA:Tag:vending=excrement bags vending=fuel: JA:Tag:vending=fuel vending=milk: JA:Tag:vending=milk + vending=parcel_pickup: JA:Tag:vending=parcel pickup + vending=parcel_pickup;parcel_mail_in: JA:Tag:vending=parcel pickup;parcel mail + in vending=parking_tickets: JA:Tag:vending=parking tickets vending=photo: JA:Tag:vending=photo wall=no: JA:Tag:wall=no @@ -11948,16 +12850,40 @@ ko: key: aerialway: Ko:Key:aerialway amenity: Ko:Key:amenity + crossing: Ko:Key:crossing ele: Ko:Key:ele + emergency: Ko:Key:emergency highway: Ko:Key:highway + intermittent: Ko:Key:intermittent + leisure: Ko:Key:leisure + local_ref: Ko:Key:local ref name: Ko:Key:name + operator:type: Ko:Key:operator:type + tracktype: Ko:Key:tracktype + wheelchair: Ko:Key:wheelchair wikipedia: Ko:Key:wikipedia tag: aerialway=cable_car: Ko:Tag:aerialway=cable car + amenity=fuel: Ko:Tag:amenity=fuel + barrier=kerb: Ko:Tag:barrier=kerb craft=tailor: Ko:Tag:craft=tailor + ford=stepping_stones: Ko:Tag:ford=stepping stones + highway=bus_stop: Ko:Tag:highway=bus stop + highway=elevator: Ko:Tag:highway=elevator highway=motorway: Ko:Tag:highway=motorway + highway=motorway_link: Ko:Tag:highway=motorway link + highway=service: Ko:Tag:highway=service + highway=services: Ko:Tag:highway=services + highway=stop: Ko:Tag:highway=stop highway=track: Ko:Tag:highway=track highway=trunk: Ko:Tag:highway=trunk + landuse=farmland: Ko:Tag:landuse=farmland + landuse=retail: Ko:Tag:landuse=retail + landuse=traffic_island: Ko:Tag:landuse=traffic island + leisure=disc_golf_course: Ko:Tag:leisure=disc golf course + man_made=mast: Ko:Tag:man made=mast + place=hamlet: Ko:Tag:place=hamlet + shop=convenience: Ko:Tag:shop=convenience shop=garden_centre: Ko:Tag:shop=garden centre shop=gift: Ko:Tag:shop=gift lt: @@ -11976,6 +12902,9 @@ ms: highway=tertiary: Ms:Tag:highway=tertiary highway=trunk: Ms:Tag:highway=trunk highway=unclassified: Ms:Tag:highway=unclassified +my: + tag: + craft=agricultural_engines: My:Tag:craft=agricultural engines ne: tag: landuse=meadow: Ne:Tag:landuse=meadow @@ -12016,8 +12945,10 @@ nl: natural: NL:Key:natural office: NL:Key:office place: NL:Key:place + population: NL:Key:population power_supply:schedule: NL:Key:power supply:schedule public_transport: NL:Key:public transport + ref:bag: NL:Key:ref:bag religion: NL:Key:religion route_master: NL:Key:route master scenic: NL:Key:scenic @@ -12039,6 +12970,7 @@ nl: amenity=parking: NL:Tag:amenity=parking amenity=post_office: NL:Tag:amenity=post office amenity=toilets: NL:Tag:amenity=toilets + amenity=vending_machine: NL:Tag:amenity=vending machine amenity=waste_basket: NL:Tag:amenity=waste basket barrier=bollard: NL:Tag:barrier=bollard barrier=fence: NL:Tag:barrier=fence @@ -12057,6 +12989,7 @@ nl: landuse=garages: NL:Tag:landuse=garages landuse=grass: NL:Tag:landuse=grass landuse=industrial: NL:Tag:landuse=industrial + leaf_cycle=deciduous: NL:Tag:leaf cycle=deciduous man_made=windmill: NL:Tag:man made=windmill natural=tree: NL:Tag:natural=tree public_transport=platform: NL:Tag:public transport=platform @@ -12067,6 +13000,7 @@ nl: shop=department_store: NL:Tag:shop=department store shop=greengrocer: NL:Tag:shop=greengrocer tourism=chalet: NL:Tag:tourism=chalet + vending=parking_tickets: NL:Tag:vending=parking tickets zoo=petting_zoo: NL:Tag:zoo=petting zoo no: key: @@ -12074,6 +13008,7 @@ no: boundary: No:Key:boundary building: No:Key:building fenced: No:Key:fenced + highway: No:Key:highway maxheight:legal: No:Key:maxheight:legal maxheight:marine: No:Key:maxheight:marine maxheight:physical: No:Key:maxheight:physical @@ -12087,39 +13022,40 @@ no: amenity=pharmacy: No:Tag:amenity=pharmacy amenity=place_of_worship: No:Tag:amenity=place of worship boundary=maritime: No:Tag:boundary=maritime + building=construction: No:Tag:building=construction + landuse=farmland: No:Tag:landuse=farmland leisure=park: No:Tag:leisure=park natural=tree: No:Tag:natural=tree +oc: + key: + name:oc: Oc:Key:name:oc pl: key: 4wd_only: Pl:Key:4wd only CEMT: Pl:Key:CEMT + FIXME: Pl:Key:FIXME + 'abandoned:': 'Pl:Key:abandoned:' abutters: Pl:Key:abutters access: Pl:Key:access addr: Pl:Key:addr addr:city: Pl:Key:addr:city - addr:country: Pl:Key:addr:country addr:county: Pl:Key:addr:county - addr:district: Pl:Key:addr:district addr:flats: Pl:Key:addr:flats - addr:hamlet: Pl:Key:addr:hamlet - addr:housenumber: Pl:Key:addr:housenumber addr:municipality: Pl:Key:addr:municipality addr:place: Pl:Key:addr:place - addr:postcode: Pl:Key:addr:postcode - addr:province: Pl:Key:addr:province - addr:state: Pl:Key:addr:state - addr:street: Pl:Key:addr:street - addr:subdistrict: Pl:Key:addr:subdistrict addr:suburb: Pl:Key:addr:suburb addr:village: Pl:Key:addr:village + adr_les: Pl:Key:adr les advertising: Pl:Key:advertising aerialway: Pl:Key:aerialway aeroway: Pl:Key:aeroway + agricultural: Pl:Key:agricultural alt_name: Pl:Key:alt name amenity: Pl:Key:amenity area: Pl:Key:area area:highway: Pl:Key:area:highway artwork_type: Pl:Key:artwork type + automated: Pl:Key:automated automatic_door: Pl:Key:automatic door backrest: Pl:Key:backrest bar: Pl:Key:bar @@ -12138,14 +13074,18 @@ pl: bridge:movable: Pl:Key:bridge:movable bridge:structure: Pl:Key:bridge:structure bridge:support: Pl:Key:bridge:support + budynek: Pl:Key:budynek building: Pl:Key:building building:architecture: Pl:Key:building:architecture + building:condition: Pl:Key:building:condition building:cullis:height: Pl:Key:building:cullis:height building:flats: Pl:Key:building:flats building:levels: Pl:Key:building:levels building:material: Pl:Key:building:material building:min_level: Pl:Key:building:min level building:part: Pl:Key:building:part + building:usage:pl: Pl:Key:building:usage:pl + building:use: Pl:Key:building:use bunker_type: Pl:Key:bunker type bus: Pl:Key:bus busway: Pl:Key:busway @@ -12159,12 +13099,17 @@ pl: comment: Pl:Key:comment communication:mobile_phone: Pl:Key:communication:mobile phone construction: Pl:Key:construction + construction_end_expected: Pl:Key:construction end expected + construction_start_expected: Pl:Key:construction start expected contact: Pl:Key:contact + country: Pl:Key:country covered: Pl:Key:covered craft: Pl:Key:craft crop: Pl:Key:crop crossing: Pl:Key:crossing + currency: Pl:Key:currency cutting: Pl:Key:cutting + cycleway: Pl:Key:cycleway deanery: Pl:Key:deanery denomination: Pl:Key:denomination denotation: Pl:Key:denotation @@ -12172,10 +13117,19 @@ pl: description: Pl:Key:description designation: Pl:Key:designation destination: Pl:Key:destination + diet: Pl:Key:diet + 'diet:': 'Pl:Key:diet:' + diet:halal: Pl:Key:diet:halal + diet:kosher: Pl:Key:diet:kosher diocese: Pl:Key:diocese + diplomatic: Pl:Key:diplomatic direction: Pl:Key:direction dispensing: Pl:Key:dispensing distance: Pl:Key:distance + drink: Pl:Key:drink + drinking_water: Pl:Key:drinking water + driving_side: Pl:Key:driving side + dryer: Pl:Key:dryer duration: Pl:Key:duration ele: Pl:Key:ele electrified: Pl:Key:electrified @@ -12188,6 +13142,7 @@ pl: fee: Pl:Key:fee fence_type: Pl:Key:fence type fire_boundary: Pl:Key:fire boundary + fishing: Pl:Key:fishing fixme: Pl:Key:fixme flood_mark: Pl:Key:flood mark flood_prone: Pl:Key:flood prone @@ -12197,10 +13152,17 @@ pl: fuel: Pl:Key:fuel gauge: Pl:Key:gauge generator:output: Pl:Key:generator:output + genus: Pl:Key:genus handrail: Pl:Key:handrail + healthcare: Pl:Key:healthcare height: Pl:Key:height + hgv: Pl:Key:hgv highway: Pl:Key:highway + highway_(propozycja_zmian): Pl:Key:highway (propozycja zmian) historic: Pl:Key:historic + horse: Pl:Key:horse + ice_road: Pl:Key:ice road + incline: Pl:Key:incline industrial: Pl:Key:industrial information: Pl:Key:information inscription: Pl:Key:inscription @@ -12240,7 +13202,6 @@ pl: man_made: Pl:Key:man made manhole: Pl:Key:manhole max_age: Pl:Key:max age - maxage: Pl:Key:maxage maxaxleload: Pl:Key:maxaxleload maxheight: Pl:Key:maxheight maxheight:legal: Pl:Key:maxheight:legal @@ -12254,9 +13215,9 @@ pl: maxwidth: Pl:Key:maxwidth maxwidth:physical: Pl:Key:maxwidth:physical memorial:type: Pl:Key:memorial:type + military: Pl:Key:military min_age: Pl:Key:min age min_height: Pl:Key:min height - minage: Pl:Key:minage minspeed: Pl:Key:minspeed mofa: Pl:Key:mofa monitoring:air_quality: Pl:Key:monitoring:air quality @@ -12264,8 +13225,11 @@ pl: moped: Pl:Key:moped motorboat: Pl:Key:motorboat motorcycle: Pl:Key:motorcycle + motorroad: Pl:Key:motorroad + mountain_pass: Pl:Key:mountain pass name: Pl:Key:name natural: Pl:Key:natural + network: Pl:Key:network noexit: Pl:Key:noexit note: Pl:Key:note office: Pl:Key:office @@ -12276,8 +13240,10 @@ pl: overtaking: Pl:Key:overtaking owner: Pl:Key:owner ownership: Pl:Key:ownership + parish: Pl:Key:parish parking: Pl:Key:parking parking:lane: Pl:Key:parking:lane + passing_places: Pl:Key:passing places place: Pl:Key:place place_name: Pl:Key:place name playground: Pl:Key:playground @@ -12286,6 +13252,7 @@ pl: priority: Pl:Key:priority produce: Pl:Key:produce product: Pl:Key:product + proposed: Pl:Key:proposed protect_class: Pl:Key:protect class psv: Pl:Key:psv public_transport: Pl:Key:public transport @@ -12293,14 +13260,19 @@ pl: railway: Pl:Key:railway railway:area: Pl:Key:railway:area ramp: Pl:Key:ramp + razed: Pl:Key:razed + 'razed:': 'Pl:Key:razed:' recycling_type: Pl:Key:recycling type religion: Pl:Key:religion + 'removed:': 'Pl:Key:removed:' repair: Pl:Key:repair resource: Pl:Key:resource roof:material: Pl:Key:roof:material route: Pl:Key:route route_master: Pl:Key:route master + 'ruined:': 'Pl:Key:ruined:' ruins: Pl:Key:ruins + 'ruins:': 'Pl:Key:ruins:' sac_scale: Pl:Key:sac scale seamark:fixme: Pl:Key:seamark:fixme second_hand: Pl:Key:second hand @@ -12315,13 +13287,21 @@ pl: social_facility:for: Pl:Key:social facility:for source:date: Pl:Key:source:date source:maxspeed: Pl:Key:source:maxspeed + species: Pl:Key:species sport: Pl:Key:sport start_date: Pl:Key:start date step_count: Pl:Key:step count + strapline: Pl:Key:strapline surface: Pl:Key:surface surveillance: Pl:Key:surveillance surveillance:type: Pl:Key:surveillance:type surveillance:zone: Pl:Key:surveillance:zone + symbol: Pl:Key:symbol + tactile_paving: Pl:Key:tactile paving + target: Pl:Key:target + taxon: Pl:Key:taxon + toilets: Pl:Key:toilets + toilets:wheelchair: Pl:Key:toilets:wheelchair toll: Pl:Key:toll tomb: Pl:Key:tomb tourism: Pl:Key:tourism @@ -12334,6 +13314,8 @@ pl: traffic_signals:minimap: Pl:Key:traffic signals:minimap traffic_signals:sound: Pl:Key:traffic signals:sound traffic_signals:vibration: Pl:Key:traffic signals:vibration + trail_visibility: Pl:Key:trail visibility + trailer: Pl:Key:trailer train: Pl:Key:train tram: Pl:Key:tram trolleybus: Pl:Key:trolleybus @@ -12345,12 +13327,16 @@ pl: usage: Pl:Key:usage vehicle: Pl:Key:vehicle voltage: Pl:Key:voltage + washing_machine: Pl:Key:washing machine + water: Pl:Key:water waterway: Pl:Key:waterway website: Pl:Key:website wetland: Pl:Key:wetland wheelchair: Pl:Key:wheelchair + wholesale: Pl:Key:wholesale width: Pl:Key:width wikipedia: Pl:Key:wikipedia + winter_road: Pl:Key:winter road wood: Pl:Key:wood zone:traffic: Pl:Key:zone:traffic zoo: Pl:Key:zoo @@ -12374,53 +13360,98 @@ pl: advertising=totem: Pl:Tag:advertising=totem advertising=wall_painting: Pl:Tag:advertising=wall painting aeroway=hangar: Pl:Tag:aeroway=hangar + aeroway=helipad: Pl:Tag:aeroway=helipad allotments=plot: Pl:Tag:allotments=plot amenity=administration: Pl:Tag:amenity=administration + amenity=animal_boarding: Pl:Tag:amenity=animal boarding + amenity=archive: Pl:Tag:amenity=archive amenity=atm: Pl:Tag:amenity=atm + amenity=audiologist: Pl:Tag:amenity=audiologist amenity=baby_hatch: Pl:Tag:amenity=baby hatch amenity=bank: Pl:Tag:amenity=bank + amenity=bar: Pl:Tag:amenity=bar amenity=bbq: Pl:Tag:amenity=bbq amenity=bench: Pl:Tag:amenity=bench amenity=bicycle_parking: Pl:Tag:amenity=bicycle parking amenity=bicycle_rental: Pl:Tag:amenity=bicycle rental + amenity=bicycle_repair_station: Pl:Tag:amenity=bicycle repair station + amenity=biergarten: Pl:Tag:amenity=biergarten + amenity=boat_rental: Pl:Tag:amenity=boat rental + amenity=boat_storage: Pl:Tag:amenity=boat storage amenity=brothel: Pl:Tag:amenity=brothel + amenity=bureau_de_change: Pl:Tag:amenity=bureau de change + amenity=bus_station: Pl:Tag:amenity=bus station + amenity=cafe: Pl:Tag:amenity=cafe + amenity=car_pooling: Pl:Tag:amenity=car pooling amenity=car_wash: Pl:Tag:amenity=car wash amenity=casino: Pl:Tag:amenity=casino + amenity=clinic: Pl:Tag:amenity=clinic + amenity=college: Pl:Tag:amenity=college amenity=compressed_air: Pl:Tag:amenity=compressed air + amenity=conference_centre: Pl:Tag:amenity=conference centre + amenity=coworking_space: Pl:Tag:amenity=coworking space + amenity=crematorium: Pl:Tag:amenity=crematorium amenity=crypt: Pl:Tag:amenity=crypt + amenity=dentist: Pl:Tag:amenity=dentist amenity=doctors: Pl:Tag:amenity=doctors amenity=drinking_water: Pl:Tag:amenity=drinking water amenity=driving_school: Pl:Tag:amenity=driving school + amenity=dryer: Pl:Tag:amenity=dryer + amenity=embassy: Pl:Tag:amenity=embassy amenity=events_venue: Pl:Tag:amenity=events venue + amenity=exhibition_centre: Pl:Tag:amenity=exhibition centre amenity=fast_food: Pl:Tag:amenity=fast food + amenity=feeding_place: Pl:Tag:amenity=feeding place amenity=ferry_terminal: Pl:Tag:amenity=ferry terminal amenity=fire_station: Pl:Tag:amenity=fire station amenity=food_court: Pl:Tag:amenity=food court amenity=fuel: Pl:Tag:amenity=fuel amenity=game_feeding: Pl:Tag:amenity=game feeding amenity=grave_yard: Pl:Tag:amenity=grave yard + amenity=hookah_lounge: Pl:Tag:amenity=hookah lounge + amenity=hospital: Pl:Tag:amenity=hospital amenity=hunting_stand: Pl:Tag:amenity=hunting stand amenity=ice_cream: Pl:Tag:amenity=ice cream + amenity=kindergarten: Pl:Tag:amenity=kindergarten + amenity=lavoir: Pl:Tag:amenity=lavoir + amenity=library: Pl:Tag:amenity=library + amenity=lounger: Pl:Tag:amenity=lounger amenity=marketplace: Pl:Tag:amenity=marketplace amenity=mortuary: Pl:Tag:amenity=mortuary amenity=music_venue: Pl:Tag:amenity=music venue + amenity=nightclub: Pl:Tag:amenity=nightclub amenity=parking: Pl:Tag:amenity=parking amenity=parking_entrance: Pl:Tag:amenity=parking entrance amenity=parking_space: Pl:Tag:amenity=parking space + amenity=payment_centre: Pl:Tag:amenity=payment centre amenity=pharmacy: Pl:Tag:amenity=pharmacy amenity=place_of_worship: Pl:Tag:amenity=place of worship amenity=post_box: Pl:Tag:amenity=post box amenity=post_office: Pl:Tag:amenity=post office + amenity=prison: Pl:Tag:amenity=prison + amenity=pub: Pl:Tag:amenity=pub + amenity=public_bookcase: Pl:Tag:amenity=public bookcase amenity=recycling: Pl:Tag:amenity=recycling amenity=restaurant: Pl:Tag:amenity=restaurant amenity=school: Pl:Tag:amenity=school amenity=shelter: Pl:Tag:amenity=shelter + amenity=shower: Pl:Tag:amenity=shower + amenity=snow_removal_station: Pl:Tag:amenity=snow removal station amenity=social_facility: Pl:Tag:amenity=social facility amenity=taxi: Pl:Tag:amenity=taxi + amenity=toilets: Pl:Tag:amenity=toilets + amenity=university: Pl:Tag:amenity=university + amenity=vehicle_inspection: Pl:Tag:amenity=vehicle inspection amenity=vehicle_ramp: Pl:Tag:amenity=vehicle ramp amenity=vending_machine: Pl:Tag:amenity=vending machine + amenity=veterinary: Pl:Tag:amenity=veterinary + amenity=washing_machine: Pl:Tag:amenity=washing machine amenity=waste_disposal: Pl:Tag:amenity=waste disposal amenity=water_point: Pl:Tag:amenity=water point + area:highway=cycleway: Pl:Tag:area:highway=cycleway + area:highway=footway: Pl:Tag:area:highway=footway + area:highway=path: Pl:Tag:area:highway=path + area:highway=pedestrian: Pl:Tag:area:highway=pedestrian atm=no: Pl:Tag:atm=no atm=yes: Pl:Tag:atm=yes attraction=animal: Pl:Tag:attraction=animal @@ -12439,9 +13470,11 @@ pl: barrier=guard_rail: Pl:Tag:barrier=guard rail barrier=handrail: Pl:Tag:barrier=handrail barrier=hedge: Pl:Tag:barrier=hedge + barrier=height_restrictor: Pl:Tag:barrier=height restrictor barrier=kerb: Pl:Tag:barrier=kerb barrier=lift_gate: Pl:Tag:barrier=lift gate barrier=retaining_wall: Pl:Tag:barrier=retaining wall + barrier=spikes: Pl:Tag:barrier=spikes barrier=toll_booth: Pl:Tag:barrier=toll booth barrier=turnstile: Pl:Tag:barrier=turnstile barrier=wall: Pl:Tag:barrier=wall @@ -12488,18 +13521,22 @@ pl: building=bridge: Pl:Tag:building=bridge building=bunker: Pl:Tag:building=bunker building=cabin: Pl:Tag:building=cabin + building=carport: Pl:Tag:building=carport building=cathedral: Pl:Tag:building=cathedral building=chapel: Pl:Tag:building=chapel building=church: Pl:Tag:building=church building=civic: Pl:Tag:building=civic building=commercial: Pl:Tag:building=commercial building=construction: Pl:Tag:building=construction + building=cowshed: Pl:Tag:building=cowshed building=detached: Pl:Tag:building=detached building=dormitory: Pl:Tag:building=dormitory building=entrance: Pl:Tag:building=entrance + building=farm: Pl:Tag:building=farm building=farm_auxiliary: Pl:Tag:building=farm auxiliary building=garage: Pl:Tag:building=garage building=garages: Pl:Tag:building=garages + building=grandstand: Pl:Tag:building=grandstand building=greenhouse: Pl:Tag:building=greenhouse building=hangar: Pl:Tag:building=hangar building=hospital: Pl:Tag:building=hospital @@ -12513,19 +13550,25 @@ pl: building=public: Pl:Tag:building=public building=residential: Pl:Tag:building=residential building=retail: Pl:Tag:building=retail + building=riding_hall: Pl:Tag:building=riding hall building=roof: Pl:Tag:building=roof building=ruins: Pl:Tag:building=ruins building=school: Pl:Tag:building=school + building=service: Pl:Tag:building=service building=shed: Pl:Tag:building=shed building=stable: Pl:Tag:building=stable building=sty: Pl:Tag:building=sty building=supermarket: Pl:Tag:building=supermarket building=synagogue: Pl:Tag:building=synagogue building=terrace: Pl:Tag:building=terrace + building=toilets: Pl:Tag:building=toilets building=train_station: Pl:Tag:building=train station building=transportation: Pl:Tag:building=transportation building=university: Pl:Tag:building=university building=warehouse: Pl:Tag:building=warehouse + bunker_type=gun_emplacement: Pl:Tag:bunker type=gun emplacement + bunker_type=technical: Pl:Tag:bunker type=technical + busway=lane: Pl:Tag:busway=lane castle_type=castrum: Pl:Tag:castle type=castrum castle_type=defensive: Pl:Tag:castle type=defensive castle_type=fortress: Pl:Tag:castle type=fortress @@ -12546,13 +13589,24 @@ pl: craft=brewery: Pl:Tag:craft=brewery craft=builder: Pl:Tag:craft=builder craft=cabinet_maker: Pl:Tag:craft=cabinet maker + craft=caterer: Pl:Tag:craft=caterer + craft=embroiderer: Pl:Tag:craft=embroiderer craft=engraver: Pl:Tag:craft=engraver craft=grinding_mill: Pl:Tag:craft=grinding mill + craft=hvac: Pl:Tag:craft=hvac craft=oil_mill: Pl:Tag:craft=oil mill + craft=painter: Pl:Tag:craft=painter + craft=roofer: Pl:Tag:craft=roofer craft=sawmill: Pl:Tag:craft=sawmill + craft=shoemaker: Pl:Tag:craft=shoemaker craft=stonemason: Pl:Tag:craft=stonemason craft=winery: Pl:Tag:craft=winery - crossing=island: Pl:Tag:crossing=island + cycleway=lane: Pl:Tag:cycleway=lane + cycleway=opposite: Pl:Tag:cycleway=opposite + cycleway=opposite_lane: Pl:Tag:cycleway=opposite lane + cycleway=opposite_track: Pl:Tag:cycleway=opposite track + cycleway=share_busway: Pl:Tag:cycleway=share busway + cycleway=track: Pl:Tag:cycleway=track emergency=aed: Pl:Tag:emergency=aed emergency=defibrillator: Pl:Tag:emergency=defibrillator emergency=fire_extinguisher: Pl:Tag:emergency=fire extinguisher @@ -12564,28 +13618,44 @@ pl: emergency=lifeguard_place: Pl:Tag:emergency=lifeguard place emergency=lifeguard_platform: Pl:Tag:emergency=lifeguard platform emergency=lifeguard_tower: Pl:Tag:emergency=lifeguard tower + emergency=phone: Pl:Tag:emergency=phone emergency=suction_point: Pl:Tag:emergency=suction point emergency=water_tank: Pl:Tag:emergency=water tank footway=crossing: Pl:Tag:footway=crossing footway=sidewalk: Pl:Tag:footway=sidewalk + ford=stepping_stones: Pl:Tag:ford=stepping stones government=ministry: Pl:Tag:government=ministry government=prosecutor: Pl:Tag:government=prosecutor healthcare=laboratory: Pl:Tag:healthcare=laboratory + highway=abandoned: Pl:Tag:highway=abandoned highway=bridleway: Pl:Tag:highway=bridleway + highway=bus_guideway: Pl:Tag:highway=bus guideway highway=bus_stop: Pl:Tag:highway=bus stop + highway=corridor: Pl:Tag:highway=corridor highway=crossing: Pl:Tag:highway=crossing highway=cycleway: Pl:Tag:highway=cycleway + highway=elevator: Pl:Tag:highway=elevator + highway=emergency_access_point: Pl:Tag:highway=emergency access point + highway=emergency_bay: Pl:Tag:highway=emergency bay + highway=escape: Pl:Tag:highway=escape highway=footway: Pl:Tag:highway=footway + highway=ford: Pl:Tag:highway=ford highway=give_way: Pl:Tag:highway=give way highway=living_street: Pl:Tag:highway=living street highway=milestone: Pl:Tag:highway=milestone highway=mini_roundabout: Pl:Tag:highway=mini roundabout highway=motorway: Pl:Tag:highway=motorway + highway=motorway_(propozycja_zmian): Pl:Tag:highway=motorway (propozycja zmian) + highway=motorway_junction: Pl:Tag:highway=motorway junction + highway=motorway_link: Pl:Tag:highway=motorway link + highway=passing_place: Pl:Tag:highway=passing place highway=path: Pl:Tag:highway=path highway=pedestrian: Pl:Tag:highway=pedestrian + highway=platform: Pl:Tag:highway=platform highway=primary: Pl:Tag:highway=primary highway=proposed: Pl:Tag:highway=proposed highway=raceway: Pl:Tag:highway=raceway + highway=razed: Pl:Tag:highway=razed highway=residential: Pl:Tag:highway=residential highway=rest_area: Pl:Tag:highway=rest area highway=road: Pl:Tag:highway=road @@ -12593,14 +13663,18 @@ pl: highway=service: Pl:Tag:highway=service highway=services: Pl:Tag:highway=services highway=speed_camera: Pl:Tag:highway=speed camera + highway=speed_display: Pl:Tag:highway=speed display highway=steps: Pl:Tag:highway=steps highway=stop: Pl:Tag:highway=stop highway=street_lamp: Pl:Tag:highway=street lamp highway=tertiary: Pl:Tag:highway=tertiary highway=track: Pl:Tag:highway=track + highway=traffic_mirror: Pl:Tag:highway=traffic mirror highway=traffic_signals: Pl:Tag:highway=traffic signals highway=trunk: Pl:Tag:highway=trunk + highway=trunk_link: Pl:Tag:highway=trunk link highway=turning_circle: Pl:Tag:highway=turning circle + highway=turning_loop: Pl:Tag:highway=turning loop highway=unclassified: Pl:Tag:highway=unclassified historic=battlefield: Pl:Tag:historic=battlefield historic=city_gate: Pl:Tag:historic=city gate @@ -12622,9 +13696,14 @@ pl: industrial=salt_pond: Pl:Tag:industrial=salt pond industrial=sawmill: Pl:Tag:industrial=sawmill industrial=shipyard: Pl:Tag:industrial=shipyard + information=board: Pl:Tag:information=board information=guidepost: Pl:Tag:information=guidepost + information=map: Pl:Tag:information=map + information=office: Pl:Tag:information=office + information=terminal: Pl:Tag:information=terminal junction=roundabout: Pl:Tag:junction=roundabout landuse=allotments: Pl:Tag:landuse=allotments + landuse=animal_keeping: Pl:Tag:landuse=animal keeping landuse=apiary: Pl:Tag:landuse=apiary landuse=brownfield: Pl:Tag:landuse=brownfield landuse=cemetery: Pl:Tag:landuse=cemetery @@ -12642,6 +13721,7 @@ pl: landuse=industrial: Pl:Tag:landuse=industrial landuse=landfill: Pl:Tag:landuse=landfill landuse=meadow: Pl:Tag:landuse=meadow + landuse=military: Pl:Tag:landuse=military landuse=plant_nursery: Pl:Tag:landuse=plant nursery landuse=quarry: Pl:Tag:landuse=quarry landuse=railway: Pl:Tag:landuse=railway @@ -12654,21 +13734,18 @@ pl: landuse=village_green: Pl:Tag:landuse=village green leisure=adult_gaming_centre: Pl:Tag:leisure=adult gaming centre leisure=amusement_arcade: Pl:Tag:leisure=amusement arcade - leisure=arena: Pl:Tag:leisure=arena leisure=bandstand: Pl:Tag:leisure=bandstand leisure=bathing_place: Pl:Tag:leisure=bathing place leisure=bbq: Pl:Tag:leisure=bbq - leisure=beach: Pl:Tag:leisure=beach leisure=beach_resort: Pl:Tag:leisure=beach resort leisure=bird_hide: Pl:Tag:leisure=bird hide leisure=bleachers: Pl:Tag:leisure=bleachers leisure=bowling_alley: Pl:Tag:leisure=bowling alley - leisure=casino: Pl:Tag:leisure=casino - leisure=club: Pl:Tag:leisure=club leisure=common: Pl:Tag:leisure=common leisure=dance: Pl:Tag:leisure=dance leisure=disc_golf_course: Pl:Tag:leisure=disc golf course leisure=dog_park: Pl:Tag:leisure=dog park + leisure=escape_game: Pl:Tag:leisure=escape game leisure=firepit: Pl:Tag:leisure=firepit leisure=fishing: Pl:Tag:leisure=fishing leisure=fitness_centre: Pl:Tag:leisure=fitness centre @@ -12713,8 +13790,11 @@ pl: man_made=adit: Pl:Tag:man made=adit man_made=beacon: Pl:Tag:man made=beacon man_made=beehive: Pl:Tag:man made=beehive + man_made=bridge: Pl:Tag:man made=bridge man_made=bunker_silo: Pl:Tag:man made=bunker silo + man_made=campanile: Pl:Tag:man made=campanile man_made=chimney: Pl:Tag:man made=chimney + man_made=clearcut: Pl:Tag:man made=clearcut man_made=cross: Pl:Tag:man made=cross man_made=cutline: Pl:Tag:man made=cutline man_made=dyke: Pl:Tag:man made=dyke @@ -12739,9 +13819,10 @@ pl: man_made=windmill: Pl:Tag:man made=windmill man_made=windpump: Pl:Tag:man made=windpump man_made=works: Pl:Tag:man made=works - maxspeed=none: Pl:Tag:maxspeed=none - maxspeed=signals: Pl:Tag:maxspeed=signals military=bunker: Pl:Tag:military=bunker + military=danger_area: Pl:Tag:military=danger area + military=nuclear_explosion_site: Pl:Tag:military=nuclear explosion site + military=range: Pl:Tag:military=range military=trench: Pl:Tag:military=trench mooring=ferry: Pl:Tag:mooring=ferry natural=arete: Pl:Tag:natural=arete @@ -12786,9 +13867,44 @@ pl: natural=water: Pl:Tag:natural=water natural=wetland: Pl:Tag:natural=wetland natural=wood: Pl:Tag:natural=wood + network=lhn: Pl:Tag:network=lhn + network=rhn: Pl:Tag:network=rhn + office=accountant: Pl:Tag:office=accountant + office=adoption_agency: Pl:Tag:office=adoption agency + office=advertising_agency: Pl:Tag:office=advertising agency + office=architect: Pl:Tag:office=architect + office=association: Pl:Tag:office=association + office=charity: Pl:Tag:office=charity + office=company: Pl:Tag:office=company + office=educational_institution: Pl:Tag:office=educational institution + office=employment_agency: Pl:Tag:office=employment agency + office=energy_supplier: Pl:Tag:office=energy supplier + office=estate_agent: Pl:Tag:office=estate agent + office=forestry: Pl:Tag:office=forestry + office=foundation: Pl:Tag:office=foundation + office=geodesist: Pl:Tag:office=geodesist office=government: Pl:Tag:office=government + office=guide: Pl:Tag:office=guide + office=insurance: Pl:Tag:office=insurance + office=it: Pl:Tag:office=it + office=lawyer: Pl:Tag:office=lawyer office=logistics: Pl:Tag:office=logistics + office=moving_company: Pl:Tag:office=moving company + office=newspaper: Pl:Tag:office=newspaper + office=ngo: Pl:Tag:office=ngo + office=notary: Pl:Tag:office=notary + office=political_party: Pl:Tag:office=political party + office=private_investigator: Pl:Tag:office=private investigator + office=property_management: Pl:Tag:office=property management + office=quango: Pl:Tag:office=quango office=religion: Pl:Tag:office=religion + office=research: Pl:Tag:office=research + office=tax_advisor: Pl:Tag:office=tax advisor + office=telecommunication: Pl:Tag:office=telecommunication + office=therapist: Pl:Tag:office=therapist + office=tourist_accommodation: Pl:Tag:office=tourist accommodation + office=water_utility: Pl:Tag:office=water utility + parking:lane:hgv=on_street: Pl:Tag:parking:lane:hgv=on street place=allotments: Pl:Tag:place=allotments place=city: Pl:Tag:place=city place=farm: Pl:Tag:place=farm @@ -12809,12 +13925,14 @@ pl: power=tower: Pl:Tag:power=tower power=transformer: Pl:Tag:power=transformer public_transport=platform: Pl:Tag:public transport=platform + public_transport=station: Pl:Tag:public transport=station public_transport=stop_area: Pl:Tag:public transport=stop area public_transport=stop_position: Pl:Tag:public transport=stop position railway=abandoned: Pl:Tag:railway=abandoned railway=buffer_stop: Pl:Tag:railway=buffer stop railway=crossing: Pl:Tag:railway=crossing railway=crossing_controller: Pl:Tag:railway=crossing controller + railway=disused: Pl:Tag:railway=disused railway=level_crossing: Pl:Tag:railway=level crossing railway=rail: Pl:Tag:railway=rail railway=tram_stop: Pl:Tag:railway=tram stop @@ -12822,6 +13940,8 @@ pl: religion=jewish: Pl:Tag:religion=jewish religion=muslim: Pl:Tag:religion=muslim religion=pagan: Pl:Tag:religion=pagan + route=hiking: Pl:Tag:route=hiking + route=horse: Pl:Tag:route=horse service=alley: Pl:Tag:service=alley service=drive-through: Pl:Tag:service=drive-through service=driveway: Pl:Tag:service=driveway @@ -12832,22 +13952,40 @@ pl: service=spur: Pl:Tag:service=spur service=yard: Pl:Tag:service=yard shop=agrarian: Pl:Tag:shop=agrarian + shop=alcohol: Pl:Tag:shop=alcohol + shop=appliance: Pl:Tag:shop=appliance shop=baby_goods: Pl:Tag:shop=baby goods + shop=bag: Pl:Tag:shop=bag shop=bakery: Pl:Tag:shop=bakery shop=bathroom_furnishing: Pl:Tag:shop=bathroom furnishing shop=beauty: Pl:Tag:shop=beauty shop=bed: Pl:Tag:shop=bed + shop=beverages: Pl:Tag:shop=beverages shop=bicycle: Pl:Tag:shop=bicycle shop=boutique: Pl:Tag:shop=boutique + shop=brewing_supplies: Pl:Tag:shop=brewing supplies shop=butcher: Pl:Tag:shop=butcher + shop=camera: Pl:Tag:shop=camera shop=car: Pl:Tag:shop=car shop=car_repair: Pl:Tag:shop=car repair + shop=cheese: Pl:Tag:shop=cheese + shop=chocolate: Pl:Tag:shop=chocolate shop=clothes: Pl:Tag:shop=clothes + shop=coffee: Pl:Tag:shop=coffee + shop=collector: Pl:Tag:shop=collector shop=confectionery: Pl:Tag:shop=confectionery shop=convenience: Pl:Tag:shop=convenience + shop=copyshop: Pl:Tag:shop=copyshop + shop=curtain: Pl:Tag:shop=curtain + shop=dairy: Pl:Tag:shop=dairy + shop=deli: Pl:Tag:shop=deli shop=department_store: Pl:Tag:shop=department store shop=doityourself: Pl:Tag:shop=doityourself + shop=dry_cleaning: Pl:Tag:shop=dry cleaning + shop=equestrian: Pl:Tag:shop=equestrian shop=erotic: Pl:Tag:shop=erotic + shop=fabric: Pl:Tag:shop=fabric + shop=farm: Pl:Tag:shop=farm shop=fishing: Pl:Tag:shop=fishing shop=fishmonger: Pl:Tag:shop=fishmonger shop=florist: Pl:Tag:shop=florist @@ -12856,27 +13994,55 @@ pl: shop=garden_centre: Pl:Tag:shop=garden centre shop=gas: Pl:Tag:shop=gas shop=general: Pl:Tag:shop=general + shop=greengrocer: Pl:Tag:shop=greengrocer shop=haberdashery: Pl:Tag:shop=haberdashery shop=hairdresser: Pl:Tag:shop=hairdresser + shop=health_food: Pl:Tag:shop=health food shop=herbalist: Pl:Tag:shop=herbalist shop=houseware: Pl:Tag:shop=houseware + shop=hunting: Pl:Tag:shop=hunting shop=ice_cream: Pl:Tag:shop=ice cream shop=kiosk: Pl:Tag:shop=kiosk shop=kitchen: Pl:Tag:shop=kitchen + shop=laundry: Pl:Tag:shop=laundry + shop=leather: Pl:Tag:shop=leather + shop=lighting: Pl:Tag:shop=lighting shop=mall: Pl:Tag:shop=mall + shop=medical_supply: Pl:Tag:shop=medical supply + shop=optician: Pl:Tag:shop=optician shop=pastry: Pl:Tag:shop=pastry + shop=pet: Pl:Tag:shop=pet + shop=pet_grooming: Pl:Tag:shop=pet grooming + shop=pyrotechnics: Pl:Tag:shop=pyrotechnics + shop=religion: Pl:Tag:shop=religion + shop=rental: Pl:Tag:shop=rental + shop=seafood: Pl:Tag:shop=seafood shop=second_hand: Pl:Tag:shop=second hand + shop=sewing: Pl:Tag:shop=sewing + shop=shoes: Pl:Tag:shop=shoes + shop=spices: Pl:Tag:shop=spices + shop=stationery: Pl:Tag:shop=stationery shop=supermarket: Pl:Tag:shop=supermarket + shop=tattoo: Pl:Tag:shop=tattoo shop=tea: Pl:Tag:shop=tea shop=ticket: Pl:Tag:shop=ticket shop=travel_agency: Pl:Tag:shop=travel agency shop=tyres: Pl:Tag:shop=tyres shop=vacant: Pl:Tag:shop=vacant shop=variety_store: Pl:Tag:shop=variety store + shop=water: Pl:Tag:shop=water + shop=wholesale: Pl:Tag:shop=wholesale + shop=wine: Pl:Tag:shop=wine shop=yes: Pl:Tag:shop=yes social_facility=outreach: Pl:Tag:social facility=outreach + sport=10pin: Pl:Tag:sport=10pin + sport=9pin: Pl:Tag:sport=9pin sport=aikido: Pl:Tag:sport=aikido + sport=american_football: Pl:Tag:sport=american football sport=climbing: Pl:Tag:sport=climbing + sport=equestrian: Pl:Tag:sport=equestrian + sport=ice_hockey: Pl:Tag:sport=ice hockey + sport=soccer: Pl:Tag:sport=soccer tourism=alpine_hut: Pl:Tag:tourism=alpine hut tourism=apartment: Pl:Tag:tourism=apartment tourism=aquarium: Pl:Tag:tourism=aquarium @@ -12900,9 +14066,14 @@ pl: tourism=viewpoint: Pl:Tag:tourism=viewpoint tourism=wilderness_hut: Pl:Tag:tourism=wilderness hut tourism=wine_cellar: Pl:Tag:tourism=wine cellar - tourism=yes: Pl:Tag:tourism=yes tourism=zoo: Pl:Tag:tourism=zoo tower:type=bell_tower: Pl:Tag:tower:type=bell tower + tower:type=communication: Pl:Tag:tower:type=communication + tower:type=cooling: Pl:Tag:tower:type=cooling + tower:type=defensive: Pl:Tag:tower:type=defensive + tower:type=lighting: Pl:Tag:tower:type=lighting + tower:type=minaret: Pl:Tag:tower:type=minaret + tower:type=observation: Pl:Tag:tower:type=observation traffic_calming=island: Pl:Tag:traffic calming=island traffic_calming=table: Pl:Tag:traffic calming=table traffic_sign=city_limit: Pl:Tag:traffic sign=city limit @@ -12910,9 +14081,13 @@ pl: type=public_transport: Pl:Tag:type=public transport vending=bottle_return: Pl:Tag:vending=bottle return vending=candles: Pl:Tag:vending=candles + vending=food: Pl:Tag:vending=food + vending=fuel: Pl:Tag:vending=fuel + vending=milk: Pl:Tag:vending=milk wall=noise_barrier: Pl:Tag:wall=noise barrier water=lake: Pl:Tag:water=lake water=lock: Pl:Tag:water=lock + water=reservoir: Pl:Tag:water=reservoir waterway=boat_lift: Pl:Tag:waterway=boat lift waterway=boatyard: Pl:Tag:waterway=boatyard waterway=brook: Pl:Tag:waterway=brook @@ -12985,7 +14160,7 @@ pt: building:part: Pt:Key:building:part button_operated: Pt:Key:button operated cables: Pt:Key:cables - cep: Pt:Key:cep + capacity: Pt:Key:capacity construction: Pt:Key:construction contact: Pt:Key:contact country: Pt:Key:country @@ -13004,12 +14179,14 @@ pt: electrified: Pt:Key:electrified embankment: Pt:Key:embankment emergency: Pt:Key:emergency + fence_type: Pt:Key:fence type fenced: Pt:Key:fenced fishing: Pt:Key:fishing foot: Pt:Key:foot frequency: Pt:Key:frequency generator:method: Pt:Key:generator:method geological: Pt:Key:geological + group_only: Pt:Key:group only happy_hours: Pt:Key:happy hours height: Pt:Key:height heritage: Pt:Key:heritage @@ -13040,6 +14217,7 @@ pt: maxheight:marine: Pt:Key:maxheight:marine maxheight:physical: Pt:Key:maxheight:physical maxspeed: Pt:Key:maxspeed + maxspeed:advisory: Pt:Key:maxspeed:advisory maxweight: Pt:Key:maxweight military: Pt:Key:military min_height: Pt:Key:min height @@ -13065,6 +14243,7 @@ pt: population: Pt:Key:population postal_code: Pt:Key:postal code power: Pt:Key:power + product: Pt:Key:product psv: Pt:Key:psv public_transport: Pt:Key:public transport public_transport:version: Pt:Key:public transport:version @@ -13087,6 +14266,7 @@ pt: sidewalk: Pt:Key:sidewalk ski: Pt:Key:ski smoothness: Pt:Key:smoothness + social_facility: Pt:Key:social facility source: Pt:Key:source sport: Pt:Key:sport substance: Pt:Key:substance @@ -13112,15 +14292,29 @@ pt: wires: Pt:Key:wires tag: aerialway=cable_car: Pt:Tag:aerialway=cable car + aerialway=chair_lift: Pt:Tag:aerialway=chair lift + aerialway=drag_lift: Pt:Tag:aerialway=drag lift + aerialway=gondola: Pt:Tag:aerialway=gondola + aerialway=j-bar: Pt:Tag:aerialway=j-bar + aerialway=magic_carpet: Pt:Tag:aerialway=magic carpet + aerialway=mixed_lift: Pt:Tag:aerialway=mixed lift + aerialway=platter: Pt:Tag:aerialway=platter + aerialway=pylon: Pt:Tag:aerialway=pylon + aerialway=rope_tow: Pt:Tag:aerialway=rope tow aerialway=station: Pt:Tag:aerialway=station + aerialway=t-bar: Pt:Tag:aerialway=t-bar + aerialway=zip_line: Pt:Tag:aerialway=zip line aeroway=aerodrome: Pt:Tag:aeroway=aerodrome aeroway=apron: Pt:Tag:aeroway=apron aeroway=gate: Pt:Tag:aeroway=gate aeroway=hangar: Pt:Tag:aeroway=hangar aeroway=helipad: Pt:Tag:aeroway=helipad + aeroway=heliport: Pt:Tag:aeroway=heliport aeroway=holding_position: Pt:Tag:aeroway=holding position + aeroway=navigationaid: Pt:Tag:aeroway=navigationaid aeroway=parking_position: Pt:Tag:aeroway=parking position aeroway=runway: Pt:Tag:aeroway=runway + aeroway=taxilane: Pt:Tag:aeroway=taxilane aeroway=taxiway: Pt:Tag:aeroway=taxiway aeroway=terminal: Pt:Tag:aeroway=terminal aeroway=windsock: Pt:Tag:aeroway=windsock @@ -13251,6 +14445,8 @@ pt: building=residential: Pt:Tag:building=residential building=roof: Pt:Tag:building=roof building=school: Pt:Tag:building=school + building=shed: Pt:Tag:building=shed + building=university: Pt:Tag:building=university building=yes: Pt:Tag:building=yes craft=agricultural_engines: Pt:Tag:craft=agricultural engines craft=basket_maker: Pt:Tag:craft=basket maker @@ -14422,11 +15618,16 @@ ru: addr:suburb: RU:Key:addr:suburb aerialway: RU:Key:aerialway aeroway: RU:Key:aeroway + agricultural: RU:Key:agricultural alt_name: RU:Key:alt name amenity: RU:Key:amenity + anthropogenic: RU:Key:anthropogenic + architect: RU:Key:architect area: RU:Key:area area:highway: RU:Key:area:highway + artist_name: RU:Key:artist name artwork_type: RU:Key:artwork type + backcountry: RU:Key:backcountry barrier: RU:Key:barrier bench: RU:Key:bench bicycle: RU:Key:bicycle @@ -14437,11 +15638,14 @@ ru: border_type: RU:Key:border type boundary: RU:Key:boundary brand: RU:Key:brand + brand:wikidata: RU:Key:brand:wikidata bridge: RU:Key:bridge + bridge:support: RU:Key:bridge:support building: RU:Key:building building:architecture: RU:Key:building:architecture building:height: RU:Key:building:height building:levels: RU:Key:building:levels + building:levels:underground: RU:Key:building:levels:underground building:material: RU:Key:building:material building:min_level: RU:Key:building:min level building:part: RU:Key:building:part @@ -14451,12 +15655,14 @@ ru: bus: RU:Key:bus cafe: RU:Key:cafe capacity: RU:Key:capacity + cemetery: RU:Key:cemetery check_date: RU:Key:check date checkpoint: RU:Key:checkpoint clothes: RU:Key:clothes club: RU:Key:club colour: RU:Key:colour comment: RU:Key:comment + community_centre: RU:Key:community centre construction: RU:Key:construction contact: RU:Key:contact contact:facebook: RU:Key:contact:facebook @@ -14472,6 +15678,7 @@ ru: crossing: RU:Key:crossing cuisine: RU:Key:cuisine cutting: RU:Key:cutting + cycleway: RU:Key:cycleway delivery: RU:Key:delivery denomination: RU:Key:denomination description: RU:Key:description @@ -14526,6 +15733,7 @@ ru: grassland: RU:Key:grassland gvr:code: RU:Key:gvr:code handrail: RU:Key:handrail + healthcare: RU:Key:healthcare height: RU:Key:height hgv: RU:Key:hgv highway: RU:Key:highway @@ -14543,6 +15751,7 @@ ru: internet_access: RU:Key:internet access junction: RU:Key:junction kerb: RU:Key:kerb + lamp_mount: RU:Key:lamp mount landmark: RU:Key:landmark landuse: RU:Key:landuse lanes: RU:Key:lanes @@ -14557,6 +15766,7 @@ ru: living_street: RU:Key:living street loc_name: RU:Key:loc name loc_ref: RU:Key:loc ref + location: RU:Key:location lock: RU:Key:lock man_made: RU:Key:man made managed: RU:Key:managed @@ -14597,7 +15807,9 @@ ru: oneway: RU:Key:oneway opening_date: RU:Key:opening date opening_hours: RU:Key:opening hours + opening_hours:kitchen: RU:Key:opening hours:kitchen operator: RU:Key:operator + operator:ref:inn: RU:Key:operator:ref:inn operator:type: RU:Key:operator:type origin: RU:Key:origin overtaking: RU:Key:overtaking @@ -14627,6 +15839,7 @@ ru: previous:access: RU:Key:previous:access previous:vehicle: RU:Key:previous:vehicle priority_road: RU:Key:priority road + product: RU:Key:product psv: RU:Key:psv public_bookcase:type: RU:Key:public bookcase:type pump: RU:Key:pump @@ -14635,17 +15848,21 @@ ru: recycling_type: RU:Key:recycling type ref: RU:Key:ref reference: RU:Key:reference + refitted: RU:Key:refitted reg_name: RU:Key:reg name reg_ref: RU:Key:reg ref religion: RU:Key:religion resource: RU:Key:resource + roof:direction: RU:Key:roof:direction roof:material: RU:Key:roof:material + room: RU:Key:room rooms: RU:Key:rooms route: RU:Key:route rtsa_scale: RU:Key:rtsa scale ruined: RU:Key:ruined 'ruined:': 'RU:Key:ruined:' ruins: RU:Key:ruins + sac_scale: RU:Key:sac scale salt: RU:Key:salt sanitary_dump_station: RU:Key:sanitary dump station seasonal: RU:Key:seasonal @@ -14659,6 +15876,7 @@ ru: shop: RU:Key:shop side_road: RU:Key:side road sidewalk: RU:Key:sidewalk + sinkhole: RU:Key:sinkhole smoking: RU:Key:smoking smoothness: RU:Key:smoothness snowplowing: RU:Key:snowplowing @@ -14677,6 +15895,7 @@ ru: survey:date: RU:Key:survey:date tactile_paving: RU:Key:tactile paving todo: RU:Key:todo + toilets: RU:Key:toilets toilets:wheelchair: RU:Key:toilets:wheelchair toll: RU:Key:toll tourism: RU:Key:tourism @@ -14690,6 +15909,7 @@ ru: turn: RU:Key:turn turn:lanes: RU:Key:turn:lanes type: RU:Key:type + usage: RU:Key:usage vehicle: RU:Key:vehicle voltage: RU:Key:voltage waste: RU:Key:waste @@ -14755,6 +15975,7 @@ ru: amenity=cinema: RU:Tag:amenity=cinema amenity=clinic: RU:Tag:amenity=clinic amenity=clock: RU:Tag:amenity=clock + amenity=clothes_dryer: RU:Tag:amenity=clothes dryer amenity=college: RU:Tag:amenity=college amenity=community_centre: RU:Tag:amenity=community centre amenity=compressed_air: RU:Tag:amenity=compressed air @@ -14799,6 +16020,7 @@ ru: amenity=place_of_worship: RU:Tag:amenity=place of worship amenity=planetarium: RU:Tag:amenity=planetarium amenity=police: RU:Tag:amenity=police + amenity=polling_station: RU:Tag:amenity=polling station amenity=post_box: RU:Tag:amenity=post box amenity=post_office: RU:Tag:amenity=post office amenity=prison: RU:Tag:amenity=prison @@ -14808,6 +16030,7 @@ ru: amenity=recycling: RU:Tag:amenity=recycling amenity=register_office: RU:Tag:amenity=register office amenity=rescue_station: RU:Tag:amenity=rescue station + amenity=research_institute: RU:Tag:amenity=research institute amenity=restaurant: RU:Tag:amenity=restaurant amenity=sanatorium: RU:Tag:amenity=sanatorium amenity=sanitary_dump_station: RU:Tag:amenity=sanitary dump station @@ -14845,6 +16068,7 @@ ru: barrier=ditch: RU:Tag:barrier=ditch barrier=entrance: RU:Tag:barrier=entrance barrier=fence: RU:Tag:barrier=fence + barrier=full-height_turnstile: RU:Tag:barrier=full-height turnstile barrier=gate: RU:Tag:barrier=gate barrier=handrail: RU:Tag:barrier=handrail barrier=hedge: RU:Tag:barrier=hedge @@ -14877,6 +16101,7 @@ ru: bridge=covered: RU:Tag:bridge=covered building=apartments: RU:Tag:building=apartments building=barn: RU:Tag:building=barn + building=boathouse: RU:Tag:building=boathouse building=bridge: RU:Tag:building=bridge building=bungalow: RU:Tag:building=bungalow building=bunker: RU:Tag:building=bunker @@ -14903,6 +16128,7 @@ ru: building=kindergarten: RU:Tag:building=kindergarten building=kiosk: RU:Tag:building=kiosk building=mosque: RU:Tag:building=mosque + building=office: RU:Tag:building=office building=public: RU:Tag:building=public building=residential: RU:Tag:building=residential building=retail: RU:Tag:building=retail @@ -14917,8 +16143,10 @@ ru: building=transportation: RU:Tag:building=transportation building=university: RU:Tag:building=university building=warehouse: RU:Tag:building=warehouse + building=water_tower: RU:Tag:building=water tower bunker_type=pillbox: RU:Tag:bunker type=pillbox cafe=time-cafe: RU:Tag:cafe=time-cafe + cemetery=grave: RU:Tag:cemetery=grave craft=agricultural_engines: RU:Tag:craft=agricultural engines craft=basket_maker: RU:Tag:craft=basket maker craft=beekeeper: RU:Tag:craft=beekeeper @@ -14936,12 +16164,14 @@ ru: craft=handicraft: RU:Tag:craft=handicraft craft=key_cutter: RU:Tag:craft=key cutter craft=photographer: RU:Tag:craft=photographer + craft=roofer: RU:Tag:craft=roofer craft=shoemaker: RU:Tag:craft=shoemaker craft=stonemason: RU:Tag:craft=stonemason craft=tailor: RU:Tag:craft=tailor craft=window_construction: RU:Tag:craft=window construction crop=grape: RU:Tag:crop=grape crop=hop: RU:Tag:crop=hop + cycleway=opposite_lane: RU:Tag:cycleway=opposite lane emergency=ambulance_station: RU:Tag:emergency=ambulance station emergency=fire_extinguisher: RU:Tag:emergency=fire extinguisher emergency=fire_hose: RU:Tag:emergency=fire hose @@ -14957,6 +16187,7 @@ ru: generator:type=boiler: RU:Tag:generator:type=boiler geological=palaeontological_site: RU:Tag:geological=palaeontological site healthcare=blood_donation: RU:Tag:healthcare=blood donation + healthcare=laboratory: RU:Tag:healthcare=laboratory highway=bridleway: RU:Tag:highway=bridleway highway=bus_guideway: RU:Tag:highway=bus guideway highway=bus_stop: RU:Tag:highway=bus stop @@ -14980,6 +16211,7 @@ ru: highway=platform: RU:Tag:highway=platform highway=primary: RU:Tag:highway=primary highway=primary_link: RU:Tag:highway=primary link + highway=proposed: RU:Tag:highway=proposed highway=raceway: RU:Tag:highway=raceway highway=residential: RU:Tag:highway=residential highway=rest_area: RU:Tag:highway=rest area @@ -14991,6 +16223,7 @@ ru: highway=speed_camera: RU:Tag:highway=speed camera highway=steps: RU:Tag:highway=steps highway=stop: RU:Tag:highway=stop + highway=street_lamp: RU:Tag:highway=street lamp highway=tertiary: RU:Tag:highway=tertiary highway=tertiary_link: RU:Tag:highway=tertiary link highway=track: RU:Tag:highway=track @@ -15020,11 +16253,14 @@ ru: historic=wayside_shrine: RU:Tag:historic=wayside shrine historic=wreck: RU:Tag:historic=wreck horse=designated: RU:Tag:horse=designated + industrial=factory: RU:Tag:industrial=factory + industrial=warehouse: RU:Tag:industrial=warehouse industrial=well_cluster: RU:Tag:industrial=well cluster information=board: RU:Tag:information=board information=guidepost: RU:Tag:information=guidepost junction=roundabout: RU:Tag:junction=roundabout landuse=allotments: RU:Tag:landuse=allotments + landuse=animal_keeping: RU:Tag:landuse=animal keeping landuse=basin: RU:Tag:landuse=basin landuse=brownfield: RU:Tag:landuse=brownfield landuse=cemetery: RU:Tag:landuse=cemetery @@ -15038,6 +16274,7 @@ ru: landuse=grass: RU:Tag:landuse=grass landuse=greenhouse_horticulture: RU:Tag:landuse=greenhouse horticulture landuse=industrial: RU:Tag:landuse=industrial + landuse=institutional: RU:Tag:landuse=institutional landuse=landfill: RU:Tag:landuse=landfill landuse=logging: RU:Tag:landuse=logging landuse=meadow: RU:Tag:landuse=meadow @@ -15069,7 +16306,9 @@ ru: leisure=escape_game: RU:Tag:leisure=escape game leisure=firepit: RU:Tag:leisure=firepit leisure=fitness_centre: RU:Tag:leisure=fitness centre + leisure=fitness_station: RU:Tag:leisure=fitness station leisure=hackerspace: RU:Tag:leisure=hackerspace + leisure=horse_riding: RU:Tag:leisure=horse riding leisure=ice_rink: RU:Tag:leisure=ice rink leisure=marina: RU:Tag:leisure=marina leisure=miniature_golf: RU:Tag:leisure=miniature golf @@ -15077,6 +16316,7 @@ ru: leisure=pitch: RU:Tag:leisure=pitch leisure=playground: RU:Tag:leisure=playground leisure=resort: RU:Tag:leisure=resort + leisure=slipway: RU:Tag:leisure=slipway leisure=sports_centre: RU:Tag:leisure=sports centre leisure=stadium: RU:Tag:leisure=stadium leisure=summer_camp: RU:Tag:leisure=summer camp @@ -15089,13 +16329,16 @@ ru: man_made=bridge: RU:Tag:man made=bridge man_made=bunker_silo: RU:Tag:man made=bunker silo man_made=campanile: RU:Tag:man made=campanile + man_made=carpet_hanger: RU:Tag:man made=carpet hanger man_made=clearcut: RU:Tag:man made=clearcut man_made=communications_tower: RU:Tag:man made=communications tower + man_made=cooling_tower: RU:Tag:man made=cooling tower man_made=crane: RU:Tag:man made=crane man_made=cutline: RU:Tag:man made=cutline man_made=dovecote: RU:Tag:man made=dovecote man_made=dyke: RU:Tag:man made=dyke man_made=embankment: RU:Tag:man made=embankment + man_made=flagpole: RU:Tag:man made=flagpole man_made=lighthouse: RU:Tag:man made=lighthouse man_made=mast: RU:Tag:man made=mast man_made=mineshaft: RU:Tag:man made=mineshaft @@ -15113,6 +16356,7 @@ ru: man_made=telescope: RU:Tag:man made=telescope man_made=tower: RU:Tag:man made=tower man_made=wastewater_plant: RU:Tag:man made=wastewater plant + man_made=water_tap: RU:Tag:man made=water tap man_made=water_tower: RU:Tag:man made=water tower man_made=water_well: RU:Tag:man made=water well man_made=water_works: RU:Tag:man made=water works @@ -15122,6 +16366,7 @@ ru: man_made=works: RU:Tag:man made=works military=airfield: RU:Tag:military=airfield military=bunker: RU:Tag:military=bunker + military=checkpoint: RU:Tag:military=checkpoint military=naval_base: RU:Tag:military=naval base name=Продукты: RU:Tag:name=Продукты natural=arete: RU:Tag:natural=arete @@ -15133,10 +16378,12 @@ ru: natural=desert: RU:Tag:natural=desert natural=earth_bank: RU:Tag:natural=earth bank natural=fell: RU:Tag:natural=fell + natural=geyser: RU:Tag:natural=geyser natural=glacier: RU:Tag:natural=glacier natural=grassland: RU:Tag:natural=grassland natural=gully: RU:Tag:natural=gully natural=heath: RU:Tag:natural=heath + natural=hot_spring: RU:Tag:natural=hot spring natural=mud: RU:Tag:natural=mud natural=peak: RU:Tag:natural=peak natural=ridge: RU:Tag:natural=ridge @@ -15147,6 +16394,7 @@ ru: natural=shingle: RU:Tag:natural=shingle natural=sinkhole: RU:Tag:natural=sinkhole natural=spring: RU:Tag:natural=spring + natural=stone: RU:Tag:natural=stone natural=tree: RU:Tag:natural=tree natural=tree_row: RU:Tag:natural=tree row natural=valley: RU:Tag:natural=valley @@ -15225,6 +16473,7 @@ ru: railway=turntable: RU:Tag:railway=turntable religion=pagan: RU:Tag:religion=pagan religion=zoroastrian: RU:Tag:religion=zoroastrian + residential=rural: RU:Tag:residential=rural route=bus: RU:Tag:route=bus route=ferry: RU:Tag:route=ferry route=railway: RU:Tag:route=railway @@ -15286,6 +16535,7 @@ ru: shop=fashion: RU:Tag:shop=fashion shop=fishing: RU:Tag:shop=fishing shop=fishmonger: RU:Tag:shop=fishmonger + shop=flooring: RU:Tag:shop=flooring shop=florist: RU:Tag:shop=florist shop=frame: RU:Tag:shop=frame shop=funeral_directors: RU:Tag:shop=funeral directors @@ -15322,9 +16572,11 @@ ru: shop=optician: RU:Tag:shop=optician shop=organic: RU:Tag:shop=organic shop=outdoor: RU:Tag:shop=outdoor + shop=outpost: RU:Tag:shop=outpost shop=paint: RU:Tag:shop=paint shop=pawnbroker: RU:Tag:shop=pawnbroker shop=pet: RU:Tag:shop=pet + shop=pet_grooming: RU:Tag:shop=pet grooming shop=power_tools: RU:Tag:shop=power tools shop=radiotechnics: RU:Tag:shop=radiotechnics shop=religion: RU:Tag:shop=religion @@ -15332,6 +16584,7 @@ ru: shop=second_hand: RU:Tag:shop=second hand shop=ship_chandler: RU:Tag:shop=ship chandler shop=shoes: RU:Tag:shop=shoes + shop=spices: RU:Tag:shop=spices shop=sports: RU:Tag:shop=sports shop=stationery: RU:Tag:shop=stationery shop=supermarket: RU:Tag:shop=supermarket @@ -15350,12 +16603,16 @@ ru: shop=watches: RU:Tag:shop=watches shop=wholesale: RU:Tag:shop=wholesale shop=window_blind: RU:Tag:shop=window blind + sinkhole=bluehole: RU:Tag:sinkhole=bluehole social_facility=group_home: RU:Tag:social facility=group home sport=archery: RU:Tag:sport=archery + sport=futsal: RU:Tag:sport=futsal + sport=horse_racing: RU:Tag:sport=horse racing sport=motocross: RU:Tag:sport=motocross sport=motor: RU:Tag:sport=motor sport=scuba_diving: RU:Tag:sport=scuba diving sport=shooting: RU:Tag:sport=shooting + summit:cross=yes: RU:Tag:summit:cross=yes tank_trap=czech_hedgehog: RU:Tag:tank trap=czech hedgehog tourism=apartment: RU:Tag:tourism=apartment tourism=artwork: RU:Tag:tourism=artwork @@ -15373,6 +16630,8 @@ ru: tourism=theme_park: RU:Tag:tourism=theme park tourism=viewpoint: RU:Tag:tourism=viewpoint tower:type=bell_tower: RU:Tag:tower:type=bell tower + tower:type=cooling: RU:Tag:tower:type=cooling + traffic_calming=table: RU:Tag:traffic calming=table tunnel=culvert: RU:Tag:tunnel=culvert type=site: RU:Tag:type=site waterway=boatyard: RU:Tag:waterway=boatyard @@ -15408,6 +16667,7 @@ sv: key: access: Sv:Key:access name: Sv:Key:name + ref:raa: Sv:Key:ref:raa tag: aerialway=cable_car: Sv:Tag:aerialway=cable car amenity=place_of_worship: Sv:Tag:amenity=place of worship @@ -15420,6 +16680,7 @@ sv: leisure=dog_park: Sv:Tag:leisure=dog park leisure=fitness_station: Sv:Tag:leisure=fitness station railway=rail: Sv:Tag:railway=rail + sport=motocross: Sv:Tag:sport=motocross tr: key: amenity: Tr:Key:amenity @@ -15698,9 +16959,6 @@ yue: man_made=gasometer: Yue:Tag:man made=gasometer residential=university: Yue:Tag:residential=university tourism=attraction: Yue:Tag:tourism=attraction -zh: - key: - name: ZH:Key:name zh-hans: key: amenity: Zh-hans:Key:amenity @@ -15711,6 +16969,7 @@ zh-hans: highway: Zh-hans:Key:highway landuse: Zh-hans:Key:landuse name: Zh-hans:Key:name + parking:lane: Zh-hans:Key:parking:lane place: Zh-hans:Key:place railway: Zh-hans:Key:railway toll: Zh-hans:Key:toll @@ -15720,6 +16979,7 @@ zh-hans: amenity=cafe: Zh-hans:Tag:amenity=cafe barrier=toll_booth: Zh-hans:Tag:barrier=toll booth barrier=wall: Zh-hans:Tag:barrier=wall + highway=footway: Zh-hans:Tag:highway=footway highway=residential: Zh-hans:Tag:highway=residential highway=tertiary: Zh-hans:Tag:highway=tertiary railway=light_rail: Zh-hans:Tag:railway=light rail @@ -15734,9 +16994,11 @@ zh-hant: aeroway: Zh-hant:Key:aeroway amenity: Zh-hant:Key:amenity bridge: Zh-hant:Key:bridge + conveying: Zh-hant:Key:conveying diet:*: Zh-hant:Key:diet:* fixme: Zh-hant:Key:fixme fuel: Zh-hant:Key:fuel + maxspeed: Zh-hant:Key:maxspeed name: Zh-hant:Key:name noexit: Zh-hant:Key:noexit office: Zh-hant:Key:office @@ -15755,14 +17017,19 @@ zh-hant: amenity=fountain: Zh-hant:Tag:amenity=fountain amenity=fuel: Zh-hant:Tag:amenity=fuel amenity=place_of_worship: Zh-hant:Tag:amenity=place of worship + amenity=post_box: Zh-hant:Tag:amenity=post box amenity=toilets: Zh-hant:Tag:amenity=toilets building=roof: Zh-hant:Tag:building=roof + highway=bus_guideway: Zh-hant:Tag:highway=bus guideway highway=bus_stop: Zh-hant:Tag:highway=bus stop + highway=footway: Zh-hant:Tag:highway=footway highway=milestone: Zh-hant:Tag:highway=milestone + highway=unclassified: Zh-hant:Tag:highway=unclassified historic=aircraft: Zh-hant:Tag:historic=aircraft landuse=cemetery: Zh-hant:Tag:landuse=cemetery leisure=pitch: Zh-hant:Tag:leisure=pitch natural=peak: Zh-hant:Tag:natural=peak + railway=rail: Zh-hant:Tag:railway=rail service=drive-through: Zh-hant:Tag:service=drive-through shop=funeral_directors: Zh-hant:Tag:shop=funeral directors shop=gas: Zh-hant:Tag:shop=gas diff --git a/db/migrate/021_move_to_innodb.rb b/db/migrate/021_move_to_innodb.rb index 3232e2741..d1c20bcdb 100644 --- a/db/migrate/021_move_to_innodb.rb +++ b/db/migrate/021_move_to_innodb.rb @@ -19,7 +19,7 @@ class MoveToInnodb < ActiveRecord::Migration[5.0] # current version to something less so that we can update the version in # batches of 10000 tbl.classify.constantize.update_all(:version => -1) - tbl.classify.constantize.update_all("version=(SELECT max(version) FROM #{tbl} WHERE #{tbl}.id = current_#{tbl}.id)", { :version => -1 }, { :limit => 10000 }) while tbl.classify.constantize.where(:version => -1).count > 0 + tbl.classify.constantize.update_all("version=(SELECT max(version) FROM #{tbl} WHERE #{tbl}.id = current_#{tbl}.id)", { :version => -1 }, { :limit => 10000 }) while tbl.classify.constantize.where(:version => -1).count.positive? # execute "UPDATE current_#{tbl} SET version = " + # "(SELECT max(version) FROM #{tbl} WHERE #{tbl}.id = current_#{tbl}.id)" # The above update causes a MySQL error: diff --git a/lib/bounding_box.rb b/lib/bounding_box.rb index 1fc5dc696..6582a30c0 100644 --- a/lib/bounding_box.rb +++ b/lib/bounding_box.rb @@ -61,6 +61,7 @@ class BoundingBox # check the bbox is sane raise OSM::APIBadBoundingBox, "The minimum longitude must be less than the maximum longitude, but it wasn't" if min_lon > max_lon raise OSM::APIBadBoundingBox, "The minimum latitude must be less than the maximum latitude, but it wasn't" if min_lat > max_lat + if min_lon < -LON_LIMIT || min_lat < -LAT_LIMIT || max_lon > +LON_LIMIT || max_lat > +LAT_LIMIT raise OSM::APIBadBoundingBox, "The latitudes must be between #{-LAT_LIMIT} and #{LAT_LIMIT}," \ " and longitudes between #{-LON_LIMIT} and #{LON_LIMIT}" @@ -157,6 +158,7 @@ class BoundingBox def from_bbox_array(bbox_array) raise OSM::APIBadUserInput, "The parameter bbox is required, and must be of the form min_lon,min_lat,max_lon,max_lat" unless bbox_array + # Take an array of length 4, create a bounding box with min_lon, min_lat, max_lon and # max_lat within their respective boundaries. min_lon = [[bbox_array[0].to_f, -LON_LIMIT].max, +LON_LIMIT].min diff --git a/lib/classic_pagination/pagination.rb b/lib/classic_pagination/pagination.rb index 328237d52..811d09239 100644 --- a/lib/classic_pagination/pagination.rb +++ b/lib/classic_pagination/pagination.rb @@ -316,6 +316,7 @@ module ActionController # same page number). def ==(other) return false if other.nil? + @paginator == other.paginator && @number == other.number end @@ -326,6 +327,7 @@ module ActionController # if the pages do not belong to the same Paginator object. def <=>(other) raise ArgumentError unless @paginator == other.paginator + @number <=> other.number end @@ -396,7 +398,7 @@ module ActionController # Sets the window's padding (the number of pages on either side of the # window page). def padding=(padding) - @padding = padding < 0 ? 0 : padding + @padding = padding.negative? ? 0 : padding # Find the beginning and end pages of the window @first = if @paginator.has_page_number?(@page.number - @padding) @paginator[@page.number - @padding] diff --git a/lib/daemons/gpx_import.rb b/lib/daemons/gpx_import.rb index 4445d1ec0..a0344b58c 100755 --- a/lib/daemons/gpx_import.rb +++ b/lib/daemons/gpx_import.rb @@ -20,7 +20,7 @@ loop do begin gpx = trace.import - if gpx.actual_points > 0 + if gpx.actual_points.positive? Notifier.gpx_success(trace, gpx.actual_points).deliver else Notifier.gpx_failure(trace, "0 points parsed ok. Do they all have lat,lng,alt,timestamp?").deliver diff --git a/lib/geo_record.rb b/lib/geo_record.rb index e4a66f932..e02734ec9 100644 --- a/lib/geo_record.rb +++ b/lib/geo_record.rb @@ -29,6 +29,7 @@ module GeoRecord def in_world? return false if lat < -90 || lat > 90 return false if lon < -180 || lon > 180 + true end diff --git a/lib/gpx.rb b/lib/gpx.rb index ee9d53afa..8510df916 100644 --- a/lib/gpx.rb +++ b/lib/gpx.rb @@ -79,7 +79,7 @@ module GPX px = proj.x(p.longitude) py = proj.y(p.latitude) - if m > 0 + if m.positive? frames.times do |n| gc = if n == mm highlightgc.dup diff --git a/lib/potlatch.rb b/lib/potlatch.rb index 6fe0b0152..49e1e7a74 100644 --- a/lib/potlatch.rb +++ b/lib/potlatch.rb @@ -38,6 +38,7 @@ module Potlatch arr = {} while (key = getstring(s)) break if key == "" + arr[key] = getvalue(s) end s.getbyte # skip the 9 'end of object' value diff --git a/lib/utf8.rb b/lib/utf8.rb index 7865d6203..613e3005e 100644 --- a/lib/utf8.rb +++ b/lib/utf8.rb @@ -4,6 +4,7 @@ module UTF8 # using the iconv library, which is in the standard library. def self.valid?(str) return true if str.nil? + str.valid_encoding? end end diff --git a/script/deliver-message b/script/deliver-message index 98e00d332..2c440c3ec 100755 --- a/script/deliver-message +++ b/script/deliver-message @@ -23,7 +23,7 @@ end exit 0 unless token == digest[0, 6] exit 0 if date < 1.month.ago -message.update(:message_read => true) if message +message&.update(:message_read => true) mail = Mail.new(STDIN.read .encode(:universal_newline => true) diff --git a/script/gravatar b/script/gravatar index b86b79366..59ecff4f8 100755 --- a/script/gravatar +++ b/script/gravatar @@ -6,6 +6,7 @@ start = 0 User.where("image_use_gravatar AND id >=" + start.to_s).order("id").find_each do |user| p "checked up to id " + user.id.to_s if (user.id % 1000).zero? # just give a rough indication where we are for restarting next if user.image.present? + hash = Digest::MD5.hexdigest(user.email.downcase) url = "https://www.gravatar.com/avatar/#{hash}?d=404" # without d=404 we will always get an image back response = OSM.http_client.get(URI.parse(url)) diff --git a/script/misc/update-wiki-pages b/script/misc/update-wiki-pages index 84e1e8a1c..3f15c0df0 100755 --- a/script/misc/update-wiki-pages +++ b/script/misc/update-wiki-pages @@ -3,20 +3,11 @@ use 5.010; use strict; use warnings; -use Pod::Usage (); -use Getopt::Long (); - -BEGIN { - eval "require MediaWiki::API; require YAML::XS;" or do { - print "You have to install some modules via CPAN to run this:\n"; - print " sudo cpanp MediaWiki::API YAML::XS\n"; - exit 1; - }; -} - +use Getopt::Long; +use Pod::Usage; use MediaWiki::API; +use Test::More qw(no_plan); use YAML::XS qw(Dump); -use Test::More 'no_plan'; =head1 NAME diff --git a/script/vagrant/setup/provision.sh b/script/vagrant/setup/provision.sh index ca046dea9..fd9fb988d 100644 --- a/script/vagrant/setup/provision.sh +++ b/script/vagrant/setup/provision.sh @@ -16,12 +16,12 @@ apt-get update apt-get upgrade -y # install packages as explained in INSTALL.md -apt-get install -y ruby2.3 libruby2.3 ruby2.3-dev \ +apt-get install -y ruby2.5 libruby2.5 ruby2.5-dev \ libmagickwand-dev libxml2-dev libxslt1-dev nodejs \ apache2 apache2-dev build-essential git-core \ postgresql postgresql-contrib libpq-dev postgresql-server-dev-all \ libsasl2-dev imagemagick phantomjs -gem2.3 install bundler +gem2.5 install rake bundler ## install the bundle necessary for openstreetmap-website pushd /srv/openstreetmap-website diff --git a/test/controllers/amf_controller_test.rb b/test/controllers/amf_controller_test.rb index 5d7e1b778..0bdd01bd2 100644 --- a/test/controllers/amf_controller_test.rb +++ b/test/controllers/amf_controller_test.rb @@ -73,7 +73,7 @@ class AmfControllerTest < ActionController::TestCase assert_response :success amf_parse_response result = amf_result("/1") - assert_equal -4, result[0] + assert_equal(-4, result[0]) assert_equal "way", result[1] assert_equal id, result[2] assert(result[3].nil? && result[4].nil? && result[5].nil? && result[6].nil?) @@ -154,7 +154,7 @@ class AmfControllerTest < ActionController::TestCase assert_response :success amf_parse_response way = amf_result("/1") - assert_equal -4, way[0] + assert_equal(-4, way[0]) assert_equal "way", way[1] assert_equal 0, way[2] assert(way[3].nil?) && way[4].nil? && way[5].nil? && way[6].nil? @@ -370,7 +370,7 @@ class AmfControllerTest < ActionController::TestCase assert_response :success amf_parse_response returned_way = amf_result("/1") - assert_equal -1, returned_way[0] + assert_equal(-1, returned_way[0]) assert returned_way[3].nil? assert returned_way[4].nil? assert returned_way[5].nil? @@ -391,7 +391,7 @@ class AmfControllerTest < ActionController::TestCase assert_response :success amf_parse_response returned_way = amf_result("/1") - assert_equal -1, returned_way[0] + assert_equal(-1, returned_way[0]) assert returned_way[3].nil? assert returned_way[4].nil? assert returned_way[5].nil? @@ -408,7 +408,7 @@ class AmfControllerTest < ActionController::TestCase assert_response :success amf_parse_response returned_way = amf_result("/1") - assert_equal -1, returned_way[0] + assert_equal(-1, returned_way[0]) assert returned_way[3].nil? assert returned_way[4].nil? assert returned_way[5].nil? @@ -498,8 +498,8 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 2, result.length - assert_equal -1, result[0] - assert_match /must be logged in/, result[1] + assert_equal(-1, result[0]) + assert_match(/must be logged in/, result[1]) blocked_user = create(:user) create(:user_block, :user => blocked_user) @@ -510,8 +510,8 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 2, result.length - assert_equal -1, result[0] - assert_match /access to the API has been blocked/, result[1] + assert_equal(-1, result[0]) + assert_match(/access to the API has been blocked/, result[1]) end def test_findgpx_by_id @@ -546,7 +546,7 @@ class AmfControllerTest < ActionController::TestCase # find by name fails as it uses mysql text search syntax... assert_equal 2, result.length - assert_equal -2, result[0] + assert_equal(-2, result[0]) end def test_findrelations_by_id @@ -636,7 +636,7 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 3, result.length - assert_equal -4, result[0] + assert_equal(-4, result[0]) assert_equal "node", result[1] assert_equal 999999, result[2] end @@ -671,7 +671,7 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 3, result.length - assert_equal -4, result[0] + assert_equal(-4, result[0]) assert_equal "node", result[1] assert_equal node.node_id, result[2] @@ -682,7 +682,7 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 3, result.length - assert_equal -4, result[0] + assert_equal(-4, result[0]) assert_equal "node", result[1] assert_equal 999999, result[2] end @@ -747,7 +747,7 @@ class AmfControllerTest < ActionController::TestCase assert_equal 5, result.size assert_equal 0, result[0], "expected to get the status ok from the amf" assert_equal 0, result[2], "The old id should be 0" - assert result[3] > 0, "The new id should be greater than 0" + assert result[3].positive?, "The new id should be greater than 0" assert_equal 1, result[4], "The new version should be 1" # Finally check that the node that was saved has saved the data correctly @@ -784,7 +784,7 @@ class AmfControllerTest < ActionController::TestCase assert_equal 5, result.size assert_equal 0, result[0], "Expected to get the status ok in the amf" assert_equal 0, result[2], "The old id should be 0" - assert result[3] > 0, "The new id should be greater than 0" + assert result[3].positive?, "The new id should be greater than 0" assert_equal 1, result[4], "The new version should be 1" # Finally check that the node that was saved has saved the data correctly @@ -831,7 +831,7 @@ class AmfControllerTest < ActionController::TestCase assert_equal 5, result.size assert_equal 0, result[0], "Expected to get the status ok in the amf" assert_equal 0, result[2], "The old id should be 0" - assert result[3] > 0, "The new id should be greater than 0" + assert result[3].positive?, "The new id should be greater than 0" assert_equal 1, result[4], "The new version should be 1" # Finally check that the node that was saved has saved the data correctly @@ -864,7 +864,7 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 2, result.size - assert_equal -1, result[0], "Expected to get the status FAIL in the amf" + assert_equal(-1, result[0], "Expected to get the status FAIL in the amf") assert_equal "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1.", result[1] end @@ -904,7 +904,7 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 3, result.size - assert_equal -4, result[0] + assert_equal(-4, result[0]) assert_equal "node", result[1] assert_equal nd.id, result[2] end @@ -922,7 +922,7 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 3, result.size - assert_equal -4, result[0] + assert_equal(-4, result[0]) assert_equal "node", result[1] assert_equal 999999, result[2] end @@ -940,8 +940,8 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 2, result.size - assert_equal -2, result[0] - assert_match /Node is not in the world/, result[1] + assert_equal(-2, result[0]) + assert_match(/Node is not in the world/, result[1]) end # check that we can create a way @@ -966,8 +966,8 @@ class AmfControllerTest < ActionController::TestCase assert_equal 8, result.size assert_equal 0, result[0] assert_equal "", result[1] - assert_equal -1, result[2] - assert_not_equal -1, result[3] + assert_equal(-1, result[2]) + assert_not_equal(-1, result[3]) assert_equal({}, result[4]) assert_equal 1, result[5] assert_equal({}, result[6]) @@ -988,8 +988,8 @@ class AmfControllerTest < ActionController::TestCase assert_equal 8, result.size assert_equal 0, result[0] assert_equal "", result[1] - assert_equal -1, result[2] - assert_not_equal -1, result[3] + assert_equal(-1, result[2]) + assert_not_equal(-1, result[3]) assert_equal({}, result[4]) assert_equal 1, result[5] assert_equal({}, result[6]) @@ -1011,8 +1011,8 @@ class AmfControllerTest < ActionController::TestCase assert_equal 8, result.size assert_equal 0, result[0] assert_equal "", result[1] - assert_equal -1, result[2] - assert_not_equal -1, result[3] + assert_equal(-1, result[2]) + assert_not_equal(-1, result[3]) assert_equal({ "-1" => new_node_id }, result[4]) assert_equal 1, result[5] assert_equal({ new_node_id.to_s => 1, d.to_s => 2 }, result[6]) @@ -1193,8 +1193,8 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 2, result.size - assert_equal -1, result[0] - assert_match /Way #{way.id} is still used/, result[1] + assert_equal(-1, result[0]) + assert_match(/Way #{way.id} is still used/, result[1]) new_way = Way.find(way.id) assert_equal way.version, new_way.version @@ -1225,8 +1225,8 @@ class AmfControllerTest < ActionController::TestCase assert_equal 5, result.size assert_equal 0, result[0] assert_equal "", result[1] - assert_equal -1, result[2] - assert_not_equal -1, result[3] + assert_equal(-1, result[2]) + assert_not_equal(-1, result[3]) assert_equal 1, result[4] new_relation = Relation.find(new_relation_id) @@ -1307,8 +1307,8 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 2, result.size - assert_equal -1, result[0] - assert_match /relation #{relation.id} is used in/, result[1] + assert_equal(-1, result[0]) + assert_match(/relation #{relation.id} is used in/, result[1]) new_relation = Relation.find(relation.id) assert_equal relation.version, new_relation.version @@ -1404,7 +1404,7 @@ class AmfControllerTest < ActionController::TestCase result = amf_result("/1") assert_equal 2, result.size - assert_equal -2, result[0] + assert_equal(-2, result[0]) assert_equal "The user doesn't own that changeset", result[1] cs = Changeset.find(cs_id) diff --git a/test/controllers/browse_controller_test.rb b/test/controllers/browse_controller_test.rb index 230a74cb6..d6bde97d6 100644 --- a/test/controllers/browse_controller_test.rb +++ b/test/controllers/browse_controller_test.rb @@ -68,8 +68,10 @@ class BrowseControllerTest < ActionController::TestCase end def test_read_changeset + user = create(:user) private_changeset = create(:changeset, :user => create(:user, :data_public => false)) - changeset = create(:changeset) + changeset = create(:changeset, :user => user) + create(:changeset, :user => user) browse_check "changeset", private_changeset.id, "browse/changeset" browse_check "changeset", changeset.id, "browse/changeset" end diff --git a/test/controllers/changeset_controller_test.rb b/test/controllers/changeset_controller_test.rb index 575eed765..2886780a0 100644 --- a/test/controllers/changeset_controller_test.rb +++ b/test/controllers/changeset_controller_test.rb @@ -63,7 +63,7 @@ class ChangesetControllerTest < ActionController::TestCase ) assert_routing( { :path => "/user/name/history", :method => :get }, - { :controller => "changeset", :action => "list", :display_name => "name" } + { :controller => "changeset", :action => "index", :display_name => "name" } ) assert_routing( { :path => "/user/name/history/feed", :method => :get }, @@ -71,15 +71,15 @@ class ChangesetControllerTest < ActionController::TestCase ) assert_routing( { :path => "/history/friends", :method => :get }, - { :controller => "changeset", :action => "list", :friends => true, :format => :html } + { :controller => "changeset", :action => "index", :friends => true, :format => :html } ) assert_routing( { :path => "/history/nearby", :method => :get }, - { :controller => "changeset", :action => "list", :nearby => true, :format => :html } + { :controller => "changeset", :action => "index", :nearby => true, :format => :html } ) assert_routing( { :path => "/history", :method => :get }, - { :controller => "changeset", :action => "list" } + { :controller => "changeset", :action => "index" } ) assert_routing( { :path => "/history/feed", :method => :get }, @@ -213,7 +213,7 @@ class ChangesetControllerTest < ActionController::TestCase get :read, :params => { :id => id } assert_response :not_found, "should get a not found" rescue ActionController::UrlGenerationError => ex - assert_match /No route matches/, ex.to_s + assert_match(/No route matches/, ex.to_s) end end end @@ -287,7 +287,7 @@ class ChangesetControllerTest < ActionController::TestCase put :close, :params => { :id => id } assert_response :unauthorized, "Shouldn't be able close the non-existant changeset #{id}, when not authorized" rescue ActionController::UrlGenerationError => ex - assert_match /No route matches/, ex.to_s + assert_match(/No route matches/, ex.to_s) end end @@ -298,7 +298,7 @@ class ChangesetControllerTest < ActionController::TestCase put :close, :params => { :id => id } assert_response :not_found, "The changeset #{id} doesn't exist, so can't be closed" rescue ActionController::UrlGenerationError => ex - assert_match /No route matches/, ex.to_s + assert_match(/No route matches/, ex.to_s) end end end @@ -469,9 +469,9 @@ CHANGESET new_rel_id = doc.find("//diffResult/relation").first["new_id"].to_i # check the old IDs are all present and negative one - assert_equal -1, doc.find("//diffResult/node").first["old_id"].to_i - assert_equal -1, doc.find("//diffResult/way").first["old_id"].to_i - assert_equal -1, doc.find("//diffResult/relation").first["old_id"].to_i + assert_equal(-1, doc.find("//diffResult/node").first["old_id"].to_i) + assert_equal(-1, doc.find("//diffResult/way").first["old_id"].to_i) + assert_equal(-1, doc.find("//diffResult/relation").first["old_id"].to_i) # check the versions are present and equal one assert_equal 1, doc.find("//diffResult/node").first["new_version"].to_i @@ -1882,173 +1882,173 @@ CHANGESET ## # This should display the last 20 changesets closed - def test_list - get :list, :params => { :format => "html" } + def test_index + get :index, :params => { :format => "html" } assert_response :success assert_template "history" assert_template :layout => "map" assert_select "h2", :text => "Changesets", :count => 1 - get :list, :params => { :format => "html", :list => "1" }, :xhr => true + get :index, :params => { :format => "html", :list => "1" }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(Changeset.all) + check_index_result(Changeset.all) end ## # This should display the last 20 changesets closed - def test_list_xhr - get :list, :params => { :format => "html" }, :xhr => true + def test_index_xhr + get :index, :params => { :format => "html" }, :xhr => true assert_response :success assert_template "history" assert_template :layout => "xhr" assert_select "h2", :text => "Changesets", :count => 1 - get :list, :params => { :format => "html", :list => "1" }, :xhr => true + get :index, :params => { :format => "html", :list => "1" }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(Changeset.all) + check_index_result(Changeset.all) end ## # This should display the last 20 changesets closed in a specific area - def test_list_bbox - get :list, :params => { :format => "html", :bbox => "4.5,4.5,5.5,5.5" } + def test_index_bbox + get :index, :params => { :format => "html", :bbox => "4.5,4.5,5.5,5.5" } assert_response :success assert_template "history" assert_template :layout => "map" assert_select "h2", :text => "Changesets", :count => 1 - get :list, :params => { :format => "html", :bbox => "4.5,4.5,5.5,5.5", :list => "1" }, :xhr => true + get :index, :params => { :format => "html", :bbox => "4.5,4.5,5.5,5.5", :list => "1" }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(Changeset.where("min_lon < 55000000 and max_lon > 45000000 and min_lat < 55000000 and max_lat > 45000000")) + check_index_result(Changeset.where("min_lon < 55000000 and max_lon > 45000000 and min_lat < 55000000 and max_lat > 45000000")) end ## # Checks the display of the user changesets listing - def test_list_user + def test_index_user user = create(:user) create(:changeset, :user => user) create(:changeset, :closed, :user => user) - get :list, :params => { :format => "html", :display_name => user.display_name } + get :index, :params => { :format => "html", :display_name => user.display_name } assert_response :success assert_template "history" - get :list, :params => { :format => "html", :display_name => user.display_name, :list => "1" }, :xhr => true + get :index, :params => { :format => "html", :display_name => user.display_name, :list => "1" }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(user.changesets) + check_index_result(user.changesets) end ## # Checks the display of the user changesets listing for a private user - def test_list_private_user + def test_index_private_user private_user = create(:user, :data_public => false) create(:changeset, :user => private_user) create(:changeset, :closed, :user => private_user) - get :list, :params => { :format => "html", :display_name => private_user.display_name } + get :index, :params => { :format => "html", :display_name => private_user.display_name } assert_response :success assert_template "history" - get :list, :params => { :format => "html", :display_name => private_user.display_name, :list => "1" }, :xhr => true + get :index, :params => { :format => "html", :display_name => private_user.display_name, :list => "1" }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(Changeset.none) + check_index_result(Changeset.none) end ## - # Check the not found of the list user changesets - def test_list_user_not_found - get :list, :params => { :format => "html", :display_name => "Some random user" } + # Check the not found of the index user changesets + def test_index_user_not_found + get :index, :params => { :format => "html", :display_name => "Some random user" } assert_response :not_found assert_template "user/no_such_user" - get :list, :params => { :format => "html", :display_name => "Some random user", :list => "1" }, :xhr => true + get :index, :params => { :format => "html", :display_name => "Some random user", :list => "1" }, :xhr => true assert_response :not_found assert_template "user/no_such_user" end ## # Checks the display of the friends changesets listing - def test_list_friends + def test_index_friends private_user = create(:user, :data_public => true) friend = create(:friend, :befriender => private_user) create(:changeset, :user => friend.befriendee) - get :list, :params => { :friends => true } + get :index, :params => { :friends => true } assert_response :redirect assert_redirected_to :controller => :user, :action => :login, :referer => friend_changesets_path session[:user] = private_user.id - get :list, :params => { :friends => true } + get :index, :params => { :friends => true } assert_response :success assert_template "history" - get :list, :params => { :friends => true, :list => "1" }, :xhr => true + get :index, :params => { :friends => true, :list => "1" }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(Changeset.where(:user => private_user.friend_users.identifiable)) + check_index_result(Changeset.where(:user => private_user.friend_users.identifiable)) end ## # Checks the display of the nearby user changesets listing - def test_list_nearby + def test_index_nearby private_user = create(:user, :data_public => false, :home_lat => 51.1, :home_lon => 1.0) user = create(:user, :home_lat => 51.0, :home_lon => 1.0) create(:changeset, :user => user) - get :list, :params => { :nearby => true } + get :index, :params => { :nearby => true } assert_response :redirect assert_redirected_to :controller => :user, :action => :login, :referer => nearby_changesets_path session[:user] = private_user.id - get :list, :params => { :nearby => true } + get :index, :params => { :nearby => true } assert_response :success assert_template "history" - get :list, :params => { :nearby => true, :list => "1" }, :xhr => true + get :index, :params => { :nearby => true, :list => "1" }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(Changeset.where(:user => user.nearby)) + check_index_result(Changeset.where(:user => user.nearby)) end ## - # Check that we can't request later pages of the changesets list - def test_list_max_id - get :list, :params => { :format => "html", :max_id => 4 }, :xhr => true + # Check that we can't request later pages of the changesets index + def test_index_max_id + get :index, :params => { :format => "html", :max_id => 4 }, :xhr => true assert_response :success assert_template "history" assert_template :layout => "xhr" assert_select "h2", :text => "Changesets", :count => 1 - get :list, :params => { :format => "html", :list => "1", :max_id => 4 }, :xhr => true + get :index, :params => { :format => "html", :list => "1", :max_id => 4 }, :xhr => true assert_response :success - assert_template "list" + assert_template "index" - check_list_result(Changeset.where("id <= 4")) + check_index_result(Changeset.where("id <= 4")) end ## # Check that a list with a next page link works - def test_list_more + def test_index_more create_list(:changeset, 50) - get :list, :params => { :format => "html" } + get :index, :params => { :format => "html" } assert_response :success - get :list, :params => { :format => "html" }, :xhr => true + get :index, :params => { :format => "html" }, :xhr => true assert_response :success end @@ -2063,7 +2063,7 @@ CHANGESET get :feed, :params => { :format => :atom } assert_response :success - assert_template "list" + assert_template "index" assert_equal "application/atom+xml", response.content_type check_feed_result([changeset, closed_changeset]) @@ -2081,7 +2081,7 @@ CHANGESET get :feed, :params => { :format => :atom, :bbox => "4.5,4.5,5.5,5.5" } assert_response :success - assert_template "list" + assert_template "index" assert_equal "application/atom+xml", response.content_type check_feed_result([changeset, closed_changeset]) @@ -2099,7 +2099,7 @@ CHANGESET get :feed, :params => { :format => :atom, :display_name => user.display_name } assert_response :success - assert_template "list" + assert_template "index" assert_equal "application/atom+xml", response.content_type check_feed_result(changesets) @@ -2499,8 +2499,8 @@ CHANGESET end ## - # check the result of a list - def check_list_result(changesets) + # check the result of a index + def check_index_result(changesets) changesets = changesets.where("num_changes > 0") .order(:created_at => :desc) .limit(20) diff --git a/test/controllers/diary_entry_controller_test.rb b/test/controllers/diary_entry_controller_test.rb index 809273c69..edff90625 100644 --- a/test/controllers/diary_entry_controller_test.rb +++ b/test/controllers/diary_entry_controller_test.rb @@ -16,23 +16,23 @@ class DiaryEntryControllerTest < ActionController::TestCase def test_routes assert_routing( { :path => "/diary", :method => :get }, - { :controller => "diary_entry", :action => "list" } + { :controller => "diary_entry", :action => "index" } ) assert_routing( { :path => "/diary/language", :method => :get }, - { :controller => "diary_entry", :action => "list", :language => "language" } + { :controller => "diary_entry", :action => "index", :language => "language" } ) assert_routing( { :path => "/user/username/diary", :method => :get }, - { :controller => "diary_entry", :action => "list", :display_name => "username" } + { :controller => "diary_entry", :action => "index", :display_name => "username" } ) assert_routing( { :path => "/diary/friends", :method => :get }, - { :controller => "diary_entry", :action => "list", :friends => true } + { :controller => "diary_entry", :action => "index", :friends => true } ) assert_routing( { :path => "/diary/nearby", :method => :get }, - { :controller => "diary_entry", :action => "list", :nearby => true } + { :controller => "diary_entry", :action => "index", :nearby => true } ) assert_routing( @@ -67,7 +67,7 @@ class DiaryEntryControllerTest < ActionController::TestCase ) assert_routing( { :path => "/user/username/diary/1", :method => :get }, - { :controller => "diary_entry", :action => "view", :display_name => "username", :id => "1" } + { :controller => "diary_entry", :action => "show", :display_name => "username", :id => "1" } ) assert_routing( { :path => "/user/username/diary/1/edit", :method => :get }, @@ -170,7 +170,7 @@ class DiaryEntryControllerTest < ActionController::TestCase :session => { :user => user.id } end assert_response :redirect - assert_redirected_to :action => :list, :display_name => user.display_name + assert_redirected_to :action => :index, :display_name => user.display_name entry = DiaryEntry.order(:id).last assert_equal user.id, entry.user_id assert_equal "New Title", entry.title @@ -198,7 +198,7 @@ class DiaryEntryControllerTest < ActionController::TestCase :session => { :user => user.id } end assert_response :redirect - assert_redirected_to :action => :list, :display_name => user.display_name + assert_redirected_to :action => :index, :display_name => user.display_name entry = DiaryEntry.order(:id).last assert_equal user.id, entry.user_id assert_equal "New Title", entry.title @@ -227,7 +227,7 @@ class DiaryEntryControllerTest < ActionController::TestCase :session => { :user => user.id } end assert_response :redirect - assert_redirected_to :action => :list, :display_name => user.display_name + assert_redirected_to :action => :index, :display_name => user.display_name entry = DiaryEntry.order(:id).last assert_equal user.id, entry.user_id assert_equal spammy_title, entry.title @@ -236,7 +236,7 @@ class DiaryEntryControllerTest < ActionController::TestCase assert_equal "suspended", User.find(user.id).status # Follow the redirect - get :list, + get :index, :params => { :display_name => user.display_name }, :session => { :user => user } assert_response :redirect @@ -265,13 +265,13 @@ class DiaryEntryControllerTest < ActionController::TestCase assert_select "h2", :text => "No entry with the id: 9999", :count => 1 end - # Verify that you get redirected to view if you are not the user + # Verify that you get redirected to show if you are not the user # that created the entry get :edit, :params => { :display_name => entry.user.display_name, :id => entry.id }, :session => { :user => other_user } assert_response :redirect - assert_redirected_to :action => :view, :display_name => entry.user.display_name, :id => entry.id + assert_redirected_to :action => :show, :display_name => entry.user.display_name, :id => entry.id # Now pass the id, and check that you can edit it, when using the same # user as the person who created the entry @@ -309,14 +309,14 @@ class DiaryEntryControllerTest < ActionController::TestCase :longitude => new_longitude, :language_code => new_language_code } }, :session => { :user => entry.user.id } assert_response :redirect - assert_redirected_to :action => :view, :display_name => entry.user.display_name, :id => entry.id + assert_redirected_to :action => :show, :display_name => entry.user.display_name, :id => entry.id # Now check that the new data is rendered, when logged in - get :view, + get :show, :params => { :display_name => entry.user.display_name, :id => entry.id }, :session => { :user => entry.user } assert_response :success - assert_template "diary_entry/view" + assert_template "diary_entry/show" assert_select "title", :text => /Users' diaries | /, :count => 1 assert_select "div.content-heading", :count => 1 do assert_select "h2", :text => /#{entry.user.display_name}'s diary/, :count => 1 @@ -333,11 +333,11 @@ class DiaryEntryControllerTest < ActionController::TestCase end # and when not logged in as the user who wrote the entry - get :view, + get :show, :params => { :display_name => entry.user.display_name, :id => entry.id }, :session => { :user => create(:user) } assert_response :success - assert_template "diary_entry/view" + assert_template "diary_entry/show" assert_select "title", :text => /Users' diaries | /, :count => 1 assert_select "div.content-heading", :count => 1 do assert_select "h2", :text => /#{entry.user.display_name}'s diary/, :count => 1 @@ -397,7 +397,7 @@ class DiaryEntryControllerTest < ActionController::TestCase end end assert_response :success - assert_template :view + assert_template :show # Now try again with the right id assert_difference "ActionMailer::Base.deliveries.size", entry.subscribers.count do @@ -410,20 +410,20 @@ class DiaryEntryControllerTest < ActionController::TestCase end end assert_response :redirect - assert_redirected_to :action => :view, :display_name => entry.user.display_name, :id => entry.id + assert_redirected_to :action => :show, :display_name => entry.user.display_name, :id => entry.id email = ActionMailer::Base.deliveries.first assert_equal [user.email], email.to assert_equal "[OpenStreetMap] #{other_user.display_name} commented on a diary entry", email.subject - assert_match /New comment/, email.text_part.decoded - assert_match /New comment/, email.html_part.decoded + assert_match(/New comment/, email.text_part.decoded) + assert_match(/New comment/, email.html_part.decoded) ActionMailer::Base.deliveries.clear comment = DiaryComment.order(:id).last assert_equal entry.id, comment.diary_entry_id assert_equal other_user.id, comment.user_id assert_equal "New comment", comment.body - # Now view the diary entry, and check the new comment is present - get :view, + # Now show the diary entry, and check the new comment is present + get :show, :params => { :display_name => entry.user.display_name, :id => entry.id } assert_response :success assert_select ".diary-comment", :count => 1 do @@ -456,7 +456,7 @@ class DiaryEntryControllerTest < ActionController::TestCase end end assert_response :redirect - assert_redirected_to :action => :view, :display_name => entry.user.display_name, :id => entry.id + assert_redirected_to :action => :show, :display_name => entry.user.display_name, :id => entry.id email = ActionMailer::Base.deliveries.first assert_equal [user.email], email.to assert_equal "[OpenStreetMap] #{other_user.display_name} commented on a diary entry", email.subject @@ -470,30 +470,30 @@ class DiaryEntryControllerTest < ActionController::TestCase assert_equal "suspended", User.find(other_user.id).status # Follow the redirect - get :list, + get :index, :params => { :display_name => user.display_name }, :session => { :user => other_user } assert_response :redirect assert_redirected_to :controller => :user, :action => :suspended - # Now view the diary entry, and check the new comment is not present - get :view, + # Now show the diary entry, and check the new comment is not present + get :show, :params => { :display_name => entry.user.display_name, :id => entry.id } assert_response :success assert_select ".diary-comment", :count => 0 end - def test_list_all + def test_index_all diary_entry = create(:diary_entry) geo_entry = create(:diary_entry, :latitude => 51.50763, :longitude => -0.10781) public_entry = create(:diary_entry, :user => create(:user)) # Try a list of all diary entries - get :list - check_diary_list diary_entry, geo_entry, public_entry + get :index + check_diary_index diary_entry, geo_entry, public_entry end - def test_list_user + def test_index_user user = create(:user) other_user = create(:user) @@ -502,16 +502,16 @@ class DiaryEntryControllerTest < ActionController::TestCase _other_entry = create(:diary_entry, :user => other_user) # Try a list of diary entries for a valid user - get :list, :params => { :display_name => user.display_name } - check_diary_list diary_entry, geo_entry + get :index, :params => { :display_name => user.display_name } + check_diary_index diary_entry, geo_entry # Try a list of diary entries for an invalid user - get :list, :params => { :display_name => "No Such User" } + get :index, :params => { :display_name => "No Such User" } assert_response :not_found assert_template "user/no_such_user" end - def test_list_friends + def test_index_friends user = create(:user) other_user = create(:user) friend = create(:friend, :befriender => user) @@ -519,36 +519,36 @@ class DiaryEntryControllerTest < ActionController::TestCase _other_entry = create(:diary_entry, :user => other_user) # Try a list of diary entries for your friends when not logged in - get :list, :params => { :friends => true } + get :index, :params => { :friends => true } assert_response :redirect assert_redirected_to :controller => :user, :action => :login, :referer => "/diary/friends" # Try a list of diary entries for your friends when logged in - get :list, :params => { :friends => true }, :session => { :user => user } - check_diary_list diary_entry - get :list, :params => { :friends => true }, :session => { :user => other_user } - check_diary_list + get :index, :params => { :friends => true }, :session => { :user => user } + check_diary_index diary_entry + get :index, :params => { :friends => true }, :session => { :user => other_user } + check_diary_index end - def test_list_nearby + def test_index_nearby user = create(:user, :home_lat => 12, :home_lon => 12) nearby_user = create(:user, :home_lat => 11.9, :home_lon => 12.1) diary_entry = create(:diary_entry, :user => user) # Try a list of diary entries for nearby users when not logged in - get :list, :params => { :nearby => true } + get :index, :params => { :nearby => true } assert_response :redirect assert_redirected_to :controller => :user, :action => :login, :referer => "/diary/nearby" # Try a list of diary entries for nearby users when logged in - get :list, :params => { :nearby => true }, :session => { :user => nearby_user } - check_diary_list diary_entry - get :list, :params => { :nearby => true }, :session => { :user => user } - check_diary_list + get :index, :params => { :nearby => true }, :session => { :user => nearby_user } + check_diary_index diary_entry + get :index, :params => { :nearby => true }, :session => { :user => user } + check_diary_index end - def test_list_language + def test_index_language create(:language, :code => "de") create(:language, :code => "sl") diary_entry_en = create(:diary_entry, :language_code => "en") @@ -556,29 +556,29 @@ class DiaryEntryControllerTest < ActionController::TestCase diary_entry_de = create(:diary_entry, :language_code => "de") # Try a list of diary entries in english - get :list, :params => { :language => "en" } - check_diary_list diary_entry_en, diary_entry_en2 + get :index, :params => { :language => "en" } + check_diary_index diary_entry_en, diary_entry_en2 # Try a list of diary entries in german - get :list, :params => { :language => "de" } - check_diary_list diary_entry_de + get :index, :params => { :language => "de" } + check_diary_index diary_entry_de # Try a list of diary entries in slovenian - get :list, :params => { :language => "sl" } - check_diary_list + get :index, :params => { :language => "sl" } + check_diary_index end - def test_list_paged + def test_index_paged # Create several pages worth of diary entries create_list(:diary_entry, 50) - # Try and get the list - get :list + # Try and get the index + get :index assert_response :success assert_select "div.diary_post", :count => 20 # Try and get the second page - get :list, :params => { :page => 2 } + get :index, :params => { :page => 2 } assert_response :success assert_select "div.diary_post", :count => 20 end @@ -658,34 +658,34 @@ class DiaryEntryControllerTest < ActionController::TestCase assert_match "
+ <%= link_to comment.user.display_name, user_path(comment.user) %>
<%= comment.body %>