[openstreetmap-carto] 01/05: Imported Upstream version 2.37.0

Sebastiaan Couwenberg sebastic at moszumanska.debian.org
Fri Dec 4 16:40:17 UTC 2015


This is an automated email from the git hooks/post-receive script.

sebastic pushed a commit to branch master
in repository openstreetmap-carto.

commit 18071e4cfb6ec6466250f950dff520705d3d72a3
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Fri Dec 4 17:06:15 2015 +0100

    Imported Upstream version 2.37.0
---
 admin.mss                |  82 +++++++++++++++++++-----
 amenity-points.mss       | 164 +++++++++++++++++++++++++++++++----------------
 landcover.mss            |   4 +-
 placenames.mss           |  41 +++++++++---
 preview.png              | Bin 83754 -> 85552 bytes
 project.mml              | 104 ++++++++++++++++++++++++++----
 project.yaml             | 120 +++++++++++++++++++++++++++++++---
 roads.mss                |  58 ++++++++---------
 shapefiles.mss           |   8 ++-
 symbols/beverages-14.svg |  67 ++++++++++++-------
 symbols/copyshop-14.svg  |  40 ++++++++++++
 water-features.mss       |   3 +-
 12 files changed, 533 insertions(+), 158 deletions(-)

diff --git a/admin.mss b/admin.mss
index d586f74..853ac18 100644
--- a/admin.mss
+++ b/admin.mss
@@ -6,48 +6,88 @@ For each zoomlevel, all borders come from a single attachment, to handle
 overlapping borders correctly.
 */
 
-#admin-low-zoom[zoom < 11],
+#admin-very-low-zoom[zoom >= 4][zoom < 5],
+#admin-low-zoom[zoom >= 5][zoom < 11],
 #admin-mid-zoom[zoom >= 11][zoom < 13],
 #admin-high-zoom[zoom >= 13] {
