RFCRestyle

RFCRestyle 3.6.1 CRX for Chrome

A Free Productivity Extension

Published By Fred Gandt

RFCRestyle (babdjpjkdmdppnlgjlpgiknmbdblmdbd): Control the aesthetics and improve the navigability of HTML IETF RFC documents. Optional automatic redirects from TXT docs.... Read More > or Download Now >

RFCRestyle for Chrome

Download CRX

Download

22.22 KB

Chrome Store

Tech Specs

  • • Type: Browser Extension
  • • Latest Version: 3.6.1
  • • Price: Freeware
  • • Offline: Yes
  • • Developer: Fred Gandt

User Reviews

  • 27 Votes, Average: 4.67 out of 5
  • • Rating Average
  • 4.67 out of 5
  • • Rating Users
  • 27

Download Count

  • • Total Downloads
  • 57
  • • Current Version Downloads
  • 4
  • • Updated: August 17, 2022

RFCRestyle is a free Productivity Extension for Chrome. You could download the latest version crx file or old version crx files and install it.

More About RFCRestyle

This extension will be initiated when viewing a selection of ietf.org pages.

Although it's primary purpose is to restyle Drafts and RFCs in accordance with the user's preferences, it will also:
• Read HTML RFC and Draft pages and, from what it finds, create a Table of Contents (ToC) containing links to all page sections and place it in a fixed position at the top-right corner of the window. It's accessible by click, tap or the accesskey "T" (alt+T).
• Unearths a color coded legend present in all HTML RFC pages to make it more accessible by the addition of some new HTML, styling, and scripting. Its accesskey is "L" and can also be accessed with a click or tap.
• Optionally (disabled by default) automatically redirect from plain text RFCs and Drafts to their HTML versions.
• Optionally (enabled by default) automatically redirect from BCPs to the HTML versions of the source RFCs. Where a BCP is "...a concatenation of more than one RFC", the extension will redirect the active tab and create more as needed to open all respective RFCs.
· If the option is disabled, hyperlinks will be added to the BCP to assist manual navigation to the respective RFCs.
• Create hyperlinking to RFCs and BCPs indexed and referenced in RFC and BCP indexes found at "www.ietf.org/download/rfc-index.txt" and "www.ietf.org/rfc/bcp-index.txt" respectively.

The restyling is mostly color oriented but includes:
• Setting the monospace font to one of your choice from a selection of common or Google Web fonts. Due to the formatting of ietf.org RFC and Draft docs, a monospace font is essential for legibility.
• Optional (enabled by default) hiding of chunks of white space and "page separators" featured as headers and footers when printing the documents.
• An adjustable (from none to shampooed-and-blow-dried-puppy) fuzzy border around the text content to reduce tunnel vision when reading long documents.

