Extension:Proofread Page/Edit-in-Sequence

The Edit-in-Sequence (or EIS) feature of ProofreadPage is a new (as of 2022) user interface that aims to make it quicker to navigate between pages while proofreading. It adds a new toolbar above the normal side-by-side proofreading interface that allows for navigating between pages, previewing, and saving edits to any pages. It means that editors don't have to leave the editing interface at all while proofreading.

This page documents the system administration, and wiki administration, of this feature.

Configuration variables
Enables the main Edit-in-Sequence tab (next to the read and edit tabs) that is used to launch EIS.

Incompatibilities
Certain userscripts might be incompatible with EditInSequence. Userscripts that rely on the the presence of the "Publish Changes" button (or the Edit summary textbox) might be incompatible with EditInSequence.

Text selection and replacement
User scripts and gadgets that use the vanilla jQuery or the vanilla JS method  to manipulate text inside textboxes might encounter edge cases where EditInSequence does not recognize the input. Instead it is recommended to use the  API to manipulate code.

For example, for the following code:

should instead be written as the following:

Image detection
Previously, the following code  could be relied upon to give the image for a specific page. However, due to the fact that EditInSequence swaps out the image inplace every time a user navigates to a new page, the same code snippet will not work. Instead, userscripts and gadgets can use the ProofreadPage Openseadragon API to interact with the current image.

For example to replace the following code snippet: the following can be used

EIS API
EditInSequence provides/aims to provide a few APIs with which users can hook into the interface and add features.

PageSelection API
The Page selection API allows userscripts to define new Page selection filter that a user can use to navigate between pages (for example: adding a screen that shows a user which pages have lint errors).



To hook into the API, a userscript must listen for the  event. This passes a  object. This can be used to register a new page selection filter by calling. This will register a screen with a specific name, a label and a callback that will be called when a user clicks on the filter. A example of how this works is given below, via a toy snippet that highlights pages that have non-number page numbers (ex: title, blank etc)

Text preloading API
TBD

History
EIS was first developed by User:Alex brollo in October 2016‎ as a gadget on Italian Wikisource.

In 2022 Wikimedia Italia funded the integration of the gadget into this extension, as well as further development of EIS. This work is being undertaken by User:Sohom data.