Pootle 2.7 development issues

Mainly for @blake and @Vimala.

I’ve had the chance to do some basic testing for Pootle 2.7, and it seems fine. More than fine, actually, it seems great. It feels light and responsive to use, and has a lot of cool features like stats and so on. The Pali plugins work great.

One nice customization is the ability to set the amount of segments displayed, this is useful because it varies a lot depending on the screen you use.

The search is a big improvement over 2.5. Previously, you basically had to use “exact match” searching, otherwise it mostly just crashed the page. Now fuzzy searching works well.

A number of the shortcuts still clash with the Chrome shortcuts. The only one of these I’d probably use is “move up and down ten strings”, which we had problems with before. I wonder whether it’s possible to disable some of the Chrome shortcuts, but a little googling suggests this is not trivial. Perhaps we could implement it as a GUI element to avoid this issue? It’s not like, say, “go to next string”, where you’re using it all the time and a shortcut is really useful. Anyway, it’s not such a big deal.

One thing I can’t tell is whether the information that I previously entered is still there. This is the entries made through the two customized inputs:

  1. The “Terminology field”
  2. The “break up word” popup.

Hopefully we can recover this, I made quite a lot of entries!

I’ve looked at uploading translations, and I can’t see where to do it. In an email you said to do it from browse project, but I can’t see any upload function there, or anywhere else. And unless I’m mistaken it seems that’s not what Pootle wants you to do.

One question: what’s the sidebar for? It doesn’t contain anything.

“rebinding” shortcuts and adding new shortcuts is actually pretty easy so we can just do that for move 10 strings down and anything else you find conflicts (poor design in Pootle though to have shortcut clashes with the most popular browser)

The terminoloy stuff was in the past version stored in Elasticsearch. You should be able to use an invoke task, I think it’s in palilookup2.0 branch, and the task should be invoke search.dump_lookup_data, that’ll create lookup-data.json, by the way you sent me a version of lookup-data.json with the backups before you went on the europe trip so you only need to send me a new copy if there is anything new.
I’ll then slightly modify that json file into a new one.

So at the moment the term break and custom glossary are stored in the browser indexeddb - now indexeddb is actually pretty tenacious and generally doesn’t lose stuff, but accessibility isn’t great. So what I’ll do at least for now is implement a simple ability to dump and load custom stuff as JSON, in the longer run we can contemplate integration with pootle user accounts (although the lookup tool itself is cross-site), but for now that’ll make data in and data out possible.

That would be great. 10-up and 10-down are the only broken ones that I use.


In that case, no problems, I haven’t been adding entries since getting back from Europe, so as long as we use the old one we will be fine.

More issues as I come across them. I’m going to mark as small minor issues.

  • I just noticed, my new translations are being marked as by “someone”. Which is technically correct, but perhaps not all that informative. And yes, I am logged in under sujato. This is working now, but note there may be some texts between AN 5.100 and 5.160 that are incorrectly assigned.
  • The popup doesn’t disappear, it remains until the next word is looked up. It should fade after a couple of seconds unless hovering over it. Actually, scratch that: it should only appear when you’re hovering over the text, I don’t see any need for it to persist at all. This is a particularly annoying bug; sometimes it becomes impossible to actually see the text. It applies also to the text selector widget, you know, the thing you hover over to select parts of words to add to the lookup.
  • When a Pali segment has HTML tags, it sometimes displays “Critical XML error”. But the tags are well formed. See eg AN 5.167, segment 4377. It doesn’t seem to cause any problems, but it is glitchy and would be alarming to a user who didn’t know what was happening. Note: this and the next are superseded by our subsequent discussion on removing variants from the pali text.
  • The TM matches should ignore variant readings and such in the source HTML, but they don’t. In fact the matches could generally be made somewhat looser, I’m not sure if there’s a setting for this.
  • Carried over from the previous version, we still need a find & replace. I’m honestly mystified at how this isn’t a basic function. I waste a lot of time going back and changing renderings, when it should be a simple matter. Perhaps this is a consequence of our specific use case with the repetitiveness of the Pali texts, but whatever, we need something. Looking at how the Pootle UI works, perhaps the simplest implementation is this. Currently, when you search something, the results show up with the search results highlighted, except for the active segment. Now, we are of course assuming that we’re talking about search results in the target text only. Would it be possible, I wonder, to make the text in the active segment selected. Then all you have to do is paste the replacement text in. Enter, paste, enter, paste: get it done. The time-consuming part is identifying and selecting the portion that you need.
  • I’ve checked the Quality Control section of Pootle. There’s no user-friendly way to change these so far as I know. Most of them are irrelevant for us, so I guess if possible it would be good to disable these to reduce overhead.
  • Occasionally an entry in the popup will bug out. For example, candana in AN 5.194. It seems this refers to an entry marked as “not mentioned” in the dictionary. Another example is bhaṅgo in an5.209:4.4.
  • There’s a curious little bug that comes from the interaction of search and the Pali lookup. The lookup doesn’t work with search term which is highlighted in search results. I.e. you search, and then if you want to hover over the search term in a result, nothing happens. This applies to the exact string, eg., if the search term is a part of a word, only those glyphs are affected.
  • Another search tweak that would be useful. Could we make it so that the “exact match” really was an exact match? i.e. it matched only the exact glyphs. Currently it will loosely match diacriticals (a=ā, etc.). But sometimes when you need to find a term the loose version will return hundreds of hits, making it basically useless.
  • Not a bug, but just to note that I have started using “needs work” to indicate passages where the segmentation is not consistent. Because it’s a hassle to change these bit by bit, my plan is to mark them, then when the translation, or at least the first draft, is finished, go back and fix these. I will download the PO files, adjust the segmenting manually, then re-upload. I realized that this creates a potentially serious problem: how do we keep the comments in the right place? I’m not sure how this can be done, but anyway, it needs to be figured out.
  • We still need to add custom CSS and navigation for static pages. let me know when you are ready to do this, it evolves on my end.
  • There’s a bug-maybe-not-bug that has fairly consistently recurred using Pootle. Normally it’s pretty responsive. But on what seems to be a semi-regular basis—every two minutes or so—it hangs for around ten seconds or so, before resuming. During this time all web traffic is pretty much suspended, not just pootle. I can’t say if it is actually an issue with Pootle or if it’s just the network. It happens when Pootle refreshes the statistics on the Home page. Not every time; about every fourth time it refreshes. It feels like the app has maybe hit a RAM bottleneck, or something like that. Maybe just disable automatic statistics updates: they’re useless anyway.