1. 27 May, 2020 1 commit
  2. 15 Apr, 2020 1 commit
    • anonym's avatar
      Unfuzzy PO files changed by refs: #17005. · a5e62488
      anonym authored
      I used this hacky approach:
      
          git diff 6b9e13f1^..origin/master  -- *.po > lots-of-fuzzy.patch
          patch -R -p1 < lots-of-fuzzy.patch
          git commit
      
      So I undid all the PO changes of #17005. The idea is to unfuzzy
      lots-of-fuzzy.patch and then apply this patch instead, and then squash
      those changes into the "revert" commit we made above, turning it into
      the commit I'm writing right now.
      
      The fuzzy cases I care aboute looke like this:
      
          -#, no-wrap
          -msgid "Online anonymity and censorship circumvention\n"
          +#, fuzzy, no-wrap
          +#| msgid "Online anonymity and censorship circumvention\n"
          +msgid "Online anonymity and censorship circumvention"
           msgstr "Onlineanonymität und Zensurumgehung\n"
      
      and should be transformed into this:
      
           #, no-wrap
          -msgid "Online anonymity and censorship circumvention\n"
          +msgid "Online anonymity and censorship circumvention"
          -msgstr "Onlineanonymität und Zensurumgehung\n"
          +msgstr "Onlineanonymität und Zensurumgehung"
      
      Behold this ugly state machine (my favored way of solving these kind
      of problems in small steps without having to think much about the
      whole problem):
      
          out = open('unfuzzy.patch', 'w')
          state = 0
          fuzzy_buf = ''
          unfuzzy_buf = ''
          File.read('lots-of-fuzzy.patch').each_line do |line|
            line = line.chomp
            fuzzy_buf   += line + "\n"
            if    state == 0 && line == '-#, no-wrap'
              state = 1
              unfuzzy_buf += " #, no-wrap\n"
            elsif state == 1 && /^-msgid ".*\\n"/.match(line)
              state = 2
              unfuzzy_buf += line + "\n"
            elsif state == 1 && line == '-msgstr ""'
              ;
            elsif state == 2 && line == '+#, fuzzy, no-wrap'
              state = 3
            elsif state == 3 && /^\+#| msgid ".*\\n"/.match(line)
              state = 4
            elsif state == 4 && /^\+msgid ".*"/.match(line)
              state = 5
              unfuzzy_buf += line + "\n"
            elsif state == 5 && /^ msgstr ".*\\n"/.match(line)
              state = 6
              unfuzzy_buf += "-" + line[1..] + "\n"
              unfuzzy_buf += "+" + line[1..-4] + '"' + "\n"
            elsif state == 6 && /^\s*$/.match(line)
              state = 0
              # Eh, so in total the above transformations mean that our hunk
              # results in one less line, so the diff offset is off by one =>
              # bad patch! So we just add a line that we easily can remove
              # later. :)
              unfuzzy_buf += "+########sdf9s7d87fyusdf98sd7f098sd7f09sduf09uj######\n"
              unfuzzy_buf += line + "\n"
              out.write(unfuzzy_buf)
              fuzzy_buf = ''
              unfuzzy_buf = ''
            else
              state = 0
              out.write(fuzzy_buf)
              fuzzy_buf = ''
              unfuzzy_buf = ''
            end
          end
      
      Then I applied unfuzzy.patch and used sed to kill the weird lines I
      had to introduce (see above):
      
          pattern="########sdf9s7d87fyusdf98sd7f098sd7f09sduf09uj######"
          for f in $(git grep -l ${pattern}); do
              sed -i "/${pattern}/d" ${f}
          done
      
      and squashed, and now we have 1386 fewer fuzzy strings, yay! And
      po_lint does not complain, which seems like a good sign. :)
      a5e62488
  3. 12 Apr, 2020 1 commit
  4. 11 Nov, 2019 1 commit
  5. 28 Oct, 2019 1 commit
  6. 10 Sep, 2019 1 commit
  7. 29 Aug, 2019 2 commits
  8. 15 Aug, 2019 1 commit
  9. 10 Aug, 2019 2 commits
  10. 09 Aug, 2019 2 commits
  11. 24 Jul, 2019 1 commit
  12. 11 Jul, 2019 2 commits
  13. 24 Jun, 2019 1 commit
  14. 22 Jun, 2019 4 commits
  15. 18 Jan, 2019 1 commit
  16. 29 Dec, 2018 1 commit
  17. 22 Nov, 2018 1 commit
  18. 01 Nov, 2017 1 commit
  19. 09 Nov, 2016 2 commits
  20. 08 Nov, 2016 1 commit
  21. 03 Nov, 2016 1 commit
  22. 26 Oct, 2016 1 commit