diff options
23 files changed, 1235 insertions, 473 deletions
diff --git a/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua b/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua index 096724f735..4358374440 100644 --- a/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua +++ b/applications/luci-app-fwknopd/luasrc/model/cbi/fwknopd.lua @@ -1,19 +1,19 @@ -- Copyright 2015 Jonathan Bennett <jbennett@incomsystems.biz> -- Licensed to the public under the GNU General Public License v2. - +tmp = 0 m = Map("fwknopd", translate("Firewall Knock Operator")) s = m:section(TypedSection, "global", translate("Enable Uci/Luci control")) -- Set uci control on or off s.anonymous=true s:option(Flag, "uci_enabled", translate("Enable config overwrite"), translate("When unchecked, the config files in /etc/fwknopd will be used as is, ignoring any settings here.")) -qr = s:option(DummyValue, "note0", "dummy") -qr.template = "fwknopd-qr" -qr:depends("uci_enabled", "1") s = m:section(TypedSection, "access", translate("access.conf stanzas")) -- set the access.conf settings s.anonymous=true s.addremove=true -s.dynamic=true +qr = s:option(DummyValue, "note0", "dummy") +qr.tmp = tmp +qr.template = "fwknopd-qr" +qr:depends("uci_enabled", "1") s:option(Value, "SOURCE", "SOURCE", translate("Use ANY for any source ip")) k1 = s:option(Value, "KEY", "KEY", translate("Define the symmetric key used for decrypting an incoming SPA packet that is encrypted by the fwknop client with Rijndael.")) k1:depends("keytype", translate("Normal Key")) @@ -40,15 +40,13 @@ s:option(Value, "REQUIRE_SOURCE_ADDRESS", "REQUIRE_SOURCE_ADDRESS", translate("F This makes it impossible to use the -s command line argument on the fwknop client command line, so either -R \ has to be used to automatically resolve the external address (if the client behind a NAT) or the client must \ know the external IP and set it via the -a argument.")) -s:option(DummyValue, "note1", translate("Enter custom access.conf variables below:")) s = m:section(TypedSection, "config", translate("fwknopd.conf config options")) s.anonymous=true -s.dynamic=true s:option(Value, "MAX_SPA_PACKET_AGE", "MAX_SPA_PACKET_AGE", translate("Maximum age in seconds that an SPA packet will be accepted. defaults to 120 seconds")) s:option(Value, "PCAP_INTF", "PCAP_INTF", translate("Specify the ethernet interface on which fwknopd will sniff packets.")) s:option(Value, "ENABLE_IPT_FORWARDING", "ENABLE_IPT_FORWARDING", translate("Allow SPA clients to request access to services through an iptables firewall instead of just to it.")) -s:option(DummyValue, "note2", translate("Enter custom fwknopd.conf variables below:")) +s:option(Value, "ENABLE_NAT_DNS", "ENABLE_NAT_DNS", translate("Allow SPA clients to request forwarding destination by DNS name.")) return m diff --git a/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm b/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm index 9e6e8185fa..5773f523e5 100644 --- a/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm +++ b/applications/luci-app-fwknopd/luasrc/view/fwknopd-qr.htm @@ -1 +1,2 @@ -<% print(luci.sys.exec("sh /usr/sbin/gen-qr.sh")) %> +<% print(luci.sys.exec("sh /usr/sbin/gen-qr.sh " .. self.tmp)) %> +<% self.tmp = self.tmp + 1 %> diff --git a/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd b/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd index 01b85de25f..65ef012450 100644 --- a/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd +++ b/applications/luci-app-fwknopd/root/etc/uci-defaults/40_luci-fwknopd @@ -16,6 +16,7 @@ uci set fwknopd.@access[0].hkeytype='Base 64 key' uci set fwknopd.@access[0].KEY_BASE64=`fwknopd --key-gen | awk '/^KEY/ {print $2;}'` uci set fwknopd.@access[0].HMAC_KEY_BASE64=`fwknopd --key-gen | awk '/^HMAC/ {print $2;}'` uci set fwknopd.@config[0].ENABLE_IPT_FORWARDING='y' +uci set fwknopd.@config[0].ENABLE_NAT_DNS='y' uci commit fwknopd rm -f /tmp/luci-indexcache diff --git a/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh b/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh index 97493dafed..abca5d3e5a 100644 --- a/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh +++ b/applications/luci-app-fwknopd/root/usr/sbin/gen-qr.sh @@ -1,9 +1,13 @@ #!/bin/sh +entry_num=0 +if [ "$1" != "" ]; then +entry_num=$1 +fi -key_base64=$(uci get fwknopd.@access[0].KEY_BASE64) -key=$(uci get fwknopd.@access[0].KEY) -hmac_key_base64=$(uci get fwknopd.@access[0].HMAC_KEY_BASE64) -hmac_key=$(uci get fwknopd.@access[0].HMAC_KEY) +key_base64=$(uci get fwknopd.@access[$entry_num].KEY_BASE64) +key=$(uci get fwknopd.@access[$entry_num].KEY) +hmac_key_base64=$(uci get fwknopd.@access[$entry_num].HMAC_KEY_BASE64) +hmac_key=$(uci get fwknopd.@access[$entry_num].HMAC_KEY) if [ $key_base64 != "" ]; then qr="KEY_BASE64:$key_base64" diff --git a/applications/luci-app-olsr/luasrc/controller/olsr.lua b/applications/luci-app-olsr/luasrc/controller/olsr.lua index 9a997bdc12..0564bd4ea7 100644 --- a/applications/luci-app-olsr/luasrc/controller/olsr.lua +++ b/applications/luci-app-olsr/luasrc/controller/olsr.lua @@ -87,8 +87,8 @@ function action_json() local v4_port = uci:get("olsrd", "olsrd_jsoninfo", "port") or 9090 local v6_port = uci:get("olsrd6", "olsrd_jsoninfo", "port") or 9090 - jsonreq4 = utl.exec("(echo /status | nc 127.0.0.1 " .. v4_port .. ") 2>/dev/null" ) - jsonreq6 = utl.exec("(echo /status | nc ::1 " .. v6_port .. ") 2>/dev/null") + jsonreq4 = utl.exec("(echo /status | nc 127.0.0.1 " .. v4_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null" ) + jsonreq6 = utl.exec("(echo /status | nc ::1 " .. v6_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null") http.prepare_content("application/json") if not jsonreq4 or jsonreq4 == "" then jsonreq4 = "{}" @@ -375,8 +375,8 @@ function fetch_jsoninfo(otable) local v4_port = uci:get("olsrd", "olsrd_jsoninfo", "port") or 9090 local v6_port = uci:get("olsrd6", "olsrd_jsoninfo", "port") or 9090 - jsonreq4 = utl.exec("(echo /" .. otable .. " | nc 127.0.0.1 " .. v4_port .. ") 2>/dev/null") - jsonreq6 = utl.exec("(echo /" .. otable .. " | nc ::1 " .. v6_port .. ") 2>/dev/null") + jsonreq4 = utl.exec("(echo /" .. otable .. " | nc 127.0.0.1 " .. v4_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null") + jsonreq6 = utl.exec("(echo /" .. otable .. " | nc ::1 " .. v6_port .. " | sed -n '/^[}{ ]/p') 2>/dev/null") local jsondata4 = {} local jsondata6 = {} local data4 = {} diff --git a/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm b/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm index 31dd7d05ac..c077c20486 100644 --- a/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm +++ b/applications/luci-app-olsr/luasrc/view/status-olsr/neighbors.htm @@ -12,8 +12,8 @@ local i = 1 if luci.http.formvalue("status") == "1" then local rv = {} for k, link in ipairs(links) do - link.linkCost = tonumber(link.linkCost)/1024 or 0 - if link.linkCost == 4096 then + link.linkCost = tonumber(link.linkCost) or 0 + if link.linkCost == 4194304 then link.linkCost = 0 end local color = olsrtools.etx_color(link.linkCost) @@ -129,8 +129,8 @@ end <tbody id="olsr_neigh_table"> <% local i = 1 for k, link in ipairs(links) do - link.linkCost = tonumber(link.linkCost)/1024 or 0 - if link.linkCost == 4096 then + link.linkCost = tonumber(link.linkCost) or 0 + if link.linkCost == 4194304 then link.linkCost = 0 end diff --git a/applications/luci-app-privoxy/po/zh-cn/privoxy.po b/applications/luci-app-privoxy/po/zh-cn/privoxy.po index 75d1a921cf..778422b8bb 100644 --- a/applications/luci-app-privoxy/po/zh-cn/privoxy.po +++ b/applications/luci-app-privoxy/po/zh-cn/privoxy.po @@ -2,14 +2,14 @@ msgid "" msgstr "" "Project-Id-Version: luci-app-privoxy\n" "POT-Creation-Date: 2015-06-10 20:16+0100\n" -"PO-Revision-Date: 2015-06-10 20:16+0100\n" +"PO-Revision-Date: 2017-01-05 18:01+0800\n" "Last-Translator: maz-1 <ohmygod19993 at gmail dotcom>\n" "Language-Team: \n" -"Language: zh-cn\n" +"Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.5.4\n" +"X-Generator: Poedit 1.8.11\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Poedit-SourceCharset: UTF-8\n" @@ -21,10 +21,10 @@ msgstr "当用户试图访问不受信任的页面时,错误页面所显示的 msgid "" "A URL to documentation about the local Privoxy setup, configuration or " "policies." -msgstr "指向Privoxy安装、设置和规则说明文档的URL" +msgstr "指向 Privoxy 安装、设置和规则说明文档的 URL" msgid "A directory where Privoxy can create temporary files." -msgstr "Privoxy存放临时文件的目录。" +msgstr "Privoxy 存放临时文件的目录。" msgid "Access Control" msgstr "访问控制" @@ -36,18 +36,18 @@ msgid "An alternative directory where the templates are loaded from." msgstr "可选的目录,放在里面的模板会被加载。" msgid "An email address to reach the Privoxy administrator." -msgstr "用于联系privoxy管理员的邮箱地址。" +msgstr "用于联系 Privoxy 管理员的邮箱地址。" msgid "" "Assumed server-side keep-alive timeout (in seconds) if not specified by the " "server." -msgstr "当服务端没有指定超时时间时假定的超时时间(单位秒)。" +msgstr "当服务端没有指定超时时间时假定的超时时间(单位:秒)。" msgid "Boot delay" -msgstr "" +msgstr "启动延时" msgid "CGI user interface" -msgstr "CGI用户界面" +msgstr "CGI 用户界面" msgid "Common Log Format" msgstr "通用日志格式" @@ -57,14 +57,14 @@ msgid "" "proxies. Note that parent proxies can severely decrease your privacy level. " "Also specified here are SOCKS proxies." msgstr "" -"在这里设置http请求所经过的多重代理链。注意父级代理可能严重降低你的隐私安全" -"度。在这里还可以设置SOCKS代理。" +"在这里设置 HTTP 请求所经过的多重代理链。注意:父级代理可能严重降低你的隐私安" +"全度。在这里还可以设置 SOCKS 代理。" msgid "Debug GIF de-animation" msgstr "GIF动画日志" msgid "Debug force feature" -msgstr "force feature日志" +msgstr "Force feature 日志" msgid "Debug redirects" msgstr "重定向日志" @@ -73,7 +73,7 @@ msgid "Debug regular expression filters" msgstr "正则表达式日志" msgid "Delay (in seconds) during system boot before Privoxy start" -msgstr "" +msgstr "Privoxy 自启动延迟时间(单位:秒)" msgid "Directory does not exist!" msgstr "目录不存在!" @@ -82,20 +82,20 @@ msgid "Disabled == Transparent Proxy Mode" msgstr "禁用 == 透明代理模式" msgid "Documentation" -msgstr "" +msgstr "记录信息" msgid "During delay ifup-events are not monitored !" -msgstr "" +msgstr "在延迟期间无法检测到 ifup 事件!" msgid "Enable proxy authentication forwarding" msgstr "允许转发代理认证" msgid "" "Enable/Disable autostart of Privoxy on system startup and interface events" -msgstr "开启/关闭Privoxy在系统启动或者设置界面更改时自动启动。" +msgstr "开启/关闭 Privoxy 在系统启动或接口事件时自动启动。" msgid "Enable/Disable filtering when Privoxy starts." -msgstr "Privoxy启动时开启/关闭过滤。" +msgstr "Privoxy 启动时开启/关闭过滤。" msgid "Enabled" msgstr "已开启" @@ -103,10 +103,10 @@ msgstr "已开启" msgid "" "Enabling this option is NOT recommended if there is no parent proxy that " "requires authentication!" -msgstr "父级代理不需要认证时不推荐开启这个选项!" +msgstr "如果没有需要认证的父级代理时,不推荐开启这个选项!" msgid "File '%s' not found inside Configuration Directory" -msgstr "文件 '%s' 没有在设置目录中找到!" +msgstr "在设置目录中未找到文件 '%S'!" msgid "File not found or empty" msgstr "文件不存在或为空" @@ -115,7 +115,7 @@ msgid "Files and Directories" msgstr "文件和目录" msgid "For help use link at the relevant option" -msgstr "在相应选项下的连接可获取帮助。" +msgstr "点击相应选项的连接可获取帮助。" msgid "Forwarding" msgstr "转发" @@ -123,15 +123,15 @@ msgstr "转发" msgid "" "If enabled, Privoxy hides the 'go there anyway' link. The user obviously " "should not be able to bypass any blocks." -msgstr "如果启用,Privoxy会隐藏'go there anyway'链接。用户显然不应能绕过屏蔽。" +msgstr "如果启用,Privoxy 会隐藏 'go there anyway' 链接,用户就不能绕过屏蔽。" msgid "" "If you intend to operate Privoxy for more users than just yourself, it might " "be a good idea to let them know how to reach you, what you block and why you " "do that, your policies, etc." msgstr "" -"如果除了你还有其他用户通过privoxy连接,让他们知道如何联系你、什么内容被屏蔽" -"了、你为什么要这么做、你所制定的规范等等是一个好主意。" +"如果除了你还有其他用户使用 Privoxy 连接,最好让他们知道如何联系你,你屏蔽什" +"么,你为什么这样做,你的政策等等。" msgid "Invalid email address" msgstr "邮箱地址无效" @@ -140,29 +140,29 @@ msgid "It is NOT recommended for the casual user." msgstr "不推荐新手使用。" msgid "Location of the Privoxy User Manual." -msgstr "Privoxy用户手册位置" +msgstr "Privoxy 用户手册位置" msgid "Log File Viewer" msgstr "日志查看器" msgid "Log all data read from the network" -msgstr "记录所有从网络接收的数据" +msgstr "记录所有接收的网络数据" msgid "Log all data written to the network" -msgstr "记录所有发送给网络的数据" +msgstr "记录所有发送的网络数据" msgid "Log the applying actions" -msgstr "记录被应用的规则" +msgstr "记录配置保存动作" msgid "" "Log the destination for each request Privoxy let through. See also 'Debug " "1024'." -msgstr "记录Privoxy所允许的所有请求。另请参考'Debug 1024'。" +msgstr "记录 Privoxy 允许的所有请求。另请参考 'Debug 1024'。" msgid "" "Log the destination for requests Privoxy didn't let through, and the reason " "why." -msgstr "记录被Privoxy拒绝的请求目标以及拒绝原因。" +msgstr "记录 Privoxy 拒绝的请求目标以及拒绝原因。" msgid "Logging" msgstr "日志" @@ -198,40 +198,40 @@ msgid "Maximum number of client connections that will be served." msgstr "客户端数量上限。" msgid "Maximum size (in KB) of the buffer for content filtering." -msgstr "内容过滤的最大缓冲(单位KB)。" +msgstr "内容过滤的最大缓冲(单位:KB)。" msgid "Miscellaneous" msgstr "杂项" msgid "NOT installed" -msgstr "" +msgstr "未安装" msgid "No trailing '/', please." -msgstr "路径结尾不要加'/' ." +msgstr "路径结尾不要加 '/' 。" msgid "Non-fatal errors - *we highly recommended enabling this*" -msgstr "非致命性错误 - * 建议开启 *" +msgstr "非致命性错误 - * 强烈建议开启 *" msgid "" "Number of seconds after which a socket times out if no data is received." -msgstr "socket连接未收到数据的超时时间。" +msgstr "Socket 连接未收到数据的超时时间。" msgid "" "Number of seconds after which an open connection will no longer be reused." -msgstr "一个开放的连接不再重复使用的超时时间。" +msgstr "开放的连接不再重复使用的超时时间。" msgid "" "Only when using 'external filters', Privoxy has to create temporary files." -msgstr "只有使用外置规则时,privoxy才需要创建临时文件。" +msgstr "只有使用外置规则时,Privoxy 才需要创建临时文件。" msgid "Please install current version !" -msgstr "" +msgstr "请安装当前版本!" msgid "Please press [Read] button" -msgstr "请点击[读取]按钮" +msgstr "请点击 [读取] 按钮" msgid "Please read Privoxy manual for details!" -msgstr "请阅读Privoxy手册以了解详情!" +msgstr "请阅读 Privoxy 手册以了解详情!" msgid "Please update to the current version!" msgstr "请升级到当前版本!" @@ -244,16 +244,16 @@ msgid "" "configuration, help and logging. This section of the configuration file " "tells Privoxy where to find those other files." msgstr "" -"Privoxy可以使用其他一些文件用于附加设置,帮助和日志。这个区域用来告诉Privoxy" -"从哪里找到这些文件。" +"Privoxy 可以使用其他一些文件用于附加设置,帮助和日志。这个区域用来告诉 " +"Privoxy 从哪里找到这些文件。" msgid "" "Privoxy is a non-caching web proxy with advanced filtering capabilities for " "enhancing privacy, modifying web page data and HTTP headers, controlling " "access, and removing ads and other obnoxious Internet junk." msgstr "" -"Privoxy是一个无缓存的网络代理,具有高级过滤功能,能够修改网页数据和HTTP头,控" -"制访问,移除广告等。" +"Privoxy 是一个无缓存的网络代理,具有高级过滤功能,能够修改网页数据和 HTTP 请" +"求头,控制访问,移除广告等。" msgid "Read / Reread log file" msgstr "读取/刷新日志文件" @@ -265,13 +265,13 @@ msgid "Show each connection status" msgstr "显示每个连接的状态" msgid "Show header parsing" -msgstr "Show header parsing" +msgstr "显示请求头 解析" msgid "Software package '%s' is not installed." -msgstr "" +msgstr "软件包 '%s' 未安装" msgid "Software package '%s' is outdated." -msgstr "" +msgstr "软件包 '%s' 已过时" msgid "Start" msgstr "启动" @@ -289,7 +289,7 @@ msgid "Syntax:" msgstr "格式:" msgid "Syntax: Client header names delimited by spaces." -msgstr "格式: Client header names delimited by spaces." +msgstr "格式: 由空格分隔的客户端请求头名称。" msgid "Syntax: target_pattern http_parent[:port]" msgstr "格式: target_pattern http_parent[:port]" @@ -298,7 +298,7 @@ msgid "Syntax: target_pattern socks_proxy[:port] http_parent[:port]" msgstr "格式: target_pattern socks_proxy[:port] http_parent[:port]" msgid "System" -msgstr "" +msgstr "系统" msgid "" "The actions file(s) to use. Multiple actionsfile lines are permitted, and " @@ -307,12 +307,12 @@ msgstr "所使用的规则文件。允许并且推荐使用多个规则文件。 msgid "" "The address and TCP port on which Privoxy will listen for client requests." -msgstr "Privoxy接收客户端请求时监听的地址和TCP端口。" +msgstr "Privoxy 接收客户端请求时监听的地址和 TCP 端口。" msgid "" "The compression level that is passed to the zlib library when compressing " "buffered content." -msgstr "使用zlib压缩缓冲内容时的压缩级别。" +msgstr "使用 zlib 压缩缓冲内容时的压缩级别。" msgid "" "The directory where all logging takes place (i.e. where the logfile is " @@ -334,14 +334,14 @@ msgid "The log file to use. File name, relative to log directory." msgstr "日志文件名称,与日志路径相对。" msgid "The order in which client headers are sorted before forwarding them." -msgstr "转发数据前,client headers的排序。" +msgstr "转发数据前,客户端请求头的排序。" msgid "" "The status code Privoxy returns for pages blocked with +handle-as-empty-" "document." msgstr "" -"当页面因为handle-as-empty-document规则被阻止时返回的状态码(选上为200 OK,不" -"选上为403 Forbidden)" +"当页面因为 handle-as-empty-document 规则被阻止时返回的状态码(选上为 200 OK," +"不选上为 403 Forbidden)" msgid "" "The trust mechanism is an experimental feature for building white-lists and " @@ -361,19 +361,20 @@ msgstr "这个选项仅用于调试,开启后会极大地降低性能。" msgid "" "This option will be removed in future releases as it has been obsoleted by " "the more general header taggers." -msgstr "这个选项在以后的版本中将被移除,因为它被header taggers所取代了。" +msgstr "这个选项在以后的版本中将被移除,因为它被 header taggers 所取代了。" msgid "" "This tab controls the security-relevant aspects of Privoxy's configuration." -msgstr "这个标签用于设置与安全相关的Privoxy选项。" +msgstr "这个标签用于设置与安全相关的 Privoxy 选项。" msgid "" "Through which SOCKS proxy (and optionally to which parent HTTP proxy) " "specific requests should be routed." -msgstr "指定的请求应该通过哪一个SOCKS代理(并且通过哪一个HTTP父代理,可选)" +msgstr "" +"指定的请求应该通过哪一个 SOCKS 代理(并且通过哪一个 HTTP 父代理,可选)" msgid "To which parent HTTP proxy specific requests should be routed." -msgstr "请求应转发至哪一个父级HTTP代理。" +msgstr "请求应转发至哪一个父级 HTTP 代理。" msgid "User customizations" msgstr "用户自定义" @@ -382,10 +383,10 @@ msgid "Value is not a number" msgstr "输入值不是数字" msgid "Value not between 0 and 300" -msgstr "" +msgstr "输入值不在0和300之间" msgid "Value not between 0 and 9" -msgstr "输入值不在0和9之间。" +msgstr "输入值不在0和9之间" msgid "Value not between 1 and 4096" msgstr "输入值不在1和4096之间" @@ -408,7 +409,7 @@ msgstr "被拦截的请求是否应被当作有效的。" msgid "" "Whether or not Privoxy recognizes special HTTP headers to change toggle " "state." -msgstr "Privoxy是否识别特殊的HTTP头以切换状态。" +msgstr "Privoxy 是否识别特殊的 HTTP 请求头以切换状态。" msgid "Whether or not buffered content is compressed before delivery." msgstr "缓冲内容在传递之前是否压缩。" @@ -422,7 +423,7 @@ msgid "Whether or not pipelined requests should be served." msgstr "是否处理管道化的请求。" msgid "Whether or not proxy authentication through Privoxy should work." -msgstr "是否可以通过Privoxy进行代理验证。" +msgstr "是否可以通过 Privoxy 进行代理验证。" msgid "Whether or not the web-based actions file editor may be used." msgstr "是否使用基于网页的规则编辑器。" @@ -431,11 +432,11 @@ msgid "Whether or not the web-based toggle feature may be used." msgstr "是否启用基于网页的切换功能。" msgid "Whether requests to Privoxy's CGI pages can be blocked or redirected." -msgstr "访问Privoxy CGI页面的请求是否可以被拦截或重定向。" +msgstr "访问 Privoxy CGI 页面的请求是否可以被拦截或重定向。" msgid "" "Whether the CGI interface should stay compatible with broken HTTP clients." -msgstr "CGI界面是否应兼容过时的HTTP客户端。" +msgstr "CGI 界面是否应兼容过时的HTTP客户端。" msgid "Whether to run only one server thread." msgstr "是否只运行一个服务线程。" diff --git a/applications/luci-app-shairplay/po/ja/shairplay.po b/applications/luci-app-shairplay/po/ja/shairplay.po new file mode 100644 index 0000000000..07fa7be6ec --- /dev/null +++ b/applications/luci-app-shairplay/po/ja/shairplay.po @@ -0,0 +1,54 @@ +msgid "" +msgstr "" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2017-01-03 15:06+0900\n" +"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n" +"Language-Team: \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.11\n" +"X-Poedit-Basepath: .\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "AO Device ID" +msgstr "オーディオ出力 デバイスID" + +msgid "AO Device Name" +msgstr "オーディオ出力 デバイス名" + +msgid "AO Driver" +msgstr "オーディオ出力 デバイスドライバー" + +msgid "Airport Name" +msgstr "Airport名" + +msgid "Default" +msgstr "デフォルト" + +msgid "Enabled" +msgstr "有効" + +msgid "HW Address" +msgstr "ハードウェア アドレス" + +msgid "Password" +msgstr "パスワード" + +msgid "Port" +msgstr "ポート" + +msgid "Respawn" +msgstr "リスポーン" + +msgid "Shairplay" +msgstr "" + +msgid "" +"Shairplay is a simple AirPlay server implementation, here you can configure " +"the settings." +msgstr "" +"Shairplayは、シンプルなAirPlay サーバー実装です。ここでは、設定を行うことがで" +"きます。" diff --git a/applications/luci-app-shairplay/po/templates/shairplay.pot b/applications/luci-app-shairplay/po/templates/shairplay.pot new file mode 100644 index 0000000000..b3da99e0b3 --- /dev/null +++ b/applications/luci-app-shairplay/po/templates/shairplay.pot @@ -0,0 +1,40 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8" + +msgid "AO Device ID" +msgstr "" + +msgid "AO Device Name" +msgstr "" + +msgid "AO Driver" +msgstr "" + +msgid "Airport Name" +msgstr "" + +msgid "Default" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "HW Address" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "Port" +msgstr "" + +msgid "Respawn" +msgstr "" + +msgid "Shairplay" +msgstr "" + +msgid "" +"Shairplay is a simple AirPlay server implementation, here you can configure " +"the settings." +msgstr "" diff --git a/applications/luci-app-travelmate/po/ja/travelmate.po b/applications/luci-app-travelmate/po/ja/travelmate.po new file mode 100644 index 0000000000..986d7b32b6 --- /dev/null +++ b/applications/luci-app-travelmate/po/ja/travelmate.po @@ -0,0 +1,72 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.11\n" +"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"Language: ja\n" + +msgid "" +"Brief advice: Create a wwan interface, configure it to use dhcp and add it " +"to the wan zone in firewall. Create the wifi interfaces to be used ('client' " +"mode, assigned to wwan network, left as disabled). Travelmate will try to " +"connect to the known wifi client interfaces in the defined order." +msgstr "" +"簡単な解説: 予めWWANインターフェースを作成し、DHCPを使用するよう構成してファ" +"イアウォールのWANゾーンに追加します。また、使用される無線インターフェースを作" +"成しておきます(\"クライアント\" モード、WWANに割り当て、無効状態)。" +"Travelmateは、登録されている順序で既知の無線クライアント インターフェースへの" +"接続を試行します。" + +msgid "" +"Configuration of the Travelmate package to enable travel router " +"functionality." +msgstr "トラベル ルータ機能を有効にする、Travelmate パッケージの設定です。" + +msgid "Debug logging" +msgstr "デバッグ ログ" + +msgid "Default 3, range 0-10. Set to 0 to allow unlimited retries" +msgstr "既定値 3、範囲 0 - 10。再試行回数を制限しない場合、0 に設定します。" + +msgid "Default 30, range 5-60" +msgstr "既定値 30、範囲 5 - 60" + +msgid "Default: empty = use all radios." +msgstr "デフォルト:(空)= 全ての無線を使用" + +msgid "Disable this if you want to use iwinfo instead of iw" +msgstr "iw の代わりに iwinfo を使用したい場合、この設定を無効にします。" + +msgid "Enable Travelmate" +msgstr "Travelmateの有効化" + +msgid "Extra options" +msgstr "拡張オプション" + +msgid "Global options" +msgstr "全般オプション" + +msgid "Link to detailed advice" +msgstr "詳細な解説へのリンク" + +msgid "Loop timeout in seconds for wlan monitoring" +msgstr "無線LAN モニターのループ タイムアウト(秒)" + +msgid "Max. number of connection retries to an uplink" +msgstr "確立までの接続試行回数" + +msgid "Travelmate" +msgstr "Travelmate" + +msgid "Use iw for scanning" +msgstr "スキャンに iw を使用する" + +msgid "Use only one radio, e.g. 'radio0'" +msgstr "単一の無線のみ使用する 例: 'radio0'" diff --git a/applications/luci-app-uhttpd/po/ja/uhttpd.po b/applications/luci-app-uhttpd/po/ja/uhttpd.po new file mode 100644 index 0000000000..5729034046 --- /dev/null +++ b/applications/luci-app-uhttpd/po/ja/uhttpd.po @@ -0,0 +1,213 @@ +msgid "" +msgstr "" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2017-01-01 18:11+0900\n" +"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n" +"Language-Team: \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.11\n" +"X-Poedit-Basepath: .\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "" +"(/old/path=/new/path) or (just /old/path which becomes /cgi-prefix/old/path)" +msgstr "" +"(/old/path=/new/path) または (just /old/path which becomes /cgi-prefix/old/" +"path)" + +msgid "404 Error" +msgstr "404 エラー" + +msgid "A lightweight single-threaded HTTP(S) server" +msgstr "軽量なシングル スレッド HTTP(S) サーバーです。" + +msgid "Advanced Settings" +msgstr "詳細設定" + +msgid "Aliases" +msgstr "エイリアス" + +msgid "Base directory for files to be served" +msgstr "サーバーがホストするファイルのベースディレクトリです。" + +msgid "Bind to specific interface:port (by specifying interface address" +msgstr "" +"インターフェースのアドレスを使用して、特定のインターフェースとポートに関連付" +"けます。" + +msgid "CGI filetype handler" +msgstr "CGIファイル形式 ハンドラー" + +msgid "CGI is disabled if not present." +msgstr "指定しない場合、CGIは無効になります。" + +msgid "Config file (e.g. for credentials for Basic Auth)" +msgstr "設定ファイル(例: 基本認証用の資格情報)" + +msgid "Connection reuse" +msgstr "接続の再使用" + +msgid "Country" +msgstr "国" + +msgid "Disable JSON-RPC authorization via ubus session API" +msgstr "ubus セッションAPI経由のJSON-RPC認証を無効にする" + +msgid "Do not follow symlinks outside document root" +msgstr "ドキュメント ルート外へのシンボリックリンクを追随しない" + +msgid "Do not generate directory listings." +msgstr "ディレクトリの待ち受けを生成しない" + +msgid "Document root" +msgstr "ドキュメント ルート" + +msgid "E.g specify with index.html and index.php when using PHP" +msgstr "index.html や、PHPを使用しているときは index.php を設定します。" + +msgid "Embedded Lua interpreter is disabled if not present." +msgstr "指定しない場合、組込みLua インタープリタは無効になります。" + +msgid "Enable JSON-RPC Cross-Origin Resource Support" +msgstr "" + +msgid "For settings primarily geared to serving more than the web UI" +msgstr "主に、Web UI以上のものを提供することを対象とした設定です。" + +msgid "Full Web Server Settings" +msgstr "完全なWebサーバー設定" + +msgid "Full real path to handler for Lua scripts" +msgstr "Lua スクリプトへの絶対パス" + +msgid "General Settings" +msgstr "一般設定" + +msgid "HTTP listeners (address:port)" +msgstr "HTTP 待ち受け(アドレス:ポート)" + +msgid "HTTPS Certificate (DER Encoded)" +msgstr "HTTPS 証明書(DER エンコード)" + +msgid "HTTPS Private Key (DER Encoded)" +msgstr "HTTPS 秘密鍵(DER エンコード)" + +msgid "HTTPS listener (address:port)" +msgstr "HTTPS 待ち受け(アドレス:ポート)" + +msgid "Ignore private IPs on public interface" +msgstr "公開側インターフェースでのプライベートIPを無視する" + +msgid "Index page(s)" +msgstr "インデックス ページ" + +msgid "" +"Interpreter to associate with file endings ('suffix=handler', e.g. '.php=/" +"usr/bin/php-cgi')" +msgstr "" +"ファイル拡張子に関連付けるインタープリタです。('suffix=handler'、例: '.php=/" +"usr/bin/php-cgi')" + +msgid "Length of key in bits" +msgstr "鍵のビット数" + +msgid "Location" +msgstr "場所" + +msgid "Maximum number of connections" +msgstr "最大接続数" + +msgid "Maximum number of script requests" +msgstr "スクリプトの最大リクエスト数" + +msgid "Maximum wait time for Lua, CGI, or ubus execution" +msgstr "LuaやCGI、ubus実行の最大待機時間" + +msgid "Maximum wait time for network activity" +msgstr "ネットワークアクティビティの最大待機時間" + +msgid "Override path for ubus socket" +msgstr "ubus ソケットのパスを上書きする" + +msgid "Path prefix for CGI scripts" +msgstr "CGI スクリプトのパスプレフィクス" + +msgid "" +"Prevent access from private (RFC1918) IPs on an interface if it has an " +"public IP address" +msgstr "" +"グローバル IPアドレスを持つインターフェースでは、プライベート IP (RFC1918) か" +"らのアクセスをブロックします。" + +msgid "Realm for Basic Auth" +msgstr "基本認証の領域名" + +msgid "Redirect all HTTP to HTTPS" +msgstr "全てのHTTPをHTTPSにリダイレクトする" + +msgid "Remove configuration for certificate and key" +msgstr "証明書と鍵の設定を削除する" + +msgid "Remove old certificate and key" +msgstr "古い証明書と鍵を削除する" + +msgid "Server Hostname" +msgstr "サーバー ホスト名" + +msgid "" +"Settings which are either rarely needed or which affect serving the WebUI" +msgstr "まれに必要とされる設定、またはWeb UIに影響する設定です。" + +msgid "State" +msgstr "ステータス" + +msgid "TCP Keepalive" +msgstr "TCP キープアライブ" + +msgid "This permanently deletes the cert, key, and configuration to use same." +msgstr "" + +msgid "Valid for # of Days" +msgstr "有効日数" + +msgid "" +"Virtual URL or CGI script to display on status '404 Not Found'. Must begin " +"with '/'" +msgstr "" + +msgid "Virtual path prefix for Lua scripts" +msgstr "Lua スクリプトへの仮想パスプレフィクス" + +msgid "Virtual path prefix for ubus via JSON-RPC integration" +msgstr "" + +msgid "Will not use HTTP authentication if not present" +msgstr "指定しない場合、HTTP 認証は使用されません。" + +msgid "a.k.a CommonName" +msgstr "共通名" + +msgid "uHTTPd" +msgstr "uHTTPd" + +msgid "uHTTPd Self-signed Certificate Parameters" +msgstr "uHTTPd 自己署名証明書 パラメーター" + +msgid "" +"uHTTPd will generate a new self-signed certificate using the configuration " +"shown below." +msgstr "uHTTPd は、以下に表示した設定で新しい自己署名証明書を生成します。" + +msgid "ubus integration is disabled if not present" +msgstr "" + +#~ msgid "" +#~ "Virtual URL or CGI script to display on status '404 Not Found'. Must " +#~ "begin with '/'" +#~ msgstr "" +#~ "'404 Not Found' ステータスを表示する、仮想URLまたはCGIスクリプトです。'/' " +#~ "から始まる必要があります。" diff --git a/applications/luci-app-uhttpd/po/templates/uhttpd.pot b/applications/luci-app-uhttpd/po/templates/uhttpd.pot new file mode 100644 index 0000000000..5503450e0a --- /dev/null +++ b/applications/luci-app-uhttpd/po/templates/uhttpd.pot @@ -0,0 +1,186 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8" + +msgid "" +"(/old/path=/new/path) or (just /old/path which becomes /cgi-prefix/old/path)" +msgstr "" + +msgid "404 Error" +msgstr "" + +msgid "A lightweight single-threaded HTTP(S) server" +msgstr "" + +msgid "Advanced Settings" +msgstr "" + +msgid "Aliases" +msgstr "" + +msgid "Base directory for files to be served" +msgstr "" + +msgid "Bind to specific interface:port (by specifying interface address" +msgstr "" + +msgid "CGI filetype handler" +msgstr "" + +msgid "CGI is disabled if not present." +msgstr "" + +msgid "Config file (e.g. for credentials for Basic Auth)" +msgstr "" + +msgid "Connection reuse" +msgstr "" + +msgid "Country" +msgstr "" + +msgid "Disable JSON-RPC authorization via ubus session API" +msgstr "" + +msgid "Do not follow symlinks outside document root" +msgstr "" + +msgid "Do not generate directory listings." +msgstr "" + +msgid "Document root" +msgstr "" + +msgid "E.g specify with index.html and index.php when using PHP" +msgstr "" + +msgid "Embedded Lua interpreter is disabled if not present." +msgstr "" + +msgid "Enable JSON-RPC Cross-Origin Resource Support" +msgstr "" + +msgid "For settings primarily geared to serving more than the web UI" +msgstr "" + +msgid "Full Web Server Settings" +msgstr "" + +msgid "Full real path to handler for Lua scripts" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "HTTP listeners (address:port)" +msgstr "" + +msgid "HTTPS Certificate (DER Encoded)" +msgstr "" + +msgid "HTTPS Private Key (DER Encoded)" +msgstr "" + +msgid "HTTPS listener (address:port)" +msgstr "" + +msgid "Ignore private IPs on public interface" +msgstr "" + +msgid "Index page(s)" +msgstr "" + +msgid "" +"Interpreter to associate with file endings ('suffix=handler', e.g. '.php=/" +"usr/bin/php-cgi')" +msgstr "" + +msgid "Length of key in bits" +msgstr "" + +msgid "Location" +msgstr "" + +msgid "Maximum number of connections" +msgstr "" + +msgid "Maximum number of script requests" +msgstr "" + +msgid "Maximum wait time for Lua, CGI, or ubus execution" +msgstr "" + +msgid "Maximum wait time for network activity" +msgstr "" + +msgid "Override path for ubus socket" +msgstr "" + +msgid "Path prefix for CGI scripts" +msgstr "" + +msgid "" +"Prevent access from private (RFC1918) IPs on an interface if it has an " +"public IP address" +msgstr "" + +msgid "Realm for Basic Auth" +msgstr "" + +msgid "Redirect all HTTP to HTTPS" +msgstr "" + +msgid "Remove configuration for certificate and key" +msgstr "" + +msgid "Remove old certificate and key" +msgstr "" + +msgid "Server Hostname" +msgstr "" + +msgid "" +"Settings which are either rarely needed or which affect serving the WebUI" +msgstr "" + +msgid "State" +msgstr "" + +msgid "TCP Keepalive" +msgstr "" + +msgid "This permanently deletes the cert, key, and configuration to use same." +msgstr "" + +msgid "Valid for # of Days" +msgstr "" + +msgid "" +"Virtual URL or CGI script to display on status '404 Not Found'. Must begin " +"with '/'" +msgstr "" + +msgid "Virtual path prefix for Lua scripts" +msgstr "" + +msgid "Virtual path prefix for ubus via JSON-RPC integration" +msgstr "" + +msgid "Will not use HTTP authentication if not present" +msgstr "" + +msgid "a.k.a CommonName" +msgstr "" + +msgid "uHTTPd" +msgstr "" + +msgid "uHTTPd Self-signed Certificate Parameters" +msgstr "" + +msgid "" +"uHTTPd will generate a new self-signed certificate using the configuration " +"shown below." +msgstr "" + +msgid "ubus integration is disabled if not present" +msgstr "" diff --git a/applications/luci-app-upnp/po/ja/upnp.po b/applications/luci-app-upnp/po/ja/upnp.po index 728befa2bc..f0aff7336a 100644 --- a/applications/luci-app-upnp/po/ja/upnp.po +++ b/applications/luci-app-upnp/po/ja/upnp.po @@ -17,8 +17,8 @@ msgid "" "ACLs specify which external ports may be redirected to which internal " "addresses and ports" msgstr "" -"アクセス制御リスト(ACL) は、どの外部ポートからどの内部アドレス及びポートへ" -"リダイレクトするかを設定します。" +"アクセス制御リスト(ACL) は、どの外部ポートからどの内部アドレス及びポートへリ" +"ダイレクトするかを設定します。" msgid "Action" msgstr "動作" @@ -129,8 +129,8 @@ msgid "" "UPnP allows clients in the local network to automatically configure the " "router." msgstr "" -"UPnPを使用することで、ローカルネットワーク内のクライアントが自動的にルータ" -"を構成することができます。" +"UPnPを使用することで、ローカルネットワーク内のクライアントが自動的にルータを" +"構成することができます。" msgid "UPnP lease file" msgstr "UPnP リースファイル" @@ -148,8 +148,8 @@ msgstr "クライアントへの情報提供のみに使用される、KByte/s #~ "UPNP allows clients in the local network to automatically configure the " #~ "router." #~ msgstr "" -#~ "UPnPを使用することで、ローカルネットワーク内のクライアントが自動的にルー" -#~ "タを構成することができます。" +#~ "UPnPを使用することで、ローカルネットワーク内のクライアントが自動的にルータ" +#~ "を構成することができます。" #~ msgid "enable" #~ msgstr "有効" @@ -158,5 +158,5 @@ msgstr "クライアントへの情報提供のみに使用される、KByte/s #~ "UPNP should only be enabled if absolutely necessary as it can result in " #~ "high security risks for your network." #~ msgstr "" -#~ "UPnPはあなたの使用するネットワークに対して、セキュリティリスクが生じる可" -#~ "能性があるため、必要な場合のみ有効にしてください。" +#~ "UPnPはあなたの使用するネットワークに対して、セキュリティリスクが生じる可能" +#~ "性があるため、必要な場合のみ有効にしてください。" diff --git a/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua b/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua index a33c7aab9a..261cf36d0f 100644 --- a/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua +++ b/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua @@ -12,21 +12,31 @@ -- -- Author: Nils Koenig <openwrt@newk.it> -module("luci.controller.wifischedule.wifi_schedule", package.seeall) +module("luci.controller.wifischedule.wifi_schedule", package.seeall) + +local fs = require "nixio.fs" +local sys = require "luci.sys" +local template = require "luci.template" +local i18n = require "luci.i18n" function index() - entry({"admin", "wifi_schedule"}, firstchild(), "Wifi Schedule", 60).dependent=false - entry({"admin", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), "Schedule", 1) - entry({"admin", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), "View Logfile", 2) - entry({"admin", "wifi_schedule", "cronjob"}, call("view_crontab"), "View Cron Jobs", 3) + if not nixio.fs.access("/etc/config/wifi_schedule") then + return + end + entry({"admin", "services", "wifi_schedule"}, firstchild(), _("Wifi Schedule"), 60).dependent=false + entry({"admin", "services", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), _("Schedule"), 1) + entry({"admin", "services", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), _("View Logfile"), 2) + entry({"admin", "services", "wifi_schedule", "cronjob"}, call("view_crontab"), _("View Cron Jobs"), 3) end function wifi_schedule_log() - local logfile = luci.sys.exec("cat /tmp/log/wifi_schedule.log") - luci.template.render("wifischedule/file_viewer", {title="Wifi Schedule Logfile", content=logfile}) + local logfile = fs.readfile("/tmp/log/wifi_schedule.log") or "" + template.render("wifischedule/file_viewer", + {title = i18n.translate("Wifi Schedule Logfile"), content = logfile}) end function view_crontab() - local crontab = luci.sys.exec("cat /etc/crontabs/root") - luci.template.render("wifischedule/file_viewer", {title="Cron Jobs", content=crontab}) + local crontab = fs.readfile("/etc/crontabs/root") or "" + template.render("wifischedule/file_viewer", + {title = i18n.translate("Cron Jobs"), content = crontab}) end diff --git a/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua b/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua index 2cca476b4f..1d301219a8 100644 --- a/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua +++ b/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua @@ -12,15 +12,11 @@ -- -- Author: Nils Koenig <openwrt@newk.it> -function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end -end - +local fs = require "nixio.fs" +local sys = require "luci.sys" function time_validator(self, value, desc) if value ~= nil then - h_str, m_str = string.match(value, "^(%d%d?):(%d%d?)$") h = tonumber(h_str) m = tonumber(m_str) @@ -32,21 +28,21 @@ function time_validator(self, value, desc) m <= 59) then return value end - end - return nil, translate("The value '" .. desc .. "' is invalid") + end + return nil, translatef("The value %s is invalid", desc) end -- ------------------------------------------------------------------------------------------------- -- BEGIN Map -m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi.")) +m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi.")) function m.on_commit(self) - luci.sys.exec("/usr/bin/wifi_schedule.sh cron") + sys.exec("/usr/bin/wifi_schedule.sh cron") end -- END Map -- BEGIN Global Section -global_section = m:section(TypedSection, "global", "Global Settings") +global_section = m:section(TypedSection, "global", translate("Global Settings")) global_section.optional = false global_section.rmempty = false global_section.anonymous = true @@ -54,13 +50,13 @@ global_section.anonymous = true -- BEGIN Global Enable Checkbox global_enable = global_section:option(Flag, "enabled", translate("Enable Wifi Schedule")) -global_enable.optional=false; -global_enable.rmempty = false; +global_enable.optional = false +global_enable.rmempty = false function global_enable.validate(self, value, global_section) if value == "1" then - if ( file_exists("/sbin/wifi") and - file_exists("/usr/bin/wifi_schedule.sh") )then + if ( fs.access("/sbin/wifi") and + fs.access("/usr/bin/wifi_schedule.sh") )then return value else return nil, translate("Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi") @@ -71,39 +67,38 @@ function global_enable.validate(self, value, global_section) end -- END Global Enable Checkbox - -- BEGIN Global Logging Checkbox global_logging = global_section:option(Flag, "logging", translate("Enable logging")) -global_logging.optional=false; -global_logging.rmempty = false; +global_logging.optional = false +global_logging.rmempty = false global_logging.default = 0 -- END Global Enable Checkbox -- BEGIN Global Activate WiFi Button enable_wifi = global_section:option(Button, "enable_wifi", translate("Activate wifi")) function enable_wifi.write() - luci.sys.exec("/usr/bin/wifi_schedule.sh start manual") + sys.exec("/usr/bin/wifi_schedule.sh start manual") end -- END Global Activate Wifi Button -- BEGIN Global Disable WiFi Gracefully Button disable_wifi_gracefully = global_section:option(Button, "disable_wifi_gracefully", translate("Disable wifi gracefully")) function disable_wifi_gracefully.write() - luci.sys.exec("/usr/bin/wifi_schedule.sh stop manual") + sys.exec("/usr/bin/wifi_schedule.sh stop manual") end --- END Global Disable Wifi Gracefully Button +-- END Global Disable Wifi Gracefully Button -- BEGIN Disable WiFi Forced Button disable_wifi_forced = global_section:option(Button, "disable_wifi_forced", translate("Disabled wifi forced")) function disable_wifi_forced.write() - luci.sys.exec("/usr/bin/wifi_schedule.sh forcestop manual") + sys.exec("/usr/bin/wifi_schedule.sh forcestop manual") end -- END Global Disable WiFi Forced Button -- BEGIN Global Unload Modules Checkbox global_unload_modules = global_section:option(Flag, "unload_modules", translate("Unload Modules (experimental; saves more power)")) -global_unload_modules.optional = false; -global_unload_modules.rmempty = false; +global_unload_modules.optional = false +global_unload_modules.rmempty = false global_unload_modules.default = 0 -- END Global Unload Modules Checkbox @@ -111,13 +106,13 @@ global_unload_modules.default = 0 -- BEGIN Modules modules = global_section:option(TextValue, "modules", "") modules:depends("unload_modules", global_unload_modules.enabled); -modules.wrap = "off" -modules.rows = 10 +modules.wrap = "off" +modules.rows = 10 function modules.cfgvalue(self, section) - mod=uci.get("wifi_schedule", section, "modules") + mod = uci.get("wifi_schedule", section, "modules") if mod == nil then - mod="" + mod = "" end return mod:gsub(" ", "\r\n") end @@ -131,45 +126,44 @@ function modules.write(self, section, value) end -- END Modules --- BEGIN Determine Modules +-- BEGIN Determine Modules determine_modules = global_section:option(Button, "determine_modules", translate("Determine Modules Automatically")) determine_modules:depends("unload_modules", global_unload_modules.enabled); function determine_modules.write(self, section) - output = luci.sys.exec("/usr/bin/wifi_schedule.sh getmodules") + output = sys.exec("/usr/bin/wifi_schedule.sh getmodules") modules:write(section, output) end -- END Determine Modules - -- BEGIN Section -d = m:section(TypedSection, "entry", "Schedule events") -d.addremove = true +d = m:section(TypedSection, "entry", translate("Schedule events")) +d.addremove = true --d.anonymous = true -- END Section -- BEGIN Enable Checkbox c = d:option(Flag, "enabled", translate("Enable")) -c.optional=false; c.rmempty = false; +c.optional = false +c.rmempty = false -- END Enable Checkbox - -- BEGIN Day(s) of Week dow = d:option(MultiValue, "daysofweek", translate("Day(s) of Week")) dow.optional = false dow.rmempty = false -dow:value("Monday") -dow:value("Tuesday") -dow:value("Wednesday") -dow:value("Thursday") -dow:value("Friday") -dow:value("Saturday") -dow:value("Sunday") +dow:value("Monday", translate("Monday")) +dow:value("Tuesday", translate("Tuesday")) +dow:value("Wednesday", translate("Wednesday")) +dow:value("Thursday", translate("Thursday")) +dow:value("Friday", translate("Friday")) +dow:value("Saturday", translate("Saturday")) +dow:value("Sunday", translate("Sunday")) -- END Day(s) of Weel -- BEGIN Start Wifi Dropdown starttime = d:option(Value, "starttime", translate("Start WiFi")) -starttime.optional=false; -starttime.rmempty = false; +starttime.optional = false +starttime.rmempty = false starttime:value("00:00") starttime:value("01:00") starttime:value("02:00") @@ -198,14 +192,12 @@ starttime:value("23:00") function starttime.validate(self, value, d) return time_validator(self, value, translate("Start Time")) end - -- END Start Wifi Dropdown - -- BEGIN Stop Wifi Dropdown -stoptime = d:option(Value, "stoptime", translate("Stop WiFi")) -stoptime.optional=false; -stoptime.rmempty = false; +stoptime = d:option(Value, "stoptime", translate("Stop WiFi")) +stoptime.optional = false +stoptime.rmempty = false stoptime:value("00:00") stoptime:value("01:00") stoptime:value("02:00") @@ -236,15 +228,14 @@ function stoptime.validate(self, value, d) end -- END Stop Wifi Dropdown - -- BEGIN Force Wifi Stop Checkbox force_wifi = d:option(Flag, "forcewifidown", translate("Force disabling wifi even if stations associated")) force_wifi.default = false -force_wifi.rmempty = false; +force_wifi.rmempty = false function force_wifi.validate(self, value, d) if value == "0" then - if file_exists("/usr/bin/iwinfo") then + if fs.access("/usr/bin/iwinfo") then return value else return nil, translate("Could not find required programm /usr/bin/iwinfo") @@ -255,5 +246,4 @@ function force_wifi.validate(self, value, d) end -- END Force Wifi Checkbox - return m diff --git a/applications/luci-app-wifischedule/po/ja/wifischedule.po b/applications/luci-app-wifischedule/po/ja/wifischedule.po index 8ece42f1c3..2bf2613fb8 100644 --- a/applications/luci-app-wifischedule/po/ja/wifischedule.po +++ b/applications/luci-app-wifischedule/po/ja/wifischedule.po @@ -1,26 +1,30 @@ msgid "" msgstr "" -"Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: \n" "POT-Creation-Date: \n" "PO-Revision-Date: \n" +"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n" "Language-Team: \n" +"Language: ja\n" "MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 1.8.11\n" -"Last-Translator: INAGAKI Hiroshi <musashino.open@gmail.com>\n" "Plural-Forms: nplurals=1; plural=0;\n" -"Language: ja\n" msgid "Activate wifi" msgstr "WiFiのアクティブ化" msgid "Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi" -msgstr "必須の /usr/bin/wifi_schedule.sh または /sbin/wifi が見つかりませんでした。" +msgstr "" +"必須の /usr/bin/wifi_schedule.sh または /sbin/wifi が見つかりませんでした。" msgid "Could not find required programm /usr/bin/iwinfo" msgstr "必須のプログラム /usr/bin/iwinfo が見つかりませんでした。" +msgid "Cron Jobs" +msgstr "Cronジョブ" + msgid "Day(s) of Week" msgstr "曜日" @@ -39,17 +43,32 @@ msgstr "WiFiの強制終了" msgid "Enable" msgstr "有効" -msgid "Enable logging" -msgstr "ログの有効化" - msgid "Enable Wifi Schedule" msgstr "WiFi スケジュールの有効化" +msgid "Enable logging" +msgstr "ログの有効化" + msgid "Force disabling wifi even if stations associated" msgstr "ステーションが関連付けられていてもWiFiを強制終了する" -msgid "Unload Modules (experimental; saves more power)" -msgstr "モジュールのアンロード(実験的、より省電力)" +msgid "Friday" +msgstr "金曜日" + +msgid "Global Settings" +msgstr "全体設定" + +msgid "Monday" +msgstr "月曜日" + +msgid "Saturday" +msgstr "土曜日" + +msgid "Schedule" +msgstr "スケジュール" + +msgid "Schedule events" +msgstr "実行スケジュール" msgid "Start Time" msgstr "開始時刻" @@ -63,5 +82,32 @@ msgstr "停止時刻" msgid "Stop WiFi" msgstr "WiFiの停止" +msgid "Sunday" +msgstr "日曜日" + +msgid "The value %s is invalid" +msgstr "" + +msgid "Thursday" +msgstr "木曜日" + +msgid "Tuesday" +msgstr "火曜日" + +msgid "Unload Modules (experimental; saves more power)" +msgstr "モジュールのアンロード(実験的、より省電力)" + +msgid "View Cron Jobs" +msgstr "Cronジョブの確認" + +msgid "View Logfile" +msgstr "ログファイルの確認" + +msgid "Wednesday" +msgstr "水曜日" + msgid "Wifi Schedule" msgstr "WiFi スケジュール" + +msgid "Wifi Schedule Logfile" +msgstr "WiFiスケジュール ログファイル" diff --git a/applications/luci-app-wifischedule/po/templates/wifischedule.pot b/applications/luci-app-wifischedule/po/templates/wifischedule.pot index 7d059e3fe7..639c432e5e 100644 --- a/applications/luci-app-wifischedule/po/templates/wifischedule.pot +++ b/applications/luci-app-wifischedule/po/templates/wifischedule.pot @@ -10,6 +10,9 @@ msgstr "" msgid "Could not find required programm /usr/bin/iwinfo" msgstr "" +msgid "Cron Jobs" +msgstr "" + msgid "Day(s) of Week" msgstr "" @@ -28,16 +31,31 @@ msgstr "" msgid "Enable" msgstr "" -msgid "Enable logging" +msgid "Enable Wifi Schedule" msgstr "" -msgid "Enable Wifi Schedule" +msgid "Enable logging" msgstr "" msgid "Force disabling wifi even if stations associated" msgstr "" -msgid "Unload Modules (experimental; saves more power)" +msgid "Friday" +msgstr "" + +msgid "Global Settings" +msgstr "" + +msgid "Monday" +msgstr "" + +msgid "Saturday" +msgstr "" + +msgid "Schedule" +msgstr "" + +msgid "Schedule events" msgstr "" msgid "Start Time" @@ -52,5 +70,32 @@ msgstr "" msgid "Stop WiFi" msgstr "" +msgid "Sunday" +msgstr "" + +msgid "The value %s is invalid" +msgstr "" + +msgid "Thursday" +msgstr "" + +msgid "Tuesday" +msgstr "" + +msgid "Unload Modules (experimental; saves more power)" +msgstr "" + +msgid "View Cron Jobs" +msgstr "" + +msgid "View Logfile" +msgstr "" + +msgid "Wednesday" +msgstr "" + msgid "Wifi Schedule" msgstr "" + +msgid "Wifi Schedule Logfile" +msgstr "" diff --git a/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po b/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po new file mode 100644 index 0000000000..ab3a8d0bf3 --- /dev/null +++ b/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po @@ -0,0 +1,101 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8\n" + +msgid "Activate wifi" +msgstr "激活 WiFi" + +msgid "Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi" +msgstr "无法找到必需的 /usr/bin/wifi_schedule.sh 或 /sbin/wifi" + +msgid "Could not find required programm /usr/bin/iwinfo" +msgstr "无法找到必需程序:/usr/bin/iwinfo" + +msgid "Cron Jobs" +msgstr "计划任务" + +msgid "Day(s) of Week" +msgstr "星期" + +msgid "Defines a schedule when to turn on and off wifi." +msgstr "定义自动打开和关闭 WiFi 的计划表" + +msgid "Determine Modules Automatically" +msgstr "自动确定模块" + +msgid "Disable wifi gracefully" +msgstr "正常关闭 WiFi" + +msgid "Disabled wifi forced" +msgstr "强制关闭 WiFi" + +msgid "Enable" +msgstr "启用" + +msgid "Enable Wifi Schedule" +msgstr "启用 WiFi 计划" + +msgid "Enable logging" +msgstr "启用日志" + +msgid "Force disabling wifi even if stations associated" +msgstr "即使有设备连接也强制关闭 WiFi" + +msgid "Friday" +msgstr "星期五" + +msgid "Global Settings" +msgstr "全局设置" + +msgid "Monday" +msgstr "星期一" + +msgid "Saturday" +msgstr "星期六" + +msgid "Schedule" +msgstr "计划表" + +msgid "Schedule events" +msgstr "计划事件" + +msgid "Start Time" +msgstr "启动时间" + +msgid "Start WiFi" +msgstr "启动 WiFi" + +msgid "Stop Time" +msgstr "关闭时间" + +msgid "Stop WiFi" +msgstr "关闭 WiFi" + +msgid "Sunday" +msgstr "星期日" + +msgid "The value %s is invalid" +msgstr "%s 的值无效" + +msgid "Thursday" +msgstr "星期四" + +msgid "Tuesday" +msgstr "星期二" + +msgid "Unload Modules (experimental; saves more power)" +msgstr "卸载模块(实验性的,节省更多电量)" + +msgid "View Cron Jobs" +msgstr "查看计划任务" + +msgid "View Logfile" +msgstr "查看日志文件" + +msgid "Wednesday" +msgstr "星期三" + +msgid "Wifi Schedule" +msgstr "WiFi 计划" + +msgid "Wifi Schedule Logfile" +msgstr "WiFi 计划日志文件" diff --git a/collections/luci-ssl-openssl/Makefile b/collections/luci-ssl-openssl/Makefile index 37442a37dc..b5f4b091b1 100644 --- a/collections/luci-ssl-openssl/Makefile +++ b/collections/luci-ssl-openssl/Makefile @@ -11,7 +11,9 @@ LUCI_BASENAME:=ssl-openssl LUCI_TITLE:=LuCI with HTTPS support (OpenSSL as SSL backend) LUCI_DESCRIPTION:=LuCI with OpenSSL as the SSL backend (libustream-openssl). \ - Note: px5g still requires libpolarssl + Note: px5g still requires libmbedtls (in LEDE) or libpolarssl (in Openwrt). \ + In LEDE it is also possible to replace px5g with openssl-util as uhttpd can \ + also generate keys with openssl commandline tools if px5g is not installed. LUCI_DEPENDS:=+luci +libustream-openssl +px5g include ../../luci.mk diff --git a/contrib/package/community-profiles/files/etc/config/profile_berlin b/contrib/package/community-profiles/files/etc/config/profile_berlin index 7fff870d41..1bfc8ed7d7 100644 --- a/contrib/package/community-profiles/files/etc/config/profile_berlin +++ b/contrib/package/community-profiles/files/etc/config/profile_berlin @@ -8,6 +8,7 @@ config 'community' 'profile' option 'splash_prefix' '27' option 'latitude' '52.52075' option 'longitude' '13.40948' + option 'owm_api' 'http://util.berlin.freifunk.net' config 'defaults' 'wifi_device' option 'channel' '13' diff --git a/modules/luci-base/Makefile b/modules/luci-base/Makefile index ce7d40dac7..753ff259fa 100644 --- a/modules/luci-base/Makefile +++ b/modules/luci-base/Makefile @@ -15,8 +15,8 @@ LUCI_TITLE:=LuCI core libraries LUCI_DEPENDS:=+lua +libuci-lua +luci-lib-nixio +luci-lib-ip +rpcd +libubus-lua +luci-lib-jsonc PKG_SOURCE:=LuaSrcDiet-0.12.1.tar.bz2 -PKG_SOURCE_URL:=https://luasrcdiet.googlecode.com/files -PKG_MD5SUM:=8a0812701e29b6715e4d76f2f118264a +PKG_SOURCE_URL:=https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/luasrcdiet +PKG_MD5SUM:=ed7680f2896269ae8633756e7edcf09050812f78c8f49e280e63c30d14f35aea HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/LuaSrcDiet-0.12.1 diff --git a/modules/luci-base/po/zh-cn/base.po b/modules/luci-base/po/zh-cn/base.po index 1f0bf97fe3..2747da544b 100644 --- a/modules/luci-base/po/zh-cn/base.po +++ b/modules/luci-base/po/zh-cn/base.po @@ -3,21 +3,21 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-12-21 23:08+0200\n" -"PO-Revision-Date: 2015-12-20 13:14+0800\n" -"Last-Translator: GuoGuo <gch981213@gmail.com>\n" +"PO-Revision-Date: 2017-01-07 21:46+0800\n" +"Last-Translator: Hsing-Wang Liao <kuoruan@gmail.com>\n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 1.8.5\n" +"X-Generator: Poedit 1.8.11\n" "Language-Team: \n" msgid "%s is untagged in multiple VLANs!" -msgstr "" +msgstr "%s 在多个 VLAN 中未标记" msgid "(%d minute window, %d second interval)" -msgstr "(%d分钟信息,%d秒刷新)" +msgstr "(%d 分钟信息,%d 秒刷新)" msgid "(%s available)" msgstr "(%s 可用)" @@ -50,91 +50,89 @@ msgid "15 Minute Load:" msgstr "15分钟负载:" msgid "464XLAT (CLAT)" -msgstr "" +msgstr "464XLAT (CLAT)" msgid "5 Minute Load:" msgstr "5分钟负载:" msgid "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>" -msgstr "<abbr title=\"Basic Service Set Identifier\">BSSID</abbr>" +msgstr "<abbr title=\"基本服务集标识符\">BSSID</abbr>" msgid "<abbr title=\"Domain Name System\">DNS</abbr> query port" -msgstr "<abbr title=\"Domain Name System\">DNS</abbr> 查询端口" +msgstr "<abbr title=\"域名服务系统\">DNS</abbr> 查询端口" msgid "<abbr title=\"Domain Name System\">DNS</abbr> server port" -msgstr "<abbr title=\"Domain Name System\">DNS</abbr> 服务器端口" +msgstr "<abbr title=\"域名服务系统\">DNS</abbr> 服务器端口" msgid "" "<abbr title=\"Domain Name System\">DNS</abbr> servers will be queried in the " "order of the resolvfile" -msgstr "将会按照指定的顺序查询<abbr title=\"Domain Name System\">DNS</abbr>" +msgstr "将会按照指定的顺序查询<abbr title=\"域名服务系统\">DNS</abbr>" msgid "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" -msgstr "<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgstr "<abbr title=\"扩展服务集标识符\">ESSID</abbr>" msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Address" -msgstr "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-地址" +msgstr "<abbr title=\"互联网协议第4版\">IPv4</abbr>-地址" msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Gateway" -msgstr "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-网关" +msgstr "<abbr title=\"互联网协议第4版\">IPv4</abbr>-网关" msgid "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Netmask" -msgstr "<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-子网掩码" +msgstr "<abbr title=\"互联网协议第4版\">IPv4</abbr>-子网掩码" msgid "" "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Address or Network " "(CIDR)" msgstr "" -"<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-地址或超网() (<abbr " -"title=\"无类别域间路由\">CIDR</abbr>)" +"<abbr title=\"互联网协议第6版\">IPv6</abbr>-地址或超网(<abbr title=\"无类别域" +"间路由\">CIDR</abbr>)" msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Gateway" -msgstr "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-网关" +msgstr "<abbr title=\"互联网协议第6版\">IPv6</abbr>-网关" msgid "<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Suffix (hex)" -msgstr "" -"<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-后缀(十六进制)" +msgstr "<abbr title=\"互联网协议第6版\">IPv6</abbr>-后缀(十六进制)" msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Configuration" -msgstr "<abbr title=\"Light Emitting Diode\">LED</abbr>配置" +msgstr "<abbr title=\"发光二极管\">LED</abbr>配置" msgid "<abbr title=\"Light Emitting Diode\">LED</abbr> Name" -msgstr "<abbr title=\"Light Emitting Diode\">LED</abbr>名称" +msgstr "<abbr title=\"发光二极管\">LED</abbr>名称" msgid "<abbr title=\"Media Access Control\">MAC</abbr>-Address" -msgstr "<abbr title=\"Media Access Control\">MAC</abbr>-地址" +msgstr "<abbr title=\"介质访问控制\">MAC</abbr>-地址" msgid "" "<abbr title=\"maximal\">Max.</abbr> <abbr title=\"Dynamic Host Configuration " "Protocol\">DHCP</abbr> leases" -msgstr "" -"最大<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>分配数量" +msgstr "最大<abbr title=\"动态主机配置协议\">DHCP</abbr>分配数量" msgid "" "<abbr title=\"maximal\">Max.</abbr> <abbr title=\"Extension Mechanisms for " "Domain Name System\">EDNS0</abbr> packet size" -msgstr "最大<abbr title=\"DNS扩展名\">EDNS0</abbr>数据包大小" +msgstr "最大<abbr title=\"DNS扩展名机制\">EDNS0</abbr>数据包大小" msgid "<abbr title=\"maximal\">Max.</abbr> concurrent queries" -msgstr "<abbr title=\"maximal\">最大</abbr>并发查询数" +msgstr "最大并发查询数" msgid "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>" msgstr "<abbr title='Pairwise: %s / Group: %s'>%s - %s</abbr>" msgid "A43C + J43 + A43" -msgstr "" +msgstr "A43C + J43 + A43" msgid "A43C + J43 + A43 + V43" -msgstr "" +msgstr "A43C + J43 + A43 + V43" msgid "ADSL" msgstr "ADSL" msgid "AICCU (SIXXS)" -msgstr "" +msgstr "AICCU (SIXXS)" msgid "ANSI T1.413" -msgstr "" +msgstr "ANSI T1.413" msgid "APN" msgstr "APN" @@ -146,7 +144,7 @@ msgid "ARP retry threshold" msgstr "ARP重试阈值" msgid "ATM (Asynchronous Transfer Mode)" -msgstr "" +msgstr "ATM(异步传输模式)" msgid "ATM Bridges" msgstr "ATM桥接" @@ -169,10 +167,10 @@ msgid "ATM device number" msgstr "ATM设备号码" msgid "ATU-C System Vendor ID" -msgstr "" +msgstr "ATU-C系统供应商ID" msgid "AYIYA" -msgstr "" +msgstr "AYIYA" msgid "Access Concentrator" msgstr "接入集中器" @@ -190,10 +188,10 @@ msgid "Activate this network" msgstr "激活此网络" msgid "Active <abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-Routes" -msgstr "活动的<abbr title=\"Internet Protocol Version 4\">IPv4</abbr>-链路" +msgstr "活动的<abbr title=\"互联网协议第4版\">IPv4</abbr>-链路" msgid "Active <abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-Routes" -msgstr "活动的<abbr title=\"Internet Protocol Version 6\">IPv6</abbr>-链路" +msgstr "活动的<abbr title=\"互联网协议第6版\">IPv6</abbr>-链路" msgid "Active Connections" msgstr "活动连接" @@ -220,7 +218,7 @@ msgid "Additional Hosts files" msgstr "额外的HOSTS文件" msgid "Additional servers file" -msgstr "" +msgstr "额外的SERVERS文件" msgid "Address" msgstr "地址" @@ -235,7 +233,7 @@ msgid "Advanced Settings" msgstr "高级设置" msgid "Aggregate Transmit Power(ACTATP)" -msgstr "" +msgstr "总发射功率(ACTATP)" msgid "Alert" msgstr "警戒" @@ -243,13 +241,13 @@ msgstr "警戒" msgid "" "Allocate IP addresses sequentially, starting from the lowest available " "address" -msgstr "" +msgstr "从最低可用地址开始顺序分配IP地址" msgid "Allocate IP sequentially" -msgstr "" +msgstr "顺序分配IP" msgid "Allow <abbr title=\"Secure Shell\">SSH</abbr> password authentication" -msgstr "允许<abbr title=\"Secure Shell\">SSH</abbr>密码验证" +msgstr "允许<abbr title=\"安全外壳协议\">SSH</abbr>密码验证" msgid "Allow all except listed" msgstr "仅允许列表外" @@ -264,7 +262,7 @@ msgid "Allow remote hosts to connect to local SSH forwarded ports" msgstr "允许远程主机连接到本地SSH转发端口" msgid "Allow root logins with password" -msgstr "root权限登录" +msgstr "允许root用户凭密码登录" msgid "Allow the <em>root</em> user to login with password" msgstr "允许<em>root</em>用户凭密码登录" @@ -274,68 +272,68 @@ msgid "" msgstr "允许127.0.0.0/8回环范围内的上行响应,例如:RBL服务" msgid "Allowed IPs" -msgstr "" +msgstr "允许的IP" msgid "" "Also see <a href=\"https://www.sixxs.net/faq/connectivity/?faq=comparison" "\">Tunneling Comparison</a> on SIXXS" msgstr "" "也请查看SIXXS上的<a href=\"https://www.sixxs.net/faq/connectivity/?" -"faq=comparison\">Tunneling Comparison</a> " +"faq=comparison\">隧道对比</a>" msgid "Always announce default router" msgstr "总是广播默认路由" msgid "An additional network will be created if you leave this checked." -msgstr "" +msgstr "如果选中此复选框,则会创建一个附加网络。" msgid "Annex" -msgstr "" +msgstr "Annex" msgid "Annex A + L + M (all)" -msgstr "" +msgstr "Annex A + L + M (全部)" msgid "Annex A G.992.1" -msgstr "" +msgstr "Annex A G.992.1" msgid "Annex A G.992.2" -msgstr "" +msgstr "Annex A G.992.2" msgid "Annex A G.992.3" -msgstr "" +msgstr "Annex A G.992.3" msgid "Annex A G.992.5" -msgstr "" +msgstr "Annex A G.992.5" msgid "Annex B (all)" -msgstr "" +msgstr "Annex B (全部)" msgid "Annex B G.992.1" -msgstr "" +msgstr "Annex B G.992.1" msgid "Annex B G.992.3" -msgstr "" +msgstr "Annex B G.992.3" msgid "Annex B G.992.5" -msgstr "" +msgstr "Annex B G.992.5" msgid "Annex J (all)" -msgstr "" +msgstr "Annex J (全部)" msgid "Annex L G.992.3 POTS 1" -msgstr "" +msgstr "Annex L G.992.3 POTS 1" msgid "Annex M (all)" -msgstr "" +msgstr "Annex M (全部)" msgid "Annex M G.992.3" -msgstr "" +msgstr "Annex M G.992.3" msgid "Annex M G.992.5" -msgstr "" +msgstr "Annex M G.992.5" msgid "Announce as default router even if no public prefix is available." -msgstr "即使没有可用的公共前缀也广播默认路由" +msgstr "即使没有可用的公共前缀也广播默认路由。" msgid "Announced DNS domains" msgstr "广播的DNS域名" @@ -344,7 +342,7 @@ msgid "Announced DNS servers" msgstr "广播的DNS服务器" msgid "Anonymous Identity" -msgstr "" +msgstr "匿名身份" msgid "Anonymous Mount" msgstr "自动挂载未配置的磁盘分区" @@ -379,7 +377,7 @@ msgstr "分配接口..." msgid "" "Assign prefix parts using this hexadecimal subprefix ID for this interface." -msgstr "" +msgstr "指定此接口使用的十六进制子ID前缀部分" msgid "Associated Stations" msgstr "已连接站点" @@ -388,7 +386,7 @@ msgid "Atheros 802.11%s Wireless Controller" msgstr "Qualcomm/Atheros 802.11%s 无线网卡" msgid "Auth Group" -msgstr "" +msgstr "认证组" msgid "AuthGroup" msgstr "认证组" @@ -397,7 +395,7 @@ msgid "Authentication" msgstr "认证" msgid "Authentication Type" -msgstr "" +msgstr "认证类型" msgid "Authoritative" msgstr "授权的唯一DHCP服务器" @@ -418,10 +416,10 @@ msgid "Automatically check filesystem for errors before mounting" msgstr "在挂载前自动检查文件系统错误" msgid "Automatically mount filesystems on hotplug" -msgstr "通过hotplug自动挂载磁盘" +msgstr "通过Hotplug自动挂载磁盘" msgid "Automatically mount swap on hotplug" -msgstr "通过hotplug自动挂载Swap分区" +msgstr "通过Hotplug自动挂载Swap分区" msgid "Automount Filesystem" msgstr "自动挂载磁盘" @@ -439,13 +437,13 @@ msgid "Average:" msgstr "平均:" msgid "B43 + B43C" -msgstr "" +msgstr "B43 + B43C" msgid "B43 + B43C + V43" -msgstr "" +msgstr "B43 + B43C + V43" msgid "BR / DMR / AFTR" -msgstr "" +msgstr "BR / DMR / AFTR" msgid "BSSID" msgstr "BSSID" @@ -495,13 +493,13 @@ msgstr "" "备份文件。" msgid "Bind interface" -msgstr "" +msgstr "绑定接口" msgid "Bind only to specific interfaces rather than wildcard address." -msgstr "" +msgstr "仅绑定到特定接口,而不是全部地址。" msgid "Bind the tunnel to this interface (optional)." -msgstr "" +msgstr "将隧道绑定到此接口(可选)。" msgid "Bitrate" msgstr "传输速率" @@ -539,7 +537,7 @@ msgid "Buttons" msgstr "按键" msgid "CA certificate; if empty it will be saved after the first connection." -msgstr "CA证书.如果留空的话证书将在第一次连接时被保存." +msgstr "CA证书,如果留空的话证书将在第一次连接时被保存。" msgid "CPU usage (%)" msgstr "CPU使用率(%)" @@ -590,7 +588,7 @@ msgid "Cipher" msgstr "算法" msgid "Cisco UDP encapsulation" -msgstr "" +msgstr "Cisco UDP封装" msgid "" "Click \"Generate archive\" to download a tar archive of the current " @@ -696,7 +694,7 @@ msgstr "自定义的软件源" msgid "" "Customizes the behaviour of the device <abbr title=\"Light Emitting Diode" "\">LED</abbr>s if possible." -msgstr "自定义<abbr title=\"Light Emitting Diode\">LED</abbr>的活动状态。" +msgstr "自定义<abbr title=\"发光二极管\">LED</abbr>的活动状态。" msgid "DHCP Leases" msgstr "DHCP分配" @@ -732,34 +730,34 @@ msgid "DNS forwardings" msgstr "DNS转发" msgid "DNS-Label / FQDN" -msgstr "" +msgstr "DNS-Label / FQDN" msgid "DNSSEC" -msgstr "" +msgstr "DNSSEC" msgid "DNSSEC check unsigned" -msgstr "" +msgstr "DNSSEC未签名检查" msgid "DPD Idle Timeout" -msgstr "" +msgstr "DPD空闲超时" msgid "DS-Lite AFTR address" -msgstr "" +msgstr "DS-Lite AFTR地址" msgid "DSL" -msgstr "" +msgstr "DSL" msgid "DSL Status" -msgstr "" +msgstr "DSL状态" msgid "DSL line mode" -msgstr "" +msgstr "DSL线路模式" msgid "DUID" -msgstr "DUID(DHCP唯一标识符)" +msgstr "DUID (DHCP唯一标识符)" msgid "Data Rate" -msgstr "" +msgstr "数据速率" msgid "Debug" msgstr "调试" @@ -771,7 +769,7 @@ msgid "Default gateway" msgstr "默认网关" msgid "Default is stateless + stateful" -msgstr "" +msgstr "默认是无状态 + 有状态" msgid "Default route" msgstr "默认路由" @@ -832,17 +830,16 @@ msgstr "禁用" msgid "" "Disable <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr> for " "this interface." -msgstr "" -"禁用本接口的<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>。" +msgstr "禁用本接口的<abbr title=\"动态主机配置协议\">DHCP</abbr>。" msgid "Disable DNS setup" msgstr "停用DNS设定" msgid "Disable Encryption" -msgstr "" +msgstr "禁用加密" msgid "Disable HW-Beacon timer" -msgstr "停用 HW-Beacon 计时器" +msgstr "停用HW-Beacon计时器" msgid "Disabled" msgstr "禁用" @@ -891,7 +888,7 @@ msgid "Domain whitelist" msgstr "域名白名单" msgid "Don't Fragment" -msgstr "" +msgstr "禁止碎片" msgid "" "Don't forward <abbr title=\"Domain Name System\">DNS</abbr>-Requests without " @@ -911,14 +908,14 @@ msgid "" "Dropbear offers <abbr title=\"Secure Shell\">SSH</abbr> network shell access " "and an integrated <abbr title=\"Secure Copy\">SCP</abbr> server" msgstr "" -"Dropbear提供了集成的<abbr title=\"Secure Copy\">SCP</abbr>服务器和基于<abbr " -"title=\"Secure Shell\">SSH</abbr>的shell访问" +"Dropbear提供了集成的<abbr title=\"安全复制\">SCP</abbr>服务器和基于<abbr " +"title=\"安全外壳协议\">SSH</abbr>的Shell访问" msgid "Dual-Stack Lite (RFC6333)" -msgstr "" +msgstr "Dual-Stack Lite (RFC6333)" msgid "Dynamic <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>" -msgstr "动态<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>" +msgstr "动态<abbr title=\"动态主机配置协议\">DHCP</abbr>" msgid "Dynamic tunnel" msgstr "动态隧道" @@ -929,10 +926,10 @@ msgid "" msgstr "动态分配DHCP地址。如果禁用,则只能为静态租用表中的客户端提供网络服务。" msgid "EA-bits length" -msgstr "" +msgstr "EA位长度" msgid "EAP-Method" -msgstr "EAP-Method" +msgstr "EAP类型" msgid "Edit" msgstr "修改" @@ -955,13 +952,13 @@ msgid "Enable" msgstr "启用" msgid "Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>" -msgstr "开启<abbr title=\"Spanning Tree Protocol\">STP</abbr>" +msgstr "开启<abbr title=\"生成树协议\">STP</abbr>" msgid "Enable HE.net dynamic endpoint update" msgstr "启用HE.net动态终端更新" msgid "Enable IPv6 negotiation" -msgstr "" +msgstr "启用IPv6协商" msgid "Enable IPv6 negotiation on the PPP link" msgstr "在PPP链路上启用IPv6协商" @@ -973,7 +970,7 @@ msgid "Enable NTP client" msgstr "启用NTP客户端" msgid "Enable Single DES" -msgstr "" +msgstr "启用单个DES" msgid "Enable TFTP server" msgstr "启用TFTP服务器" @@ -982,7 +979,7 @@ msgid "Enable VLAN functionality" msgstr "启用VLAN" msgid "Enable WPS pushbutton, requires WPA(2)-PSK" -msgstr "启用WPS按键配置.要求使用WPA(2)-PSK" +msgstr "启用WPS按键配置,要求使用WPA(2)-PSK" msgid "Enable learning and aging" msgstr "启用智能交换学习" @@ -994,7 +991,7 @@ msgid "Enable mirroring of outgoing packets" msgstr "启用流出数据包镜像" msgid "Enable the DF (Don't Fragment) flag of the encapsulating packets." -msgstr "" +msgstr "启用封装数据包的DF(禁止碎片)标志。" msgid "Enable this mount" msgstr "启用挂载点" @@ -1018,10 +1015,10 @@ msgid "Encryption" msgstr "加密" msgid "Endpoint Host" -msgstr "" +msgstr "端点主机" msgid "Endpoint Port" -msgstr "" +msgstr "端点端口" msgid "Erasing..." msgstr "擦除中..." @@ -1030,7 +1027,7 @@ msgid "Error" msgstr "错误" msgid "Errored seconds (ES)" -msgstr "" +msgstr "错误秒数(ES)" msgid "Ethernet Adapter" msgstr "以太网适配器" @@ -1039,7 +1036,7 @@ msgid "Ethernet Switch" msgstr "以太网交换机" msgid "Exclude interfaces" -msgstr "" +msgstr "排除接口" msgid "Expand hosts" msgstr "扩展HOSTS文件中的主机后缀" @@ -1047,22 +1044,21 @@ msgstr "扩展HOSTS文件中的主机后缀" msgid "Expires" msgstr "到期时间" -#, fuzzy msgid "" "Expiry time of leased addresses, minimum is 2 minutes (<code>2m</code>)." -msgstr "地址租期,最小2分钟(<code>2m</code>)。" +msgstr "租用地址的到期时间,最短2分钟(<code>2m</code>)。" msgid "External" -msgstr "" +msgstr "远程" msgid "External system log server" -msgstr "远程log服务器" +msgstr "远程日志服务器" msgid "External system log server port" -msgstr "远程log服务器端口" +msgstr "远程日志服务器端口" msgid "External system log server protocol" -msgstr "" +msgstr "远程日志服务器协议" msgid "Extra SSH command options" msgstr "额外的SSH命令选项" @@ -1114,7 +1110,7 @@ msgid "Firewall Status" msgstr "防火墙状态" msgid "Firmware File" -msgstr "" +msgstr "固件文件" msgid "Firmware Version" msgstr "固件版本" @@ -1153,16 +1149,16 @@ msgid "Force TKIP and CCMP (AES)" msgstr "TKIP和CCMP(AES)混合加密" msgid "Force use of NAT-T" -msgstr "" +msgstr "强制使用NAT-T" msgid "Form token mismatch" -msgstr "" +msgstr "表单令牌不匹配" msgid "Forward DHCP traffic" msgstr "转发DHCP数据包" msgid "Forward Error Correction Seconds (FECS)" -msgstr "" +msgstr "前向纠错秒数(FECS)" msgid "Forward broadcast traffic" msgstr "转发广播数据包" @@ -1186,6 +1182,8 @@ msgid "" "Further information about WireGuard interfaces and peers at <a href=\"http://" "wireguard.io\">wireguard.io</a>." msgstr "" +"有关WireGuard接口和Peer的更多信息:<a href=\"http://wireguard.io\">wireguard." +"io</a>" msgid "GHz" msgstr "GHz" @@ -1206,7 +1204,7 @@ msgid "General Setup" msgstr "基本设置" msgid "General options for opkg" -msgstr "opkg基础配置" +msgstr "Opkg基础配置" msgid "Generate Config" msgstr "生成配置" @@ -1233,7 +1231,7 @@ msgid "Go to relevant configuration page" msgstr "跳转到相关的配置页面" msgid "Group Password" -msgstr "" +msgstr "组密码" msgid "Guest" msgstr "访客" @@ -1245,7 +1243,7 @@ msgid "HE.net username" msgstr "HE.net用户名" msgid "HT mode (802.11n)" -msgstr "" +msgstr "HT模式(802.11n)" msgid "Handler" msgstr "处理程序" @@ -1254,7 +1252,7 @@ msgid "Hang Up" msgstr "挂起" msgid "Header Error Code Errors (HEC)" -msgstr "" +msgstr "头错误代码错误(HEC)" msgid "Heartbeat" msgstr "心跳" @@ -1273,10 +1271,10 @@ msgid "Hermes 802.11b Wireless Controller" msgstr "Hermes 802.11b 无线网卡" msgid "Hide <abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" -msgstr "隐藏<abbr title=\"Extended Service Set Identifier\">ESSID</abbr>" +msgstr "隐藏<abbr title=\"扩展服务集标识符\">ESSID</abbr>" msgid "Host" -msgstr "" +msgstr "主机" msgid "Host entries" msgstr "主机目录" @@ -1300,7 +1298,7 @@ msgid "Hybrid" msgstr "混合" msgid "IKE DH Group" -msgstr "" +msgstr "IKE DH组" msgid "IP address" msgstr "IP地址" @@ -1345,7 +1343,7 @@ msgid "IPv4-Address" msgstr "IPv4-地址" msgid "IPv4-in-IPv4 (RFC2003)" -msgstr "" +msgstr "IPv4-in-IPv4 (RFC2003)" msgid "IPv6" msgstr "IPv6" @@ -1372,7 +1370,7 @@ msgid "IPv6 address delegated to the local tunnel endpoint (optional)" msgstr "绑定到本地隧道终点的IPv6地址(可选)" msgid "IPv6 assignment hint" -msgstr "" +msgstr "IPv6分配提示" msgid "IPv6 assignment length" msgstr "IPv6分配长度" @@ -1408,10 +1406,10 @@ msgid "Identity" msgstr "鉴权" msgid "If checked, 1DES is enaled" -msgstr "" +msgstr "选中以启用1DES" msgid "If checked, encryption is disabled" -msgstr "" +msgstr "选中以禁用加密" msgid "" "If specified, mount the device by its UUID instead of a fixed device node" @@ -1455,12 +1453,14 @@ msgid "" "In order to prevent unauthorized access to the system, your request has been " "blocked. Click \"Continue »\" below to return to the previous page." msgstr "" +"为了防止对系统的未授权访问,您的请求已被阻止。点击下面的 “继续 »” 来返回上一" +"页。" msgid "Inactivity timeout" msgstr "活动超时" msgid "Inbound:" -msgstr "入站:" +msgstr "入站:" msgid "Info" msgstr "信息" @@ -1475,10 +1475,10 @@ msgid "Install" msgstr "安装" msgid "Install iputils-traceroute6 for IPv6 traceroute" -msgstr "安装iputils-traceroute6以进行IPv6 traceroute" +msgstr "安装 iputils-traceroute6 以进行IPv6 traceroute" msgid "Install package %q" -msgstr "安装软件包%q" +msgstr "安装软件包 %q" msgid "Install protocol extensions..." msgstr "安装扩展协议..." @@ -1502,10 +1502,10 @@ msgid "Interface is shutting down..." msgstr "正在关闭接口..." msgid "Interface name" -msgstr "" +msgstr "接口名称" msgid "Interface not present or not connected yet." -msgstr "接口不存在或未连接" +msgstr "接口不存在或未连接。" msgid "Interface reconnected" msgstr "接口已重新连接" @@ -1517,7 +1517,7 @@ msgid "Interfaces" msgstr "接口" msgid "Internal" -msgstr "" +msgstr "内部" msgid "Internal Server Error" msgstr "内部服务器错误" @@ -1526,19 +1526,18 @@ msgid "Invalid" msgstr "无效" msgid "Invalid VLAN ID given! Only IDs between %d and %d are allowed." -msgstr "无效的VLAN ID! 只有 %d 和 %d 之间的ID有效。" +msgstr "无效的VLAN ID!只有 %d 和 %d 之间的ID有效。" msgid "Invalid VLAN ID given! Only unique IDs are allowed" -msgstr "无效的VLAN ID! 只允许唯一的ID。" +msgstr "无效的VLAN ID!只允许唯一的ID。" msgid "Invalid username and/or password! Please try again." -msgstr "无效的用户名和/或密码! 请重试。" +msgstr "无效的用户名和/或密码!请重试。" -#, fuzzy msgid "" "It appears that you are trying to flash an image that does not fit into the " "flash memory, please verify the image file!" -msgstr "将要刷新的固件与本路由器不兼容,请重新验证固件文件。" +msgstr "你尝试刷写的固件与本路由器不兼容,请重新验证固件文件。" msgid "Java Script required!" msgstr "需要Java Script!" @@ -1547,10 +1546,10 @@ msgid "Join Network" msgstr "加入网络" msgid "Join Network: Wireless Scan" -msgstr "加入网络:搜索无线" +msgstr "加入网络:搜索无线" msgid "Joining Network: %q" -msgstr "" +msgstr "加入网络:%q" msgid "Keep settings" msgstr "保留配置" @@ -1595,13 +1594,13 @@ msgid "Language and Style" msgstr "语言和界面" msgid "Latency" -msgstr "" +msgstr "延迟" msgid "Leaf" -msgstr "叶子" +msgstr "叶状" msgid "Lease time" -msgstr "" +msgstr "租期" msgid "Lease validity time" msgstr "有效租期" @@ -1628,22 +1627,22 @@ msgid "Limit" msgstr "客户数" msgid "Limit DNS service to subnets interfaces on which we are serving DNS." -msgstr "" +msgstr "将DNS服务限制到我们提供DNS的子网接口。" msgid "Limit listening to these interfaces, and loopback." -msgstr "" +msgstr "仅监听这些接口和环回接口。" msgid "Line Attenuation (LATN)" -msgstr "" +msgstr "线路衰减(LATN)" msgid "Line Mode" -msgstr "" +msgstr "线路模式" msgid "Line State" msgstr "线路状态" msgid "Line Uptime" -msgstr "" +msgstr "线路运行时间" msgid "Link On" msgstr "活动链接" @@ -1654,7 +1653,7 @@ msgid "" msgstr "将指定的域名DNS解析转发到指定的DNS服务器(按照示例填写)" msgid "List of SSH key files for auth" -msgstr "" +msgstr "用于认证的SSH密钥文件列表" msgid "List of domains to allow RFC1918 responses for" msgstr "允许RFC1918响应的域名列表" @@ -1663,10 +1662,10 @@ msgid "List of hosts that supply bogus NX domain results" msgstr "允许虚假空域名响应的服务器列表" msgid "Listen Interfaces" -msgstr "" +msgstr "监听接口" msgid "Listen Port" -msgstr "" +msgstr "监听端口" msgid "Listen only on the given interface or, if unspecified, on all" msgstr "监听指定的接口;未指定则监听全部" @@ -1684,7 +1683,7 @@ msgid "Loading" msgstr "加载中" msgid "Local IP address to assign" -msgstr "" +msgstr "要分配的本地IP地址" msgid "Local IPv4 address" msgstr "本地IPv4地址" @@ -1693,7 +1692,7 @@ msgid "Local IPv6 address" msgstr "本地IPv6地址" msgid "Local Service Only" -msgstr "" +msgstr "仅本地服务" msgid "Local Startup" msgstr "本地启动脚本" @@ -1704,11 +1703,10 @@ msgstr "本地时间" msgid "Local domain" msgstr "本地域名" -#, fuzzy msgid "" "Local domain specification. Names matching this domain are never forwarded " "and are resolved from DHCP or hosts files only" -msgstr "本地域名规则。从不转发和处理只源自DHCP或HOSTS文件的本地域名数据" +msgstr "本地域名规则。与此域匹配的名称从不转发,仅从DHCP或HOSTS文件解析" msgid "Local domain suffix appended to DHCP names and hosts file entries" msgstr "本地域名后缀将添加到DHCP和HOSTS文件条目" @@ -1725,7 +1723,7 @@ msgid "Localise queries" msgstr "本地化查询" msgid "Locked to channel %s used by: %s" -msgstr "信道道已被锁定为 %s,因为该信道被 %s 使用" +msgstr "信道道已被锁定为 %s,因为该信道被 %s 使用" msgid "Log output level" msgstr "日志记录等级" @@ -1743,7 +1741,7 @@ msgid "Logout" msgstr "退出" msgid "Loss of Signal Seconds (LOSS)" -msgstr "" +msgstr "信号丢失秒数(LOSS)" msgid "Lowest leased address as offset from the network address." msgstr "网络地址的起始分配基址。" @@ -1761,13 +1759,13 @@ msgid "MAC-List" msgstr "MAC-列表" msgid "MAP / LW4over6" -msgstr "" +msgstr "MAP / LW4over6" msgid "MB/s" msgstr "MB/s" msgid "MD5" -msgstr "" +msgstr "MD5" msgid "MHz" msgstr "MHz" @@ -1778,13 +1776,13 @@ msgstr "MTU" msgid "" "Make sure to clone the root filesystem using something like the commands " "below:" -msgstr "请确认你已经复制过整个根文件系统,例如使用以下命令:" +msgstr "请确认你已经复制过整个根文件系统,例如使用以下命令:" msgid "Manual" -msgstr "" +msgstr "手动" msgid "Max. Attainable Data Rate (ATTNDR)" -msgstr "" +msgstr "最大可达数据速率(ATTNDR)" msgid "Maximum Rate" msgstr "最高速率" @@ -1796,7 +1794,7 @@ msgid "Maximum allowed number of concurrent DNS queries" msgstr "允许的最大并发DNS查询数" msgid "Maximum allowed size of EDNS.0 UDP packets" -msgstr "允许的最大EDNS.0 UDP报文大小" +msgstr "允许的最大EDNS.0 UDP数据包大小" msgid "Maximum amount of seconds to wait for the modem to become ready" msgstr "调制解调器就绪的最大等待时间(秒)" @@ -1808,6 +1806,7 @@ msgid "" "Maximum length of the name is 15 characters including the automatic protocol/" "bridge prefix (br-, 6in4-, pppoe- etc.)" msgstr "" +"名称的最大长度为15个字符,包括自动协议/网桥前缀(br-, 6in4-, pppoe- 等等)" msgid "Maximum number of leased addresses." msgstr "最大地址分配数量。" @@ -1837,7 +1836,7 @@ msgid "Mirror source port" msgstr "数据包镜像源端口" msgid "Missing protocol extension for proto %q" -msgstr "缺少协议%q的协议扩展" +msgstr "缺少协议 %q 的协议扩展" msgid "Mode" msgstr "模式" @@ -1905,16 +1904,16 @@ msgid "NAS ID" msgstr "NAS ID" msgid "NAT-T Mode" -msgstr "" +msgstr "NAT-T模式" msgid "NAT64 Prefix" -msgstr "" +msgstr "NAT64前缀" msgid "NDP-Proxy" msgstr "NDP-代理" msgid "NT Domain" -msgstr "" +msgstr "NT域" msgid "NTP server candidates" msgstr "候选NTP服务器" @@ -1956,7 +1955,7 @@ msgid "No DHCP Server configured for this interface" msgstr "本接口未配置DHCP服务器" msgid "No NAT-T" -msgstr "" +msgstr "无NAT-T" msgid "No chains in this table" msgstr "本表中没有链" @@ -1992,16 +1991,16 @@ msgid "Noise" msgstr "噪声" msgid "Noise Margin (SNR)" -msgstr "" +msgstr "噪声容限(SNR)" msgid "Noise:" msgstr "噪声:" msgid "Non Pre-emtive CRC errors (CRC_P)" -msgstr "" +msgstr "非抢占CRC错误(CRC_P)" msgid "Non-wildcard" -msgstr "" +msgstr "非通配符" msgid "None" msgstr "无" @@ -2022,7 +2021,7 @@ msgid "Note: Configuration files will be erased." msgstr "注意:配置文件将被删除。" msgid "Note: interface name length" -msgstr "" +msgstr "注意:接口名称长度" msgid "Notice" msgstr "注意" @@ -2031,7 +2030,7 @@ msgid "Nslookup" msgstr "Nslookup" msgid "OK" -msgstr "OK" +msgstr "确认" msgid "OPKG-Configuration" msgstr "OPKG-配置" @@ -2064,7 +2063,7 @@ msgid "One or more fields contain invalid values!" msgstr "一个或多个选项值有误!" msgid "One or more invalid/required values on tab" -msgstr "" +msgstr "选项卡上存在一个或多个无效/必需值" msgid "One or more required fields have no value!" msgstr "一个或多个必选项值为空!" @@ -2073,7 +2072,7 @@ msgid "Open list..." msgstr "打开列表..." msgid "OpenConnect (CISCO AnyConnect)" -msgstr "" +msgstr "开放连接(CISCO AnyConnect)" msgid "Operating frequency" msgstr "工作频率" @@ -2085,13 +2084,13 @@ msgid "Option removed" msgstr "移除的选项" msgid "Optional, specify to override default server (tic.sixxs.net)" -msgstr "可选,设置这个选项会覆盖默认设定的服务器(tic.sixxs.net)" +msgstr "可选,设置这个选项会覆盖默认设定的服务器(tic.sixxs.net)" msgid "Optional, use when the SIXXS account has more than one tunnel" -msgstr "可选,如果你的SIXXS账号拥有一个以上的隧道请设置此项." +msgstr "可选,如果你的SIXXS账号拥有一个以上的隧道请设置此项." msgid "Optional." -msgstr "" +msgstr "可选" msgid "" "Optional. Adds in an additional layer of symmetric-key cryptography for post-" @@ -2099,7 +2098,7 @@ msgid "" msgstr "" msgid "Optional. Create routes for Allowed IPs for this peer." -msgstr "" +msgstr "可选,为此Peer创建允许IP的路由。" msgid "" "Optional. Host of peer. Names are resolved prior to bringing up the " @@ -2107,30 +2106,32 @@ msgid "" msgstr "" msgid "Optional. Maximum Transmission Unit of tunnel interface." -msgstr "" +msgstr "可选,隧道接口的最大传输单元。" msgid "Optional. Port of peer." -msgstr "" +msgstr "可选,Peer的端口。" msgid "" "Optional. Seconds between keep alive messages. Default is 0 (disabled). " "Recommended value if this device is behind a NAT is 25." msgstr "" +"可选,Keep-Alive消息之间的秒数,默认为0(禁用)。如果此设备位于NAT之后,建议使" +"用的值为25。" msgid "Optional. UDP port used for outgoing and incoming packets." -msgstr "" +msgstr "可选,用于传出和传入数据包的UDP端口。" msgid "Options" msgstr "选项" msgid "Other:" -msgstr "其余:" +msgstr "其余:" msgid "Out" msgstr "出口" msgid "Outbound:" -msgstr "出站:" +msgstr "出站:" msgid "Outdoor Channels" msgstr "户外频道" @@ -2142,24 +2143,24 @@ msgid "Override MAC address" msgstr "克隆MAC地址" msgid "Override MTU" -msgstr "设置MTU" +msgstr "更新MTU" msgid "Override TOS" -msgstr "" +msgstr "更新TOS" msgid "Override TTL" -msgstr "" +msgstr "更新TTL" msgid "Override default interface name" -msgstr "" +msgstr "更新默认接口名称" msgid "Override the gateway in DHCP responses" -msgstr "更新网关" +msgstr "更新DHCP响应网关" msgid "" "Override the netmask sent to clients. Normally it is calculated from the " "subnet that is served." -msgstr "更新子网掩码。" +msgstr "更新发送到客户端的子网掩码。" msgid "Override the table used for internal routes" msgstr "更新内部路由表" @@ -2195,22 +2196,22 @@ msgid "PPPoE" msgstr "PPPoE" msgid "PPPoSSH" -msgstr "" +msgstr "PPPoSSH" msgid "PPtP" msgstr "PPtP" msgid "PSID offset" -msgstr "" +msgstr "PSID偏移" msgid "PSID-bits length" -msgstr "" +msgstr "PSID位长度" msgid "PTM/EFM (Packet Transfer Mode)" -msgstr "" +msgstr "PTM/EFM(分组传输模式)" msgid "Package libiwinfo required!" -msgstr "需要libiwinfo软件包!" +msgstr "需要 libiwinfo 软件包!" msgid "Package lists are older than 24 hours" msgstr "软件包列表已超过24小时未更新" @@ -2234,7 +2235,7 @@ msgid "Password of Private Key" msgstr "私有密钥" msgid "Password of inner Private Key" -msgstr "" +msgstr "内部私钥的密码" msgid "Password successfully changed!" msgstr "密码修改成功!" @@ -2252,25 +2253,25 @@ msgid "Path to executable which handles the button event" msgstr "处理按键动作的可执行文件路径" msgid "Path to inner CA-Certificate" -msgstr "" +msgstr "内部CA证书的路径" msgid "Path to inner Client-Certificate" -msgstr "" +msgstr "内部客户端证书的路径" msgid "Path to inner Private Key" -msgstr "" +msgstr "内部私钥的路径" msgid "Peak:" msgstr "峰值:" msgid "Peer IP address to assign" -msgstr "" +msgstr "要分配的Peer IP地址" msgid "Peers" -msgstr "" +msgstr "Peers" msgid "Perfect Forward Secrecy" -msgstr "" +msgstr "完全正向保密" msgid "Perform reboot" msgstr "执行重启" @@ -2279,7 +2280,7 @@ msgid "Perform reset" msgstr "执行复位" msgid "Persistent Keep Alive" -msgstr "" +msgstr "持续Keep-Alive" msgid "Phy Rate:" msgstr "物理速率:" @@ -2306,13 +2307,13 @@ msgid "Port status:" msgstr "端口状态:" msgid "Power Management Mode" -msgstr "" +msgstr "电源管理模式" msgid "Pre-emtive CRC errors (CRCP_P)" -msgstr "" +msgstr "抢占式CRC错误(CRCP_P)" msgid "Preshared Key" -msgstr "" +msgstr "预共享密钥" msgid "" "Presume peer to be dead after given amount of LCP echo failures, use 0 to " @@ -2320,7 +2321,7 @@ msgid "" msgstr "在指定数量的LCP响应故障后假定链路已断开,0为忽略故障" msgid "Prevent listening on these interfaces." -msgstr "" +msgstr "防止监听这些接口。" msgid "Prevents client-to-client communication" msgstr "禁止客户端间通信" @@ -2329,7 +2330,7 @@ msgid "Prism2/2.5/3 802.11b Wireless Controller" msgstr "Prism2/2.5/3 802.11b 无线网卡" msgid "Private Key" -msgstr "" +msgstr "私钥" msgid "Proceed" msgstr "执行" @@ -2338,7 +2339,7 @@ msgid "Processes" msgstr "系统进程" msgid "Profile" -msgstr "" +msgstr "配置文件" msgid "Prot." msgstr "协议" @@ -2365,19 +2366,19 @@ msgid "Pseudo Ad-Hoc (ahdemo)" msgstr "伪装Ad-Hoc(ahdemo)" msgid "Public Key" -msgstr "" +msgstr "公钥" msgid "Public prefix routed to this device for distribution to clients." -msgstr "" +msgstr "分配到此设备的公共前缀,用以分发到客户端。" msgid "QMI Cellular" -msgstr "" +msgstr "QMI蜂窝" msgid "Quality" msgstr "质量" msgid "RFC3947 NAT-T mode" -msgstr "" +msgstr "RFC3947 NAT-T模式" msgid "RTS/CTS Threshold" msgstr "RTS/CTS阈值" @@ -2420,33 +2421,31 @@ msgid "" "Really delete this interface? The deletion cannot be undone!\\nYou might " "lose access to this device if you are connected via this interface." msgstr "" -"确定要删除此接口?删除操作无法撤销!\\\n" -"删除此接口,可能导致无法再访问路由器!" +"确定要删除此接口?删除操作无法撤销!\\n删除此接口,可能导致无法再访问路由器!" msgid "" "Really delete this wireless network? The deletion cannot be undone!\\nYou " "might lose access to this device if you are connected via this network." msgstr "" -"确定要删除此无线网络?删除操作无法撤销!\\\n" -"删除此无线网络,可能导致无法再访问路由器!" +"确定要删除此无线网络?删除操作无法撤销!\\n删除此无线网络,可能导致无法再访问" +"路由器!" msgid "Really reset all changes?" msgstr "确定要放弃所有更改?" -#, fuzzy msgid "" "Really shut down network?\\nYou might lose access to this device if you are " "connected via this interface." msgstr "" -"确定要关闭此网络?\\\n" -"关闭此网络,可能导致无法再访问路由器!" +"确定要关闭此网络?\\n如果你正在使用此接口连接路由器,关闭此网络可能导致连接断" +"开!" msgid "" "Really shutdown interface \"%s\" ?\\nYou might lose access to this device if " "you are connected via this interface." msgstr "" -"确定要关闭接口\"%s\" ?\\\n" -"删除此网络,可能导致无法再访问路由器!" +"确定要关闭接口 \"%s\"?\\n如果你正在使用此接口连接路由器,关闭此网络可能导致" +"连接断开!" msgid "Really switch protocol?" msgstr "确定要切换协议?" @@ -2512,7 +2511,7 @@ msgid "Remote IPv4 address" msgstr "远程IPv4地址" msgid "Remote IPv4 address or FQDN" -msgstr "" +msgstr "远程IPv4地址或FQDN" msgid "Remove" msgstr "移除" @@ -2536,24 +2535,26 @@ msgid "Require TLS" msgstr "必须使用TLS" msgid "Required for certain ISPs, e.g. Charter with DOCSIS 3" -msgstr "某些ISP需要,例如:同轴线网络DOCSIS 3" +msgstr "某些ISP需要,例如:同轴线网络DOCSIS 3" msgid "Required. Base64-encoded private key for this interface." -msgstr "" +msgstr "必须,此接口的Base64编码私钥。" msgid "" "Required. IP addresses and prefixes that this peer is allowed to use inside " "the tunnel. Usually the peer's tunnel IP addresses and the networks the peer " "routes through the tunnel." msgstr "" +"必须,允许该Peer在隧道中使用的IP地址和前缀,通常是该Peer的隧道IP地址和通过隧" +"道的路由网络。" msgid "Required. Public key of peer." -msgstr "" +msgstr "必须,Peer的公钥。" msgid "" "Requires upstream supports DNSSEC; verify unsigned domain responses really " "come from unsigned domains" -msgstr "" +msgstr "需要上级支持DNSSEC,验证未签名的域响应确实是来自未签名的域。" msgid "Reset" msgstr "复位" @@ -2595,16 +2596,16 @@ msgid "Root preparation" msgstr "" msgid "Route Allowed IPs" -msgstr "" +msgstr "路由允许的IP" msgid "Route type" -msgstr "" +msgstr "路由类型" msgid "Routed IPv6 prefix for downstream interfaces" -msgstr "" +msgstr "下行接口的路由IPv6前缀" msgid "Router Advertisement-Service" -msgstr "" +msgstr "路由器广告服务" msgid "Router Password" msgstr "主机密码" @@ -2624,18 +2625,18 @@ msgid "Run filesystem check" msgstr "文件系统检查" msgid "SHA256" -msgstr "" +msgstr "SHA256" msgid "" "SIXXS supports TIC only, for static tunnels using IP protocol 41 (RFC4213) " "use 6in4 instead" -msgstr "" +msgstr "SIXXS仅支持TIC,对于使用IP协议41(RFC4213)的静态隧道,使用6in4" msgid "SIXXS-handle[/Tunnel-ID]" msgstr "" msgid "SNR" -msgstr "" +msgstr "SNR" msgid "SSH Access" msgstr "SSH访问" @@ -2677,7 +2678,7 @@ msgid "Section removed" msgstr "移除的区域" msgid "See \"mount\" manpage for details" -msgstr "详参\"mount\"联机帮助" +msgstr "详参 \"mount\" 联机帮助" msgid "" "Send LCP echo requests at the given interval in seconds, only effective in " @@ -2713,7 +2714,6 @@ msgstr "服务类型" msgid "Services" msgstr "服务" -#, fuzzy msgid "Set up Time Synchronization" msgstr "设置时间同步" @@ -2721,7 +2721,7 @@ msgid "Setup DHCP Server" msgstr "配置DHCP服务器" msgid "Severely Errored Seconds (SES)" -msgstr "" +msgstr "严重误码秒(SES)" msgid "Short GI" msgstr "" @@ -2739,7 +2739,7 @@ msgid "Signal" msgstr "信号" msgid "Signal Attenuation (SATN)" -msgstr "" +msgstr "信号衰减(SATN)" msgid "Signal:" msgstr "信号:" @@ -2748,7 +2748,7 @@ msgid "Size" msgstr "大小" msgid "Size (.ipk)" -msgstr "" +msgstr "大小(.ipk)" msgid "Skip" msgstr "跳过" @@ -2782,7 +2782,7 @@ msgid "" "flashed manually. Please refer to the wiki for device specific install " "instructions." msgstr "" -"抱歉,您的设备暂不支持sysupgrade升级,需手动更新固件。请参考Wiki中关于此设备" +"抱歉,您的设备暂不支持Sysupgrade升级,需手动更新固件。请参考Wiki中关于此设备" "的固件更新说明。" msgid "Sort" @@ -2814,17 +2814,17 @@ msgid "" msgstr "指定假设主机已丢失的最大时间(秒)" msgid "Specify a TOS (Type of Service)." -msgstr "" +msgstr "指定TOS(服务类型)。" msgid "" "Specify a TTL (Time to Live) for the encapsulating packet other than the " "default (64)." -msgstr "" +msgstr "为封装数据包设置TTL(生存时间),缺省值:64" msgid "" "Specify an MTU (Maximum Transmission Unit) other than the default (1280 " "bytes)." -msgstr "" +msgstr "设置MTU(最大传输单位),缺省值:1280 bytes" msgid "Specify the secret encryption key here." msgstr "在此指定密钥。" @@ -2878,10 +2878,10 @@ msgid "Submit" msgstr "提交" msgid "Suppress logging" -msgstr "" +msgstr "不记录日志" msgid "Suppress logging of the routine operation of these protocols" -msgstr "" +msgstr "不记录这些协议的常规操作日志。" msgid "Swap" msgstr "交换区" @@ -2896,14 +2896,14 @@ msgid "Switch %q" msgstr "交换机 %q" msgid "Switch %q (%s)" -msgstr "交换机%q (%s)" +msgstr "交换机 %q (%s)" msgid "" "Switch %q has an unknown topology - the VLAN settings might not be accurate." -msgstr "" +msgstr "交换机 %q 具有未知的拓扑结构 - VLAN设置可能不正确。" msgid "Switch VLAN" -msgstr "" +msgstr "VLAN交换机" msgid "Switch protocol" msgstr "切换协议" @@ -2948,7 +2948,7 @@ msgid "Target" msgstr "对象" msgid "Target network" -msgstr "" +msgstr "目标网络" msgid "Terminate" msgstr "关闭" @@ -2977,7 +2977,7 @@ msgstr "HE.net客户端更新设置已经被改变,您现在必须使用用户 msgid "" "The IPv4 address or the fully-qualified domain name of the remote tunnel end." -msgstr "" +msgstr "远程隧道端的IPv4地址或完整域名。" msgid "" "The IPv6 prefix assigned to the provider, usually ends with <code>::</code>" @@ -2996,17 +2996,15 @@ msgstr "由于以下错误,配置文件无法被加载:" msgid "" "The device file of the memory or partition (<abbr title=\"for example\">e.g." "</abbr> <code>/dev/sda1</code>)" -msgstr "" -"存储器或分区的设备节点,(<abbr title=\"for example\">例如</abbr> <code>/dev/" -"sda1</code>)" +msgstr "存储器或分区的设备节点,(例如:<code>/dev/sda1</code>)" msgid "" "The filesystem that was used to format the memory (<abbr title=\"for example" "\">e.g.</abbr> <samp><abbr title=\"Third Extended Filesystem\">ext3</abbr></" "samp>)" msgstr "" -"用于格式化存储器的文件系统,(<abbr title=\"for example\">例如</abbr> " -"<samp><abbr title=\"Third Extended Filesystem\">ext4</abbr></samp>)" +"用于格式化存储器的文件系统,(例如:<samp><abbr title=\"第三代扩展文件系统" +"\">ext3</abbr></samp>)" msgid "" "The flash image was uploaded. Below is the checksum and file size listed, " @@ -3026,11 +3024,10 @@ msgstr "系统中的活跃连接。" msgid "The given network name is not unique" msgstr "给定的网络名重复" -#, fuzzy msgid "" "The hardware is not multi-SSID capable and the existing configuration will " "be replaced if you proceed." -msgstr "本机的硬件不支持多SSID,继续进行将会覆盖现有配置。" +msgstr "本机的硬件不支持多SSID,如果继续,现有配置将被替换。" msgid "" "The length of the IPv4 prefix in bits, the remainder is used in the IPv6 " @@ -3041,7 +3038,7 @@ msgid "The length of the IPv6 prefix in bits" msgstr "bit格式的IPv6前缀长度" msgid "The local IPv4 address over which the tunnel is created (optional)." -msgstr "" +msgstr "所创建隧道的本地IPv4地址(可选)。" msgid "" "The network ports on this device can be combined to several <abbr title=" @@ -3051,16 +3048,15 @@ msgid "" "segments. Often there is by default one Uplink port for a connection to the " "next greater network like the internet and other ports for a local network." msgstr "" -"本设备可以划分为多个<abbr title=\"Virtual Local Area Network\">VLAN</abbr>," -"并支持电脑间的直接通讯。<abbr title=\"Virtual Local Area Network\">VLAN</" -"abbr>也常用于分割不同网段。默认通常是一条上行端口连接ISP,其余端口为本地子" -"网。" +"本设备可以划分为多个<abbr title=\"虚拟局域网\">VLAN</abbr>,并支持电脑间的直" +"接通讯。<abbr title=\"虚拟局域网\">VLAN</abbr>也常用于分割不同网段。默认通常" +"是一条上行端口连接ISP,其余端口为本地子网。" msgid "The selected protocol needs a device assigned" msgstr "所选的协议需要分配设备" msgid "The submitted security token is invalid or already expired!" -msgstr "" +msgstr "提交的安全令牌无效或已过期!" msgid "" "The system is erasing the configuration partition now and will reboot itself " @@ -3079,7 +3075,7 @@ msgstr "" msgid "" "The tunnel end-point is behind NAT, defaults to disabled and only applies to " "AYIYA" -msgstr "" +msgstr "隧道端点在NAT之后,默认为禁用,仅适用于AYIYA" msgid "" "The uploaded image file does not contain a supported format. Make sure that " @@ -3101,7 +3097,7 @@ msgstr "没有待生效的更改!" msgid "" "There is no device assigned yet, please attach a network device in the " "\"Physical Settings\" tab" -msgstr "尚未分配设备,请在\"物理设置\"选项卡中选择网络设备" +msgstr "尚未分配设备,请在“物理设置”选项卡中选择网络设备" msgid "" "There is no password set on this router. Please configure a root password to " @@ -3116,6 +3112,8 @@ msgid "" "'server=1.2.3.4' fordomain-specific or full upstream <abbr title=\"Domain " "Name System\">DNS</abbr> servers." msgstr "" +"此文件可能包含类似'server=/domain/1.2.3.4'或'server=1.2.3.4'的行,来解析特定" +"域名或指定上游<abbr title=\"域名服务系统\">DNS</abbr>服务器。" msgid "" "This is a list of shell glob patterns for matching files and directories to " @@ -3128,7 +3126,7 @@ msgstr "" msgid "" "This is either the \"Update Key\" configured for the tunnel or the account " "password if no update key has been configured" -msgstr "如果更新密钥没有设置的话,隧道的\"更新密钥\"或者账户密码必须填写." +msgstr "如果更新密钥没有设置的话,隧道的“更新密钥”或者账户密码必须填写。" msgid "" "This is the content of /etc/rc.local. Insert your own commands here (in " @@ -3143,19 +3141,17 @@ msgstr "隧道代理分配的本地终端地址,通常以<code>:2</code>结尾 msgid "" "This is the only <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</" "abbr> in the local network" -msgstr "" -"这是内网中唯一的<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</" -"abbr>服务器" +msgstr "这是内网中唯一的<abbr title=\"动态主机配置协议\">DHCP</abbr>服务器" msgid "This is the plain username for logging into the account" msgstr "登录账户时填写的用户名" msgid "" "This is the prefix routed to you by the tunnel broker for use by clients" -msgstr "" +msgstr "这是隧道代理分配给你的路由前缀,供客户端使用" msgid "This is the system crontab in which scheduled tasks can be defined." -msgstr "自定义系统crontab中的计划任务。" +msgstr "自定义系统Crontab中的计划任务。" msgid "" "This is usually the address of the nearest PoP operated by the tunnel broker" @@ -3268,7 +3264,7 @@ msgid "Unable to dispatch" msgstr "无法调度" msgid "Unavailable Seconds (UAS)" -msgstr "" +msgstr "不可用秒数(UAS)" msgid "Unknown" msgstr "未知" @@ -3295,7 +3291,7 @@ msgid "" "Upload a sysupgrade-compatible image here to replace the running firmware. " "Check \"Keep settings\" to retain the current configuration (requires a " "compatible firmware image)." -msgstr "上传兼容的sysupgrade固件以刷新当前系统。" +msgstr "上传兼容的Sysupgrade固件以刷新当前系统。" msgid "Upload archive..." msgstr "上传备份..." @@ -3325,7 +3321,7 @@ msgid "Use TTL on tunnel interface" msgstr "隧道接口的TTL" msgid "Use as external overlay (/overlay)" -msgstr "作为外部overlay使用(/overlay)" +msgstr "作为外部Overlay使用(/overlay)" msgid "Use as root filesystem (/)" msgstr "作为跟文件系统使用(/)" @@ -3334,7 +3330,7 @@ msgid "Use broadcast flag" msgstr "使用广播标签" msgid "Use builtin IPv6-management" -msgstr "" +msgstr "使用内置的IPv6管理" msgid "Use custom DNS servers" msgstr "使用自定义的DNS服务器" @@ -3377,19 +3373,19 @@ msgid "VC-Mux" msgstr "VC-Mux" msgid "VDSL" -msgstr "" +msgstr "VDSL" msgid "VLANs on %q" -msgstr "%q上的VLAN" +msgstr "%q 上的VLAN" msgid "VLANs on %q (%s)" -msgstr "%q (%s)上的VLAN" +msgstr "%q (%s) 上的VLAN" msgid "VPN Local address" -msgstr "" +msgstr "VPN本地地址" msgid "VPN Local port" -msgstr "" +msgstr "VPN本地端口" msgid "VPN Server" msgstr "VPN服务器" @@ -3401,7 +3397,7 @@ msgid "VPN Server's certificate SHA1 hash" msgstr "VPN服务器证书的SHA1哈希值" msgid "VPNC (CISCO 3000 (and others) VPN)" -msgstr "" +msgstr "VPNC (CISCO 3000 和其他VPN)" msgid "Vendor" msgstr "" @@ -3410,10 +3406,10 @@ msgid "Vendor Class to send when requesting DHCP" msgstr "请求DHCP时发送的Vendor Class" msgid "Verbose" -msgstr "" +msgstr "详细" msgid "Verbose logging by aiccu daemon" -msgstr "" +msgstr "aiccu守护程序详细日志" msgid "Verify" msgstr "验证" @@ -3448,7 +3444,7 @@ msgstr "" msgid "" "Wait for NTP sync that many seconds, seting to 0 disables waiting (optional)" -msgstr "在NTP同步之前等待时间.设置为0表示同步之前不等待(可选)" +msgstr "在NTP同步之前等待时间,设置为0表示同步之前不等待(可选)" msgid "Waiting for changes to be applied..." msgstr "正在应用更改..." @@ -3466,10 +3462,10 @@ msgid "Warning: There are unsaved changes that will get lost on reboot!" msgstr "警告:有一些未保存的配置将在重启后丢失!" msgid "Whether to create an IPv6 default route over the tunnel" -msgstr "" +msgstr "是否通过隧道创建IPv6缺省路由" msgid "Whether to route only packets from delegated prefixes" -msgstr "" +msgstr "是否仅路由来自分发前缀的数据包" msgid "Width" msgstr "频宽" @@ -3514,7 +3510,7 @@ msgid "Write received DNS requests to syslog" msgstr "将收到的DNS请求写入系统日志" msgid "Write system log to file" -msgstr "" +msgstr "将系统日志写入文件" msgid "XR Support" msgstr "XR支持" @@ -3536,8 +3532,8 @@ msgid "" "upgrade it to at least version 7 or use another browser like Firefox, Opera " "or Safari." msgstr "" -"你的Internet Explorer已经老到无法正常显示这个页面了!请至少更新到IE7或者使用诸" -"如Firefox Opera Safari之类的浏览器." +"你的Internet Explorer已经老到无法正常显示这个页面了!请至少更新到IE7或者使用" +"诸如Firefox Opera Safari之类的浏览器。" msgid "any" msgstr "任意" @@ -3578,8 +3574,7 @@ msgstr "过期时间" msgid "" "file where given <abbr title=\"Dynamic Host Configuration Protocol\">DHCP</" "abbr>-leases will be stored" -msgstr "" -"存放<abbr title=\"Dynamic Host Configuration Protocol\">DHCP</abbr>租约的文件" +msgstr "存放<abbr title=\"动态主机配置协议\">DHCP</abbr>租约的文件" msgid "forward" msgstr "转发" @@ -3615,16 +3610,16 @@ msgid "kbit/s" msgstr "kbit/s" msgid "local <abbr title=\"Domain Name System\">DNS</abbr> file" -msgstr "本地<abbr title=\"Domain Name System\">DNS</abbr>解析文件" +msgstr "本地<abbr title=\"域名服务系统\">DNS</abbr>解析文件" msgid "minimum 1280, maximum 1480" -msgstr "最小值1280,最大值1480" +msgstr "最小值1280,最大值1480" msgid "navigation Navigation" -msgstr "" +msgstr "导航" msgid "no" -msgstr "no" +msgstr "" msgid "no link" msgstr "未连接" @@ -3633,7 +3628,7 @@ msgid "none" msgstr "无" msgid "not present" -msgstr "" +msgstr "不存在" msgid "off" msgstr "关" @@ -3645,7 +3640,7 @@ msgid "open" msgstr "开放式" msgid "overlay" -msgstr "" +msgstr "覆盖" msgid "relay mode" msgstr "中继模式" @@ -3657,19 +3652,19 @@ msgid "server mode" msgstr "服务器模式" msgid "skiplink1 Skip to navigation" -msgstr "" +msgstr "skiplink1 跳转到导航" msgid "skiplink2 Skip to content" -msgstr "" +msgstr "skiplink2 跳到内容" msgid "stateful-only" -msgstr "" +msgstr "有状态的" msgid "stateless" -msgstr "" +msgstr "无状态的" msgid "stateless + stateful" -msgstr "" +msgstr "有状态和无状态的" msgid "tagged" msgstr "关联" @@ -3684,7 +3679,7 @@ msgid "unspecified" msgstr "未指定" msgid "unspecified -or- create:" -msgstr "未指定 // 创建:" +msgstr "未指定或创建:" msgid "untagged" msgstr "不关联" @@ -3699,7 +3694,7 @@ msgstr "« 后退" #~ msgstr "取消选中将会另外创建一个新网络,而不会覆盖当前网络设置" #~ msgid "Join Network: Settings" -#~ msgstr "加入网络:设置" +#~ msgstr "加入网络:设置" #~ msgid "CPU" #~ msgstr "CPU" diff --git a/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css b/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css index 1d712e4533..8d0c434a98 100644 --- a/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css +++ b/themes/luci-theme-bootstrap/htdocs/luci-static/bootstrap/cascade.css @@ -500,6 +500,8 @@ select, select { padding: initial; + background: #fff; + box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1); } input[type=checkbox], input[type=radio] { |