<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello, Hossein, welcome to GnuCash!<br>
      [replying to the gnucash-devel list only, no need for this
      discussion to happen on the gnucash-users list also.]<br>
    </p>
    <div class="moz-cite-prefix">On 2025-07-04 09:45, Hossein via
      gnucash-user wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:MkOFQCYf7PUdk0Yad483D1pibt9EsPnJOgrnMz9d_RjETN01LI6f7ekj3QAVlCKRHK8GfXrjqsaDzAoa2T-694gH5vxRPveDRF2ZXxORHg4=@pm.me">
      <pre wrap="" class="moz-quote-pre">Hello dear devloper team
This is hossein.
Actully i found your software in orevious month. Its so usefull software (GNUcash)
everything is going so well.
only i have a request , could you please add Hijri calendar in your software. its so important for us we only use this calendar in our system. even windows support this calendar.
and also im a devloper , there is so many open source lib to convert this calendar.
if i can help please let me know. only i want ask you to add this calendar to yur software. then in our mind it will be the best accounting software</pre>
    </blockquote>
    <p>I am not one of the GnuCash developers, and I cannot speak for
      the project. But I do know a little about software development,
      and about supporting various calendars in software. I have been
      watching the GnuCash project for many years. Maybe I can give you
      some helpful thoughts.</p>
    <p>Adding Hijri calendar support to GnuCash is an interesting
      suggestion. Thank you for it. There is some information you can
      provide to make it more likely that someone contributes this to
      GnuCash.</p>
    <p>First, understand that GnuCash is a free software product
      developed by volunteers. There are only a few current developers.
      They work without pay, because they want GnuCash to succeed. They
      have very long task lists already. They are not likely to take on
      extra tasks based on one suggestion. So, if you really want to see
      a feature in GnuCash, the most certain way is to write the
      software yourself, or find someone to write it, and then offer it
      for free to the GnuCash project.</p>
    <p>Second, you can help prepare the way by being clear about what
      you are proposing. My understanding of the Hijri calendar[1] is
      that it refers to a lunar calendar. The year is 354 or 355 days
      long. There are different forms of Hijri calendar in use, some
      which start months based on humans viewing the new moon, some
      based on mathematical calculations independent of humans seeing
      the moon. So, it would help for you to be clear about which exact
      form of Hijri calendar you mean. State the definition of the
      calendar. If possible, point to written specifications for how the
      calendar works, in languages which developers can understand.<br>
    </p>
    <p>Third, you can help by explaining the advantages for GnuCash
      users of supporting the Hijri calendar. What does it permit that
      GnuCash does not achieve simply by displaying Gregorian dates in
      the numbers, formatting, and language used in the Arabic language
      translation?  For example, I read in Wikipedia[1] that "In almost
      all countries where the predominant religion is Islam, the civil
      calendar is the Gregorian calendar", but the Hijri calendar is "used
      to determine the proper days of <a
        href="https://en.wikipedia.org/wiki/Islamic_holiday"
        class="mw-redirect" title="Islamic holiday">Islamic holidays</a>
      and rituals". GnuCash does bookkeeping, which seems more civil
      than religious to me.  How does using the Hijri calendar help with
      bookkeeping?<br>
    </p>
    <p>Fourth, how does use of Hijri correlate with the UI language of
      GnuCash?  I speculate that people who want to use Hijri dates with
      their bookkeeping are more likely to want the Arabic language UI
      for GnuCash, instead of the French or Japanese UI. Do you
      personally use GnuCash with English UI, or Arabic, or some other
      language?  Is the present GnuCash UI localisation sufficient to
      deliver the benefit of the Hijri calendar, or would the project
      need to improve its UI localisation also?<br>
    </p>
    <p>Then there are some engineering factors. <br>
    </p>
    <p>The GnuCash database stores dates in terms of a Gregorian
      calendar. It is perhaps possible to add a layer which translates
      Gregorian dates to different calendars mathematically. This could
      support more calendars than just Hijri: maybe Chinese, Hebrew,
      Japanese, etc. as well. However, if the calendar you seek wants to
      define days differently than Gregorian days, or if the number of
      days per month is not predictable by mathematics, that is more
      difficult to support.</p>
    <p>GnuCash runs on Windows, Linux, and macOS systems, and its source
      code is freely available to compile and run on a variety of other
      platforms. It primarily uses C++ code, but other languages as
      well. You point out, "there is so many open source lib to convert
      this calendar." Great! Please give links for a few of them. How
      many run on all these platforms?  How many are compatible with
      C++?</p>
    <p>The GnuCash project tracks enhancement requests like this in the
      GnuCash bug database[2]. I don't see a request for Hijri calendar
      support there. Perhaps this discussion should continue by email
      for a while, but eventually it would be good for you to write your
      request as an enhancement request "bug report" in the bug
      database. Instructions for this[3] are in the GnuCash wiki.<br>
    </p>
    <p>I hope this is helpful for you as you refine your interesting
      idea.</p>
    <p>Best regards,<br>
            —Jim DeLaHunt, Vancouver, Canada<br>
    </p>
    <p>[1] <a class="moz-txt-link-rfc2396E" href="https://en.wikipedia.org/wiki/Islamic_calendar"><https://en.wikipedia.org/wiki/Islamic_calendar></a><br>
      [2] <a class="moz-txt-link-rfc2396E" href="https://bugs.gnucash.org/"><https://bugs.gnucash.org/></a><br>
      [3] <a class="moz-txt-link-rfc2396E" href="https://wiki.gnucash.org/wiki/Enhancement_Requests"><https://wiki.gnucash.org/wiki/Enhancement_Requests></a><br>
    </p>
  </body>
</html>