Last active
August 29, 2015 14:02
-
-
Save johntron/dd01d7b6b25bb8586141 to your computer and use it in GitHub Desktop.
Find all untranslated strings
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
johntron> grasp ':matches(assign[left.prop=#strings],var-dec[id=#strings]) obj.props[val=literal].val' -r components-spirent/ | |
components-spirent/endpoint-view-model/index.js:79: "Field is required": "Field is required", | |
components-spirent/endpoint-view-model/index.js:80: "Must be less than 4,096": "Must be less than 4,096", | |
components-spirent/endpoint-view-model/index.js:81: "Must be an IP address": "Must be an IP address", | |
components-spirent/endpoint-view-model/index.js:82: "Must be greater than 0": "Must be greater than 0", | |
components-spirent/endpoint-view-model/index.js:83: "Must be less than 128": "Must be less than 128", | |
components-spirent/endpoint-view-model/index.js:84: "Must be less than or equal to 512": "Must be less than or equal to 512", | |
components-spirent/endpoint-view-model/index.js:85: "Must be an integer": "Must be an integer", | |
components-spirent/endpoint-view-model/index.js:86: "An endpoint already exists with this name": "An endpoint already exists with this name", | |
components-spirent/endpoint-view-model/index.js:87: "Save": "Save", | |
components-spirent/endpoint-view-model/index.js:88: "Update": "Update" | |
components-spirent/interface-selector/index.js:22: "No interfaces": "No interfaces" | |
components-spirent/line-rate-message-view-model/index.js:12: "Running a test at speeds near line-rate can result in unexpected or errant latency in the test results": 'Running a test at speeds near line-rate can result in unexpected or errant latency in the test results. To learn more about what causes this, read <a href="https://support.spirentforbusiness.com/support/solutions/articles/1000060929-line-rate" target="_blank">line rate latency</a>.' | |
components-spirent/logger/index.js:35: critical: 'CRITICAL', | |
components-spirent/logger/index.js:36: error: 'ERROR', | |
components-spirent/logger/index.js:37: warning: 'WARNING', | |
components-spirent/logger/index.js:38: info: 'INFO', | |
components-spirent/logger/index.js:39: debug: 'DEBUG' | |
components-spirent/netflow-settings/views/collector-list.js:15: 'No collectors': 'No collectors' | |
components-spirent/netflow-settings/views/collector.js:16: "Please enter a valid host address (IPv4, IPv6, or name)": "Please enter a valid host address (IPv4, IPv6, or name)", | |
components-spirent/netflow-settings/views/collector.js:17: "Please enter a valid port number": "Please enter a valid port number", | |
components-spirent/netflow-settings/views/collector.js:18: "Port must be less than 65535": "Port must be less than 65535" | |
components-spirent/netflow-settings/views/global-settings.js:13: "netflow-v5": "Netflow v5", | |
components-spirent/netflow-settings/views/global-settings.js:14: "netflow-v9": "Netflow v9", | |
components-spirent/netflow-settings/views/global-settings.js:15: "ipfix": "IPFIX", | |
components-spirent/netflow-settings/views/global-settings.js:16: "Please enter a timeout in seconds": "Please enter a timeout in seconds" | |
components-spirent/netflow-settings/views/interface-settings.js:22: "Export this interface's traffic": "Export this interface's traffic" | |
components-spirent/netflow-settings/views/interfaces.js:36: "Select a port": "Choose the ports from which you want to generate NetFlow records. Connect each selected port to a SPAN or TAP port to enable capture of network data to generate NetFlow records." | |
components-spirent/netflow-settings/views/netflow-settings.js:38: "License invalid": "Your license is invalid. If you just updated, you may need a new license. Please upload a valid license or contact Spirent support at <a href='http://support.spirentforbusiness.com' target='_blank'>support.spirentforbusiness.com</a>.", | |
components-spirent/netflow-settings/views/netflow-settings.js:39: "Updating": "Updating", | |
components-spirent/netflow-settings/views/netflow-settings.js:40: "Exporting has not yet started": "Exporting has not yet started", | |
components-spirent/netflow-settings/views/netflow-settings.js:41: "Please allow approximately three minutes for exporting to begin.": "Please allow approximately three minutes for exporting to begin.", | |
components-spirent/netflow-settings/views/netflow-settings.js:42: "Please wait for test to finish": "Please wait for test to finish" | |
components-spirent/scheduler/delegates/test-view-model.js:24: 'Field is required': 'Field is required', | |
components-spirent/scheduler/delegates/test-view-model.js:25: "Must be a date in format YYYY-MM-DD": "Must be a date in format YYYY-MM-DD", | |
components-spirent/scheduler/delegates/test-view-model.js:26: "Select at least one day of the week": "Select at least one day of the week", | |
components-spirent/scheduler/delegates/test-view-model.js:27: "Choose one": "Choose one", | |
components-spirent/scheduler/delegates/test-view-model.js:28: "Please enter a number of 1 or more": "Please enter a number of 1 or more", | |
components-spirent/scheduler/delegates/test-view-model.js:30: "Invalid schedule for test": "Invalid schedule for test" | |
components-spirent/test-view-model/index.js:35: "Duration is based on configuration": "Duration is based on configuration" | |
components-spirent/traffic-player-view-model/index.js:37: "Source endpoint is invalid": "Source endpoint is invalid", | |
components-spirent/traffic-player-view-model/index.js:38: "Destination endpoint is invalid": "Destination endpoint is invalid" | |
components-spirent/traffic-recorder/models/recorder.js:9: 'New recorder': 'New recorder' | |
components-spirent/traffic-recorder/views/capture.js:6: "seconds": "seconds", | |
components-spirent/traffic-recorder/views/capture.js:7: "bytes": "bytes", | |
components-spirent/traffic-recorder/views/capture.js:8: "packets": "packets" | |
components-spirent/traffic-recorder/views/delegates/recorder-edit.js:8: 'Field is required': 'Field is required', | |
components-spirent/traffic-recorder/views/delegates/recorder-edit.js:9: 'Must be a positive integer': 'Must be a positive integer', | |
components-spirent/traffic-recorder/views/delegates/recorder-edit.js:10: 'Must select an interface': 'Must select an interface', | |
components-spirent/traffic-recorder/views/delegates/recorder-edit.js:11: 'Cannot capture more than 10GB (10,737,418,240 bytes)': 'Cannot capture more than 10GB (10,737,418,240 bytes)' | |
components-spirent/traffic-recorder/views/delegates/recorder-history.js:13: "seconds": "seconds", | |
components-spirent/traffic-recorder/views/delegates/recorder-history.js:14: "bytes": "bytes", | |
components-spirent/traffic-recorder/views/delegates/recorder-history.js:15: "packets": "packets", | |
components-spirent/traffic-recorder/views/delegates/recorder-history.js:16: "Record": "Record", | |
components-spirent/traffic-recorder/views/delegates/recorder-history.js:17: "Stop": "Stop" | |
components-spirent/traffic-recorder/views/delegates/recorder-view.js:10: "seconds": "seconds", | |
components-spirent/traffic-recorder/views/delegates/recorder-view.js:11: "bytes": "bytes", | |
components-spirent/traffic-recorder/views/delegates/recorder-view.js:12: "packets": "packets", | |
components-spirent/traffic-recorder/views/delegates/recorder-view.js:13: "Record": "Record", | |
components-spirent/traffic-recorder/views/delegates/recorder-view.js:14: "Stop": "Stop" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This finds all strings that haven't been translated. New strings are added to "strings" variables like so:
var strings = {
"Translate me": "Translate me"
};
Translated strings are wrapped in
translate()
like so:var strings = {
"Translate me": translate("Translate me")
};
The problem is, sometimes strings is a local variable, and sometimes it's a member variable of
this