-  [admin_level = '2'],
-  [admin_level = '3'] {
+  [admin_level = '2'] {
     [zoom >= 4] {
+      background/line-join: bevel;
       background/line-color: white;
-      background/line-width: 0.6;
+      background/line-width: 1.2;
+      line-join: bevel;
       line-color: @admin-boundaries;
-      line-width: 0.6;
+      line-width: 1.2;
+    }
+    [zoom >= 5] {
+      background/line-width: 1.5;
+      line-width: 1.5;
+    }
+    [zoom >= 6] {
+      background/line-width: 1.8;
+      line-width: 1.8;
     }
     [zoom >= 7] {
       background/line-width: 2;
       line-width: 2;
     }
     [zoom >= 10] {
-      [admin_level = '2'] {
-        background/line-width: 6;
-        line-width: 6;
-      }
-      [admin_level = '3'] {
-        background/line-width: 5;
-        line-width: 5;
-        line-dasharray: 4,2;
-        line-clip: false;
-      }
+      background/line-width: 6;
+      line-width: 6;
     }
   }
-  [admin_level = '4'] {
+  [admin_level = '3'] {
     [zoom >= 4] {
+      background/line-join: bevel;
       background/line-color: white;
       background/line-width: 0.6;
+      line-join: bevel;
       line-color: @admin-boundaries;
       line-width: 0.6;
+    }
+    [zoom >= 7] {
+      background/line-width: 1.2;
+      line-width: 1.2;
+    }
+    [zoom >= 10] {
+      background/line-width: 4;
+      line-width: 4;
+      line-dasharray: 4,2;
+      line-clip: false;
+    }
+  }
+  [admin_level = '4'] {
+    [zoom >= 4] {
+      background/line-join: bevel;
+      background/line-color: white;
+      background/line-width: 0.4;
+      line-join: bevel;
+      line-color: @admin-boundaries;
+      line-width: 0.4;
       line-dasharray: 4,3;
       line-clip: false;
     }
+    [zoom >= 5] {
+      background/line-width: 0.6;
+      line-width: 0.6;
+    }
+    [zoom >= 6] {
+      background/line-width: 0.8;
+      line-width: 0.8;
+    }
     [zoom >= 7] {
       background/line-width: 1;
       line-width: 1;
     }
-    [zoom >= 11] {
+    [zoom >= 9] {
+      background/line-width: 1.8;
+      line-width: 1.8;
+    }
+    [zoom >= 10] {
+      background/line-width: 2.5;
+      line-width: 2.5;
+    }
+    [zoom >= 12] {
       background/line-width: 3;
       line-width: 3;
     }
@@ -70,16 +110,20 @@ overlapping borders correctly.
 #admin-mid-zoom[zoom >= 11][zoom < 13],
 #admin-high-zoom[zoom >= 13] {
   [admin_level = '5'][zoom >= 11] {
+    background/line-join: bevel;
     background/line-color: white;
     background/line-width: 2;
+    line-join: bevel;
     line-color: @admin-boundaries;
     line-width: 2;
     line-dasharray: 6,3,2,3,2,3;
     line-clip: false;
   }
   [admin_level = '6'][zoom >= 11] {
+    background/line-join: bevel;
     background/line-color: white;
     background/line-width: 2;
+    line-join: bevel;
     line-color: @admin-boundaries;
     line-width: 2;
     line-dasharray: 6,3,2,3;
@@ -88,8 +132,10 @@ overlapping borders correctly.
   [admin_level = '7'],
   [admin_level = '8'] {
     [zoom >= 12] {
+      background/line-join: bevel;
       background/line-color: white;
       background/line-width: 1.5;
+      line-join: bevel;
       line-color: @admin-boundaries;
       line-width: 1.5;
       line-dasharray: 5,2;
@@ -104,8 +150,10 @@ overlapping borders correctly.
   [admin_level = '9'],
   [admin_level = '10'] {
     [zoom >= 13] {
+      background/line-join: bevel;
       background/line-color: white;
       background/line-width: 2;
+      line-join: bevel;
       line-color: @admin-boundaries;
       line-width: 2;
       line-dasharray: 2,3;
diff --git a/amenity-points.mss b/amenity-points.mss
index 84f8ee3..9a5a8c7 100644
--- a/amenity-points.mss
+++ b/amenity-points.mss
@@ -618,6 +618,15 @@
     marker-clip: false;
   }
 
+  [feature = 'shop_copyshop'] {
+    [zoom >= 17] {
+      marker-file: url('symbols/copyshop-14.svg');
+      marker-placement: interior;
+      marker-clip: false;
+      marker-fill: @shop-icon;
+    }
+  }
+
   [feature = 'shop_cosmetics'],
   [feature = 'shop_perfumery'] {
     [zoom >= 17] {
@@ -1318,15 +1327,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: @marina-text;
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
@@ -1360,14 +1373,18 @@
     [zoom >= 17] {  
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
       [feature = 'landuse_military'] {
         text-fill: darken(@military, 40%);
@@ -1388,15 +1405,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: darken(@danger_area, 40%);
       text-face-name: @bold-fonts;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
@@ -1406,15 +1427,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: darken(@garages, 50%);
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
@@ -1471,14 +1496,18 @@
     [zoom >= 17][feature = 'shop_mall'] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
       [feature = 'natural_wetland'],
       [feature = 'natural_marsh'],
@@ -1686,15 +1715,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: @marina-text;
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
@@ -1795,6 +1828,7 @@
   [feature = 'shop_fashion'],
   [feature = 'shop_convenience'],
   [feature = 'shop_confectionery'],
+  [feature = 'shop_copyshop'],
   [feature = 'shop_doityourself'],
   [feature = 'shop_dry_cleaning'],
   [feature = 'shop_hardware'],
@@ -1891,15 +1925,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: darken(@power, 40%);
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
@@ -1912,14 +1950,18 @@
     [zoom >= 17][is_building = 'no'] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
       [feature = 'natural_scree'],
       [feature = 'natural_shingle'],
@@ -1937,15 +1979,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: darken(@apron, 60%);
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
@@ -1956,15 +2002,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: darken(@rest_area, 40%);
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
@@ -1975,15 +2025,19 @@
     [zoom >= 17] {
       text-name: "[name]";
       text-size: @landcover-font-size;
-      [way_pixels > 12000] { text-size: @landcover-font-size-big; }
-      [way_pixels > 48000] { text-size: @landcover-font-size-bigger; }
+      text-wrap-width: @landcover-wrap-width-size;
+      [way_pixels > 12000] {
+        text-size: @landcover-font-size-big;
+        text-wrap-width: @landcover-wrap-width-size-big;
+      }
+      [way_pixels > 48000] {
+        text-size: @landcover-font-size-bigger;
+        text-wrap-width: @landcover-wrap-width-size-bigger;
+      }
       text-fill: mix(darken(@glacier, 40%), darken(@glacier-line, 30%), 50%);
       text-face-name: @landcover-face-name;
       text-halo-radius: 1;
       text-halo-fill: rgba(255,255,255,0.6);
-      text-wrap-width: @landcover-wrap-width-size;
-      [way_pixels > 12000] {text-wrap-width: @landcover-wrap-width-size-big; }
-      [way_pixels > 48000] {text-wrap-width: @landcover-wrap-width-size-bigger; }
       text-placement: interior;
     }
   }
diff --git a/landcover.mss b/landcover.mss
index 69ea47b..a391419 100644
--- a/landcover.mss
+++ b/landcover.mss
@@ -26,8 +26,8 @@
 @industrial-line: #C6B3C3;  // Lch(75,11,330)
 @railway: @industrial;
 @railway-line: @industrial-line;
- at farmland: #EDDDC9;         // Lch(89,12,80) (Also used for farm)
- at farmland-line: #C8B69E;    // Lch(75,15,80)
+ at farmland: #fbecd7;         // Lch(94,12,80) (Also used for farm)
+ at farmland-line: #d6c4ab;    // Lch(80,15,80)
 
 @farmyard: #EFD6B5;         // Lch(87,20,80)
 @farmyard-line: #D1B48C;    // Lch(75,25,80)
diff --git a/placenames.mss b/placenames.mss
index 6137660..cef29d3 100644
--- a/placenames.mss
+++ b/placenames.mss
@@ -1,18 +1,38 @@
 @placenames: #222;
 @placenames-light: #777777;
+ at country-labels: darken(@admin-boundaries, 15%);
+ at state-labels: desaturate(darken(@admin-boundaries, 5%), 20%);
 
 .country {
-  [admin_level = '2'][zoom >= 2][way_pixels > 3000][way_pixels < 196000] {
+  [admin_level = '2'][zoom >= 3][way_pixels > 1000][way_pixels < 360000] {
     text-name: "[name]";
     text-size: 9;
-    text-fill: #9d6c9d;
+
+    [zoom >= 3] {
+      text-size: 10;
+    }
+    [zoom >= 4] {
+      text-size: 11;
+    }
+    [zoom >= 5] {
+      text-size: 12;
+    }
+    [zoom >= 7] {
+      text-size: 13;
+    }
+    [zoom >= 10] {
+      text-size: 14;
+    }
+
+    text-fill: @country-labels;
     text-face-name: @book-fonts;
+    text-halo-fill: rgba(255,255,255,0.6);
     text-halo-radius: 1.5;
-    text-wrap-width: 50;
+    text-wrap-width: 35;
     text-placement: interior;
-    [zoom >= 4] {
-      text-size: 10;
-    }
+    text-character-spacing: 0.5;
+    text-min-distance: 3;
+    text-line-spacing: 1;
   }
 }
 
@@ -22,18 +42,20 @@
     [zoom >= 5][way_pixels > 3000][way_pixels < 196000] {
       text-name: "[ref]";
       text-size: 9;
-      text-fill: #9d6c9d;
+      text-fill: @state-labels;
       text-face-name: @oblique-fonts;
+      text-halo-fill: rgba(255,255,255,0.6);
       text-halo-radius: 1.5;
       text-wrap-width: 0;
       text-placement: interior;
+      text-min-distance: 3;
       [zoom >= 5] {
         text-name: "[name]";
-        text-wrap-width: 50;
+        text-wrap-width: 30;
       }
       [zoom >= 7] {
         text-size: 11;
-        text-wrap-width: 70;
+        text-wrap-width: 50;
       }
     }
   }
@@ -41,7 +63,6 @@
 
 #placenames-medium::high-importance {
   [category = 1][zoom < 14] {
-    [zoom >= 3][score >= 5000000],
     [zoom >= 4][score >= 3000000],
     [zoom >= 5][score >= 400000] {
       text-name: "[name]";
diff --git a/preview.png b/preview.png
index 1a46e1c..5d6e08b 100644
Binary files a/preview.png and b/preview.png differ
diff --git a/project.mml b/project.mml
index 730c302..1d257b2 100644
--- a/project.mml
+++ b/project.mml
@@ -1049,6 +1049,33 @@
       "advanced": {}
     },
     {
+      "name": "admin-very-low-zoom",
+      "srs-name": "900913",
+      "geometry": "linestring",
+      "class": "",
+      "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
+      "Datasource": {
+        "extent": "-20037508,-20037508,20037508,20037508",
+        "table": "(SELECT\n    way,\n    admin_level\n  FROM planet_osm_roads o\n  WHERE boundary = 'administrative'\n    AND (admin_level IN ('0', '1', '2')\n      OR (admin_level IN ('3', '4')\n        AND EXISTS\n          (SELECT 1\n            FROM planet_osm_polygon i\n            WHERE boundary = 'administrative'\n              AND admin_level = '2'\n              AND way_area > 9e+12\n              AND ST_Within(o.way, i.way)\n              AND osm_id < 0\n          )\n      )\n  [...]
+        "geometry_field": "way",
+        "type": "postgis",
+        "key_field": "",
+        "dbname": "gis"
+      },
+      "extent": [
+        -180,
+        -85.05112877980659,
+        180,
+        85.05112877980659
+      ],
+      "id": "admin-very-low-zoom",
+      "properties": {
+        "maxzoom": 4,
+        "minzoom": 4
+      },
+      "advanced": {}
+    },
+    {
       "name": "admin-low-zoom",
       "srs-name": "900913",
       "geometry": "linestring",
@@ -1056,7 +1083,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    admin_level\n  FROM planet_osm_roads\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('0', '1', '2', '3', '4')\n  ORDER BY admin_level DESC\n) AS admin_low_zoom",
+        "table": "(SELECT\n    way,\n    admin_level\n  FROM planet_osm_roads\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('0', '1', '2', '3', '4')\n    AND osm_id < 0\n  ORDER BY admin_level DESC\n) AS admin_low_zoom",
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
@@ -1070,7 +1097,8 @@
       ],
       "id": "admin-low-zoom",
       "properties": {
-        "maxzoom": 10
+        "maxzoom": 10,
+        "minzoom": 5
       },
       "advanced": {}
     },
@@ -1083,7 +1111,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    admin_level\n  FROM planet_osm_roads\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('0', '1', '2', '3', '4', '5', '6', '7', '8')\n  ORDER BY admin_level DESC\n) AS admin_mid_zoom",
+        "table": "(SELECT\n    way,\n    admin_level\n  FROM planet_osm_roads\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('0', '1', '2', '3', '4', '5', '6', '7', '8')\n    AND osm_id < 0\n  ORDER BY admin_level DESC\n) AS admin_mid_zoom",
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
@@ -1110,7 +1138,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    admin_level\n  FROM planet_osm_roads\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10')\n  ORDER BY admin_level::integer DESC -- With 10 as a valid value, we need to do a numeric ordering, not a text ordering\n) AS admin_high_zoom",
+        "table": "(SELECT\n    way,\n    admin_level\n  FROM planet_osm_roads\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10')\n    AND osm_id < 0\n  ORDER BY admin_level::integer DESC -- With 10 as a valid value, we need to do a numeric ordering, not a text ordering\n) AS admin_high_zoom",
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
@@ -1258,6 +1286,60 @@
       "advanced": {}
     },
     {
+      "name": "placenames-large-very-low-zoom",
+      "srs-name": "900913",
+      "geometry": "point",
+      "class": "country state",
+      "id": "placenames-large-very-low-zoom",
+      "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
+      "Datasource": {
+        "extent": "-20037508,-20037508,20037508,20037508",
+        "table": "(SELECT\n    way,\n    way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,\n    name,\n    ref,\n    admin_level\n  FROM planet_osm_polygon\n  WHERE boundary = 'administrative'\n    AND admin_level = '2'\n    AND name IS NOT NULL\n    AND way_area > 100*!pixel_width!::real*!pixel_height!::real -- Conditions in the MSS filter this down even more\n  ORDER BY admin_level ASC, way_area DESC\n) AS placenames_large_very_low_zoom",
+        "geometry_field": "way",
+        "type": "postgis",
+        "key_field": "",
+        "dbname": "gis"
+      },
+      "extent": [
+        -180,
+        -85.05112877980659,
+        180,
+        85.05112877980659
+      ],
+      "properties": {
+        "maxzoom": 3,
+        "minzoom": 2
+      },
+      "advanced": {}
+    },
+    {
+      "name": "placenames-large-low-zoom",
+      "srs-name": "900913",
+      "geometry": "point",
+      "class": "country state",
+      "id": "placenames-large-low-zoom",
+      "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
+      "Datasource": {
+        "extent": "-20037508,-20037508,20037508,20037508",
+        "table": "(SELECT\n    way,\n    way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,\n    name,\n    ref,\n    admin_level\n  FROM planet_osm_polygon o\n  WHERE boundary = 'administrative'\n    AND (admin_level = '2'\n      OR (admin_level = '4'\n        AND EXISTS\n          (SELECT 1\n            FROM planet_osm_polygon i\n            WHERE boundary = 'administrative'\n              AND admin_level = '2'\n              AND way_area > 9e+12\n               [...]
+        "geometry_field": "way",
+        "type": "postgis",
+        "key_field": "",
+        "dbname": "gis"
+      },
+      "extent": [
+        -180,
+        -85.05112877980659,
+        180,
+        85.05112877980659
+      ],
+      "properties": {
+        "maxzoom": 4,
+        "minzoom": 4
+      },
+      "advanced": {}
+    },
+    {
       "name": "placenames-large",
       "srs-name": "900913",
       "geometry": "point",
@@ -1266,7 +1348,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,\n    name,\n    ref,\n    admin_level\n  FROM planet_osm_polygon\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('2', '4')\n    AND name IS NOT NULL\n  ORDER BY admin_level ASC, way_area DESC\n) AS placenames_large",
+        "table": "(SELECT\n    way,\n    way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,\n    name,\n    ref,\n    admin_level\n  FROM planet_osm_polygon\n  WHERE boundary = 'administrative'\n    AND admin_level IN ('2', '4')\n    AND name IS NOT NULL\n    AND way_area > 100*!pixel_width!::real*!pixel_height!::real -- Conditions in the MSS filter this down even more\n  ORDER BY admin_level ASC, way_area DESC\n) AS placenames_large",
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
@@ -1279,7 +1361,7 @@
         85.05112877980659
       ],
       "properties": {
-        "minzoom": 2
+        "minzoom": 5
       },
       "advanced": {}
     },
@@ -1397,7 +1479,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    COALESCE(\n      'aeroway_' || CASE WHEN aeroway IN ('helipad', 'aerodrome') THEN aeroway ELSE NULL END,\n      'tourism_' || CASE WHEN tourism IN ('alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'guest_house', \n                                          'hostel', 'hotel', 'motel', 'information', 'museum', 'picnic_site') THEN tourism ELSE NULL END,\n      'amenity_' || CASE WHEN amenity IN ('shelter', 'atm', 'bank', 'bar', 'bicycle_rental', ' [...]
+        "table": "(SELECT\n    way,\n    COALESCE(\n      'aeroway_' || CASE WHEN aeroway IN ('helipad', 'aerodrome') THEN aeroway ELSE NULL END,\n      'tourism_' || CASE WHEN tourism IN ('alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'guest_house', \n                                          'hostel', 'hotel', 'motel', 'information', 'museum', 'picnic_site') THEN tourism ELSE NULL END,\n      'amenity_' || CASE WHEN amenity IN ('shelter', 'atm', 'bank', 'bar', 'bicycle_rental', ' [...]
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
@@ -1423,7 +1505,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    COALESCE(\n      'aeroway_' || CASE WHEN aeroway IN ('helipad', 'aerodrome') THEN aeroway ELSE NULL END,\n      'tourism_' || CASE WHEN tourism IN ('alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'guest_house', 'hostel', \n                                          'hotel', 'motel', 'information', 'museum', 'picnic_site') THEN tourism ELSE NULL END,\n      'amenity_' || CASE WHEN amenity IN ('shelter', 'atm', 'bank', 'bar', 'bicycle_rental', ' [...]
+        "table": "(SELECT\n    way,\n    COALESCE(\n      'aeroway_' || CASE WHEN aeroway IN ('helipad', 'aerodrome') THEN aeroway ELSE NULL END,\n      'tourism_' || CASE WHEN tourism IN ('alpine_hut', 'camp_site', 'caravan_site', 'chalet', 'guest_house', 'hostel', \n                                          'hotel', 'motel', 'information', 'museum', 'picnic_site') THEN tourism ELSE NULL END,\n      'amenity_' || CASE WHEN amenity IN ('shelter', 'atm', 'bank', 'bar', 'bicycle_rental', ' [...]
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
@@ -1711,7 +1793,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,\n    COALESCE(\n      'aeroway_' || CASE WHEN aeroway IN ('gate', 'apron', 'helipad', 'aerodrome') THEN aeroway ELSE NULL END,\n      'tourism_' || CASE WHEN tourism IN ('alpine_hut', 'hotel', 'motel', 'hostel', 'chalet', 'guest_house', 'camp_site', 'caravan_site', \n                                          'theme_park', 'museum', 'zoo', 'information', 'picnic_site') THEN  [...]
+        "table": "(SELECT\n    way,\n    way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,\n    COALESCE(\n      'aeroway_' || CASE WHEN aeroway IN ('gate', 'apron', 'helipad', 'aerodrome') THEN aeroway ELSE NULL END,\n      'tourism_' || CASE WHEN tourism IN ('alpine_hut', 'hotel', 'motel', 'hostel', 'chalet', 'guest_house', 'camp_site', 'caravan_site', \n                                          'theme_park', 'museum', 'zoo', 'information', 'picnic_site') THEN  [...]
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
@@ -1732,7 +1814,7 @@
       "name": "text-line",
       "srs-name": "900913",
       "geometry": "linestring",
-      "class": "text",
+      "class": "",
       "id": "text-line",
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
@@ -1763,7 +1845,7 @@
       "srs": "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over",
       "Datasource": {
         "extent": "-20037508,-20037508,20037508,20037508",
-        "table": "(SELECT\n    way,\n    way_pixels,\n    feature,\n    access,\n    CONCAT(\n        name,\n        CASE WHEN name IS NOT NULL AND elevation IS NOT NULL THEN E'\\n' ELSE NULL END,\n        CASE WHEN elevation IS NOT NULL THEN CONCAT(REPLACE(ROUND(elevation)::TEXT, '-', U&'\\2212'), U&'\\00A0', 'm') ELSE NULL END\n    ) AS name,\n    CASE\n      WHEN \"natural\" IN ('peak', 'volcano', 'saddle') THEN elevation\n      ELSE NULL\n    END AS score,\n    operator,\n    ref,\n  [...]
+        "table": "(SELECT\n    way,\n    way_pixels,\n    feature,\n    access,\n    CONCAT(\n        name,\n        CASE WHEN name IS NOT NULL AND elevation IS NOT NULL THEN E'\\n' ELSE NULL END,\n        CASE WHEN elevation IS NOT NULL THEN CONCAT(REPLACE(ROUND(elevation)::TEXT, '-', U&'\\2212'), U&'\\00A0', 'm') ELSE NULL END\n    ) AS name,\n    CASE\n      WHEN \"natural\" IN ('peak', 'volcano', 'saddle') THEN elevation\n      ELSE NULL\n    END AS score,\n    operator,\n    ref,\n  [...]
         "geometry_field": "way",
         "type": "postgis",
         "key_field": "",
diff --git a/project.yaml b/project.yaml
index cf78cec..93f6397 100644
--- a/project.yaml
+++ b/project.yaml
@@ -1311,6 +1311,39 @@ Layer:
     properties:
       minzoom: 13
     advanced: {}
+  - name: "admin-very-low-zoom"
+    id: "admin-very-low-zoom"
+    class: ""
+    geometry: "linestring"
+    <<: *extents
+    Datasource:
+      <<: *osm2pgsql
+      table: |-
+        (SELECT
+            way,
+            admin_level
+          FROM planet_osm_roads o
+          WHERE boundary = 'administrative'
+            AND (admin_level IN ('0', '1', '2')
+              OR (admin_level IN ('3', '4')
+                AND EXISTS
+                  (SELECT 1
+                    FROM planet_osm_polygon i
+                    WHERE boundary = 'administrative'
+                      AND admin_level = '2'
+                      AND way_area > 9e+12
+                      AND ST_Within(o.way, i.way)
+                      AND osm_id < 0
+                  )
+              )
+            )
+            AND osm_id < 0
+          ORDER BY admin_level DESC
+          ) AS admin_very_low_zoom
+    properties:
+      minzoom: 4
+      maxzoom: 4
+    advanced: {}
   - name: "admin-low-zoom"
     id: "admin-low-zoom"
     class: ""
@@ -1325,9 +1358,11 @@ Layer:
           FROM planet_osm_roads
           WHERE boundary = 'administrative'
             AND admin_level IN ('0', '1', '2', '3', '4')
+            AND osm_id < 0
           ORDER BY admin_level DESC
         ) AS admin_low_zoom
     properties:
+      minzoom: 5
       maxzoom: 10
     advanced: {}
   - id: "admin-mid-zoom"
@@ -1344,6 +1379,7 @@ Layer:
           FROM planet_osm_roads
           WHERE boundary = 'administrative'
             AND admin_level IN ('0', '1', '2', '3', '4', '5', '6', '7', '8')
+            AND osm_id < 0
           ORDER BY admin_level DESC
         ) AS admin_mid_zoom
     properties:
@@ -1364,6 +1400,7 @@ Layer:
           FROM planet_osm_roads
           WHERE boundary = 'administrative'
             AND admin_level IN ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10')
+            AND osm_id < 0
           ORDER BY admin_level::integer DESC -- With 10 as a valid value, we need to do a numeric ordering, not a text ordering
         ) AS admin_high_zoom
     properties:
@@ -1463,6 +1500,67 @@ Layer:
     properties:
       minzoom: 16
     advanced: {}
+  - id: "placenames-large-very-low-zoom"
+    name: "placenames-large-very-low-zoom"
+    class: "country state"
+    geometry: "point"
+    <<: *extents
+    Datasource:
+      <<: *osm2pgsql
+      table: |-
+        (SELECT
+            way,
+            way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,
+            name,
+            ref,
+            admin_level
+          FROM planet_osm_polygon
+          WHERE boundary = 'administrative'
+            AND admin_level = '2'
+            AND name IS NOT NULL
+            AND way_area > 100*!pixel_width!::real*!pixel_height!::real -- Conditions in the MSS filter this down even more
+          ORDER BY admin_level ASC, way_area DESC
+        ) AS placenames_large_very_low_zoom
+    properties:
+      minzoom: 2
+      maxzoom: 3
+    advanced: {}
+  - id: "placenames-large-low-zoom"
+    name: "placenames-large-low-zoom"
+    class: "country state"
+    geometry: "point"
+    <<: *extents
+    Datasource:
+      <<: *osm2pgsql
+      table: |-
+        (SELECT
+            way,
+            way_area/NULLIF(!pixel_width!::real*!pixel_height!::real,0) AS way_pixels,
+            name,
+            ref,
+            admin_level
+          FROM planet_osm_polygon o
+          WHERE boundary = 'administrative'
+            AND (admin_level = '2'
+              OR (admin_level = '4'
+                AND EXISTS
+                  (SELECT 1
+                    FROM planet_osm_polygon i
+                    WHERE boundary = 'administrative'
+                      AND admin_level = '2'
+                      AND way_area > 9e+12
+                      AND ST_Within(o.way, i.way)
+                      AND osm_id < 0
+                  )
+              )
+            )
+            AND way_area > 100*!pixel_width!::real*!pixel_height!::real -- Conditions in the MSS filter this down even more
+          ORDER BY admin_level ASC, way_area DESC
+        ) AS placenames_large_low_zoom
+    properties:
+      minzoom: 4
+      maxzoom: 4
+    advanced: {}
   - id: "placenames-large"
     name: "placenames-large"
     class: "country state"
@@ -1481,10 +1579,11 @@ Layer:
           WHERE boundary = 'administrative'
             AND admin_level IN ('2', '4')
             AND name IS NOT NULL
+            AND way_area > 100*!pixel_width!::real*!pixel_height!::real -- Conditions in the MSS filter this down even more
           ORDER BY admin_level ASC, way_area DESC
         ) AS placenames_large
     properties:
-      minzoom: 2
+      minzoom: 5
     advanced: {}
   - id: "placenames-medium"
     name: "placenames-medium"
@@ -1635,10 +1734,11 @@ Layer:
                                             'photo', 'photo_studio', 'photography', 'seafood', 'shoes', 'alcohol', 'gift', 'furniture', 'kiosk', 
                                             'mobile_phone', 'motorcycle', 'musical_instrument', 'newsagent', 'optician', 'jewelry', 'jewellery', 
                                             'electronics', 'chemist', 'toys', 'travel_agency', 'car_parts', 'greengrocer', 'farm', 'stationery', 
-                                            'laundry', 'dry_cleaning', 'beverages', 'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor') THEN shop 
+                                            'laundry', 'dry_cleaning', 'beverages', 'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor', 
+                                            'copyshop') THEN shop 
                               WHEN shop IN ('accessories', 'antiques', 'appliance', 'art', 'baby_goods', 'bathroom_furnishing', 
                                             'bed', 'boat', 'bookmaker', 'boutique', 'builder', 'building_materials', 'camera', 'car_service', 
-                                            'carpet', 'charity', 'cheese', 'chocolate', 'coffee', 'communication', 'copyshop', 'craft', 'curtain', 'dairy', 
+                                            'carpet', 'charity', 'cheese', 'chocolate', 'coffee', 'communication', 'craft', 'curtain', 'dairy', 
                                             'deli', 'discount', 'e-cigarette', 'electrical', 'energy', 'erotic', 'estate_agent', 
                                             'fabric', 'fishing', 'flooring', 'food', 'frame', 'frozen_food', 'funeral_directors', 'furnace', 
                                             'gallery', 'games', 'gas', 'general', 'glaziery', 'grocery', 'health', 'health_food', 'hearing_aids', 
@@ -1714,10 +1814,10 @@ Layer:
                                             'photography', 'seafood', 'shoes', 'alcohol', 'gift', 'furniture', 'kiosk', 'mobile_phone', 'motorcycle', 
                                             'musical_instrument', 'newsagent', 'optician', 'jewelry', 'jewellery', 'electronics', 'chemist', 'toys', 
                                             'travel_agency', 'car_parts', 'greengrocer', 'farm', 'stationery', 'laundry', 'dry_cleaning', 'beverages', 
-                                            'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor') THEN shop 
+                                            'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor', 'copyshop') THEN shop 
                               WHEN shop IN ('accessories', 'antiques', 'appliance', 'art', 'baby_goods', 'bathroom_furnishing', 'bed',  
                                             'boat', 'bookmaker', 'boutique', 'builder', 'building_materials', 'camera', 'car_service', 'carpet', 'charity', 
-                                            'cheese', 'chocolate', 'coffee', 'communication', 'copyshop', 'craft', 'curtain', 'dairy', 'deli',   
+                                            'cheese', 'chocolate', 'coffee', 'communication', 'craft', 'curtain', 'dairy', 'deli',   
                                             'discount', 'e-cigarette', 'electrical', 'energy', 'erotic', 'estate_agent', 'fabric', 'fishing', 
                                             'flooring', 'food', 'frame', 'frozen_food', 'funeral_directors', 'furnace', 'gallery', 'games', 'gas',  
                                             'general', 'glaziery', 'grocery', 'health', 'health_food', 'hearing_aids', 'herbalist', 'hobby', 'household',  
@@ -2031,10 +2131,10 @@ Layer:
                                             'photography', 'seafood', 'shoes', 'alcohol', 'gift', 'furniture', 'kiosk', 'mobile_phone', 'motorcycle', 
                                             'musical_instrument', 'newsagent', 'optician', 'jewelry', 'jewellery', 'electronics', 'chemist', 'toys', 
                                             'travel_agency', 'car_parts', 'greengrocer', 'farm', 'stationery', 'laundry', 'dry_cleaning', 'beverages', 
-                                            'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor') THEN shop 
+                                            'perfumery', 'cosmetics', 'variety_store', 'wine', 'outdoor', 'copyshop') THEN shop 
                               WHEN shop IN ('accessories', 'antiques', 'appliance', 'art', 'baby_goods', 'bathroom_furnishing', 'bed', 
                                             'boat', 'bookmaker', 'boutique', 'builder', 'building_materials', 'camera', 'car_service', 'carpet', 'charity', 
-                                            'cheese', 'chocolate', 'coffee', 'communication', 'copyshop', 'craft', 'curtain', 'dairy', 'deli', 
+                                            'cheese', 'chocolate', 'coffee', 'communication', 'craft', 'curtain', 'dairy', 'deli', 
                                             'discount', 'e-cigarette', 'electrical', 'energy', 'erotic', 'estate_agent', 'fabric', 'fishing', 
                                             'flooring', 'food', 'frame', 'frozen_food', 'funeral_directors', 'furnace', 'gallery', 'games', 'gas', 
                                             'general', 'glaziery', 'grocery', 'health', 'health_food', 'hearing_aids', 'herbalist', 'hobby', 'household', 
@@ -2096,7 +2196,7 @@ Layer:
     advanced: {}
   - id: "text-line"
     name: "text-line"
-    class: "text"
+    class: ""
     geometry: "linestring"
     <<: *extents
     Datasource:
@@ -2170,11 +2270,11 @@ Layer:
                                                 'seafood', 'shoes', 'alcohol', 'gift', 'furniture', 'kiosk', 'mobile_phone', 'motorcycle', 'musical_instrument', 
                                                 'newsagent', 'optician', 'jewelry', 'jewellery', 'electronics', 'chemist', 'toys', 'travel_agency', 'car_parts', 
                                                 'greengrocer', 'farm', 'stationery', 'laundry', 'dry_cleaning', 'beverages', 'perfumery', 'cosmetics', 
-                                                'variety_store', 'wine', 'outdoor') THEN shop 
+                                                'variety_store', 'wine', 'outdoor', 'copyshop') THEN shop 
                                   WHEN shop IN ('accessories', 'antiques', 'appliance', 'art', 
                                                 'baby_goods', 'bathroom_furnishing', 'bed', 'boat', 'bookmaker', 'boutique', 'builder', 
                                                 'building_materials', 'camera', 'car_service', 'carpet', 'charity', 'cheese', 'chocolate', 'coffee', 
-                                                'communication', 'copyshop', 'craft', 'curtain', 'dairy', 'deli', 'discount',  
+                                                'communication', 'craft', 'curtain', 'dairy', 'deli', 'discount',  
                                                 'e-cigarette', 'electrical', 'energy', 'erotic', 'estate_agent', 'fabric', 'fishing', 'flooring', 
                                                 'food', 'frame', 'frozen_food', 'funeral_directors', 'furnace', 'gallery', 'games', 'gas', 
                                                 'general', 'glaziery', 'grocery', 'health', 'health_food', 'hearing_aids', 'herbalist', 'hobby', 'household', 
diff --git a/roads.mss b/roads.mss
index fc1d134..4f1911f 100644
--- a/roads.mss
+++ b/roads.mss
@@ -107,8 +107,8 @@
 @trunk-width-z13:                 6;
 @primary-width-z13:               5;
 @secondary-width-z13:             5;
- at tertiary-width-z13:              5;
- at residential-width-z13:           3;
+ at tertiary-width-z13:              4;
+ at residential-width-z13:           2.5;
 @living-street-width-z13:         2;
 @pedestrian-width-z13:            2;
 @bridleway-width-z13:             0.3;
@@ -170,31 +170,31 @@
 @service-width-z17:               7;
 @minor-service-width-z17:         3.5;
 
- at motorway-width-z18:             23;
- at motorway-link-width-z18:        14;
- at trunk-width-z18:                23;
- at primary-width-z18:              23;
- at secondary-width-z18:            23;
- at tertiary-width-z18:             23;
- at residential-width-z18:          14;
- at living-street-width-z18:        14;
- at pedestrian-width-z18:           14;
- at road-width-z18:                  9;
- at service-width-z18:               9;
- at minor-service-width-z18:         5;
-
- at motorway-width-z19:             33;
- at motorway-link-width-z19:        20;
- at trunk-width-z19:                33;
- at primary-width-z19:              32;
- at secondary-width-z19:            32;
- at tertiary-width-z19:             32;
- at residential-width-z19:          21;
- at living-street-width-z19:        21;
- at pedestrian-width-z19:           21;
- at road-width-z19:                 13;
- at service-width-z19:              13;
- at minor-service-width-z19:         7;
+ at motorway-width-z18:             21;
+ at motorway-link-width-z18:        13;
+ at trunk-width-z18:                21;
+ at primary-width-z18:              21;
+ at secondary-width-z18:            21;
+ at tertiary-width-z18:             21;
+ at residential-width-z18:          13;
+ at living-street-width-z18:        13;
+ at pedestrian-width-z18:           13;
+ at road-width-z18:                  8.5;
+ at service-width-z18:               8.5;
+ at minor-service-width-z18:         4.75;
+
+ at motorway-width-z19:             27;
+ at motorway-link-width-z19:        16;
+ at trunk-width-z19:                27;
+ at primary-width-z19:              27;
+ at secondary-width-z19:            27;
+ at tertiary-width-z19:             27;
+ at residential-width-z19:          17;
+ at living-street-width-z19:        17;
+ at pedestrian-width-z19:           17;
+ at road-width-z19:                 11;
+ at service-width-z19:              11;
+ at minor-service-width-z19:         5.5;
 
 @footway-width-z18:               1.3;
 @cycleway-width-z18:              1;
@@ -660,7 +660,7 @@
           [zoom >= 15] { line-width: @footway-width-z15 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
           [zoom >= 16] { line-width: @footway-width-z16 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
           [zoom >= 18] { line-width: @footway-width-z18 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
-          [zoom >= 19] { line-width: @footway-width-z19 + 2 * (@paths-background-width + @paths-bridge-casing-width); }
+          [zoom >= 19] { line-width: @footway-width-z19 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
           line-color: @tunnel-casing;
           line-dasharray: 4,2;
         }
@@ -688,7 +688,7 @@
           [zoom >= 15] { line-width: @cycleway-width-z15 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
           [zoom >= 16] { line-width: @cycleway-width-z16 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
           [zoom >= 18] { line-width: @cycleway-width-z18 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
-          [zoom >= 19] { line-width: @cycleway-width-z19 + 2 * (@paths-background-width + @paths-bridge-casing-width); }
+          [zoom >= 19] { line-width: @cycleway-width-z19 + 2 * (@paths-background-width + @paths-tunnel-casing-width); }
           line-color: @tunnel-casing;
           line-dasharray: 4,2;
         }
diff --git a/shapefiles.mss b/shapefiles.mss
index 5b3d1c0..1274b57 100644
--- a/shapefiles.mss
+++ b/shapefiles.mss
@@ -1,6 +1,12 @@
 #necountries {
   [zoom >= 1][zoom < 4] {
-    line-width: 0.5;
+    line-width: 0.2;
+    [zoom >= 2] {
+      line-width: 0.3;
+    }
+    [zoom >= 3] {
+      line-width: 0.4;
+    }
     line-color: @admin-boundaries;
   }
 }
diff --git a/symbols/beverages-14.svg b/symbols/beverages-14.svg
index bf95e77..2cedc52 100644
--- a/symbols/beverages-14.svg
+++ b/symbols/beverages-14.svg
@@ -1,15 +1,45 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:cc="http://creativecommons.org/ns#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:svg="http://www.w3.org/2000/svg"
    xmlns="http://www.w3.org/2000/svg"
-   id="svg2"
-   viewBox="0 0 14 14"
-   height="100%"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
    width="100%"
-   version="1.1">
+   height="100%"
+   viewBox="0 0 14 14"
+   id="svg2"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="beverages-14.svg">
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1855"
+     inkscape:window-height="1056"
+     id="namedview7"
+     showgrid="true"
+     inkscape:zoom="47.6792"
+     inkscape:cx="11.845001"
+     inkscape:cy="6.1610598"
+     inkscape:window-x="65"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2">
+    <inkscape:grid
+       type="xygrid"
+       id="grid2984" />
+  </sodipodi:namedview>
   <metadata
      id="metadata8">
     <rdf:RDF>
@@ -25,23 +55,16 @@
   <defs
      id="defs6" />
   <rect
-     style="fill:none;stroke:none;visibility:hidden"
-     id="canvas"
-     y="0"
-     x="0"
+     width="14"
      height="14"
-     width="14" />
-  <g
-     id="g3809">
-    <g
-       id="g3817">
-      <g
-         id="g3813">
-        <path
-           d="m 7,6 1,7 c 0,0 0,1 1,1 l 2,0 c 1,0 1,-1 1,-1 L 13,6 Z M 14,1 11,1 10,5 11,5 11.75761,2 14,2 Z M 3,0 C 2,0 2,0.4670568 2,1 L 2,3 C 2,4 0,4 0,6 l 0,7 c 0,0.566252 0.467057,1 1,1 l 4,0 c 0.599561,0 1,-0.400439 1,-1 L 6,6 C 6,4 4,4 4,3 L 4,1 C 4,0.4337479 4,0 3,0 Z"
-           style="fill:#000000;fill-opacity:1;stroke:none"
-           id="beverages" />
-      </g>
-    </g>
-  </g>
+     x="0"
+     y="0"
+     id="canvas"
+     style="fill:none;stroke:none;visibility:hidden" />
+  <path
+     style="fill:#000000;fill-opacity:1;stroke:none"
+     d="M 3,0 C 2,0 2,0.50227551 2,2 2,3 0,7 0,8 l 0,5 c 0,0.566252 0.467057,1 1,1 l 4,0 c 0.599561,0 1,-0.400439 1,-1 L 6,8 C 6,7 4,3 4,2 4,0.46896661 4,0 3,0 z m 7.875,1 -1,4 L 11,5 11.75,2 14,2 14,1 z M 7,6 8,13 c 0,0 0,1 1,1 l 2,0 c 1,0 1,-1 1,-1 l 1,-7 z"
+     id="beverages"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sssssssssscccccccccssccc" />
 </svg>
diff --git a/symbols/copyshop-14.svg b/symbols/copyshop-14.svg
new file mode 100644
index 0000000..e45a608
--- /dev/null
+++ b/symbols/copyshop-14.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   version="1.1"
+   width="100%"
+   height="100%"
+   viewBox="0 0 14 14"
+   id="svg2">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6" />
+  <rect
+     width="14"
+     height="14"
+     x="0"
+     y="0"
+     id="canvas"
+     style="fill:none;stroke:none;visibility:hidden" />
+  <path
+     d="M 9.03125,-0.03125 1,0 1,10 4,10 4,9 2,9 2,1 l 6,0 0,2 1.03125,0 0,-3.03125 z M 3,2 3,2.5 7,2.5 7,2 3,2 z M 3,3 3,3.5 4,3.5 4,3 3,3 z M 3,4 3,4.5 4,4.5 4,4 3,4 z M 5,4 5,14 13,14 13,7.28125 9.71875,4 5,4 z M 3,5 3,5.5 4,5.5 4,5 3,5 z m 3,0 3,0 0,3 3,0 0,5 -6,0 0,-8 z M 10,5.6875 11.3125,7 10,7 10,5.6875 z M 3,6 3,6.5 4,6.5 4,6 3,6 z M 7,6 7,6.5 8,6.5 8,6 7,6 z M 3,7 3,7.5 4,7.5 4,7 3,7 z M 7,7 7,7.5 8,7.5 8,7 7,7 z M 7,8 7,8.5 8,8.5 8,8 7,8 z m 0,1 0,0.5 4,0 L 11,9 7,9 z m 0,1 0, [...]
+     id="copyshop"
+     style="fill:#000000;fill-opacity:1" />
+</svg>
diff --git a/water-features.mss b/water-features.mss
index 2230fa7..7c8f305 100644
--- a/water-features.mss
+++ b/water-features.mss
@@ -114,7 +114,8 @@
   }
 }
 
-.text {
+.text,
+#text-line {
   [feature = 'waterway_dam'],
   [feature = 'waterway_weir'] {
     #text-poly[zoom >= 15],

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/openstreetmap-carto.git



More information about the Pkg-grass-devel mailing list