You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+18-39Lines changed: 18 additions & 39 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,19 +13,19 @@ Data for natal charts, solar returns, progressions, and composites are available
13
13
14
14
Simply pass in a date and coordinates to one of the available chart classes, and the returned instance will contain all data necessary to construct a full astrological chart. A serializer is bundled to easily output all data as JSON, or it can simply be printed out as human-readable text.
15
15
16
-
## Documentation
17
-
18
-
Full documentation is available [here](https://github.com/theriftlab/immanuel-python/tree/v1.3.2/docs/0-contents.md), or follow the Quick Start below to see how to quickly generate a natal chart.
19
-
20
16
## Translations
21
17
22
-
Immanuel is currently available in the following locales / languages:
18
+
Immanuel's output is currently available in the following locales / languages:
23
19
24
20
***en_US:** (default) US English
25
21
***pt_BR:** Brazilian Portuguese
26
22
***es_ES:** Spanish
27
23
28
-
See [the documentation](https://github.com/theriftlab/immanuel-python/tree/v1.3.2/docs/5-settings.md#locale) on how to switch. The documentation itself is not currently available in other translations. To contribute in-software translations, see [below](#contributions).
24
+
See [here](https://github.com/theriftlab/immanuel-python/tree/v1.3.2/docs/5-settings.md#locale) for details on how to switch. The documentation itself is not currently available in other translations. To contribute in-software translations, see [here](https://github.com/theriftlab/immanuel-python/tree/v1.3.2/docs/7-contributions.md).
25
+
26
+
## Documentation
27
+
28
+
Full documentation is available [here](https://github.com/theriftlab/immanuel-python/tree/v1.3.2/docs/0-contents.md), or follow the Quick Start below to see how to quickly generate a natal chart.
29
29
30
30
## Quick Start
31
31
@@ -56,16 +56,16 @@ for object in natal.objects.values():
56
56
This will output all the chart objects (planets, points, asteroids etc.) in this format:
57
57
58
58
```
59
-
Sun 10°37'26" in Capricorn, 11th House, Direct
60
-
Moon 16°19'29" in Scorpio, 8th House, Direct
61
-
Mercury 02°16'43" in Capricorn, 10th House, Direct
62
-
Venus 01°52'05" in Sagittarius, 9th House, Direct
63
-
Mars 28°09'26" in Aquarius, 12th House, Direct
64
-
Jupiter 25°15'48" in Aries, 2nd House, Direct
59
+
Sun 10°37'26" in Capricorn, 11th House
60
+
Moon 16°19'29" in Scorpio, 8th House
61
+
Mercury 02°16'43" in Capricorn, 10th House
62
+
Venus 01°52'05" in Sagittarius, 9th House
63
+
Mars 28°09'26" in Aquarius, 12th House
64
+
Jupiter 25°15'48" in Aries, 2nd House
65
65
Saturn 10°23'27" in Taurus, 2nd House, Retrograde
66
-
Uranus 14°49'19" in Aquarius, 12th House, Direct
67
-
Neptune 03°12'07" in Aquarius, 12th House, Direct
68
-
Pluto 11°27'49" in Sagittarius, 9th House, Direct
66
+
Uranus 14°49'19" in Aquarius, 12th House
67
+
Neptune 03°12'07" in Aquarius, 12th House
68
+
Pluto 11°27'49" in Sagittarius, 9th House
69
69
...
70
70
```
71
71
@@ -93,7 +93,7 @@ for object in natal.objects.values():
93
93
Now you will see this appended to the list:
94
94
95
95
```
96
-
Ceres 04°30'28" in Libra, 7th House, Direct
96
+
Ceres 04°30'28" in Libra, 7th House
97
97
```
98
98
99
99
More on the settings & constants in the full documentation - for now, we can see much more data by serializing the chart's `objects` property to JSON like this:
@@ -249,6 +249,7 @@ Planetary dignity scores are based on those of Astro Gold, although these are so
249
249
250
250
The full documentation covers settings in detail, but much of the output can be customized. The settings class allows you to specify and personalize:
251
251
252
+
* Locale / language
252
253
* The house system to use
253
254
* What data each chart returns
254
255
* What planets, points, asteroid etc. to include
@@ -275,29 +276,7 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY
275
276
276
277
Immanuel is forever indebted to the pioneering work of Alois Treindl and Dieter Koch at Astrodienst, and to João Ventura for the incredibly detailed [flatlib](https://github.com/flatangle/flatlib) which first inspired the development of this package.
277
278
278
-
A big thank-you goes to Nathan Octavio who suggested translations, and who translated Immanuel into Brazilian Portuguese.
279
-
280
-
## Contributions
281
-
282
-
New translations for Immanuel's output are always welcome, although it is currently geared to Western-European languages. If you would like to contribute a translation, follow these steps:
283
-
284
-
* Fork the repo.
285
-
* Create a branch named after the locale, eg. `translations/pr_BR` - locale names for various languages can be found online, for example [here](https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oe376/6c085406-a698-4e12-9d4d-c3b0ee3dbc4a), although you should use an underscore rather than a hyphen.
286
-
* Create a subdirectory named after your locale code in the existing `immanuel/locales` directory, and another sub-directory under this called `LC_MESSAGES`.
287
-
* Copy `immanuel/locales/immanuel.pot` into the new `LC_MESSAGES` sub-directory and rename it `immanuel.po`.
288
-
* Within `immanuel.po`, for every English word or sentence in a `msgid` string, if there is a direct translation in your language, enter it in the following empty `msgstr`. For gendered adjectives, you will need to add all gendered variants using `msgctxt` like this:
289
-
```
290
-
msgctxt "masculine"
291
-
msgid "Applicative"
292
-
msgstr "Aplicativo"
293
-
294
-
msgctxt "feminine"
295
-
msgid "Applicative"
296
-
msgstr "Aplicativa"
297
-
```
298
-
* To map genders, a file `mappings.py` will need to be created under your new locale directory alongside `LC_MESSAGES`. See existing mapping files for an example of how to assign all of Immanuel's objects a gender for your language.
299
-
* Once all translations and gender-mapping is complete, you can either compile your `.po` file to an `.mo` file or simply leave this out and I will compile it. Commit your changes and create a pull request.
300
-
* If everything looks good, I will merge to master & prep a new release!
279
+
A big thank-you goes to Nathan Octavio who suggested translations, and who translated Immanuel into both Brazilian Portuguese and Spanish.
New translations for Immanuel's output are always welcome, although it is currently geared to Western-European languages. If you would like to contribute a translation, follow these steps:
4
+
5
+
* Fork the repo.
6
+
* Create a branch named after the locale, eg. `translations/pr_BR` - locale names for various languages can be found online, for example [here](https://learn.microsoft.com/en-us/openspecs/office_standards/ms-oe376/6c085406-a698-4e12-9d4d-c3b0ee3dbc4a), although you should use an underscore rather than a hyphen.
7
+
* Create a subdirectory named after your locale code in the existing `/immanuel/locales` directory, and another sub-directory under this called `LC_MESSAGES`.
8
+
* Copy `/immanuel/locales/immanuel.pot` into your new `LC_MESSAGES` sub-directory and rename it `immanuel.po`.
9
+
* To map noun genders, a file `mappings.py` will need to be created under your new locale directory alongside `LC_MESSAGES`. See existing mapping files for an example of how to assign all of Immanuel's objects a gender for your language.
10
+
11
+
Your file tree should now look something like this:
12
+
13
+
```
14
+
immanuel/
15
+
├- ...
16
+
├─ locales/
17
+
├- ├- ...
18
+
│ ├─ xx_XX/
19
+
│ │ ├─ LC_MESSAGES/
20
+
│ │ │ ├─ immanuel.po
21
+
│ │ ├─ mappings.py
22
+
│ ├─ immanuel.pot
23
+
```
24
+
25
+
Now you can begin translating. Within `immanuel.po`, for every English word or sentence in a `msgid` string, if there is a direct translation in your language, enter it in the following empty `msgstr`. For gendered adjectives, you will need to add all gendered variants using `msgctxt` like this:
26
+
27
+
```
28
+
msgctxt "masculine"
29
+
msgid "Applicative"
30
+
msgstr "Aplicativo"
31
+
32
+
msgctxt "feminine"
33
+
msgid "Applicative"
34
+
msgstr "Aplicativa"
35
+
```
36
+
37
+
The masculine and feminine versions of these adjectives (and neuter if applicable) are determined by the relevant noun's gender as specified in your new `mappings.py` file.
38
+
39
+
Once all translations and gender-mapping is complete, you can either compile your `.po` file to an `.mo` file or simply leave this out and I will compile it.
40
+
41
+
Time to commit your changes and create a pull request - if everything looks good, I will merge to master & prep a new release!
0 commit comments