-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
luci-app-upnp: Complete plugin wording/UI revision #7217
luci-app-upnp: Complete plugin wording/UI revision #7217
Conversation
So, what we typically find in the luci repo, in GUI, is that the first or second instance where space allows (and isn't in a heading) is to clarify acronyms and abbreviations. e.g. DNS = Domain Name System. The best practice, in order to save inundating i18n peeps with needless html guff in text which can be error prone, is to use the e.g. this is OK tho it's shit for translators: _('Dnsmasq is a lightweight <abbr title="Dynamic Host Configuration Protocol">DHCP</abbr> server and <abbr title="Domain Name System">DNS</abbr> forwarder.')); but this is better so i18n peeps don't also need to copy and write html: _('Dnsmasq is a lightweight %s server and %s forwarder.').format('<abbr title="Dynamic Host Configuration Protocol">DHCP</abbr>', '<abbr title="Domain Name System">DNS</abbr>'); and this is even better so i18n peeps can understand what %s is. The second string in the _('Dnsmasq is a lightweight %s server and %s forwarder.', 'Dnsmasq is a lightweight %s (%s = DHCP) server and %s (%s = DNS) forwarder').format('<abbr title="Dynamic Host Configuration Protocol">DHCP</abbr>', '<abbr title="Domain Name System">DNS</abbr>'); |
If you must link to an acronym at a web resource, use format also to avoid link injection. Best is to link to RFCs which often clarify and explain the standard. Many acronyms ossify via English since that's what RFC are usually written in, and helps translators also. |
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Outdated
Show resolved
Hide resolved
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Outdated
Show resolved
Hide resolved
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
see comments
e13d659
to
f65b36a
Compare
@systemcrash Thanks for the constructive/fast review and the suggestion to encode and link the acronyms. Linked the protocols to the standards on Wikipedia (hopefully also good), as the UPnP IGD is not from the IETF (RFC) and is only available as several separate PDFs. For the Part of the advanced settings UI |
f65b36a
to
4629bfa
Compare
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
.
*_threshold and *_interval are both made clear in the linked issue. What is the wording for *_threshold found there (that seems unclear)? |
2bca7f0
to
009b4fe
Compare
009b4fe
to
6ee6568
Compare
While it might be nice to track variable names in the miniupnpd, it's mandatory to follow the naming in its startup script. What version does openwrt use in master? Because if a setting name is not in master yet, we cannot change it here yet. |
The only necessary prerequisite for miniupnpd (the linked commit, included in 2.3.4) is already in the master since openwrt/packages@c9a1705, and all other configuration changes are implemented without additional prerequisites and include a uci-defaults migration. |
@Self-Hosting-Group would it be possible to nest the |
Nesting is an entirely reasonable use case. I've done similar but not for
the purpose of i18n. Most of the abbreviations and acronyms are hardened
around English in any case.
|
1e4f4a0
to
2dfebd9
Compare
2dfebd9
to
242275b
Compare
not working Signed-off-by: Self-Hosting-Group <selfhostinggroup-git+openwrt@shost.ing>
Signed-off-by: Self-Hosting-Group <selfhostinggroup-git+openwrt@shost.ing>
Signed-off-by: Self-Hosting-Group <selfhostinggroup-git+openwrt@shost.ing>
Signed-off-by: Self-Hosting-Group <selfhostinggroup-git+openwrt@shost.ing>
advanced settings and the rest to general setup and rearrangement Signed-off-by: Self-Hosting-Group <selfhostinggroup-git+openwrt@shost.ing>
d4ed931
to
6e6a53a
Compare
d4ed931
to
975b5d3
Compare
2fe477f
to
01de201
Compare
These are the previously mentioned proposed changes to the package: miniupnpd: Revise several
Open questions
|
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Show resolved
Hide resolved
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Outdated
Show resolved
Hide resolved
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Outdated
Show resolved
Hide resolved
Signed-off-by: Self-Hosting-Group <selfhostinggroup-git+openwrt@shost.ing>
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Show resolved
Hide resolved
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Show resolved
Hide resolved
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Show resolved
Hide resolved
applications/luci-app-upnp/htdocs/luci-static/resources/view/upnp/upnp.js
Show resolved
Hide resolved
At a minimum, if you want to make changes to the GUI, they must first exist in I'm going to close this PR since it includes new settings which don't exist there, but you're welcome to ping this PR when necessary changes are integrated there. Otherwise, change this PR to include GUI changes only. There are some acceptable changes here.
Be aware of what this entails:
Before undertaking this venture, I advise you to review previous packages repo PR to change variable names in the packages repo. Review other PRs that update daemons (there are tons of them both open and merged). If you try and do too much at once, your chances of success there fall drastically, will take a longer time, and have a higher chance of stalling and rotting. |
The idea was a linked PR in the package repository. And I have already prepared the PR for the package. I was just interested in feedback on the idea of the package update and feedback on the wording for the next step. There is also a prepared uci-defaults script. |
Please submit the packages PR. |
@systemcrash Thank you for your constructive reviews. I am especially grateful for the much improved English wording. Since OpenWrt has the most comprehensive UI for autonomous port mapping compared to other router OSs, and since I am also updating the UI of some of the others, I plan to include the improved wording there later. Hence the questions above about perfecting the wording. I am very open to even the smallest text improvements and other suggestions from you, as I can see that you take the wording very seriously, and also see that you have extensive knowledge. |
Was this your PR? openwrt/packages#24988 In which case there are a bunch of red flags there that need to be addressed for it to get approved. I'll help with the wording, when the changes they're intended for go in. 👍 |
Here we took into account e.g. Chinese names which have no spaces (single name), and we see a few more of those PRs here than there. If you want to pass the checks, add some fake name like Joe Bloggs. |
@systemcrash I have reworked this PR, now without dependencies, because I would like to have the most important UI fixes/improvements in the upcoming OpenWrt 24.10 release before the OpenWrt package PR has a chance to be carefully reviewed (positive comment exists). Is it possible for you to reopen and review this now independent PR first? The screenshots have been updated to reflect the simpler UI, and only a few minor changes will be needed later when it comes time for the package PR to be approved. I still offer to incorporate the changes into the OpenWrt wiki (account already set up) for the 24.10 release, and I have already promised the translation corrections, but I would like to be able to finish this sooner rather than later if possible. |
Push your current changes. |
Let me try |
OK |
No, cannot reopen. Make a new PR I guess... |
clean_ruleset_interval/threshold
UI options as no function when compiled with IGDv2Add missing protocol term in status/overview UI and shorten menu option to
UPnP IGD & PCP
, otherwise two lines, rearrange table columns, improve wording and add help texts and note upstream change miniupnp/miniupnp@9339f0eThis completes PR #6863, merged in #6975.
Proposed service UI
Full screenshot
Proposed status/overview UI
Proposed advanced settings UI
Port Control Protocol (PCP) is the successor to NAT-PMP and has similar protocol concepts and packet formats, but adds IPv6 support. For more information, see Port Mapping Protocols Overview and Comparison 2024:
https://github.com/Self-Hosting-Group/wiki/wiki/Port-Mapping-Protocols-Overview
Maintainer: @jow-