0 votos
683 vistas

I’ve been asked by a team to delete all the notes in a few selected chapters of their translation project. They have several hundreds of such notes, so resolving them manually is going to take a while. Is there a way that I could do a bulk operation to resolve these notes?

Paratext por (229 puntos) | 683 vistas

8 Respuestas

+2 votos
Mejor respuesta

There is not a command in Paratext for this. But I think you could do it in a manual edit if you are willing and able to edit XML files.

My suggestion:

  1. Make a copy of the project so you can try out your note editing in the copy, without affecting the regular project until you know your changes are what you want. You can do this by making a backup to file of the existing project (In Paratext, go to the main menu, Advanced , Backup project to file. )

  2. Restore from the backup file to a new project. (In Paratext, go to the main menu, Advanced, Restore project from file). Select the zip file you just made, then click “New” at the top right of the restore dialog to create a new project. Name the new project what you want. You can ignore the warning about doing this in a shared project. The new project will not be shared with anyone.

  3. Now close Paratext. In the new project folder, find the notes files and open them in Notepad or another text editor.
    image

  4. An individual note looks like this:

  5. Search for the desired chapter you want to resolve by typing the three letter book code, space, then the chapter number. (In our example, EXO 2 for Exodus chapter 2).

  6. When you find a note, to resolve it type “deleted” in the status field (as in the orange rectangle, between <Status> and </Status>)

  7. repeat search and edit for the other chapter numbers

  8. save your edits.

  9. if needed, edit other notes files. There is a note file for each user. But if several users comment on the same note, if the status is set to “deleted” in anyone of those user files, the note should be resolved.

Open Paratext and check if the notes in this new project work as desired. If Paratext says the notes file was corrupted, and renamed notes_user name.corrupt, you know you corrupted some of the XML markers. You should not remove any < or > or </ in the file.

por [Expert]
(3,3k puntos)

mostrada de nuevo

This is still a lot of manual work, one cannot do a simple Find/Replace. It would be really useful if there was a “Bulk Resolve” feature within Paratext, since then one could first filter the notes and then resolve only those that match the filter.

0 votos

Thank you @sewhite for the detailed instruction. I’ll try it and update you here.

por (229 puntos)
0 votos

@sewhite I’ve followed your instructions and managed to resolved all the notes. Thanks a lot for your help. There were about 1800 notes to be resolved. So your tip has saved a lot of time for me.

por (229 puntos)
0 votos

@MatjazCrnivec @anon649716

If you would like to request this feature, you can follow the instructions to “Make a Suggestion” here: https://paratext.org/paratext-help-and-support/

por [Moderator]
(2,1k puntos)
+1 voto

I found myself needing to do this, and created a Regular Expression that allows me to change all of the Status fields from “todo” to “deleted” on a book by book basis. I noticed that the format/order of the fields in the XML file was always consistent:

So I was able to create an expression that finds a VerseRef in a particular book, ignores the rest of that line, then skips over any number of lines that begin with spaces and then a <S or <C, then looks for a line that starts with spaces and then <Status>todo. It will change that “todo” to “deleted”. Here is the expression:

Find: (VerseRef="\dJN .+\r\n(\s+<[SC].+\r\n)*?\s+<Status>)todo
Replace: \1deleted

So in a text editor that can work with Regular Expressions (Notepad++ if you don’t have a favorite), use those find and replace strings to find all of the notes that are not resolved in 1JN, 2JN, 3JN, and change them to resolved.

The \dJN in the find expression uses a further RegEx to find notes in all books that start with a digit and then JN. You can replace that string with another book code to find the notes in that book, e.g. MAT, ISA, or things like \dCO for 1CO and 2CO.

Hope that helps someone out there (and might help me if I have to do it again… :slight_smile:)

por (1,4k puntos)
0 votos

Well, I’m finding that I need to process multiple books at a time, since I also need to process notes from multiple users. The way to do that in Regular Expressions is parentheses around a list of book names separated by vertical bars |.

So this is the expression for changing notes in all the gospels:

Find: (VerseRef="(MAT|MRK|LUK|JHN) .+\r\n(\s+<[SC].+\r\n)*?\s+<Status>)todo

For the entire NT (what I needed in my case):

Find: (VerseRef="(MAT|MRK|LUK|JHN|ACT|ROM|\dCO|GAL|EPH|PHP|COL|\dTH|\dTI|TIT|PHM|HEB|JAS|\dPE|\dJN|JUD|REV) .+\r\n(\s+<[SC].+\r\n)*?\s+<Status>)todo

If you want to mark notes as resolved in all books, you can just get rid of the book code (and the space afterwards), or if you want to make sure that there is SOME 3-letter code there (a bit of a sanity check), then you can use:

Find: (VerseRef="\w\w\w .+\r\n(\s+<[SC].+\r\n)*?\s+<Status>)todo
por (1,4k puntos)
0 votos

Alright, here’s one more bonus comment. I was finding a number of Notes that had an empty <Status></Status> field. It turns out I just want to get rid of all of these notes, so I created another RegEx that deletes entire Comments for the specified books.

 +<Comment .+?(VerseRef="(MAT|MRK|LUK|JHN|ACT|ROM|\dCO|GAL|EPH|PHP|COL|\dTH|\dTI|TIT|PHM|HEB|JAS|\dPE|\dJN|JUD|REV) .+\r\n(\s+<.+\r\n)*?\s+</Comment>\r\n)

Note that there is a space before that first + sign. I needed to use a space rather than \s, because that seemed to slurp up the line break before it and mess up the line breaking in the file.

por (1,4k puntos)
+1 voto

Beware that you may get unexpected behavior doing this to your notes file(s). Paratext is not expecting the first comment in a thread to already be “deleted”. Unless you know that the notes file you’re editing is for users who never create notes, I would strongly suggest not doing this.

You should be very careful editing any Paratext file directly!

por [Expert]
(16,7k puntos)

Preguntas relacionadas

0 votos
5 respuestas 318 vistas
I have a test project that has multiple people with write permission (a bit of a free-for-all), and after two people ... conflicts. Is there any way to resolve them all in bulk?
jeffh 1,4k preguntada dic 2, 2020
0 votos
1 respuesta 362 vistas
The book of Acts was checked by one of our translators. He placed a lot of notes for spelling issues and then for all ... would be nice if a right click or so would resolve it.
Anne Stoppels 106 preguntada jun 13, 2023
0 votos
1 respuesta 38 vistas
Tengo un hilo de notas que no se puede resolver. Lleva casi tres años ahí y estoy harto de verlo. Alguna ... Gracias por cualquier ayuda que puedan darme al respecto. John Nystrom
john_nystrom 312 preguntada abr 20
0 votos
5 respuestas 1,3k vistas
Hey everyone, Any idea how I might make bulk (consultant) notes? I want to make the same note in a lot ... could choose the linguistic issues that are relevant to their language.
Caleb R 186 preguntada ago 29, 2022
0 votos
2 respuestas 258 vistas
Similarly to Iver, I have never used RegEx. I have a team who has changed their cross-reference format to use ... any courses, EMDC online sessions on RegEx? Thanks, anon928451
anon928451 127 preguntada sep 21, 2022
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
All the believers were one in heart and mind. No one claimed that any of their possessions was their own, but they shared everything they had.
Acts 4:32
3,044 preguntas
6,004 respuestas
5,671 comentarios
2,026 usuarios