diff --git a/deluge/ui/web/js/gettext.js b/deluge/ui/web/js/gettext.js index e3f5420bf..240169b8e 100644 --- a/deluge/ui/web/js/gettext.js +++ b/deluge/ui/web/js/gettext.js @@ -1,910 +1,296 @@ -/*! - * Script: gettext.js - * A script file that is run through the template renderer in order for translated strings to be used. - * - * Copyright (c) 2009 Damien Churchill - */ - -GetText = { - maps: {}, - add: function(string, translation) { - this.maps[string] = translation; - }, - get: function(string) { - if (this.maps[string]) { - return this.maps[string]; - } else { - return string; - } - } -} - -function _(string) { - return GetText.get(string); -} - -// Menus.js:111, Menus.js:130 -GetText.add('10 KiB/s', '${escape(_("10 KiB/s"))}') - -// Menus.js:113, Menus.js:132 -GetText.add('30 KiB/s', '${escape(_("30 KiB/s"))}') - -// Menus.js:117, Menus.js:136 -GetText.add('300 KiB/s', '${escape(_("300 KiB/s"))}') - -// Menus.js:109, Menus.js:128 -GetText.add('5 KiB/s', '${escape(_("5 KiB/s"))}') - -// Menus.js:115, Menus.js:134 -GetText.add('80 KiB/s', '${escape(_("80 KiB/s"))}') - -// UI.js:41 -GetText.add('Active', '${escape(_("Active"))}') - -// QueuePage.js:69 -GetText.add('Active Torrents', '${escape(_("Active Torrents"))}') - -// EditTrackersWindow.js:112, ConnectionManager.js:110, AddConnectionWindow.js:56, Toolbar.js:58, AddTrackerWindow.js:57, UrlWindow.js:50, FileWindow.js:53, AddWindow.js:52 -GetText.add('Add', '${escape(_("Add"))}') - -// AddConnectionWindow.js:40 -GetText.add('Add Connection', '${escape(_("Add Connection"))}') - -// OptionsTab.js:131 -GetText.add('Add In Paused State', '${escape(_("Add In Paused State"))}') - -// AddWindow.js:37 -GetText.add('Add Torrents', '${escape(_("Add Torrents"))}') - -// AddTrackerWindow.js:40 -GetText.add('Add Tracker', '${escape(_("Add Tracker"))}') - -// FileWindow.js:40 -GetText.add('Add from File', '${escape(_("Add from File"))}') - -// UrlWindow.js:36 -GetText.add('Add from Url', '${escape(_("Add from Url"))}') - -// DownloadsPage.js:118 -GetText.add('Add torrents in Paused state', '${escape(_("Add torrents in Paused state"))}') - -// TorrentGrid.js:180 -GetText.add('Added', '${escape(_("Added"))}') - -// UI.js:40 -GetText.add('All', '${escape(_("All"))}') - -// UI.js:42 -GetText.add('Allocating', '${escape(_("Allocating"))}') - -// DaemonPage.js:78 -GetText.add('Allow Remote Connections', '${escape(_("Allow Remote Connections"))}') - -// InterfacePage.js:78 -GetText.add('Allow the use of multiple filters at once', '${escape(_("Allow the use of multiple filters at once"))}') - -// UI.js:54, StatusTab.js:123 -GetText.add('Announce OK', '${escape(_("Announce OK"))}') - -// UI.js:55, StatusTab.js:124 -GetText.add('Announce Sent', '${escape(_("Announce Sent"))}') - -// ProxyPage.js:67 -GetText.add('Anonymous Mode', '${escape(_("Anonymous Mode"))}') - -// OptionsTab.js:347, PreferencesWindow.js:107 -GetText.add('Apply', '${escape(_("Apply"))}') - -// PluginsPage.js:50 -GetText.add('Author Email:', '${escape(_("Author Email:"))}') - -// PluginsPage.js:48 -GetText.add('Author:', '${escape(_("Author:"))}') - -// Menus.js:181, OptionsTab.js:215 -GetText.add('Auto Managed', '${escape(_("Auto Managed"))}') - -// TorrentGrid.js:173 -GetText.add('Avail', '${escape(_("Avail"))}') - -// FileBrowser.js:47 -GetText.add('Back', '${escape(_("Back"))}') - -// OptionsTab.js:88, OptionsTab.js:94, BandwidthPage.js:42 -GetText.add('Bandwidth', '${escape(_("Bandwidth"))}') - -// OtherPage.js:66 -GetText.add('Be alerted about new releases', '${escape(_("Be alerted about new releases"))}') - -// Menus.js:210 -GetText.add('Bottom', '${escape(_("Bottom"))}') - -// MoveStorage.js:73, FileWindow.js:70, InstallPluginWindow.js:69 -GetText.add('Browse', '${escape(_("Browse"))}') - -// CachePage.js:41 -GetText.add('Cache', '${escape(_("Cache"))}') - -// CachePage.js:70 -GetText.add('Cache Expiry (seconds):', '${escape(_("Cache Expiry (seconds):"))}') - -// CachePage.js:63 -GetText.add('Cache Size (16 KiB Blocks):', '${escape(_("Cache Size (16 KiB Blocks):"))}') - -// EditTrackersWindow.js:56, OtherLimitWindow.js:72, RemoveWindow.js:55, MoveStorage.js:55, EditTrackerWindow.js:56, AddTrackerWindow.js:56, AddWindow.js:51 -GetText.add('Cancel', '${escape(_("Cancel"))}') - -// PreferencesWindow.js:85 -GetText.add('Categories', '${escape(_("Categories"))}') - -// InterfacePage.js:179 -GetText.add('Certificate:', '${escape(_("Certificate:"))}') - -// InterfacePage.js:120 -GetText.add('Change', '${escape(_("Change"))}') - -// ConnectionManager.js:285 -GetText.add('Change Default Password', '${escape(_("Change Default Password"))}') - -// InterfacePage.js:231 -GetText.add('Change Successful', '${escape(_("Change Successful"))}') - -// UI.js:43, UI.js:47 -GetText.add('Checking', '${escape(_("Checking"))}') - -// ConnectionManager.js:54, AddConnectionWindow.js:55, PreferencesWindow.js:106 -GetText.add('Close', '${escape(_("Close"))}') - -// DetailsTab.js:52 -GetText.add('Comment:', '${escape(_("Comment:"))}') - -// TorrentGrid.js:187 -GetText.add('Complete Seen', '${escape(_("Complete Seen"))}') - -// TorrentGrid.js:194 -GetText.add('Completed', '${escape(_("Completed"))}') - -// InterfacePage.js:107 -GetText.add('Confirm Password:', '${escape(_("Confirm Password:"))}') - -// ConnectionManager.js:55 -GetText.add('Connect', '${escape(_("Connect"))}') - -// ConnectionManager.js:79 -GetText.add('Connected', '${escape(_("Connected"))}') - -// Menus.js:142 -GetText.add('Connection Limit', '${escape(_("Connection Limit"))}') - -// ConnectionManager.js:43, Toolbar.js:100 -GetText.add('Connection Manager', '${escape(_("Connection Manager"))}') - -// UI.js:175 -GetText.add('Connection restored', '${escape(_("Connection restored"))}') - -// Statusbar.js:57, DaemonPage.js:69 -GetText.add('Connections', '${escape(_("Connections"))}') - -// UrlWindow.js:68 -GetText.add('Cookies', '${escape(_("Cookies"))}') - -// DownloadsPage.js:85 -GetText.add('Copy of .torrent files to:', '${escape(_("Copy of .torrent files to:"))}') - -// Toolbar.js:52 -GetText.add('Create', '${escape(_("Create"))}') - -// Menus.js:104 -GetText.add('D/L Speed Limit', '${escape(_("D/L Speed Limit"))}') - -// NetworkPage.js:224 -GetText.add('DHT', '${escape(_("DHT"))}') - -// Statusbar.js:210 -GetText.add('DHT Nodes', '${escape(_("DHT Nodes"))}') - -// DaemonPage.js:41 -GetText.add('Daemon', '${escape(_("Daemon"))}') - -// DaemonPage.js:57 -GetText.add('Daemon port:', '${escape(_("Daemon port:"))}') - -// Toolbar.js:45 -GetText.add('Deluge', '${escape(_("Deluge"))}') - -// DetailsTab.js:36 -GetText.add('Details', '${escape(_("Details"))}') - -// PluginsPage.js:52 -GetText.add('Details:', '${escape(_("Details:"))}') - -// EncryptionPage.js:66, EncryptionPage.js:84 -GetText.add('Disabled', '${escape(_("Disabled"))}') - -// ConnectionManager.js:189 -GetText.add('Disconnect', '${escape(_("Disconnect"))}') - -// Menus.js:257, Deluge.js:163 -GetText.add('Do Not Download', '${escape(_("Do Not Download"))}') - -// QueuePage.js:110 -GetText.add('Do not count slow torrents', '${escape(_("Do not count slow torrents"))}') - -// EditTrackersWindow.js:107, Menus.js:204, Toolbar.js:89 -GetText.add('Down', '${escape(_("Down"))}') - -// TorrentGrid.js:256 -GetText.add('Down Limit', '${escape(_("Down Limit"))}') - -// TorrentGrid.js:148 -GetText.add('Down Speed', '${escape(_("Down Speed"))}') - -// FilesTab.js:63 -GetText.add('Download', '${escape(_("Download"))}') - -// MoveStorage.js:67, TorrentGrid.js:208, OptionsTab.js:55 -GetText.add('Download Folder', '${escape(_("Download Folder"))}') - -// DetailsTab.js:49 -GetText.add('Download Folder:', '${escape(_("Download Folder:"))}') - -// Statusbar.js:104 -GetText.add('Download Speed', '${escape(_("Download Speed"))}') - -// DownloadsPage.js:69 -GetText.add('Download to:', '${escape(_("Download to:"))}') - -// TorrentGrid.js:235 -GetText.add('Downloaded', '${escape(_("Downloaded"))}') - -// UI.js:44 -GetText.add('Downloading', '${escape(_("Downloading"))}') - -// DownloadsPage.js:42 -GetText.add('Downloads', '${escape(_("Downloads"))}') - -// TorrentGrid.js:160 -GetText.add('ETA', '${escape(_("ETA"))}') - -// EditTrackersWindow.js:117 -GetText.add('Edit', '${escape(_("Edit"))}') - -// EditTrackerWindow.js:40 -GetText.add('Edit Tracker', '${escape(_("Edit Tracker"))}') - -// EditTrackersWindow.js:40, Menus.js:224, OptionsTab.js:332 -GetText.add('Edit Trackers', '${escape(_("Edit Trackers"))}') - -// EncryptionPage.js:102 -GetText.add('Either', '${escape(_("Either"))}') - -// EncryptionPage.js:65, EncryptionPage.js:83, PluginsPage.js:81 -GetText.add('Enabled', '${escape(_("Enabled"))}') - -// EncryptionPage.js:41 -GetText.add('Encryption', '${escape(_("Encryption"))}') - -// Statusbar.js:313, ConnectionManager.js:317, ConnectionManager.js:373, AddConnectionWindow.js:107, UI.js:49, UI.js:52, StatusTab.js:121, AddWindow.js:209 -GetText.add('Error', '${escape(_("Error"))}') - -// Menus.js:253 -GetText.add('Expand All', '${escape(_("Expand All"))}') - -// FileWindow.js:67, AddWindow.js:98 -GetText.add('File', '${escape(_("File"))}') - -// FileBrowser.js:36 -GetText.add('File Browser', '${escape(_("File Browser"))}') - -// FilesTab.js:40, FilesTab.js:50 -GetText.add('Filename', '${escape(_("Filename"))}') - -// FilesTab.js:35, FilesTab.js:41 -GetText.add('Files', '${escape(_("Files"))}') - -// Sidebar.js:55 -GetText.add('Filters', '${escape(_("Filters"))}') - -// PluginsPage.js:118 -GetText.add('Find More', '${escape(_("Find More"))}') - -// DownloadsPage.js:57 -GetText.add('Folders', '${escape(_("Folders"))}') - -// Menus.js:236 -GetText.add('Force Recheck', '${escape(_("Force Recheck"))}') - -// EncryptionPage.js:64, EncryptionPage.js:82 -GetText.add('Forced', '${escape(_("Forced"))}') - -// FileBrowser.js:50 -GetText.add('Forward', '${escape(_("Forward"))}') - -// Statusbar.js:216 -GetText.add('Freespace in download folder', '${escape(_("Freespace in download folder"))}') - -// NetworkPage.js:108, NetworkPage.js:163 -GetText.add('From:', '${escape(_("From:"))}') - -// EncryptionPage.js:101 -GetText.add('Full Stream', '${escape(_("Full Stream"))}') - -// OptionsTab.js:293, OptionsTab.js:124, QueuePage.js:52 -GetText.add('General', '${escape(_("General"))}') - -// OtherPage.js:97 -GetText.add('GeoIP Database', '${escape(_("GeoIP Database"))}') - -// BandwidthPage.js:56 -GetText.add('Global Bandwidth Usage', '${escape(_("Global Bandwidth Usage"))}') - -// ProxyField.js:60 -GetText.add('HTTP', '${escape(_("HTTP"))}') - -// ProxyField.js:61 -GetText.add('HTTP Auth', '${escape(_("HTTP Auth"))}') - -// EncryptionPage.js:100 -GetText.add('Handshake', '${escape(_("Handshake"))}') - -// DetailsTab.js:48 -GetText.add('Hash:', '${escape(_("Hash:"))}') - -// Toolbar.js:107 -GetText.add('Help', '${escape(_("Help"))}') - -// ProxyPage.js:77 -GetText.add('Hide Client Identity', '${escape(_("Hide Client Identity"))}') - -// Menus.js:267, Deluge.js:165 -GetText.add('High Priority', '${escape(_("High Priority"))}') - -// Menus.js:272, Deluge.js:166 -GetText.add('Highest Priority', '${escape(_("Highest Priority"))}') - -// FileBrowser.js:56 -GetText.add('Home', '${escape(_("Home"))}') - -// PluginsPage.js:51 -GetText.add('Homepage:', '${escape(_("Homepage:"))}') - -// ConnectionManager.js:84 -GetText.add('Host', '${escape(_("Host"))}') - -// AddConnectionWindow.js:66, ProxyField.js:75, ProxyI2PField.js:49 -GetText.add('Host:', '${escape(_("Host:"))}') - -// ProxyPage.js:59 -GetText.add('I2P Proxy', '${escape(_("I2P Proxy"))}') - -// BandwidthPage.js:128 -GetText.add('Ignore limits on local network', '${escape(_("Ignore limits on local network"))}') - -// NetworkPage.js:60 -GetText.add('Incoming Address', '${escape(_("Incoming Address"))}') - -// NetworkPage.js:77 -GetText.add('Incoming Ports', '${escape(_("Incoming Ports"))}') - -// EncryptionPage.js:57 -GetText.add('Incoming:', '${escape(_("Incoming:"))}') - -// PluginsPage.js:135 -GetText.add('Info', '${escape(_("Info"))}') - -// AddWindow.js:107 -GetText.add('Infohash', '${escape(_("Infohash"))}') - -// InstallPluginWindow.js:54, PluginsPage.js:113 -GetText.add('Install', '${escape(_("Install"))}') - -// InstallPluginWindow.js:40 -GetText.add('Install Plugin', '${escape(_("Install Plugin"))}') - -// InterfacePage.js:41, InterfacePage.js:53 -GetText.add('Interface', '${escape(_("Interface"))}') - -// InterfacePage.js:206 -GetText.add('Invalid Password', '${escape(_("Invalid Password"))}') - -// Statusbar.js:144, Statusbar.js:192, OptionsTab.js:114, OptionsTab.js:141 -GetText.add('KiB/s', '${escape(_("KiB/s"))}') - -// NetworkPage.js:218 -GetText.add('LSD', '${escape(_("LSD"))}') - -// FilterPanel.js:57 -GetText.add('Labels', '${escape(_("Labels"))}') - -// EncryptionPage.js:93 -GetText.add('Level:', '${escape(_("Level:"))}') - -// StatusTab.js:61 -GetText.add('Loading', '${escape(_("Loading"))}') - -// LoginWindow.js:45, LoginWindow.js:54 -GetText.add('Login', '${escape(_("Login"))}') - -// LoginWindow.js:131 -GetText.add('Login Failed', '${escape(_("Login Failed"))}') - -// Toolbar.js:114 -GetText.add('Logout', '${escape(_("Logout"))}') - -// OptionsTab.js:113 -GetText.add('Max Connections', '${escape(_("Max Connections"))}') - -// OptionsTab.js:150 -GetText.add('Max Connections:', '${escape(_("Max Connections:"))}') - -// OptionsTab.js:103 -GetText.add('Max Down Speed', '${escape(_("Max Down Speed"))}') - -// OptionsTab.js:97 -GetText.add('Max Download Speed:', '${escape(_("Max Download Speed:"))}') - -// OptionsTab.js:108 -GetText.add('Max Up Speed', '${escape(_("Max Up Speed"))}') - -// OptionsTab.js:118 -GetText.add('Max Upload Slots', '${escape(_("Max Upload Slots"))}') - -// OptionsTab.js:173 -GetText.add('Max Upload Slots:', '${escape(_("Max Upload Slots:"))}') - -// OptionsTab.js:123 -GetText.add('Max Upload Speed:', '${escape(_("Max Upload Speed:"))}') - -// BandwidthPage.js:108 -GetText.add('Maximum Connection Attempts per Second:', '${escape(_("Maximum Connection Attempts per Second:"))}') - -// BandwidthPage.js:68, BandwidthPage.js:153 -GetText.add('Maximum Connections:', '${escape(_("Maximum Connections:"))}') - -// BandwidthPage.js:84, BandwidthPage.js:169 -GetText.add('Maximum Download Speed (KiB/s):', '${escape(_("Maximum Download Speed (KiB/s):"))}') - -// BandwidthPage.js:100 -GetText.add('Maximum Half-Open Connections:', '${escape(_("Maximum Half-Open Connections:"))}') - -// BandwidthPage.js:76 -GetText.add('Maximum Upload Slots', '${escape(_("Maximum Upload Slots"))}') - -// BandwidthPage.js:161 -GetText.add('Maximum Upload Slots:', '${escape(_("Maximum Upload Slots:"))}') - -// BandwidthPage.js:92, BandwidthPage.js:177 -GetText.add('Maximum Upload Speed (KiB/s):', '${escape(_("Maximum Upload Speed (KiB/s):"))}') - -// MoveStorage.js:56 -GetText.add('Move', '${escape(_("Move"))}') - -// OptionsTab.js:71 -GetText.add('Move Completed Folder', '${escape(_("Move Completed Folder"))}') - -// OptionsTab.js:262 -GetText.add('Move Completed:', '${escape(_("Move Completed:"))}') - -// Menus.js:242, MoveStorage.js:38 -GetText.add('Move Download Folder', '${escape(_("Move Download Folder"))}') - -// DownloadsPage.js:76 -GetText.add('Move completed to:', '${escape(_("Move completed to:"))}') - -// NetworkPage.js:204 -GetText.add('NAT-PMP', '${escape(_("NAT-PMP"))}') - -// TorrentGrid.js:116 -GetText.add('Name', '${escape(_("Name"))}') - -// DetailsTab.js:47 -GetText.add('Name:', '${escape(_("Name:"))}') - -// NetworkPage.js:51 -GetText.add('Network', '${escape(_("Network"))}') - -// NetworkPage.js:187 -GetText.add('Network Extras', '${escape(_("Network Extras"))}') - -// TorrentGrid.js:88 -GetText.add('Never', '${escape(_("Never"))}') - -// InterfacePage.js:102 -GetText.add('New Password:', '${escape(_("New Password:"))}') - -// ProxyField.js:56 -GetText.add('None', '${escape(_("None"))}') - -// Menus.js:262, Deluge.js:164 -GetText.add('Normal Priority', '${escape(_("Normal Priority"))}') - -// Statusbar.js:39 -GetText.add('Not Connected', '${escape(_("Not Connected"))}') - -// AddWindow.js:210 -GetText.add('Not a valid torrent', '${escape(_("Not a valid torrent"))}') - -// EditTrackersWindow.js:57, OtherLimitWindow.js:73, PreferencesWindow.js:108 -GetText.add('OK', '${escape(_("OK"))}') - -// ConnectionManager.js:76 -GetText.add('Offline', '${escape(_("Offline"))}') - -// InterfacePage.js:97 -GetText.add('Old Password:', '${escape(_("Old Password:"))}') - -// ConnectionManager.js:73 -GetText.add('Online', '${escape(_("Online"))}') - -// Menus.js:99, OptionsTab.js:49, OptionsTab.js:40, DownloadsPage.js:95 -GetText.add('Options', '${escape(_("Options"))}') - -// Statusbar.js:90, Statusbar.js:138, Statusbar.js:186, OtherPage.js:42, DaemonPage.js:85 -GetText.add('Other', '${escape(_("Other"))}') - -// NetworkPage.js:132 -GetText.add('Outgoing Ports', '${escape(_("Outgoing Ports"))}') - -// EncryptionPage.js:75 -GetText.add('Outgoing:', '${escape(_("Outgoing:"))}') - -// FilterPanel.js:55, TorrentGrid.js:215 -GetText.add('Owner', '${escape(_("Owner"))}') - -// InterfacePage.js:84, InterfacePage.js:221 -GetText.add('Password', '${escape(_("Password"))}') - -// AddConnectionWindow.js:91, LoginWindow.js:70, ProxyField.js:105 -GetText.add('Password:', '${escape(_("Password:"))}') - -// OtherPage.js:104 -GetText.add('Path:', '${escape(_("Path:"))}') - -// Menus.js:88, Toolbar.js:70 -GetText.add('Pause', '${escape(_("Pause"))}') - -// UI.js:46 -GetText.add('Paused', '${escape(_("Paused"))}') - -// NetworkPage.js:211 -GetText.add('Peer Exchange', '${escape(_("Peer Exchange"))}') - -// NetworkPage.js:247 -GetText.add('Peer TOS Byte:', '${escape(_("Peer TOS Byte:"))}') - -// TorrentGrid.js:141, PeersTab.js:63 -GetText.add('Peers', '${escape(_("Peers"))}') - -// BandwidthPage.js:141 -GetText.add('Per Torrent Bandwidth Usage', '${escape(_("Per Torrent Bandwidth Usage"))}') - -// DaemonPage.js:94 -GetText.add('Periodically check the website for new releases', '${escape(_("Periodically check the website for new releases"))}') - -// PluginsPage.js:92 -GetText.add('Plugin', '${escape(_("Plugin"))}') - -// InstallPluginWindow.js:66 -GetText.add('Plugin Egg', '${escape(_("Plugin Egg"))}') - -// PluginsPage.js:41 -GetText.add('Plugins', '${escape(_("Plugins"))}') - -// DaemonPage.js:52 -GetText.add('Port', '${escape(_("Port"))}') - -// AddConnectionWindow.js:73, ProxyField.js:84, ProxyI2PField.js:58, InterfacePage.js:151 -GetText.add('Port:', '${escape(_("Port:"))}') - -// DownloadsPage.js:124 -GetText.add('Pre-allocate disk space', '${escape(_("Pre-allocate disk space"))}') - -// OptionsTab.js:155 -GetText.add('Preallocate Disk Space', '${escape(_("Preallocate Disk Space"))}') - -// QueuePage.js:117 -GetText.add('Prefer Seeding over Downloading', '${escape(_("Prefer Seeding over Downloading"))}') - -// Toolbar.js:94, PreferencesWindow.js:47 -GetText.add('Preferences', '${escape(_("Preferences"))}') - -// OptionsTab.js:308 -GetText.add('Prioritize First/Last', '${escape(_("Prioritize First/Last"))}') - -// OptionsTab.js:137 -GetText.add('Prioritize First/Last Pieces', '${escape(_("Prioritize First/Last Pieces"))}') - -// DownloadsPage.js:106 -GetText.add('Prioritize first and last pieces of torrent', '${escape(_("Prioritize first and last pieces of torrent"))}') - -// FilesTab.js:60 -GetText.add('Priority', '${escape(_("Priority"))}') - -// OptionsTab.js:300 -GetText.add('Private', '${escape(_("Private"))}') - -// InterfacePage.js:171 -GetText.add('Private Key:', '${escape(_("Private Key:"))}') - -// TorrentGrid.js:128, FilesTab.js:52 -GetText.add('Progress', '${escape(_("Progress"))}') - -// Statusbar.js:200 -GetText.add('Protocol Traffic Download/Upload', '${escape(_("Protocol Traffic Download/Upload"))}') - -// ProxyPage.js:42, ProxyPage.js:52 -GetText.add('Proxy', '${escape(_("Proxy"))}') - -// ProxyField.js:116 -GetText.add('Proxy Hostnames', '${escape(_("Proxy Hostnames"))}') - -// ProxyField.js:125 -GetText.add('Proxy Peer Connections', '${escape(_("Proxy Peer Connections"))}') - -// TorrentGrid.js:221 -GetText.add('Public', '${escape(_("Public"))}') - -// Menus.js:186, OptionsTab.js:196, QueuePage.js:41 -GetText.add('Queue', '${escape(_("Queue"))}') - -// QueuePage.js:62 -GetText.add('Queue new torrents to top', '${escape(_("Queue new torrents to top"))}') - -// UI.js:48 -GetText.add('Queued', '${escape(_("Queued"))}') - -// BandwidthPage.js:135 -GetText.add('Rate limit IP overhead', '${escape(_("Rate limit IP overhead"))}') - -// TorrentGrid.js:166 -GetText.add('Ratio', '${escape(_("Ratio"))}') - -// TorrentGrid.js:249 -GetText.add('Remaining', '${escape(_("Remaining"))}') - -// EditTrackersWindow.js:122, ConnectionManager.js:117, Toolbar.js:64, AddWindow.js:112 -GetText.add('Remove', '${escape(_("Remove"))}') - -// Menus.js:230, RemoveWindow.js:39, RemoveWindow.js:57 -GetText.add('Remove Torrent', '${escape(_("Remove Torrent"))}') - -// RemoveWindow.js:56 -GetText.add('Remove With Data', '${escape(_("Remove With Data"))}') - -// OptionsTab.js:253 -GetText.add('Remove at ratio', '${escape(_("Remove at ratio"))}') - -// QueuePage.js:204 -GetText.add('Remove torrent when share ratio is reached', '${escape(_("Remove torrent when share ratio is reached"))}') - -// Menus.js:94, Toolbar.js:76 -GetText.add('Resume', '${escape(_("Resume"))}') - -// EditTrackerWindow.js:57 -GetText.add('Save', '${escape(_("Save"))}') - -// QueuePage.js:154 -GetText.add('Seed Time (m):', '${escape(_("Seed Time (m):"))}') - -// UI.js:45, QueuePage.js:123 -GetText.add('Seeding', '${escape(_("Seeding"))}') - -// TorrentGrid.js:134 -GetText.add('Seeds', '${escape(_("Seeds"))}') - -// TorrentGrid.js:270 -GetText.add('Seeds:Peers', '${escape(_("Seeds:Peers"))}') - -// FileWindow.js:66 -GetText.add('Select a torrent', '${escape(_("Select a torrent"))}') - -// InstallPluginWindow.js:65 -GetText.add('Select an egg', '${escape(_("Select an egg"))}') - -// OptionsTab.js:143 -GetText.add('Sequential Download', '${escape(_("Sequential Download"))}') - -// DownloadsPage.js:112 -GetText.add('Sequential download', '${escape(_("Sequential download"))}') - -// InterfacePage.js:132 -GetText.add('Server', '${escape(_("Server"))}') - -// InterfacePage.js:143 -GetText.add('Session Timeout:', '${escape(_("Session Timeout:"))}') - -// Statusbar.js:96 -GetText.add('Set Maximum Connections', '${escape(_("Set Maximum Connections"))}') - -// Statusbar.js:143 -GetText.add('Set Maximum Download Speed', '${escape(_("Set Maximum Download Speed"))}') - -// Statusbar.js:191 -GetText.add('Set Maximum Upload Speed', '${escape(_("Set Maximum Upload Speed"))}') - -// EncryptionPage.js:51, CachePage.js:52 -GetText.add('Settings', '${escape(_("Settings"))}') - -// QueuePage.js:130 -GetText.add('Share Ratio Limit:', '${escape(_("Share Ratio Limit:"))}') - -// QueuePage.js:142 -GetText.add('Share Time Ratio:', '${escape(_("Share Time Ratio:"))}') - -// TorrentGrid.js:228 -GetText.add('Shared', '${escape(_("Shared"))}') - -// InterfacePage.js:71 -GetText.add('Show filters with zero torrents', '${escape(_("Show filters with zero torrents"))}') - -// InterfacePage.js:64 -GetText.add('Show session speed in titlebar', '${escape(_("Show session speed in titlebar"))}') - -// TorrentGrid.js:122, FilesTab.js:44, FilesTab.js:54 -GetText.add('Size', '${escape(_("Size"))}') - -// OptionsTab.js:149 -GetText.add('Skip File Hash Check', '${escape(_("Skip File Hash Check"))}') - -// ProxyField.js:57 -GetText.add('Socks4', '${escape(_("Socks4"))}') - -// ProxyField.js:58 -GetText.add('Socks5', '${escape(_("Socks5"))}') - -// ProxyField.js:59 -GetText.add('Socks5 Auth', '${escape(_("Socks5 Auth"))}') - -// ConnectionManager.js:201 -GetText.add('Start Daemon', '${escape(_("Start Daemon"))}') - -// Sidebar.js:34 -GetText.add('State', '${escape(_("State"))}') - -// FilterPanel.js:51 -GetText.add('States', '${escape(_("States"))}') - -// ConnectionManager.js:68, StatusTab.js:39 -GetText.add('Status', '${escape(_("Status"))}') - -// DetailsTab.js:53 -GetText.add('Status:', '${escape(_("Status:"))}') - -// ConnectionManager.js:125, ConnectionManager.js:207, ConnectionManager.js:337 -GetText.add('Stop Daemon', '${escape(_("Stop Daemon"))}') - -// OptionsTab.js:225 -GetText.add('Stop seed at ratio:', '${escape(_("Stop seed at ratio:"))}') - -// QueuePage.js:181 -GetText.add('Stop seeding when share ratio reaches:', '${escape(_("Stop seeding when share ratio reaches:"))}') - -// OtherPage.js:72 -GetText.add('System Information', '${escape(_("System Information"))}') - -// EditTrackersWindow.js:76 -GetText.add('Tier', '${escape(_("Tier"))}') - -// NetworkPage.js:117, NetworkPage.js:172 -GetText.add('To:', '${escape(_("To:"))}') - -// Menus.js:192 -GetText.add('Top', '${escape(_("Top"))}') - -// QueuePage.js:86 -GetText.add('Total Active Downloading:', '${escape(_("Total Active Downloading:"))}') - -// QueuePage.js:96 -GetText.add('Total Active Seeding:', '${escape(_("Total Active Seeding:"))}') - -// QueuePage.js:76 -GetText.add('Total Active:', '${escape(_("Total Active:"))}') - -// DetailsTab.js:51 -GetText.add('Total Files:', '${escape(_("Total Files:"))}') - -// DetailsTab.js:50 -GetText.add('Total Size:', '${escape(_("Total Size:"))}') - -// EditTrackersWindow.js:80, TorrentGrid.js:201 -GetText.add('Tracker', '${escape(_("Tracker"))}') - -// NetworkPage.js:231 -GetText.add('Tracker Exchange', '${escape(_("Tracker Exchange"))}') - -// Sidebar.js:35 -GetText.add('Tracker Host', '${escape(_("Tracker Host"))}') - -// EditTrackerWindow.js:66, DetailsTab.js:54 -GetText.add('Tracker:', '${escape(_("Tracker:"))}') - -// FilterPanel.js:53 -GetText.add('Trackers', '${escape(_("Trackers"))}') - -// AddTrackerWindow.js:66 -GetText.add('Trackers:', '${escape(_("Trackers:"))}') - -// NetworkPage.js:239 -GetText.add('Type Of Service', '${escape(_("Type Of Service"))}') - -// ProxyField.js:48 -GetText.add('Type:', '${escape(_("Type:"))}') - -// Menus.js:123 -GetText.add('U/L Speed Limit', '${escape(_("U/L Speed Limit"))}') - -// NetworkPage.js:198 -GetText.add('UPnP', '${escape(_("UPnP"))}') - -// Statusbar.js:85, Statusbar.js:133, Statusbar.js:181, Menus.js:119, Menus.js:138, Menus.js:157, Menus.js:176 -GetText.add('Unlimited', '${escape(_("Unlimited"))}') - -// EditTrackersWindow.js:102, Menus.js:198, Toolbar.js:83, FileBrowser.js:53 -GetText.add('Up', '${escape(_("Up"))}') - -// TorrentGrid.js:263 -GetText.add('Up Limit', '${escape(_("Up Limit"))}') - -// TorrentGrid.js:154 -GetText.add('Up Speed', '${escape(_("Up Speed"))}') - -// Menus.js:218 -GetText.add('Update Tracker', '${escape(_("Update Tracker"))}') - -// OtherPage.js:56 -GetText.add('Updates', '${escape(_("Updates"))}') - -// Menus.js:161 -GetText.add('Upload Slot Limit', '${escape(_("Upload Slot Limit"))}') - -// Statusbar.js:152 -GetText.add('Upload Speed', '${escape(_("Upload Speed"))}') - -// TorrentGrid.js:242 -GetText.add('Uploaded', '${escape(_("Uploaded"))}') - -// InstallPluginWindow.js:78 -GetText.add('Uploading your plugin...', '${escape(_("Uploading your plugin..."))}') - -// FileWindow.js:82 -GetText.add('Uploading your torrent...', '${escape(_("Uploading your torrent..."))}') - -// UrlWindow.js:60, AddWindow.js:102 -GetText.add('Url', '${escape(_("Url"))}') - -// NetworkPage.js:86, NetworkPage.js:141 -GetText.add('Use Random Ports', '${escape(_("Use Random Ports"))}') - -// InterfacePage.js:163 -GetText.add('Use SSL (paths relative to Deluge config folder)', '${escape(_("Use SSL (paths relative to Deluge config folder)"))}') - -// AddConnectionWindow.js:85, ProxyField.js:96 -GetText.add('Username:', '${escape(_("Username:"))}') - -// ConnectionManager.js:90 -GetText.add('Version', '${escape(_("Version"))}') - -// PluginsPage.js:49 -GetText.add('Version:', '${escape(_("Version:"))}') - -// UI.js:53, StatusTab.js:122 -GetText.add('Warning', '${escape(_("Warning"))}') - -// ConnectionManager.js:286 -GetText.add('We recommend changing the default password.

