[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: Review Request 118448: Use KCalendarSystem to get the list of the month and day names that shoul
From:       "Denis Steckelmacher" <steckdenis () yahoo ! fr>
Date:       2014-06-13 11:02:16
Message-ID: 20140613110216.16370.88550 () probe ! kde ! org
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/118448/
-----------------------------------------------------------

(Updated June 13, 2014, 11:02 a.m.)


Review request for Baloo, Localization and Translation (l10n) and Alexander Potashev.


Changes
-------

Factorize the two for loops and try to find two years, one leap year and one "normal" year, so \
that every month name can be found regardless of whether the current year is leap or not.


Repository: baloo


Description
-------

The query parser made the erroneous assumption that each language uses at most one calendar \
system, and therefore used i18nc to translate the month and day names recognized by the parser. \
This patches changes that and uses the KCalendarSystem of the user to get the month and day \
names.

I've written the code by looking at how the gregorian, hebrew and islamic calendars work (these \
are the three that I somehow understand). The idea is to try to get as many days and months as \
possible, by incrementing an index until the calendar system returns NULL strings. This works \
well for days, but monthName() requires a year, that is used by some calendar systems to \
rename/add months on leap years. I pass the current year, as most of the users will look for \
dates not too far in the future nor in the past. Is there a mean to get the complete list of \
month names and their corresponding number, using KCalendarSystem or anything else?


Diffs (updated)
-----

  src/queryparser/pass_periodnames.h 1d7d522 
  src/queryparser/pass_periodnames.cpp da688ed 

Diff: https://git.reviewboard.kde.org/r/118448/diff/


Testing
-------

The query parser testsuite still passes, and properly gets the name of Gregorian months and \
days (the tests run using the C locale).


Thanks,

Denis Steckelmacher


[Attachment #5 (text/html)]

<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/118448/">https://git.reviewboard.kde.org/r/118448/</a>
  </td>
    </tr>
   </table>
   <br />




<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: \
url('https://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); \
background-position: left top; background-repeat: repeat-x; border: 1px black solid;">  <tr>
  <td>

<div>Review request for Baloo, Localization and Translation (l10n) and Alexander \
Potashev.</div> <div>By Denis Steckelmacher.</div>


<p style="color: grey;"><i>Updated June 13, 2014, 11:02 a.m.</i></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid \
#b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Factorize the two for \
loops and try to find two years, one leap year and one &quot;normal&quot; year, so that every \
month name can be found regardless of whether the current year is leap or not.</pre>  </td>
 </tr>
</table>







<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
baloo
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px \
solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The query parser made \
the erroneous assumption that each language uses at most one calendar system, and therefore \
used i18nc to translate the month and day names recognized by the parser. This patches changes \
that and uses the KCalendarSystem of the user to get the month and day names.

I&#39;ve written the code by looking at how the gregorian, hebrew and islamic calendars work \
(these are the three that I somehow understand). The idea is to try to get as many days and \
months as possible, by incrementing an index until the calendar system returns NULL strings. \
This works well for days, but monthName() requires a year, that is used by some calendar \
systems to rename/add months on leap years. I pass the current year, as most of the users will \
look for dates not too far in the future nor in the past. Is there a mean to get the complete \
list of month names and their corresponding number, using KCalendarSystem or anything \
else?</pre>  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid \
#b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The query parser \
testsuite still passes, and properly gets the name of Gregorian months and days (the tests run \
using the C locale).</pre>  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> (updated)</h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>src/queryparser/pass_periodnames.h <span style="color: grey">(1d7d522)</span></li>

 <li>src/queryparser/pass_periodnames.cpp <span style="color: grey">(da688ed)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/118448/diff/" style="margin-left: 3em;">View \
Diff</a></p>







  </td>
 </tr>
</table>




  </div>
 </body>
</html>



>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic