|
|
(361 intermediate revisions by 43 users not shown) |
Line 1: |
Line 1: |
| The Waze community has created the following plugins/extensions/addons for use in the Waze web-based environments. (Client-side possible?)
| | <!-- |
| ==LiveMap==
| | #####-----#####-----#####-----#####-----#####-----#####-----#####-----#####----- |
| ===LiveMap Navigation List===
| | #### #### |
| by Timbones
| | #### If you are a script author, #### |
| | #### or you are a script authors' #### |
| | #### representative you may add #### |
| | #### your scripts details to this #### |
| | #### page. Please follow these #### |
| | #### instructions so your script #### |
| | #### can match the uniform style #### |
| | #### of the rest of the page. #### |
| | #### #### |
| | #### To add a new script section #### |
| | #### to this page please add the #### |
| | #### {{NewScript|SCRIPT TITLE}} #### |
| | #### template to this page in the #### |
| | #### position where you would #### |
| | #### like the new section to be. #### |
| | #### After saving the page, #### |
| | #### expand the new section and #### |
| | #### click the link to add the #### |
| | #### script details. #### |
| | #### #### |
| | #### Your script page should not #### |
| | #### have any headers less than #### |
| | #### level 3. You should only use #### |
| | #### at least level 4+ headers. #### |
| | #####-----#####-----#####-----#####-----#####-----#####-----#####-----#####--> |
|
| |
|
| This plugin/extension works with the Waze LiveMap only. After installing, create a route in the LiveMap by clicking on the origin and destination. Once the LiveMap requests the route, the left side panel area will switch from the current events scrolling list, to a navigation list of the route. Multiple routes are displayed. Each turn is clickable and the map will zoom to that location.
| |
|
| |
|
| <u>'''DOWNLOAD LiveMap Navigation List'''</u>
| | The Waze community has created the following plugins/extensions/addons for use in the Waze web-based environments. |
| | See [[#Browser requirements|Browser requirements and instructions]]. |
|
| |
|
| [http://userscripts.org/scripts/show/118389 Download the LiveMap Navigation List] from userscripts.org
| | Please be aware that these scripts commonly require updates in order to properly work after new releases of the Waze products. While some may update automatically once their authors make changes, others may require manual updating on your part. |
| *Firefox requires the [https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/ Greasemonkey Addon].
| |
| *Chrome users can leverage the [https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo?hl=en Tampermonkey Extension] to install and manage the script from directly within the browser. Otherwise Chrome users will need drag the file downloaded to their PC into the Chrome Extensions tab.
| |
|
| |
|
| <u>'''More Information'''</u>
| | [http://code.waze.tools/ Common Scripts Repository for Developers & End Users] |
|
| |
|
| [http://www.waze.com/forum/viewtopic.php?t=13511 LiveMap Navigation List forum thread]
| |
|
| |
|
| ===LiveMap UR Overlay (LMUR)=== | | {{TOC limit|3}} |
| by Twister-UK
| | <br> |
| | ==Browser requirements== |
| | <div style="border:solid 2px #ffbb00; border-radius: 100px 0px 0px; background: #8AC007; padding: .5em 1em 0em; background-color:transparent; color:#000;zoom: 1"><!-- |
| | --><div style="padding:1ex 1ex 0ex; "> |
| | {{Anchor|browsers|Chrome|Chrome / Blink / Opera Next|Firefox|Firefox / Mozilla|Internet Explorer|Safari|Monkey|Greasemonkey or Tampermonkey add-on for script management}} |
| | {{Expand|/Browser requirements|General installation instructions|section=3|summary=Click Expand for details on general installation info for specific browsers, and the [http://tampermonkey.net/ Tampermonkey], and [http://addons.mozilla.org/en-US/firefox/addon/greasemonkey/ Greasemonkey] script managers. <br>''(Chrome / Blink / Opera Next / Firefox / Mozilla / Internet Explorer / Safari)''}} |
| | </div></div> |
|
| |
|
| LMUR allows update requests and map problems to be displayed on the Livemap, with various filtering options to show/hide requests/problems by type, age, keyword etc. Requires Livemap to be viewed via the secure (https) URL - LMUR will prompt you if a non-secure URL is used.
| | ==Map Editor presentation enhancements== |
| | {{NewScript|WME ClickSaver}} |
|
| |
|
| <u>'''DOWNLOAD LiveMap UR Overlay (LMUR)'''</u>
| | {{Anchor |Highlights for Landmarks and Segments|WME Color Highlights (WMECH)}}<!-- |
| | -->{{NewScript|WME Color Highlights}} |
|
| |
|
| [http://userscripts.org/scripts/show/150276 Download the LiveMap UR Overlay script] from userscripts.org
| | {{NewScript|WME HardHats}} |
| *Firefox requires the [https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/ Greasemonkey Addon].
| |
| *Chrome users can leverage the [https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo?hl=en Tampermonkey Extension] to install and manage the script from directly within the browser. Otherwise Chrome users will need to [http://crx.chizzum.com/LMUR.crx download the crx package] instead.
| |
|
| |
|
| <u>'''More Information'''</u>
| | {{NewScript|WME Highlighter City}} |
|
| |
|
| [http://www.waze.com/forum/viewtopic.php?t=29381 LiveMap UR Overlay forum thread]
| | {{Anchor|WME Junction Angle info}}<!-- |
| | -->{{NewScript|WME Junction Angle Info}} |
|
| |
|
| ==Editing==
| | {{NewScript|WME layout tweaking user style}} |
| ===WME Colour Highlights for Landmarks and Segments===
| |
| by Timbones
| |
|
| |
|
| This script adds color highlighting to segments and landmarks according to their status and type. The highlighting of segments is likely to be most useful, for it shows locked and un-named roads.
| | {{NewScript|WME Level Highlighter}} |
|
| |
|
| [[Image:Wme-highlights.png]]
| | {{NewScript|WME LiveMap closures}} |
|
| |
|
| <u>'''DOWNLOAD WME Colour Highlights for Landmarks and Segments'''</u>
| | {{NewScript|WME Place Interface Enhancements}} |
|
| |
|
| [http://userscripts.org/scripts/show/141050 Download WME Colour Highlights for Firefox] from userscripts.org
| | {{NewScript|ShowTown}} |
| *Chrome users: download the linked .crx file included on the [http://userscripts.org/scripts/show/141050 userscript.org] page
| |
| *Firefox requires the [https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/ Greasemonkey Addon].
| |
|
| |
|
| <u>'''More Information'''</u>
| | {{NewScript|Street Vector Layer}} |
|
| |
|
| [http://www.waze.com/forum/viewtopic.php?t=40705 WME Color Highlights forum thread]
| | {{NewScript|WME Street View Availability}} |
|
| |
|
| ===WME Junction Angle info===
| | {{NewScript|WME True Segment Length}} |
| by milkboy
| |
|
| |
|
| Waze Map Editor (WME) addon to help with junction design. If two connected segments are selected, it shows the turn angle, otherwise it shows the the angle between each segment.
| | {{NewScript|WME Tab Manager}} |
|
| |
|
| [[image:Junction_Angle_Info_Example.png]]
| | {{anchor|UR_Overview_Plus}}<!-- |
| | -->{{NewScript|UR Overview Plus (URO+)}} |
|
| |
|
| <u>'''DOWNLOAD WME Junction Angle info'''</u> | | {{anchor|UR Comments}}<!-- |
| | -->{{NewScript|URComments}} |
|
| |
|
| WME-JunctionAngle [http://userscripts.org/scripts/show/160864 for Firefox] or [https://chrome.google.com/webstore/detail/wme-junctionangle/cfcpfikgmfoghjfpfepmklballeagadf for Chrome]
| | ==Map Editing== |
|
| |
|
| <u>'''More Information'''</u>
| | {{Throttle warn}} |
|
| |
|
| http://www.waze.com/forum/viewtopic.php?f=819&t=61926
| |
|
| |
|
| ===WME Junction Node Fixer (JNF)===
| |
| by bgodette
| |
|
| |
|
| Junction Node Fixer has several features. The primary focus of JNF is that it overloads the 'q' (disallowAllTurns) keyboard shortcut to preserve existing turn restrictions. 'Overloading' means that it takes over all functionality of the 'q' hotkey only. The 'q' keyboard shortcut performs the following actions
| | {{anchor|Waze Aerial Shifter}}<!-- |
| * Fixes any self and reverse connectivity issues
| | -->{{NewScript|WME Aerial Shifter (WAS)}} |
| * Fixes closed loop roads (by splitting into two segments with a joining junction)
| |
| * Terminates dead-ends with a junction
| |
| * Makes dead-ends two-way (only if both ends of the segment are visible)
| |
| * Sets the Type of a roundabouts using lowest of two highest rule and sets country/state if needed
| |
| * For UK sets Type of roundabouts using highest type excluding Freeway rule.
| |
| * Does a traditional 'qw' (clears reverse connectivity, and locks turns)
| |
| * Causes the turn arrows to refresh (the side effect of 's' but without the shifting).
| |
|
| |
|
| Since you end up with the same turns restricted, that means you need to press 'w' if you really want all turns allowed. This is why it overloads 'q' instead of 'w'. Ultimately this will be a separate hotkey that's editable through WME's '?' interface.
| | {{NewScript|WME center to begin-end of street}} |
|
| |
|
| JNF also: | | {{anchor|WME Junction Node Fixer (JNF)}}<!-- |
| * Saves the state of WME's ShowAllTurns, ShowTurns and Full-screen mode across F5/Permalink.
| | -->{{NewScript|WME Junction Node Fixer}} |
| * Forces data model reload after successful save.
| |
|
| |
|
| This has only be tested in Chrome, it's been reported to work in FF+GM.
| | {{NewScript|WME Magic Wand}} |
|
| |
|
| <u>'''DOWNLOAD WME Junction Node Fixer'''</u>
| | {{NewScript|WME Place Harmonizer}} |
|
| |
|
| [http://userscripts.org/scripts/show/144939 Download Junction Node Fixer script] from userscripts.org
| | {{NewScript|WME RA Util}} |
|
| |
|
| <u>'''More Information'''</u>
| | {{NewScript|WME Road Selector}} |
|
| |
|
| [http://www.waze.com/forum/viewtopic.php?t=35237 WME Junction Node Fixer forum thread]
| | {{NewScript|WME Roundabout Angles}} |
|
| |
|
| ===WME Toolbox===
| | {{NewScript|Street to River PLUS}} |
| by OyyoDams
| |
|
| |
|
| This script adds many features like small junctions highlight, redo roundabout, convert roundabout to standard road, clear road geometry, many permalinks to external sites, and more.
| | {{NewScript|WME Advanced Closures}} |
|
| |
|
| It's live updated and doesn't need to be manually updated each time a new version is released.
| | {{anchor|Install WME Toolbox|Update WME Toolbox|WME Toolbox features|Toolbar|Toolbox|Highlight layers menu|And more|More information}}<!-- |
| | -->{{NewScript|WME Toolbox}} |
|
| |
|
| It requires WME Colour Highlights and WME Junction Node Fixer to work.
| | ==Map validation and routing== |
| | {{NewScript|WME Route Checker}} |
|
| |
|
| <u>'''DOWNLOAD WME Toolbox'''</u>
| | {{NewScript|WME Route Speeds (Traffic)}} |
|
| |
|
| Download WME Toolbox for [http://userscripts.org/scripts/show/166405 Firefox] or
| | {{NewScript|WME Speedhelper}} |
| [http://www.wazeteam.com/chrome/WME_Toolbox_laucher.crx Chrome]
| |
|
| |
|
| <u>'''More Information'''</u>
| | {{NewScript|WME Validator}} |
|
| |
|
| [http://www.waze.com/forum/viewtopic.php?t=48123 English forum thread] -
| |
| [http://www.waze.com/forum/viewtopic.php?t=47964 French forum thread]
| |
|
| |
|
| ===Update Request Overview (URO)=== | | ==WME Chat== |
| by Twister-UK
| |
|
| |
|
| URO provides various filtering options to show/hide update request, map problem and camera markers according to type, age, comment keyword etc. For any markers that remain visible, hovering the mouse pointer over the marker then generates a pop-up which contains a summary of the marker information and some marker-type specific actions (e.g. opening an update request in a new tab, deleting a camera). For any UR markers where a conversation is taking place (currently WME beta only), the marker is modified to show a small quote icon in place of the Waze icon.
| | {{NewScript|WME Chat addon}} |
|
| |
|
| <u>'''DOWNLOAD Update Request Overview'''</u>
| | {{NewScript|WME Chat Jumper}} |
|
| |
|
| Download Update Request Overview v1.37 for [http://www.wazeteam.com/download/firefox/WME_Toolbox_launcher.user.js Firefox+Greasemonkey] or [http://www.wazeteam.com/download/chrome/WME_Toolbox_laucher.crx Chrome packaged version]
| | {{NewScript|WME Chat Resizer and Auto Scroll}} |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://www.waze.com/forum/viewtopic.php?t=29054 Update Request Overview forum thread]
| |
| | |
| | |
| {{anchor|Waze Aerial Shifter}} | |
| | |
| ===WME Aerial Shifter (WAS)===
| |
| by berestovskyy
| |
| | |
| This script helps you adjust the position of underlying satellite imagery to work on road alignment inside WME.
| |
| | |
| <u>'''DOWNLOAD Waze Aerial Shifter'''</u>
| |
| | |
| Version 1.3 (Aug 27, 2013):
| |
| * For Google Chrome browser please download WAS.1.3.crx: [https://docs.google.com/file/d/0B9yvR3S7YHqoZ01nX2NiMUdGdjQ/edit?usp=sharing link to Crome CRX package]<br>Then drag and drop it into your Chrome Extensions Tab (chrome://extensions/)
| |
| * For Firefox/Greasemonkey please install the script from userscripts.org: [http://userscripts.org/scripts/show/176646 link]
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://world.waze.com/forum/viewtopic.php?t=53022 WME Aerial Shifter forum thread]
| |
| | |
| ===Street to River===
| |
| by aeytom
| |
| | |
| [[image:street-created-selected-and-named.png|thumb|Street created, selected and named]]
| |
| [[image:created-river-after-helper-street-deleted.png|thumb|River created and helper street deleted]]
| |
| | |
| The script is designed as a helper for creating river/railroad landmarks for the free waze navigation system. The script transforms the geometry of a new unsaved street to a river or railroad landmark. You can predefine the width and the name for the new landmark in the form of a special street name.
| |
| | |
| Mini howto:
| |
| * install this script as greasemonkey script or chrome extension
| |
| * draw a new street but do not save the street
| |
| * add and apply a street name to define the rivers name and width. This step is optional.
| |
| : Example: ''20m Spree'' creates a 20 meters wide river named ''Spree''
| |
| * Select the helper street
| |
| * Click the '''Street to river''' or '''Street to railroad''' button
| |
| * Delete the helper street
| |
| * Edit the new landmark as you like. You can even set the landmark to another type. [http://world.waze.com/livemap/?zoom=9&lat=52.45873&lon=6.17407 Here it is used] to mark a railroad, using landmark type 'other'.
| |
| | |
| Examples of rivers created by the script:
| |
| * Spree: https://world.waze.com/edtior/?zoom=2&lat=52.29672&lon=14.25296
| |
| * Nottekanal: https://world.waze.com/edtior/?zoom=1&lat=52.22414&lon=13.48316&
| |
| {{clear|right}}
| |
| <u>'''DOWNLOAD Street to River'''</u>
| |
| | |
| Download the Street to River script for [http://userscripts.org/scripts/show/122049 userscripts.org Firefox+Greasemonkey] from userscripts.org
| |
| *Firefox requires the [https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/ Greasemonkey Addon].
| |
| *Chrome users can leverage the [https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo?hl=en Tampermonkey Extension] to install and manage the script from directly within the browser. Otherwise, Chrome users will need to downloaded manually, and then drag the script file into the Extensions tab.
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://www.waze.com/forum/viewtopic.php?t=14550 Street to River forum thread]
| |
| | |
| ===WazeBar===
| |
| by edsonajj
| |
| | |
| WazeBar is an alternative menu bar for WME that also integrates other scripts, making them available on Safari.
| |
| | |
| The currently integrated scripts are:
| |
| * WME Colour Highlights by timbones.
| |
| *UR Overview by Twister_UK.
| |
| *GeoWipe by bgodette.
| |
| * Junction Node Fixer bybgodette.
| |
| | |
| Other features include:
| |
| * Autosave at a certain number of edits.
| |
| | |
| More features and additional script integrations are being worked on. The original development of WazeBar was made by Mike Bronner, it is currently mantained by Edson Jiménez.
| |
| | |
| <u>'''DOWNLOAD WazeBar'''</u>
| |
| | |
| [https://dl.dropboxusercontent.com/u/86545493/Waze/Extensions/Safari/WazeBar.safariextz Download WazeBar for Safari] from dropbox.
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://www.waze.com/forum/viewtopic.php?t=47794 WazeBar for Safari forum thread]
| |
| | |
| ===Roundabout Angles and Landmark===
| |
| by davipt
| |
| | |
| Roundabout Angles and Landmark is a script with two features:
| |
| * selecting a roundabout node, on the left side there is a button to automatically create a "junction" landmark around the landmark. Roundabout segments shall not have street name set, but the roundabout name should be added to this landmark in the middle, so the label appears horizontally.
| |
| * selecting a roundabout node, on the left side there is a button to create a temporary landmark in the form of a leaf, which will denote the approximate 90º, 180º and 270º range that Waze uses to switch from the "take the nth exit" to the "straight ahead/turn left/turn right" on roundabouts with two to four connections.
| |
| | |
| If the created landmark is not round, it means the roundabout has something screwed up, usually a reversed A->B segment, so it also helps ensuring proper roundabouts.
| |
| | |
| <u>'''DOWNLOAD Roundabout Angles and Landmark'''</u>
| |
| | |
| [http://userscripts.org/scripts/show/152981 Download Roundabout Angles and Landmark] from userscripts.org
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://www.waze.com/forum/viewtopic.php?t=32633 Roundabout Angles and Landmark forum thread]
| |
| | |
| | |
| ===WME Add-Ons===
| |
| by gdu1971
| |
| | |
| '''CAUTION!'''
| |
| Please do not use this tool unless you are a very experienced Waze editor and fully understand the ramifications of using this tool. Even experienced editors should learn how to use it only on very smaller areas at a time. Read the forum linked below to better learn how to use it and to understand the ramifications of its use!
| |
| | |
| This is a plugin/extension which displays a table of all the current view's country, state, city and street names. You can select all segments of a street using a custom button. This extension makes it very easy to find and fix incorrect cities and states (in the U.S.) and bad street names. The tool has many other capabilities as well.
| |
| | |
| Since this tool is updated often, please see the forum linked below for a full list of features, download links, installation instructions, and discussion for the latest version.
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://www.waze.com/forum/viewtopic.php?p=334169 "(Script) WME Add-Ons" forum thread]
| |
| | |
| <span style="font-size: 87%">''NOTE: WME Add-Ons was wrote to replace an older similar tool called "WME Extended Tools", also known as "Plugin pour Papyrus" and "Papyrus Extended Tools" by alcolo47. That extension is no longer supported and no longer works with WME. It should be deleted from your browser extensions if you still have it.''</span>
| |
| | |
| ===WME Level Highlighter===
| |
| by ??
| |
| | |
| WME Script allowing Segment highlighting based on segment levels. Please note that this does Conflict with Tim's WME Color Highlights and that both should NOT be active at the same time.
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://userscripts.org/scripts/show/158183 "(Script) WME Level Highlighter"]
| |
| | |
| ===WME Permalink+ (WP+)===
| |
| by berestovskyy
| |
| | |
| This script improves permalink in Waze Map Editor. The following features are supported:
| |
| W - permalink to non-beta version of Waze Map Editor with default set of layers, i.e. a permalink to share.
| |
| L - permalink to Waze Livemap.
| |
| + - paste a permalink from another window to position your current window to the same location.
| |
| For instance, you can paste a non-beta permalink to position your WME beta window.
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| http://www.waze.com/forum/viewtopic.php?p=513383
| |
| | |
| | |
| ===Select Roundabout Segments (SRS)===
| |
| by Twister-UK
| |
| | |
| This script adds a "Select roundabout" button to the segment edit panel if you select a single segment from a roundabout. Clicking the button then automatically selects the entire roundabout. Note that if the entire roundabout doesn't get selected, it probably means the roundabout itself is broken.
| |
| | |
| <u>'''DOWNLOAD Select Roundabout Segments'''</u>
| |
| | |
| [http://userscripts.org/scripts/show/151341 Firefox+Greasemonkey version 0.5] - [http://crx.chizzum.com/SRS.crx Chrome packaged version 0.5] (July 16, 2013)
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [http://www.waze.com/forum/viewtopic.php?t=30529 Forum discussion thread]
| |
| | |
| | |
| ===Drives Tab Enhancer (DTE)===
| |
| by Twister-UK
| |
| | |
| This script modifies the Drives tab in the left-hand panel to show more drives per sub-page (up to the WME limit of 50/page), and also to inform the user which of their drives are available to view on the map as a route trail - whilst Waze stores the drive summaries (date, distance etc) for seemingly every drive a user has ever made, it only stores the actual route data for the most recent drives.
| |
| | |
| <u>'''DOWNLOAD Drives Tab Enhancer'''</u>
| |
| | |
| [http://userscripts.org/scripts/show/176855 Firefox+Greasemonkey version 0.3] - [http://crx.chizzum.com/DriveTabEnhancer.crx Chrome packaged version 0.3] (September 5th, 2013)
| |
| | |
| <u>'''More Information'''</u>
| |
| | |
| [https://world.waze.com/forum/viewtopic.php?f=819&t=60302 Forum discussion thread]
| |
|
| |
|
| ==Device== | | ==Device== |
| | <div style="border:solid 2px #93C4D3; border-radius: 100px 0px 0px; background: #8AC007; padding: .5em 1em 0em; background-color:transparent; color:#000;zoom: 1"><!-- |
| | --><div style="padding:1ex 2ex 0ex; "> |
| ===Geocaching=== | | ===Geocaching=== |
| [[http://world.waze.com/forum/viewtopic.php?f=3&t=36866 Geocaching-Waze bookmarklet]] is a iOS Safari bookmarklet from davipt that allows driving to a given Geocaching coordinate. Currently it assumes a fixed flow within iOS and the official Geocaching client, but it can be adapted to other situations.
| | This is a bookmarklet for iOS to integrate the Geocaching client with the Waze client for navigation. It has been moved to the [[Bookmarklets#Geocaching|Bookmarklets]] page.</div></div> |
|
| |
|
| Open the iOS Geocaching app, pick up a cache, click on "Open on external map", which will open Google Maps on the browser. From this page, click on the bookmarklet, which will display the lat+lon, and then open Waze on that point, ready to drive there.
| | ==Live Map== |
| | {{NewScript|Live Map UR Overlay (LMUR)}} |
|
| |
|
| ==Developing== | | ==Bookmarklets== |
| ===JavaScript Development Best Practices for Waze Extensions and Scripts=== | | <div style="border:solid 2px #93C4D3; border-radius: 100px 0px 0px; background: #8AC007; padding: .5em 1em 0em; background-color:transparent; color:#000;zoom: 1"><!-- |
| ====Best Practices====
| | --><div style="padding:1ex 2ex 0ex; "> |
| All of the normal best practice guidelines apply, some references:
| | <br /> |
| * [http://www.javascripttoolbox.com/bestpractices/ JavaScript Toolbox]
| | Several very useful [http://en.wikipedia.org/wiki/Bookmarklet bookmarklet] scripts have been developed to enhance the WME map editing process. A complete list of available scripts are on the [[Bookmarklets]] Wiki page along with instructions on how to add them to your browser. |
| * [http://sarfraznawaz.wordpress.com/2012/02/19/842/ Sarfraz Ahmed's Blog]
| | </div></div> |
| To help with this, run your code through some useful analyzers to head off potential problems, like:
| |
| * [http://www.jshint.com JSHint]
| |
| * [http://www.jslint.com JSLint]
| |
| * [https://developers.google.com/closure/ JavaScript Closure Tools]
| |
| ====jQuery====
| |
| WME is built on jQuery. This makes it easy to manipulate, access properties, and directly reference the built-in Waze objects underlying WME. Using jQuery enables tighter integration into WME, reduces code, and builds on what is already there. As of now, WME is running jQuery 1.7 vanilla, which does not include any optional modules like jQuery UI.
| |
| ====Variable & Function Prefix====
| |
| To ensure that your code is safe from collision with other scripts and extensions, please prefix all variables and functions with a prefix of your choosing (this includes local variables and global variables, since your entire script is made public when it is loaded in WME). An example would be instead of naming a variable "version", name it "coolscript_version" instead, if your script is named "Cool Script".
| |
| ====Code Encapsulation====
| |
| While not technically code encapsulation in the object oriented sense, please encapsulate all code with a function, except requisite bootstrap code and initializer calls.
| |
| ====UserScript Bootstraping====
| |
| When creating user scripts for Greasemonkey, Chrome, or TamperMonkey, use the following bootstrap at the start of your script. timbones did extensive research on this to make sure it is completely cross-browser compatible. Not only will it work in GreaseMonkey, Chrome, and TamperMonkey, but can also be dropped into a Safari Extension without any recoding.
| |
| ----
| |
| <pre> | |
| function coolscript_bootstrap()
| |
| {
| |
| var bGreasemonkeyServiceDefined = false;
| |
|
| |
|
| try
| | ==Adding a new script== |
| {
| | <div style="border:solid 2px #93C4D3; border-radius: 100px 0px 0px; background: #8AC007; padding: .5em 1em 0em; background-color:transparent; color:#000;zoom: 1"><!-- |
| if (typeof Components.interfaces.gmIGreasemonkeyService === "object")
| | --><div style="padding:1ex 2ex 0ex; "> |
| {
| | <br /> |
| bGreasemonkeyServiceDefined = true;
| | To add a new script section to this page please add the '''{{tlx|NewScript|SCRIPT TITLE}}''' template to this page in the position where you would like the new section to be. After saving the page, expand the new section and click the link to add the script details.</div></div> |
| }
| |
| }
| |
| catch (err)
| |
| {
| |
| //Ignore.
| |
| }
| |
| if ( typeof unsafeWindow === "undefined" || ! bGreasemonkeyServiceDefined)
| |
| {
| |
| unsafeWindow = ( function ()
| |
| {
| |
| var dummyElem = document.createElement('p');
| |
| dummyElem.setAttribute ('onclick', 'return window;');
| |
| return dummyElem.onclick ();
| |
| } ) ();
| |
| }
| |
| /* begin running the code! */
| |
| coolscript_init();
| |
| }
| |
|
| |
|
| function coolscript_init()
| | ==Developing scripts== |
| {
| | <div style="border:solid 2px #93C4D3; border-radius: 100px 0px 0px; background: #8AC007; padding: .5em 1em 0em; background-color:transparent; color:#000;zoom: 1"><!-- |
| //run your code here
| | --><div style="padding:1ex 2ex 0ex; "> |
| }
| | Please see [[Scripts/WME JavaScript development]]. |
| | </div></div> |
|
| |
|
| // [...]
| | [[Category:Waze Map Editor]] |
| // then at the end of your script, call the bootstrap to get things started
| |
| coolscript_bootstrap();
| |
| </pre>
| |
| ----
| |