Would you like to change it now?', '${escape(_("We recommend changing the default password.

Would you like to change it now?"))}') - -// OtherPage.js:90 -GetText.add('Yes, please send anonymous statistics', '${escape(_("Yes, please send anonymous statistics"))}') - -// LoginWindow.js:132 -GetText.add('You entered an incorrect password', '${escape(_("You entered an incorrect password"))}') - -// InterfacePage.js:222 -GetText.add('Your old password was incorrect!', '${escape(_("Your old password was incorrect!"))}') - -// InterfacePage.js:232 -GetText.add('Your password was successfully changed!', '${escape(_("Your password was successfully changed!"))}') - -// InterfacePage.js:207 -GetText.add('Your passwords don\'t match!', '${escape(_("Your passwords don\'t match!"))}') - +GetText={maps:{}, add:function(string,translation) {this.maps[string]=translation}, get:function(string) {if (this.maps[string]) {string=this.maps[string]} return string}} + function _(string) {return GetText.get(string)} GetText.add('10 KiB/s','${escape(_("10 KiB/s"))}') +GetText.add('30 KiB/s','${escape(_("30 KiB/s"))}') +GetText.add('300 KiB/s','${escape(_("300 KiB/s"))}') +GetText.add('5 KiB/s','${escape(_("5 KiB/s"))}') +GetText.add('80 KiB/s','${escape(_("80 KiB/s"))}') +GetText.add('Active','${escape(_("Active"))}') +GetText.add('Active Torrents','${escape(_("Active Torrents"))}') +GetText.add('Add','${escape(_("Add"))}') +GetText.add('Add Connection','${escape(_("Add Connection"))}') +GetText.add('Add In Paused State','${escape(_("Add In Paused State"))}') +GetText.add('Add Torrents','${escape(_("Add Torrents"))}') +GetText.add('Add Tracker','${escape(_("Add Tracker"))}') +GetText.add('Add from File','${escape(_("Add from File"))}') +GetText.add('Add from Url','${escape(_("Add from Url"))}') +GetText.add('Add torrents in Paused state','${escape(_("Add torrents in Paused state"))}') +GetText.add('Added','${escape(_("Added"))}') +GetText.add('All','${escape(_("All"))}') +GetText.add('Allocating','${escape(_("Allocating"))}') +GetText.add('Allow Remote Connections','${escape(_("Allow Remote Connections"))}') +GetText.add('Allow the use of multiple filters at once','${escape(_("Allow the use of multiple filters at once"))}') +GetText.add('Announce OK','${escape(_("Announce OK"))}') +GetText.add('Announce Sent','${escape(_("Announce Sent"))}') +GetText.add('Anonymous Mode','${escape(_("Anonymous Mode"))}') +GetText.add('Apply','${escape(_("Apply"))}') +GetText.add('Author Email:','${escape(_("Author Email:"))}') +GetText.add('Author:','${escape(_("Author:"))}') +GetText.add('Auto Managed','${escape(_("Auto Managed"))}') +GetText.add('Avail','${escape(_("Avail"))}') +GetText.add('Back','${escape(_("Back"))}') +GetText.add('Bandwidth','${escape(_("Bandwidth"))}') +GetText.add('Be alerted about new releases','${escape(_("Be alerted about new releases"))}') +GetText.add('Bottom','${escape(_("Bottom"))}') +GetText.add('Browse','${escape(_("Browse"))}') +GetText.add('Cache','${escape(_("Cache"))}') +GetText.add('Cache Expiry (seconds):','${escape(_("Cache Expiry (seconds):"))}') +GetText.add('Cache Size (16 KiB Blocks):','${escape(_("Cache Size (16 KiB Blocks):"))}') +GetText.add('Cancel','${escape(_("Cancel"))}') +GetText.add('Categories','${escape(_("Categories"))}') +GetText.add('Certificate:','${escape(_("Certificate:"))}') +GetText.add('Change','${escape(_("Change"))}') +GetText.add('Change Default Password','${escape(_("Change Default Password"))}') +GetText.add('Change Successful','${escape(_("Change Successful"))}') +GetText.add('Checking','${escape(_("Checking"))}') +GetText.add('Close','${escape(_("Close"))}') +GetText.add('Comment:','${escape(_("Comment:"))}') +GetText.add('Complete Seen','${escape(_("Complete Seen"))}') +GetText.add('Completed','${escape(_("Completed"))}') +GetText.add('Confirm Password:','${escape(_("Confirm Password:"))}') +GetText.add('Connect','${escape(_("Connect"))}') +GetText.add('Connected','${escape(_("Connected"))}') +GetText.add('Connection Limit','${escape(_("Connection Limit"))}') +GetText.add('Connection Manager','${escape(_("Connection Manager"))}') +GetText.add('Connection restored','${escape(_("Connection restored"))}') +GetText.add('Connections','${escape(_("Connections"))}') +GetText.add('Cookies','${escape(_("Cookies"))}') +GetText.add('Copy of .torrent files to:','${escape(_("Copy of .torrent files to:"))}') +GetText.add('Create','${escape(_("Create"))}') +GetText.add('D/L Speed Limit','${escape(_("D/L Speed Limit"))}') +GetText.add('DHT','${escape(_("DHT"))}') +GetText.add('DHT Nodes','${escape(_("DHT Nodes"))}') +GetText.add('Daemon','${escape(_("Daemon"))}') +GetText.add('Daemon port:','${escape(_("Daemon port:"))}') +GetText.add('Deluge','${escape(_("Deluge"))}') +GetText.add('Details','${escape(_("Details"))}') +GetText.add('Details:','${escape(_("Details:"))}') +GetText.add('Disabled','${escape(_("Disabled"))}') +GetText.add('Disconnect','${escape(_("Disconnect"))}') +GetText.add('Do Not Download','${escape(_("Do Not Download"))}') +GetText.add('Do not count slow torrents','${escape(_("Do not count slow torrents"))}') +GetText.add('Down','${escape(_("Down"))}') +GetText.add('Down Limit','${escape(_("Down Limit"))}') +GetText.add('Down Speed','${escape(_("Down Speed"))}') +GetText.add('Download','${escape(_("Download"))}') +GetText.add('Download Folder','${escape(_("Download Folder"))}') +GetText.add('Download Folder:','${escape(_("Download Folder:"))}') +GetText.add('Download Speed','${escape(_("Download Speed"))}') +GetText.add('Download to:','${escape(_("Download to:"))}') +GetText.add('Downloaded','${escape(_("Downloaded"))}') +GetText.add('Downloading','${escape(_("Downloading"))}') +GetText.add('Downloads','${escape(_("Downloads"))}') +GetText.add('ETA','${escape(_("ETA"))}') +GetText.add('Edit','${escape(_("Edit"))}') +GetText.add('Edit Tracker','${escape(_("Edit Tracker"))}') +GetText.add('Edit Trackers','${escape(_("Edit Trackers"))}') +GetText.add('Either','${escape(_("Either"))}') +GetText.add('Enabled','${escape(_("Enabled"))}') +GetText.add('Encryption','${escape(_("Encryption"))}') +GetText.add('Error','${escape(_("Error"))}') +GetText.add('Expand All','${escape(_("Expand All"))}') +GetText.add('File','${escape(_("File"))}') +GetText.add('File Browser','${escape(_("File Browser"))}') +GetText.add('Filename','${escape(_("Filename"))}') +GetText.add('Files','${escape(_("Files"))}') +GetText.add('Filters','${escape(_("Filters"))}') +GetText.add('Find More','${escape(_("Find More"))}') +GetText.add('Folders','${escape(_("Folders"))}') +GetText.add('Force Recheck','${escape(_("Force Recheck"))}') +GetText.add('Forced','${escape(_("Forced"))}') +GetText.add('Forward','${escape(_("Forward"))}') +GetText.add('Freespace in download folder','${escape(_("Freespace in download folder"))}') +GetText.add('From:','${escape(_("From:"))}') +GetText.add('Full Stream','${escape(_("Full Stream"))}') +GetText.add('General','${escape(_("General"))}') +GetText.add('GeoIP Database','${escape(_("GeoIP Database"))}') +GetText.add('Global Bandwidth Usage','${escape(_("Global Bandwidth Usage"))}') +GetText.add('HTTP','${escape(_("HTTP"))}') +GetText.add('HTTP Auth','${escape(_("HTTP Auth"))}') +GetText.add('Handshake','${escape(_("Handshake"))}') +GetText.add('Hash:','${escape(_("Hash:"))}') +GetText.add('Help','${escape(_("Help"))}') +GetText.add('Hide Client Identity','${escape(_("Hide Client Identity"))}') +GetText.add('High Priority','${escape(_("High Priority"))}') +GetText.add('Highest Priority','${escape(_("Highest Priority"))}') +GetText.add('Home','${escape(_("Home"))}') +GetText.add('Homepage:','${escape(_("Homepage:"))}') +GetText.add('Host','${escape(_("Host"))}') +GetText.add('Host:','${escape(_("Host:"))}') +GetText.add('I2P Proxy','${escape(_("I2P Proxy"))}') +GetText.add('Ignore limits on local network','${escape(_("Ignore limits on local network"))}') +GetText.add('Incoming Address','${escape(_("Incoming Address"))}') +GetText.add('Incoming Ports','${escape(_("Incoming Ports"))}') +GetText.add('Incoming:','${escape(_("Incoming:"))}') +GetText.add('Info','${escape(_("Info"))}') +GetText.add('Infohash','${escape(_("Infohash"))}') +GetText.add('Install','${escape(_("Install"))}') +GetText.add('Install Plugin','${escape(_("Install Plugin"))}') +GetText.add('Interface','${escape(_("Interface"))}') +GetText.add('Invalid Password','${escape(_("Invalid Password"))}') +GetText.add('KiB/s','${escape(_("KiB/s"))}') +GetText.add('LSD','${escape(_("LSD"))}') +GetText.add('Labels','${escape(_("Labels"))}') +GetText.add('Level:','${escape(_("Level:"))}') +GetText.add('Loading','${escape(_("Loading"))}') +GetText.add('Login','${escape(_("Login"))}') +GetText.add('Login Failed','${escape(_("Login Failed"))}') +GetText.add('Logout','${escape(_("Logout"))}') +GetText.add('Max Connections','${escape(_("Max Connections"))}') +GetText.add('Max Connections:','${escape(_("Max Connections:"))}') +GetText.add('Max Down Speed','${escape(_("Max Down Speed"))}') +GetText.add('Max Download Speed:','${escape(_("Max Download Speed:"))}') +GetText.add('Max Up Speed','${escape(_("Max Up Speed"))}') +GetText.add('Max Upload Slots','${escape(_("Max Upload Slots"))}') +GetText.add('Max Upload Slots:','${escape(_("Max Upload Slots:"))}') +GetText.add('Max Upload Speed:','${escape(_("Max Upload Speed:"))}') +GetText.add('Maximum Connection Attempts per Second:','${escape(_("Maximum Connection Attempts per Second:"))}') +GetText.add('Maximum Connections:','${escape(_("Maximum Connections:"))}') +GetText.add('Maximum Download Speed (KiB/s):','${escape(_("Maximum Download Speed (KiB/s):"))}') +GetText.add('Maximum Half-Open Connections:','${escape(_("Maximum Half-Open Connections:"))}') +GetText.add('Maximum Upload Slots','${escape(_("Maximum Upload Slots"))}') +GetText.add('Maximum Upload Slots:','${escape(_("Maximum Upload Slots:"))}') +GetText.add('Maximum Upload Speed (KiB/s):','${escape(_("Maximum Upload Speed (KiB/s):"))}') +GetText.add('Move','${escape(_("Move"))}') +GetText.add('Move Completed Folder','${escape(_("Move Completed Folder"))}') +GetText.add('Move Completed:','${escape(_("Move Completed:"))}') +GetText.add('Move Download Folder','${escape(_("Move Download Folder"))}') +GetText.add('Move completed to:','${escape(_("Move completed to:"))}') +GetText.add('NAT-PMP','${escape(_("NAT-PMP"))}') +GetText.add('Name','${escape(_("Name"))}') +GetText.add('Name:','${escape(_("Name:"))}') +GetText.add('Network','${escape(_("Network"))}') +GetText.add('Network Extras','${escape(_("Network Extras"))}') +GetText.add('Never','${escape(_("Never"))}') +GetText.add('New Password:','${escape(_("New Password:"))}') +GetText.add('None','${escape(_("None"))}') +GetText.add('Normal Priority','${escape(_("Normal Priority"))}') +GetText.add('Not Connected','${escape(_("Not Connected"))}') +GetText.add('Not a valid torrent','${escape(_("Not a valid torrent"))}') +GetText.add('OK','${escape(_("OK"))}') +GetText.add('Offline','${escape(_("Offline"))}') +GetText.add('Old Password:','${escape(_("Old Password:"))}') +GetText.add('Online','${escape(_("Online"))}') +GetText.add('Options','${escape(_("Options"))}') +GetText.add('Other','${escape(_("Other"))}') +GetText.add('Outgoing Ports','${escape(_("Outgoing Ports"))}') +GetText.add('Outgoing:','${escape(_("Outgoing:"))}') +GetText.add('Owner','${escape(_("Owner"))}') +GetText.add('Password','${escape(_("Password"))}') +GetText.add('Password:','${escape(_("Password:"))}') +GetText.add('Path:','${escape(_("Path:"))}') +GetText.add('Pause','${escape(_("Pause"))}') +GetText.add('Paused','${escape(_("Paused"))}') +GetText.add('Peer Exchange','${escape(_("Peer Exchange"))}') +GetText.add('Peer TOS Byte:','${escape(_("Peer TOS Byte:"))}') +GetText.add('Peers','${escape(_("Peers"))}') +GetText.add('Per Torrent Bandwidth Usage','${escape(_("Per Torrent Bandwidth Usage"))}') +GetText.add('Periodically check the website for new releases','${escape(_("Periodically check the website for new releases"))}') +GetText.add('Plugin','${escape(_("Plugin"))}') +GetText.add('Plugin Egg','${escape(_("Plugin Egg"))}') +GetText.add('Plugins','${escape(_("Plugins"))}') +GetText.add('Port','${escape(_("Port"))}') +GetText.add('Port:','${escape(_("Port:"))}') +GetText.add('Pre-allocate disk space','${escape(_("Pre-allocate disk space"))}') +GetText.add('Preallocate Disk Space','${escape(_("Preallocate Disk Space"))}') +GetText.add('Prefer Seeding over Downloading','${escape(_("Prefer Seeding over Downloading"))}') +GetText.add('Preferences','${escape(_("Preferences"))}') +GetText.add('Prioritize First/Last','${escape(_("Prioritize First/Last"))}') +GetText.add('Prioritize First/Last Pieces','${escape(_("Prioritize First/Last Pieces"))}') +GetText.add('Prioritize first and last pieces of torrent','${escape(_("Prioritize first and last pieces of torrent"))}') +GetText.add('Priority','${escape(_("Priority"))}') +GetText.add('Private','${escape(_("Private"))}') +GetText.add('Private Key:','${escape(_("Private Key:"))}') +GetText.add('Progress','${escape(_("Progress"))}') +GetText.add('Protocol Traffic Download/Upload','${escape(_("Protocol Traffic Download/Upload"))}') +GetText.add('Proxy','${escape(_("Proxy"))}') +GetText.add('Proxy Hostnames','${escape(_("Proxy Hostnames"))}') +GetText.add('Proxy Peer Connections','${escape(_("Proxy Peer Connections"))}') +GetText.add('Public','${escape(_("Public"))}') +GetText.add('Queue','${escape(_("Queue"))}') +GetText.add('Queue new torrents to top','${escape(_("Queue new torrents to top"))}') +GetText.add('Queued','${escape(_("Queued"))}') +GetText.add('Rate limit IP overhead','${escape(_("Rate limit IP overhead"))}') +GetText.add('Ratio','${escape(_("Ratio"))}') +GetText.add('Remaining','${escape(_("Remaining"))}') +GetText.add('Remove','${escape(_("Remove"))}') +GetText.add('Remove Torrent','${escape(_("Remove Torrent"))}') +GetText.add('Remove With Data','${escape(_("Remove With Data"))}') +GetText.add('Remove at ratio','${escape(_("Remove at ratio"))}') +GetText.add('Remove torrent when share ratio is reached','${escape(_("Remove torrent when share ratio is reached"))}') +GetText.add('Resume','${escape(_("Resume"))}') +GetText.add('Save','${escape(_("Save"))}') +GetText.add('Seed Time (m):','${escape(_("Seed Time (m):"))}') +GetText.add('Seeding','${escape(_("Seeding"))}') +GetText.add('Seeds','${escape(_("Seeds"))}') +GetText.add('Seeds:Peers','${escape(_("Seeds:Peers"))}') +GetText.add('Select a torrent','${escape(_("Select a torrent"))}') +GetText.add('Select an egg','${escape(_("Select an egg"))}') +GetText.add('Sequential Download','${escape(_("Sequential Download"))}') +GetText.add('Sequential download','${escape(_("Sequential download"))}') +GetText.add('Server','${escape(_("Server"))}') +GetText.add('Session Timeout:','${escape(_("Session Timeout:"))}') +GetText.add('Set Maximum Connections','${escape(_("Set Maximum Connections"))}') +GetText.add('Set Maximum Download Speed','${escape(_("Set Maximum Download Speed"))}') +GetText.add('Set Maximum Upload Speed','${escape(_("Set Maximum Upload Speed"))}') +GetText.add('Settings','${escape(_("Settings"))}') +GetText.add('Share Ratio Limit:','${escape(_("Share Ratio Limit:"))}') +GetText.add('Share Time Ratio:','${escape(_("Share Time Ratio:"))}') +GetText.add('Shared','${escape(_("Shared"))}') +GetText.add('Show filters with zero torrents','${escape(_("Show filters with zero torrents"))}') +GetText.add('Show session speed in titlebar','${escape(_("Show session speed in titlebar"))}') +GetText.add('Size','${escape(_("Size"))}') +GetText.add('Skip File Hash Check','${escape(_("Skip File Hash Check"))}') +GetText.add('Socks4','${escape(_("Socks4"))}') +GetText.add('Socks5','${escape(_("Socks5"))}') +GetText.add('Socks5 Auth','${escape(_("Socks5 Auth"))}') +GetText.add('Start Daemon','${escape(_("Start Daemon"))}') +GetText.add('State','${escape(_("State"))}') +GetText.add('States','${escape(_("States"))}') +GetText.add('Status','${escape(_("Status"))}') +GetText.add('Status:','${escape(_("Status:"))}') +GetText.add('Stop Daemon','${escape(_("Stop Daemon"))}') +GetText.add('Stop seed at ratio:','${escape(_("Stop seed at ratio:"))}') +GetText.add('Stop seeding when share ratio reaches:','${escape(_("Stop seeding when share ratio reaches:"))}') +GetText.add('System Information','${escape(_("System Information"))}') +GetText.add('Tier','${escape(_("Tier"))}') +GetText.add('To:','${escape(_("To:"))}') +GetText.add('Top','${escape(_("Top"))}') +GetText.add('Total Active Downloading:','${escape(_("Total Active Downloading:"))}') +GetText.add('Total Active Seeding:','${escape(_("Total Active Seeding:"))}') +GetText.add('Total Active:','${escape(_("Total Active:"))}') +GetText.add('Total Files:','${escape(_("Total Files:"))}') +GetText.add('Total Size:','${escape(_("Total Size:"))}') +GetText.add('Tracker','${escape(_("Tracker"))}') +GetText.add('Tracker Exchange','${escape(_("Tracker Exchange"))}') +GetText.add('Tracker Host','${escape(_("Tracker Host"))}') +GetText.add('Tracker:','${escape(_("Tracker:"))}') +GetText.add('Trackers','${escape(_("Trackers"))}') +GetText.add('Trackers:','${escape(_("Trackers:"))}') +GetText.add('Type Of Service','${escape(_("Type Of Service"))}') +GetText.add('Type:','${escape(_("Type:"))}') +GetText.add('U/L Speed Limit','${escape(_("U/L Speed Limit"))}') +GetText.add('UPnP','${escape(_("UPnP"))}') +GetText.add('Unlimited','${escape(_("Unlimited"))}') +GetText.add('Up','${escape(_("Up"))}') +GetText.add('Up Limit','${escape(_("Up Limit"))}') +GetText.add('Up Speed','${escape(_("Up Speed"))}') +GetText.add('Update Tracker','${escape(_("Update Tracker"))}') +GetText.add('Updates','${escape(_("Updates"))}') +GetText.add('Upload Slot Limit','${escape(_("Upload Slot Limit"))}') +GetText.add('Upload Speed','${escape(_("Upload Speed"))}') +GetText.add('Uploaded','${escape(_("Uploaded"))}') +GetText.add('Uploading your plugin...','${escape(_("Uploading your plugin..."))}') +GetText.add('Uploading your torrent...','${escape(_("Uploading your torrent..."))}') +GetText.add('Url','${escape(_("Url"))}') +GetText.add('Use Random Ports','${escape(_("Use Random Ports"))}') +GetText.add('Use SSL (paths relative to Deluge config folder)','${escape(_("Use SSL (paths relative to Deluge config folder)"))}') +GetText.add('Username:','${escape(_("Username:"))}') +GetText.add('Version','${escape(_("Version"))}') +GetText.add('Version:','${escape(_("Version:"))}') +GetText.add('Warning','${escape(_("Warning"))}') +GetText.add('We recommend changing the default password.

Would you like to change it now?','${escape(_("We recommend changing the default password.

Would you like to change it now?"))}') +GetText.add('Yes, please send anonymous statistics','${escape(_("Yes, please send anonymous statistics"))}') +GetText.add('You entered an incorrect password','${escape(_("You entered an incorrect password"))}') +GetText.add('Your old password was incorrect!','${escape(_("Your old password was incorrect!"))}') +GetText.add('Your password was successfully changed!','${escape(_("Your password was successfully changed!"))}') +GetText.add('Your passwords don\'t match!','${escape(_("Your passwords don\'t match!"))}') diff --git a/gen_web_gettext.py b/gen_web_gettext.py index c591b01ad..cb8d5589b 100755 --- a/gen_web_gettext.py +++ b/gen_web_gettext.py @@ -12,61 +12,43 @@ import os import re -import sys -if len(sys.argv) != 2: - WEBUI_JS_DIR = 'deluge/ui/web/js/deluge-all' -else: - WEBUI_JS_DIR = os.path.abspath(sys.argv[1]) +WEBUI_JS_DIR = 'deluge/ui/web/js/deluge-all' +# Enabling Debug adds file and line number as comments to the gettext file. +DEBUG = False -OUTPUT_FILE = os.path.join(os.path.dirname(WEBUI_JS_DIR), 'gettext.js') -STRING_RE = re.compile('_\\(\'(.*?)\'\\)') -strings = {} -for root, dnames, files in os.walk(WEBUI_JS_DIR): - for filename in files: - if os.path.splitext(filename)[1] == '.js': - for lineno, line in enumerate(open(os.path.join(root, filename))): - for match in STRING_RE.finditer(line): - string = match.group(1) - locations = strings.get(string, []) - locations.append((os.path.basename(filename), lineno + 1)) - strings[string] = locations +def create_gettext_js(js_dir): + string_re = re.compile('_\\(\'(.*?)\'\\)') -keys = strings.keys() -keys.sort() + strings = {} + for root, dnames, files in os.walk(js_dir): + for filename in files: + if os.path.splitext(filename)[1] == '.js': + for lineno, line in enumerate(open(os.path.join(root, filename))): + for match in string_re.finditer(line): + string = match.group(1) + locations = strings.get(string, []) + locations.append((os.path.basename(filename), lineno + 1)) + strings[string] = locations -gettext_tpl = """/*! - * Script: gettext.js - * A script file that is run through the template renderer in order for translated strings to be used. - * - * Copyright (c) 2009 Damien Churchill - */ + keys = strings.keys() + keys.sort() -GetText = { - maps: {}, - add: function(string, translation) { - this.maps[string] = translation; - }, - get: function(string) { - if (this.maps[string]) { - return this.maps[string]; - } else { - return string; - } - } -} + gettext_tpl = """GetText={maps:{},\ + add:function(string,translation) {this.maps[string]=translation},\ + get:function(string) {if (this.maps[string]) {string=this.maps[string]} return string}} + function _(string) {return GetText.get(string)}\ + """ -function _(string) { - return GetText.get(string); -} + gettext_file = os.path.join(os.path.dirname(js_dir), 'gettext.js') + with open(gettext_file, 'w') as fp: + fp.write(gettext_tpl) + for key in keys: + if DEBUG: + fp.write('\n// %s\n' % ', '.join(map(lambda x: '%s:%s' % x, strings[key]))) + fp.write("GetText.add('%(key)s','${escape(_(\"%(key)s\"))}')\n" % locals()) -""" - -with open(OUTPUT_FILE, 'w') as fp: - fp.write(gettext_tpl) - for key in keys: - fp.write('// %s\n' % ', '.join(map(lambda x: '%s:%s' % x, strings[key]))) - fp.write("GetText.add('%(key)s', '${escape(_(\"%(key)s\"))}')\n\n" % locals()) - -print "Created %s" % OUTPUT_FILE +if __name__ == '__main__': + create_gettext_js(WEBUI_JS_DIR) + print "Created %s" % WEBUI_JS_DIR diff --git a/generate_pot.py b/generate_pot.py index c710ded2e..245ea60ab 100755 --- a/generate_pot.py +++ b/generate_pot.py @@ -16,6 +16,7 @@ import re from datetime import datetime from subprocess import call +from gen_web_gettext import create_gettext_js from version import get_version # Paths to exclude @@ -103,4 +104,7 @@ for filepath in to_translate: if filepath.endswith(".h"): os.remove(filepath) -print "Created %s" % POT_FILEPATH +# Update web js gettext +create_gettext_js(WEBUI_JS_DIR) + +print "Created %s and updated gettext.js" % POT_FILEPATH