WME Validator Localization for New York

This script localizes WME Validator for New York. You also need main package (WME Validator) installed.

当前为 2015-10-04 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name WME Validator Localization for New York
  3. // @namespace https://greasyfork.org/en/users/15052
  4. // @version 1.1.910
  5. // @author New York Editors
  6. // @credit Credit to xanderb for the base template.
  7. // @description This script localizes WME Validator for New York. You also need main package (WME Validator) installed.
  8. // @match https://editor-beta.waze.com/*editor/*
  9. // @match https://www.waze.com/*editor/*
  10. // @grant none
  11. // @run-at document-start
  12. // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAB9VBMVEUAAAD/gAD/nwD/lQD/nwD/mQD/lQD/kgD/mwD/lwD/nAD/mQD/lwD/mgD/mAD/mwD/mQD/lwD/mAD/mgD/mQD/mAD/mgD/mAD/mgD/mQD/mAD/mQD/mQD/mgD/mQD/////mAD/////mQD/////mQD/////mgD/mQD/////mAD/////mQD/mQD/mQD/////mgD//////Pj/mQD/////mAD/////mQD/mQD/////mgD/////mQD/mAD/////mQD/////mQD/////mgD/////mQD/mAD/////mQD/////mQD/mQD/////mQD/////mQD/////mQD/////mQD/////mQD/mQD/////mQD/////mQD/tkf/ulT/mQD/////mQD/mgD/mQD/////mgD/0Yz/mQD/////mQD///8AAAABAQECAgIDAwMJCQkRERESEhIWFhYZGRkaGhocHBwvLy8xMTFERERISEhXV1doaGhqamqBgYGEhISioqKjo6Ourq64uLi+vr7g4ODn5+fr6+v19fX4+Pj5+fn8/Pz9/f3+/v7/mQD/mwT/ngz/piD/qSj/rjT/s0D/uVD/u1T/w2j/xGz/xnD/x3T/zID/z4j/0Yz/05D/1pj/2aD/26T/3qz/5b//7M//79f/8dv/8t///Pf//fv////VAUOcAAAAaHRSTlMABAgMEBQYHBwgJCgsMDQ4PEBDR0tPU1dbX2Nna29zc3d3e3t/f4OHh4uLj5GTk5eXmZubn5+jp6erq6+zs7e3u7u/v8PHx8vLz9PT19fb29/f4+Pl5+fr6+3t7e/v8PLz8/T29/f7+1UbC/wAAAU+SURBVGje7drtf9NEHADwa7eWZRXWrKxrwAwfKlonghiRbt2YcQM2B4bCHChKFdpmPj/hs+KzLooPoKKITp3k7zRLcsk195iUvvHD71WbNPnud7mn3A0AUjxm24+AXoe9EU/c1VNjv+1Fe6KHSNsO4vEdvSEGi79e/vGH7y5e/MYKom44oet6TdN2l8tjilKQ85LUl+j+6eHKXMOKES3DOKTrrlyWhYh8NRYQjbIAIR+yugs+kqpYVq+RVLVrw1J5iNa9YSkcY6vVeyRdR3/87feXf/tj7a/19X/DNrnuxD9ra2t/Xrt29cqVn57SZvQ5wzgXB1HDej/9+982M94wTfMd2376fu/Pk6QhuaAoqtNONrMRAxpVaQ9TeM30YsX8wrYfjdXOC9CoAfAs5fYbt/7MROMVp5++h1FfI99h9V3O+J28vYohKyYeG/30FMXom+2s0ZmWj9zhjlbw7zZ5yop34tgOohFpN9thaQ3ARD7274Ik9CYxES+miEanMu0bM+Fohd3HNhkIZmQXo31AGtb2EgBN76oPgxut+k/oE9x4GxrHaQaibPEPnOvzS+stUygC5HaqYVnb/GPbwtI6ZpvC8S402gzDahW9g7CPrziJiBvhE5lgGIHycND1TK0mQZgGVGb9b7L7RF6NixzpMHJ1fBpQRDqunN9IvuoikdwSabJRDBHpJKtR0JQm17AsHQDYTNJoJ/KRKLKHb8w6bQN+Pkjod+nxKV5aDCNA8O79PD+Rg1xj0p1m0hGnQ6EZL2OJ5MlG1RtXWIgTr7MSORkaDZbBQ8h12j91r6DBR5x4ntJKRI0AST3UjN776qXr8OMLqPGSf/CAqAHgA5Ocz0c6DcsKFUYiFENL4fMhyf020UYNRCEY/mhVIBvjpEmXBA8cR4xQCScS70PkTvfnxRbfAEf9o7eEhw6ERqCYnUNyMFoJGUAPuno0zoa/jyodo5WYQUZU9ApPIXbyggYRUTuv6VDQ0YpiVLBJ0j585q9Gr3IVzziPJDLaEn3l0jBExa9zlRU0kSbxd7TXOgwhXguVFYg8GMfAkPSiRVNM873wsccx8EyyVOVF83NoHI5lgL2RGSVVefI6MtWPZxAePE2pPtD88gNvFnyWvNIyCsQRqpJy++mvL/xCNoogDsJQwP62/XNcg4ywFDAe26AgDCWBEczqS0BMuS+BQenq6QoxGgWQDImhNPIgKSKscA0WIqiEhlz2Qqat3gyChAqSR5m2UojNVmIqaFklRLjKEvo8kiIcZSmH/ha207G4CFPpNGi9hwDCUCJGNwhViRp0ZN4/McRoS9lTJOO5HBBFWI2RqTRyQBip+SdGQTzlVBaII5rYUntUIRl0BDagXSCOQjSCoh+OnijBlQNeT5p9hmfQn+9m+BzTPGXTGY4BYFXHVtSDhc4RIKrQDLBMbXMwxyoQVE7005a1Yab4qTG4nJoVU05Qd/5gydfxUwNxttc2naEb4NZwYRaLGZjKgICSYexgTtJeGTfeymAq88m2QIPdjNOMKpSCr/LW4pZukDy8DbFiKMhC23ByZCcsEHKe6GZpfe/WTLLSgmvCd1PqXuRd+WhtXC3KUn+iRKiDhkKb7xjGrK5Pa25UykGoilKSZQmpjn27g/Eyxd8FjBcNY17X91X1hRZjPSKIka62ydGXCFbHIU3eGKTC2ZGv3QBjgTtiSDsXujSWJKF/w1CrRnJjflC4xmeGSmWtNmfErQuny+kkrbhfkmRZHlHcuC1sJ7s0rarPGcuoUNveD3oTGWlIlouynM+Cm3Ez/rfxH6STRnmdq/GgAAAAAElFTkSuQmCC
  13. // ==/UserScript==
  14. //
  15. /*
  16. See Settings->About->Available checks for complete list of checks and their params.
  17. Examples:
  18. Enable #170 "Lowercase street name" but allow lowercase "exit" and "to":
  19. "170.enabled": true,
  20. "170.params": {
  21. "regexp": "/^((exit|to) )?[a-z]/",
  22. "},
  23. Enable #130 "Custom check" to find a dot in street names, but allow dots at Ramps:
  24. "130.enabled": true,
  25. "130.params": {
  26. "titleEN": "Street name with a dot",
  27. "problemEN": "There is a dot in the street name (excluding Ramps)",
  28. "solutionEN": "Expand the abbreviation or remove the dot",
  29. "template": "${type}:${street}",
  30. "regexp": "D/^[^4][0-9]?:.*\\./",
  31. },
  32. *Note: use D at the beginning of RegExp to enable debugging on JS console.
  33. *Note: do not forget to escape backslashes in strings, i.e. use "\\" instead of "\".
  34. */
  35.  
  36. window.WME_Validator_United_States = {
  37. ".country": "New York State, USA",
  38. ".codeISO": "US",
  39. ".author": "tythesly",
  40. ".updated": "2015-10-01",
  41. ".link": "TODO: ",
  42. //Default US checks
  43. "27.enabled": true,
  44. "90.enabled": true,
  45. "106.enabled": true,
  46. "112.enabled": false,
  47. "139.enabled": true,
  48. "139.params": {
  49. "titleEN": "Bad TTS Street name",
  50. "problemEN": "Streets that start with St and Dr result in TTS reading Street or Drive",
  51. "solutionEN": "Add a period after St or Dr at the beginning of the street name",
  52. "template": "${street}#${altStreet[#]}",
  53. "regexp": "/^([SNEW] )+(St |Dr )|^St |^Dr |Jr |Rev /"
  54. },
  55. "139.solutionLink": "W:Abbreviations_and_acronyms/USA#Recommended_abbreviations",
  56. "138.enabled": true,
  57. "138.params": {
  58. "titleEN": "Incorrect Hwy Name Prefix",
  59. "problemEN": "NY follows national guidelines for hwy naming prefixes, and uses NY-## for state routes.",
  60. "solutionEN": "Rename the Street or Alt Street",
  61. "template": "${state}:${street}#${altStreet[#]}",
  62. "regexp": "/^New York:.*\\b(([Uu]\\.? ?( S|S\\.|s\\.?)|[Nn](ew )?(y|[Yy]ork)? ?|[Ss]tate |[Ss] ?[RrHh]|[Cc]o(unty)? ?)([Rr]((ou)?(te)?|(oa)?d)|[Hh]((igh)?[Ww]a?[Yy])?)?|Ny|NY=|I- |[Cc][HhrSs]|([Ii]|[NnCcUu][YyRrSs])[ =])[- ]?\\d+/"
  63. },
  64. "138.solutionLink": "W:NY#Major_roads",
  65. "137.enabled": true,
  66. "137.params": {
  67. "titleEN": "Improper Cardinal Usage",
  68. "problemEN": "This name contains a cardinal direction (NEWS) which does not match wiki guidelines.",
  69. "solutionEN": "If this cardinal should be spoken as a direction by TTS, make sure it has space on either side of it. \n\ If this cardinal should be spoken by TTS as a letter, follow it with a period. \n\ All cardinals should be capitalized.",
  70. "template": "${street} ${altStreet[#]}",
  71. "regexp": "/(^| )([NEWS]?[news][NEWS]?|[\"']?([NnSs][EeWw]?|[EeWw])['\":-]|[\"']([NnSs][EeWw]?|[EeWw])['\":-]?)(\\b|\\d| |$)/"
  72. },
  73. "137.solutionLink": "W:Abbreviations_and_acronyms/USA#Standard_suffix_abbreviations",
  74. "136.enabled": true,
  75. "136.params": {
  76. "titleEN": "NYS Minimum Lock Levels",
  77. "problemEN": "NYC has higher locking levels than the rest of NYS. Ferries and RR should be locked as well",
  78. "solutionEN": "Lock the segment to at least; PS>=3, mH>=4, MH>=5, FW>=5, Ramp>=highest connection, Ferry>=5, RR>=2.",
  79. "template": "${state}:${city}#${type}:${lock}",
  80. "regexp": "/^New York:((New York|Manhattan|Queens|Brooklyn|Bronx|Staten Island)#(6:[1-4]|7:[1-3]|2:[12])|.*#(15:[1-4]|18:1))/"
  81. },
  82. "136.solutionLink": "W:NY#Locking_standard",
  83. "130.enabled": true,
  84. "130.params": {
  85. "titleEN": "Short Parking Lot",
  86. "problemEN": "Dead End Parking Lot is less that 30 meters",
  87. "solutionEN": "Does it really need to be there?",
  88. "template": "${deadEnd}:${typeRank}:${length}",
  89. "regexp": "/1:7:([0-2]?[0-9])$/"
  90. },
  91. "130.solutionLink": "W:Best_map_editing_practice#Parking_Lots",
  92. "131.enabled": true,
  93. "131.params": {
  94. "titleEN": "Not New York",
  95. "problem": "The segment is assigned to another state",
  96. "solutionEN": "Make sure you are editing in NY and change it",
  97. "template": "${state}",
  98. "regexp": "!/^New York/"
  99. },
  100. "131.solutionLink": "W:Creating_and_editing_road_segments#Address_Properties",
  101. "134.enabled": true,
  102. "134.params": {
  103. "titleEN": "Potential Incorrect Abbreviation",
  104. "problemEN": "Name abbreviation may be incorrect. Alternative routes should be labeled ALT and abbreviations ALT, BUS, BYP, CONN, LOOP, SCN, SPUR, or TRUCK should be in ALL CAPS",
  105. "solutionEN": "Change abbreviation to ALT, BUS, BYP, CONN, LOOP, SCN, SPUR, or TRUCK in ALL CAPS",
  106. "template": "${street}##${altStreet[0]}##${altStreet[1]}##${altStreet[2]}##${altStreet[3]}##${altStreet[4]}##${altStreet[5]}##${altStreet[6]}##${altStreet[7]}##${altStreet[8]}##${altStreet[9]}",
  107. "regexp": "/!?[0-9].+(Alt|Business|Bus|Byp|Conn|Loop|Scn|Spur|Truck)\\b/"
  108. },
  109. //There already is a city on freeway check, enable it
  110. // disabling for now, we allow city names on fwy in NY >> "59.enabled": true,
  111. //Freeway lock
  112. "150.enabled": true,
  113. "150.params": {
  114. // {number} minimum lock level
  115. "n": 5,
  116. },
  117. //Major Highway lock
  118. "151.enabled": true,
  119. "151.params": {
  120. // {number} minimum lock level
  121. "n": 4,
  122. },
  123. //Minor Highway lock
  124. "152.enabled": true,
  125. "152.params": {
  126. // {number} minimum lock level
  127. "n": 3,
  128. },
  129. //Ramp lock
  130. "153.enabled": true,
  131. "153.params": {
  132. // {number} minimum lock level
  133. "n": 5,
  134. },
  135. //Primary Street lock
  136. "154.enabled": true,
  137. "154.params": {
  138. // {number} minimum lock level
  139. "n": 2,
  140. },
  141. "170.enabled": !0,
  142. "170.params": {
  143. regexp: "/^(?!(to) [^a-z])((S|N|W|E) )?[a-z]/"
  144. },
  145. "171.enabled": true,
  146. "171.solutionLink": "W:Abbreviations_&_Acronyms/USA#Standard_Suffix_Abbreviations"
  147. };
  148.