OPTIONS:
• When viewing an ietf.org plain text or HTML RFC or Draft; left clicking the RFCRestyle extension icon will usher forth the options pop-up. This pop-up includes all the controls for setting the options using native Chrome form inputs. Changes to the options are saved automatically.
• Up to 5 separate, fully customisable profiles, each with its own unique settings, may be stored for immediate access. The last used profile will be used when next visiting an RFC or Draft. Changes made to the settings of one profile will not affect the settings in other profiles.
• Settings can be optionally (disabled by default) set to "sync" across all instances of Chrome the user is logged in to (if the user also has Chrome's sync enabled). Unlike all other settings, this is a global option that affects every profile; it's all-or-nothing! When unchecking the option, synced data will be cleared but the henceforth unsynchronised profiles will remain stored on the local machines previously synced.
· Learn more about Chrome sync: https://support.google.com/chrome/answer/165139

NOTE REGARDING PRINTING:
• Due to the multiple changes made to the styling and structure of the affected documents; before printing any document, uncheck the "Restyle" option to temporarily revert to the document's default state, then re-enable the option when finished.

ACCESSIBILITY:
• All aspects of the extension have been built with accessibility in mind, and no features should be hard to use for anyone. Keyboard and mouse access has been well tested but touch screen access hasn't (although it should be fine).

PRIVACY:
• This extension does not collect or process any personal data or communicate its activity with any external application. Settings are stored locally or optionally synced. If the option to sync the settings to all instances of Chrome the user is logged in to is checked, the settings will be shared with other devices where the user has Chrome's sync enabled, opens Chrome and logs in to their account.

OPEN SOURCE & COPYLEFT LICENSED:
• The entire GNU GPL v3.0 licensed extension code and other files can be found on GitHub at https://github.com/FredGandt/RFCRestyle

CHANGE LOG (latest first):
• July 24, 2019 - Version 2.30
· Removed "tabs" permission statement in manifest.

• February 25, 2019 - Version 2.21
· Applied what may turn out to be a temporary fix after an update to Chrome changed its handling of "get" and "set" function calls on local storage areas.
· This may be a short lived version as another minor error has also recently appeared. This error doesn't affect functionality but I'd like to quell it when I find a way.

• December 27, 2018 - Version 2.2
· Minor layout improvement of ToC.
· Fixed inability to navigate to pages within docs from index when "continuous" is checked.

• December 17, 2018 - Version 2.1.1
· Fixed a multitude of errors regarding storage and backwards compatibility of settings.
· Changed the creation of links in indexes to be done dynamically on scroll.
· Slightly altered the layout of the options popup.

• December 15, 2018 - Version 2.1
· Added optional (on by default because they're clones of "real" RFCs better viewed in their native form) auto redirects of BCP[0-9]+ docs to the respective RFC(s).
· Added hyperlinking of references to RFCs and BCPs in their indexes. RFC index has > 14k links so chugs a bit. If people complain, I'll make it optional or dynamic to compensate.

• December 11, 2018 - Version 2.0.8
· Fixed heading margins so they display correctly whether "continuous" is selected or not. Unfortunately this required JavaScript intervention as CSS couldn't quite manage it alone.

• December 10, 2018 - Version 2.0.7
· Fixed more problems with the ToC, improved its layout a little with indention to match each links descendancy and cleaned up some other code while doing that.
· Almost added a "Minimised scrollbars" option but Chrome gets it wrong until the tab is refreshed or navigated. If I can find a workaround, I'll add the option later.
· Unless I notice something else I've done wrong or receive inducing feedback, this should be the last update for a while :)

• December 9, 2018 - Version 2.0.6
· Fixed Chrome sync issues and removed a little inefficiency along the way.

• December 6, 2018 - Version 2.0.5
· Fixed Table of Contents (ToC) links.

• December 6, 2018 - Version 2.0.4
· Fixed the accidental removal of an important space character during manual minification.

• December 6, 2018 - Version 2.0.3
· Altered the processing order to cure the unsightly flash of the temporarily unstyled ToC on long pages; now much smoother loading.
· Improved the minification a bit.
· Fixed a couple of minor errors.

• December 5, 2018 - Version 2.0.2
· A couple of little tweaks to the page CSS to fix an unusual but potential conflict of browser behaviours; to wrap or not to wrap - that is the question.

• December 4, 2018 - Version 2.0.1 - NOTE
· After the last update went live, I checked to ensure it was functioning correctly and was surprised by severe display errors caused by corrupted CSS. ...
· Fixed in v2.1.1

• December 4, 2018 - Version 2.0.1
· Realised a small error when rewriting the above notes for this version and made the change; moved a tooltip in the popup.

• December 4, 2018 - Version 2.0 o/
· This is a big update with many changes/improvements;
· Much better optimization:
· · the background page is no longer persistently active - reducing system resource usage (although, on a per session basis, if the popup is used, background.js remains activated (to be fixed)).
· Addition of the ability to store multiple unique profiles (e.g. a dark one for night time might be nice).
· Added the option to sync the settings across all instances of Chrome the user is logged in to.
· Changed the way colors are set, from RGB sliders to HTML5 color inputs that utilise Chrome's native color-picker UI.
· Made it possible to select from a list of monospace fonts.
· Made efforts to improve the accessibility of the ToC and Legend.
· Managed to keep the overall size of the extension from bloating badly with all the additional options by the hard won application of extreme minification.
· As far as I can tell, this should be a smooth transition, with no user actually noticing any change in functionality unless they open the popup. As always, I check for support requests every day.

• July 25, 2018 - Version 1.2.3.1
· Added a few CSS rules to fix the width of an element at the top of all RFCs, that on some can be wider than the rest of the text, unwelcomely pushing the whole page body of center.

• July 22, 2018 - Version 1.2.3.0
· A few minor improvements to the code while working to create an unminified package to publish somewhere for open-source use.

• August 18, 2017 - Version 1.2.2.0
· Bug fix; thanks to user feedback via the "support" tab on the webstore listing :-)

• May 6, 2017 - Version 1.2.1.5
· Fixed inability to disable auto redirect from TXT to HTML docs.

• April 30, 2017 - Version 1.2.1.0
· Updated icons, fixed an encoding issue to allow more efficient execution and thereby reduced the extension weight a bit more.

• April 28, 2017 - Version 1.2.0.2
· Corrected URL matching to included edge cases.
· Discovered another type of document and will add functionality to handle it sometime later.

• April 27, 2017 - Version 1.2.0.1
· Added optional automatic redirection from plain text RFCs and Drafts to their HTML versions.
· Further minified and optimised all the code and markup to improve performance and reduce "weight".
· Now only works with secure connections (all ietf.org RFCs and Drafts are forced secure now).

• April 23, 2017 - Version 1.1.0.2
· A little minification, added and corrected some logic.

• April 23, 2017 - Version 1.1.0.0
· Added setting to toggle between the default multi-page layout, and a continuous layout with reduced whitespace and no visible page headers or footers.

• April 21, 2017 - Version 1.0.5.0
· Tiny accessibility fix.

• April 20, 2017 - Version 1.0.4.5
· Fixed several issues caused by resizing the font.

• April 19, 2017 - Version 1.0.4.0
· Added ability to change the overall font size for the RFCs, and have various UI elements alter their size to match. Size adjusted by slider.

• April 16, 2016 - Version 1.0.3.1
· Changed "offline_enabled" (in the manifest) to "false" as this is a contentious issue, and removed documentation disclaimer about the contention.

• June 28, 2015 - Version 1.0.3.0
· A few changes to the CSS to compensate for changes made to the markup. Please let me know if you see anything unpleasant.

• March 9, 2015 - Version 1.0.2.7
· Minor CSS improvements.

• July 29, 2014 - Version 1.0.2.6
· A change in the way Chrome handles "change" events triggered by "range" type inputs (the sliders) broke the desired behaviour, so I've added an "input" listener.
· I'm considering a more major update to include a user request and generally improve the code, but it seems to be working okay at the minute.

• April 18, 2014 - Version 1.0.2.0
· Fixed insecure request for Inconsolata support from Google Web Fonts. Previously requested via "http://". Now requested via "https://" as it should always have been :-/

• February 26, 2014 - Version 1.0.1.1
· Very minor change to CSS (styling) of the TOC (table of contents) heading.

• June 8, 2013 - Version 1.0.1.0
· By request, changed URL matching to include drafts. Previously only acted on *://tools.ietf.org/html/rfc*. Now acts on (example) ...html/draft* AND ...html/rfc*

Download RFCRestyle 3.6.1

More Extensions to Consider (Similar or Related)