[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