Compare commits

..
Author SHA1 Message Date
John Ralls 17c1dfe950 File copy doesn't work if the glob can match directories. 2018-08-05 13:18:35 -07:00
John Ralls 4531cbd049 Install the docs/gramps directory in the bundle.
Fixes bug #10705.
2018-08-04 21:40:34 -07:00
Paul Culley d24fc82031 Fix error when opening bsddb db in read-only mode (#628)
Fixes #10615
2018-06-22 10:44:13 +10:00
Paul Culley 16a9cd4c93 Fix FanChartDesc for typo (#610)
Fixes #10565

- Bug occurs when selected person has more than 4 parents.
2018-05-09 13:23:05 +10:00
Paul Culley 94018ed33a Fix multi-page Graph output to pdf with filenames containg spaces (#560)
Fixes #10470
2018-03-03 09:02:17 +11:00
arnaullv ffd77dc404 Updated catalan translation 2018-02-20 18:19:49 +00:00
Zdeněk Hataš 7c6e531c26 Czech translation fixes 2018-02-19 19:11:00 +01:00
Sam Manzi bc4b006dbe Increment year to 2018 for About box. 2018-02-13 13:29:09 +11:00
John Ralls 40da63a0fb Release gramps 4.2.8 on Mac. 2018-02-10 11:02:33 -08:00
John Ralls 6fafe8f6c3 Update pyicu to v 2.0.3 2018-02-10 11:01:25 -08:00
John Ralls 66a0c619b9 Consolidate Python2 and Python3 meta-modules.
GObject-Introspection now works with Python3 so the split isn't needed any more.
2018-02-10 11:01:24 -08:00
Nick Hall 6ffc095db0 Bump to 4.2.9 2018-02-09 21:12:16 +00:00
Nick Hall 5a5f4970f7 Release Gramps 4.2.8 2018-02-09 21:05:56 +00:00
Nick Hall ea3d49e50c Update Changelog and NEWS files 2018-02-09 21:02:23 +00:00
prculley e4b6d9beda Fix Geography views for bad 'dbstate.is_open()' test
Fixes #10417
2018-02-09 09:01:41 -06:00
Nick Hall b6f68c03bb Bump to 4.2.8 2018-02-08 20:36:04 +00:00
Nick Hall f5a66c3958 Release Gramps 4.2.7 2018-02-08 20:27:16 +00:00
Nick Hall c6ce61b4b9 Update ChangeLog and NEWS files 2018-02-08 19:58:51 +00:00
Nick Hall 9c050491ef Update translation template for new release 2018-02-08 17:51:13 +00:00
prculley 54ab2820c3 Fix Export View to CSV when Unicode characters are present
Fixes #10404
2018-02-06 22:26:04 +00:00
prculley 1bf9fef1cb Fix several intl date displayers for missing parameter.
Fixes #10196
2018-02-05 09:40:18 -06:00
niememat dafde8df12 Update finnish translation 2018-01-29 20:52:22 +02:00
Paul Culley ac6eb9661c DescendantTree report; fix crashes and Title spacing for Gramps42 (#537)
* Fix DescendentTree report for crashes

Fixes #10377

* Fix DescendentTree report; more space beneath Title

Issue #10377
2018-01-29 14:35:03 +11:00
Paul Culley 09bc188a1c Fix Book XML handler to deal with unusual characters in Book name Gramps42 (#536)
* Fix Book XML handler to deal with unusual characters in Book name

Fixes #10387

* Fix 'Generate Book' dialog for bad transient parent

* Fix Book XML handler for unusual characters in report name

Issue #10387
2018-01-29 14:29:43 +11:00
Leonhaeuser 4d68f68742 update German translation 2018-01-27 15:30:53 +01:00
Nick Hall 70a634da1e Add support for new genealogy tree report category
Issue #10223.
2018-01-26 22:19:40 +00:00
prculley ec44396680 Fix Media Preview Gramplet for closed db
Fixes #10332
2018-01-22 21:30:44 +00:00
prculley 5490ff0b84 Suport FTM 2017 Gedcom tags on import
Bug #10285
FTM adds subordinate PLAC and OBJE data to INDI.ADDR which is
non-standard.  So treat it as a Residence Event, instead of an
Address.
FTM puts _DATE and _TEXT tags subordinate to OBJE, also non-standard.
2018-01-22 21:30:44 +00:00
prculley a339e68877 Fix Person, Family Sidebar Filters to add custom Event types
Fixes #10112
Also fix Family Sidebar Filter RelType init with closed db
2018-01-22 21:30:44 +00:00
prculley dd0956d6ce Fix QuestionDialog display for html like characters in title
Fixes #10298
2018-01-22 21:30:44 +00:00
prculley 7911785ea4 Fix FamilyRelationshpType _DATAMAP order to correspond with values
Fixes #10275
2018-01-22 21:30:43 +00:00
prculley 9eebeb05da Fix Gedcom import for illegal Gedcom Family Attributes
Issue #10262
TMG Gedcom exports an illegal NCHI with sub-data for FAM.  Gramps
could not handle this and attached the sub-data to the FAM creating
some corrupted Event records.
2018-01-22 21:30:43 +00:00
prculley a492511533 Fix Gedcom export for bad Hebrew Months
Fixes #10245
2018-01-22 21:30:43 +00:00
prculley ed907def1f Change INSTALL to replace 'python' with 'python3 for script invokes 2018-01-22 21:30:43 +00:00
prculley 22a9cbdcc8 Fix CSV importer for place event name using gramps_id
Fixes #10239
2018-01-22 21:30:43 +00:00
prculley 84e0d45ab6 Fix Geography view 'Find' when db is closed.
Fixes #10229
2018-01-22 21:30:43 +00:00
prculley 85f42908f4 Fix interactive search for exception on click then down arrow
Fixes #10226
2018-01-22 21:30:43 +00:00
prculley da1c942509 Create where_is utility to locate a binary in the standard places
This is particularly useful on Mac OS X where Gramps is passed a PATH
that does not include elements added by the terminal shell.
2018-01-22 21:30:43 +00:00
prculley d98db27dcc Fix relationship Graph so Unicode chars on Multiple pages works.
Fixes: #9783, #9359, #8080, #6782, #6108
Bugs: #6431, #4164, #1485, #2964, #2790
2018-01-22 21:30:43 +00:00
prculley 2b74e0734a update authors file 2018-01-22 21:30:43 +00:00
prculley ebae9c3915 Fix Gedcom import for "1 MARR Y" issue
Fixes #10188
2018-01-22 21:30:43 +00:00
Paul Culley 286289aaf7 Fix Export Web Family Tree for errors on file write (#525)
Fixes #10364
2018-01-20 16:59:05 +11:00
Paul Culley e8489bf53c Fix Citation Editor to Tab out of Confidence ComboBox (#526)
Fixes #10351
2018-01-20 16:30:53 +11:00
John Ralls 9946d6f993 Reset the dependencies on the new meta-module. 2018-01-15 07:36:58 -08:00
John Ralls 00f87cc70e Use online modules.
Instead of the path that works on my machines only.
2018-01-15 07:33:21 -08:00
John Ralls 2fbc0b8aeb Consolidate Python2 and Python3 meta-modules.
GObject-Introspection now works with Python3 so the split isn't needed any more.
2018-01-15 07:27:43 -08:00
Nick Hall 56122b0a54 Use None as the foreground colour for untagged rows in list views
The call to get_style_context is not required.  It also caused
problems in Windows due to excessive calls to the foreground_color
method.

Fixes #10365.
2018-01-14 18:03:14 +00:00
Nick Hall 6648ecb5ff Fix shading colour in relationship view for dark themes
Fixes #7749.
2018-01-09 18:11:59 +00:00
Nick Hall 1b2d0a1956 Fix link colour for dark themes
Issue #7749.
2018-01-09 18:11:42 +00:00
Nick Hall 6bdac08358 Fix default foreground colour in list views for dark themes
Issue #7749.
2018-01-09 18:11:22 +00:00
prculley e74dc2fa8c fix Undo; crashes due to race in Gtk
Some Redraws occur during a model clear when the row changed signal
is emmitted.  Model is only partially cleared at that point.
Under some conditions, some more of the model gets
cleared before the redraw completes, and redraw fails.
fixes #9932
2017-10-14 10:05:24 -05:00
prculley 314f7cce65 Gedcom import with OBJE/FORM URL on event
Fixes #7593.
2017-10-14 01:35:33 +01:00
Josip 11776db76d EOFError [Ran out of input] in Clipboard (#411)
[EOFError: Ran out of input] for Clipboard when you drag and
drop the bolded lines in selected tabs of Person Edit

Attempt to drag and drop any of the "bolded lines" in the Events or
Names tabs into the clipboard window. The unbolded lines drag and drop
ok.

Fixes #8788.
2017-10-14 01:26:49 +01:00
Josip eecf48e6e5 Cannot drag & drop textual value via clipboard
Allows dnd of textual values from clipboard and shows icon of
target-type during dragging instead of row image, except for text target
shows actual text as drag icon.

Fixes #7532.
2017-10-14 01:21:41 +01:00
prculley bedebc524b Fix 'DbBsddbRead' object has no attribute '_Callback__callback_map'
Fixes #10219
Same idea as 87a5412 for Gramps50
2017-10-06 14:32:25 -05:00
SNoiraud c01ee8ed7d Reports - Narrated Web Site Failure
Fixes #10206
2017-09-24 21:17:20 +02:00
John Ralls 578f4bdf62 Fix link path in gramps-launcher compile instructions. 2017-08-26 16:38:31 -07:00
John Ralls baadf6158a Release 4.2.6 on Mac. 2017-08-26 11:19:32 -07:00
romjerome 024204771b bump to 4.2.7 2017-08-01 11:08:29 +02:00
romjerome 7ed03d43d5 make official '4.2.6' release 2017-08-01 11:04:28 +02:00
romjerome 24d97f528e Update ChangeLog and NEWS files 2017-08-01 10:58:22 +02:00
romjerome d9bb009e6b typos 2017-08-01 10:52:48 +02:00
Zdeněk Hataš 16d7f92b97 update to recent pot 2017-07-31 10:38:24 +02:00
romjerome 1a1c82c261 start '4.2.6' section 2017-07-29 15:16:25 +02:00
romjerome b9cd0450dc Update template
no modified or new message id, update references (header and comments)
2017-07-29 15:09:59 +02:00
vantu5z df01461171 update Russian translation
- merge last template
- fix typo
- change 'е' to 'ё' in some words
2017-07-26 17:41:01 +03:00
Nick Hall b573c7d7cf Fix HasCitation rule in citation filter sidebar
Filter parameters should be of type str.

Fixes #10076.

(cherry picked from commit adb4883291)
2017-07-24 23:52:10 -07:00
Nick Hall 60f944adcf Remove deprecated locale flag
re.L is deprecated and re.U is now default.

(cherry picked from commit da3db4bc28)

Fixes #10136
2017-07-24 23:50:44 -07:00
Paul Franklin 9e12a5d364 Date Editor has 'Type' and 'Quality' labels swapped
Fixes #10135
2017-07-23 11:24:46 -07:00
Leonhaeuser c138aeb8c6 update German translation
Fix #0010131
2017-07-15 00:21:32 +02:00
Lajos Nemeséri 00a5ea1a39 Update Hungarian translation 2017-07-08 13:33:01 +02:00
John Ralls 9bb4aaaf49 Open web links with /usr/bin/open on Mac and Python older than 3.5
Works around https://bugs.python.org/issue24452
Fixes #10105
2017-07-03 10:16:19 -07:00
John Ralls ae6db43fc4 FamilyGroup Report crash
Python's sort routine gratuitously converts the bytearrays returned by
ICU::Collator::getByteArray to a string when storing it. This resulted
in a TypeError when attempting to compare a just-returned bytearray
with a stored string.

We work around this by converting the bytearray into its hexadecimal
representation and then decoding that into a string.

Fixes #10077.
2017-06-27 12:15:30 -07:00
Paul Franklin 5972477550 names not displayed in relationship graph
Issue #10093
2017-06-22 17:26:58 -07:00
Paul Franklin 215f6bf88d Outdated Bugtracker link in Unexpected Error reporting wizard
Fixes #10100
2017-06-21 09:37:54 -07:00
Paul Franklin fc3e41d696 Family Lines Report generates empty PDFs when name [has double-quotes]
Fixes #10096
2017-06-21 09:18:19 -07:00
Paul Franklin 706d29a480 non-local character in DB name causes crash on Windows
Fixes #10095
2017-06-19 09:50:15 -07:00
Josip 26c50fdbdd Quick search with Czech characters -> Crash
Crash happen when checking for "event.string" in "treeview_keypress"
function in "gramps/gui/widgets/interactivesearchbox.py"
Note that

https://lazka.github.io/pgi-docs/Gdk-3.0/classes/EventKey.html#Gdk.EventKey
says it is deprecated and should never be used.

Gdk.keyval_to_unicode return the corresponding unicode character, or 0
if there is no corresponding character.

Fixes #9130.

(cherry picked from commit bc17245331)
2017-06-10 18:52:18 +02:00
John Ralls 7a61a0e96f 8366: February 29th invalid date in Julian dual-dated leap year 2017-05-31 12:07:16 -07:00
Paul Franklin efab48d5cc 10033: Note isn't included on CIR when it is attached to a name 2017-05-19 06:48:32 -07:00
Nick Hall 647a3b226a Revert bugs #8785 and #9700
Expanding tree selectors by default caused performance issues.
The expanded person selector also made it more difficult to
select a specific person in some circumstances.

GEPS 041 has been created to discuss a better selector design.
2017-05-15 17:16:33 +01:00
Sam Manzi db3655d156 Fix bug 9975 Incorrect SoundEx result (#388) 2017-05-05 16:30:47 +10:00
Paul Culley 95e0f43bf5 bug 9564; fix exception on Event filter editor (#378)
for 'Events occurring on a particular day of the week' filter
2017-04-30 12:51:24 +10:00
Paul Franklin 77e9d796da 9995: Bug in the Name Editor / Group As 2017-03-22 17:21:03 -07:00
Paul Franklin 2af262435d add datestrings to gramps42 Turkish translation 2017-03-16 10:24:38 -07:00
Sam Manzi 4fca41c8c9 Merge pull request #352 from beernarrd/sl-gramps42
Sl gramps42
2017-02-12 14:59:10 +11:00
Nick Hall 8c7133ab00 9945: Write PlaceID links in CSV export
When places are included in the export use PlaceID links,
otherwise generate a formatted place for the event.
2017-02-11 18:47:07 +00:00
beernarrd 425c15e6f5 Merge branch 'maintenance/gramps42' into sl-gramps42 2017-02-09 17:47:00 +01:00
Doug Reider 0ab7c316f0 Fix bookmarks keybinding on Mac to match the documentation. 2017-02-08 21:16:31 -07:00
Bernard Banko a219421e36 updated sl translation 2017-02-08 01:37:00 +01:00
Bernard Banko 7bbc976141 corrected slovenian name editor keywords 2017-02-08 01:09:57 +01:00
Paul Franklin f1b311c9cd 9004: Error printing graphical report ancestor tree 2017-02-07 09:24:27 -08:00
Jérôme Rapinat 3c2231591f 9004: Error printing graphical report ancestor tree 2017-02-07 09:18:00 -08:00
Peter Landgren ac18460059 Update Swedish translation 2017-02-02 10:43:22 +01:00
romjerome aebe2810f8 9907: add a spacing value for children widgets
fit better for some Gtk themes
2017-02-02 10:26:19 +01:00
romjerome 4ff908bcef 8855: update API doc for place displayer 2017-02-02 10:24:07 +01:00
Matti Niemelä f8c1a54def update finnish translation 2017-01-25 14:50:13 +01:00
romjerome 3d1ec9e658 9904: revert fd83162
TODO: need a solution for recursive iteration and private records
2017-01-25 14:38:12 +01:00
romjerome fd83162289 9904: Errors printing graphical report ancestor tree 2017-01-24 17:27:51 +01:00
romjerome f092144a93 9908: Custom Family Relations not shown in the filter siderbar 2017-01-24 17:24:00 +01:00
romjerome 041d969cce 9899: fix non-textual value on place name 2017-01-14 14:53:02 +01:00
Luigi Toscano c656b38d9e Italian translation: updates and fixes 2017-01-11 01:56:23 +01:00
Luigi Toscano 2f1df8ac69 Refresh it.po using the current pot template 2017-01-08 16:22:14 +01:00
Nick Hall 49416739c1 9878: Update note text before closing
The object must be updated so that changes can be detected.
2017-01-03 21:28:10 +00:00
SNoiraud 5f2a6df0d0 9865: Can not link the place on geography view 2017-01-02 11:30:49 +01:00
Paul Franklin 0be00be4d9 9862: ancestor tree doesn't use replacements 2016-12-28 20:17:15 -08:00
Josip ab17a5340a 8128: GtkDialog mapped without a transient parent
Fix Reorder Relationships dialog

(cherry picked from commit 3b4ceeb630)
2016-12-23 14:22:44 +01:00
prculley e578316bd9 bug 9235: Shrink size of Break Lock (and other QuestionDialogs) 2016-12-23 10:43:46 +11:00
prculley 1c83948b40 bug 9470; Don't allow selecton of Active or Home person until actually commited 2016-12-23 10:30:05 +11:00
Sam Manzi 63ce7383cc Merge pull request #297 from prculley/bug9478_42
bug 9478; fix quick search exception when nothing in searched list
2016-12-23 10:17:00 +11:00
prculley 11f0c0254b bug 9478; fix quick search exception when nothing in searched list 2016-12-22 09:03:49 -06:00
Paul Franklin d691cfdb1c bump to 4.2.6 2016-12-17 21:38:51 -08:00
Paul Franklin 58b12e702a 9612: Problem adding parents [with Latin names] 2016-12-17 18:32:34 -08:00
Paul Franklin 2bd1a4b757 Merge branch 'maintenance/gramps42' of file:///misc/home2-rw/pf/gramps/my-git-gramps/git-gramps_my-barerepo into maintenance/gramps42 2016-12-17 10:27:27 -08:00
John Ralls 54b6563e63 Release 4.2.5 on Mac. 2016-12-16 15:12:03 -08:00
John Ralls 0964bfd683 Fix failure to load default gramplets if GExiv2 is missing or too old. 2016-12-16 15:10:22 -08:00
romjerome 35ceba1e4d make official 4.2.5 release 2016-12-15 21:55:19 +00:00
Nick Hall dc82105fa4 Add ChangeLog file to manifest 2016-12-15 21:54:37 +00:00
romjerome c5d40f70d0 update ChangeLog files 2016-12-15 21:28:40 +00:00
romjerome 77ccb1770b make official 4.2.5 release 2016-12-15 16:45:15 +01:00
romjerome 68f54f9b08 update News file 2016-12-15 16:33:03 +01:00
romjerome 78c807814d fix a missing import 2016-12-15 15:59:10 +01:00
romjerome a515501552 Tag editor: Tweak improvement on buttons order 2016-12-15 15:50:53 +01:00
SNoiraud 0e05b2f535 9340: The configparser is assuming the wrong encoding. 2016-12-15 09:28:54 +01:00
SNoiraud b999e2df78 9563: Sorting in family tab of narrated web report 2016-12-14 10:20:34 +01:00
Leonhaeuser 906035b022 fix 0009696 2016-12-13 23:32:48 +01:00
Sam Manzi 9be31757e0 9801 Silence remaining PyGIWarning 2016-12-14 07:42:36 +11:00
SNoiraud cc50e4e972 9563: Sorting of relationships in family tab of narrated web report 2016-12-13 14:19:38 +01:00
Josip 4a583e187c Support for Windows Python3 pythonw.exe 2016-12-10 22:17:42 +01:00
romjerome bc51334178 start to update NEWS 2016-12-10 10:56:26 +01:00
Nick Hall d1d08a1552 9799: Use latest valid date rather than today
This is useful for historic places when an event date is not
available.
2016-12-09 19:29:53 +00:00
Nick Hall 3a58492424 9813: Modify endonym handling in place displayer
If no language code is matched, the default name is now the first
in the list, rather than a name with no language code.
2016-12-09 19:10:10 +00:00
Nick Hall 9860fdb941 9737: Fix house number concatenation 2016-12-09 18:58:08 +00:00
Espen Berg aedf26b871 Corrected another typo in relationship calculator, Norwegian 2016-12-07 21:57:07 +01:00
Espen Berg 47ba95d005 Language correction in Norwegian locale relationship calculator 2016-12-07 20:00:43 +01:00
Paul Culley 6b5253abce Merge pull request #282 from prculley/gramps42
bug 9818 allow merging of families with one or more parents in common
2016-12-06 09:15:57 -06:00
prculley ca5953f1bc bug 9818 allow merging of families with one or more parents in common 2016-12-06 09:06:03 -06:00
vantu5z 44e89c0a67 update Russian translation 2016-12-06 14:47:38 +03:00
SNoiraud 1acbd3e3f7 7309: Jump to Gramps ID functionality doesn't work 2016-12-05 11:09:38 +01:00
romjerome b568c1bb97 update french translation 2016-12-05 09:44:12 +01:00
romjerome 1b05edf7b4 9276: update translation strings template
No new entry, update references and comments
2016-12-05 09:40:21 +01:00
romjerome 5cd646d22b 9276: ability to search alternate place names when selecting place 2016-12-05 09:37:24 +01:00
romjerome aca78ad3d5 typo on french translation 2016-12-05 09:31:01 +01:00
Espen Berg d85ab22db6 Cleaned out one more line in nb.po 2016-12-04 20:29:46 +01:00
Espen Berg 70998b2a6b The unlocking message is on one loooong line. Inserted line breaks in Norwegian translation for cleanliness 2016-12-04 19:56:32 +01:00
Espen Berg f4a82ce6e0 Revising Norwegian bokmål language file (at last) 2016-12-03 23:10:57 +01:00
Espen Berg 477efa8a5a Revising Norwegian bokmål language file (at last) 2016-12-03 23:10:36 +01:00
romjerome 8f05973b29 9812: 'Check and Repair' tool ignores some objects with tag support 2016-12-03 11:01:28 +01:00
vantu5z cb251ccccf update Russian translation 2016-11-30 13:44:02 +03:00
romjerome 95afffef79 9815: Fix clear map action on Geography 2016-11-29 10:30:40 +01:00
Matti Niemelä e52e0d3734 Update finnish translation 2016-11-29 10:27:16 +01:00
Zdeněk Hataš bb58b6fc1b czech translation update 2016-11-28 14:36:09 +01:00
romjerome de7342d3e8 9801: recommend 'gir1.2-goocanvas-2.0' on debian package 2016-11-26 13:01:28 +01:00
romjerome 46d8839880 8555: Database repair tool always modify all source objects 2016-11-26 12:49:09 +01:00
romjerome 10781bde6b Update french translation 2016-11-24 08:14:08 +01:00
romjerome 7a4b7aa77b Update translation strings template 2016-11-24 08:10:44 +01:00
romjerome c03ccaa740 typo on french translation 2016-11-24 08:08:11 +01:00
Nick Hall d682302612 9534: Exclude places outside valid date ranges 2016-11-22 18:18:35 +00:00
Leonhaeuser 6bbe44f6aa update German translation 2016-11-10 04:51:51 +01:00
Sam Manzi 703703cc75 Merge pull request #265 from prculley/bug9755_42
bug 9755, fix duplicated Gramps IDs on Gedcom import (gramps42)
2016-11-05 14:06:07 +11:00
Nick Hall 17c51b3e76 9767: Fix icon and tooltip in LDS editor
The icon on the family selection button was removed by mistake in
commit 75009f0.
2016-11-01 18:49:15 +00:00
prculley 3e53d086ea bug 9755, fix duplicated Gramps IDs on Gedcom import 2016-10-30 15:31:24 -05:00
Sam Manzi b0fd9bcceb Merge pull request #261 from prculley/csv_42
Fix bug 9733, CSV import Fails, 9676, failure for certain types of cross references etc.
2016-10-29 14:20:38 +11:00
Sam Manzi 7e2585d27e 9685 Fix Unicode error - Markup for invalid date format 2016-10-29 14:09:39 +11:00
prculley cd4afcdb32 Fix bug 9733, CSV import Fails, 9676, failure for certain types of cross references etc. 2016-10-25 12:07:44 -05:00
Paul Culley 4e5112d3fd Merge pull request #258 from prculley/bug9458_42
bug 9458, fix Import Vcard can create multiple surnames with all selected as 'Primary'
2016-10-24 15:51:11 -05:00
Paul Culley 87e38afdde Merge pull request #257 from prculley/bug8993_42
bug 8993; fix Gedcom import in some alternate languages; improper date parsing
2016-10-24 15:44:49 -05:00
prculley 2a55fd268c bug 9458, fix Import Vcard can create multiple surnames with all selected as 'Primary' 2016-10-24 15:40:57 -05:00
prculley dec4380c82 bug 8993; fix Gedcom import in some alternate languages; improper date parsing 2016-10-24 15:31:59 -05:00
romjerome 05d4cc39e3 typo on the french translation 2016-10-23 16:27:02 +02:00
SNoiraud e5a7fdc512 8250 and 9736 : remove patchs. need to found another solution. 2016-10-21 23:13:24 +02:00
vantu5z 3f83395603 update russian translation 2016-10-18 09:44:01 +03:00
SNoiraud 850685c3ef 9736: Export options 'Preview' buttons create hidden quickreport. 2016-10-16 22:41:10 +02:00
Paul Franklin ac00bd1843 9739: Wrong parsing Numeric date format for cs_CZ locale 2016-10-12 13:16:13 -07:00
SNoiraud b2775b3892 9736: Export options 'Preview' buttons create hidden quickreport. 2016-10-11 13:44:17 +02:00
Matti Niemelä f2d822b8b7 Update finnish translation 2016-10-04 17:38:45 +02:00
Leonhaeuser 3d1ec482e4 update German translation 2016-10-03 20:43:30 +02:00
Zdeněk Hataš 9f6e1ebe7d czech translation update 2016-10-01 15:06:49 +02:00
romjerome b7b8daef40 typo, Change FICHIER to File 2016-09-28 15:41:42 +02:00
Lajos Nemeséri 7f6757bcad Update Hungarian translation 2016-09-28 15:32:18 +02:00
Nick Hall 57794a7ed2 9721: Fix alignment radio buttons in style editor 2016-09-25 17:27:04 +01:00
SNoiraud 517f794af6 9700: Select Place search & Source/Citation hierarchy should NOT be expanded 2016-09-16 20:53:37 +02:00
Sveinn í Felli ce59ea6c4a Add 9693: Icelandic translation update(msgfmt error fixed) 2016-09-13 08:01:55 +10:00
Sveinn í Felli 00dc403ec3 Add 9693: Icelandic translation update 2016-09-12 13:38:33 +10:00
John Ralls 68f7238048 Add gir files to bundle.
Enables change of library paths in the typelibs to point at
@executable_path by gtk-mac-bundler.
2016-09-10 13:55:35 -07:00
John Ralls 3c8cd9f7ab Revert "Remove pango modules from bundle, pango no longer uses them."
This reverts commit e311de1964 because for
the moment we have to build with an older Pango.
2016-09-05 15:16:51 -07:00
John Ralls 4a12c344c6 escape illegal '--' in comment. 2016-09-05 15:16:50 -07:00
romjerome fd0d9cf297 bump to '4.2.5' 2016-09-04 16:46:17 +02:00
romjerome ce9f77ac77 make official 4.2.4 release 2016-09-04 16:44:02 +02:00
romjerome eac82f538e Update NEWS file for '4.2.4' 2016-09-04 16:38:42 +02:00
romjerome 6511379220 Update french translation 2016-09-01 17:59:57 +02:00
romjerome 84c8fada7a Update translations template
see rev 19447b
2016-09-01 17:55:34 +02:00
Zdeněk Hataš fd96331b6d czech translation update 2016-08-31 12:36:59 +02:00
Sam Manzi 5a5868d183 Merge pull request #221 from prculley/fax_42
Fixes for the PHON, FAX, EMAIL and WWW Gedcom tags to support Gedcom v5.5.1.
2016-08-31 07:39:32 +10:00
romjerome e53587783e Merge pull request #226 from paulohpmoraes/maintenance/gramps42
Translated untranslated and fuzzy strings.
2016-08-30 11:58:19 +02:00
Paulo Henrique Moraes 072048bdf1 Translated untranslated and fuzzy strings.
Translated untranslated and fuzzy strings. Some changes, corrections and uniformization.
2016-08-29 20:56:37 -03:00
romjerome eec2f8477b Update translations template and french translation
new entry see rev998c3
2016-08-29 17:27:23 +02:00
Matti Niemelä 402cf35f88 Update Finnish translation 2016-08-29 17:17:44 +02:00
Leonhaeuser cd478d0e0d update German translation 2016-08-27 23:19:18 +02:00
vantu5z 8b41cab3fc update russian translation 2016-08-27 13:11:45 +03:00
prculley 19447be47c Fixes for the PHON, FAX, EMAIL and WWW Gedcom tags to support Gedcom v5.5.1. 2016-08-26 10:12:24 -05:00
Paul Culley dd179ad790 Merge pull request #207 from prculley/bug9549_42
bug 9549 Chinese characters are not rendered properly in pdf reports
2016-08-23 13:50:53 -05:00
romjerome 9ca553bf7f Update french translation 2016-08-22 16:08:34 +02:00
romjerome d3768f384f Update translations template 2016-08-22 15:55:26 +02:00
Lajos Nemeséri 3b557ead10 Update Hungarian translation 2016-08-22 15:32:46 +02:00
prculley 87cb2654ab use relative import 2016-08-21 15:07:19 -05:00
Paul Culley a0c96e576f Merge pull request #219 from prculley/CustEvent_42
Cust event 42
2016-08-20 16:15:00 -05:00
prculley 92f444eb7e No need for test files 2016-08-20 16:07:11 -05:00
prculley 9c533916f1 Support for FTM and others Custom Gedcom Event Tags on import 2016-08-20 15:44:56 -05:00
SNoiraud 1f45e8996b 9341: _deeprelationshippath line 98, NoneType in find_deep_relations 2016-08-18 12:13:59 +02:00
SNoiraud f95c8a2036 9341: _deeprelationshippath filter rule, addition of filter rules and classname 2016-08-18 11:44:15 +02:00
SNoiraud 9c10b59c8b Narrativeweb : some dates are incorrect in tar archive. 2016-08-17 00:16:00 +02:00
John Ralls 53dedde014 Update graphviz to 2.38. 2016-08-16 12:12:46 -07:00
John Ralls 47e4b3de25 Change to a binary launcher in Mac app bundles. 2016-08-16 12:12:46 -07:00
SNoiraud 3af32ec258 8250: Gramps crashes when closed while exporting 2016-08-15 10:19:34 +02:00
Zdeněk Hataš 04e123a5ce czech translation update 2016-08-11 14:19:13 +02:00
SNoiraud 70daa4029a 9596: Some events are not shown in familymaps page. 2016-08-08 11:30:57 +02:00
Leonhaeuser 22fb6f2841 update German translation 2016-08-06 23:19:18 +02:00
romjerome eb5c8da8b0 9608: remove old debug bloc (rev 586bd2fc)
special cases generating AttributeError
2016-08-06 11:50:59 +02:00
Paul Culley 586573d289 Merge pull request #216 from prculley/Medi2_42
Medi2 42
2016-08-04 11:28:19 -05:00
prculley 43c1f24c2d Fix whitespace 2016-08-04 11:20:19 -05:00
prculley 998c3c37fc Add GUI and CLI config option to allow easy setting 2016-08-02 16:09:07 -05:00
romjerome a8c32dcb16 Merge pull request #209 from prculley/da_po
update da.po from attached patch file in bug 9609
2016-08-02 14:06:36 +02:00
romjerome 632aada923 Merge pull request #212 from beernarrd/maintenance/gramps42
Bug 9600
2016-08-02 14:01:04 +02:00
Matti Niemelä 883f29901f Update Finnish translation 2016-08-02 13:54:08 +02:00
Bernard Banko 32d7c236e8 semptember corrected to september and update to latest pot 2016-08-02 00:17:20 +02:00
prculley 13b3de4955 update da.po from attached patch file in bug 9609 2016-08-01 11:19:56 -05:00
prculley c83326a4d6 bug 9549 Chinese characters are not rendered properly in pdf reports 2016-07-30 11:19:22 -05:00
prculley 1cada500de Gedcom import media improvements part 2
This PR supports a variety of changes to Media support, mostly having to do with embedded OBJE tag lines.

- Support v5.5.1 OBJE/FORM/MEDI tag on embedded OBJE
- Change OBJE/BLOB tag from "not understood" to "Recognized but not supported"
- Detect multiple FILEs in a single embedded OBJE >> v5.5.1 feature not supported
- Changed OBJE/FORM/TYPE to internationalize the data (same as SourceMediaType)
- Corrected XREF/OBJE/FORM to correctly save and use its value (was a typo in original code) and to accept any case.
- Added test for missing title on embedded OBJE, and use filename if missing.
- Added test for missing FILE on XREF style OBJE, with warning like the embedded OBJE.
- Support _PRIM tag to handle primary photo for Legacy Family Tree, Ancestral Quest, Family Origins, MyHeritage Family Tree Builder, and others.
- Some of these changes would have required making patches to six different nearly identical pieces of code.  So I combined the similar methods and the two functions they called into a single function.
- Added function to check for a subordinate line with a specific tag, and report unexpected lines as not understood.  Used that function in OBJE/REFN/TYPE and OBJE/_PRIM processing.
- Test files imp_FTM_PHOTO.ged and imp_MediaTest.ged have been updated to include testing on these changes.
2016-07-30 10:39:15 -05:00
Paul Culley a6126dbd03 Merge pull request #205 from prculley/42update
backporting some changes to Gramps42 libgedcom
2016-07-28 08:58:22 -05:00
prculley 92d2181621 backporting some changes to Gramps42 libgedcom
Backport of some changes from master:
Minor textual changes:
  GRAMPS > Gramps
  place_displayer > _pd
  __object_ > __media_
  object_parse_tbl > media_parse_tbl
  __find_object_handle > __find_media_handle
  __find_or_create_object > __find_or_create_media
  build_media_object > build_media
  and a few pylint related spacing changes
Sorting of Sources bug9475
Change "class xxx(object)" to "class xxx"
Use "with open" instead of "try: except:"
change "raise NotImplemented" to "raise NotImplementedError()"
2016-07-28 08:46:00 -05:00
prculley 018f60c826 fix Trailing Whitespace on libgedcom.py 2016-07-27 15:40:42 -05:00
Nick Hall 194bafd484 9427: Add new argument to IsEnclosedByRule 2016-07-26 18:35:05 +01:00
SNoiraud 93422189fe Narrativeweb : place title must agree the references.place-auto configuration 2016-07-26 09:23:23 +02:00
Doug Blank 6ade6ba419 Merge pull request #203 from prculley/csv
CSV backport to gramps42 for bug 9501 and 9499
2016-07-17 11:36:02 -04:00
prculley 802bab7bbe CSV backport to gramps42 for bug 9501 and 9499 2016-07-17 10:13:30 -05:00
Matti Niemelä 191bda5418 update Finnish holidays 2016-07-16 20:25:45 -07:00
Paul Franklin cfdbbf7260 Revert "update Finnish holidays"
This reverts commit 718410e28f.
2016-07-16 20:14:10 -07:00
Matti Niemelä 718410e28f update Finnish holidays 2016-07-16 20:06:17 -07:00
Jérôme Rapinat c46a4c4351 9578: Some strings in tools and report dialogs will not translate 2016-07-16 16:56:58 -07:00
Doug Blank 42f9f4701c Merge pull request #200 from prculley/Ged1_42
Bug 9575, Gedcom import improvements in media area to support v5.5.1 and FTM
2016-07-16 17:20:25 -04:00
prculley 016db63648 Bug 9575, Gedcom import improvements in media area to support v5.5.1 and FTM 2016-07-16 15:28:57 -05:00
Doug Blank 57902a4333 Merge pull request #199 from prculley/FTM_LINK_42
Gedcom import of FTM .ged file containing _LINK tags not supported gramps42
2016-07-16 16:03:04 -04:00
prculley e3e61191ba Trailing whitespace 2016-07-16 13:58:58 -05:00
prculley d985980ad7 Gedcom import of FTM .ged file containing _LINK tags not supported 2016-07-16 13:52:10 -05:00
John Ralls 3cdc1bd988 Change pycairo-python3 to pycairo.
pycairo for python2 is now py2cairo.
2016-07-16 10:40:25 -07:00
John Ralls e311de1964 Remove pango modules from bundle, pango no longer uses them. 2016-07-16 10:37:37 -07:00
Doug Blank c5a14c94ae Merge pull request #192 from prculley/bug9479_42
Bug 9479 Gedcom import loses spaces in text fields from FTM
2016-07-16 12:03:48 -04:00
prculley 7e234beff7 Typo 2016-07-16 10:50:55 -05:00
Doug Blank 3e21084f02 Merge pull request #197 from prculley/FTM_photo_42
Bug (Feature) 9580 Gedcom import of FTM file containing _PHOTO tags
2016-07-16 11:23:15 -04:00
Doug Blank e53df38c8a Merge pull request #195 from prculley/bug9579_42
bug 9579 Gedcom import of FTM file with OCCU record crashes import
2016-07-16 11:22:22 -04:00
Leonhaeuser b999680f83 update German translation 2016-07-16 10:42:17 +02:00
prculley a19790c5ea Missed self.photo initializer 2016-07-15 09:49:29 -05:00
prculley a49b0792d0 Bug (Feature) 9580 Gedcom import of FTM file containing _PHOTO tags 2016-07-15 09:35:19 -05:00
SNoiraud 5e7b84bdde 9362: Attempting to select an "Available item" for the Book Report gives an error 2016-07-15 12:07:43 +02:00
prculley 2eed3c4ab6 Fix for either valid or invalid FTM Gedcom 2016-07-14 10:48:33 -05:00
prculley b5260704df bug 9579 Gedcom import of FTM file with OCCU record crashes import 2016-07-14 10:48:33 -05:00
vantu5z 28cc175fb5 update russian translation
merge with new template and backporte translations from master
2016-07-14 15:59:58 +03:00
Paul Franklin 73eaf011a0 9570: crash - 'NoneType' object has no attribute 'get_child_ref_list' 2016-07-11 13:53:04 -07:00
SNoiraud f1156c9627 9560: Family Page maps are non-functional in Narrative Web report 2016-07-11 21:22:31 +02:00
prculley a72e6f158c Bug 9479 Gedcom import loses spaces in text fields from FTM 2016-07-08 12:02:34 -05:00
Paul Franklin 2ac3935092 9568: Translated text will not be printed in the program 2016-07-07 11:27:49 -07:00
Leonhaeuser 62f47ffd6d update German translation 2016-07-06 20:55:52 +02:00
SNoiraud 87bd65c855 9566: String not translated in geoplaces 2016-07-06 00:03:35 +02:00
Paul Franklin fd1f290752 9556: Descendant Report does not recognise auto. place title generation 2016-07-02 20:42:26 -07:00
SNoiraud 71a25a9e28 9557: Translated text will not be printed (bad copy/paste) 2016-07-02 23:00:34 +02:00
SNoiraud ef28c52f4c 9557: Translated text will not be printed in the program 2016-07-02 22:21:00 +02:00
SNoiraud ef75fc8c15 Revert "9557 : Translated text will not be printed in the program"
This reverts commit 72a9897283.
2016-07-02 22:18:32 +02:00
SNoiraud 72a9897283 9557 : Translated text will not be printed in the program 2016-07-02 11:04:22 +02:00
SNoiraud 96f2091ee9 8452: Geography : Attempting to print crashes (add parent to dialog) 2016-06-29 08:27:56 +02:00
SNoiraud f24ef15518 8452: Geography : Attempting to print crashes(core dumps python) 2016-06-28 10:47:02 +02:00
prculley be6715cd99 9124: GEDCOM doesn't accept CR as a line terminator
Original code used readline() when file was in binary mode; this works
only if file contains '\n', true only for CRLF and LF line endings.
Switched to file text mode with correct encoding and universal newline
support.
2016-06-27 21:09:43 +01:00
Matti Niemelä 16e2ed4f54 Update finnish holidays 2016-06-24 16:45:07 +02:00
Matti Niemelä 31ad46d73e Update finnish translation 2016-06-24 16:40:20 +02:00
vantu5z 73ee71eb2a Update Russian translation 2016-06-22 10:07:02 +03:00
Paul Franklin 4619dbe1a5 9537: Wrong Numeric date format for cs_CZ locale 2016-06-21 14:15:46 -07:00
vantu5z be1bf15964 Ru.po merged with new template 2016-06-21 11:20:11 +03:00
SNoiraud a9fe12c394 9495: Narrativeweb: inconsistent & incomplete display of place hierarchy labels 2016-06-21 08:00:09 +02:00
Paul Franklin d460e9a6eb Merge pull request #178 from vantu5z/maintenance/gramps42
9529: change translation of trees
2016-06-20 14:46:35 +00:00
vantu5z d4373249f7 9529: change translation of trees 2016-06-20 09:44:15 +03:00
SNoiraud 75f383f90f 9495: Narratedweb : inconsistent & incomplete display of place hierarchy labels 2016-06-18 19:30:36 +02:00
SNoiraud f776dc480e 9494: Narratedweb : surname listing errors for people with multiple partners 2016-06-18 19:28:10 +02:00
romjerome 7d4da1d9ef Minor improvement on french translation 2016-06-12 16:02:29 +02:00
Paul Franklin 7786cdcf4c 9517: [In "Verify" people w/ death event w/o date are not thought dead] 2016-06-11 20:28:03 -07:00
Jérôme Rapinat 2ea2cb135e 9453: While starting gramps, it fails to pop up "tips of the day" 2016-06-07 02:04:25 -07:00
Leonhaeuser 22ad26b7ef Update German translation 2016-06-04 16:31:55 +02:00
Doug Blank dc77d95274 Merge pull request #169 from prculley/bug9459_42
bug 9459 GEDCOM import in CLI mode with .ged file containing ANSEL encoding tries to pop up gui
2016-06-02 17:38:19 -04:00
prculley 8b6bd226af bug 9459 fix merge conflict 2016-06-02 16:14:40 -05:00
Doug Blank 6e0a6c4c87 Merge pull request #168 from prculley/bug9123_42
bug 9123 GEDCOM import with media files that have no path fails
2016-06-02 16:08:22 -04:00
Doug Blank c8d5a40efc Merge pull request #165 from prculley/bug8729
bug 8729 place names empty if Gedcom ADDR record contains no street
2016-06-02 16:08:11 -04:00
Nick Hall 54d9d45486 9472: Use first matching name when generating place titles 2016-05-30 23:07:00 +01:00
prculley 92659145d0 bug 9123 GEDCOM import with media files that have no path fails 2016-05-28 18:08:12 -05:00
SNoiraud 8acb425674 9474: [Geography] Geoclose and mother handle 2016-05-28 22:07:33 +02:00
prculley c8d097269c bug 8729 place names empty if Gedcom ADDR record contains no street 2016-05-28 11:48:03 -05:00
Nick Hall fd4737bfc9 Tidy up place configuration options 2016-05-27 19:30:34 +01:00
Leonhaeuser 4a27671337 update German translation 2016-05-26 22:03:38 +02:00
Nick Hall 5cec72ed04 Use CSS to fade background colour in ValidatableMaskedEntry 2016-05-26 18:27:14 +01:00
Doug Blank 9ad824d56e Merge pull request #157 from prculley/bug7949
Bug 7949, crash on GEDCOM import with empty _AKA lines
2016-05-24 12:14:33 -04:00
prculley b77089e97f Bug 7949, crash on GEDCOM import with empty _AKA lines 2016-05-24 09:26:23 -05:00
Nick Hall 57a963d0b2 9427: Add inclusive option to IsEnclosedBy rule 2016-05-23 15:27:00 +01:00
SNoiraud df55780880 9075: Saving/closing new person window with Alt-o does not find gender 2016-05-23 11:10:02 +02:00
Nick Hall 170d63f378 Fix to allow deferred translation of place type 2016-05-22 22:50:19 +01:00
Nick Hall 31bdd8f5f1 9466: Include all place types in place report 2016-05-22 19:10:07 +01:00
Nick Hall 8f396cb6e9 9314: Allow place selection both individually and by filter
Add the places selected individually to the list generated by
the filter.
2016-05-22 18:26:42 +01:00
Nick Hall f3dcc68a44 8785: Expand tree in selectors automatically 2016-05-22 18:00:57 +01:00
Nick Hall ed936f9975 9381: Fix Encloses gramplet to display correct place references 2016-05-21 18:57:23 +01:00
romjerome 6f94ec8ef3 Update for appdata stuff 2016-05-16 12:15:25 +02:00
Paul Franklin 653e18db5a 9408: UnboundLocalError on ODF doc backend 2016-05-16 11:47:31 +02:00
josip 1e9de5517f 8429: Media Preview: wrong frame
fix signals
2016-05-16 11:38:38 +02:00
Matti Niemelä 9caa89fe3b Update Finnish translation 2016-05-16 11:28:40 +02:00
Sam Manzi 56e640731f Merge pull request #149 from prculley/bug9416
Bug 9416 GEDCOM import PLAC:FORM in local mode doesn't work
2016-05-13 09:31:26 +10:00
Sam Manzi 826c9a4122 Merge pull request #144 from prculley/bug9414
Bug 9414 fix empty Place Alternate Names on import
2016-05-13 08:54:45 +10:00
Sam Manzi d9c095a8d3 Merge pull request #143 from prculley/bug9448
Bug 9448: Merge unit test for PlaceCheck not working correctly
2016-05-13 08:51:40 +10:00
prculley 89e0297881 Bug 9416 GEDCOM import PLAC:FORM in local mode doesn't work 2016-05-12 10:36:57 -05:00
prculley 848fe67ada Bug 9414 fix empty Place Alternate Names on import 2016-05-12 09:27:12 -05:00
prculley 47f798077e Bug 9448: Merge unit test for PlaceCheck not working correctly 2016-05-12 09:14:00 -05:00
Doug Blank 358428181b Merge pull request #129 from prculley/bug9173
Bug 9173, fix broken GEDCOM import PLAC:FORM handling
2016-05-11 17:02:38 -04:00
Doug Blank c48034eca8 Merge pull request #128 from prculley/bug9415
Bug 9415 Place Alt Names gets duplicated entries
2016-05-11 17:02:23 -04:00
Doug Blank f8486d4954 Merge pull request #131 from prculley/bug9425
Bug 9425 GEDCOM import some Place Names & Titles are blank
2016-05-11 16:40:31 -04:00
Doug Blank 9ce3a52d33 Merge pull request #132 from prculley/bug9430
Bug 9430 GEDCOM import PLAC or ADDR attached Notes etc. are lost
2016-05-11 16:40:10 -04:00
erikdrgm d2de684c5e Updated 160510 nl translation 2016-05-10 09:57:44 +02:00
Doug Blank c405b58a75 Merge pull request #136 from RossGammon/app2
Followup to PR 134
2016-05-08 13:52:14 -04:00
Doug Blank e3e787c038 Merge pull request #134 from RossGammon/appstream
9443: Gramps not appearing in Gnome Software
2016-05-08 09:29:12 -04:00
prculley 987f9d0729 Bug 9430 GEDCOM import PLAC or ADDR attached Notes etc. are lost 2016-05-06 12:13:38 -05:00
prculley 9a207499c3 Bug 9425 GEDCOM import some Place Names & Titles are blank 2016-05-06 11:25:24 -05:00
prculley c7d8f6ba6e Bug 9173, fix broken GEDCOM import PLAC:FORM handling 2016-05-06 11:09:50 -05:00
prculley 30fb4916f3 Bug 9415 Place Alt Names gets duplicated entries 2016-05-05 16:07:31 -05:00
Doug Blank c3e0d8c7c0 Merge pull request #126 from prculley/bug8809
Bug 8809 Multiple GEDCOM imports creates duplicate event IDs
2016-05-05 13:22:57 -04:00
prculley a7a8b72df4 Bug 8809 Multiple GEDCOM imports creates duplicate event IDs 2016-05-05 11:45:11 -05:00
SNoiraud e9c076520a 9417: The place page in webreport is complete mess (missing parenthesis) 2016-05-04 20:34:56 +02:00
SNoiraud 8103bb7b4a 9417: The place page in webreport is complete mess 2016-05-04 17:47:44 +02:00
SNoiraud 93882fa9cb 7390: Gallery tab of Source view does not display .ods files 2016-05-04 12:05:57 +02:00
romjerome 2534368419 Typo on french translation 2016-05-01 11:47:54 +02:00
SNoiraud aa71dd095d 9405: Narrated Web report - Individual sort order not correct on the Surnames tab 2016-04-24 22:27:31 +02:00
Sam Manzi 880a583a0f 8981 Specify required GtkSpell and GExiv2 version 2016-04-23 10:20:12 +10:00
SNoiraud 88bdc33051 9377: Narrated web : possible value not defined 2016-04-21 09:03:00 +02:00
SNoiraud 155a03a92f 9377: Narrated web report link to thumbnails is broken on certain pages 2016-04-21 08:41:35 +02:00
SNoiraud f322ab43a6 9389: Narrated Web report - Individual page sort order has changed 2016-04-20 08:33:25 +02:00
John Ralls 29b94e5de8 Bug 8563: Gramps reports that it can't find dictionaries.
Turns out it was really that enchant couldn't find its backend because
an environment variable wasn't set.
2016-04-16 15:07:06 -07:00
Zdeněk Hataš e4573b9b7a czech translation update 2016-04-16 14:40:30 +02:00
John Ralls 73d13ba826 Release 4.2.3 2016-04-11 07:29:24 -07:00
romjerome 0414893c34 bump to 4.2.4 2016-04-10 18:57:46 +02:00
romjerome 27c1c15a20 make official 4.2.3 release 2016-04-10 18:53:58 +02:00
romjerome e03ac241e1 Update NEWS 2016-04-10 18:43:53 +02:00
romjerome 5eb841b8d3 Fix Swedish translation 2016-04-10 18:13:05 +02:00
romjerome 92612cebf2 Fix typos on french translation 2016-04-10 18:08:26 +02:00
Nemeséri Lajos 03178fb1df Update Hungarian translation 2016-04-10 18:05:36 +02:00
SNoiraud 93cb85be3d 9363: Creation of the "graphic calendar report" failed 2016-04-08 17:25:10 +02:00
Paul Franklin f9f98c79a7 fix "TypeError: 'tuple' object does not support item assignment" 2016-03-31 12:33:38 -07:00
Josip 8a283ff376 9335: Gramps has experienced an unexpected error 2016-03-28 14:53:17 -07:00
SNoiraud cfeb97a524 9347: Places index + Media index are incorrectly sorted 2016-03-28 14:19:33 +02:00
SNoiraud 9887e6376d 9345: Error when trying to create narrative report (residence event) 2016-03-28 14:02:27 +02:00
romjerome 7fe02eb49a 9315: typo 2016-03-28 11:22:45 +02:00
romjerome f5e6d30d9b Update french translation 2016-03-28 09:38:25 +02:00
romjerome 61ee32cb7b Update for strings related to the Icelandic handlers 2016-03-28 09:30:38 +02:00
romjerome f6df78bf33 9315: [Regression]: Filter set by default on selector is ignored
'Show all' button status and first load
2016-03-28 09:26:16 +02:00
Paul Franklin fc687e3bfa remove unneeded Icelandic directives 2016-03-22 11:57:49 -07:00
Paul Franklin 1c1d05b2ac 9320: D.A.R. has ? for locations when [private data is excluded] 2016-03-21 16:51:54 -07:00
SNoiraud 0c3b2d44a8 8602: Age in the event family view column is wrong. 2016-03-21 08:22:40 +01:00
SNoiraud dba68c5876 9278: Crash when dragging multiple media items to clipboard 2016-03-19 23:43:12 +01:00
SNoiraud 1a35de0446 9316: Unable to build narrated web site 2016-03-19 23:08:02 +01:00
romjerome fd9b38dbed 9151: [Regression] vCal Export File format invalid
Do not encode text anymore (patch by Serge)

Fix an invalid RRULE for annual recurence

TODO: maybe try to update to VCalendar 2.0 (iCal)?
2016-03-16 11:21:52 +01:00
Paul Franklin 2965533e2c 9294: Error occurs for Complete Individual Report -- complete database 2016-03-14 17:23:40 -07:00
SNoiraud 25018d68e3 9297: Narrated Web Site Report: places page is no longer sorted alphabetically 2016-03-08 09:44:21 +01:00
romjerome d8c9ace62e 9242: multiple lines on firstname can corrupt ODT file
fix gramps XML file via import/export but do not know the cause
2016-03-07 15:00:43 +01:00
romjerome 3aa2b6688e 9006 9111 9274: fix scrolling in persons view after typing some letter
TypeError: unsupported operand type(s) for +=: 'NoneType' and 'int'

Thank you schnitker for report, investigations and patch
2016-03-07 14:50:55 +01:00
SNoiraud 2bbe278f41 9293: Narrative Web report further stops in error. 2016-03-06 13:16:23 +01:00
SNoiraud 037f8607e0 Geography : 9207: incomplete patch. 2016-03-06 11:28:24 +01:00
SNoiraud 97fbbfa31c Geography : 9207: geography view Location could not convert string to float 2016-03-06 10:42:34 +01:00
Matti Niemelä 5fe4ab64a9 Update Finnish translation 2016-03-02 13:45:03 +01:00
Paul Franklin 4bbee3539b make setup.py typeout more accurate 2016-02-29 16:41:11 -08:00
Bernard Banko 8744da91c3 update Slovenian translation 2016-02-28 10:57:14 -08:00
Leonhaeuser 68b35f73fb update German translation 2016-02-27 18:32:33 +01:00
romjerome af58730c15 Fix corrupted comments 2016-02-25 07:33:37 +01:00
romjerome 9784e43b79 avoid EOL styles mixup
compilation issue under Windows OS
2016-02-24 09:18:11 +01:00
SNoiraud cc1726f799 0743: Searching in people view when surnames are collapsed 2016-02-23 11:09:35 +01:00
Sveinn í Felli 7a114ac493 Update Icelandic translation 2016-02-21 14:40:19 +01:00
Sveinn í Felli 179f793685 Add dates and relationships handlers for Icelandic 2016-02-21 14:36:39 +01:00
Zdeněk Hataš 8a2161fa47 czech translation update 2016-02-19 10:14:06 +01:00
Sveinn í Felli cd45753c07 Update Icelandic translation 2016-02-17 16:20:03 +01:00
Nick Hall d335a6dd80 Rename EnclosedBy gramplet back to Locations 2016-02-12 17:39:07 +00:00
Nick Hall 382635796b Fix error when changing database in new locations gramplets 2016-02-11 19:38:38 +00:00
SNoiraud c163bfc18e 9094: Double-clicking on a source causes exception : better solution. 2016-02-10 17:40:25 +01:00
John Ralls 37a4d19a92 Fix comment about getting the right encoding for stdout. 2016-02-09 11:20:13 -08:00
John Ralls a7306150a2 Bug 9178: Error loading Participants add-on in French locale
Restores setting the stdout encoding to sys.getdefaultencoding() in a
way that works with Python3 (thanks to Jack O'Connor on stackoverflow)
and in a place that sets it for the loggers, too.
2016-02-09 11:06:50 -08:00
Zdeněk Hataš e7db5c9db5 czech translation update 2016-02-09 14:55:00 +01:00
John Ralls 54e8ea0e39 Bug 9159: Date format does not match system.
Make US English a special-case locale with en_GB the default if the locale
is en_XX where XX != US.

Note that untranslated languages will still end up using the 'C' locale.
2016-02-08 13:12:31 -08:00
Nick Hall 36da63b33e Enhance the Locations gramplet
Create a new "Encloses" gramplet to the display places that the
active place encloses. Rename existing gramplet to "Enclosed By".
2016-02-08 19:27:53 +00:00
SNoiraud a112f8f3fa 2060: Individuals with incomplete names, not updated when name completed 2016-01-31 12:09:20 +01:00
SNoiraud 91d23b3594 6873 : Children gramplet in Family view does not get updated when a birth/death events are added to a child 2016-01-31 11:29:01 +01:00
SNoiraud 425fe632f3 5417 : Non-image media objects don't appear in the main window gallery. 2016-01-31 10:53:07 +01:00
SNoiraud b7b61e3cf0 9136: Pressing tab stops at element in gui places 2016-01-30 15:32:13 +01:00
SNoiraud e79e325b28 9094: Double-clicking on a source in the citation gramplet causes exception 2016-01-28 19:51:09 +01:00
SNoiraud 638cd571d4 9200: "Find text in record" filter crash 2016-01-27 12:57:23 +01:00
SNoiraud f031abd7c9 9153 : vCard Export does not work 2016-01-27 10:53:13 +01:00
SNoiraud 07d3bb80ac 7619 : Notes used in the "To Do" gramplet are found by the Remove Unused Objects tool 2016-01-25 10:55:26 +01:00
Fedik d90b34a883 Ukrainian translation: update translation, a bit 2016-01-24 15:25:04 +02:00
Fedik ea9b4eba01 Ukrainian translation: update from template 2016-01-24 14:24:09 +02:00
Luigi Toscano 675633f055 Merge pull request #92 from sebschub/maintenance/gramps42
Finish translation: ending ";" in keywords of desktop entry
2016-01-24 12:04:40 +01:00
Doug Blank 9ec04d86a5 Remove django from testing 2016-01-23 18:30:24 -05:00
Doug Blank a09a014285 Use built-in python3; exclude user_test 2016-01-23 18:22:18 -05:00
John Ralls 299cf15f1e Tell Travis to use python 3.3 VirtualEnv instead of system python.
Should fix travis failures when installing get-pip.
2016-01-23 10:49:29 -08:00
Peter Landgren 4d30398948 Partial update of Swdish translation. 2016-01-22 13:59:08 -08:00
Marek Szuba 5072cdb844 Only consider the values of LC_ALL, LANG, and LANGUAGE, in that order, when choosing the default locale.
Default arguments of locale.getdefaultlocale() consider the value
of LC_CTYPE in addition to the three aforementioned all-category
variables, which under certain conditions (LC_CTYPE set, LC_ALL and
the rest of LC_FOO unset) would result in the locale set in LC_CTYPE
(which should only affect interpretation of byte sequences as
characters) spilling over to other locale categories handled by the
GrampsLocale object. The most visible effect of that spill was that
with LC_ALL, LANG, LANGUAGE and LC_MESSAGES unset but LC_CTYPE set,
Gramps would start using the wrong UI language.
2016-01-22 13:46:33 -08:00
John Ralls c21687134c Bug 9191: Unable to select Unicode UTF-8 encoding on command line
Make the option descriptions line up when the value is shorter than 10
characters. Also make the value and description headings line up with the
list and put "Available values are:" first.
2016-01-22 13:46:33 -08:00
Sebastian Schubert 56ff535968 Finish translation: ending ";" in keywords of desktop entry 2016-01-22 10:26:21 +01:00
Ivan Komaritsyn 5711548e60 update Russian translation 2016-01-18 11:04:17 -08:00
John Ralls ee00bc8881 Fix err undefined exception. 2016-01-18 09:15:32 -08:00
Zdeněk Hataš 6f8e7b4694 czech translation update 2016-01-18 11:53:35 +01:00
Leonhaeuser 569f751b79 update German translation 2016-01-17 13:29:04 +01:00
romjerome c7bfce5066 9121 9146 9162: Cannot import gedcom generated by RootsMagic
custom place details ignoring PlaceName()
2016-01-16 15:13:53 +01:00
Doug Blank a9b42e8a3d 9166: People sorted by surname view now crashes
Fixed issue by surrounding gramplet load code in try/except.
2016-01-14 07:15:50 -05:00
SNoiraud 61e08dd723 8950 : Narrative web : html elements emitted in different order 2016-01-14 09:40:12 +01:00
Luigi Toscano 54e4ee8856 Italian translation: updates and fixes 2016-01-11 01:41:36 +01:00
Luigi Toscano fed79f99d6 Merge the current it.po with the last template 2016-01-11 01:29:34 +01:00
SNoiraud 38f66a2f58 9163 : Narrative web : "errno: 1, operation is not permitted" when creating archive. 2016-01-09 10:20:32 +01:00
Josip cf7edc6844 9122: Complete Report about person (whole database) - PDF - crash 2016-01-08 20:53:52 -08:00
John Ralls a01fc6d442 Release gramps-4.2.2 2016-01-07 12:00:55 -08:00
romjerome 266f67f12b bump to 4.2.3 2016-01-06 17:55:10 +01:00
romjerome 62ce43aa5d Make official '4.2.2' release 2016-01-06 17:44:13 +01:00
romjerome e543bfd310 Update NEWS 2016-01-06 17:28:09 +01:00
romjerome 4c0c769bcd Avoid false/positive for 'msgfmt --check-format' 2016-01-06 17:12:53 +01:00
Peter Landgren 51f3e4928d Update Swedish translation 2016-01-06 16:14:15 +01:00
Doug Blank fda0c4a91c 9155: Do not create an additional database access 2016-01-06 15:51:00 +01:00
romjerome 9c8389f4ef 9155: Unhandled AttributeError when db.get_tag_from_handle returns None 2016-01-06 14:49:34 +01:00
romjerome 657068663e Merge pull request #88 from vantu5z/maintenance/gramps42
update Russian translation
2016-01-06 13:40:04 +00:00
vantu5z fed57a939d update Russian translation 2016-01-06 12:09:55 +03:00
erikdrgm 0e044392b8 update nl translation 151204 2016-01-03 14:31:37 +00:00
erikdrgm c802eedd08 Updated 151014 nl translation 2016-01-03 14:31:37 +00:00
Nick Hall 22c160f2bd Add validation to gender field 2016-01-01 19:19:26 +00:00
Paul Franklin be70956e90 9073: "Unknown" spouse uses hardcoded string [deferred translation] 2016-01-01 10:46:36 -08:00
Tom Samstag 0106661523 fix handling of a None handle 2016-01-01 09:45:43 -08:00
Nick Hall a1b30a5f7e 8556: ValueError: underlying buffer has been detached
The expat parser requires a binary mode file object.
2015-12-31 18:07:41 +00:00
romjerome cf5d9e183a Year 2016 2015-12-31 11:20:19 +01:00
romjerome 1fd06c506e 9114: mars month instead of Marzec (Polish month)
Merge with last template
2015-12-31 11:15:12 +01:00
romjerome 047ff3673c Update template 2015-12-31 10:40:35 +01:00
Paul Franklin bef7e7249c 8128: GtkDialog mapped without a transient parent 2015-12-30 21:43:58 -08:00
Ivan Komaritsyn 63b766245c update Russian translation 2015-12-29 23:51:36 -08:00
Paul Franklin d207408717 8128: GtkDialog mapped without a transient parent
The set of fixes was actually triggered by comments in
https://gramps-project.org/bugs/view.php?id=9122#c45895
https://gramps-project.org/bugs/view.php?id=9122#c45921

The project is ongoing, since it's needed for our Windows users.
2015-12-29 22:47:52 -08:00
Doug Blank ef762645e3 8556: ValueError: underlying buffer has been detached (from Paul's patch) 2015-12-29 23:03:25 +00:00
Doug Blank 257ea9117f Remove encoding on stdout and stderr 2015-12-29 23:02:45 +00:00
Leonhaeuser 611c3bd13d smal updates German translation 2015-12-29 20:46:44 +01:00
Paul Franklin b4d7e4b8b3 9137: Report Plugin [LaTeX backend] crashes 2015-12-28 12:01:39 -08:00
Zdeněk Hataš 474ee487dd czech translation update, Places terminology fixes 2015-12-28 20:35:33 +01:00
SNoiraud 44ae41107d 9127 : Geography : performance issue due to bad initialization. 2015-12-26 15:42:55 +01:00
SNoiraud d5f871e8e7 9127 : Geography : performance issue when selecting the events or places views. 2015-12-23 11:14:24 +01:00
Ivan Komaritsyn 6bca978207 update Russian translation 2015-12-18 21:35:24 -08:00
Doug Blank 0e51573af9 Merge pull request #78 from romjerome/maintenance/gramps42
9057: fix counter for filtered entries
2015-12-14 15:27:15 -05:00
mich 9232e78c0a 9057: fix counter for filtered entries
typo, identation on TreeBaseModel
2015-12-14 21:23:42 +01:00
Ivan Komaritsyn 15c3837968 update Russian translation 2015-12-13 10:14:44 -08:00
Ivan Komaritsyn dba52f4d2f update Russian translation 2015-12-07 16:53:59 -08:00
SNoiraud e0502e1ba8 Narrativeweb : remove an unused import. 2015-12-07 15:39:02 +01:00
SNoiraud f73d719b9e 8946 : webcal : make the month name clickable in the year overview page 2015-12-06 18:35:09 +01:00
SNoiraud b91eb1540a 8950 : sort problem : TypeError: unorderable types: EventRef() < EventRef() 2015-12-06 11:24:55 +01:00
romjerome cfa0e0c4f7 Update french translation 2015-12-05 12:05:24 +01:00
romjerome 0937286eba 9041: Father/mother's age attributes are not translated on DA and DD reports
Update translation template
2015-12-05 12:02:44 +01:00
SNoiraud a57257415c 8048 : Narrative web report: add author to citations 2015-12-05 11:35:46 +01:00
SNoiraud f7a09fc558 8950 : events list and family list are differents between two reports. 2015-12-05 10:52:07 +01:00
Leonhaeuser bb33cdadb6 update German translation 2015-12-05 02:14:59 +01:00
SNoiraud b9d3378020 8950 : narrativeweb : change mtime at the bad place and made twice. 2015-12-04 11:11:16 +01:00
SNoiraud ca2607de0e 9016 : refactor the previous patch using _pd.display_event() 2015-12-03 23:23:57 +01:00
SNoiraud 75a4a380a9 9650 : permission denied : change mtime to origin instead of destination. 2015-12-03 00:47:11 +01:00
Paul Franklin 72d54a319f 9041: remove temorary _DATAMAP entries (from [908ace1])
not needed after [df90ef5]
2015-12-02 08:51:36 -08:00
SNoiraud e50f0c145e 9016 : narrativeweb: Place title based on current date not that of the event 2015-12-02 13:55:42 +01:00
Paul Franklin df90ef58fd 9041: Father/mother's age attributes are not translated on reports 2015-11-30 21:48:56 -08:00
Paul Franklin 4640ad39a1 improve Russian date handler, and R. d.h. unittests 2015-11-29 20:00:22 -08:00
Ivan Komaritsyn 2bc4dd3418 improve Russian translation 2015-11-29 19:59:17 -08:00
romjerome 2c774355ac 9058: ReferencedBySelectionProxy can forget some referenced tags
Tag records list forgot tags linked with some primary objects

was on Gramps XML file format, not related to backup or tags on Person
2015-11-29 11:25:00 +01:00
romjerome b5871d1ae5 minor spacing issue onfrench translation 2015-11-29 11:11:52 +01:00
romjerome 908ace174b 9041: Add missing 'Father/mother age' translation strings
temp workaround for mapping them via translation dict

update and fix punctuation on french translation

thank you Paul
2015-11-29 10:42:59 +01:00
Nick Hall 1b07d9a621 9027: Put tag selection list in alphabetical order 2015-11-28 19:13:31 +00:00
Nick Hall 24377c66c8 Remove redundant code 2015-11-28 18:53:28 +00:00
Nick Hall f11c7b9de0 9079: Fix delete error in undoable entry widget 2015-11-28 18:33:07 +00:00
SNoiraud e2c76dfb12 5905 : thumbnails html file missing in the narrative web. 2015-11-28 12:23:17 +01:00
John Ralls 0f72a796c2 Merge pull request #72 from alan-strohm/maintenance/gramps42
9076: don't check SSL certs on Mac when fetching addons.
2015-11-27 13:00:53 -08:00
SNoiraud 7d3b7c9277 8950 : Narrated: html elements emitted in different order with python 3 and date warning on windows 2015-11-27 21:30:48 +01:00
SNoiraud 6f8dd6f287 7426 : unused *_init.jpg are created in the narrated website. 2015-11-27 21:03:43 +01:00
Alan Strohm d4e1d60f97 don't check SSL certs when fetching addons 2015-11-27 13:48:31 -05:00
SNoiraud efe0767012 7322: Some media files are not exported to the NAVWEB report. 2015-11-27 17:25:07 +01:00
SNoiraud 2dc332a78c 8950 : Narrated Web Site Report: html elements emitted in different order 2015-11-25 20:33:14 +01:00
SNoiraud f15f6a14b0 9073 : 'Unknown' spouse uses an harcoded string name on Simple Descendants textual report 2015-11-25 17:44:01 +01:00
SNoiraud a766ec583a 9065 : Interactivesearch gives "TypeError: unorderable types: str() < NoneType()" 2015-11-25 14:46:51 +01:00
John Ralls c860db13a9 Catch urlopen TypeError when context arg isn't supported.
Python changed the behavior and args for urllib.urlopen; the context
arg is needed to avoid cert checking in 3.4.3 and later, but isn't
supported before, where the default is to not check certs.
2015-11-14 12:26:10 -08:00
Matti Niemelä 34afcb6504 9040: 'Narrative' word not translatable 2015-11-09 14:14:01 +01:00
Zdeněk Hataš 3ca0db552a czech translation update 2015-11-08 18:43:29 +01:00
Josip efaa713f68 8988: Name of user defined filter is not shown 2015-11-08 00:31:22 +01:00
Josip 888bdc77b5 9008: Faulty headline in start up screen 2015-11-08 00:12:58 +01:00
SNoiraud ad84bed2d5 9028 : Find is broken when used in the Family selector. 2015-11-02 17:02:22 +01:00
SNoiraud 468db43aef 0009014: "Show all" checkbox of "Select Family - Gramps" window not unchecked when the filter is cleared 2015-11-01 12:50:11 +01:00
Leonhaeuser 1447d244d8 update German translation 2015-10-31 10:40:24 +01:00
Matti Niemelä aedb8f83ed update Finnish translation (to 27Oct2015 template) 2015-10-28 13:48:37 -07:00
Matti Niemelä 365df85971 update Finnish translation (to 10Oct2015 template) 2015-10-28 13:44:54 -07:00
Nick Hall f15649a0f1 Fix default selection in selectors 2015-10-27 21:36:45 +00:00
romjerome 407588d338 9003: Locality data in address was not imported 2015-10-27 09:42:09 +01:00
romjerome 3b1687143d Merge Russian translation with last template 2015-10-27 09:35:58 +01:00
romjerome c1f4ccf46c Update template 2015-10-27 09:33:57 +01:00
John Ralls abf4511f87 Fix undefined variable error. 2015-10-26 14:04:50 -07:00
John Ralls 6016acafdb Bug 8897 - Can not download new or updated add-ons
Apple provides a hacked OpenSSL that checks Keychain for certs after failing
to find them elsewhere (and normally there is no elsewhere). The versions
provided for OS X versions < 10.8 are obsolete, preventing building
osm-gps-maps's dependencies, so we provide our own but it can't be similarly
hacked to use Keychain because that is a private API to which Apple doesn't
provide headers.

This is at root a Python problem, see https://bugs.python.org/issue17128

To work around it, disable certificate verification for this one URL for
macs only. This does create the small security risk of a MITM attack injecting
malicious add-ons, but since the URL is user-editable a phishing attack is
more likely and there's nothing that SSL can do about that.
2015-10-25 14:35:34 -07:00
John Ralls f51aaccc78 Bug 8929 - Installation from DMG (binary) file and port file fail.
Cause was a stray bytes qualifier in the split character.
2015-10-25 14:35:34 -07:00
Paul Franklin d532ecabc7 8888: comment currently-unused bogus wiki URL pointers 2015-10-24 13:11:24 -07:00
Ivan Komaritsyn c42d4cf3f8 Update Russian translation (P.R. 70) 2015-10-23 18:36:33 -07:00
Paul Franklin c82b75fef8 enable po/check_po to work on older machines 2015-10-23 18:12:39 -07:00
Tom Hughes f30fa909c1 Re-enable selection in MultiTreeView on a grab_broken event
As of GTK 3.18.0 a fake button release event is no longer sent when
a DnD completes:

  https://bugzilla.gnome.org/show_bug.cgi?id=749737

As a result we keep selection disabled which then means that the next
drag from the clipboard fails to select the dragged object and we wind
up trying to drop the old selection instead.
2015-10-20 22:37:50 +01:00
Paul Franklin a98daed758 fix another deprecation warning (thanks to Tom Hughes) 2015-10-18 16:53:39 -07:00
Tom Hughes 4046c8af0f Fix creation of focus change events
This fixes a number of run time warnings of the form:

interactivesearchbox.py:195: TypeError: Passing arguments to gi.types.Boxed.__init__() is deprecated.
All arguments passed will be ignored.

Which appear to represent a genuine issue as the previous way
of creating events indeed doesn't set the type.
2015-10-18 23:53:49 +01:00
Tom Hughes 0baf7dc3ad Handle citation objects in glocale.trans_objclass
Without this right clicking on a citation in the clipboard
gives options like "Make See Details active" which don't make
an awful lot of sense.
2015-10-18 23:53:39 +01:00
Nick Hall 4f14f8e4a0 Check that gramplet is in notebook before setting tab label 2015-10-15 18:02:04 +01:00
John Ralls b5229c46f5 Mac update for 4.2.1 release. 2015-10-12 13:43:40 -07:00
romjerome 229602577f bump to 4.2.2 2015-10-12 13:05:45 +02:00
romjerome 908aa90b61 make official '4.2.1' release 2015-10-12 13:01:06 +02:00
romjerome 32426459db Add '4.2.1' to NEWS 2015-10-12 12:57:13 +02:00
Sveinn í Felli 66114432df Update Icelandic translation 2015-10-12 12:50:43 +02:00
Zdeněk Hataš 5baf8d322c czech translation update 2015-10-12 10:58:38 +02:00
Nick Hall 1302743541 Revert gramplet id changes
This partially reverts commit 80a9597.
2015-10-11 18:01:24 +01:00
Josip da417a5ee7 7601: Support for Retina Display / HiDPI
fix setup.py
2015-10-10 19:03:31 +02:00
Josip 08338db8ab 7601: Support for Retina Display / HiDPI
added 24px icons
2015-10-10 18:53:30 +02:00
romjerome 9fecb67bd8 Update new urls for wiki (french version) 2015-10-10 15:29:36 +02:00
romjerome d89e9d2c67 Update template 2015-10-10 15:20:41 +02:00
Leonhaeuser 67e0f75107 update German transklation 2015-10-10 01:35:45 +02:00
Leonhaeuser 3e4569bd49 update German translation 2015-10-10 01:05:59 +02:00
Paul Franklin dddd5b5db2 8888: Gramps Help button User Manual wiki-links 2015-10-09 13:37:46 -07:00
Nick Hall 2fc9459aad 8168: Sort custom place types in editors 2015-10-09 19:00:57 +01:00
Nick Hall ba98dc0412 Fix error converting color into string 2015-10-09 17:47:03 +01:00
romjerome 586bd2fcf5 [Geography] Ignore places without hierarchy
Cannot get value if there is no levels

See country = state = county set on self.get_location()
2015-10-08 17:12:49 +02:00
romjerome f7e8b90d60 Fix directive, avoid msgfmt errors 2015-10-08 14:31:51 +02:00
Matti Niemelä e6b8dacfc3 Update finnish translation
TODO: fix Python brace format on lines 1828 -> 1913
2015-10-08 14:17:49 +02:00
Doug Blank a6de1c81bc Holidays: added cmp() for Python3 2015-10-07 06:12:27 -04:00
Zdeněk Hataš 03773fe9a2 czech translation update 2015-10-05 16:13:08 +02:00
Paul Franklin 6f849befe0 Fix countries selector on Reports
use strings comparison, avoid encoded Element names
2015-10-05 15:49:46 +02:00
Ζήσης Παπαδόπουλος 6ec12af6d7 Update Greek translation 2015-10-05 15:23:49 +02:00
Paul Franklin 5fa70824a3 handle case of no intltool when doing "python3 setup.py build"
I installed my development environment on a different machine
but for some reason didn't install intltool.  But it took me
a while to notice since I normally routinely divert the output
to a file.  So it was crashing but I didn't know.

But when I examined setup.py I saw that was tested for, at least
it was supposed to be tested for.  But on my particular machine
when the test was piped into more commands the whole piped command
was returning a zero status, even though there was no intltool
at all.  So I have added an explicit test for intltool and that
does indeed fail on my machine, without one.
2015-10-04 19:14:04 -07:00
=Vlada Perić 05a53a40c9 8971: the easter method in libholiday.py isn't Python3-friendly 2015-10-04 16:24:32 -07:00
romjerome 1b09074fc4 Update french translation 2015-10-02 11:26:01 +02:00
Sveinn í Felli b0d040ee99 Update Icelandic translation 2015-10-02 11:18:53 +02:00
romjerome b56b63a9fa Update template 2015-10-02 11:15:21 +02:00
Paul Franklin e6cc62ff9c Suggestion:Use 'People and Events.'' instead of of an 'etc' 2015-10-02 13:27:22 +10:00
Sveinn Felli d81e851fd5 [Tips] Typo's in gramps.pot 'prefered>preferred' 2015-10-01 08:06:29 +10:00
Doug Blank c96a8b85b9 if s_tagvalue is None: 2015-09-30 06:41:20 -04:00
SNoiraud 0d07292d23 bug 8799 : verification tool : Exception raised when used with the "Estimate missing or inexact dates" 2015-09-29 09:18:11 +02:00
Sam Manzi a8198c3ef1 8888 'baseselector's add help urls only 2015-09-29 16:29:56 +10:00
Zdeněk Hataš b4827dc9c1 czech translation update 2015-09-28 20:21:37 +02:00
Sam Manzi 6d99a47b5e Revert "Usability:Update initial [interface] startup defaults for (height/width)"
This reverts commit 2309747413.
2015-09-28 10:23:32 +10:00
Detlef Wolz db2037fe08 3670: hourglass graph report - link missing in ancestor graph 2015-09-27 13:11:22 -07:00
Sam Manzi 2309747413 Usability:Update initial [interface] startup defaults for (height/width)
- Fully show each Category sidebar filter without having to resize initially. eg:Citation Category sidebar filter is the largest!
2015-09-26 15:05:37 +10:00
Paul Franklin a3bf2e4d6e 8936: Descendants-detailed report crashes 2015-09-24 16:46:39 -07:00
romjerome bd694b0baa New and modified translation strings
Update french translation
2015-09-24 11:02:33 +02:00
romjerome 8bf081ccc3 8188: Problem with existing selection in media reference editor
like selection box disappears when scrollbar appears

Now, do not expand bottom section (Media Object fields) by default

Wonder if we should not do that on all Reference Editors?
2015-09-24 10:48:50 +02:00
Josip 6f66a021bb 8937: Unable to produce graph reports [in Greek locale] 2015-09-21 18:58:14 -07:00
Sam Manzi 55733cb264 8888 'Generate Testcases' add help url 2015-09-22 07:53:53 +10:00
Paul Franklin 17f8b4818c allow for get_dbname() returning None 2015-09-21 10:53:25 -07:00
Sam Manzi 3755337db9 8888 'References Gramplet' rename links from 'backlink>references' for consistency on wiki 2015-09-21 13:33:13 +10:00
Sam Manzi afbfaa815d 8888 'Select a media object' add help url 2015-09-20 17:10:38 +10:00
Sam Manzi 7beb66dd66 8888 'Undo History' add help button & url 2015-09-19 07:22:45 +10:00
Sam Manzi e3374b8cb5 8888 'Filter dialogs' add/update help urls 2015-09-18 09:21:40 +10:00
Sam Manzi d3f90860c1 8888 'Tagging dialogs' update help urls after wiki section update 2015-09-18 08:40:42 +10:00
Sam Manzi 227da7671f 8888#c44511 Fix AttributeError: 'EditMediaRef' object has no attribute 'glade' 2015-09-17 07:28:03 +10:00
Sam Manzi 7c3eaa9684 8888 'Place Name Editor' Add New wiki section & help link 2015-09-16 09:47:16 +10:00
Lajos Nemeséri 4cfa03ab16 5505: Need a date handler for Hungarian locale 2015-09-15 14:03:56 -07:00
romjerome ae89bc4d83 8914: FanChartDescendants View should at least have 2 generations 2015-09-15 12:29:06 +02:00
Sam Manzi 75ac634fa9 8888 'Person Reference Editor' add Help link & wiki section stub 2015-09-15 10:11:16 +10:00
Paul Franklin 2e6e13e166 8930: allow hyphenated gramps-id in Graphviz reports 2015-09-14 16:42:19 -07:00
Matti Niemelä dec1130c81 update Finnish translation 2015-09-14 11:09:22 -07:00
Sam Manzi dcb0aa8c35 8888 'Link Editor' add help url 2015-09-14 10:15:00 +10:00
Sam Manzi 1b4143f83c 8888 'Editors' continue updating broken wiki help links 2015-09-13 09:09:35 +10:00
Paul Franklin f5adb32bb6 8889: Complete Individual Report fails to run 2015-09-12 15:44:48 -07:00
Nick Hall c36e3f4747 Update en_GB translation 2015-09-12 15:04:03 +01:00
Nick Hall 688ee0f918 Merge en_GB translation into new template 2015-09-12 14:57:46 +01:00
Sam Manzi f548570af1 8888 more 'Editors' update broken wiki help links 2015-09-12 17:51:18 +10:00
Sam Manzi 09e3ff2a62 8888 'Edit dialogs' update broken wiki help links 2015-09-12 09:11:53 +10:00
Sam Manzi 73f75f7317 8888:'Error Report' dialog fix help url 2015-09-11 09:27:08 +10:00
romjerome 1e3ad0d325 Update french translation 2015-09-10 16:22:21 +02:00
Lajos Nemeséri 09dd6deea3 Update Hungarian translation 2015-09-10 16:18:38 +02:00
romjerome 460049809d update template 2015-09-10 16:17:24 +02:00
Sam Manzi 80a9597e5a 8888 'Gramplets' update broken wiki help links 2015-09-09 08:23:50 +10:00
SNoiraud 428c341005 Geography : bug 8902 : ValueError: Place.set_name(name) requires a PlaceName() 2015-09-08 21:06:22 +02:00
Sam Manzi a8d2f21b23 8888 'Media Reference Editor' link help button in glade 2015-09-08 11:03:38 +10:00
Sam Manzi 93962adaef 8888 Fix some links for Tools 2015-09-06 09:26:28 +10:00
Sam Manzi d893ec5de5 8888 Fix link for Tag Selection(Selector) 2015-09-06 09:05:06 +10:00
Nick Hall 9ff1f7781c 8833: Set TextOption widget to expand vertically 2015-09-05 17:21:17 +01:00
Nick Hall b2fa1350f0 Revert workaround for bug #8833
This reverts commit 01a68f5692.
2015-09-05 17:17:37 +01:00
romjerome 67e6a53951 6684: Unused Object Dialog box too small 2015-09-05 10:38:48 +02:00
romjerome 01a68f5692 8833: Workaround for displaying more lines on Text box via label's height 2015-09-05 10:36:25 +02:00
romjerome 0f8bdbca00 Update french translation 2015-09-05 10:22:23 +02:00
romjerome f582592cf1 Update template 2015-09-05 10:02:32 +02:00
romjerome 96173da947 python3 only for latex backend and related 2015-09-05 10:00:59 +02:00
Sam Manzi e9ddd513a4 Update a few broken help URLs 2015-09-04 16:13:48 +10:00
Jérôme Rapinat 39cc00963d 2531: Short cut keys does not work in 'Change Event Types' dialog 2015-09-04 13:12:55 +10:00
Sam Manzi cc25a21ad7 6824#c44102 Fix outdate tip. Soundex utility > Soundex Gramplet 2015-09-04 10:20:25 +10:00
Sam Manzi f7084a775b 8481 Update some Tips of the day 2015-09-03 15:41:10 +10:00
SNoiraud 2ac9f5bbd6 Geography : 8866 : placeselection : changeAttributeError: 'str' object has no attribute 'value' 2015-09-02 09:38:44 +02:00
romjerome 7a7ac5376d Let display translation string on family label 2015-08-31 18:18:35 +02:00
Peter Landgren ad01a680aa Updated Swedish translation for Gramps 4.2 2015-08-30 19:04:09 +02:00
Peter Landgren 318f2e93ce First updated Swedish translation for Gramps 4.2 2015-08-30 19:04:09 +02:00
Sam Manzi d210ea64f6 Update URL to Gramps 4.2 page 2015-08-30 14:04:20 +10:00
Sam Manzi 0f11ac01c8 GRAMPS > Gramps 2015-08-29 11:22:14 +10:00
romjerome 25b999a140 [Debian] Fix name and version for suggested packages 2015-08-28 09:14:23 +02:00
Leonhaeuser be59619444 update German translation 2015-08-26 20:58:57 +02:00
Doug Blank a1c0db37ad 8863: Error when extracting place names 2015-08-25 06:42:31 -04:00
Enno Borgsteede a2dbc495df 7595 Custom filters for note text repaired 2015-08-24 08:47:08 +10:00
Sam Manzi 3104900c21 Update links to 4.2 user manual etc.. 2015-08-22 18:52:28 +10:00
Hivernat Emmanuel 50911b7cf1 8824 Fix Pedigreeview crash when selecting Compact view 2015-08-22 12:25:01 +10:00
Doug Blank dd33a4b172 Fix for exponential cost on treeviews; whitespace cleanup 2015-08-21 10:11:45 -04:00
Sam Manzi d03f13c503 Merge pull request #57 from orner/bug8471-gramps42
8471: Set "visable_window" in GtkEventBox to fix transparency.
2015-08-21 14:53:49 +10:00
Lance Orner 65f0df74c7 8471: Set "visable_window" in GtkEventBox to fix transparency.
Was showing transparent background in a Compiz environment without
this option "visable_window" being explicitly set.
2015-08-20 20:21:59 -07:00
Doug Blank dce07dcb1d Removed duplicate 'database-changed' signal, which was loading data in GUI twice 2015-08-19 22:23:33 -04:00
Doug Blank 2dae5c3a08 8377: Slow scrolling in Gramps 4.X, on all platforms.
Additions:

1. cache database access for column values
2. cache do_get_path lookups
3. sped up load access on treeviews with no filters
4. use cache in do_get_path from siblings
5. new LRU size of 1k (was 250)
2015-08-19 22:15:14 -04:00
Nick Hall 3ed5e74657 8775: Avoid using person-centric date matching for places 2015-08-17 19:21:27 +01:00
Nick Hall 67e6c66555 8789: Use place title as default name in GEDCOM import 2015-08-15 22:24:47 +01:00
Nick Hall a121922310 8810: Ensure place names are not empty after upgrade 2015-08-15 21:32:51 +01:00
Nick Hall 6fc4d1f536 8842: Fix proxy to include all referenced place objects
The referenced by selection proxy needs to include places that
enclose referenced places.
2015-08-15 19:03:59 +01:00
Doug Blank 98409ca194 OpenOrStdin/out: add encoding 2015-08-11 15:37:22 -04:00
Leonhaeuser 085409bcc0 update German translation 2015-08-10 22:26:38 +02:00
Nick Hall bd06550331 8517: Remove copy button from family tree manager 2015-08-09 18:34:58 +01:00
=Matti Niemelä 1dc8746810 update Finnish translation 2015-08-08 08:37:09 -07:00
=Matti Niemelä e53f15e8a9 update Finnish translation 2015-08-08 08:34:45 -07:00
Nick Hall 8209096b73 Suppress deprecation warnings in intltool-update 2015-08-08 21:30:37 +01:00
Doug Blank 7fa9e647e5 8112: Common means nick, call, or otherwise first of given 2015-08-08 00:29:10 -04:00
Nick Hall dcb8efd8e6 8637: Use keyword arguments to initialise Adjustment widgets
This should prevent the value being set to zero or the minumum
limit incorrectly.
2015-08-07 16:10:58 +01:00
Doug Blank c0bdfafbda ImportCSV: remove debugging code 2015-08-07 11:04:50 -04:00
Doug Blank e5d564dbf0 ImportCSV: allow person, family, and marriage to reference places with place_id columns 2015-08-07 10:09:31 -04:00
Doug Blank aabb06ab11 ImportCSV: removed duplicate entry; added 'enclosedby' 2015-08-07 08:06:09 -04:00
Doug Blank a14894fce7 ExportCSV: allow lowercase matching of place type 2015-08-04 08:38:15 -04:00
Doug Blank 3df700b22a Added Places to CSV import/export 2015-08-03 20:40:40 -04:00
Doug Blank 58d7cbe99d All sidebars with Types should show custom types in combo list 2015-08-03 11:42:58 -04:00
Jérôme Rapinat b5f419cbf3 8774: Wrong italian sentence in tip of the day
patched by Daniele
2015-08-03 16:38:16 +02:00
Zdeněk Hataš 9aaaaa3816 sync with recent pot 2015-08-02 20:02:30 +02:00
John Ralls f2b1a5bdbc Mac changes to release 4.2.0 2015-08-02 10:12:27 -07:00
Jérôme Rapinat 58fc415e28 Update translation strings template
No modified messages, just update references and lines on comments
2015-08-02 15:05:25 +02:00
Zdeněk Hataš f3898c5d43 czech translation update 2015-08-02 13:57:26 +02:00
Doug Blank de6847db7b 8768: Gramps throws fatal error when trying to delete a family 2015-08-01 19:07:22 -04:00
Nick Hall e7ce80a06e Tidy up style editor layout 2015-08-01 21:12:07 +01:00
Nick Hall 789a94b59b Fix style name bug in style editor 2015-08-01 19:41:53 +01:00
Nick Hall 10029e3a67 5693: Set some dialog response codes
The response codes are used to position the buttons in the dialog
action area.
2015-08-01 19:25:08 +01:00
Nick Hall 31aa503934 8778: Avoid using place objects during database upgrade 2015-07-31 23:41:14 +01:00
Josip 5cf54d4300 7910: tool to Edit Database Owner Information crashes 2015-07-30 12:12:05 +02:00
Josip 7b5c692787 8766: GraphViz does not seem to like double-quotes in Given names 2015-07-30 12:12:03 +02:00
SNoiraud 1b91f53622 Geography: 8375 : Must test if kml file exists. 2015-07-30 10:00:46 +02:00
Jérôme Rapinat f3a3da5e5c update id/string related to pygobject dependency
sed -Ei 's/3.3.2/3.12/g' *.po
2015-07-29 20:42:43 +02:00
Jérôme Rapinat e525aab0c8 Update template
one modified string, 'pygobject 3.3.2 to 3.12'
2015-07-29 20:15:41 +02:00
Jérôme Rapinat 8346836cf9 Fix some mismatching format keys on Chinese translations 2015-07-29 20:13:32 +02:00
Jérôme Rapinat ce6edaf901 Fix some mismatching keys on translations 2015-07-29 20:08:04 +02:00
Jérôme Rapinat 83e671afd5 Merge branch 'maintenance/gramps42' of github.com:gramps-project/gramps into gramps42 2015-07-29 20:05:22 +02:00
Nick Hall 5d5ca47863 8701: GEDCOM version should be exported as 5.5.1 2015-07-29 19:04:22 +01:00
Nick Hall 2a8d75c493 Increase minimum pygobject version required to 3.12 2015-07-29 14:25:37 +01:00
elderamevans 63f09baab0 Fix 'python' filename under Windows
executable named 'python.exe' whatever major python version (2 or 3)
2015-07-29 11:07:46 +02:00
Josip f96df5658c 8764: [Compare Individual Events :Tool ]
Selecting "Save" causes a UnicodeEncodeError error
2015-07-29 04:28:19 +02:00
Jérôme Rapinat 5d86e44264 'update_po.py' should use python3
Revert temp workaround for el, vi, zh* translations
2015-07-28 20:55:00 +02:00
Ondrej Krč-Jediný b5eaeff3a4 Pull request #49: update Slovak translation 2015-07-28 18:53:05 +02:00
Richard Bos (radoeka) d2da00989a Pull request #51: improvements for Dutch translation 2015-07-28 18:44:32 +02:00
Jérôme Rapinat 36687cd703 Temp workaround for el, vi, zh_* 2015-07-27 10:26:36 +02:00
Jérôme Rapinat 25a9f17d66 Temp workaround for an ascii UnicodeEncodeError into console 2015-07-27 10:15:48 +02:00
Jérôme Rapinat f8380e1b0c Update french translation
was new entry for Gtk requirements
2015-07-27 08:46:35 +02:00
Jérôme Rapinat 3c2b7406c5 Update translation strings template 2015-07-27 08:39:53 +02:00
Nick Hall 595828ba99 Update en_GB translation 2015-07-26 23:52:36 +01:00
Nick Hall 8b09bcdb98 Remove duplicate message strings 2015-07-26 22:22:14 +01:00
Sam Manzi d19bed4b42 8352 Change lesser than to less than 2015-07-26 19:32:53 +01:00
Sam Manzi 8e0e07240f 7553 Change GraphViz to Graphviz 2015-07-26 19:15:13 +01:00
Nick Hall e7ba2423aa Make place title in GEDCOM export date dependent 2015-07-25 23:16:57 +01:00
Josip c19402f731 8745: cli_test.py needs OS specific path to find Python interpreter 2015-07-25 00:03:22 +02:00
Doug Blank faba7ddc2c 7261: Import GEDCOM file from MyHeritage, added __str__ to Attribute 2015-07-23 10:24:50 -04:00
Leonhaeuser 4379f42999 update German translation 2015-07-20 20:30:33 +02:00
Doug Blank f30a353e15 8725: Create Filter from the [xxxxx] selected, in Clipboard (and add use_regex) 2015-07-20 07:31:36 -04:00
Doug Blank 029241bae9 8725: right-click on Citation in Clipboard 2015-07-20 07:31:20 -04:00
Doug Blank 86cab99e7a docbackend: protect from sytledtexttag with value is None 2015-07-20 07:31:02 -04:00
Doug Blank 85a97c1c7f 8732: Media: Radiobox's Include label is missing from the Gramps XML Backup dialog 2015-07-20 07:28:39 -04:00
Doug Blank 538b00b3c8 8730: Error Report Assistant fails 2015-07-19 07:47:24 -04:00
Sam Manzi 2637e2dcc1 8726:43320 Fix two different wordings on button for BsddbUpgradeRequiredError 2015-07-18 21:26:13 -04:00
Doug Blank cc1d15fc3f Merge pull request #45 from cjmayo/docstring
Stop using concatenation to create docstring
2015-07-18 21:25:35 -04:00
Doug Blank ad8259814d 8730: Error Report Assistant fails 2015-07-18 21:18:13 -04:00
Paul Franklin 0cd63965a7 8728: Merge citations caused crash 2015-07-18 11:05:16 -07:00
Leonhaeuser 7b987cfa88 update German translation 2015-07-15 22:15:55 +02:00
Nick Hall 3e6fd00286 Remove redundant code since Gtk 3.10 required 2015-07-15 19:55:58 +01:00
Paul Franklin 27e6d9b2a9 fix check_po to work with lexemes in po files 2015-07-15 10:43:43 -07:00
Paul Franklin 8b65c60a04 8572: gramps crashes if gtk < 3.10 2015-07-14 22:17:51 -07:00
Paul Franklin 6e69cbcb04 Revert "8572: gramps crashes if gtk < 3.10"
This reverts commit 6b929e9c7e.
2015-07-14 15:58:38 -07:00
Paul Franklin 6b929e9c7e 8572: gramps crashes if gtk < 3.10 2015-07-14 12:39:35 -07:00
Doug Blank f9ccea0149 children gramplet: protect from crash when no family 2015-07-14 15:25:45 -04:00
Doug Blank feee26f74a events gramplet: check for existing family 2015-07-14 15:24:40 -04:00
Doug Blank 6e68cc3f73 Merge pull request #43 from sam-m888/8702UpdateMapServicelinksOpenStreetMap
8702 Update Map Service links for OpenStreetMap
2015-07-14 07:03:54 -04:00
Doug Blank bce1462567 Merge pull request #41 from ennoborg/maintenance/gramps41
8663: add exception for UnicodeEncodeError.
2015-07-13 23:15:15 -04:00
Doug Blank 61443ad9ce Merge pull request #42 from sam-m888/fixissues2462linguist
Make Github recognise Gramps as a Python project
2015-07-13 22:51:15 -04:00
Doug Blank 2e93109d75 Merge pull request #44 from sam-m888/6908popupmenuclipboardgrampletfix
6908 partial for fix popup menu for clipboardgramplet
2015-07-13 22:49:48 -04:00
Josip bbab0cdbba translation: Croatian
fix some name mismatches and runaway context errors
2015-07-14 00:25:09 +02:00
Josip ae73a30a6d translation: Croatian 2015-07-12 23:18:31 +02:00
Josip eed9e6505e 8591: Product crashed when attempting to print a report 2015-07-12 22:33:36 +02:00
Jérôme Rapinat 34bb729c7a Debian: do not need to recommend devel package 2015-07-12 16:37:07 +02:00
John Ralls 3060d7504a Prep package Gramps-4.2.0beta2. 2015-07-11 16:14:56 -07:00
Paul Franklin 2e32fc7141 4089: fix Lithuanian date parser (another y-m-d one) 2015-07-09 23:20:29 -07:00
Paul Franklin ee060b85a2 translation: Croatian
fix months parsing
2015-07-09 14:35:16 +02:00
Paul Franklin 289436ee33 fix date parser for y-m-d locales (e.g. Hungarian) 2015-07-08 10:10:49 -07:00
Jérôme Rapinat 905ac154d3 8683: keep support for XML v1.7.0 2015-07-06 15:45:35 +02:00
Jérôme Rapinat ac29b091a7 8683: Bump to Gramps XML 1.7.1 2015-07-06 15:08:38 +02:00
Paul Franklin 1a618c3a2e 8623: Detailed Descendant Report - only first family event output 2015-07-05 13:42:12 -07:00
Bernard Banko c731c68ec5 Pull Request #40: Slovenian translation update 2015-07-05 11:07:33 +02:00
Jérôme Rapinat ab80af602c 8683: Cover custom types on DTD and RNG files
Now, xmllint passes '--dtdvalid' and '--relaxng'
2015-07-05 11:03:03 +02:00
Jérôme Rapinat 4caa412a06 8683: polish; remove old reference 2015-07-05 10:54:26 +02:00
Jérôme Rapinat 49ec2e1244 8683: fix duplicate <name> element on pre-1.7.0 XML version
XML: use <pname> tag into place hierarchy instead of duplicate <name>
2015-07-05 10:50:13 +02:00
Paul Franklin 63dc1ddff8 cover pathological case (perhaps from privacy proxy) 2015-07-04 19:30:39 -07:00
Zdeněk Hataš b9c3b077e8 czech translation update 2015-07-04 11:16:01 +02:00
Gerald Kunzmann 8c9333b58d 8648: Print Gramps IDs in familygroup report 2015-07-03 14:48:36 -07:00
Paul Franklin fd22effab3 8670: Crash when trying to create a book 2015-07-02 19:24:45 -07:00
Leonhaeuser 5e5e92ac9a German translation fix typo 2015-07-02 22:55:31 +02:00
Paul Franklin 7fac5c6607 8666: statistics report does not run (filter?) 2015-07-01 21:45:01 -07:00
Paul Franklin fa26216839 8677: Narrated Web report failed 2015-07-01 17:18:49 -07:00
Matti Niemelä 9032c0a37d update Finnish translation 2015-06-30 09:05:44 -07:00
Paul Franklin fb6a2cecf2 8666: statistics report does not run (filter?) 2015-06-30 08:23:14 -07:00
Jérôme Rapinat 90de5dffec Update template
Update french translation
2015-06-30 15:19:18 +02:00
erikdrgm 8ec10c067f Updated 150630 nl translation 2015-06-30 09:10:41 +02:00
Jérôme Rapinat 84be6de6ab 8572: gramps crashes if gtk < 3.10; workaround for debian (packaging) 2015-06-29 11:17:36 +02:00
Jérôme Rapinat 0b88c61421 Update NEWS according to commit log data 2015-06-29 11:11:00 +02:00
Josip d943e122a8 8667: SVG Document output 2015-06-28 15:15:52 -07:00
Leonhaeuser fc08e7de4e update German translation 2015-06-28 20:56:07 +02:00
Doug Blank a04c8dc497 8577: Statistics Charts report crashes in Windows 4.1.3 AIO
Changed 0 to actual number of people in database.
2015-06-28 14:38:08 -04:00
Nick Hall 66c943f69d Replace "Title" with "Enclosed By" in place sidebar filter 2015-06-28 19:32:52 +01:00
Nick Hall 0ad17ac27f Fix IsEnclosedBy rule for non-existent places 2015-06-28 19:32:49 +01:00
Jérôme Rapinat 01536e4b50 Update informations about major enhancements 2015-06-28 18:11:03 +02:00
Paul Franklin 811261609f 8666: statistics report does not run (filter?) 2015-06-27 12:47:15 -07:00
Nick Hall cba763611d 8645: Use place displayer when sorting places in narrated web report 2015-06-27 19:38:35 +01:00
Jérôme Rapinat 56de5ff4af Update/Migrate 'data.gramps' 2015-06-27 15:02:09 +02:00
Jérôme Rapinat 928a0af713 Update/Migrate 'example.gramps' and XML schema files 2015-06-27 14:50:07 +02:00
John Ralls 913fdd071c Set up gramps module and info.plist for Gramps42 branch. 2015-06-26 15:40:15 -07:00
Paul Franklin 22a27e9707 8661: Errors producing Ancestor Tree (4.2.0beta1) 2015-06-26 11:01:06 -07:00
Jérôme Rapinat 2142118832 8645: add GobjectIntrospection dependency
Fix Lintian issue: 'python-script-but-no-python-dep'
2015-06-25 20:09:40 +02:00
Nick Hall fabd5742fc 8643: Workaround for excessive height of rule editor window
The height of the Gtk.Box containing the rule name and description
labels is calculated incorrectly.  The parent widget seems to
think that the label text is wrapped onto many lines.

This workaround sets a minimum label width which makes the problem
less apparent.
2015-06-24 22:05:22 +01:00
Nick Hall 7a3da35543 Tidy up and remove redundant code 2015-06-24 22:05:22 +01:00
Lajos Nemeséri c0c165d155 Update Hungarian translation 2015-06-24 19:12:09 +02:00
Fedik 030ffd8226 Update Ukrainian translation 2015-06-23 20:58:34 +03:00
Luigi Toscano 4964461fa4 Italian translation updates 2015-06-21 03:16:48 +02:00
Luigi Toscano 42c4662329 Refresh Italian translation with the last template 2015-06-21 03:14:40 +02:00
Josip d3eafc00db translation: Croatian
remove print statments
2015-06-20 20:08:42 +02:00
Josip a2030431c0 fix some PyGI/DeprecationWarning 2015-06-20 19:59:56 +02:00
Josip 56f867d783 fix transient parent of few dialogs 2015-06-20 15:55:08 +02:00
Josip 5a752205b3 translation: Croatian
fix inflected long month names
fix dd_dformat04
2015-06-19 23:50:31 +02:00
Jérôme Rapinat 6e87ee433c Update DEBIAN stuff
For more recent environments; python3, pybuild
2015-06-19 16:13:58 +02:00
kulath 70806f2388 0008537: Gedcom import crashes. Fix problem when matching places with
the same name which are enclosed by different places.
2015-06-18 22:53:46 +01:00
Enno Borgsteede b8b186dde2 0008639: check buttons misaligned in remove unused objects dialog 2015-06-18 19:17:45 +01:00
Nick Hall d10c4faffe Remove executable permission from gedcom file 2015-06-18 14:18:49 +01:00
Nick Hall 8bff04729f Remove executable permission from python code 2015-06-18 14:13:41 +01:00
Jérôme Rapinat 9cddf3ebdb Merge some fixes from git://anonscm.debian.org/collab-maint/gramps.git 2015-06-18 15:02:25 +02:00
Nick Hall c089eba1c3 Remove executable permission from png files 2015-06-18 13:44:16 +01:00
Jérôme Rapinat a94f3100df png icons seem no more executable (debian rules) 2015-06-17 19:34:39 +02:00
Lajos Nemeséri 5d341a684e Update Hungarian translation 2015-06-17 18:41:16 +02:00
Doug Blank 26723c1b60 8537: Gedcom import crashes; kulath patch 2015-06-17 08:00:17 -04:00
Doug Blank de7430eeb8 8614: addresses pickleupgrade.txt issue, by kulath 2015-06-17 06:28:29 -04:00
Jérôme Rapinat 89ffc6b4cc minor update for DEBIAN stuff 2015-06-17 09:38:11 +02:00
Zdeněk Hataš a18120f17d czech translation update 2015-06-17 08:44:00 +02:00
Jérôme Rapinat 2846fc7dc5 Update french translation 2015-06-16 08:09:06 +02:00
Jérôme Rapinat e6c5232ae8 Update template 2015-06-16 08:00:55 +02:00
Doug Blank e7ab8b322b Merge pull request #35 from RossGammon/8047-resourcepath
8047 - Add new --resourcepath option to setup.py
2015-06-15 17:47:27 -04:00
Doug Blank fde34bb53b SimpleAccess: sort by surname; fixes crash in python3 2015-06-14 22:03:23 -04:00
Josip 60c0843861 translation: Croatian 2015-06-14 20:24:24 +02:00
Doug Blank 2ae2ca5c7d Merge pull request #34 from RossGammon/packagermode
Remove setup.py --enable-package-mode option text from INSTALL
2015-06-14 13:08:50 -04:00
Nick Hall 9747d1deea Validate place name language 2015-06-13 18:43:50 +01:00
Jérôme Rapinat e52d0a7a90 Merge NEWS (releases on 41 branch) 2015-06-12 16:47:17 +02:00
Hivernat Emmanuel eefd3e13e4 7347: fix a bug 'on mouse over' event 2015-06-12 16:35:50 +02:00
Jérôme Rapinat 918317434f Update french translation 2015-06-12 16:29:26 +02:00
Lajos Nemeséri 8dfc5381cd Update Hungarian translation 2015-06-12 16:25:39 +02:00
Josip 6511a80b47 8625: Cannot open Citation references from Clip Board 2015-06-12 16:15:40 +02:00
erikdrgm a5074e9478 Merge branch 'maintenance/gramps42' of github.com:gramps-project/gramps into gramps42 2015-06-10 10:22:31 +02:00
erikdrgm b90808525c Updated 150610 Dutch translation 2015-06-10 10:20:01 +02:00
Josip fedfabc87e setting dialogs parent 2015-06-10 02:22:21 +02:00
Jérôme Rapinat 891b9d2e34 update french translation 2015-06-09 16:53:20 +02:00
Jérôme Rapinat 3b0579afc3 Remove one remaining context argument 2015-06-08 19:30:22 +02:00
Zdeněk Hataš 5e763026a4 czech translation update 2015-06-07 22:08:54 +02:00
Jérôme Rapinat de706de317 update template 2015-06-07 20:08:26 +02:00
Jérôme Rapinat b884dc0e4c Remove context into glade file
Gramps (python) is not ready for supporting msgctxt for now
2015-06-07 20:07:22 +02:00
Jérôme Rapinat aaba2ec347 Remove some unicode stuff for python3 2015-06-07 19:47:29 +02:00
Jérôme Rapinat bdd44b57fd 7476: letter as custom paper size generated a ValueError 2015-06-07 19:17:29 +02:00
Zdeněk Hataš 8deb444a6c datehandler translation fix 2015-06-07 10:53:24 +02:00
Doug Blank ca3158a6ff 8621: Recursion Filter error 2015-06-06 19:57:40 -04:00
SNoiraud 53a9cfc83f Geography : bug 8612 and 8616 : gtk 3.16 introspection problem and change for new place structure. 2015-06-06 18:59:23 +02:00
Zdeněk Hataš 92fc8f8dcb czech translation update 2015-06-06 17:04:23 +02:00
Zdeněk Hataš 7a488c2fd4 czech translation fixes
inflection fixes
2015-06-06 10:48:06 +02:00
Zdeněk Hataš 98ff7693f3 czech translation update
POT update
2015-06-05 15:12:00 +02:00
Doug Blank 6b7258dfe0 Undo git_revision number change; premature 2015-06-05 08:07:56 -04:00
Zdeněk Hataš aceee07544 czech translation update 2015-06-05 12:51:40 +02:00
Josip 9e670d51bd Data Verify Tool: fix set transient parent
In init of ManagedWindow self.show() must be called
2015-06-05 12:07:59 +02:00
Josip 8e97b25f38 Relationship Calculator: fix set transient parent
In Glade file of any dialog which is Gramps ManagedWindow
property name "visible" must not be set to True
2015-06-05 12:07:58 +02:00
Doug Blank 6aeeafe74d Merge pull request #33 from sam-m888/master
country > county
2015-06-05 00:34:32 -04:00
Josip 4189799d45 8619: Relationship Calculator - can't select person to relate to 2015-06-04 22:56:58 +02:00
Doug Blank 5bfe514f45 Merge pull request #32 from gramps-project/sam-m888-patch-6
Hide unused code
2015-06-04 13:01:05 -04:00
Doug Blank aa35dbfb82 Merge pull request #31 from gramps-project/sam-m888-patch-5
Remove duplicate line in dictionary
2015-06-04 13:00:44 -04:00
Doug Blank 784ab0c3c7 Merge pull request #30 from gramps-project/sam-m888-patch-4
spelling correction to stop duplicate key
2015-06-04 13:00:33 -04:00
Doug Blank 5847bb0e17 Merge pull request #29 from gramps-project/sam-m888-patch-3
Spelling mistake inlae > inlaw
2015-06-04 13:00:22 -04:00
Doug Blank 08ac0b0996 Merge pull request #28 from gramps-project/sam-m888-patch-2
6366: Correct text on "Display tab"
2015-06-04 13:00:08 -04:00
Doug Blank c38ccf22ed Merge pull request #27 from gramps-project/sam-m888-patch-1
Fix outdated "Tags" help link
2015-06-04 12:59:42 -04:00
Matti Niemelä 1866b7ace1 update Finnish translation 2015-06-04 16:52:08 +02:00
erikdrgm 27b7676caa Updated 150603 Dutch translation 2015-06-03 21:48:54 +02:00
Jérôme Rapinat c273926941 Disable 'behavior.betawarn' on first start
No more master, new branch
2015-06-02 14:08:24 +02:00
Doug Blank ba8392923a Updated travis to test gramps42, and changed version to omit git number 2015-06-01 13:02:55 -04:00
Jérôme Rapinat 2b8b92dab9 Get some translation strings back (41 -> master) 2015-06-01 16:57:35 +02:00
Jérôme Rapinat d5cb32d4ee Update french translation 2015-06-01 16:26:00 +02:00
Jérôme Rapinat 3a9717f143 Merge translations with last template 2015-06-01 16:10:24 +02:00
John Ralls 021bb0532e Add setuptools dependency for pil. 2015-05-31 10:12:10 -07:00
John Ralls c268e4055c Change Gramps repository to Github. 2015-05-31 10:12:10 -07:00
John Ralls 958af590b2 Include modulesets from gnome.org, not jralls's personal ones. 2015-05-31 10:12:10 -07:00
Nick Hall 2f4682acbd Add a couple more place displayer options 2015-05-31 17:54:21 +01:00
Nick Hall fff6a5ce15 Add extra place displayer options 2015-05-31 16:51:39 +01:00
Leonhaeuser 25e62a7797 update German translation 2015-05-31 17:36:36 +02:00
Matti Niemelä 95b9057810 Update Finnish translation 2015-05-31 12:31:24 +02:00
Jérôme Rapinat f5d6c72a93 update translation template 2015-05-31 12:22:16 +02:00
Jérôme Rapinat 67238a16c6 Merge translations with last template 2015-05-31 12:19:22 +02:00
Jérôme Rapinat d0c9f868de fix a typo on the french translation 2015-05-31 12:09:58 +02:00
Nick Hall fec5a5dab0 Remove place format preference setting 2015-05-31 11:01:06 +01:00
Nick Hall 966551385b Remove unused import 2015-05-31 10:40:05 +01:00
Jérôme Rapinat d7ac28a12a update french translation 2015-05-29 16:38:18 +02:00
Jérôme Rapinat 988137e5f3 update translation template 2015-05-29 16:27:17 +02:00
Jérôme Rapinat 5b039eb2f0 PhpGedView tool moves to addons
https://github.com/gramps-project/addons-source/tree/master/PhpGedView
2015-05-29 16:22:57 +02:00
Nick Hall a21dff8bf7 8488: Use place displayer for headings 2015-05-28 19:47:06 +01:00
Jérôme Rapinat 8d188effac 8548: GeneWeb moved to github 2015-05-28 19:59:09 +02:00
Jérôme Rapinat 18a3731e5b update year on man files config for sphinx 2015-05-28 19:47:14 +02:00
Jérôme Rapinat ae227084d1 update DEBIAN section for matching python3 2015-05-28 19:36:24 +02:00
Jérôme Rapinat aad2aea73d update french translation 2015-05-28 19:17:02 +02:00
Jérôme Rapinat 5a23088ff9 8548: Enable gwplus event types translation 2015-05-28 18:29:08 +02:00
Jérôme Rapinat 04583236c5 8548: Review GeneWeb file format on import (.gw)
start to support gwplus file format (addition)

provide a testing environment for gwplus import
2015-05-28 18:19:20 +02:00
Jérôme Rapinat d7bf498f15 8128: GtkDialog mapped without a transient parent
QuestionDialog into DB manager dialog (Remove action)
2015-05-28 17:59:59 +02:00
Jérôme Rapinat b2fdb2349d update translation template
$ intltool-update -m
2015-05-28 17:54:23 +02:00
Nick Hall fd782bd057 8487: Use place displayer to generate title in views 2015-05-28 16:29:43 +01:00
Doug Blank 4276970565 Clipboard: some items are not tied to a specific database (text) 2015-05-28 11:25:20 -04:00
Doug Blank 9c406e10d6 Clipboard: Allow for bytes or string 2015-05-28 08:52:47 -04:00
Doug Blank 5d3a7edaa3 8598: Drop text on Clipboard crashes with byte/string issue 2015-05-28 07:43:28 -04:00
Doug Blank 51402bd486 PlaceName constructor shortcut; Place.set_name type check;
bug fixes for testcasegenerator

1. Added PlaceName(value=..., lang=...) shortcut; will add to others

2. Added an instance check on Place.set_name() to make sure it
is a PlaceName

3. Fixed Testcasegenerator to make proper fake places, and a bug
in handling windows
2015-05-27 18:13:44 -04:00
Josip a943e63b84 Merge pull request #25 from beernarrd/slovenian
new framework slovenian datehandler, updated sl.po, including plural forms correction
2015-05-27 23:02:37 +02:00
Doug Blank cb852385bd 8593: spelling mistake in the class SimpleAccess 2015-05-27 16:55:53 -04:00
Nick Hall 24c1104f71 Add place name edit button to place editors 2015-05-27 19:20:43 +01:00
Doug Blank 8a9fbc35e3 Note Link Report: adjust columns for better fit 2015-05-27 13:05:39 -04:00
Nick Hall 3c08eb5b80 Correct tooltips in place name editor 2015-05-27 15:16:08 +01:00
Doug Blank f2e4fa779e 7242: let the user know that links inside notes can rot
Added report
Fixed quickreport
2015-05-27 08:14:47 -04:00
Doug Blank 91ac3c699a PlaceName: updated GUI merge for new placenames 2015-05-27 06:24:27 -04:00
Doug Blank 962608c6bf Fixed merge tests for Places; fixed init for PlaceNames with source 2015-05-26 22:03:07 -04:00
Bernard Banko c3a4f85e72 new framework slovenian datehandler and plural forms correction in sl.po
Inflections corrected in sl.po

Date parser corrected

Plural forms expression corrected. Range, Span, Estimated, Calculated precised.

Estimated and Calculated strings added.

updated sl.po
2015-05-26 23:02:36 +02:00
Nick Hall cc6820f80c GEPS 036: Add date and language to place names 2015-05-26 21:12:36 +01:00
Jérôme Rapinat e448272259 8583: Custom Events not shown in the filter siderbar 2015-05-26 20:59:19 +02:00
Jérôme Rapinat 24bf67db3c 4161: Fix empty #buri fields
Still present on Geneweb 6 and 7alpha

patch by 'hmmmpf'
2015-05-26 20:30:43 +02:00
Enno Borgsteede afe7fa39f9 #4161 #8548: Fix a baptism date error
https://gramps-project.org/bugs/view.php?id=8548#c41455

also reported and patched by 'hmmmpf' on #4161
2015-05-26 20:23:21 +02:00
Jérôme Rapinat fd90c19515 update french translation 2015-05-26 19:30:46 +02:00
Doug Blank 124b45eccc Merge branch 'master' of https://github.com/gramps-project/gramps 2015-05-26 13:22:03 -04:00
Doug Blank 9c9dc2c8e2 7143: Database Differences Report fails on gpkg with media
Added return values on imports, so we can tell the difference
between failure and success. Return value of None means failed.

Now, all importers should return an ImportInfo object.

The Differences will now stop if there is an error (such as
existing media directory.)
2015-05-26 13:19:03 -04:00
Jérôme Rapinat 0c232eb807 update translation template 2015-05-26 19:11:40 +02:00
Jérôme Rapinat d2d2f4cf9e Missing place filter rule for translation
$ intltool-update -m command
2015-05-26 19:09:53 +02:00
Jérôme Rapinat 001744d5f7 8567: Imprecise French translation in Place dialog
'Enclosed by' was translated in French by 'Lié à'
2015-05-26 18:57:29 +02:00
Doug Blank 0a0fbc6d6a Add webapp fixtures to .gitignore 2015-05-25 20:24:47 -04:00
Paul Franklin 9af365c2b0 new translation template (gramps.pot) for "master" 2015-05-24 21:53:47 -07:00
Paul Franklin e016199958 tweak POTFILES yet more (glade files) 2015-05-24 21:45:58 -07:00
Doug Blank ef646190d9 4221: Deleting Multiple Items Dialogue Unclear 2015-05-24 18:33:09 -04:00
Doug Blank c2d4e0c7ba Merge pull request from belissent/belissent/gramps41
Modification for example.gramps database
(custom parent relationship, notes)
2015-05-24 18:01:47 -04:00
Doug Blank abbe27f53a Make Family muli-select remove operate like the People view 2015-05-24 16:46:45 -04:00
Doug Blank eaf0061087 Give previous/proper message when deleting 1 person 2015-05-24 15:54:25 -04:00
Doug Blank dfb45bdc5d Refined MultiSelectDialog to do all of the work 2015-05-24 15:48:23 -04:00
Nick Hall 015f882826 Fix mistake in alignment conversion 2015-05-24 16:09:40 +01:00
Doug Blank 2835f51fb6 7822: Yes To All button; added MultiSelectDialog, and use in remove multiple people 2015-05-24 11:05:45 -04:00
Josip b363360ac8 8579: Creation of Narration Website report fails 2015-05-24 12:20:00 +02:00
Doug Blank 75cc4fb721 Fixed GW import issue with citation handles 2015-05-23 07:58:28 -04:00
Nick Hall 8fd1a93f97 Specify label keyword in Label constructor 2015-05-23 00:19:18 +01:00
Nick Hall 0f079c4320 Another escape change from cgi to html 2015-05-23 00:01:24 +01:00
Nick Hall 53887d2033 Specify label keyword in Button constructor 2015-05-22 23:35:10 +01:00
Nick Hall ae1af073a7 Use icon names for drag source 2015-05-22 23:29:23 +01:00
Nick Hall f2f78ef2f4 Convert deprecated set_alignment method 2015-05-22 23:22:11 +01:00
Nick Hall 9790890e02 Fix popup menu 2015-05-22 23:21:53 +01:00
Nick Hall b0c82f6b6e Fix syntax error 2015-05-22 23:21:53 +01:00
Doug Blank b8ffc8a77d Diff struct comparison, can be a list 2015-05-22 14:25:40 -04:00
Nick Hall e554e324af Set new button labels as translatable 2015-05-22 18:13:07 +01:00
Nick Hall cd1a6ba45a Use add instead of add_with_viewport
The add method adds a viewport where necessary when adding a
child to a scrolled window.  The add_with_viewport method is
deprecated.
2015-05-22 17:53:03 +01:00
Josip dd68fbf75d 8398: lock.file with accent letter cause gramps to crash at start 2015-05-22 18:48:49 +02:00
Nick Hall e355a93dc1 Use escape utility from html rather than cgi module 2015-05-22 14:50:19 +01:00
Nick Hall e5591da496 Specify required Pango and PangoCairo version 2015-05-21 23:01:57 +01:00
Nick Hall 56d83c1c5c Remove deprecated show-unicode-menu setting 2015-05-21 21:15:03 +01:00
Nick Hall 75009f0fe0 Convert deprecated stock items in glade files 2015-05-21 21:05:30 +01:00
Paul Franklin bd5d463299 tweak POTFILES some more 2015-05-21 10:13:11 -07:00
Paul Franklin 4cab86897f tweak POTFILES 2015-05-21 09:42:00 -07:00
Nick Hall 457ed21c6c Replace stock items with named icons
Stock items have been deprecated since 3.10.
Named icons are now loaded from the default icon theme.
2015-05-20 18:54:26 +01:00
=Matti Niemelä 293556b88e updated Finnish translation (for trunk-master) 2015-05-19 23:06:00 -07:00
Paul Franklin ec0c705b55 slight tweaks to calendat-type reports 2015-05-19 23:01:27 -07:00
Nick Hall f125a982d6 Remove SourceForge username from authors file
This was used by the svn2cl utility to generate a change log.
2015-05-18 14:59:57 +01:00
SNoiraud 9e648b0de5 Geography : feature request #8428 for kml files loading. 2015-05-17 12:54:51 +02:00
Leonhaeuser 9e7ec88d3f update German translation 2015-05-17 11:39:19 +02:00
Paul Franklin cd8a0cd2f2 new translation template (gramps.pot) for "master" 2015-05-16 20:31:52 -07:00
Paul Franklin 2bf4718af7 add a gramps-XML file to test date formats in different locales 2015-05-16 20:25:21 -07:00
Paul Franklin cbe83feeaa tweaks to Chinese date handlers (fix parsing, reduce date formats) 2015-05-16 20:20:01 -07:00
Paul Franklin 0ad582f7b0 fix date display when month is zero but day is not (see 8477) 2015-05-16 20:15:03 -07:00
Josip 6e0e7d3763 Fix AgeStats gramplet 2015-05-16 16:43:48 +02:00
Doug Blank 9f8ffc5226 8564: Recursion error when filtering for relatives 2015-05-15 23:30:31 -04:00
Josip 612c4665ae add parent to gedcom import report dialog 2015-05-16 03:56:09 +02:00
Josip 11878e41f4 8497: Error on use of Ctrl-Z 2015-05-16 02:46:49 +02:00
Nick Hall e3ba779edb Convert deprecated xpad and ypad properties 2015-05-15 22:20:48 +01:00
Nick Hall 87022267d9 Convert deprecated xalign and yalign properties 2015-05-15 19:02:08 +01:00
Matti Niemelä 36bb4471a3 updated Finnish translation (for trunk-master) 2015-05-15 00:42:07 -07:00
Paul Franklin 578cdf6c79 8413: Finnish Date format settings does nothing
The corresponding fi.po, with month inflections, is from:
Matti Niemelä <matti.u.niemela@gmail.com>
2015-05-15 00:37:37 -07:00
Nick Hall d7719962fd 8427: Add new IsEnclosedBy rule 2015-05-14 23:47:03 +01:00
Nick Hall 2b90e90987 Remove deprecated rules hint setting 2015-05-14 23:12:47 +01:00
Doug Blank b2606fb6d3 Gramps 4.2 addons URL from github 2015-05-14 15:12:56 -04:00
Nick Hall cde99b6f24 Remove deprecated resize mode 2015-05-14 18:54:27 +01:00
Paul Franklin 74e90431c0 8109: fixes for Japanese date parser 2015-05-14 00:33:58 -07:00
Paul Franklin 3d9d9e2851 fix numeric date parser pathological case 2015-05-14 00:31:18 -07:00
Doug Blank 35a38bc2bd DbDjango: added load() for delayed init 2015-05-13 07:29:16 -04:00
Doug Blank ad1babbd4c DbDjango: added missing methods 2015-05-12 22:10:40 -04:00
Nick Hall f0bfce68c2 Add a title preview to the place editors 2015-05-12 23:00:20 +01:00
Nick Hall 0eb027a095 Update required gtk version in glade files 2015-05-12 21:21:28 +01:00
Nick Hall d8946d75ac Hide place title field in place editor
Add option in preferences to display legacy title field.  Hide by default.
2015-05-12 21:00:25 +01:00
Bernard Banko 9e468c7cd8 modified: po/sl.po 2015-05-11 20:20:41 -07:00
Doug Blank f74f4942d5 DbDjango: method to checkpoint modules, to allow reloading Django 2015-05-11 21:17:57 -04:00
Doug Blank b615fcb93c DbDjango: Removed debugging code 2015-05-11 18:24:03 -04:00
Doug Blank aabd158944 DbDjango: use Gramps signals; to update, delete and add;
tag change from tuple to list--must match exactly:
[] does not match ()
2015-05-11 16:53:43 -04:00
Doug Blank 3a38f21eb7 DbDjango: return a default person 2015-05-11 13:04:43 -04:00
Doug Blank 89e20b90b7 Webapp: added databases directory; changed semantics of save_cache;
working signals, for the most part
2015-05-11 12:36:35 -04:00
Doug Blank 03b78a0884 DbDjango database works read-only in Gtk Gramps
These changes add most of what is necessary to use DbDjango as
a full database to Gtk Gramps.
2015-05-10 22:43:51 -04:00
Doug Blank ccbab78fbc Allow database-changed signal to work with more general databases 2015-05-10 22:42:30 -04:00
Josip 306ede4e8e Set transient parent for errorview and errorreportassistant 2015-05-10 21:07:41 +02:00
Josip b966ba74af Workaround for broken introspection
8474: Crash after merge places
8498: Crash when attempting to add gramplet
8536: clicking on tag icon in person view causes gramps to crash
2015-05-10 21:07:40 +02:00
Doug Blank d57fccc9c6 Webapp: bare minimum to use a Django database with Gtk Gramps 2015-05-10 13:59:20 -04:00
Doug Blank c8fa5169b5 Base db: at least have right signature for NotImplemented 2015-05-10 13:25:06 -04:00
Doug Blank 4a1a42783a Webapp: updated copyright to 2015 2015-05-10 09:56:26 -04:00
Doug Blank 45a1e17bd7 Webapp: Django 1.6 and Python3 fixes 2015-05-09 22:02:24 -04:00
Doug Blank 4e0927eba4 Back to being able to import; need to decide how to store alt_name_list 2015-05-09 21:29:48 -04:00
Doug Blank 40fa203659 pyicu: pin at version 1.8, until they fix 1.9 installer 2015-05-09 21:17:01 -04:00
Doug Blank 5fde29a34c django.setup() now required; bringing database up to date
with current gramps (missing db.is_empty())
2015-05-09 18:07:54 -04:00
Doug Blank 0360a5987e Bringing webapp up to date with python3 and django 1.6 2015-05-09 17:52:11 -04:00
Doug Blank dfe88deeda Merge pull request #21 from RossGammon/find-admin-resources
Adds 'django.contrib.staticfiles' to INSTALLED_APPS
2015-05-09 17:51:07 -04:00
Doug Blank 2ad372bcba Added right-click "Copy all" to all QuickTables.
This currently copies all data from the TreeView to the clipboard,
including non-viewed columns.

Refactored rows2text to model_to_text, and moved to gramps.gui.utils

Added text_to_clipboard to gramps.gui.utils as well.
2015-05-09 09:49:19 -04:00
Paul Kilgo 23f46f6679 Enable the django.contrib.staticfiles app so admin panel finds its resources
Part of a commit cherry-picked from Paul Kilgo's fork
2015-05-09 14:12:44 +02:00
Ross Gammon d890942b43 Merge branch 'master' of https://github.com/RossGammon/gramps 2015-05-09 14:05:52 +02:00
Josip f4f83e456e 8445: Drag & Drop to add media: wrong handling of non-ascii characters 2015-05-09 00:53:53 +02:00
Doug Blank 53a00dd2d2 Bring webapp in master up to Django, version 1.6.1 2015-05-09 00:31:36 +02:00
Doug Blank a566be07a5 Turn underscores in menuitems into mnemonic accelerator key 2015-05-09 00:31:36 +02:00
Doug Blank c6ad403cab Add execute permissions and she-bang python3 to Gramps.py 2015-05-09 00:31:35 +02:00
Doug Blank ecac48e5b1 Added right-click API to ListModel; allow copy all from Descendants
Gramplet.
2015-05-09 00:31:35 +02:00
Doug Blank 774855496f 8541: Crash following update: addon permission issue blocks re-starting gramps
There were two issues:

1. attempting to read a new addon file that wasn't readable
   threw an exception, aborted updating addons

2. global error catching didn't properly handle error code
   from an OSError
2015-05-09 00:31:35 +02:00
Doug Blank b86ec4ffe9 Fixed QuestionDialog2 failure 2015-05-09 00:31:35 +02:00
Josip 710f7eab3c 8128: GtkDialog mapped without a transient parent 2015-05-09 00:31:35 +02:00
Josip f7c6acaec8 8469: GUI allows multiple Find Duplicates, then faults 2015-05-09 00:31:35 +02:00
Jérôme Rapinat 92709c2fb0 8532: typo on the french translation
plural = single form for month(s) (moi => mois)
2015-05-09 00:31:35 +02:00
Paul Franklin ad404317cb new translation template (gramps.pot) for "master" 2015-05-09 00:31:35 +02:00
Paul Franklin 49d195037d remove ambiguous strings to make update_po.py happy 2015-05-09 00:31:35 +02:00
Paul Franklin 2cfe156ad8 7541: Add places in rel_graph 2015-05-09 00:31:35 +02:00
Paul Franklin 3294c07275 8182: Complete Individual Report - Family Notes 2015-05-09 00:31:35 +02:00
Paul Franklin befddcbfb6 enable localized span and range date displayer code 2015-05-09 00:31:35 +02:00
Paul Franklin f8b74490b7 cover two pathological place=None cases in family-group report 2015-05-09 00:31:35 +02:00
SNoiraud aee8c07c83 narrativeweb : bug 8528 : local variable 'body' referenced before assignment 2015-05-09 00:31:35 +02:00
Fabrice Arbogast 42df438ea0 8225 8311: Crash on geneweb export with python3 2015-05-09 00:31:34 +02:00
John Ralls dbc68eef53 Use MSWin environment variables USERPROFILE and APPDATA.
Instead of GRAMPSHOME. GRAMPSHOME is based on the assumption that
the config directory is GRAMPSHOME/gramps, and that causes the
default location for reports and backups to be ~/Library/Application Support.
The MSWin variables allow the two to be separated.

Thanks to Tim Lyons for the suggestion.
2015-05-09 00:31:34 +02:00
John Ralls 816b05b7e8 Fix a bundling omission and create python2 and python3 meta-modules.
The latter to improve automation.
2015-05-09 00:31:34 +02:00
kulath 52ce4883ed 0001360: Gedcom input: SUBN and SUBM record handling
Fixed:
(a) Additional spaces beyond the first between a GEDCOM tag and the rest
of the line are not ignored.

(b) The SUBMitter name is ignored (it is overwritten by the XREF).

(c) SUBmissioN data items are not committed to the database.
2015-05-09 00:31:34 +02:00
Paul Franklin 007c05086c Update _datedisplay.py 2015-05-09 00:31:34 +02:00
Jérôme Rapinat ef8f197afd 8213: event columns too narrow
Web_Basic-Cypress stylesheet improvements
2015-05-09 00:31:34 +02:00
SNoiraud d2a49ffb98 Geography : bug 8499 : follow fix a bad copy/past 2015-05-09 00:31:34 +02:00
John Ralls 42e52f9d3e Fix gtk-critical error when setting mac menubar. 2015-05-09 00:31:34 +02:00
Josip d6f1c65325 Deprecated (since gtk-3.0): Gtk.Widget.modify_font 2015-05-09 00:31:34 +02:00
Zdeněk Hataš dfeaedb261 czech translation update 2015-05-09 00:31:34 +02:00
Paul Franklin 5eb92f6f6f new translation template (gramps.pot) for "master" 2015-05-09 00:31:34 +02:00
Craig J. Anderson bf7e9d6b0b New 'Include Siblings' feature added.
and got things ready for the report to go in multiple directions
2015-05-09 00:31:34 +02:00
Josip ad42e741e2 fix typo in commit 7a507a6 2015-05-09 00:31:34 +02:00
Josip 34c0668866 8473: problem by start program 2015-05-09 00:31:33 +02:00
kulath ac85b4eca3 0002370: GEDCOM import/export round trip causes lost information
Fixed output of Adoption records so "1 ADOP" is only written once for
the person event and the adoption relationship.
2015-05-09 00:31:33 +02:00
Enno Borgsteede 47dab1e0fe 8483: db upgrade fails, fatal damage 2015-05-09 00:31:33 +02:00
Paul Franklin 9f85c03278 fix some check_po complaints 2015-05-09 00:31:33 +02:00
Paul Franklin 83c689dd87 8477: date format month/year is not well reported at editing time 2015-05-09 00:31:33 +02:00
Leonhaeuser 8c7aa07992 update German translation 2015-05-09 00:31:33 +02:00
Craig J. Anderson ec02e74371 minor updates 2015-05-09 00:31:33 +02:00
Sebastian Schubert 114decfb3d Make place type in Place Reference Editor editable, add tooltip 2015-05-09 00:31:33 +02:00
Craig J. Anderson 74e5f0dc2c Updated library recursive routines. Not used (yet) 2015-05-09 00:31:33 +02:00
Paul Franklin 63af2bd82c make report name consistent with gpr registration 2015-05-09 00:31:33 +02:00
Dale Athanasias bf6fe1bf36 mention 1.8 is LTS 2015-05-09 00:31:33 +02:00
Leonhaeuser 618fd83f22 update German translation 2015-05-09 00:31:32 +02:00
Dale Athanasias 9abd7fed10 Rename readme.md to README.md 2015-05-09 00:31:32 +02:00
Dale Athanasias 6f76538f95 Create readme with existing instructions.
Copied from http://sourceforge.net/projects/gramps/files/Unstable/readme.rst

Have not managed to get this running yet.
2015-05-09 00:31:32 +02:00
Dale Athanasias 56841abd92 Mark a TODO 2015-05-09 00:31:32 +02:00
Dale Athanasias 33a702474f Mention Git 2015-05-09 00:31:32 +02:00
Doug Blank 79d6f886f9 Travis: Pin Django at version 1.7 2015-05-09 00:31:32 +02:00
Dale Athanasias ee6c787ef9 Update __init__.py
make it clearer
2015-05-09 00:31:32 +02:00
Dale Athanasias 6ce4f458ad Update COPYING-DOCS
A few fixes since you guys are now on Github, good move by the way.
2015-05-09 00:31:32 +02:00
Paul Franklin 1ee7409866 make reports' privacy option more prominent, harder to miss 2015-05-09 00:31:32 +02:00
Paul Franklin bfcf2110ec new translation template (gramps.pot) for "master" 2015-05-09 00:31:32 +02:00
Nemeséri Lajos ae2223bd8b update Hungarian translation 2015-05-09 00:31:32 +02:00
Jérôme Rapinat a7d63e2eee 6403: false positive on pattern 2015-05-09 00:31:32 +02:00
kulath e74955d5f8 0004412: Entering a witness to an event such as marriage
In some circumstances (after a Father's age of Mother's age) a witness
could be ignored.
2015-05-09 00:31:32 +02:00
Jérôme Rapinat 50ce6c6c79 6403: add a rule for checking mapping key 2015-05-09 00:31:31 +02:00
Matt Keenan d94e67399e 8468: GuiColorOption missing avail-changed event handler 2015-05-09 00:31:31 +02:00
Nick Hall af41f88760 8128: Add transient parent to editor warning dialog 2015-05-09 00:31:31 +02:00
kulath 506e380431 0008355: Gramps can't [GEDCOM] import estim. date period exported by
itself

Changed output format to DATE EST FROM TO and DATE CALC FROM TO. Also
changed in Narrative Web (which uses the same functions).
2015-05-09 00:31:31 +02:00
Paul Franklin f6859e21bf tweak report's filter option to display per the report's name-format 2015-05-09 00:31:31 +02:00
Paul Franklin 3cfbc16ff5 tweak report's filter option to display per the report's name-format 2015-05-09 00:31:31 +02:00
Paul Franklin 9900edc5c1 add filter name to report's title, tweak report's filter option display 2015-05-09 00:31:31 +02:00
Paul Franklin aceb7430bd tweak report's filter option to display per the report's name-format 2015-05-09 00:31:31 +02:00
Paul Franklin 5795edd6ed tweak report's filter option to display per the report's name-format 2015-05-09 00:31:31 +02:00
Paul Franklin 303d830a36 add name-format option, and deferred translation to report's second line 2015-05-09 00:31:31 +02:00
Paul Franklin 4bd3e77d99 add deferred translation to report's second line 2015-05-09 00:31:31 +02:00
Nemeséri Lajos b8f5c482d1 merge Hungarian translation 2015-05-09 00:31:31 +02:00
Jérôme Rapinat 36e57ad59f update Hungarian translation 2015-05-09 00:31:30 +02:00
Paul Franklin 014507ad88 slight tweak to name-format option 2015-05-09 00:31:30 +02:00
Paul Franklin 30fd78ccf1 add another missing import 2015-05-09 00:31:30 +02:00
Paul Franklin 5d87d712f5 add missing import 2015-05-09 00:31:30 +02:00
Paul Franklin 18300e28de slight tweak to name_format option 2015-05-09 00:31:30 +02:00
Paul Franklin 2cd8de2313 enable deferred translation of get_person_filters filter list 2015-05-09 00:31:30 +02:00
Paul Franklin 82d6e5d215 add DeferredFilter class (a subclass of GenericFilter) 2015-05-09 00:31:30 +02:00
kulath e6cb3b1360 Fix bug in processing of Place FORM in GEDCOM import as a result of fix
for 8233.

When an unused Place was removed, PlaceImport still tried to generate
the place hierarchy. Also fixed bug in GEDCOM import where a default
PLAC FORM in the GEDCOM header was ignored.
2015-05-09 00:31:30 +02:00
erikdrgm 4c69260c4b Updated 150326 Dutch translation 2015-05-09 00:31:30 +02:00
Leonhaeuser 8db502cea5 update German translation 2015-05-09 00:31:29 +02:00
Jérôme Rapinat 4a088bae53 Remove --no-wrap option from merging
Consistency with most translation files
2015-05-09 00:31:29 +02:00
kulath a6abc76a74 Fix spurious generation of empty 'Alternative Name' in place.merge()
with an empty name

Bug discovered during testing of fix to 8233 (thanks, Enno for
discovering the problem and the fix).
2015-05-09 00:31:29 +02:00
Jérôme Rapinat e1ff1a78b3 6403: remove markup in translation
new strings on style editor used old builder style
2015-05-09 00:31:29 +02:00
Sveinn í Felli d772bb8357 Update Icelandic translation 2015-05-09 00:31:29 +02:00
Jérôme Rapinat 4326d00591 quick test and update 2015-05-09 00:31:29 +02:00
Jérôme Rapinat 5180620a49 fix confusing strings
update tempate

xgettext prior to 0.18.3 leads to error

try to limit bsddb3 mistake on new installation
2015-05-09 00:31:29 +02:00
Paul Franklin e9741e138d move some unrelated comments away from translated strings 2015-05-09 00:31:29 +02:00
Paul Franklin cf4f3f549f typo 2015-05-09 00:31:28 +02:00
Leonhaeuser 988797dc21 update German translation 2015-05-09 00:31:28 +02:00
kulath 075f2ccb7b 3082, 4439, 7134, 8279 Various fixes for GEDCOM import.
0003082: 1/4 and 1/2 ANSEL characters not supported on importing ANSEL
GEDCOM
0004439: [Info]: characters ignored on a Gedcom encoded ANSI (cp1252
West Europe, USA)
0007134: Failure importing ANSEL encoded gedcom file.
0008279: GEDCOM import fails for ANSI file incorrectly opened with the
utf8 locale

Fixed GEDCOM import not working properly for Python3; other problems
also corected, including fixing the inability to import Windows CP1252
coded files. Also more consistent fix for 8014. Ensured any error
messages are not lost. Fixed a few ANSEL characters that were not
translated.
2015-05-09 00:31:28 +02:00
John Ralls 3f23c2c5cd Updates for building and bundling with Python3
Note that building currently requires bouncing back and forth between python2 and python3.
2015-05-09 00:31:28 +02:00
Paul Franklin 092a9025dc fix date displayer TODO: estimated and calculated month inflections 2015-05-09 00:31:28 +02:00
Leonhaeuser 9877666fa5 small fix in German translation 2015-05-09 00:31:28 +02:00
Paul Franklin 35e42dbd06 update "master" da.po (with "update_po.py -m da.po") 2015-05-09 00:31:28 +02:00
erikdrgm 71e3729b14 Updated 150320 Dutch translation 2015-05-09 00:31:27 +02:00
Jérôme Rapinat 20ec704d5d Update french translation 2015-05-09 00:31:27 +02:00
Jérôme Rapinat 2e2c32708f Test merging on french translation 2015-05-09 00:31:27 +02:00
Jérôme Rapinat 68f319052c tweak, polish argument for encoding 2015-05-09 00:31:27 +02:00
Jérôme Rapinat dcdf2be76f Improve TipsParse for python3 support 2015-05-09 00:31:27 +02:00
Paul Franklin 16ef886292 new translation template (gramps.pot) for "master" 2015-05-09 00:31:27 +02:00
Paul Franklin a9806d649e slight tweak to date displayer, for Finnish 2015-05-09 00:31:27 +02:00
SNoiraud 5af8c0d992 geography: bad copy/paste. Points are at the same level. 2015-05-09 00:31:27 +02:00
SNoiraud a40f3e70cf geography: bug8450: Attempting to add a bookmark causes an error. 2015-05-09 00:31:27 +02:00
Paul Franklin 6ca9487709 remove unneeded code 2015-05-09 00:31:27 +02:00
Jérôme Rapinat a1f67b92e0 workaround before python3 support 2015-05-09 00:31:26 +02:00
Jérôme Rapinat bc6cc2befe update template, one new string; 8103: sidebar gramplet does not fit well into Event and Citation views under french locale 2015-05-09 00:31:26 +02:00
Jérôme Rapinat 0ae571de7d 8451: Fix crash on Relationships Graph report with unknown gender, related sibling label and french locale 2015-05-09 00:31:26 +02:00
Zdeněk Hataš ec427f602c czech translation update, POT update 2015-05-09 00:31:26 +02:00
Anthony Fok d8b996212e Update Chinese translation 2015-05-09 00:31:26 +02:00
Leonhaeuser 796aaad339 fixed some errors in German translation 2015-05-09 00:31:25 +02:00
Paul Franklin 36e6ede0a2 7155: Support creating directories in various scenarios 2015-05-09 00:31:25 +02:00
Matti Niemelä 4ae9a23931 update Finniah translation (in master), by Matti Niemelä 2015-05-09 00:31:25 +02:00
Nick Hall 2f609d2f25 Add parent window to an update addons dialog 2015-05-09 00:31:24 +02:00
Doug Blank 59303fd7d0 Enable all tests, except those to be rewritten/excluded 2015-05-09 00:31:24 +02:00
Doug Blank 6e38945ab1 Fix and enable test_util_test 2015-05-09 00:31:24 +02:00
Nick Hall 28567ab58e Add parent windows to report dialogs 2015-05-09 00:31:24 +02:00
Nick Hall a4f85f05ad Remove a couple a spare placeholders in glade file 2015-05-09 00:31:24 +02:00
Nick Hall 877a2e9e4e Remove default values from paper menu glade file
Setting default margins of 2.54 was causing a warning message when
the glade file was loaded.
2015-05-09 00:31:24 +02:00
erikdrgm 9422c088e9 Updated 150317 Dutch translation 2015-05-09 00:31:24 +02:00
SNoiraud d36a72ee18 geography: bug 8450: Attempting to add a bookmark causes an error. 2015-05-09 00:31:24 +02:00
Mathieu MD 7ef7e3bbf5 8109: Japanese data localisation 2015-05-09 00:31:24 +02:00
SNoiraud 7afda11c9b geography : some minor tweaks for kml and prepare for feature request 08428 2015-05-09 00:31:24 +02:00
SNoiraud 588e2f9427 geography : some minor tweaks for kml and prepare for feature request 08428 2015-05-09 00:31:24 +02:00
Nick Hall 0affffb241 Fix transient parent window warnings 2015-05-09 00:31:24 +02:00
Nick Hall edc3a001d6 7992: Fix call to get_participant_from_event during batch transaction
During a batch transaction the secondary tables are closed.  This
causes an error when find_backlink_handles is called.  Although
not ideal, we return an empty string for participants.
2015-05-09 00:31:24 +02:00
Sveinn í Felli 116e484fce update Icelandic translation 2015-05-09 00:31:23 +02:00
Nick Hall c1a37c2dac Remove fallback to md5 module
All supported versions now include the hashlib module.
2015-05-09 00:31:23 +02:00
Doug Blank e630c87f50 Update setup.py
Added missing commas
2015-05-09 00:31:23 +02:00
cadrlp a3be3fd482 Point to User manual. 2015-05-09 00:31:23 +02:00
cadrlp 6c480baffe Year 2015
Update the year
2015-05-09 00:31:23 +02:00
cadrlp 7cef5babe7 Add Classifiers from Gramps pypi entry.
https://pypi.python.org/pypi/Gramps/
2015-05-09 00:31:23 +02:00
cadrlp 3a10a0fc04 Minor updates to FAQ
Remove section on Webhosting.
2015-05-09 00:31:23 +02:00
cadrlp b0c2203b98 Lower Case Gramps
Be consistent with rest of project
2015-05-09 00:31:23 +02:00
cadrlp 663ec3f1d5 Minor updates to readme
Change to reflect Gramps 4.1 has been released.
2015-05-09 00:31:23 +02:00
Doug Blank b2b514a390 Travis: add mock, prevents skips 2015-05-09 00:31:23 +02:00
Nick Hall f7e3294a65 Convert remaining unicode literals 2015-05-09 00:31:23 +02:00
Zdeněk Hataš a11245ef97 czech translation update 2015-05-09 00:31:23 +02:00
Nick Hall 92fe4cd7bc 8023: Remove HtmlView plugin 2015-05-09 00:31:22 +02:00
Doug Blank 5106de5687 Removed xml import test, as that is thoroughly tested elsewhere.
Removed excluded nosetests for Travis
2015-05-09 00:31:22 +02:00
Paul Franklin 8b360b4588 new gramps.pot for trunk-master 2015-05-09 00:31:22 +02:00
Doug Blank aa1acac08f gi.overrides is no longer needed 2015-05-09 00:31:22 +02:00
Doug Blank 40cebe4893 Don't crash trying to create a Gdk.Cursor without a DISPLAY; enable more tests for Travis 2015-05-09 00:31:22 +02:00
erikdrgm 4e2a0ff1a5 Updated 150315 Dutch translation 2015-05-09 00:31:22 +02:00
erikdrgm 1ead84b831 Updated Dutch translation 2015-05-09 00:31:22 +02:00
Doug Blank 762323fac9 Travis: remove new test, until we can include it (xvfb, or avoid Gtk Cursor calls) 2015-05-09 00:31:21 +02:00
Doug Blank d9b42ac2dc Travis: try using virtual frame buffer to test graphics 2015-05-09 00:31:21 +02:00
Doug Blank 88c06d41fb 8435: Crash when trying to link existing place as an enclosing place using P0001 number; added tests, updated Travis testing 2015-05-09 00:31:21 +02:00
Doug Blank 7970b04113 DictionaryDb: fixed return type in get_person_from_gramps_id; added get_place_from_gramps_id 2015-05-09 00:31:21 +02:00
Doug Blank 5cb0fa4ca5 Some issues comparing Today close to midnight, in Travis 2015-05-09 00:31:21 +02:00
Josip ad54db2cb5 8023: HTML view fails to load
add encoding attribute
2015-05-09 00:31:21 +02:00
Nick Hall 102463d9ef Replace cuni with str 2015-05-09 00:31:21 +02:00
Nick Hall 1f922d17be Replace UNITYPE with str 2015-05-09 00:31:21 +02:00
Nick Hall 6033a2141e Replace STRTYPE with str 2015-05-09 00:31:20 +02:00
Nick Hall 8c18eae777 Replace conv_to_unicode_direct with str 2015-05-09 00:31:20 +02:00
Nick Hall 66c410f55e Remove uni_to_gui function
We no longer need to convert strings to utf8 before passing them
to Gtk functions.
2015-05-09 00:31:20 +02:00
Nick Hall 3195f10a36 Fix failing unit test 2015-05-09 00:31:20 +02:00
Nick Hall 37ff832288 Remove use-bsddb3 configuration setting 2015-05-09 00:31:20 +02:00
Nick Hall caac0901cb Remove python2 specific code 2015-05-09 00:31:19 +02:00
Zdeněk Hataš 70c11878f4 czech translation update 2015-05-09 00:31:19 +02:00
Nick Hall 2ee685e71b Remove imports from __future__ module 2015-05-09 00:31:19 +02:00
Nick Hall 906b9e737d Increase minimum Gtk version required to 3.10 2015-05-09 00:31:19 +02:00
Doug Blank b401741143 Bring webapp in master up to Django, version 1.6.1 2015-05-08 10:54:35 -04:00
Doug Blank 4566c62014 Turn underscores in menuitems into mnemonic accelerator key 2015-05-08 08:58:13 -04:00
Doug Blank b14a2abdfc Add execute permissions and she-bang python3 to Gramps.py 2015-05-08 08:56:49 -04:00
Doug Blank 7967f47934 Merge pull request #19 from dsblank/master
Added right-click API to ListModel; allow copy all from Descendants
2015-05-07 13:04:51 -04:00
Doug Blank c5cf398e64 Added right-click API to ListModel; allow copy all from Descendants
Gramplet.
2015-05-07 12:04:14 -04:00
Doug Blank 7c9fd0ae63 Merge branch 'master' of https://github.com/gramps-project/gramps 2015-05-05 13:29:26 -04:00
Doug Blank 5149ac7554 8541: Crash following update: addon permission issue blocks re-starting gramps
There were two issues:

1. attempting to read a new addon file that wasn't readable
   threw an exception, aborted updating addons

2. global error catching didn't properly handle error code
   from an OSError
2015-05-05 13:25:20 -04:00
Doug Blank f7dc7ba859 Fixed QuestionDialog2 failure 2015-05-05 11:28:35 -04:00
Josip e172b6520d 8128: GtkDialog mapped without a transient parent 2015-05-03 20:04:28 +02:00
Josip 1e9f1dbb3e 8469: GUI allows multiple Find Duplicates, then faults 2015-05-03 15:43:32 +02:00
Jérôme Rapinat 8b934fd651 8532: typo on the french translation
plural = single form for month(s) (moi => mois)
2015-05-02 17:00:59 +02:00
Paul Franklin d73b9e9249 new translation template (gramps.pot) for "master" 2015-05-01 22:40:12 -07:00
Paul Franklin 0b35e90fc1 remove ambiguous strings to make update_po.py happy 2015-05-01 22:39:08 -07:00
Paul Franklin 7be52a96fd 7541: Add places in rel_graph 2015-05-01 21:04:06 -07:00
Paul Franklin 8ac6617e71 8182: Complete Individual Report - Family Notes 2015-05-01 20:31:32 -07:00
Paul Franklin f9f369fb03 enable localized span and range date displayer code 2015-05-01 20:03:16 -07:00
Paul Franklin 1d9391dfc9 cover two pathological place=None cases in family-group report 2015-05-01 19:42:42 -07:00
SNoiraud 5ccd4a4377 narrativeweb : bug 8528 : local variable 'body' referenced before assignment 2015-05-01 10:33:43 +02:00
Fabrice Arbogast e1621b70a8 8225 8311: Crash on geneweb export with python3 2015-04-30 17:23:58 +02:00
John Ralls c11c63169f Use MSWin environment variables USERPROFILE and APPDATA.
Instead of GRAMPSHOME. GRAMPSHOME is based on the assumption that
the config directory is GRAMPSHOME/gramps, and that causes the
default location for reports and backups to be ~/Library/Application Support.
The MSWin variables allow the two to be separated.

Thanks to Tim Lyons for the suggestion.
2015-04-25 16:47:43 -07:00
John Ralls cfb9f64db9 Fix a bundling omission and create python2 and python3 meta-modules.
The latter to improve automation.
2015-04-25 15:02:09 -07:00
kulath c36ddf0845 0001360: Gedcom input: SUBN and SUBM record handling
Fixed:
(a) Additional spaces beyond the first between a GEDCOM tag and the rest
of the line are not ignored.

(b) The SUBMitter name is ignored (it is overwritten by the XREF).

(c) SUBmissioN data items are not committed to the database.
2015-04-24 10:52:25 +01:00
Paul Franklin b79b2c3955 Update _datedisplay.py 2015-04-18 15:35:02 -07:00
Jérôme Rapinat 152535f61b 8213: event columns too narrow
Web_Basic-Cypress stylesheet improvements
2015-04-18 16:07:12 +02:00
SNoiraud 3dd194698a Geography : bug 8499 : follow fix a bad copy/past 2015-04-18 11:53:17 +02:00
John Ralls 3147cf5a2b Fix gtk-critical error when setting mac menubar. 2015-04-17 15:13:13 -07:00
Josip 8e8c206a8f Deprecated (since gtk-3.0): Gtk.Widget.modify_font 2015-04-17 12:42:50 +02:00
Zdeněk Hataš cb8e726f2b czech translation update 2015-04-17 08:39:59 +02:00
Paul Franklin 7a6879999d new translation template (gramps.pot) for "master" 2015-04-17 08:39:59 +02:00
Craig J. Anderson 64db425ab0 New 'Include Siblings' feature added.
and got things ready for the report to go in multiple directions
2015-04-13 14:11:37 -04:00
Josip bb1e5f4e3d fix typo in commit 7a507a6 2015-04-13 10:01:13 +02:00
Josip 7a507a6b01 8473: problem by start program 2015-04-13 01:23:53 +02:00
kulath 0e19785b92 0002370: GEDCOM import/export round trip causes lost information
Fixed output of Adoption records so "1 ADOP" is only written once for
the person event and the adoption relationship.
2015-04-12 19:04:42 +01:00
Enno Borgsteede 4bd5faf446 8483: db upgrade fails, fatal damage 2015-04-12 10:44:10 -07:00
Paul Franklin a02c68edfb fix some check_po complaints 2015-04-11 18:54:24 -07:00
Nick Hall 1f5c8be4db Merge pull request #16 from sebschub/master
Make place type in Place Reference Editor editable, add tooltip (master)
2015-04-10 19:14:41 +01:00
Paul Franklin d86aa283eb 8477: date format month/year is not well reported at editing time 2015-04-09 22:07:41 -07:00
Leonhaeuser 8069855017 update German translation 2015-04-09 21:43:27 +02:00
Craig J. Anderson 7f180f3883 minor updates 2015-04-09 09:04:22 -04:00
Sebastian Schubert f7f0f60d8b Make place type in Place Reference Editor editable, add tooltip 2015-04-09 14:23:31 +02:00
Craig J. Anderson 1d1a4de566 Updated library recursive routines. Not used (yet) 2015-04-07 10:07:45 -04:00
Doug Blank ef965caf4a Merge pull request #13 from daleathan/patch-3
Mark a TODO
2015-04-06 21:21:47 -04:00
Doug Blank 2e6fbc5e6e Merge pull request #11 from daleathan/patch-1
Mention Git
2015-04-06 21:19:54 -04:00
Doug Blank 7e1ba04faa Merge pull request #14 from daleathan/patch-4
Create readme with existing instructions.
2015-04-05 13:44:39 -04:00
Paul Franklin 70a7922b9d make report name consistent with gpr registration 2015-04-05 09:47:02 -07:00
Dale Athanasias c886725e3b mention 1.8 is LTS 2015-04-05 08:28:07 +10:00
Leonhaeuser f886698723 update German translation 2015-04-05 00:20:22 +02:00
Dale Athanasias b384635529 Rename readme.md to README.md 2015-04-05 07:59:21 +10:00
Dale Athanasias c40d2d200d Create readme with existing instructions.
Copied from http://sourceforge.net/projects/gramps/files/Unstable/readme.rst

Have not managed to get this running yet.
2015-04-04 15:28:09 +11:00
Dale Athanasias d4310848e9 Mark a TODO 2015-04-04 10:33:35 +11:00
Dale Athanasias f81673cdac Mention Git 2015-04-04 10:25:04 +11:00
Doug Blank 7a3941e80e Merge pull request #10 from daleathan/patch-2
Update __init__.py
2015-04-02 23:16:33 -04:00
Doug Blank 3af6e0853d Merge pull request #9 from daleathan/patch-1
Update COPYING-DOCS
2015-04-02 23:15:05 -04:00
Doug Blank 35440f241a Travis: Pin Django at version 1.7 2015-04-02 23:02:00 -04:00
Dale Athanasias 9e22e94645 Update __init__.py
make it clearer
2015-04-03 13:28:54 +11:00
Dale Athanasias 200ffd385d Update COPYING-DOCS
A few fixes since you guys are now on Github, good move by the way.
2015-04-03 13:20:27 +11:00
Paul Franklin 1ee9c60814 make reports' privacy option more prominent, harder to miss 2015-04-01 12:30:55 -07:00
Paul Franklin e4b2cf9583 new translation template (gramps.pot) for "master" 2015-04-01 10:37:55 -07:00
Nemeséri Lajos deeb408690 update Hungarian translation 2015-04-01 16:05:20 +02:00
Jérôme Rapinat 50c1080d37 6403: false positive on pattern 2015-04-01 15:46:03 +02:00
kulath 5af7335e54 0004412: Entering a witness to an event such as marriage
In some circumstances (after a Father's age of Mother's age) a witness
could be ignored.
2015-04-01 14:50:37 +01:00
Jérôme Rapinat b5610e9d5f 6403: add a rule for checking mapping key 2015-04-01 15:30:47 +02:00
Matt Keenan ef19a11889 8468: GuiColorOption missing avail-changed event handler 2015-03-31 10:22:54 -07:00
Nick Hall d6c6d208c5 8128: Add transient parent to editor warning dialog 2015-03-31 16:46:58 +01:00
kulath 54dde99ad0 0008355: Gramps can't [GEDCOM] import estim. date period exported by
itself

Changed output format to DATE EST FROM TO and DATE CALC FROM TO. Also
changed in Narrative Web (which uses the same functions).
2015-03-31 10:49:04 +01:00
Paul Franklin 042f57d2e9 tweak report's filter option to display per the report's name-format 2015-03-30 13:05:55 -07:00
Paul Franklin 9ce42f7174 tweak report's filter option to display per the report's name-format 2015-03-30 13:02:41 -07:00
Paul Franklin d984e5796b add filter name to report's title, tweak report's filter option display 2015-03-30 12:55:51 -07:00
Paul Franklin f53d6482da tweak report's filter option to display per the report's name-format 2015-03-30 12:47:30 -07:00
Paul Franklin d1653be44d tweak report's filter option to display per the report's name-format 2015-03-30 12:42:57 -07:00
Paul Franklin e25a2d23e2 add name-format option, and deferred translation to report's second line 2015-03-30 12:31:25 -07:00
Paul Franklin 0657680432 add deferred translation to report's second line 2015-03-30 12:19:15 -07:00
Nemeséri Lajos 7ab417da94 merge Hungarian translation 2015-03-30 14:43:20 +02:00
Jérôme Rapinat a9a91b19c9 update Hungarian translation 2015-03-30 14:41:45 +02:00
Paul Franklin 5dba5711b9 slight tweak to name-format option 2015-03-29 10:11:28 -07:00
Paul Franklin 1fff4e7b0c add another missing import 2015-03-28 13:19:49 -07:00
Paul Franklin 946a4fbd2b add missing import 2015-03-27 09:11:20 -07:00
Paul Franklin 57acf9d21a slight tweak to name_format option 2015-03-26 22:03:35 -07:00
Paul Franklin 6961361c61 enable deferred translation of get_person_filters filter list 2015-03-26 21:47:34 -07:00
Paul Franklin 41d9bbe4c0 add DeferredFilter class (a subclass of GenericFilter) 2015-03-26 21:45:47 -07:00
kulath 2a1da2efba Fix bug in processing of Place FORM in GEDCOM import as a result of fix
for 8233.

When an unused Place was removed, PlaceImport still tried to generate
the place hierarchy. Also fixed bug in GEDCOM import where a default
PLAC FORM in the GEDCOM header was ignored.
2015-03-26 12:19:26 +00:00
erikdrgm a8f08749d4 Updated 150326 Dutch translation 2015-03-26 10:22:31 +01:00
Leonhaeuser afb6603b27 update German translation 2015-03-26 02:14:16 +01:00
Jérôme Rapinat 99d38a539e Remove --no-wrap option from merging
Consistency with most translation files
2015-03-25 19:53:20 +01:00
Jérôme Rapinat a40fbc1716 Merge branch 'master' of github.com:gramps-project/gramps 2015-03-25 19:25:06 +01:00
kulath a15bfd98df Fix spurious generation of empty 'Alternative Name' in place.merge()
with an empty name

Bug discovered during testing of fix to 8233 (thanks, Enno for
discovering the problem and the fix).
2015-03-25 18:30:05 +00:00
Jérôme Rapinat c2adf1be01 6403: remove markup in translation
new strings on style editor used old builder style
2015-03-25 19:24:47 +01:00
Sveinn í Felli a550abe41b Update Icelandic translation 2015-03-25 19:09:32 +01:00
Jérôme Rapinat 7000992bf0 quick test and update 2015-03-25 19:05:28 +01:00
Jérôme Rapinat 4a06f9c0e3 fix confusing strings
update tempate

xgettext prior to 0.18.3 leads to error

try to limit bsddb3 mistake on new installation
2015-03-25 18:58:15 +01:00
Paul Franklin 98e21d9fb9 move some unrelated comments away from translated strings 2015-03-25 09:23:36 -07:00
Paul Franklin 336d627b6d typo 2015-03-24 22:40:37 -07:00
Leonhaeuser 1bd9ec19df update German translation 2015-03-25 00:11:27 +01:00
kulath 0f5bbce528 3082, 4439, 7134, 8279 Various fixes for GEDCOM import.
0003082: 1/4 and 1/2 ANSEL characters not supported on importing ANSEL
GEDCOM
0004439: [Info]: characters ignored on a Gedcom encoded ANSI (cp1252
West Europe, USA)
0007134: Failure importing ANSEL encoded gedcom file.
0008279: GEDCOM import fails for ANSI file incorrectly opened with the
utf8 locale

Fixed GEDCOM import not working properly for Python3; other problems
also corected, including fixing the inability to import Windows CP1252
coded files. Also more consistent fix for 8014. Ensured any error
messages are not lost. Fixed a few ANSEL characters that were not
translated.
2015-03-24 15:24:28 +00:00
John Ralls 0eff99871a Updates for building and bundling with Python3
Note that building currently requires bouncing back and forth between python2 and python3.
2015-03-23 11:00:25 +09:00
Paul Franklin d42a8b7adb fix date displayer TODO: estimated and calculated month inflections 2015-03-21 12:49:26 -07:00
Leonhaeuser c6052e12fe small fix in German translation 2015-03-21 16:57:54 +01:00
Paul Franklin 553de2ce24 update "master" da.po (with "update_po.py -m da.po") 2015-03-20 09:46:08 -07:00
erikdrgm 99ab72ff82 Updated 150320 Dutch translation 2015-03-20 11:06:48 +01:00
Jérôme Rapinat 0700a8c25d Update french translation 2015-03-20 10:54:53 +01:00
Jérôme Rapinat 94c293ab5e Test merging on french translation 2015-03-20 09:47:22 +01:00
Jérôme Rapinat 1e0d34dc4f tweak, polish argument for encoding 2015-03-20 09:13:24 +01:00
Jérôme Rapinat 727d96cc22 Improve TipsParse for python3 support 2015-03-20 09:06:06 +01:00
Paul Franklin f727d6b4a9 new translation template (gramps.pot) for "master" 2015-03-19 19:47:28 -07:00
Paul Franklin 8d0ae96b7d slight tweak to date displayer, for Finnish 2015-03-19 19:41:51 -07:00
Sam Manzi 8cf9e7324d Merge pull request #8 from anthonyfok/l10n-chinese
Update Chinese translation
2015-03-20 12:59:35 +11:00
SNoiraud a3c923d180 geography: bad copy/paste. Points are at the same level. 2015-03-19 19:45:20 +01:00
SNoiraud 115b16ffb7 geography: bug8450: Attempting to add a bookmark causes an error. 2015-03-19 19:28:58 +01:00
Paul Franklin 768dcbf112 remove unneeded code 2015-03-19 10:00:46 -07:00
Jérôme Rapinat b324e0fb80 workaround before python3 support 2015-03-19 17:39:55 +01:00
Jérôme Rapinat 40da51849e update template, one new string; 8103: sidebar gramplet does not fit well into Event and Citation views under french locale 2015-03-19 15:36:50 +01:00
Jérôme Rapinat be0744d454 8451: Fix crash on Relationships Graph report with unknown gender, related sibling label and french locale 2015-03-19 15:25:16 +01:00
Zdeněk Hataš 787c76e013 czech translation update, POT update 2015-03-19 08:42:25 +01:00
Anthony Fok 12d29e79f6 Update Chinese translation 2015-03-18 21:45:40 -06:00
Leonhaeuser 075a237873 fixed some errors in German translation 2015-03-19 02:06:16 +01:00
Paul Franklin 64ef033724 7155: Support creating directories in various scenarios 2015-03-18 14:01:13 -07:00
Matti Niemelä c40ea85727 update Finniah translation (in master), by Matti Niemelä 2015-03-18 09:29:38 -07:00
Nick Hall bf57632deb Add parent window to an update addons dialog 2015-03-18 10:08:04 +00:00
Doug Blank 35dead7b26 Enable all tests, except those to be rewritten/excluded 2015-03-18 03:57:27 -04:00
Doug Blank ad1d47cc37 Fix and enable test_util_test 2015-03-18 03:25:39 -04:00
Nick Hall 43882165cf Add parent windows to report dialogs 2015-03-17 23:21:35 +00:00
Nick Hall 6100a5b7da Remove a couple a spare placeholders in glade file 2015-03-17 23:21:35 +00:00
Nick Hall d095458ec0 Remove default values from paper menu glade file
Setting default margins of 2.54 was causing a warning message when
the glade file was loaded.
2015-03-17 23:21:35 +00:00
erikdrgm 5b39a018cf Updated 150317 Dutch translation 2015-03-17 21:33:33 +01:00
SNoiraud e400ff6944 geography: bug 8450: Attempting to add a bookmark causes an error. 2015-03-17 21:08:08 +01:00
Mathieu MD cc1ab8bac4 8109: Japanese data localisation 2015-03-17 12:35:26 -07:00
SNoiraud bb30862c1b geography : some minor tweaks for kml and prepare for feature request 08428 2015-03-17 19:35:58 +01:00
SNoiraud fdc42a9693 geography : some minor tweaks for kml and prepare for feature request 08428 2015-03-17 19:33:07 +01:00
Nick Hall 9fe9083e36 Fix transient parent window warnings 2015-03-17 17:40:04 +00:00
Nick Hall 13bee7cf26 7992: Fix call to get_participant_from_event during batch transaction
During a batch transaction the secondary tables are closed.  This
causes an error when find_backlink_handles is called.  Although
not ideal, we return an empty string for participants.
2015-03-17 14:03:03 +00:00
Sveinn í Felli ec35a5d0cb update Icelandic translation 2015-03-16 16:19:02 +01:00
Nick Hall 4d66fbe8c3 Remove fallback to md5 module
All supported versions now include the hashlib module.
2015-03-16 14:20:19 +00:00
Doug Blank b5fb4292c9 Merge pull request #6 from sam-manzi/patch-5
Year 2015
2015-03-15 22:20:21 -04:00
Doug Blank 1d70822764 Update setup.py
Added missing commas
2015-03-15 22:13:24 -04:00
Doug Blank 41fad77bf9 Merge pull request #5 from sam-manzi/patch-4
Add Classifiers from Gramps pypi entry.
2015-03-15 22:07:45 -04:00
Doug Blank efcd86697c Merge pull request #3 from sam-manzi/patch-2
Lower Case Gramps
2015-03-15 22:06:56 -04:00
Doug Blank 126dbf8800 Merge pull request #2 from sam-manzi/patch-1
Minor updates to readme
2015-03-15 22:06:29 -04:00
Doug Blank 254fb87ab3 Merge pull request #4 from sam-manzi/patch-3
Minor updates to FAQ
2015-03-15 22:05:54 -04:00
Doug Blank c7187fafc3 Merge pull request #7 from sam-manzi/patch-6
Point to User manual.
2015-03-15 22:03:38 -04:00
cadrlp ca08999cf8 Point to User manual. 2015-03-16 12:06:58 +11:00
cadrlp 4f2239cb9f Year 2015
Update the year
2015-03-16 12:04:50 +11:00
cadrlp 3b5e2c99cf Add Classifiers from Gramps pypi entry.
https://pypi.python.org/pypi/Gramps/
2015-03-16 11:56:52 +11:00
cadrlp 3ab1f6ce0e Minor updates to FAQ
Remove section on Webhosting.
2015-03-16 11:45:53 +11:00
cadrlp c606dc512e Lower Case Gramps
Be consistent with rest of project
2015-03-16 11:38:37 +11:00
cadrlp 33dd8e8e0f Minor updates to readme
Change to reflect Gramps 4.1 has been released.
2015-03-16 11:36:29 +11:00
Doug Blank 4b11ed740a Travis: add mock, prevents skips 2015-03-15 17:26:28 -04:00
Nick Hall 5dfbd791a7 Convert remaining unicode literals 2015-03-15 19:50:27 +00:00
Zdeněk Hataš 046d046a30 czech translation update 2015-03-15 18:35:42 +01:00
Nick Hall 6c256b96d6 8023: Remove HtmlView plugin 2015-03-15 16:53:15 +00:00
Doug Blank 3163d39f95 Removed xml import test, as that is thoroughly tested elsewhere.
Removed excluded nosetests for Travis
2015-03-15 11:55:35 -04:00
Paul Franklin 11cc83403d new gramps.pot for trunk-master 2015-03-15 08:23:31 -07:00
Doug Blank 46bdb38a11 gi.overrides is no longer needed 2015-03-15 10:01:43 -04:00
Doug Blank ac530d8a34 Don't crash trying to create a Gdk.Cursor without a DISPLAY; enable more tests for Travis 2015-03-15 09:48:10 -04:00
erikdrgm 4bb60a80e7 Updated 150315 Dutch translation 2015-03-15 10:07:32 +01:00
erikdrgm bee9ac5a44 Updated Dutch translation 2015-03-15 09:24:54 +01:00
Doug Blank fc58b123b4 Travis: remove new test, until we can include it (xvfb, or avoid Gtk Cursor calls) 2015-03-15 01:35:14 -04:00
Doug Blank f4418d65b9 Travis: try using virtual frame buffer to test graphics 2015-03-15 01:06:09 -04:00
Doug Blank 23c023f787 8435: Crash when trying to link existing place as an enclosing place using P0001 number; added tests, updated Travis testing 2015-03-15 00:33:39 -04:00
Doug Blank 12490b4600 DictionaryDb: fixed return type in get_person_from_gramps_id; added get_place_from_gramps_id 2015-03-15 00:31:15 -04:00
Doug Blank 07aec2000a Some issues comparing Today close to midnight, in Travis 2015-03-14 23:01:24 -04:00
Josip 53d3c96e58 8023: HTML view fails to load
add encoding attribute
2015-03-15 01:24:27 +01:00
Nick Hall 5da10c5a80 Replace cuni with str 2015-03-14 23:48:32 +00:00
Nick Hall c9fd339289 Replace UNITYPE with str 2015-03-14 22:33:55 +00:00
Nick Hall beab7892e5 Replace STRTYPE with str 2015-03-14 22:11:54 +00:00
Nick Hall 6d047c946c Replace conv_to_unicode_direct with str 2015-03-14 21:49:45 +00:00
Nick Hall 63ffd83021 Remove uni_to_gui function
We no longer need to convert strings to utf8 before passing them
to Gtk functions.
2015-03-14 21:30:26 +00:00
Nick Hall 2ecf1a3ddc Fix failing unit test 2015-03-14 20:51:08 +00:00
Nick Hall 7147236403 Remove use-bsddb3 configuration setting 2015-03-14 19:52:13 +00:00
Nick Hall e0608f0ec4 Remove python2 specific code 2015-03-14 19:29:16 +00:00
Zdeněk Hataš 3299deda11 czech translation update 2015-03-14 17:26:49 +01:00
Nick Hall 3b5efdf7ae Remove imports from __future__ module 2015-03-14 16:10:36 +00:00
Nick Hall ad073326e5 Increase minimum Gtk version required to 3.10 2015-03-14 14:49:51 +00:00
Doug Blank 7cb69fa7c2 Merge branch 'master' of https://github.com/gramps-project/gramps 2015-03-13 22:10:00 -04:00
Doug Blank 4d0508e6bf 8023: HTML view fails to load; replaced file with open 2015-03-13 22:09:41 -04:00
Leonhaeuser 8845f2d4c0 update German translation 2015-03-14 00:34:52 +01:00
Doug Blank 6bdc7fea05 Webapp: bring up to date for Django 1.7.1 2015-03-13 15:49:04 -04:00
Paul Franklin ba748030b4 new gramps.pot for trunk-master 2015-03-13 10:42:16 -07:00
Paul Franklin d1fdf737a7 8203: Complete Individual Report -- option to output all media 2015-03-13 10:32:10 -07:00
Zdeněk Hataš 965e0d22a3 czech translation update 2015-03-13 17:38:01 +01:00
Doug Blank ccc296d748 Merge pull request #1 from sebschub/master
Remove executable flag of two css files
2015-03-13 12:14:22 -04:00
Doug Blank 245a3f5d8b Travis: use python3 to build gramps 2015-03-13 09:59:49 -04:00
Doug Blank 68cc250fe9 Travis: need sudo on global pip3; this is going to work 2015-03-13 09:53:42 -04:00
Doug Blank 7fdfd81ca0 Travis: format error 2015-03-13 09:47:10 -04:00
Doug Blank 6b00029831 Travis: run from global python3 env 2015-03-13 09:39:09 -04:00
Doug Blank 9e763f1584 Travis: move to all virtual env build 2015-03-13 09:09:34 -04:00
Zdeněk Hataš b890c0ab2f czech translation update 2015-03-13 12:14:38 +01:00
Doug Blank 8e24aee3e6 Travis: attempting pip3 available globally 2015-03-13 07:08:59 -04:00
Doug Blank 0a6880d45e Travis: install django icu in global python3 2015-03-13 07:04:40 -04:00
Doug Blank b28f762afd Travis: just using Python 3.3 for now 2015-03-13 02:50:32 -04:00
Doug Blank acef2c29c2 Travis: try pip3.4, and pip3.3 2015-03-13 02:47:25 -04:00
Doug Blank 79558ac588 Travis: use pip3, presume it is already installed 2015-03-13 02:20:42 -04:00
Doug Blank 3cd8a8f38f Travis: use pip3; make gramps home; allow cli test to work if dir exists 2015-03-13 02:05:02 -04:00
Doug Blank 4eff49762f Travis: remove failing tests 2015-03-13 01:44:27 -04:00
Doug Blank e551fad10f Travis: list test names 2015-03-13 01:31:54 -04:00
Doug Blank cbcfcfd14d Travis: removing failing tests 2015-03-13 01:17:08 -04:00
Doug Blank 456482f43b Travis: install python3-nose 2015-03-13 01:01:46 -04:00
Doug Blank 6a04b63fa5 Travis: make sure we are testing with python3 2015-03-13 00:57:02 -04:00
Doug Blank 6bdd17f9a6 Travis: gi in pip is not gobject related 2015-03-13 00:46:33 -04:00
Doug Blank f52c53738f Travis: don't attempt to build bsddb3 from pip 2015-03-13 00:39:38 -04:00
Doug Blank 7e7c0d6e3d Travis: use pip to install gi and bsddb3 2015-03-13 00:03:52 -04:00
Doug Blank 8a868bdae1 Travis: use pip to install pyicu 2015-03-12 23:56:53 -04:00
Doug Blank e80fa5b4a5 Travis now running: removed Python 2.7 testing; use all python3 libs 2015-03-12 23:50:34 -04:00
Doug Blank 86486ce043 Travis config: perhaps no need to change directory 2015-03-12 23:41:43 -04:00
Doug Blank 2b7829a746 Travis config: attempting to change to correct subdirectory 2015-03-12 23:38:40 -04:00
Doug Blank c44092b576 Travis config: no need to clone gramps, already done 2015-03-12 23:33:08 -04:00
Doug Blank 4db8558a1b Changes to get django models to run under Python3; added travis config file--should run travis 2015-03-12 23:29:10 -04:00
Doug Blank 021da38047 Added missing DictionaryDb.is_empty(); fixed moved constfunc reference 2015-03-12 22:44:08 -04:00
Nick Hall 102c099f1d 8430: Place displayer should not return None
The place displayer should return an empty string for an event
with no place.
2015-03-12 23:13:54 +00:00
Nick Hall 1e1cea792e Fix another handle type bug 2015-03-12 18:18:36 +00:00
Nick Hall f540f2a511 Convert deprecated color widgets 2015-03-12 18:18:36 +00:00
Paul Franklin e80445127f 8423: Python3 needs new_subpixbuf not subpixbuf 2015-03-12 10:11:58 -07:00
Paul Franklin c136791a00 typo 2015-03-12 09:58:38 -07:00
kulath 411b2995eb 0008401: NameError in GEDCOM importer 2015-03-12 14:11:28 +00:00
kulath 159fa31888 0008322: Event address is lost on import, i.e. disconnected from event.
On GEDCOM import, Places are only merged if the Place Title and the
whole of the main location are identical.
2015-03-12 12:35:05 +00:00
Anthony Fok 2796d77566 remove typo flagged by "python update_po.py -p" when generating gramps.pot 2015-03-10 08:43:04 -07:00
Sebastian Schubert d75860f6c1 Remove executable flag of two css files 2015-03-10 13:48:31 +01:00
Jérôme Rapinat 3c4eef5461 8407: gramps -i option in manpage not reflecting what happens; update french translation 2015-03-09 19:07:32 +01:00
Ross Gammon d595d46129 8407: gramps -o option in manpage not reflecting what happens, https://bugs.launchpad.net/ubuntu/+source/gramps/+bug/1427444 2015-03-07 11:30:21 +01:00
Paul Franklin 70fd3d1dbc 8204: Enable "Complete Individual Report" to show individual's tags 2015-03-06 10:29:18 -08:00
Anthony Fok 2da2bcdeac implement both "traditional" and "simplfied" Chinese -- partial 2015-03-05 16:57:46 -08:00
Paul Franklin 9335a21e3a shorten po/check_po lines (indent=4-chars, etc.) 2015-03-05 16:23:33 -08:00
leonhaeuser 9f843464b3 German translation update and typo fix 2015-03-05 21:00:57 +01:00
Paul Franklin dd20212156 give "update_po.py -p" fewer things to moan about 2015-03-01 15:01:52 -08:00
Paul Franklin e70bb04f82 add missing import 2015-03-01 14:53:14 -08:00
Anthony Fok 92610bf486 enable python3 to run po/update_po.py 2015-03-01 09:00:38 -08:00
kulath 9444cbe388 0007824: Regression: running gramps from crontab fails 2015-03-01 16:53:45 +00:00
Nick Hall b89cdeb077 Check python version >= 3.2 when running setup script 2015-03-01 16:40:32 +00:00
Anthony Fok c800524955 correct incorrect tip49, new gramps.pot 2015-02-28 18:58:40 -08:00
Paul Franklin f7443a3a41 clarify new string, new gramps.pot 2015-02-28 16:03:03 -08:00
Nick Hall 97433d2189 Tidy up About dialog
Use standard string for translator credits.
Add new section for contributors.
Align artwork section properly.
2015-02-28 23:00:59 +00:00
kulath 94776a3e4f 0008380: tag_map is not initialized 2015-02-28 20:52:38 +00:00
Nick Hall 1a661bcc3d Set minimum python version required to 3.2 2015-02-28 17:57:00 +00:00
SNoiraud 4f72a8bc6a geography : added the layer to osmgpsmap. 2015-02-27 20:50:59 +01:00
SNoiraud 09fa42dd94 geography : added the possibility to show kml files. 2015-02-27 20:50:02 +01:00
Anthony Fok deba8169bb 7573: implement both "traditional" and "simplfied" Chinese
* Translation revisions and fixes
   * Generate zh_TW.po and new zh_HK.po from zh_CN.po
     with the help of https://github.com/BYVoid/OpenCC
     and a small sed script (see f.r. 7573 for the script)
2015-02-26 14:19:01 -08:00
Nick Hall 3d043a7b53 Convert update addons dialog to no longer be a ManagedWindow 2015-02-26 21:34:10 +00:00
Nick Hall 149b049650 Remove place title from default view columns 2015-02-26 21:02:47 +00:00
Tim G L Lyons 0778a6f706 Missing import statement 2015-02-25 01:13:20 +00:00
Nick Hall 9713b08bf0 Remove deprecated Gtk Alignment widgets 2015-02-24 22:51:38 +00:00
kulath fab7afd2a3 8134: Fix pickle upgrade of python2 strings to python3 str
Move load of metadata (which can also have pickle upgrade errors) and
make zip backup for pickle or schema upgrade.
2015-02-24 22:44:19 +00:00
Nick Hall 423559f48e Fix schema upgrade from 15 to 16 with python3 2015-02-23 19:20:49 +00:00
Paul Franklin 3145eadd0a 8316: Family with children but no parents is lost on filtered export 2015-02-23 08:54:57 -08:00
John Ralls 0ae56692eb Update PyICU to 1.8
1.5 won't compile against ICU-5.4.
2015-02-22 12:50:32 -08:00
Nick Hall a01722d35f 8134: Fix pickle upgrade of python2 strings to python3 str 2015-02-22 15:24:47 +00:00
Jérôme Rapinat 39450c0590 two new filter rules were missing on template, 'intltool-update -m' 2015-02-21 15:31:27 +01:00
Nick Hall 21d850783c Use place displayer in relationship view 2015-02-18 22:17:59 +00:00
noirauds bb9e630bba geography: 7149: some minor problems. 2015-02-18 18:28:20 +01:00
Jérôme Rapinat 12c4b21587 update translation strings template 2015-02-18 10:49:31 +01:00
noirauds e1957471d7 geographie: 7149 : Views into Geography should not always use the last option set by the user 2015-02-18 09:32:55 +01:00
Doug Blank d5b93c52be Moved stderr and stdin handlers to only be installed for cli application; allows Gramps libraries to be used in other REPLs 2015-02-17 16:36:52 -05:00
noirauds ffa92451f9 geography: 7948 : Add path selector to the text entry for tile cache 2015-02-17 19:03:32 +01:00
Doug Blank c6a8af9eb6 Allow gramps to be used from source, without GRAMPS_RESOURCES env variable 2015-02-17 09:06:54 -05:00
leonhaeuser 49320f0fc4 update German translation 2015-02-17 02:46:07 +01:00
Nick Hall 203f216679 Fix graphviz report dialog after conversion to use Grid widget 2015-02-16 23:20:51 +00:00
kulath d913cd45ae 0008347: GEDCOM import of embedded notes attached to media does not work 2015-02-16 22:55:00 +00:00
Nick Hall df6e2f9946 Remove deprecated widgets from glade files for tools 2015-02-16 22:37:57 +00:00
Jérôme Rapinat 2e71c22d3f fix typos, thank you phcook 2015-02-16 19:23:50 +01:00
Sveinn í Felli 68f909c4e6 Update Icelandic translation 2015-02-16 19:14:42 +01:00
noirauds 9396be3cad geography - forgot to suppress debug lines, forgot the config option 2015-02-15 23:51:01 +01:00
noirauds 7393b483e3 geography - new feature (8327) Moving around the map using arrow keys and possibility to zoom from keyboard/keypad with the +/- keys 2015-02-15 22:42:23 +01:00
Jérôme Rapinat 45af196e03 typo 2015-02-13 15:32:33 +01:00
Sveinn í Felli 240252292d Add partial (30%) Icelandic support 2015-02-13 15:29:58 +01:00
Nick Hall 2fd3e42e91 8353: Fix default size of detached gramplet window 2015-02-12 19:36:13 +00:00
Nick Hall 18a22478c3 8351: Allow gramplets detached from the dashboard to fill the window 2015-02-12 19:16:08 +00:00
Nick Hall a7e23c5a63 8350: Fix spacing in export assistant file chooser 2015-02-11 22:50:14 +00:00
Nick Hall 274bf75fd1 Swap description and main participants columns
Change column order introduced in #7342 due to adverse comments
on mailing list.
2015-02-11 21:28:37 +00:00
noirauds 5391d20cf0 geography : bug 7615 : Filter panel on geography view displays improperly 2015-02-11 21:12:58 +01:00
Nick Hall 0ac34fb885 Fix bug in export assistant after conversion to use Grid widget 2015-02-10 23:02:59 +00:00
Nick Hall 0163a8528c 7930: Fix removing rows in flat list views 2015-02-09 17:27:05 +00:00
Nick Hall 71ae1fbca3 8344: Ensure key is correct type when updating reference map 2015-02-09 15:44:51 +00:00
Nick Hall 30d809ed17 Convert more deprecated Gtk widgets
Converted HButtonBox and VButtonBox to ButtonBox widgets.
Converted HPaned and VPaned to Paned widgets.
Converted HScale to Scale widget.
2015-02-07 18:53:42 +00:00
Nick Hall 59238765e8 Fix overwritten heading in relationship view
Line deleted by mistake in commit [89da61].
2015-02-07 17:32:41 +00:00
Nick Hall bc920f8f19 Fix citation editor resizing 2015-02-07 16:07:48 +00:00
John Ralls fdf52c5ff4 Fix wrong instruction about removing /usr/local/bin in INSTALL. 2015-02-07 07:27:33 -08:00
Nick Hall 9c8afdd155 Convert Gtk HBox and VBox widgets into Box widgets 2015-02-06 22:57:10 +00:00
John Ralls e2718770b9 More INSTALL clarifications. 2015-02-06 14:29:11 -08:00
John Ralls 1177e3a87e Improve distutils install instructions. 2015-02-06 13:57:02 -08:00
John Ralls d16f13adcf Remove mention of 'super-short-version' of INSTALL file.
There isn't one.
2015-02-06 13:50:13 -08:00
Nick Hall 89da611e38 Convert Gtk Table widgets into Grid widgets 2015-02-06 19:46:53 +00:00
John Ralls 9faca8b943 Remove trailing whitespace from INSTALL and README. 2015-02-06 11:35:55 -08:00
John Ralls 0e75f4bc44 Clarify/correct uninstall instructions. 2015-02-06 10:39:34 -08:00
John Ralls 5f2b4202ed Remove $Id from INSTALL, left over from SVN. 2015-02-06 09:43:43 -08:00
John Ralls 5006cbe244 Remove no-longer-needed packagers note about osm-gps-map.
Version 1.0.0 was released 18 June 2013.
2015-02-06 09:36:59 -08:00
Paul Franklin 4d8678b821 typo (and third github-push test) 2015-02-06 08:52:01 -08:00
Zdeněk Hataš 5f67aa271d czech translation update 2015-02-06 14:22:35 +01:00
Paul Franklin a9ecad943f typo (another, and another github-push test) 2015-02-05 16:42:15 -08:00
Paul Franklin 8c6dad631c typo 2015-02-05 09:47:42 -08:00
Paul Franklin 4a1022bad3 neaten imports 2015-02-04 18:14:37 -08:00
Nick Hall c1ef48d6d2 Remove deprecated widgets from glade files 2015-02-04 17:56:04 +00:00
Paul Franklin 5a64ffed7c add "python-pillow" to "python-imaging" mention 2015-02-03 09:43:56 -08:00
kulath b69171f1a1 0007014: Errors handling owner/submitter information in GEDCOM files.
Only import researcher from GEDCOM or XML if the family tree was
originally empty.
2015-02-02 18:56:46 +00:00
Nick Hall 3e3abbf3e1 Update import to cope with missing place name and type 2015-02-02 17:58:57 +00:00
Paul Franklin 89dc89d83a 7276: translate some currently-untranslated punctuation marks -- partial 2015-02-01 11:51:34 -08:00
Nick Hall b5dcd09e11 8233: Fix bad handle in explanation note for unknown event 2015-02-01 14:45:06 +00:00
Paul Franklin 83da6e241c fix trailing comma in pathological cases 2015-01-31 16:57:28 -08:00
Paul Franklin 46146a4893 neaten up add_reference method 2015-01-31 16:55:22 -08:00
Paul Franklin 331ea351a2 neaten some imports 2015-01-31 16:52:24 -08:00
Nick Hall 06cae9ed32 Remove check for empty place title 2015-01-30 22:09:39 +00:00
Paul Franklin e38a080a3e 8320: Detailed descendent report crashes 2015-01-28 09:45:00 -08:00
Nick Hall c0054fd4e4 7860: Update place sidebar filter 2015-01-27 23:00:06 +00:00
Nick Hall 938f38c077 7860: Add new place HasTitle rule 2015-01-27 22:58:34 +00:00
Nick Hall 7ec60ae6a3 7860: Add new place HasData rule 2015-01-27 22:58:27 +00:00
Nick Hall 8be5616802 8058: New place reference editor
This allows standard "add" and "share" buttons to be used in the place
reference embedded list.
2015-01-26 23:36:23 +00:00
Nick Hall 5bdb45416f 8056: Activate drag and drop on "enclosed by" tab 2015-01-26 22:42:07 +00:00
Nick Hall 63fe1a4bd2 8242: Put places in data.gramps into a hierarchy 2015-01-24 19:34:17 +00:00
Matti Niemelä 7311ea147a update Finnish translation (not backported to gramps41 yet) 2015-01-24 15:02:30 +01:00
Nick Hall f89990b5f1 7860: Rename "Name" to "Title" 2015-01-23 21:36:24 +00:00
Nick Hall 3a0f699fae 8057: Remove auto-update of place titles 2015-01-23 19:55:39 +00:00
Nick Hall 28bc8ba590 7942: Implement place displayer 2015-01-23 19:09:55 +00:00
Nick Hall 46b2f0a169 7533: Check for active person in session log gramplet 2015-01-21 23:03:23 +00:00
Nick Hall ec9dbcc045 7844: Check that the mediapath is not set to None 2015-01-21 21:42:05 +00:00
Nick Hall 0bc7bc8b40 7770: Always display main participants 2015-01-21 18:44:42 +00:00
Nick Hall c8e60460c1 7299: Fix bug when family has no parents 2015-01-21 17:45:33 +00:00
Jérôme Rapinat e75d901b29 8288: Keywords entry in gramps.desktop does not end with ';' 2015-01-17 16:05:16 +01:00
Espen Berg 597f4bb1ac Done with Norwegian bokmål translation 2015-01-09 21:34:29 +01:00
kulath d69a84d56e 0008283: GEDCOM export does not export media attached to citations. Fix
for gramps master
2015-01-08 18:07:50 +00:00
Doug Blank cd779d5163 8145: Some Addons provide an update even it was already done during the last start of Gramps 2015-01-05 15:23:39 -05:00
Bastien Jacquet 8fd456f604 Merge branch 'geps/interactivesearch'
Use our own interactive-search box to get it
 - more efficient (binary search on sorted columns).
 - customizable (delayed launch of search to avoid text scrambling)
2015-01-05 17:33:15 +01:00
Bastien Jacquet bb26e53fc0 Interactive-search: Quick search with LIST_ONLY sorted views 2015-01-05 17:32:38 +01:00
Bastien Jacquet f2fc776d41 speedup srt_key sorting by sorting them in-place 2015-01-05 15:45:14 +01:00
Doug Blank d295142a4d In testing, reset config options in tearDown so subsequent tests are not affected 2015-01-04 14:44:12 -05:00
Doug Blank 66fd541eea Renamed gramps.gen.lib.calendar to gramps.gen.lib.gcalendar to avoid import conflict with Python lib calendar 2015-01-04 12:33:06 -05:00
Josip f4abd460ba 7851: translations don't show in many labels, buttons, and other elements, Windows only
Added fix for Python3
2015-01-03 20:25:12 +01:00
Doug Blank e568babb33 Records Gramplet uses wrong text 2015-01-03 11:01:35 -08:00
Josip 479992935c 6548: 'Available Gramps Updates for Addons' window not on top 2015-01-03 18:02:27 +01:00
Doug Blank f626cb9d0a Test method name changes for automatic test detection 2015-01-03 11:24:13 -05:00
Doug Blank bc4cd8ec2e Merge branch 'master' of ssh://git.code.sf.net/p/gramps/source 2015-01-03 10:28:06 -05:00
Doug Blank cfb3b2cc84 Renamed test methods for proper automatic detection 2015-01-03 10:27:39 -05:00
Jérôme Rapinat 9bf4661453 8169 8267 typo: Glib should be GLib 2015-01-03 16:08:55 +01:00
Doug Blank ed70aa0d74 Fix date_handler by renaming non-test methods; removed gedcom import tests that rely on old code, and didn't test much 2015-01-03 09:15:58 -05:00
Doug Blank 2b1405624f Fixes to DictionaryDb for Python3 and current gramps 2015-01-03 09:01:48 -05:00
Doug Blank 797f6c1683 merge_ref_test and importxml_test now passing 2015-01-02 22:32:25 -05:00
Doug Blank 626c11999e merge_test now passing all tests 2015-01-02 21:57:25 -05:00
Doug Blank dcea49c2a7 Updates for struct to pass unit tests 2015-01-02 17:28:38 -05:00
Jérôme Rapinat 1f8aa6917f New year... 2015-01-02 10:05:07 +01:00
Paul Franklin faeeeb6ceb specify SVG font size is in points, for stupid viewers 2014-12-30 10:54:23 -08:00
Paul Franklin f137c5b909 8240: can't disable box shadow in SVG descendant tree 2014-12-30 10:37:26 -08:00
Ondrej Krč-Jediný d6b00841d7 merge request #15 ; git clone http://git.code.sf.net/u/ondrisko/gramps ; update slovak translation 2014-12-29 18:01:37 +01:00
Paul Franklin 594e1aa0a2 move privacy option higher, make it more noticeable 2014-12-27 10:12:17 -08:00
Gerald Kunzmann 2f5ab9c6f8 7953: Kekule numbering in Detailed Ancestral Report 2014-12-27 10:08:28 -08:00
Bastien Jacquet d426f6232e Our own interactive-search enabling customized and delayed search.
This commit provides same search capabilities as Gtk's.
The only difference should be the search being delayed
by 150ms after last keypress.

Signed-off-by: Bastien Jacquet <bastien.jacquet_dev@m4x.org>
2014-12-27 03:10:59 +01:00
Paul Franklin f67620dbfe 8257: Crash when mixed "inflected" and "non inflected" months 2014-12-24 12:36:31 -08:00
Fedir Zinchuk 0643949cbf Update Ukrainian translation 2014-12-22 20:14:53 +02:00
Fedir Zinchuk 3be2150861 Update Ukrainian date handler 2014-12-22 20:10:45 +02:00
Fedir Zinchuk 88033fe549 Update Ukrainian translation 2014-12-19 15:31:24 +02:00
Paul Franklin 0b117f6adc 8148: Turkish language updates 2014-12-17 20:25:50 -08:00
Paul Franklin 713675521f 8185: Gramps freeze after defining a report stile with German cm values 2014-12-17 19:59:49 -08:00
Paul Franklin 1ed41b33e3 8237: descendant tree graphical report, syntax error in svg output 2014-12-17 19:40:37 -08:00
Paul Franklin 67206a7f4f add gramps-ID option 2014-12-15 18:54:32 -08:00
Paul Franklin 9284e3d1c9 add gramps-ID option 2014-12-15 18:54:20 -08:00
Paul Franklin de8575fd18 modify gramps-ID option 2014-12-15 18:53:55 -08:00
kulath c57f574cb8 Fix 0008234: part (2) Various problems with
docgen.TextDoc.add_media_object part (2) for master branch
2014-12-16 00:37:59 +00:00
kulath 4af340c1e1 Fix 0008234: Various problems with docgen.TextDoc.add_media_object part
(1) for master branch
2014-12-14 18:16:15 +00:00
Zdeněk Hataš 4e95abe0c9 czech translation update 2014-12-14 12:49:52 +01:00
leonhaeuser e0822322a7 Fix German grammer bug [8231] 2014-12-13 22:24:51 +01:00
Jérôme Rapinat a36a2a36e6 Enable Attributes gramplet support on Source/Citation bars; not backported yet because of #8144 2014-12-13 15:39:06 +01:00
Paul Franklin 660cf1b5af cover pathological case (perhaps from privacy proxy) 2014-12-12 11:07:59 -08:00
leonhaeuser 9774f405f1 Fix German typo Bug [8226] 2014-12-12 15:39:42 +01:00
Paul Franklin bc02336867 make a new template (trunk-master gramps.pot) 2014-12-11 19:51:40 -08:00
Paul Franklin 2ba8a051b7 typo 2014-12-11 11:03:55 -08:00
Bastien Jacquet 22ef07cdeb FlatTreeView : Fix wrong return values 2014-12-11 01:02:56 +01:00
Nick Hall 4995765c5f 8029: Suppress warnings in UndoableEntry widget
Bug 644927 - Support out parameters in signals
https://bugzilla.gnome.org/show_bug.cgi?id=644927
2014-12-10 22:25:55 +00:00
Matti Niemelä 45326898dd Review by the Finnish team (Pekka and Matti) 2014-12-06 17:25:39 +01:00
Bastien Jacquet d4a99d8488 Remove needless use of handles in FlatBaseModel.do_iter_next 2014-12-05 06:17:50 +01:00
Bastien Jacquet 48eb2842ee Optimize FlatNodeMap update of _hndl2index for add/delete
tests with python2.6 and python3 show that it's much quicker to get
the handles after the inser/deleted index and upgrade those
(because random-access in a hash-table is super fast)

Here is the code use for tests:

import string,random,sys
import timeit

def id_generator(size=6, chars=string.ascii_lowercase):
    return ''.join(random.choice(chars) for _ in range(size))

num_items=80000
handle_sizes=10
num_operation=2000
setup="""
from __main__ import id_generator,string,num_items,handle_sizes,random
_index2hndl=[("",id_generator(handle_sizes)) for e in range (num_items)]
_hndl2index=dict([key[1], index]
                for index, key in enumerate(_index2hndl))
"""

add0='''
h=id_generator(handle_sizes)
insert_pos= random.randrange(len(_hndl2index))
srtkey_hndl=("",h)
_index2hndl.insert(insert_pos, srtkey_hndl)
for hndl, index in _hndl2index.iteritems():
    if index >= insert_pos:
        _hndl2index[hndl] += 1
_hndl2index[h]=insert_pos
'''
add1='''
h=id_generator(handle_sizes)
insert_pos= random.randrange(len(_hndl2index))
srtkey_hndl=("",h)
_index2hndl.insert(insert_pos, srtkey_hndl)
for hndl, index in _hndl2index.items():
    if index >= insert_pos:
        _hndl2index[hndl] += 1
_hndl2index[h]=insert_pos
'''
add2='''
h=id_generator(handle_sizes)
insert_pos= random.randrange(len(_hndl2index))
srtkey_hndl=("",h)
_index2hndl.insert(insert_pos, srtkey_hndl)
for srt_key,hndl in _index2hndl[insert_pos+1:]:
    _hndl2index[hndl] += 1
_hndl2index[h]=insert_pos
'''
del0='''
index= random.randrange(len(_hndl2index))
srt_key,handle=_index2hndl[index]
del _index2hndl[index]
del _hndl2index[handle]
for key, val in _hndl2index.iteritems():
    if val > index:
        _hndl2index[key] -= 1
'''
del1='''
index= random.randrange(len(_hndl2index))
srt_key,handle=_index2hndl[index]
del _index2hndl[index]
del _hndl2index[handle]
for key, val in _hndl2index.items():
    if val > index:
        _hndl2index[key] -= 1
'''
del2='''
index= random.randrange(len(_hndl2index))
srt_key,handle=_index2hndl[index]
del _index2hndl[index]
del _hndl2index[handle]
for srt_key,hndl in _index2hndl[index:]:
    _hndl2index[hndl] -= 1
'''
if sys.version_info[0] < 3:
    cmds=[add0,add1,add2,del0,del1,del2]
else:
    cmds=[add1,add2,del1,del2]
for c in cmds:
    print(c)
    random.seed(1)
    t=timeit.Timer(c, setup=setup).timeit(num_operation)
    print(num_operation,"ops in ", t, "seconds. avg:",t/num_operation,"seconds")
2014-12-05 06:08:50 +01:00
Bastien Jacquet a52a931b57 Fix doc and harmless typo (real_index instead of real_path) 2014-12-05 06:04:26 +01:00
Bastien Jacquet 813075ae2f Fix handling of keypresses in treeview 2014-12-05 06:04:21 +01:00
Josip 1fae92ca54 7865: Closing detached gramplet causes python to crash 2014-12-01 18:51:34 +01:00
Nick Hall efe55a7fc3 7866: Crash on Ancestry.com .ged import; consistent. 2014-12-01 18:19:49 +01:00
Nick Hall 3818d7e5e3 Fix place reference editor for drag support 2014-12-01 15:24:36 +00:00
Paul Franklin 2d590abebd ignore a zero day and its delimiter, in numerical date format 2014-11-24 17:15:33 -08:00
kulath bfc2ef5ab3 8196: Spurious spaces in CLI List Family Trees, tab delimited output.
Print statements changed to assemble the whole line before output.
2014-11-24 23:10:35 +00:00
Paul Franklin 0436228eb1 8175: date inflections in _datahandler.py 2014-11-22 16:05:32 -08:00
Paul Franklin a7bffb9259 8184: regression: Complete Individual report has some untranslated output 2014-11-20 10:05:09 -08:00
Josip 90d35cc678 7857: gramps fails to start with gtk+-3.13.3 (Gdk.Event(Gdk.EventType.NOTHING)
TypeError: function takes at most 0 arguments (1 given)
2014-11-16 16:53:13 +01:00
Paul Franklin 2264f5506a typo 2014-11-13 19:30:44 -08:00
Paul Franklin c2e2be69fa add a few date examples (near the top of the list) 2014-11-13 10:14:31 -08:00
Josip 0301ddd1a6 8157: ImageMetadata doesn't show metadata 2014-11-07 19:26:36 +01:00
Craig J. Anderson da2c8aa644 small feature update to add z,n,e to the date format string.
these are used for dates with ending dates (date ranges)
  Craig A.
2014-11-06 10:40:42 -05:00
Bastien Jacquet cd540cdb13 8102: Fix problem with fanchart if max_generation = 1 2014-11-05 23:22:48 +01:00
Bastien Jacquet d716146e9d 8149: Error on opening twice an object from clipboard because of missing import 2014-11-05 21:26:44 +01:00
Bastien Jacquet e9c441c62f Allow to drag a person by dragging the "Father/Mother/Spouse" label or around Add/edt/share buttons
Signed-off-by: Bastien Jacquet <bastien.jacquet_dev@m4x.org>
2014-11-05 17:52:07 +00:00
Bastien Jacquet 4ad884d54e Add Family drag support from RelationshipView 2014-11-05 17:52:07 +00:00
Bastien Jacquet e83190dd82 EditPerson new person calls create_id() to have a handler in clipboard (as in EditFamily) 2014-11-05 17:52:07 +00:00
Bastien Jacquet 88c919d034 Allow for dragging a family from EditFamily 2014-11-05 17:52:07 +00:00
Bastien Jacquet 4ade6db556 Add Person drag support from RelationshipView
Signed-off-by: Bastien Jacquet <bastien.jacquet_dev@m4x.org>
2014-11-05 17:52:07 +00:00
Bastien Jacquet ebb9b53589 Add Support for dragging from the add/choose selector of Place/Source/Media/Note-Entry 2014-11-05 17:52:07 +00:00
Bastien Jacquet b7ab556393 Add drag support to parents in EditFamily (when set) and move drop capability if parent already set 2014-11-05 17:52:07 +00:00
Bastien Jacquet 1797b66f48 Allow to drag a person from EditPerson (if not a unsaved person) 2014-11-05 17:52:06 +00:00
Bastien Jacquet 4e86fdafc5 Add person drag support from EditChildRef (always possible as child are
always set)
2014-11-05 17:52:06 +00:00
Bastien Jacquet 79d876e350 And drag support to EditPersonRef when person is set 2014-11-05 17:52:06 +00:00
Bastien Jacquet ea3afbb35c Create prefilled PersonRef when drop of a Person on Association EmbeddedTab (same as ChildTab) 2014-11-05 17:52:06 +00:00
Bastien Jacquet 077be0c07e 8095:Association editor refuses dropped persons 2014-11-05 17:52:06 +00:00
Paul Franklin 5324ca28d4 5150: new Event types are saved as a disordered list 2014-11-04 07:28:22 -08:00
Nick Hall addcf6f034 7604: Fix error setting gramplet tab label 2014-11-03 21:47:32 +00:00
Zdeněk Hataš 6bf0cfa857 czech translation update 2014-10-30 14:16:02 +01:00
Paul Franklin 0ca906298b 8154: Some text not translatable in context menu fancharts (GUI) 2014-10-29 09:19:05 -07:00
Paul Franklin 4fb677283e 8152: Error converting database after upgrade to Gramps 4.1.1 2014-10-28 17:01:43 -07:00
Nick Hall 93a26b26d2 8020: Ensure that reference map has string keys 2014-10-28 17:47:34 +00:00
John Ralls a372922e02 8140: Gramps doesn't work under Turkish locale 2014-10-27 11:22:45 -07:00
Ugur Cetin c7dfeaf25f update Turkish translation (partial) 2014-10-26 15:24:25 -07:00
leonhaeuser 6e73dba8e2 update German translation 2014-10-26 19:29:09 +01:00
Paul Franklin bf23a94f5d neaten language list in setup.py 2014-10-24 12:34:48 -07:00
Jérôme Rapinat f02247b89c Serbian should be ready for Windows OS and LOCALE_NAMES mapping 2014-10-24 20:01:25 +02:00
Jérôme Rapinat b1a686445f 8122: DB lock not checked when opening database from the recent opened trees 2014-10-24 09:41:10 +02:00
Craig J. Anderson 9e0f8b2f28 Merge branch 'master' of ssh://git.code.sf.net/p/gramps/source 2014-10-23 15:02:51 -04:00
Zdeněk Hataš e799b9d3d0 czech translation update 2014-10-23 20:55:19 +02:00
Craig J. Anderson 3575964835 fix for https://gramps-project.org/bugs/view.php?id=6355.
Craig A.
2014-10-23 12:57:21 -04:00
Paul Franklin 93744057ad enable Serbian Cyrillic translation 2014-10-22 22:48:04 -07:00
Мирослав Николић 91c85ee0d0 add Serbian Cyrillic translation file 2014-10-22 22:47:01 -07:00
Paul Franklin 6952304b34 rename old Serbian translation file 2014-10-22 22:45:04 -07:00
Jérôme Rapinat 9edd496b8d New locations gramplet [6ff9ed] 2014-10-22 08:21:16 +02:00
Nick Hall ad0d3d19c1 7902: Update place details gramplet
Add name, type and alternative names.
Locations are now displayed in a separate gramplet.
2014-10-21 19:31:43 +01:00
Nick Hall 6ff9ed00f0 Add new place locations gramplet 2014-10-21 19:31:43 +01:00
Jérôme Rapinat bb67bdb83c Re-enable Esperento support after a large review (8% to 99%); No support under Windows (see _LOCALE_NAMES in gen/utils/grampslocale.py) 2014-10-21 15:34:38 +02:00
Pier Luigi Cinquantini 7a06f0b8e1 Update and review for the Esperanto translation 2014-10-21 15:11:45 +02:00
Jérôme Rapinat d4e43ef663 7362 8103: some labels fit better on citations sidebar filter (patch by Nick H.), fix a typo on swedish translation, add the new translated string on most translation files 2014-10-20 11:28:24 +02:00
Paul Franklin 55c7e223d4 enhance Serbian date handler to handle Cyrillic dates 2014-10-17 18:11:37 -07:00
Nick Hall a29232a133 7813: Add check for empty handle in gramplets 2014-10-17 23:05:57 +01:00
Jérôme Rapinat 9eb8700cfd 8103: sidebarfilter gramplet does not fit well into People, Events, Citations or Media views (non-english locales) 2014-10-15 21:47:03 +02:00
Jérôme Rapinat 246694b0f7 8103: sidebarfilter gramplet does not fit well into People, Events, Citations or Media views 2014-10-15 21:37:03 +02:00
Paul Franklin f68e8837f7 8113: 'Unknown' person in detailed ancestor report can not be translated 2014-10-11 14:39:37 -07:00
Paul Franklin df15991a8e add datespan example 2014-10-11 10:57:14 -07:00
Jérôme Rapinat 612a72a455 1685: Tools: some strings into print statement were untranslated 2014-10-08 11:43:11 +02:00
Paul Franklin d3e75650b4 typo ("data format" => "date format") 2014-10-07 11:03:25 -07:00
noirauds 9075066cca Geography : bug 0007795: geography.gpr.py: Probable typos 2014-10-07 09:59:22 +02:00
Jérôme Rapinat 206b397e7c 4673: update french version for the man file via 'sphinx-build' cmd 2014-10-03 14:07:25 +02:00
Jérôme Rapinat 395184d519 4673: bump man files to '4.2.0' 2014-10-03 13:57:10 +02:00
Jérôme Rapinat 50be0fc292 4673: minor spacing on man template (english) 2014-10-03 12:22:33 +02:00
Bastien Jacquet 236b5e68fa 8096: Fix new event default type considering existing events with *default* role 2014-10-01 19:09:41 +01:00
Sam Manzi e2e4d3c57a 6028: Cleaned up and improved the Gramps API docs, Sphinx - fixed four ERROR: Unexpected indentation, added 'sphinx.ext.viewcode' to allow Sphinx to 'Add links to highlighted source code' http://sphinx-doc.org/latest/ext/viewcode.html , updated the copyright year and instructions to use pip 2014-09-29 19:51:38 +02:00
Luigi Toscano 453b339775 Italian translation updates and fixes 2014-09-28 03:16:05 +02:00
Nick Hall aea848de23 7868: Rebuild secondary indexes after database upgrade 2014-09-26 19:38:15 +01:00
Nick Hall bdf38344ff 8015: Update location utilities to work with proxies 2014-09-26 16:39:16 +01:00
Enno Borgsteede 4c71006c9d 7931: Fix check and repair tool for empty placerefs 2014-09-25 22:24:13 +01:00
Jérôme Rapinat b22b66877e 8033: cannot generate Narrative Web report with gendex option enabled, was previous place model (location fields) 2014-09-23 16:30:55 +02:00
Mirko Leonhaeuser d8a37c1089 update German translation withversion fom 4.1 2014-09-20 17:27:51 +02:00
Zdeněk Hataš 59e3a7814a czech translation update 2014-09-19 11:18:25 +02:00
Zdeněk Hataš d59290e69f 8064: translation fixes
minor translation update
2014-09-18 12:59:28 +02:00
Zdeněk Hataš 19130134c3 typo fix 2014-09-14 20:23:07 +02:00
Ross Gammon f6e7d32b06 8062: .desktop file missing Keywords entry 2014-09-11 17:25:51 +02:00
Petr Hejl 0c587838b4 8051: Can't fill in calculated and estimated dates in cs locale 2014-09-11 17:23:02 +02:00
Paul Franklin 2441f341d7 5895: "name format" option in descendant and ancestortree reports 2014-09-10 15:45:13 -07:00
Paul Franklin 8e0fb6fd2c 8021: Grafical reports don't use the correct name format 2014-09-10 15:40:13 -07:00
John Ralls 13ff503bed Update OsmGpsMap to version 1.0.2
Addresses problem with retrieving tiles from OpenStreetMap.
Note as well https://gramps-project.org/bugs/view.php?id=8037
2014-09-09 16:54:22 -07:00
Paul Franklin 43cfb600d5 8014: Importing gedcom files containing multibyte UTF-8 characters fails 2014-09-01 19:06:15 -07:00
Paul Franklin da97578658 7833: Complete Individual Report Sources 2014-08-30 10:22:11 -07:00
Paul Franklin 35c8d10899 revert part of 8014 patch, pending further review 2014-08-25 11:40:36 -07:00
Björn Samvik 592707deea 8014: Importing gedcom files containing multibyte UTF-8 characters fails 2014-08-25 10:56:02 -07:00
Nick Hall 550eac7d64 8011: Fix backlinks code in place report
Backlinks for places can now also be places as well as events.
2014-08-24 19:01:50 +01:00
Paul Franklin 60ca25deee python3 bytes-string mismatch with ICU installed 2014-08-22 18:18:38 -07:00
Paul Franklin 462897bf44 8012: Text reports don't use the correct name format 2014-08-22 18:02:24 -07:00
Nick Hall 6ce73e128e Add draw styles to style sheet editor 2014-08-22 19:39:52 +01:00
Paul Franklin f66a810b46 tweak to "default" CSS choice for the narrated web report 2014-08-20 07:55:47 -07:00
Nick Hall 0751d49adc Add cell styles to style sheet editor 2014-08-19 23:00:37 +01:00
Nick Hall da2023b3f8 7991: Enhance style sheet editor to include table styles 2014-08-18 22:50:03 +01:00
Paul Franklin 136fabfc16 enable the "default" CSS choice for the narrated web report
Otherwise, whenever you start the report, you get this:

WARNING: _enumeratedlist.py: line 124: Value 'default' not found for option 'StyleSheet'
2014-08-17 12:49:28 -07:00
Paul Franklin 4f85cf0278 7276: translate some punctuation marks -- partial 2014-08-13 09:22:04 -07:00
Ondrej Krc-Jediny 5d26c3b6a1 7979: Invalid format string in media mamager message 2014-08-12 13:55:19 -07:00
Nick Hall 2ec9de511a Allow gramplets to be displayed in the dashboard only
Add a new navigation type of 'Dashboard' in gramplet definitions.
Define the dashboard To Do gramplet to be dashboard-only.
2014-08-12 18:48:10 +01:00
Craig J. Anderson 75f62ea5b9 feature request: 7963
https://gramps-project.org/bugs/view.php?id=7963
to add an optional [alternate name] on the $n and $s vars as follows:
$n[Married Name](regular format string)
$s[Also Known As](regular format string)
  Craig A.
2014-08-09 11:30:21 -04:00
Malcom Lewis 86303f6116 Update FSF address to current location. 2014-08-08 19:39:45 -07:00
Paul Franklin ebc213f0ac add a few examples (Thai script, Married Name, "estimated about" date) 2014-08-06 12:53:06 -07:00
Jérôme Rapinat be3da94188 typo on doc string 2014-08-05 13:52:49 +02:00
Jérôme Rapinat ceeab158b4 6934: add a support for embeded custom attributes list on media object 2014-08-02 16:50:18 +02:00
Paul Franklin 5e61827693 7573: slight tweak to (two zh) [9c8cf2] 2014-07-29 19:33:41 -07:00
Paul Franklin 8312bfa839 4011: "reports" should have a "no private information" button 2014-07-26 09:52:32 -07:00
Paul Franklin bfa8795144 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin f37f61ae5f 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 19b843f541 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin eac193566f 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 0e805c1f5c 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 7f8b3e538c 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 06b063a5d5 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 149021a131 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 62a64f2ea5 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin d239aa78b7 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 90ff13a4dd 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 0fdffe7814 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin f9ecc2ebef 4011: "reports" should have a "no private information" button 2014-07-26 09:52:31 -07:00
Paul Franklin 23b0025c1c 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin f752c69c5c 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin 2998a8d03b 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin 1d00e5a2fb 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin 5068ec1849 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin ab2fc3a6b4 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin a3c13cdecc 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin 0aaa7f316d 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin b75516feaf 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin 8159de4f49 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin 7626068792 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin a5dd462e4f 4011: "reports" should have a "no private information" button 2014-07-26 09:52:30 -07:00
Paul Franklin 24299857b7 4011: "reports" should have a "no private information" button 2014-07-26 09:52:29 -07:00
Paul Franklin f4dac50a69 "7927: Exclude private data [...] for detailed ancestor report" -- partial 2014-07-24 15:34:43 -07:00
Paul Franklin 43e52e012b skip events referring to private data 2014-07-24 10:39:58 -07:00
Paul Franklin d9923bdf77 slight tweaks to recent work 2014-07-23 09:48:01 -07:00
Paul Franklin 0659083568 migrate the existing uses to the new run_private_data_option method 2014-07-22 12:29:23 -07:00
Paul Franklin 4a95862d81 add run_private_data_option to stdoptions.py 2014-07-22 12:21:34 -07:00
Paul Franklin 1ef95df160 migrate the existing uses to the new add_private_data_option method 2014-07-22 10:45:00 -07:00
Paul Franklin 59c92d1207 add add_private_data_option to stdoptions.py 2014-07-22 10:19:27 -07:00
Paul Franklin 0aac5469ca start using stdoptions.py's run_name_format_option 2014-07-21 20:53:34 -07:00
Paul Franklin aaecb02187 add run_name_format_option to stdoptions.py 2014-07-21 18:29:03 -07:00
Paul Franklin 98db4da3ff type in [8c94dc] 2014-07-21 18:27:19 -07:00
Vlada Perić 33178a2337 7913: add Serbian holidays to holidays.xml.in 2014-07-17 17:27:00 -07:00
Vlada Perić 6f002ea173 7912-related: simplify Bulgaria and Ukraine Easter using new method 2014-07-17 17:25:33 -07:00
Vlada Perić d8a6d2f6a8 7912: Add julian_easter(y) function to libholiday.py 2014-07-17 17:22:54 -07:00
Jérôme Rapinat daee6c032c Merge Request #15: Slovak holidays and other slovak translation updates 2014-07-17 16:09:10 +02:00
Jérôme Rapinat 63d8ef783c 7869 7912 7913 6403: various fixes, additions and requests on code; updated template 2014-07-17 15:33:30 +02:00
Jérôme Rapinat a615ba35a4 7258 7618 7837: let the win() stuff to windows, fix url/uri handling with non-ascii characters under linux and mac (not tested under mac) 2014-07-17 15:24:05 +02:00
Paul Franklin 48763c8ade simplify Canadian Ash Wednesday holiday 2014-07-15 22:59:26 -07:00
Nick Hall fa5011003c 7856: Fix error when no place is selected
Check that a place has been selected when saving.
Use the standard place selection widget to be consistent.
This also implements feature request #7893.
2014-07-16 00:18:10 +01:00
Nick Hall 8ffa78ad19 7915: Prevent user creating a cycle in the place hierarchy 2014-07-15 19:41:26 +01:00
Paul Franklin 8de7d287b7 add Arabic-script and Islamic-date examples (courtesy of Munzir Taha) 2014-07-15 09:24:41 -07:00
Nick Hall cc794110d1 7846: Prevent creation of a place cycle when merging 2014-07-14 22:53:01 +01:00
Nick Hall 8627429987 7846: Avoid infinite loop when place cycle encountered 2014-07-14 22:50:05 +01:00
Nick Hall 78ec767368 7911: Fix bug adding parent places to a new place 2014-07-14 22:42:49 +01:00
Nick Hall de790d12da 7904: Fix place type for places without a main location 2014-07-12 19:58:17 +01:00
Paul Franklin 4581c40a53 7861: In Ahnentafel Report, Use Christening Date if no Birth Date 2014-07-11 15:39:22 -07:00
Ondrej Krc-Jediny 2bfd496870 7869: Various small issues in gramps.pot 2014-07-10 12:18:05 -07:00
Paul Franklin fe46587c2e 7739: [Narweb:] Missing webpage for media [under some circumstances] 2014-07-10 09:25:43 -07:00
Paul Franklin b456b10a8d include Gramps.py in the tarball 2014-07-10 09:05:58 -07:00
Paul Franklin 1c75a997d6 6403: Remove markup in translatable messages -- slight tweaks 2014-07-07 12:00:54 -07:00
Paul Franklin 8c94dcfd27 6403: Remove markup in translatable messages -- partial 2014-07-06 13:14:01 -07:00
Ondrej Krc-Jediny 5680becf16 7882: Invalid link for Merge citation Help button 2014-07-05 09:46:44 -07:00
Josip 28f31ba65c 7883: I can't add a people in my tree 2014-07-05 01:34:09 +02:00
Munzir Taha 2441654242 update Arabic translation 2014-06-29 10:46:56 -07:00
Paul Franklin 52dcd93f83 7839: Place report does not run 2014-06-28 13:04:07 -07:00
Paul Franklin f55379e7a6 two small typos 2014-06-26 11:58:50 -07:00
Paul Franklin 9c8cf267e6 7573: implement both "traditional" and "simplified" Chinese
(With thanks to YH Tan, who provided the translations for both
the date handlers, as well as this early-prototype zh_TW.po)
2014-06-26 11:24:36 -07:00
John Ralls 65dbb1bd46 7851: translations don't show in many labels
Ensure python text domain gets the right encoding.
2014-06-23 20:16:56 -07:00
Mirko Leonhaeuser 89b923d1ab Fixed 0006655 and 0007840 2014-06-22 18:02:48 +02:00
Nick Hall d3dfcdf2b9 7837: Fix path when using drag & drop to add media 2014-06-22 00:04:27 +01:00
Nick Hall 6950679504 7842: Fix custom place types in the place editor
Allow place type combobox to receive focus.
Store custom place types in the metadata table.
2014-06-21 17:22:57 +01:00
Nick Hall 7987e8c1d6 7836: Limit the number of generations displayed in the ancestor gramplet 2014-06-21 14:21:11 +01:00
Nick Hall 9a664acc20 7834: export of a subset of the tree fails 2014-06-19 12:07:16 -07:00
John Ralls cd9a00b787 Module fixups from gramps40 2014-06-19 10:37:01 -07:00
Zdeněk Hataš c7810b217f czech translation update 2014-06-18 23:03:18 +02:00
Jérôme Rapinat 85466e1289 bump gramplet.gpr.py to new '4.2' major version, rows have used an alternate form 2014-06-18 15:34:25 +02:00
Jérôme Rapinat 36f481a5ef bump to '4.2.0' version 2014-06-18 15:26:29 +02:00
Paul Franklin 546a53e6f2 slight MissingMediaDialog improvement 2014-06-17 17:24:10 -07:00
Ross Gammon a95cbc624f 7828: Syntax Error with python3 on test function for Ukrainian relationship calculator 2014-06-17 16:44:53 +02:00
Paul Franklin 234ee04a7e slight warning-wording change 2014-06-16 10:33:10 -07:00
Jérôme Rapinat bc26a2c2fe Try to avoid confusion between branches; limit usage of hard coded version number into translation strings 2014-06-16 17:28:29 +02:00
Jérôme Rapinat a328f3f6ca Test on the french translation for handling urls on wiki according to locale and release version (Person and Name Editors, Welcome gramplet) 2014-06-16 16:23:47 +02:00
Jérôme Rapinat 325c4efb8b Test for alternate urls handling according to locale and translation, easier environment for next major versions 2014-06-16 16:15:00 +02:00
Jérôme Rapinat c93bffb8f6 typo 2014-06-16 16:08:50 +02:00
Jérôme Rapinat 70a30c6c3d Try to use constants like URL_MANUAL_PAGE, URL_WIKISTRING for easier migrations to new major versions 2014-06-16 15:52:28 +02:00
Jérôme Rapinat 5770a38ea4 Fix some typos on french translation 2014-06-16 15:18:22 +02:00
Jérôme Rapinat 21df604765 Add release version support 2014-06-16 15:15:38 +02:00
Paul Franklin 176493c011 add translated-output option to B.R. TOC and Index reports 2014-06-14 13:39:28 -07:00
Paul Franklin d633c7711d Fix alphabetic index and toc bug in books
Another bad indent from master commit [796240] (and gramps40 [3196f8])
2014-06-13 09:25:20 -07:00
Marc Hulsman aeda10a3fe Add unit test for treemodel nodes 2014-06-12 22:49:53 +01:00
Marc Hulsman f3566ebc34 Add unit test for tree cursors 2014-06-12 22:49:30 +01:00
Nick Hall 52928e3a7c 7471: Fix python3 sort key errors
Ensure input to strxfrm is correct type.
Apply patch by Marc Hulsman.
2014-06-12 22:00:51 +01:00
Nick Hall 52a4e5d581 Fix alphabetic index and toc bug in books
Bad indent introduced in commit [796240].
2014-06-11 22:40:51 +01:00
Paul Franklin 637f72d4af revert [02b8ec] (bump trunk/master to 4.2.0) 2014-06-11 10:36:16 -07:00
Paul Franklin 12e7019af9 7398: Gedcom import deletes first char of notes 2014-06-11 10:06:53 -07:00
Paul Franklin 02b8ec013f bump trunk/master to 4.2.0 2014-06-10 08:30:42 -07:00
Paul Franklin 89b054d39e 6241: Non-sensical sentences when individuals name record is absent 2014-06-08 15:53:07 -07:00
Paul Franklin f5b404108d improve plugin warning 2014-06-08 13:03:39 -07:00
Paul Franklin c61f11c5e8 7678 typo 2014-06-08 12:59:47 -07:00
Jérôme Rapinat 63f0a77cf2 7678: some gir modules were not called 2014-06-07 13:30:05 +02:00
Jérôme Rapinat 2e2fbe8fc6 7678: some fixes around gettext and messages handling 2014-06-07 12:51:30 +02:00
Paul Franklin c5d5285e7e 7784 "IndexError: list index out of range" on [initial CLI "gramps -t"] 2014-06-05 08:04:07 -07:00
Jérôme Rapinat e87ca38574 add a missing date value sample on a media object, re-order according to handle value for a place added outside XML export (idempotent) 2014-06-04 15:00:37 +02:00
Jérôme Rapinat 96ceb1534a add checksum values on 'example.gramps' 2014-06-04 14:47:42 +02:00
Jérôme Rapinat 666b4fd56e 7678: typo, missing self argument on fallback for personpos_at_angle() 2014-06-04 12:14:48 +02:00
Jérôme Rapinat 3a3af67106 7678: typo, set_border_width was set twice on CLIVbox() 2014-06-03 21:17:28 +02:00
Jérôme Rapinat e6edfefd99 7766: Fan Chart views crash with self.maxperiod = self.minperiod 2014-06-03 10:40:34 +02:00
Ondrej Krc 78e9bb070a Git Merge Request #11: Slovak translation updates 2014-06-02 17:18:38 +02:00
Nick Hall 76d365a3f7 Update English (British) translation 2014-05-30 23:24:25 +01:00
Zdeněk Hataš 39b6954062 czech translation update 2014-05-30 22:05:32 +02:00
Ondrej Krc 1af22a530c Git Merge Request #10: Update Slovak date handler 2014-05-30 10:12:22 +02:00
Omar Kohl de797ec63a Git Merge Request #9: Spanish typo 2014-05-29 15:53:48 +02:00
Ondrej Krc f29341fcb3 Git Merge Request #10: Slovak translation updates 2014-05-29 15:36:28 +02:00
Jérôme Rapinat 6ff6c479fa Add support for Slovak manual 2014-05-29 15:33:06 +02:00
Zdeněk Hataš 50f283552d typo 2014-05-28 21:30:06 +02:00
Nick Hall 58843c01b4 7712: Use full path for file existence check 2014-05-27 15:25:56 +01:00
Luigi Toscano d06cf9ab08 Italian translation updates (master) 2014-05-27 01:52:10 +02:00
Jérôme Rapinat 4f165ab959 7554: update template 2014-05-26 17:53:42 +02:00
Nick Hall 98e2b7c582 Add check for PangoCairo typelib at startup 2014-05-25 14:15:50 +01:00
noirauds 30376b802e BUG #0007744 : years are displayed as floating numbers 2014-05-25 11:27:45 +02:00
Nick Hall 72b96c96f9 Fix tree cursor for read-only databases 2014-05-25 00:01:14 +01:00
Zdeněk Hataš 545b99e348 czech translation update 2014-05-24 23:09:58 +02:00
Nick Hall 313d015ceb 7554: Replace LaTex by LaTeX 2014-05-24 21:20:23 +01:00
Nick Hall 6af8fe607f Match alternative names in HasPlace filter 2014-05-24 20:43:32 +01:00
Nick Hall 84bde16850 7177: Rebuild place tree view when a place moves in the hierarchy 2014-05-24 00:08:47 +01:00
John Ralls 225b244aca Patch PIL to build with Freetype2 2014-05-23 11:31:06 -07:00
John Ralls 70a0650ba0 7736: MacOSX Version 4.0.4-1 missing libgtkspell3 from bundle. 2014-05-22 20:25:44 -07:00
Ondrej Krc ab58ca890e Merge Request #8: Typo fix in slovak translation 2014-05-22 20:48:20 +02:00
Peter Landgren 8b38ce5bce Updated Swedish translation 2014-05-22 17:54:03 +02:00
Nick Hall b7bb377939 7731: Fix error tagging source in citation tree view 2014-05-22 14:19:16 +01:00
Jérôme Rapinat 77f652bb22 merge NEWS from gramps40 2014-05-22 14:46:20 +02:00
Zdeněk Hataš daa8cb755e czech translation update 2014-05-22 10:24:48 +02:00
Jérôme Rapinat 975c6ef577 typo on country level (example.gramps) 2014-05-22 09:01:40 +02:00
Jérôme Rapinat 084e56d1aa merge back some french modules from gramps41 2014-05-22 08:43:27 +02:00
Jérôme Rapinat 91fe0fe083 typo 2014-05-22 08:29:34 +02:00
Nick Hall 68726b9c62 Enable drag & drop for place references 2014-05-22 00:05:46 +01:00
Nick Hall 2af09727b7 7729: Extend tag report to show all primary object types 2014-05-21 23:49:17 +01:00
Nick Hall 842379e6db Revert [27453a] and [9d6049]
Fix broken proxies and make proxies read-only.
2014-05-21 21:59:36 +01:00
Nick Hall b45bda2e57 Reduce label width in assistants (Gtk 3.10) 2014-05-21 21:22:45 +01:00
Paul Franklin b2426f9c0e add name-format option to trunk's tag report 2014-05-21 12:03:21 -07:00
Jérôme Rapinat ec112667a4 update french translation 2014-05-21 17:46:22 +02:00
1087 changed files with 582369 additions and 397068 deletions

No files matched your search

+9
View File
@@ -0,0 +1,9 @@
# Make Github recognise Gramps as a Python project,
# by marking .sql files as text files!
# See: https://github.com/github/linguist/issues/2462
# https://github.com/github/linguist/blob/master/README.md
*.sql linguist-language=txt
# Have Github ignore js vendored files.
# https://github.com/gramps-project/gramps/tree/master/data/javascript
#data/javascript/*.js linguist-vendored
+1
View File
@@ -18,3 +18,4 @@ tags
# Testing
test/data
gramps/webapp/grampsdb/fixtures/initial_data.json
+32
View File
@@ -0,0 +1,32 @@
# After changing this file, check it on:
# http://lint.travis-ci.org/
language: python
#python:
# - 3.3
# - 3.4
install:
- git clone --depth=50 --branch=maintenance/gramps42 git://github.com/gramps-project/gramps.git gramps-project/gramps
- cd gramps-project/gramps
- time sudo apt-get update
- travis_retry sudo apt-get install gir1.2-pango gir1.2-gtk xdg-utils librsvg2-common libglib2.0-dev intltool
- travis_retry sudo apt-get install python3-gobject python3-gi python3-cairo python3-gi-cairo python3-bsddb3 python3-dev python3-nose
- travis_retry sudo apt-get install python3-mock
# - travis_retry curl https://bootstrap.pypa.io/get-pip.py | sudo python3
# - travis_retry sudo pip3 install Django==1.7
# - travis_retry sudo pip3 install pyicu==1.8
# - travis_retry sudo pip3 install mock
- python3 setup.py build
#before_script:
# - sudo Xvfb :99 -ac &
# - export DISPLAY=:99
script:
- mkdir -p /home/travis/.gramps/grampsdb/
- nosetests3 --exclude=TestcaseGenerator --exclude=vcard --exclude=merge_ref_test --exclude=user_test --exclude=webapp gramps
+13
View File
@@ -0,0 +1,13 @@
2018-02-09 prculley <paulr2787@gmail.com>
* gramps/plugins/view/geoclose.py,
gramps/plugins/view/geoevents.py,
gramps/plugins/view/geofamclose.py,
gramps/plugins/view/geofamily.py, gramps/plugins/view/geoperson.py,
gramps/plugins/view/geoplaces.py: Fix Geography views for bad
'dbstate.is_open()' test Fixes #10417
2018-02-08 Nick Hall <nick-h@gramps-project.org>
* Bump to 4.2.8
+81 -104
View File
@@ -1,4 +1,4 @@
**** This is GRAMPS Frequently Asked Questions ****
**** This is Gramps Frequently Asked Questions ****
The questions below frequently come up in mailing list discussions and forums.
This list is by no means complete. If you would like to add questions/answers
@@ -9,23 +9,23 @@ to this list, please email your suggestions to gramps-devel@lists.sf.net
==General==
1. What is GRAMPS?
1. What is Gramps?
2. Where do I get it and how much does it cost?
3. Does GRAMPS exist in other languages?
3. Does Gramps exist in other languages?
4. How do I keep backups?
5. Does Gramps support Unicode fonts? In particular, does it support non-Roman Unicode fonts?
6. What is needed to install GRAMPS under Linux, Solaris, or FreeBSD?
6. What is needed to install Gramps under Linux, Solaris, or FreeBSD?
7. Does it work with Windows (tm)?
8. Does it work with the Mac?
9. What are the Minimum Specs to run GRAMPS?
9. What are the Minimum Specs to run Gramps?
==Preferences==
@@ -33,43 +33,43 @@ to this list, please email your suggestions to gramps-devel@lists.sf.net
==Collaboration-Portability==
11. Is GRAMPS compatible with other genealogical software?
11. Is Gramps compatible with other genealogical software?
12. Can GRAMPS read files created by GenApp X?
12. Can Gramps read files created by GenApp X?
13. Can GRAMPS write files readable by GenApp X?
13. Can Gramps write files readable by GenApp X?
14. What standards does GRAMPS support?
14. What standards does Gramps support?
15. How do I import data from another genealogy program into GRAMPS?
15. How do I import data from another genealogy program into Gramps?
16. Can I install GRAMPS on a Linux Web Server and use it via a web browser? This would enable my relations worldwide to access and update it.
16. Can I install Gramps on a Linux Web Server and use it via a web browser? This would enable my relations worldwide to access and update it.
==Reports==
17. Can GRAMPS print a genealogical tree for my family?
17. Can Gramps print a genealogical tree for my family?
18. In what formats can GRAMPS output its reports?
18. In what formats can Gramps output its reports?
19. How can I change the default language in reports?
20. Is GRAMPS compatible with the Internet?
20. Is Gramps compatible with the Internet?
21. Can I create custom reports/filters/whatever?
22. Why are non-latin characters displayed as garbage in PDF/PS reports?
23. I would like to contribute to GRAMPS by writing my favorite report.
23. I would like to contribute to Gramps by writing my favorite report.
==Database - GRAMPS file formats==
==Database - Gramps file formats==
24. What is the maximum database size (bytes) GRAMPS can handle?
24. What is the maximum database size (bytes) Gramps can handle?
25. How many people can GRAMPS database handle?
25. How many people can Gramps database handle?
26. My database is really big. Is there a way around loading all the data into memory?
27. Can I run GRAMPS from a database on a NFS share?
27. Can I run Gramps from a database on a NFS share?
28. Why is the database format not portable?
@@ -77,123 +77,116 @@ to this list, please email your suggestions to gramps-devel@lists.sf.net
29. I found a bug and I want it fixed right now! What do I do?
30. GRAMPS should be a .... type of application
30. Gramps should be a .... type of application
==GRAMPS Webhosting ==
31. How can I publish web sites generated by GRAMPS?
32. How do I submit my pages to the GRAMPS library site (http://library.gramps-project.org)?
33. After I upload my Family Web Page to library.gramps-project.org, is the password used for write privileges only or read privileges?
34. Do I view the Family Web Page with a url into my browser? Or through a link on a list of Family Web Pages on the GRAMPS-Project.org site?
==Gramps Webhosting ==
31. How can I publish web sites generated by Gramps?
**** Questions and answers ****
==General==
1. What is GRAMPS?
1. What is Gramps?
GRAMPS is the Genealogical Research and Analysis Management Program System.
Gramps is the Genealogical Research and Analysis Management Program System.
In other words, it is a personal genealogy program letting you store, edit,
and research genealogical data using the powers of your computer.
2. Where do I get it and how much does it cost?
GRAMPS can be downloaded from http://sf.net/projects/gramps at no charge.
GRAMPS is an Open Source project covered by the GNU General Public License.
Gramps can be downloaded from http://sf.net/projects/gramps at no charge.
Gramps is an Open Source project covered by the GNU General Public License.
You have full access to the source code and are allowed to distribute the
program and source code freely.
3. Does GRAMPS exist in other languages?
3. Does Gramps exist in other languages?
Yes, at the moment GRAMPS is translated in 15 languages
Yes, at the moment Gramps is translated in 15 languages
4. How do I keep backups?
Use a recent version of GRAMPS! From 2.2.5 onwards there is an automatic backup utility.
It is extremely important to keep backups of your data, and keep them in a safe place. GRAMPS has a specific portable file format which is small, and human readable, denoted by .gramps. If you have allowed this in the preferences (In Edit menu->Preferences->General), GRAMPS will keep a backup of your database on exit. You can copy this backup file from time to time to a save location (eg a usb stick).
Use a recent version of Gramps! From 2.2.5 onwards there is an automatic backup utility.
It is extremely important to keep backups of your data, and keep them in a safe place. Gramps has a specific portable file format which is small, and human readable, denoted by .gramps. If you have allowed this in the preferences (In Edit menu->Preferences->General), Gramps will keep a backup of your database on exit. You can copy this backup file from time to time to a save location (eg a usb stick).
Note: The .gramps files are compressed. Clicking them will open GRAMPS. To see the XML select them and open them with a decompressing utility (like ark, gunzip), after which you can extract the XML file which is human readable.
Do not keep backups in GEDCOM. Not all information GRAMPS stores can be written in the GEDCOM. Hence, an export/import operation GRAMPS --> GEDCOM --> GRAMPS, will mean you lose data. Use the .gramps file format for backups!
Note: The .gramps files are compressed. Clicking them will open Gramps. To see the XML select them and open them with a decompressing utility (like ark, gunzip), after which you can extract the XML file which is human readable.
Do not keep backups in GEDCOM. Not all information Gramps stores can be written in the GEDCOM. Hence, an export/import operation Gramps --> GEDCOM --> Gramps, will mean you lose data. Use the .gramps file format for backups!
Do not keep backups in GRDB format. GRDB is a database, which might be computer dependent (read, not working on a different PC). Small damage to a GRDB file can also not be repaired. Use the .gramps file format for backups!
5. Does Gramps support Unicode fonts? In particular, does it support non-Roman Unicode fonts?
Yes. GRAMPS works internally with Unicode (UTF-8), so all alphabets can be used on all entry fields. All reports fully support this, although for PDF/PS you need to work with gnome-print or openoffice.
Yes. Gramps works internally with Unicode (UTF-8), so all alphabets can be used on all entry fields. All reports fully support this, although for PDF/PS you need to work with gnome-print or openoffice.
==Installation==
6. What is needed to install GRAMPS under Linux, Solaris, or FreeBSD?
6. What is needed to install Gramps under Linux, Solaris, or FreeBSD?
GRAMPS is a [http://en.wikipedia.org/wiki/Gtk GTK] application. GRAMPS needs to have the [http://en.wikipedia.org/wiki/Pygtk pygtk] libraries installed on the system. As long as these libraries are installed, GRAMPS should function. It will operate under the GNOME desktop, KDE desktop, or any other desktop. If the GNOME bindings for Python are installed on the system, GRAMPS will have additional functionality. The GRAMPS project recommends version 2.8 or higher of GTK.
Gramps is a [http://en.wikipedia.org/wiki/Gtk GTK] application. Gramps needs to have the [http://en.wikipedia.org/wiki/Pygtk pygtk] libraries installed on the system. As long as these libraries are installed, Gramps should function. It will operate under the GNOME desktop, KDE desktop, or any other desktop. If the GNOME bindings for Python are installed on the system, Gramps will have additional functionality. The Gramps project recommends version 2.8 or higher of GTK.
7. Does it work with Windows (tm)?
The Linux Genealogy CD can function as a live CD that you boot directly from. You can then run Linux and GRAMPS off the CD, even if your computer is entirely Windows.
The Linux Genealogy CD can function as a live CD that you boot directly from. You can then run Linux and Gramps off the CD, even if your computer is entirely Windows.
An experimental Windows installer is available, however we do not have the manpower to offer support for Windows. A windows mailing list is available however and we do do our best to solve windows related problems.
8. Does it work with the Mac?
The Fink project has ported some older versions of GRAMPS to OS X (tm). The Mac OS X port is not directly supported by the GRAMPS project, primarily because none of the GRAMPS developers have access to Mac OS X and because OS X is not Free Software.
The Fink project has ported some older versions of Gramps to OS X (tm). The Mac OS X port is not directly supported by the Gramps project, primarily because none of the Gramps developers have access to Mac OS X and because OS X is not Free Software.
This present version of GRAMPS (2.2.x) does not appear to have been ported by the Fink project. Please contact the Fink project for more information. However, some users had success in installing 2.2.x on Mac OSX either running in native mode or running on X11 using some of the fink packages.
This present version of Gramps (2.2.x) does not appear to have been ported by the Fink project. Please contact the Fink project for more information. However, some users had success in installing 2.2.x on Mac OSX either running in native mode or running on X11 using some of the fink packages.
9. What are the Minimum Specs to run GRAMPS?
9. What are the Minimum Specs to run Gramps?
We would recommend at least an 800x600 video display. For GRAMPS 2.0, the memory requirements have been reduced, and GRAMPS can run quite efficiently on a 256MB system, holding considerably more people. A system with 512MB should be able to hold around 200,000 people. Disk space requirements for databases are however considerably larger, with a typical database being several megabytes in size. For 120.000 people you must consider already 530Mb for the database. Pictures are stored on disk separately, so a large harddisk is necessary.
We would recommend at least an 800x600 video display. For Gramps 2.0, the memory requirements have been reduced, and Gramps can run quite efficiently on a 256MB system, holding considerably more people. A system with 512MB should be able to hold around 200,000 people. Disk space requirements for databases are however considerably larger, with a typical database being several megabytes in size. For 120.000 people you must consider already 530Mb for the database. Pictures are stored on disk separately, so a large harddisk is necessary.
==Preferences==
10. Can I change the dates in reports to 'day month year'
Yes, change in the preferences ("Edit->Preferences") the date for GRAMPS to the required format (eg YYYY-MM-DD or day mont year), and make the report. Your global date preferences will be used.
Yes, change in the preferences ("Edit->Preferences") the date for Gramps to the required format (eg YYYY-MM-DD or day mont year), and make the report. Your global date preferences will be used.
==Collaboration-Portability==
11. Is GRAMPS compatible with other genealogical software?
11. Is Gramps compatible with other genealogical software?
GRAMPS makes every effort to maintain compatibility with GEDCOM, the general standard of recording genealogical information. We have import and export filters that enable GRAMPS to read and write GEDCOM files.
Gramps makes every effort to maintain compatibility with GEDCOM, the general standard of recording genealogical information. We have import and export filters that enable Gramps to read and write GEDCOM files.
It is important to understand that the GEDCOM standard is poorly implemented -- virtually every genealogical software has its own "flavor" of GEDCOM. As we learn about new flavor, the import/export filters can be created very quickly. However, finding out about the unknown flavors requires user feedback. Please feel free to inform us about any GEDCOM flavor not supported by GRAMPS, and we will do our best to support it!
It is important to understand that the GEDCOM standard is poorly implemented -- virtually every genealogical software has its own "flavor" of GEDCOM. As we learn about new flavor, the import/export filters can be created very quickly. However, finding out about the unknown flavors requires user feedback. Please feel free to inform us about any GEDCOM flavor not supported by Gramps, and we will do our best to support it!
12. Can GRAMPS read files created by GenApp X?
12. Can Gramps read files created by GenApp X?
See above.
13. Can GRAMPS write files readable by GenApp X?
13. Can Gramps write files readable by GenApp X?
See above.
14. What standards does GRAMPS support?
14. What standards does Gramps support?
The nice thing about standards is that there never is a shortage of them. GRAMPS is tested to support the following flavors of GEDCOM: GEDCOM5.5, Brother's Keeper, Family Origins, Family Tree Maker, Ftree, GeneWeb, Legacy, Personal Ancestral File, Pro-Gen, Reunion, and Visual Genealogie.
The nice thing about standards is that there never is a shortage of them. Gramps is tested to support the following flavors of GEDCOM: GEDCOM5.5, Brother's Keeper, Family Origins, Family Tree Maker, Ftree, GeneWeb, Legacy, Personal Ancestral File, Pro-Gen, Reunion, and Visual Genealogie.
15. How do I import data from another genealogy program into GRAMPS?
15. How do I import data from another genealogy program into Gramps?
The best way is to create a new gramps database file (.grdb), and select the import option in the file menu. Here you select the GEDCOM you generated with the other program, and import it.
16. Can I install GRAMPS on a Linux Web Server and use it via a web browser? This would enable my relations worldwide to access and update it.
16. Can I install Gramps on a Linux Web Server and use it via a web browser? This would enable my relations worldwide to access and update it.
While GRAMPS can generate web sites, it does not provide a web interface that allows for editing. If this is a requirement, then [http://geneweb.org GeneWeb] or [http://phpgedview.sourceforge.net PhpGedView] are programs more likely to meet your needs. However, you may wish to ask yourself the following questions:
While Gramps can generate web sites, it does not provide a web interface that allows for editing. If this is a requirement, then [http://geneweb.org GeneWeb] or [http://phpgedview.sourceforge.net PhpGedView] are programs more likely to meet your needs. However, you may wish to ask yourself the following questions:
* Do I really want relatives or other people to directly edit my genealogy database?
* Do I implicitly trust, without verification, any data that people may enter?
* Do these people have the same understanding of good genealogy practice that I have?
@@ -204,7 +197,7 @@ You may also want to consider the effects of possible downtime of your site if y
==Reports==
17. Can GRAMPS print a genealogical tree for my family?
17. Can Gramps print a genealogical tree for my family?
Yes. Different people have different ideas of what a genealogical tree is.
Some think of it as a chart going from the distant ancestor and listing
@@ -212,14 +205,14 @@ all his/her descendants and their families. Others think it should be a
chart going from the person back in time, listing the ancestors and their
families. Yet other people think of a table, text report, etc.
GRAMPS can produce any of the above, and many more different charts and
Gramps can produce any of the above, and many more different charts and
reports. Moreover, the plugin architechture enables users (you) to create
their own plugins which could be new reports, charts, or research tools.
18. In what formats can GRAMPS output its reports?
18. In what formats can Gramps output its reports?
Text reports are available in HTML, PDF, ODT, LaTeX, and RTF formats. Graphical reports (charts and diagrams) are available in PostScript, PDF, SVG, ODS, and GraphViz formats.
Text reports are available in HTML, PDF, ODT, LaTeX, and RTF formats. Graphical reports (charts and diagrams) are available in PostScript, PDF, SVG, ODS, and Graphviz formats.
19. How can I change the default language in reports?
@@ -227,11 +220,11 @@ Text reports are available in HTML, PDF, ODT, LaTeX, and RTF formats. Graphical
The reports are in the language of your linux installation. You can change it by installing extra language packs, see [Howto: Change the language of reports] on wiki.
20. Is GRAMPS compatible with the Internet?
20. Is Gramps compatible with the Internet?
GRAMPS can store web addresses and direct your browser to them. It can import
Gramps can store web addresses and direct your browser to them. It can import
data that you download from the Internet. It can export data that you could
send over the Internet. GRAMPS is familiar with the standard file formats
send over the Internet. Gramps is familiar with the standard file formats
widely used on the Internet (e.g. JPEG, PNG, and GIF images, MP3, OGG, and
WAV sound files, QuickTime, MPEG, and AVI movie files, etc). Other than that,
there is little that a genealogical program can do with the Internet :-)
@@ -241,7 +234,7 @@ there is little that a genealogical program can do with the Internet :-)
Yes. There are many levels of customization. One is creating or modifying
the templates used for the reports. This gives you some control over
the fonts, colors, and some layout of the reports. You can also use GRAMPS
the fonts, colors, and some layout of the reports. You can also use Gramps
controls in the report dialogs to tell what contents should be used for a
particular report. In addition to this, you have an ability to create your
own filters -- this is useful in selecting people based on criteria set
@@ -253,47 +246,47 @@ knowledge of programming in Python.
22. Why are non-latin characters displayed as garbage in PDF/PS reports?
This is a limitation of the built-in fonts of PS and PDF formats. To print non-Latin text, use the Print... in the format selection menu of the report dialog. This will use the gnome-print backend, which supports PS and PDF creation, as well as direct printing. (Note: you might need to install gnome-print separately as it is not required for GRAMPS).
This is a limitation of the built-in fonts of PS and PDF formats. To print non-Latin text, use the Print... in the format selection menu of the report dialog. This will use the gnome-print backend, which supports PS and PDF creation, as well as direct printing. (Note: you might need to install gnome-print separately as it is not required for Gramps).
If you only have Latin text, the PDF option will produce a smaller PDF compared to that created by gnome-print, simply because no font information will be embedded.
23. I would like to contribute to GRAMPS by writing my favorite report.
23. I would like to contribute to Gramps by writing my favorite report.
How do I do that?
The easiest way to contribute to reports, filters, tools, etc. is to copy an existing GRAMPS report, filter, or tool. If you can create what you want by modifying existing code -- great! If your idea does not fit into the logic of any existing GRAMPS tool, you will need to write your own plugin from scratch. Help is available on the [Developers Portal] on wiki, or on the developers mailing list: gramps-devel@lists.sourceforge.net.
The easiest way to contribute to reports, filters, tools, etc. is to copy an existing Gramps report, filter, or tool. If you can create what you want by modifying existing code -- great! If your idea does not fit into the logic of any existing Gramps tool, you will need to write your own plugin from scratch. Help is available on the [Developers Portal] on wiki, or on the developers mailing list: gramps-devel@lists.sourceforge.net.
To test your work in progress, you may save your plugin under $HOME/.gramps/plugins directory and it should be found and imported on startup. The correctly written plugin will register itself with GRAMPS, create menu item, and so on.
To test your work in progress, you may save your plugin under $HOME/.gramps/plugins directory and it should be found and imported on startup. The correctly written plugin will register itself with Gramps, create menu item, and so on.
If you are happy with your plugin and would like to contribute your code back to the GRAMPS project, you are very welcome to do so by contacting us at gramps-devel@lists.sourceforge.net
If you are happy with your plugin and would like to contribute your code back to the Gramps project, you are very welcome to do so by contacting us at gramps-devel@lists.sourceforge.net
==Database - GRAMPS file formats==
==Database - Gramps file formats==
24. What is the maximum database size (bytes) GRAMPS can handle?
24. What is the maximum database size (bytes) Gramps can handle?
GRAMPS has no hard limits on the size of a database that it can handle. Starting with 2.0.0 release, GRAMPS no longer loads all data into memory, which allows it to work with a much larger database than before. In reality, however, there are practical limits. The main limiting factors are the available memory on the system and the cache size used for BSDDB database access. With common memory sizes these days, GRAMPS should have no problem using databases with tens of thousands of people.
Gramps has no hard limits on the size of a database that it can handle. Starting with 2.0.0 release, Gramps no longer loads all data into memory, which allows it to work with a much larger database than before. In reality, however, there are practical limits. The main limiting factors are the available memory on the system and the cache size used for BSDDB database access. With common memory sizes these days, Gramps should have no problem using databases with tens of thousands of people.
25. How many people can GRAMPS database handle?
25. How many people can Gramps database handle?
See above. Again, this is dependent on how much memory you have, see [GRAMPS Performance] on wiki.
See above. Again, this is dependent on how much memory you have, see [Gramps Performance] on wiki.
26. My database is really big. Is there a way around loading all the data into memory?
Starting with 2.0.0 release, GRAMPS no longer loads all data into memory, which allows it to work with a much larger database than before. The fileformat used is .grdb which means gramps database.
Starting with 2.0.0 release, Gramps no longer loads all data into memory, which allows it to work with a much larger database than before. The fileformat used is .grdb which means gramps database.
27. Can I run GRAMPS from a database on a NFS share?
27. Can I run Gramps from a database on a NFS share?
Yes you can.
28. Why is the database format not portable?
The biggest issue with GRAMPS portability lies with 'transactions'. With
GRAMPS 2.2, we added support for atomic transactions to protect data.
The biggest issue with Gramps portability lies with 'transactions'. With
Gramps 2.2, we added support for atomic transactions to protect data.
With atomic transactions, multiple changes are committed as a single
unit. Either all the changes make it, or none of the changes make it.
You are never left in a situation with a partial set of changes. A side
@@ -341,41 +334,25 @@ If the above explanations seem vague, please follow this link:
http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
30. GRAMPS should be a .... type of application
30. Gramps should be a .... type of application
The surest way to see it happen is to get it done by yourself. Since GRAMPS is free/open source, nobody prevents you from taking all of the code and continuing its development in whatever direction you see fit. In doing so, you may consider giving your new project another name to avoid confusion with the continuing GRAMPS development. If you would like the GRAMPS project to provide advice, expertise, filters, etc., we will gladly cooperate with your new project, to ensure compatibility or import/export options to your new format of a project.
The surest way to see it happen is to get it done by yourself. Since Gramps is free/open source, nobody prevents you from taking all of the code and continuing its development in whatever direction you see fit. In doing so, you may consider giving your new project another name to avoid confusion with the continuing Gramps development. If you would like the Gramps project to provide advice, expertise, filters, etc., we will gladly cooperate with your new project, to ensure compatibility or import/export options to your new format of a project.
If, however, you would like the GRAMPS project to adopt your strategy, you would need to convince GRAMPS developers that your strategy is good for GRAMPS and superior to the present development strategy.
If, however, you would like the Gramps project to adopt your strategy, you would need to convince Gramps developers that your strategy is good for Gramps and superior to the present development strategy.
HINT: if GRAMPS developers are still not convinced after about three
HINT: if Gramps developers are still not convinced after about three
messages sent to gramps-devel, maybe you are better off on your own
rather than with a company of retards who can't fully realize the
potential of your great idea :-)
==GRAMPS Webhosting ==
==Gramps Webhosting ==
31. How can I publish web sites generated by GRAMPS?
31. How can I publish web sites generated by Gramps?
Since GRAMPS generates HTML pages, you can upload the pages to your personal web site. If you do not have a personal web site, and still wish to have your pages available on the internet, the GRAMPS project can provide space for you at the http://library.gramps-project.org, see the [webhosting article] on wiki.
Since Gramps generates HTML pages, you can upload the pages to your personal web site. If you do not have a personal web site, and still wish to have your pages available on the internet.
32. How do I submit my pages to the GRAMPS library site (http://library.gramps-project.org)?
If you wish to submit pages to the GRAMPS library site, you will need to contact the GRAMPS project, typically by sending a message to the gramps-users mailing list. You will then be given a username and password that will allow you to upload your files to the site. After you upload the files (in a gzip'ed tar file), the GRAMPS project will install the pages for you on the site.
33. After I upload my Family Web Page to library.gramps-project.org, is the password used for write privileges only or read privileges?
In order to prevent abuse of the library.gramsp-project.org site, the password given allows uploads only. If you wish to have a username and password combination to restrict read access to your pages, you will need to contact the GRAMPS project, and we could set this up for you. However, the read and write accounts will be separate accounts.
34. Do I view the Family Web Page with a url into my browser? Or through a link on a list of Family Web Pages on the GRAMPS-Project.org site?
The main page on the library.gramps-project.org site will contain an index of the available family sites. However, there will be a unique URL for each site as well.
**** End of GRAMPS Frequently Asked Questions ****
**** End of Gramps Frequently Asked Questions ****
$Id$
Regular → Executable
+1 -1
View File
@@ -1,4 +1,4 @@
#! /usr/bin/env python
#! /usr/bin/env python3
#
# Gramps - a GTK+/GNOME based genealogy program
#
+42 -38
View File
@@ -1,50 +1,55 @@
$Id$
This file contains some useful details on the installation from source code
for GRAMPS. It does not cover installation of a pre-built binary package.
for Gramps. It does not cover installation of a pre-built binary package.
For that use your package manager, the rest is already done by the packager.
Uninstall old version
---------------------
If you do a source install in the same place of an existing install,
If you do a source install in the same place as an existing install,
you need to remove the old version first. You can delete the old
version by deleting the installed directories (for example,
/usr/share/gramps
version by deleting the installed directories. For example, if your installation prefix is /usr/local, remove the following:
/usr/local/share/gramps
/usr/local/lib/pythonx.x/site-packages/gramps
If you installed with a package manager you might instead need to remove
/usr/local/lib/pythonx.x/dist-packages/gramps
/usr/lib/pythonx.x/site-packages/gramps
/usr/lib/pythonx.x/dist-packages/gramps
where pythonx.x is python2.7 or whatever version you installed gramps with.
Also remove the gramps .egg files that are installed along with the gramps
directory.
replacing pythonx.x with the python version you used, e.g. python3.4.
Also remove any gramps .egg files that are installed along with the gramps
directory and the file /usr/local/bin/gramps.
If you don't know the list of all files that Gramps installed, you can
reinstall it with the --record option, and take a look at the list this
produces (so python setup.py install --record grampsfiles.txt
GRAMPS is a python application, so loading happens on reading the
Gramps is a python application, so loading happens on reading the
files, meaning that files of a previous version that are no longer
present in the new version can still be loaded, making the new install
unstable!
distutils install
-----------------
We do not check all dependencies of Gramps, see README for a
list of all required and optional dependencies. On running Gramps, errors will
be returned if dependencies are missing.
We do not check all dependencies of Gramps, see README for a list of
all required and optional dependencies. Missing dependencies will
result in runtime errors.
If you are building from released tarball, you should be able to just
run
To build and install, whether from a tarball or git repo:
python3 setup.py build
sudo python3 setup.py install
python setup.py build
python setup.py install
You can avoid using sudo for the install step by specifying a prefix to which you have write priviledge. The default is /usr/local, which is usually owned by root. You can learn of more options with
python3 setup.py --help
where the last must be done as root. You can work with Gramps if you only build
it by pointing the PYTHONPATH to the build directory, but things like MIME type
and desktop entries will not be created then.
One can use gramps from the command line without installing it by
setting the following environment variables, but that won't provide
things like MIME type and desktop entries.
export PYTHONPATH="/top/grampsdir/gramps:$PYTHONPATH"
export GRAMPS_RESOURCES="/top/grampsdir"
See below for ways to invoke Gramps.
Typical install directories in linux (ubuntu) are:
* /usr/local/lib/python2.7/dist-packages/gramps/ : the gramps python module
* /usr/local/lib/python3.4/dist-packages/gramps/ : the gramps python module
* /usr/local/share/mime-info : mime info so gramps opens files automatically
* /usr/local/share/icons/gnome : our icons
* /usr/local/share/doc/gramps : documentation, also example .gramps and .gedcom
@@ -57,46 +62,45 @@ Typical install directories in linux (ubuntu) are:
Running Gramps
--------------
Gramps is python only, so no compilation is needed, you can even run gramps
from the source directory.
from the source directory.
a) You installed Gramps, then you can run it with the command
gramps
gramps
b) You installed Gramps, and want to start it from the PYTHONPATH. In this
case use the command:
python -c 'from gramps.grampsapp import main; main()'
python3 -c 'from gramps.grampsapp import main; main()'
The executable 'gramps' in /usr/local/bin or /usr/bin from a) does
The executable 'gramps' in /usr/local/bin or /usr/bin from a) does
this for you.
b) You downloaded the Gramps source code to a directory, and want to run it.
You can start Gramps from the source code directory with
python Gramps.py
python3 Gramps.py
See gramps/gen/const.py how Gramps finds his resource directories in case
See gramps/gen/const.py how Gramps finds its resource directories in case
you encounter problems.
Custom directory installation
-------------------------------------
If you would like to install GRAMPS without being root, or in an
If you would like to install Gramps without being root, or in an
alternative location on windows, supply the --root argument to setup.py
For example:
python setup.py install --root ~/test
or
python setup.py install --root ~/test --enable-packager-mode
The last option, --enable-packager-mode, is needed if you want to disable
execution of post-install mime processing. If you don't have root/admin
access, this will be needed
python3 setup.py install --root ~/test
Packager's issues
------------------
There is a MANIFEST.in file to indicate the work needed.
To create a source distribution run:
python setup.py sdist
python3 setup.py sdist
If Gramps is built outside of the source tree in a temporary location (e.g. when
packaging for a distribution), the --resourcepath option can be used to specify
the path to the installed location of the Gramps resources (e.g. /usr/share):
python3 setup.py install --resourcepath=/usr/share
+1
View File
@@ -1,4 +1,5 @@
include AUTHORS
include ChangeLog
include COPYING
include FAQ
include Gramps.py
+392 -10
View File
@@ -1,3 +1,385 @@
2018-02-09
Version 4.2.8
* Fix Geography views for bad 'dbstate.is_open()' test
2018-02-08
Version 4.2.7
* Fix Export View to CSV when Unicode characters are present
* Fix several intl date displayers for missing parameter
* DescendantTree report; fix crashes and Title spacing
* Fix Book XML handler to deal with unusual characters in Book name
* Add support for new genealogy tree report category
* Fix Media Preview Gramplet for closed db
* Suport FTM 2017 Gedcom tags on import
* Fix Person, Family Sidebar Filters to add custom Event types
* Fix QuestionDialog display for html like characters in title
* Fix FamilyRelationshpType _DATAMAP order to correspond with values
* Fix Gedcom import for illegal Gedcom Family Attributes
* Fix Gedcom export for bad Hebrew Months
* Change INSTALL to replace 'python' with 'python3 for script invokes
* Fix CSV importer for place event name using gramps_id
* Fix Geography view 'Find' when db is closed
* Fix interactive search for exception on click then down arrow
* Create where_is utility to locate a binary in the standard places
* Fix relationship Graph so Unicode chars on Multiple pages works
* Update authors file
* Fix Gedcom import for "1 MARR Y" issue
* Fix Export Web Family Tree for errors on file write
* Fix Citation Editor to Tab out of Confidence ComboBox
* Reset the dependencies on the new meta-module
* Use online modules
* Consolidate Python2 and Python3 meta-modules
* Use None as the foreground colour for untagged rows in list views
* Fix shading colour in relationship view for dark themes
* Fix link colour for dark themes
* Fix default foreground colour in list views for dark themes
* Fix Undo; crashes due to race in Gtk
* Gedcom import with OBJE/FORM URL on event
* EOFError [Ran out of input] in Clipboard
* Cannot drag & drop textual value via clipboard
* Fix 'DbBsddbRead' object has no attribute '_Callback__callback_map'
* Reports - Narrated Web Site Failure
* Fix link path in gramps-launcher compile instructions
* Update translations: fi, de
2017-08-01
Version 4.2.6
* Fix HasCitation rule in citation filter sidebar
* Fix use of regular expressions
* Date Editor had 'Type' and 'Quality' labels swapped
* Fix FamilyGroup Report
* Fix names not displayed in relationship graph
* Fix outdated Bugtracker link in reporting wizard
* Fix replacements in Ancestor tree
* Fix Default Browser Setting
* Fix linking place on OpenStreetMap view
* Fix Family Lines Report having unescaped characters
* Fix non-local character in DB name (Windows OS)
* Fix checking for "event.string" in "treeview_keypress"
* Fix invalid February 29th date in Julian dual-dated
* Fix Note on CIR when it is attached to a (preferred or alternative) name through the names dialog.
* Improve time loading for person selector in census forms
* Fix incorrect SoundEx result
* Fix Error printing on ancestor tree graphical report
* Fix custom filter creation with 'Events occurring on a particular day of the week'
* Bug in the Name Editor / Group As
* Gramps CSV export of Places did not generate correct Title.
* Add custom Family Relations not shown in the filter siderbar
* Fix non-textual value on Tag report
* Fix 'interface.dont-ask' config key ignored on Note edition
* Fix Reorder Relationships dialog
* Shrink size of Break Lock (and other QuestionDialogs)
* Only selection of Active or Home person if commited
* Fix quick search exception when nothing in searched list
* Fix problem adding parents
* Fix bookmarks keybinding on Mac
* Fix failure to load default gramplets if GExiv2 is missing or too old.
* Update API doc for place displayer
* Add datestrings to Turkish translation
* Update translations: cs, de, fr, fi, hu, it, ru, sl, sv, tr
2016-12-15
Version 4.2.5
* The configparser is assuming the wrong encoding
* Sorting in family tab of narrated web report
* Silence remaining PyGIWarning
* Sorting of relationships in family tab of narrated web report
* Use latest valid date rather than today
* Modify endonym handling in place displayer
* Fix house number concatenation
* Allow merging of families with one or more parents in common
* Jump to Gramps ID functionality doesn't work
* Ability to search alternate place names when selecting place
* Fix clear map action on Geography
* Database repair tool always edit all source objects
* Database repair tool ignored some objects with tag
* "Enclosing" gramplet includes places outside valid date ranges
* Fix icon and tooltip in LDS editor
* CSV import fails
* Fix duplicated Gramps IDs on Gedcom import
* Unexpected error Preferences > Dates > Markup for invalid date format
* Fix Import Vcard, can create multiple surnames with all selected as 'Primary'
* Fix Gedcom import in some alternate languages; improper date parsing
* Export options 'Preview' buttons create hidden quickreport
* Alignment radio buttons in the style editor do not work
* Select Place search & Source/Citation hierarchy should NOT be expanded
* Tweak improvement on Tag editor
* Support for Windows Python3 pythonw.exe
* Wrong parsing Numeric date format for cs_CZ locale
* Fix Norwegian relationship calculator
* Fix Icelandic and German translations
* Update translations: cs, de, fi, fr, hu, is, nb, ru
2016-09-04
Version 4.2.4
* fixes for the PHON, FAX, EMAIL and WWW Gedcom tags to support Gedcom v5.5.1
* use more relative import
* Support for FTM and others Custom Gedcom Event Tags on import
* fix '_deeprelationshippath' filter rule
* Narrativeweb: some dates are incorrect in tar archive.
* MacOS: Update graphviz to 2.38 and change to a binary launcher in app bundles.
* Gramps crashes when closed while exporting
* Some events are not shown in familymaps page.
* Remove old debug bloc on place selection.
* Add GUI and CLI config option to allow easy setting
* Chinese characters are not rendered properly in pdf reports
* Support v5.5.1 OBJE/FORM/MEDI tag on embedded OBJE
* Sorting of Sources on gedcom
* Change "class xxx(object)" to "class xxx"
* Use "with open" instead of "try: except:"
* Change "raise NotImplemented" to "raise NotImplementedError()"
* Add new argument to IsEnclosedByRule
* Narrativeweb: place title must agree the references.place-auto configuration
* Improvements on CSV file format support
* update Finnish holidays
* Some strings in tools and report dialogs will not translate
* Gedcom import improvements in media area to support v5.5.1 and FTM
* Trailing whitespace
* Gedcom import of FTM .ged file containing _LINK tags not supported
* Change pycairo-python3 to pycairo.
* pycairo for python2 is now py2cairo.
* Remove pango modules from bundle, pango no longer uses them.
* Gedcom import loses spaces in text fields from FTM
* Gedcom import of FTM file containing _PHOTO tags
* Missed self.photo initializer
* Attempting to select an "Available item" for the Book Report gives an error
* Fix for either valid or invalid FTM Gedcom
* Gedcom import of FTM file with OCCU record crashes import
* crash - 'NoneType' object has no attribute 'get_child_ref_list'
* Family Page maps are non-functional in Narrative Web report
* Gedcom import loses spaces in text fields from FTM
* String not translated in geoplaces
* Descendant Report does not recognise auto. place title generation
* Translated text will not be printed in the program
* Geography: Attempting to print crashes (add parent to dialog)
* GEDCOM doesn't accept CR as a line terminator
* Wrong Numeric date format for cs_CZ locale
* Narrativeweb: inconsistent & incomplete display of place hierarchy labels
* Narratedweb: surname listing errors for people with multiple partners
* In "Verify" people w/ death event w/o date are not thought dead
* While starting gramps, it fails to pop up "tips of the day"
* GEDCOM import in CLI mode with .ged file containing ANSEL encoding tries to pop up gui
* fix merge conflict
* Use first matching name when generating place titles
* GEDCOM import with media files that have no path fails
* [Geography] Geoclose and mother handle
* place names empty if Gedcom ADDR record contains no street
* Tidy up place configuration options
* Use CSS to fade background colour in ValidatableMaskedEntry
* crash on GEDCOM import with empty _AKA lines
* Add inclusive option to IsEnclosedBy rule
* Saving/closing new person window with Alt-o does not find gender
* Fix to allow deferred translation of place type
* Include all place types in place report
* Allow place selection both individually and by filter on textual report
* Expand tree in selectors automatically
* Fix Encloses gramplet to display correct place references
* Update for appdata stuff
* UnboundLocalError on ODF doc backend
* Media Preview: wrong frame
* fix signals
* GEDCOM import PLAC:FORM in local mode doesn't work
* fix empty Place Alternate Names on import
* Merge unit test for PlaceCheck not working correctly
* GEDCOM import some Place Names & Titles are blank
* GEDCOM import PLAC or ADDR attached Notes etc. are lost
* Gramps not appearing in Gnome Software
* fix broken GEDCOM import PLAC:FORM handling
* Place Alt Names gets duplicated entries
* Multiple GEDCOM imports creates duplicate event IDs
* The place page in webreport is complete mess
* Gallery tab of Source view does not display .ods files
* Narrated Web report - Individual sort order not correct on the Surnames tab
* Specify required GtkSpell and GExiv2 version
* Narrated web report link to thumbnails is broken on certain pages
* Narrated Web report - Individual page sort order has changed
* Gramps reports that it can't find dictionaries.
* Turns out it was really that enchant couldn't find its backend because an environment variable wasn't set.
* Update translations: cs, da, de, fi, fr, hu, pt_BR, ru, sl
2016-04-10
Version 4.2.3
* Creation of the "graphic calendar report" failed
* Fix "TypeError: 'tuple' object does not support item assignment
* Fix experienced an unexpected error
* Unable to build narrated web site
* [NarrativeWeb report] Places index and Media index are incorrectly sorted
* Error when trying to create narrative report (residence event)
* Fix filter set by default on selector, 'Show all' button
* Detailed Ancestors Report has ? for locations when [private data is excluded]
* Age in the event family view column is wrong.
* Crash when dragging multiple media items to clipboard
* vCal Export File format invalid
* Error occurs for Complete Individual Report -- complete database
* Narrated Web Site Report: places page is no longer sorted alphabetically
* Narrative web: html elements emitted in different order
* Narrative web: "errno: 1, operation is not permitted" when creating archive.
* Narrative Web report further stops in error.
* Fix multiple lines for firstname on gramps XML file via import or export
* fix scrolling in persons view after typing some letters
* Location on geography view could not convert string to float
* setup.py: make typeout more accurate
* Searching in people view when surnames are collapsed
* Fix error when changing database in new locations gramplets
* Error loading Participants add-on in French locale
* Restores setting the stdout encoding to sys.getdefaultencoding() for Python3
* Fix comment about getting the right encoding for stdout.
* Date format does not match system.
* Make US English a special-case locale, where en_GB is the default for english based locales
* Enhance the Locations gramplet
* New "Encloses" gramplet to the display places that the active place encloses
* Individuals with incomplete names, not updated when name completed
* Children gramplet in Family view does not get updated when a birth/death events are added to a child
* Non-image media objects don't appear in the main window gallery.
* Pressing tab stops at element in gui places
* Double-clicking on a source in the citation gramplet causes exception
* "Find text in record" filter crash
* Fix vCard Export
* Notes used in the "To Do" gramplet are found by the Remove Unused Objects tool
* Unable to select Unicode
* Cannot import gedcom generated by RootsMagic custom place details ignoring PlaceName()
* Fix people sorted by surname view
* Complete Report about person (whole database) - PDF - crash
* Update for travis
* Only consider the values of LC_ALL, LANG, and LANGUAGE, in that order, when choosing the default locale.
* New Icelandic date and relationships handlers
* Fix Finnish translation in keywords of desktop entry
* Update translations: cs, de, el, fi, fr, hu, is, it, ru, sl, sv, uk
2016-01-06
Version 4.2.2
* "Show all" checkbox of "Select Family" window not unchecked when the filter is cleared
* Name of user defined filter is not shown
* ErrorDialog and GtkDialog mapped without a transient parent
* 'Find' is broken when used in the Family selector
* Fix default selection in selectors
* Comment currently-unused bogus wiki URL pointers
* Fix counter for filtered entries and indentation on TreeBaseModel
* Faulty headline in start up screen
* Check that gramplet is in notebook before setting tab label
* Fix creation of focus change events
* Interactivesearch gives "TypeError: unorderable types: str() < NoneType()"
* Put tag selection list in alphabetical order
* Remove redundant code
* Fix delete error in undoable entry widget
* Fix deprecation warning
* Re-enable selection in MultiTreeView on a grab_broken event
* Add validation to gender field
* Unhandled AttributeError when db.get_tag_from_handle returns None
* ReferencedBySelectionProxy can forget some referenced tags
* Remove encoding on stdout and stderr
* Handle citation objects in glocale.trans_objclass
* Locality data in address was not imported
* Don't check SSL certs when fetching addons
* Catch urlopen TypeError when context arg isn't supported
* Fix undefined variable error
* Can not download new or updated add-ons
* ValueError: underlying buffer has been detached
* LaTeX backend crashes
* Geography: performance issue due to bad initialization and performance issue when selecting the events or places views.
* Narrated Web Site Report: html elements emitted in different order
* Unused *_init.jpg are created in the narrated website
* Some media files are not exported to the NAVWEB report
* Narrative web report: add author to citations
* TypeError: unorderable types: EventRef() < EventRef(), events list and family list are differents between two reports
* Permission denied: change mtime to origin instead of destination
* Thumbnails html file missing in the narrative web
* Narrativeweb: Place title based on current date not that of the event
* Webcal: make the month name clickable in the year overview page
* 'Narrative' word not translatable
* 'Unknown' spouse uses an harcoded string name on Simple Descendants textual report
* Father/mother's age attributes are not translated on reports
* Improve Russian date handler and unittests
* Mars month instead of Marzec on Polish locale (Date Editor)
* Translations update: cs, de, fr, fi, nl, pl, ru, sv
2015-10-12
Version 4.2.1,
* Support for Retina and HiDPI Display, added 24px icons
* Fix verification tool with "Estimate missing or inexact dates"
* Fix missing link in hourglass graph report
* Sort custom place types in editors
* Allow Easter calculation with python3
* Fix crash on Descendants-detailed report
* FanChartDescendants View should at least have 2 generations
* Allow hyphenated gramps-id in Graphviz reports
* Complete Individual Report fails to run
* Fix broken wiki help links
* Set TextOption widget to expand vertically
* Unused Object Dialog box too small
* Short cut keys does not work in 'Change Event Types' dialog
* Update some Tips of the day
* Error when extracting place names
* Custom filters for note text repaired
* Fix Pedigreeview crash when selecting Compact view
* Set "visable_window" in GtkEventBox to fix transparency
* Faster scrolling
** cache database access for column values
** cache do_get_path lookups
** speed up load access on treeviews with no filters
** new LRU size of 1k (was 250)
** use cache in do_get_path from siblings
* Avoid using person-centric date matching for places
* Use place title as default name in GEDCOM import
* Ensure place names are not empty after upgrade
* Fix proxy to include all referenced place objects
* Fix bug that prevented any addons being loaded onto the Mac version
* Remove copy button from family tree manager
* Consistency for name fields on Person Editor
* [Geography] Place.set_name(name) requires a PlaceName()
* [Geography] Fix and improvements on place selection
* Limit problems with existing selection in media reference editor
* Stability fixes on Mac port
* Mac port localization crash with non-standard locale (e.g. en_IT).
* Fix color on history
* Fix countries selector for holidays
* Fix missing markups into textual reports
* All sidebars with Types now show custom types in combo list
* [New] Added Places to CSV import/export
* Some fixes on installer (setup.py)
* Various improvements on gen.plug.utils
* Fix graph reports [in Greek locale]
* New date handler for Hungarian locale
* Updated translations : cs, de, el, en_GB, fi, fr, hu, is, sv
2015-08-02
Version 4.2.0,
* New date and language fields on place name
* Review on GtkBuilder, fix some Gtk3 warnings and move from deprecated methods
* Change icons and buttons handling methods
* Enhanced Place Editor and new Place Name editor
* New widget: use own interactive-search
* Ability to import kml data into Geography views
* Enhancement for removing multiple selected items from Views (action group)
* Add drag support on more Views, Selectors and Editors
* Add right-click "Copy all" to ListModel and all QuickTables
* Review Alternate Place handling and edition
* New 'Place' configuration keys set by user (settings)
* New filter rule: is enclosed by
* Consistency on Privacy option for reports
* Consistency on "Name-format" options for reports
* Add DeferredFilter class (a subclass of GenericFilter)
* New textual Report: Links on Notes
* Fix alphabetic index and toc bug in books
* Enhancements on Style Editor
* Enhancements on End Notes into textual reports
* Changes on Individuals complete textual report
* Changes on Ancestors Tree draw report: Include Siblings
* Add name-format option, and deferred translation on Records report
* Add deferred translation on Timeline draw report
* Enable attributes gramplet on Source and Citation Views
* New place locations gramplet
* Optimizations around index, Flat and TreeView models
* Enhanced samples files
* All importers return now an ImportInfo object
* Experimental gwplus (geneweb) import file format support
* Remove experimental HTML renderer view
* New test scripts
* New Date handler for Japanese
* Review on Slovenian and Czech Date Handlers
* Implement both "traditional" and "simplfied" Chinese (translations and dates)
* Serbian review
2015-05-01
Version 4.1.3, "Thou shalt not count to five", a maintenance release.
* Fix db upgrade failure
@@ -337,8 +719,8 @@ Version 3.4.4 of Gramps! "The Ministry of Silly Names", a maintenance release.
* fix annoying errors on navigation related to citations gramplet and tag object.
* listing the Family Trees can corrupt them.
* various fix around handling Gedcom file format
* fix citations and sources import on ProGen format
* better date handling and better alternate translation support on some textual reports according to locale under windows
* fix citations and sources import on ProGen format
* better date handling and better alternate translation support on some textual reports according to locale under windows
* avoid Errors when setting wrong value as markup for invalid dates (Preferences)
* fix paragraph layout on PDF format or print output
* New: New-Zealand holidays
@@ -356,16 +738,16 @@ Version 3.4.3 of Gramps! "Whenever life gets you down, Mrs. Brown", a maintenanc
* Sorting (both in the main display window, and particularly in Narrative Web output) now uses PyICU (if that module is available). Inclusion of PyICU is 'strongly recommended'. This resolves a number of bugs particularly related to sorting of non-Latin characters, and sorting on MS Windows and Mac OS X. Some changes have been made in Narrative Web to support contractions for alphabetic indices.
* The automatic Addon checking and download now works once again (the location used in Gramps 3.4.2 and before had been changed, so the the automatic process was no longer working).
* Import from Pro-Gen has been updated (at last) to take account of the change to Citations (in 3.4.0)
* Import and Export of address fields in GEDCOM has been improved so that the round-trip works properly.
* Import and Export of address fields in GEDCOM has been improved so that the round-trip works properly.
* GEDCOM Repositories not imported correctly from FTM for Windows and Heredis.
* Fixes to a number of errors in filtering notes.
* Fix some errors in determining whether someone is alive (e.g. for filtering out alive people).
* Make availability of GraphViz settings depend on output format
* Improve the descriptions and tooltip for GraphViz aspect ratio option
* Make availability of Graphviz settings depend on output format
* Improve the descriptions and tooltip for Graphviz aspect ratio option
* Fixed update problems with citation bottombar gramplet (bug #6336)
* Fixed Open Document Text output in Book report (bug #6457)
* A number of changes to Narrative Web:
** Media objects attached to Marriage events and Sources are not included in Narrative Web Site
** Media objects attached to Marriage events and Sources are not included in Narrative Web Site
** restructure the families index so families are indexed under both spouses, and the family name is normalised
** separate out Families section in individual and families pages so individual page links to the family page and family page links to both people
** normalise links to families so the link is only displayed if the family page is present, and the gid is included when appropriate
@@ -383,7 +765,7 @@ Version 3.4.3 of Gramps! "Whenever life gets you down, Mrs. Brown", a maintenanc
** Implemented a generalised back reference function to display the 'References' section of all pages. This recursively displays references till one is found for which a page exists.
** Removed list of people and families from heading of the event pages as these are now in the 'References' section.
** Fixed bug "0005968: Narrated Web Site not copying Source Citations files such as jpg or pdf docs to web site
** Fixed bug "0005946 GRAMPS failed to insert jpeg image into proper place for an event" by displaying a thumbnail for citation media in the 'Source References' section (with a link to the media page)
** Fixed bug "0005946 GRAMPS failed to insert jpeg image into proper place for an event" by displaying a thumbnail for citation media in the 'Source References' section (with a link to the media page)
** Tidy up media pages - remove unused parameters, use list of media items generated in first pass. Should fix bugs 2365, 5905 and 6009.
** Tidy up sources pages - fix numbering of repositories, remove unused parameters, fix title of individual source pages
** Bug: reset NarrWeb navigation menu layout when style sheet doesn't support it
@@ -391,7 +773,7 @@ Version 3.4.3 of Gramps! "Whenever life gets you down, Mrs. Brown", a maintenanc
** Fix option to suppress Gramps ID (bug #6237)
* a number of technical changes to Narrative Web
** Removed a lot of redundant code and parameters (mainly connected with the old way of determining the objects to be included in the report).
** Movement of some large chunks of code within the source file and some initial work towards GEPS 022: Narrative Website Refactor. Functionality should be unchanged.
** Movement of some large chunks of code within the source file and some initial work towards GEPS 022: Narrative Website Refactor. Functionality should be unchanged.
** Moved routines for calculating objects to be output so they can be part of default list building classes.
* Various updated translations: da, de, es, fr, it, nb, nl, pt_BR, pt_PT, sv, uk
@@ -583,7 +965,7 @@ Version 3.1.3 -- the "What name?" release.
2009-06-06
Version 3.1.2 -- the "Skip the impersonations" release.
* Contains translation updates and small bug fixes. No new features.
* ca, cs, de, fr, he, it, nb, nl, pl, pt_br, ru, sk, sv,
* ca, cs, de, fr, he, it, nb, nl, pl, pt_br, ru, sk, sv,
* fixes a failure in 'Check & Repair Database'
* fixes to Gramplets
* fixes to CLI regressions
@@ -696,7 +1078,7 @@ Version 2.2.5 -- the "Now go away or I shall taunt you a second time" release
Version 2.2.4 -- the "When you're chewing on life's gristle, Don't grumble, give a whistle" release
* Improved handling of readonly files
* Enhanced parsing of longitute and latitude and mapping
* Enhanced parsing of longitute and latitude and mapping
(Benny Malengier/Zsolt Foldvari)
* Check and repair improvements
* Reference map rebuild tool
+21 -38
View File
@@ -1,24 +1,21 @@
$Id$
Please read the COPYING file first.
If building from source, also read the INSTALL file (at least through the
"SUPER-SHORT VERSION") before going further.
Please read the INSTALL file if you intend to build from source.
Requirements
--------------------------------
The following packages *MUST* be installed in order for Gramps to work:
Python 2.7 or greater, Python 3.2 or greater (or both python versions)
GTK 3.0 or greater
pygobject 3.3.2 or greater
Python 3.2 or greater
GTK 3.10 or greater
pygobject 3.12 or greater
cairo, pango, pangocairo with introspection bindings (the gi packages)
librsvg2 (svg icon view)
xdg-utils
bsddb3 is required for Python 3.2 (not python 2.7)
bsddb3
The following package is needed for full translation of the interface
to your language:
language-pack-gnome-xx
language-pack-gnome-xx
Translation of GTK elements to your language, with
xx your language code; e.g. for Dutch you need
language-pack-gnome-nl. The translation of the
@@ -27,21 +24,13 @@ to your language:
The following packages are *STRONGLY RECOMMENDED* to be installed:
osmgpsmap Used to show maps in the geography view.
osmgpsmap Used to show maps in the geography view.
It may be osmgpsmap, osm-gps-map, or python-osmgpsmap,
but the Python bindings for this must also be present.
Without this the GeoView will not be active, see
http://gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual_-_Main_Window#Geography_Category
!! PACKAGERS: unfortunately, at the moment (March 2013),
the patches which gramps 4.0 needs osm-gps-map to have
are not yet released (as a new osm-gps-map version). The
osm-gps-map sources must be dated 6 February 2013 (or
later) to have the necessary patches. You may obtain
it from: http://nzjrs.github.com/osm-gps-map/ or else
http://sourceforge.net/projects/gramps/files/Dependencies
(The necessary version seems to be 0.8 -- or later.)
https://gramps-project.org/wiki/index.php?title=Gramps_4.2_Wiki_Manual_-_Categories#Geography_Category
GraphViz Enable creation of graphs using GraphViz engine.
Graphviz Enable creation of graphs using Graphviz engine.
Without this, three reports cannot be run.
Obtain it from: http://www.graphviz.org
@@ -53,23 +42,25 @@ The following packages are *STRONGLY RECOMMENDED* to be installed:
sorting is done through built-in libraries. PyICU is
fairly widely available through the package managers of
distributions. See http://pyicu.osafoundation.org/
(These are Python bindings for the ICU package.)
(These are Python bindings for the ICU package.
https://pypi.python.org/pypi/PyICU/)
The following packages are optional
gtkspell Enable spell checking in the notes. Gtkspell depends on
gtkspell Enable spell checking in the notes. Gtkspell depends on
enchant. A version of gtkspell with gobject introspection
is needed, so minimally version 3.0.0
rcs The GNU Revision Control System (RCS) can be used to manage
multiple revisions of your family trees. See info at
http://www.gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual_-_Manage_Family_Trees#Archiving_a_Family_Tree
https://gramps-project.org/wiki/index.php?title=Gramps_4.2_Wiki_Manual_-_Manage_Family_Trees#Archiving_a_Family_Tree
Only rcs is needed, NO python bindings are required
PIL Python Image Library is needed to crop
images and also to convert non-JPG images to
JPG so as to include them in LaTeX output.
(For Python3 a different source may be needed.)
(For Python3 a different source may be needed,
python-imaging or python-pillow or python3-pillow)
GExiv2 Enables Gramps to manage Exif metadata embedded in your
media. Gramps needs version 0.5 or greater.
@@ -77,20 +68,12 @@ The following packages are optional
ttf-freefont More font support in the reports
gir-webkit GObject introspection data of WebKit is required for the
hidden view 'Htmlview', which allows websites to be
opened in Gramps. Users can unhide the view in the
plugin manager. A html renderer must be installed to
use the view.
!! PACKAGERS, Test if on your distribution
webkit and Gramps is stable. If you obtain crashes, patch
src/plugins/view/htmlrenderer.py and
src/plugins/view/geoview.gpr.py, so as to remove:
from gi.repository import WebKit as webkit
gir-webkit Required for the (user-downloadable) HtmlView plugin
goocanvas2:
Required for the (user-downloadable) Graphview plugin
goocanvas2 Required for the (user-downloadable) GraphView plugin
No longer needed in 4.1:
?
No longer needed in 4.0:
pygoocanvas, pygtk, pyexiv2
No longer needed in 3.3:
@@ -98,12 +81,12 @@ No longer needed in 3.3:
No longer needed in 3.2:
python glade bindings
No longer needed in 3.1:
yelp Gnome help browser. At the moment no help is shipped
yelp Gnome help browser. No offline help is shipped see Gramps website for User manual
Documentation
---------------------------------
The User Manual is now maintained on the gramps website,
The User Manual is maintained on the Gramps website,
http://www.gramps-project.org/wiki/index.php?title=User_manual
--------------------------------
+6 -29
View File
@@ -1,36 +1,13 @@
$Id$
Major enhancements in Gramps 4.2.0:
UNSTABLE Gramps 4.0.0 Beta2 release.
* GEP 36: GEPS 036: Extended Alternative Place Name Handling:
https://gramps-project.org/wiki/index.php?title=GEPS_036:_Extended_Alternative_Place_Name_Handling
This is a technology preview to allow distribution packagers (and plugin
writers) to update their scripts (and plugins). This release is not
production ready, so only use it for testing!
* GEP interactive search: own interactive-search box.
It is recommended that Gramps 4.0.0 be used with python 2.7 since many
dependent packages do not yet have python 3 versions. A determined person
can probably download their sources and build them, however.
The dependencies for Gramps 4.0.0 are _completely_ different than 3.4 due
to the switch to GObject introspection, and the removal of autotools. So
only install 4.0.0 if you are certain you can obtain the dependencies,
see README and INSTALL.
For linux, in Ubuntu 12.10 you can install 4.0.0, but you will need to
compile and install osmgpsmap manually to have the maps working (see
http://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion#OsmGpsMap_for_Geography )
Major enhancements in Gramps 4.0.0:
* GEP 8: code reorganization: http://www.gramps-project.org/wiki/index.php?title=GEPS_008:_File_Organization
* GEP 26: Replace make: http://www.gramps-project.org/wiki/index.php?title=GEPS_026:_Replace_%27make%27_for_Gramps_build
* GEP 29: Gtk 3 :http://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion
* GEP 31: Python 3 support: http://www.gramps-project.org/wiki/index.php?title=GEPS_031:_Python_3_support
* Speedup on Tree and Flat Views
More info in the manual
http://www.gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual_-_What%27s_new%3F
http://www.gramps-project.org/wiki/index.php?title=Gramps_4.2_Wiki_Manual_-_What%27s_new%3F
Everybody is invited to update the manual to make it current!
+48 -45
View File
@@ -1,142 +1,145 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Id$ -->
<authors xmlns:html="http://www.w3.org/1999/xhtml">
<author uid="rshura" title="author">
<author title="author">
Alex Roitman &lt;<html:a href="mailto:shura@gramps-project.org">shura@gramps-project.org</html:a>&gt;
</author>
<author uid="asleinius" title="contributor">
<author title="contributor">
Arturas Sleinius &lt;<html:a href="mailto:asleinius@users.sourceforge.net">asleinius@users.sourceforge.net</html:a>&gt;
</author>
<author uid="bmcage" title="author">
<author title="author">
Benny Malengier &lt;<html:a href="mailto:benny.malengier@gramps-project.org">benny.malengier@gramps-project.org</html:a>&gt;
</author>
<author uid="borilg" title="contributor">
<author title="contributor">
Boril Gourinov &lt;<html:a href="mailto:boril.gourinov@gmail.com">boril.gourinov@gmail.com</html:a>&gt;
</author>
<author uid="pez4brian" title="author">
<author title="author">
Brian Matherly &lt;<html:a href="mailto:brian@gramps-project.org">brian@gramps-project.org</html:a>&gt;
</author>
<author uid="dallingham" title="author">
<author title="author">
Don Allingham &lt;<html:a href="mailto:don@gramps-project.org">don@gramps-project.org</html:a>&gt;
</author>
<author uid="dpeterso" title="author">
<author title="author">
Donald A. Peterson &lt;<html:a href="mailto:"></html:a>&gt;
</author>
<author uid="dsblank" title="author">
<author title="author">
Doug Blank &lt;<html:a href="mailto:doug.blank@gmail.com">doug.blank@gmail.com</html:a>&gt;
</author>
<author uid="eerot" title="contributor">
<author title="contributor">
Eero Tamminen &lt;<html:a href="mailto:eerot@users.sourceforge.net">eerot@users.sourceforge.net</html:a>&gt;
</author>
<author uid="erikdrgm" title="contributor">
<author title="contributor">
Erik De Richter &lt;<html:a href="mailto:erikdrgm@users.sourceforge.net">erikdrgm@users.sourceforge.net</html:a>&gt;
</author>
<author uid="espenbe" title="contributor">
<author title="contributor">
Espen Berg &lt;<html:a href="mailto:espenbe@gmail.com">espenbe@gmail.com</html:a>&gt;
</author>
<author uid="gburto01" title="contributor">
<author title="contributor">
Gary Burton &lt;<html:a href="mailto:gary.burton@zen.co.uk">gary.burton@zen.co.uk</html:a>&gt;
</author>
<author uid="gbritton" title="contributor">
Gerald Britton &lt;<html:a href="mailto:gerald.britton@gmail.com">gerald.britton@gmail.com</html:a>&gt;
</author>
<author uid="jgsack" title="contributor">
<author title="contributor">
James G Sack &lt;<html:a href="mailto:jgsack@san.rr.com">jgsack@san.rr.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
<author title="contributor">
Janne Kovesjärvi &lt;<html:a href="mailto:janne.kovesjarvi@gmail.com">janne.kovesjarvi@gmail.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
<author title="contributor">
Jason Simanek &lt;<html:a href="mailto:jsimanek@gmail.com">jsimanek@gmail.com</html:a>&gt;
</author>
<author uid="romjerome" title="contributor">
<author title="contributor">
Jérôme Rapinat &lt;<html:a href="mailto:romjerome@yahoo.fr">romjerome@yahoo.fr</html:a>&gt;
</author>
<author uid="jcreus" title="contributor">
<author title="contributor">
Joan Creus &lt;<html:a href="mailto:joan.creus@gmail.com">joan.creus@gmail.com</html:a>&gt;
</author>
<author uid="josip" title="contributor">
<author title="contributor">
Josip Pisoj &lt;<html:a href="mailto:josip@pisoj.com">josip@pisoj.com</html:a>&gt;
</author>
<author uid="jsanchez" title="contributor">
<author title="contributor">
Julio Sánchez &lt;<html:a href="mailto:julio.sanchez@gmail.com">julio.sanchez@gmail.com</html:a>&gt;
</author>
<author uid="keesb" title="contributor">
<author title="contributor">
Kees Bakker &lt;<html:a href="mailto:kees.bakker@xs4all.nl">kees.bakker@xs4all.nl</html:a>&gt;
</author>
<author uid="kdorichev" title="contributor">
<author title="contributor">
Konstantin Dorichev &lt;<html:a href="mailto:kdorichev@gmail.com">kdorichev@gmail.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
<author title="contributor">
Lubo Vasko &lt;<html:a href="mailto:pgval@inMail.sk">pgval@inMail.sk</html:a>&gt;
</author>
<author uid="ltosky" title="contributor">
<author title="contributor">
Luigi Toscano &lt;<html:a href="mailto:luigi.toscano@tiscali.it">luigi.toscano@tiscali.it</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
<author title="contributor">
Luiz Gonzaga dos Santos Filho &lt;<html:a href="mailto:lfilho@gmail.com">lfilho@gmail.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
<author title="contributor">
Łukasz Rymarczyk &lt;<html:a href="mailto:yenidai@poczta.onet.pl">yenidai@poczta.onet.pl</html:a>&gt;
</author>
<author uid="m_d_n" title="contributor">
<author title="contributor">
Michiel Nauta &lt;<html:a href="mailto:m.d.nauta@hetnet.nl">m.d.nauta@hetnet.nl</html:a>&gt;
</author>
<author uid="leonhaeuser" title="contributor">
<author title="contributor">
Mirko Leonhäuser &lt;<html:a href="mailto:mirko@leonhaeuser.de">mirko@leonhaeuser.de</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
<author title="contributor">
Morten Bo Johansen &lt;<html:a href="mailto:mbj@spamcop.net">mbj@spamcop.net</html:a>&gt;
</author>
<author uid="loshawlos" title="author">
<author title="author">
Martin Hawlisch &lt;<html:a href="mailto:martin.hawlisch@gmx.de">martin.hawlisch@gmx.de</html:a>&gt;
</author>
<author uid="nick-h" title="contributor">
<author title="contributor">
Nick Hall &lt;<html:a href="mailto:nick__hall@hotmail.com">nick__hall@hotmail.com</html:a>&gt;
</author>
<author uid="ldnp" title="contributor">
<author title="contributor">
Paul Culley &lt;<html:a href="mailto:paulr2787@gmail.com">paulr2787@gmail.com</html:a>&gt;
</author>
<author title="contributor">
Peter Landgren &lt;<html:a href="mailto:peter.talken@telia.com">peter.talken@telia.com</html:a>&gt;
</author>
<author uid="acraphae" title="contributor">
<author title="contributor">
Raphael Ackermann &lt;<html:a href="mailto:raphael.ackermann@gmail.com">raphael.ackermann@gmail.com</html:a>&gt;
</author>
<author uid="hippy" title="author">
<author title="author">
Richard Taylor &lt;<html:a href="mailto:rjt-gramps@thegrindstone.me.uk">rjt-gramps@thegrindstone.me.uk</html:a>&gt;
</author>
<author uid="noirauds" title="contributor">
<author title="contributor">
Serge Noiraud &lt;<html:a href="mailto:Serge.Noiraud@free.fr">Serge.Noiraud@free.fr</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
<author title="contributor">
Sigmund Lorentsen &lt;<html:a href="mailto:sigmund.lorentsen@tele2.no">sigmund.lorentsen@tele2.no</html:a>&gt;
</author>
<author uid="betula" title="contributor">
<author title="contributor">
Stefan Bjork &lt;<html:a href="mailto:betula@users.sourceforge.net">betula@users.sourceforge.net</html:a>&gt;
</author>
<author uid="s_charette" title="contributor">
<author title="contributor">
Stéphane Charette &lt;<html:a href="mailto:stephanecharette@gmail.com">stephanecharette@gmail.com</html:a>&gt;
</author>
<author uid="twaugh" title="author">
<author title="author">
Tim Waugh &lt;<html:a href="mailto:twaugh@redhat.com">twaugh@redhat.com</html:a>&gt;
</author>
<author uid="vassilii" title="contributor">
<author title="contributor">
Vassilii Khachaturov &lt;<html:a href="mailto:vassilii@tarunz.org">vassilii@tarunz.org</html:a>&gt;
</author>
<author uid="matlas" title="contributor">
<author title="contributor">
Zdeněk Hataš &lt;<html:a href="mailto:zdenek.hatas@gmail.com">zdenek.hatas@gmail.com</html:a>&gt;
</author>
<author uid="robhealey1" title="author">
<author title="author">
Rob G. Healey &lt;<html:a href="mailto:robhealey1@gmail.com">robhealey1@gmail.com</html:a>&gt;
</author>
<author uid="zfoldvar" title="contributor">
<author title="contributor">
Zsolt Foldvari &lt;<html:a href="mailto:zfoldvar@users.sourceforge.net">zfoldvar@users.sourceforge.net</html:a>&gt;
</author>
<author uid="ander882" title="contributor">
<author title="contributor">
Craig J. Anderson &lt;<html:a href="mailto:ander882@hotmail.com">ander882@hotmail.com</html:a>&gt;
</author>
<author uid="kulath" title="author">
<author title="author">
Tim G L Lyons &lt;<html:a href="mailto:tim.g.lyons@gmail.com">tim.g.lyons@gmail.com</html:a>&gt;
</author>
<author uid="jralls" title="author">
<author title="author">
John Ralls &lt;<html:a href="mailto:jralls@ceridwen.us">jralls@ceridwen.us</html:a>&gt;
</author>
</authors>
View File
File mode changed.
Executable → Regular
View File
File mode changed.
+31 -17
View File
@@ -1,18 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<application>
<id type="desktop">gramps.desktop</id>
<licence>CC0</licence>
<description>
<_p>Gramps is a genealogy program that is both intuitive for hobbyists and feature-complete for professional genealogists.</_p>
<_p>It gives you the ability to record the many details of the life of an individual as well as the complex relationships between various people, places and events.</_p>
<_p>All of your research is kept organized, searchable and as precise as you need it to be.</_p>
</description>
<url type="homepage">http://gramps-project.org/</url>
<screenshots>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/5/5f/AppData1.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/6/68/AppData2.png</screenshot>
<screenshot type="default" width="1226" height="740">http://www.gramps-project.org/wiki/images/e/e9/AppData3.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/6/68/AppData4.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/5/50/AppData5.png</screenshot>
</screenshots>
</application>
<component type="desktop">
<id>gramps.desktop</id>
<metadata_license>CC0</metadata_license>
<name>Gramps</name>
<summary>Genealogical research program</summary>
<description>
<_p>Gramps is a genealogy program that is both intuitive for hobbyists and feature-complete for professional genealogists.</_p>
<_p>It gives you the ability to record the many details of the life of an individual as well as the complex relationships between various people, places and events.</_p>
<_p>All of your research is kept organized, searchable and as precise as you need it to be.</_p>
</description>
<url type="homepage">https://gramps-project.org/</url>
<url type="bugtracker">https://gramps-project.org/bugs/</url>
<url type="help">https://gramps-project.org/wiki/index.php?title=Main_page</url>
<project_license>GPL-2.0+</project_license>
<developer_name>Gramps Development Team</developer_name>
<screenshots>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/5/5f/AppData1.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/6/68/AppData2.png</screenshot>
<screenshot type="default" width="1226" height="740">http://www.gramps-project.org/wiki/images/e/e9/AppData3.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/6/68/AppData4.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/5/50/AppData5.png</screenshot>
</screenshots>
<provides>
<binary>gramps</binary>
</provides>
</component>
+19 -10
View File
@@ -25,15 +25,15 @@
-->
<!--
This is the Document Type Definition file for v1.6.0
This is the Document Type Definition file for v1.7.1
of the GRAMPS XML genealogy data format.
Please use the following formal public identifier to identify it:
"-//GRAMPS//DTD GRAMPS XML V1.6.0//EN"
"-//GRAMPS//DTD GRAMPS XML V1.7.1//EN"
For example:
<!DOCTYPE database PUBLIC "-//GRAMPS//DTD GRAMPS XML V1.6.0//EN"
"http://gramps-project.org/xml/1.6.0/grampsxml.dtd"
<!DOCTYPE database PUBLIC "-//GRAMPS//DTD GRAMPS XML V1.7.1//EN"
"http://gramps-project.org/xml/1.7.1/grampsxml.dtd"
[...]>
-->
@@ -62,7 +62,7 @@ DATABASE
<!ELEMENT database (header, name-formats?, tags?, events?, people?, families?,
citations?, sources?, places?, objects?, repositories?,
notes?, bookmarks?, namemaps?)>
<!ATTLIST database xmlns CDATA #FIXED "http://gramps-project.org/xml/1.6.0/">
<!ATTLIST database xmlns CDATA #FIXED "http://gramps-project.org/xml/1.7.1/">
<!-- ************************************************************
@@ -122,6 +122,7 @@ GENDER has values of M, F, or U.
<!ELEMENT name (first?, call?, surname*, suffix?, title?, nick?, familynick?, group?,
(daterange|datespan|dateval|datestr)?, noteref*, citationref*)>
<!-- (Unknown|Also Know As|Birth Name|Married Name|Other Name) -->
<!ATTLIST name
alt (0|1) #IMPLIED
type CDATA #IMPLIED
@@ -138,6 +139,8 @@ GENDER has values of M, F, or U.
<!ELEMENT familynick (#PCDATA)>
<!ELEMENT group (#PCDATA)>
<!ELEMENT surname (#PCDATA)>
<!-- (Unknown|Inherited|Given|Taken|Patronymic|Matronymic|Feudal|
Pseudonym|Patrilineal|Matrilineal|Occupation|Location) -->
<!ATTLIST surname
prefix CDATA #IMPLIED
prim (1|0) #IMPLIED
@@ -196,12 +199,13 @@ FAMILY
<!ELEMENT mother EMPTY>
<!ATTLIST mother hlink IDREF #REQUIRED>
<!-- (None|Birth|Adopted|Stepchild|Sponsored|Foster|Other|Unknown) -->
<!ELEMENT childref (citationref*,noteref*)>
<!ATTLIST childref
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
mrel (None|Birth|Adopted|Stepchild|Sponsored|Foster|Other|Unknown) #IMPLIED
frel (None|Birth|Adopted|Stepchild|Sponsored|Foster|Other|Unknown) #IMPLIED
mrel CDATA #IMPLIED
frel CDATA #IMPLIED
>
<!ELEMENT type (#PCDATA)>
@@ -248,20 +252,25 @@ PLACES
<!ELEMENT places (placeobj)*>
<!ELEMENT placeobj (ptitle?, code?, alt_name*, coord?, placeref*, location*,
<!ELEMENT placeobj (ptitle?, pname+, code?, coord?, placeref*, location*,
objref*, url*, noteref*, citationref*, tagref*)>
<!ATTLIST placeobj
id CDATA #IMPLIED
handle ID #REQUIRED
priv (0|1) #IMPLIED
change CDATA #REQUIRED
name CDATA #REQUIRED
type CDATA #REQUIRED
>
<!ELEMENT pname (daterange|datespan|dateval|datestr)?>
<!ATTLIST pname
lang CDATA #IMPLIED
value CDATA #REQUIRED
>
<!ELEMENT ptitle (#PCDATA)>
<!ELEMENT code (#PCDATA)>
<!ELEMENT alt_name (#PCDATA)>
<!ELEMENT coord EMPTY>
<!ATTLIST coord
+14 -35
View File
@@ -25,13 +25,13 @@
-->
<!--
This is the RELAX NG schema for the Gramps XML genealogy data format.
This is the RELAX NG schema for the GRAMPS XML genealogy data format.
-->
<grammar
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
ns="http://gramps-project.org/xml/1.6.0/"
ns="http://gramps-project.org/xml/1.7.1/"
xmlns="http://relaxng.org/ns/structure/1.0">
<start><element name="database">
@@ -210,16 +210,7 @@
</define>
<define name="child-rel">
<choice>
<value>Birth</value>
<value>Adopted</value>
<value>Stepchild</value>
<value>Sponsored</value>
<value>Foster</value>
<value>None</value>
<value>Other</value>
<value>Unknown</value>
</choice>
<text/>
</define>
<define name="name-content">
@@ -230,13 +221,7 @@
<optional><attribute name="priv">
<ref name="priv-content"/>
</attribute></optional>
<optional><attribute name="type"><choice>
<value>Unknown</value>
<value>Also Known As</value>
<value>Birth Name</value>
<value>Married Name</value>
<value>Other Name</value>
</choice></attribute></optional>
<optional><attribute name="type"><text/></attribute></optional>
<optional><attribute name="sort"><text/></attribute></optional>
<optional><attribute name="display"><text/></attribute></optional>
<optional><element name="first"><text/></element></optional>
@@ -265,20 +250,7 @@
<value>1</value>
<value>0</value>
</choice></attribute></optional>
<optional><attribute name="derivation"><choice>
<value>Unknown</value>
<value>Inherited</value>
<value>Given</value>
<value>Taken</value>
<value>Patronymic</value>
<value>Matronymic</value>
<value>Feudal</value>
<value>Pseudonym</value>
<value>Patrilineal</value>
<value>Matrilineal</value>
<value>Occupation</value>
<value>Location</value>
</choice></attribute></optional>
<optional><attribute name="derivation"><text/></attribute></optional>
<optional><attribute name="connector"><text/></attribute></optional>
</define>
@@ -479,11 +451,12 @@
<define name="place-content">
<ref name="primary-object"/>
<attribute name="name"><text/></attribute>
<attribute name="type"><text/></attribute>
<optional><element name="ptitle"><text/></element></optional>
<oneOrMore><element name="pname">
<ref name="placename-content"/>
</element></oneOrMore>
<optional><element name="code"><text/></element></optional>
<zeroOrMore><element name="alt_name"><text/></element></zeroOrMore>
<optional><element name="coord">
<attribute name="long"><text/></attribute>
<attribute name="lat"><text/></attribute>
@@ -772,6 +745,12 @@
<text/>
</define>
<define name="placename-content">
<attribute name="value"><text/></attribute>
<optional><attribute name="lang"><text/></attribute></optional>
<optional><ref name="date-content"/></optional>
</define>
<define name="placeref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><ref name="date-content"/></optional>
+3 -3
View File
@@ -41,16 +41,16 @@ master_doc = 'index'
# General information about the project.
project = u'Gramps'
copyright = u'2012, Gramps project'
copyright = u'2015, Gramps project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.1'
version = '4.2'
# The full version, including alpha/beta/rc tags.
release = '4.1.0'
release = '4.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+3 -3
View File
@@ -41,16 +41,16 @@ master_doc = 'cs'
# General information about the project.
project = u'Gramps'
copyright = u'2012, Gramps project'
copyright = u'2015, Gramps project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.0'
version = '4.2'
# The full version, including alpha/beta/rc tags.
release = '4.0.0'
release = '4.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+2 -2
View File
@@ -92,9 +92,9 @@ gramps(1) @VERSION@ gramps(1)
might produce different gramps IDs in the resulting database.
**-e** , **--export=** *FICHIER*
**-e** , **--export=** *FILE*
Export data into *FILE* . For **gramps-xml** , **gedcom**
, **wft** , **gramps-pkg** , et **geneweb** , the *FILE* is the
, **wft** , **gramps-pkg** , and **geneweb** , the *FILE* is the
name of the resulting file.
When more than one output file is given, each has to be preceded
+3 -3
View File
@@ -41,16 +41,16 @@ master_doc = 'fr'
# General information about the project.
project = u'Gramps'
copyright = u'2012, Gramps project'
copyright = u'2015, Gramps project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.1'
version = '4.2'
# The full version, including alpha/beta/rc tags.
release = 'trunk'
release = '4.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+7 -6
View File
@@ -1,4 +1,4 @@
.TH "GRAMPS" "1" "09 mars 2015" "4.1" "Gramps"
.TH "GRAMPS" "1" "09 March 2015" "4.2" "Gramps"
.SH NAME
gramps \- Gramps Documentation
.
@@ -28,7 +28,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.\" Man page generated from reStructuredText.
.\" Man page generated from reStructeredText.
.
.sp
gramps(1) @VERSION@ gramps(1)
@@ -312,15 +312,15 @@ besoins
.INDENT 0.0
.TP
.B \fBAUTEURS\fP
Donald Allingham <\fI\%don@gramps-project.org\fP>
\fI\%http://gramps-project.org/\fP
Donald Allingham <\fI\%don@gramps\-project.org\fP>
\fI\%http://gramps\-project.org/\fP
.sp
Cette page man a d\(aqabord été écrite par :
Brandon L. Griffith <\fI\%brandon@debian.org\fP>
pour Debian GNU/Linux système.
.sp
Cette page man est maintenue par :
Gramps project <\fI\%xxx@gramps-project.org\fP>
Gramps project <\fI\%xxx@gramps\-project.org\fP>
.sp
La traduction française :
Jérôme Rapinat <\fI\%romjerome@yahoo.fr\fP>
@@ -330,7 +330,7 @@ La documentation\-utilisateur est disponible par un navigateur
standard sous la forme du manuel Gramps.
.sp
La documentation pour développeur est disponible sur le site
\fI\%http://www.gramps-project.org/wiki/index.php?title=Portal:Developers\fP .
\fI\%http://www.gramps\-project.org/wiki/index.php?title=Portal:Developers\fP .
.UNINDENT
.sp
gramps(1) @VERSION@ gramps(1)
@@ -339,4 +339,5 @@ Jerome Rapinat
.SH COPYRIGHT
2015, Gramps project
.\" Generated by docutils manpage writer.
.\"
.
+3 -3
View File
@@ -41,16 +41,16 @@ master_doc = 'nl'
# General information about the project.
project = u'Gramps'
copyright = u'2012, Gramps project'
copyright = u'2015, Gramps project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.0'
version = '4.2'
# The full version, including alpha/beta/rc tags.
release = '4.0.0'
release = '4.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+3 -3
View File
@@ -41,16 +41,16 @@ master_doc = 'pl'
# General information about the project.
project = u'Gramps'
copyright = u'2012, Gramps project'
copyright = u'2015, Gramps project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.0'
version = '4.2'
# The full version, including alpha/beta/rc tags.
release = '4.0.0'
release = '4.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+3 -3
View File
@@ -41,16 +41,16 @@ master_doc = 'pt_BR'
# General information about the project.
project = u'Gramps'
copyright = u'2012, Gramps project'
copyright = u'2015, Gramps project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.0'
version = '4.2'
# The full version, including alpha/beta/rc tags.
release = '4.0.0'
release = '4.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+3 -3
View File
@@ -41,16 +41,16 @@ master_doc = 'sv'
# General information about the project.
project = u'Gramps'
copyright = u'2012, Gramps project'
copyright = u'2015, Gramps project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.0'
version = '4.2'
# The full version, including alpha/beta/rc tags.
release = '4.0.0'
release = '4.2.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+1 -1
View File
@@ -43,7 +43,7 @@ except:
DOCUTILS = False
LANGUAGES = ['sv', 'nl', 'pl', 'cs', 'pt_BR', 'fr']
VERSION = '4.0.0'
VERSION = '4.2.0'
DATE = ''
# You can set these variables from the command line.
+1 -1
View File
@@ -390,7 +390,7 @@ function buttonOut(button) {
<p id="createdate">
<a href="http://www.gramps-project.org/wiki/index.php?title=Gramps-Connect">Gramps-Connect, version {{gramps_version}}</a>.
</p>
<p id="copyright">&copy; 2009-2013 <a href="http://www.gramps-project.org/">www.gramps-project.org</a>
<p id="copyright">&copy; 2009-2015 <a href="http://www.gramps-project.org/">www.gramps-project.org</a>
</p>
{% endblock %}
</div>
+5 -5
View File
@@ -27,7 +27,7 @@
<_tip number="14"><b>Calculating Relationships</b><br/>To check if two people in the database are related (by blood, not marriage) try the tool under &quot;Tools &gt; Utilities &gt; Relationship Calculator...&quot;. The exact relationship as well as all common ancestors are reported.</_tip>
<_tip number="15"><b>SoundEx can help with family research</b><br/>SoundEx solves a long standing problem in genealogy, how to handle spelling variations. The SoundEx utility takes a surname and generates a simplified form that is equivalent for similar sounding names. Knowing the SoundEx Code for a surname is very helpful for researching Census Data files (microfiche) at a library or other research facility. To get the SoundEx codes for surnames in your database, go to &quot;Tools &gt; Utilities &gt; Generate SoundEx Codes...&quot;.</_tip>
<_tip number="15"><b>SoundEx can help with family research</b><br/>SoundEx solves a long standing problem in genealogy, how to handle spelling variations. The SoundEx Gramplet takes a surname and generates a simplified form that is equivalent for similar sounding names. Knowing the SoundEx Code for a surname is very helpful for researching Census Data files (microfiche) at a library or other research facility. To view the SoundEx codes for surnames in your database, add the SoundEx Gramplet.</_tip>
<_tip number="16"><b>Setting Your Preferences</b><br/>&quot;Edit &gt; Preferences...&quot; lets you modify a number of settings, such as the path to your media files, and allows you to adjust many aspects of the Gramps presentation to your needs. Each separate view can also be configured under &quot;View &gt; Configure View...&quot;</_tip>
@@ -45,7 +45,7 @@
<_tip number="23"><b>Organising the Views</b><br/>Many of the views can present your data as either a hierarchical tree or as a simple list. Each view can also be configured to the way you like it. Have a look to the right of the top toolbar or under the &quot;View&quot; menu.</_tip>
<_tip number="24"><b>Navigating Back and Forward</b><br/>Gramps maintains a list of previous active objects such as People, Events and . You can move forward and backward through the list using &quot;Go &gt; Forward&quot; and &quot;Go &gt; Back&quot; or the arrow buttons.</_tip>
<_tip number="24"><b>Navigating Back and Forward</b><br/>Gramps maintains a list of previous active objects such as People and Events. You can move forward and backward through the list using &quot;Go &gt; Forward&quot; and &quot;Go &gt; Back&quot; or the arrow buttons.</_tip>
<_tip number="25"><b>Keyboard Shortcuts</b><br/>Tired of having to take your hand off the keyboard to use the mouse? Many functions in Gramps have keyboard shortcuts. If one exists for a function it is displayed on the right side of the menu.</_tip>
@@ -67,11 +67,11 @@
<_tip number="36"><b>Bookmarking Individuals</b><br/>The Bookmarks menu is a convenient place to store the names of frequently used individuals. Selecting a bookmark will make that person the Active Person. To bookmark someone make them the Active Person then go to &quot;Bookmarks &gt; Add Bookmark&quot; or press Ctrl+D. You can also bookmark most of the other objects.</_tip>
<_tip number="37"><b>Incorrect Dates</b><br/>Everyone occasionally enters dates with an invalid format. Incorrect date formats will show up in Gramps with a reddish background. You can fix the date using the Date Selection dialog which can be opened by clicking on the date button. The format of the date is set under &quot;Edit &gt; Preferences &gt; Display&quot;.</_tip>
<_tip number="37"><b>Incorrect Dates</b><br/>Everyone occasionally enters dates with an invalid format. Incorrect date formats will show up in Gramps with a either a reddish background or a red dot on the right edge of the field. You can fix the date using the Date Selection dialog which can be opened by clicking on the date button. The format of the date is set under &quot;Edit &gt; Preferences &gt; Display&quot;.</_tip>
<_tip number="38"><b>Listing Events</b><br/>Events are added using the editor opened with &quot;Person &gt; Edit Person &gt; Events&quot;. There is a long list of preset event types. You can add your own event types by typing in the text field, they will be added to the available events, but not translated.</_tip>
<_tip number="39"><b>Managing Names</b><br/>It is easy to manage people with several names in Gramps. In the Person Editor select the Names tab. You can add names of different types and set the prefered name by dragging it to the Prefered Name section.</_tip>
<_tip number="39"><b>Managing Names</b><br/>It is easy to manage people with several names in Gramps. In the Person Editor select the Names tab. You can add names of different types and set the preferred name by dragging it to the Preferred Name section.</_tip>
<_tip number="40"><b>Ancestor View</b><br/>The Ancestry View displays a traditional pedigree chart. Hold the mouse over an individual to see more information about them or right click on an individual to access other family members and settings. Play with the settings to see the different options.</_tip>
@@ -111,7 +111,7 @@
<_tip number="62"><b>The 'How and Why' of Your Genealogy</b><br/> Genealogy isn't only about dates and names. It is about people. Be descriptive. Include why things happened, and how descendants might have been shaped by the events they went through. Narratives go a long way in making your family history come alive.</_tip>
<_tip number="63"><b>Don't speak English?</b><br/>Volunteers have translated Gramps into more than 20 languages. If Gramps supports your language and it is not being displayed, set the default language in your operating system and restart Gramps.</_tip>
<_tip number="63"><b>Don't speak English?</b><br/>Volunteers have translated Gramps into more than 40 languages. If Gramps supports your language and it is not being displayed, set the default language in your operating system and restart Gramps.</_tip>
<_tip number="64"><b>Gramps Translators</b><br/>Gramps has been designed so that new translations can easily be added with little development effort. If you are interested in participating please email gramps-devel@lists.sf.net</_tip>
+19 -15
View File
@@ -7,41 +7,45 @@ Build-Depends-Indep:
gettext,
intltool,
libxml-parser-perl,
python-all,
python-setuptools
python3-all,
python3-setuptools
Build-Depends:
dh-python,
debhelper (>= 9.0.0)
Standards-Version: 3.9.5
Vcs-Git: git://anonscm.debian.org/collab-maint/gramps.git
Vcs-browser: http://anonscm.debian.org/gitweb/?p=collab-maint/gramps.git
Homepage: http://www.gramps-project.org/
X-Python-Version: >= 2.7
X-Python-Version: >= 3.2
Package: python-gramps
Package: python3-gramps
Architecture: all
Depends:
gir1.2-gtk-3.0,
gir1.2-gtk-3.0 (>= 3.10.0),
librsvg2-2,
python-gi,
python-gi-cairo,
python3-gi,
python3-gi-cairo,
python3-bsddb3,
xdg-utils,
${misc:Depends},
${python:Depends}
${python3:Depends}
Recommends:
graphviz,
libosmgpsmap-1.0-0-dev,
python-pyicu
gir1.2-goocanvas-2.0,
libosmgpsmap-1.0-0,
gir1.2-osmgpsmap-1.0,
python3-pyicu
Suggests:
fonts-freefont-ttf,
gir1.2-gexiv2-0.4,
gir1.2-gtk-gtkspell3-3.0,
python-pil,
gir1.2-gexiv2-0.10,
gir1.2-gtkspell3-3.0,
python3-pil,
rcs
Description: Genealogical research program
GRAMPS is an Open Source genealogy program written in Python, using
Gramps is an Open Source genealogy program written in Python, using
the GTK/GNOME interface. It is an extremely flexible program fitting
the needs for both the amateur genealogist and serious genealogical
researcher.
GRAMPS has the ability to import GEDCOM files exported from many
Gramps has the ability to import GEDCOM files exported from many
proprietary genealogy programs and can produce a large number of
reports in many popular formats.
@@ -1,13 +0,0 @@
diff --git a/setup.py b/setup.py
index 3f702ae..9622d75 100644
--- a/setup.py
+++ b/setup.py
@@ -248,7 +248,7 @@ class install(_install):
'utils', 'resource-path')
with io.open(resource_file, 'w', encoding='utf-8',
errors='strict') as fp:
- path = os.path.abspath(os.path.join(self.install_data, 'share'))
+ path = '/usr/share'
if sys.version_info[0] < 3:
path = unicode(path)
fp.write(path)
-22
View File
@@ -1,22 +0,0 @@
diff --git a/gramps/plugins/view/htmlrenderer.py b/gramps/plugins/view/htmlrenderer.py
index c41942a..8f35b16 100644
--- a/gramps/plugins/view/htmlrenderer.py
+++ b/gramps/plugins/view/htmlrenderer.py
@@ -122,11 +122,12 @@ user_pref("general.useragent.locale, %(lang)s);
TOOLKIT = NOWEB
-try:
- from gi.repository import WebKit as webkit
- TOOLKIT = WEBKIT
-except:
- pass
+#Disable webkit as it is causing a crash in Gramps 4.0.2
+#try:
+# from gi.repository import WebKit as webkit
+# TOOLKIT = WEBKIT
+#except:
+# pass
#no interfaces present, raise Error so that options for GeoView do not show
if TOOLKIT == NOWEB :
-2
View File
@@ -1,2 +0,0 @@
0001-Correct-resource-path-in-setup.py.patch
0002-Disable-HTML-View.patch
+8 -9
View File
@@ -5,32 +5,31 @@ export DH_VERBOSE=1
export DH_OPTIONS=-v
%:
dh $@ --with python2
dh $@ --with python3 --buildsystem=pybuild
# Override auto test because upstream do not use the standard unittest discover
override_dh_auto_test:
# Override of auto_build
override_dh_auto_build:
python setup.py build
python3 setup.py build
# Override of auto_install to remove information from package
override_dh_auto_install:
#dh_auto_install
python3 setup.py install --resourcepath=/usr/share --root=debian/python3-gramps --install-layout=deb
# Remove duplicate copyright information
#rm $(CURDIR)/debian/python-gramps/usr/share/doc/gramps/COPYING
rm $(CURDIR)/debian/python3-gramps/usr/share/doc/gramps/COPYING
# Remove install file as it is not needed by package users
#rm $(CURDIR)/debian/python-gramps/usr/share/doc/gramps/INSTALL
rm $(CURDIR)/debian/python3-gramps/usr/share/doc/gramps/INSTALL
# Remove duplicate license information
#rm $(CURDIR)/debian/python-gramps/usr/share/doc/gramps/LICENSE
python setup.py install --root=debian/python-gramps --install-layout=deb
rm $(CURDIR)/debian/python3-gramps/usr/share/doc/gramps/LICENSE
ln -s /usr/share/common-licenses/GPL-2 $(CURDIR)/debian/python3-gramps/usr/share/doc/gramps/COPYING
# Make css style sheets and png icons non-executable
override_dh_fixperms:
dh_fixperms
chmod a-x $(CURDIR)/debian/python-gramps/usr/share/gramps/css/Web_*.css
chmod a-x $(CURDIR)/debian/python-gramps/usr/share/gramps/images/22x22/gramps*.png
chmod a-x $(CURDIR)/debian/python-gramps/usr/share/gramps/images/16x16/gramps*.png
chmod a-x $(CURDIR)/debian/python3-gramps/usr/share/gramps/css/Web_*.css
# Avoid compressing COPYING file so that it can appear in the "About" dialog
override_dh_compress:
+1 -1
View File
@@ -1 +1 @@
1.0
1.8
-1
View File
@@ -1 +0,0 @@
unapply-patches
-4
View File
@@ -1,4 +0,0 @@
version=3
opts="dversionmangle=s/\+dfsg//g" \
http://sf.net/gramps/gramps-(.+)\.tar\.gz
+5 -3
View File
@@ -3,7 +3,9 @@ Installation and building the docs
You need to install sphinx. Assuming you have installed the python setuptools, just do:
sudo easy_install sphinx
sudo easy_install sphinx
or
sudo pip install sphinx
Once installed, go to the docs directory, and do:
@@ -17,7 +19,7 @@ Documentation Guidelines
Doc strings in python files should be written in reStructured text: http://docutils.sourceforge.net/docs/user/rst/quickref.html
The typical docstring for GRAMPS should look like this:
The typical docstring for Gramps should look like this:
"""Brief synopsis
@@ -69,4 +71,4 @@ Change in many files something:
perl -pi -w -e "s/L{PersonRef}/:class:\`\~gen.lib.personref.PersonRef\`/g;" *.py
here L{PersonRef} is changed in :class:`~gen.lib.personref.PersonRef
`
`
+4 -4
View File
@@ -25,7 +25,7 @@ sys.path.append(os.path.abspath(os.pardir))
# Add any Sphinx extension module names here, as strings. They can be extensions
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
extensions = ['sphinx.ext.autodoc', 'sphinx.ext.todo', 'sphinx.ext.coverage']
extensions = ['sphinx.ext.autodoc', 'sphinx.ext.todo', 'sphinx.ext.coverage', 'sphinx.ext.viewcode']
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
@@ -41,16 +41,16 @@ master_doc = 'index'
# General information about the project.
project = u'Gramps'
copyright = u'2012, The Gramps Project'
copyright = u'2015, The Gramps Project'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '4.1'
version = '4.2.0'
# The full version, including alpha/beta/rc tags.
release = '4.0.99-trunk'
release = '4.2.0-master'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
+1 -1
View File
@@ -1,4 +1,4 @@
Developer Guide
===============
Please consult the API documentation, and the development part of `our wiki <http://gramps-project.org>`_\ .
Please consult the API documentation, and the development section of `our wiki <https://gramps-project.org/wiki/index.php?title=Portal:Developers>`_\ .
+8
View File
@@ -10,3 +10,11 @@ Name
:members:
:undoc-members:
:show-inheritance:
Place
====================================
.. automodule:: gramps.gen.display.place
:members:
:undoc-members:
:show-inheritance:
+1 -1
View File
@@ -1,4 +1,4 @@
User Guide
==========
Please consult the manual which you find on `our wiki <http://www.gramps-project.org/wiki/index.php?title=User_manual>`_\ .
Please consult the manual which you find on `our wiki <https://gramps-project.org/wiki/index.php?title=User_manual>`_\ .
Executable → Regular
View File
File mode changed.
+92 -49
View File
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE database PUBLIC "-//Gramps//DTD Gramps XML 1.6.0//EN"
"http://gramps-project.org/xml/1.6.0/grampsxml.dtd">
<database xmlns="http://gramps-project.org/xml/1.6.0/">
<!DOCTYPE database PUBLIC "-//Gramps//DTD Gramps XML 1.7.1//EN"
"http://gramps-project.org/xml/1.7.1/grampsxml.dtd">
<database xmlns="http://gramps-project.org/xml/1.7.1/">
<header>
<created date="2015-01-24" version="4.1.2"/>
<created date="2015-07-04" version="4.2.0"/>
<researcher>
<resname>Alex Roitman,,,</resname>
</researcher>
@@ -1523,174 +1523,217 @@
</source>
</sources>
<places>
<placeobj handle="_4ZLT6DVCWT9LTZRDCS" change="1422124381" id="P0003" name="Ronne" type="City">
<placeobj handle="_4ZLT6DVCWT9LTZRDCS" change="1422124381" id="P0003" type="City">
<ptitle>Ronne, Bornholm, Denmark</ptitle>
<pname value="Ronne"/>
<placeref hlink="_cef2428d9dd233688ea3ed3cc24"/>
</placeobj>
<placeobj handle="_61NT6D3G1JMOTO6Z7Y" change="1422123855" id="P0012" name="Grostorp" type="Municipality">
<placeobj handle="_61NT6D3G1JMOTO6Z7Y" change="1422123855" id="P0012" type="Municipality">
<ptitle>Grostorp, Kristianstad Lan, Sweden</ptitle>
<pname value="Grostorp"/>
<placeref hlink="_cef23a81ba8c837cc364895d88"/>
</placeobj>
<placeobj handle="_67MT6DB6KWOVMBAXSY" change="1422125128" id="P0002" name="San Francisco" type="City">
<placeobj handle="_67MT6DB6KWOVMBAXSY" change="1422125128" id="P0002" type="City">
<ptitle>San Francisco, San Francisco Co., CA, USA</ptitle>
<pname value="San Francisco"/>
<placeref hlink="_cef24668db23c27d421f51c667d"/>
</placeobj>
<placeobj handle="_7JMT6DN2LOF54KXHTU" change="1422125958" id="P0010" name="Reno" type="City">
<placeobj handle="_7JMT6DN2LOF54KXHTU" change="1422125958" id="P0010" type="City">
<ptitle>Reno, Washoe Co., NV, USA</ptitle>
<pname value="Reno"/>
<placeref hlink="_cef2513e057732c3f27780750d"/>
</placeobj>
<placeobj handle="_A9MT6DHVWGWRP59DEV" change="1422123595" id="P0011" name="Sweden" type="Country">
<placeobj handle="_A9MT6DHVWGWRP59DEV" change="1422123595" id="P0011" type="Country">
<ptitle>Sweden</ptitle>
<pname value="Sweden"/>
</placeobj>
<placeobj handle="_AANT6D026O5SHNUCDH" change="1422123942" id="P0015" name="Simrishamn" type="Municipality">
<placeobj handle="_AANT6D026O5SHNUCDH" change="1422123942" id="P0015" type="Municipality">
<ptitle>Simrishamn, Kristianstad Lan, Sweden</ptitle>
<pname value="Simrishamn"/>
<placeref hlink="_cef23a81ba8c837cc364895d88"/>
</placeobj>
<placeobj handle="_AKMT6DMEYZDTG9J6DS" change="1422124249" id="P0013" name="Copenhagen" type="City">
<placeobj handle="_AKMT6DMEYZDTG9J6DS" change="1422124249" id="P0013" type="City">
<ptitle>Copenhagen, Denmark</ptitle>
<pname value="Copenhagen"/>
<placeref hlink="_cef2418f9333e16e00f6ce2eb14"/>
</placeobj>
<placeobj handle="_BAOT6D1WY6J4O4ARRN" change="1422125198" id="P0030" name="San Ramon" type="City">
<placeobj handle="_BAOT6D1WY6J4O4ARRN" change="1422125198" id="P0030" type="City">
<ptitle>San Ramon, Conta Costa Co., CA, USA</ptitle>
<pname value="San Ramon"/>
<placeref hlink="_cef2478a94b48a58d3be6a10493"/>
</placeobj>
<placeobj handle="_DYLT6DF4DX2MNZICJ8" change="1422126222" id="P0014" name="Hoya" type="City">
<placeobj handle="_DYLT6DF4DX2MNZICJ8" change="1422126222" id="P0014" type="City">
<ptitle>Hoya, Sweden</ptitle>
<alt_name>Jona</alt_name>
<alt_name>Hoia</alt_name>
<pname value="Hoya"/>
<pname value="Jona"/>
<pname value="Hoia"/>
<placeref hlink="_A9MT6DHVWGWRP59DEV"/>
</placeobj>
<placeobj handle="_ELNT6DS8GN8WI7Z4SO" change="1422125073" id="P0008" name="Hayward" type="City">
<placeobj handle="_ELNT6DS8GN8WI7Z4SO" change="1422125073" id="P0008" type="City">
<ptitle>Hayward, Alameda Co., CA, USA</ptitle>
<pname value="Hayward"/>
<placeref hlink="_cef245b044820b7405a1180f298"/>
</placeobj>
<placeobj handle="_FBNT6DL92NDY0Z5SGP" change="1422125294" id="P0021" name="Santa Rosa" type="City">
<placeobj handle="_FBNT6DL92NDY0Z5SGP" change="1422125294" id="P0021" type="City">
<ptitle>Santa Rosa, Sonoma Co., CA, USA</ptitle>
<pname value="Santa Rosa"/>
<placeref hlink="_cef24b7a76efa8b9d98d67ea5a"/>
</placeobj>
<placeobj handle="_GWNT6D12ZV06PK969X" change="1422125101" id="P0020" name="Sacramento" type="City">
<placeobj handle="_GWNT6D12ZV06PK969X" change="1422125101" id="P0020" type="City">
<ptitle>Sacramento, Sacramento Co., CA, USA</ptitle>
<pname value="Sacramento"/>
<placeref hlink="_cef246117947f75e54c09680419"/>
</placeobj>
<placeobj handle="_HFNT6D12ZC0KOWY69T" change="1422125018" id="P0016" name="Fremont" type="City">
<placeobj handle="_HFNT6D12ZC0KOWY69T" change="1422125018" id="P0016" type="City">
<ptitle>Fremont, Alameda Co., CA, USA</ptitle>
<pname value="Fremont"/>
<placeref hlink="_cef245b044820b7405a1180f298"/>
</placeobj>
<placeobj handle="_HINT6DP8JGGL0KKB8J" change="1422123879" id="P0000" name="Loderup" type="Municipality">
<placeobj handle="_HINT6DP8JGGL0KKB8J" change="1422123879" id="P0000" type="Municipality">
<ptitle>Loderup, Malmous Lan, Sweden</ptitle>
<pname value="Loderup"/>
<placeref hlink="_cef23c1ee8b7da58c764e88c637"/>
</placeobj>
<placeobj handle="_IEOT6DOW3RE8AQ94HH" change="1422126043" id="P0025" name="Bí" type="Unknown">
<placeobj handle="_IEOT6DOW3RE8AQ94HH" change="1422126043" id="P0025" type="Unknown">
<ptitle>Bí</ptitle>
<pname value="Bí"/>
</placeobj>
<placeobj handle="_LTNT6DKZ5CR8PZSVUS" change="1422125169" id="P0022" name="San Jose" type="City">
<placeobj handle="_LTNT6DKZ5CR8PZSVUS" change="1422125169" id="P0022" type="City">
<ptitle>San Jose, Santa Clara Co., CA, USA</ptitle>
<pname value="San Jose"/>
<placeref hlink="_cef246c95c132bcf6a0255d4d17"/>
</placeobj>
<placeobj handle="_PUNT6D1XHS0DJW9QP6" change="1422125605" id="P0024" name="UC Berkeley" type="University">
<placeobj handle="_PUNT6D1XHS0DJW9QP6" change="1422125605" id="P0024" type="University">
<ptitle>UC Berkeley, CA, USA</ptitle>
<pname value="UC Berkeley"/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_PXMT6DBL0WSBL76WD7" change="1422123936" id="P0026" name="Smestorp" type="Municipality">
<placeobj handle="_PXMT6DBL0WSBL76WD7" change="1422123936" id="P0026" type="Municipality">
<ptitle>Smestorp, Kristianstad Lan, Sweden</ptitle>
<pname value="Smestorp"/>
<placeref hlink="_cef23a81ba8c837cc364895d88"/>
</placeobj>
<placeobj handle="_QBOT6DN7UCCTZQ055" change="1422125399" id="P0029" name="Woodland" type="City">
<placeobj handle="_QBOT6DN7UCCTZQ055" change="1422125399" id="P0029" type="City">
<ptitle>Woodland, Yolo Co., CA, USA</ptitle>
<pname value="Woodland"/>
<placeref hlink="_cef24c2e3592e759b7797f95465"/>
</placeobj>
<placeobj handle="_QJMT6DGII29FWCPX2E" change="1422124361" id="P0028" name="Ronne Bornholm" type="City">
<placeobj handle="_QJMT6DGII29FWCPX2E" change="1422124361" id="P0028" type="City">
<ptitle>Ronne Bornholm, Denmark</ptitle>
<pname value="Ronne Bornholm"/>
<placeref hlink="_cef2418f9333e16e00f6ce2eb14"/>
</placeobj>
<placeobj handle="_R8MT6DRIZVNRYDK0VN" change="1422123930" id="P0027" name="Tommarp" type="Municipality">
<placeobj handle="_R8MT6DRIZVNRYDK0VN" change="1422123930" id="P0027" type="Municipality">
<ptitle>Tommarp, Kristianstad Lan, Sweden</ptitle>
<pname value="Tommarp"/>
<placeref hlink="_cef23a81ba8c837cc364895d88"/>
</placeobj>
<placeobj handle="_RPMT6DTQR8J7LK98HJ" change="1422125771" id="P0019" name="Denver" type="City">
<placeobj handle="_RPMT6DTQR8J7LK98HJ" change="1422125771" id="P0019" type="City">
<ptitle>Denver, Denver Co., CO, USA</ptitle>
<pname value="Denver"/>
<placeref hlink="_cef24ffc57f28a50ea65f0af645"/>
</placeobj>
<placeobj handle="_S1NT6DPOBYC1JGMR1P" change="1422125992" id="P0001" name="Sparks" type="City">
<placeobj handle="_S1NT6DPOBYC1JGMR1P" change="1422125992" id="P0001" type="City">
<ptitle>Sparks, Washoe Co., NV, USA</ptitle>
<pname value="Sparks"/>
<placeref hlink="_cef2513e057732c3f27780750d"/>
</placeobj>
<placeobj handle="_XLNT6DUONITFPPEGVH" change="1422125508" id="P0009" name="Community Presbyterian Church" type="Church">
<placeobj handle="_XLNT6DUONITFPPEGVH" change="1422125508" id="P0009" type="Church">
<ptitle>Community Presbyterian Church, Danville, CA, USA</ptitle>
<pname value="Community Presbyterian Church"/>
<placeref hlink="_cef24d930653dc59ec3a36510e4"/>
</placeobj>
<placeobj handle="_XSMT6DNISHYRCR1E78" change="1422123836" id="P0004" name="Gladsax" type="Municipality">
<placeobj handle="_XSMT6DNISHYRCR1E78" change="1422123836" id="P0004" type="Municipality">
<ptitle>Gladsax, Kristianstad Lan, Sweden</ptitle>
<pname value="Gladsax"/>
<placeref hlink="_cef23a81ba8c837cc364895d88"/>
</placeobj>
<placeobj handle="_cef23a81ba8c837cc364895d88" change="1422123677" id="P0005" name="Kristianstad Lan" type="County">
<placeobj handle="_cef23a81ba8c837cc364895d88" change="1422123677" id="P0005" type="County">
<ptitle>Kristianstad Lan, Sweden</ptitle>
<pname value="Kristianstad Lan"/>
<placeref hlink="_A9MT6DHVWGWRP59DEV"/>
</placeobj>
<placeobj handle="_cef23c1ee8b7da58c764e88c637" change="1422123662" id="P0006" name="Malmous Lan" type="County">
<placeobj handle="_cef23c1ee8b7da58c764e88c637" change="1422123662" id="P0006" type="County">
<ptitle>Malmous Lan, Sweden</ptitle>
<pname value="Malmous Lan"/>
<placeref hlink="_A9MT6DHVWGWRP59DEV"/>
</placeobj>
<placeobj handle="_cef2418f9333e16e00f6ce2eb14" change="1422124233" id="P0007" name="Denmark" type="Country">
<placeobj handle="_cef2418f9333e16e00f6ce2eb14" change="1422124233" id="P0007" type="Country">
<ptitle>Denmark</ptitle>
<pname value="Denmark"/>
</placeobj>
<placeobj handle="_cef2428d9dd233688ea3ed3cc24" change="1422124337" id="P0017" name="Bornholm" type="Region">
<placeobj handle="_cef2428d9dd233688ea3ed3cc24" change="1422124337" id="P0017" type="Region">
<ptitle>Bornholm, Denmark</ptitle>
<pname value="Bornholm"/>
<placeref hlink="_cef2418f9333e16e00f6ce2eb14"/>
</placeobj>
<placeobj handle="_cef2438892244290ca7fb5750" change="1422124440" id="P0018" name="USA" type="Country">
<placeobj handle="_cef2438892244290ca7fb5750" change="1422124440" id="P0018" type="Country">
<ptitle>USA</ptitle>
<pname value="USA"/>
</placeobj>
<placeobj handle="_cef243fb5634559442323368f63" change="1422124487" id="P0023" name="CA" type="State">
<placeobj handle="_cef243fb5634559442323368f63" change="1422124487" id="P0023" type="State">
<ptitle>CA, USA</ptitle>
<pname value="CA"/>
<placeref hlink="_cef2438892244290ca7fb5750"/>
</placeobj>
<placeobj handle="_cef244224d14af0273799b281e" change="1422124514" id="P0031" name="CO" type="State">
<placeobj handle="_cef244224d14af0273799b281e" change="1422124514" id="P0031" type="State">
<ptitle>CO, USA</ptitle>
<pname value="CO"/>
<placeref hlink="_cef2438892244290ca7fb5750"/>
</placeobj>
<placeobj handle="_cef24468f6e3a984bf57967e95d" change="1422124542" id="P0032" name="NV" type="State">
<placeobj handle="_cef24468f6e3a984bf57967e95d" change="1422124542" id="P0032" type="State">
<ptitle>NV, USA</ptitle>
<pname value="NV"/>
<placeref hlink="_cef2438892244290ca7fb5750"/>
</placeobj>
<placeobj handle="_cef245b044820b7405a1180f298" change="1422124666" id="P0033" name="Alameda Co." type="County">
<placeobj handle="_cef245b044820b7405a1180f298" change="1422124666" id="P0033" type="County">
<ptitle>Alameda Co., CA, USA</ptitle>
<pname value="Alameda Co."/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef246117947f75e54c09680419" change="1422124908" id="P0034" name="Sacramento Co." type="County">
<placeobj handle="_cef246117947f75e54c09680419" change="1422124908" id="P0034" type="County">
<ptitle>Sacramento Co., CA, USA</ptitle>
<pname value="Sacramento Co."/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef24668db23c27d421f51c667d" change="1422124741" id="P0035" name="San Francisco Co." type="County">
<placeobj handle="_cef24668db23c27d421f51c667d" change="1422124741" id="P0035" type="County">
<ptitle>San Francisco Co., CA, USA</ptitle>
<pname value="San Francisco Co."/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef246c95c132bcf6a0255d4d17" change="1422124781" id="P0036" name="Santa Clara Co." type="County">
<placeobj handle="_cef246c95c132bcf6a0255d4d17" change="1422124781" id="P0036" type="County">
<ptitle>Santa Clara Co., CA, USA</ptitle>
<pname value="Santa Clara Co."/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef2478a94b48a58d3be6a10493" change="1422124860" id="P0037" name="Conta Costa Co." type="County">
<placeobj handle="_cef2478a94b48a58d3be6a10493" change="1422124860" id="P0037" type="County">
<ptitle>Conta Costa Co., CA, USA</ptitle>
<pname value="Conta Costa Co."/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef24b7a76efa8b9d98d67ea5a" change="1422125273" id="P0038" name="Sonoma Co." type="County">
<placeobj handle="_cef24b7a76efa8b9d98d67ea5a" change="1422125273" id="P0038" type="County">
<ptitle>Sonoma Co., CA, USA</ptitle>
<pname value="Sonoma Co."/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef24c2e3592e759b7797f95465" change="1422125420" id="P0039" name="Yolo Co." type="County">
<placeobj handle="_cef24c2e3592e759b7797f95465" change="1422125420" id="P0039" type="County">
<ptitle>Yolo Co., CA, USA</ptitle>
<pname value="Yolo Co."/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef24d930653dc59ec3a36510e4" change="1422125493" id="P0040" name="Danville" type="City">
<placeobj handle="_cef24d930653dc59ec3a36510e4" change="1422125493" id="P0040" type="City">
<ptitle>Danville, CA, USA</ptitle>
<pname value="Danville"/>
<placeref hlink="_cef243fb5634559442323368f63"/>
</placeobj>
<placeobj handle="_cef24ffc57f28a50ea65f0af645" change="1422125745" id="P0041" name="Denver Co." type="County">
<placeobj handle="_cef24ffc57f28a50ea65f0af645" change="1422125745" id="P0041" type="County">
<ptitle>Denver Co., CO, USA</ptitle>
<pname value="Denver Co."/>
<placeref hlink="_cef244224d14af0273799b281e"/>
</placeobj>
<placeobj handle="_cef2513e057732c3f27780750d" change="1422125877" id="P0042" name="Washoe Co." type="County">
<placeobj handle="_cef2513e057732c3f27780750d" change="1422125877" id="P0042" type="County">
<ptitle>Washoe Co., NV, USA</ptitle>
<pname value="Washoe Co."/>
<placeref hlink="_cef24468f6e3a984bf57967e95d"/>
</placeobj>
</places>
+782
View File
@@ -0,0 +1,782 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE database PUBLIC "-//Gramps//DTD Gramps XML 1.5.0//EN"
"http://gramps-project.org/xml/1.5.0/grampsxml.dtd">
<database xmlns="http://gramps-project.org/xml/1.5.0/">
<header>
<created date="2015-05-14" version="3.4.0"/>
<researcher>
</researcher>
</header>
<events>
<event handle="_cde77b2c30c13ea85db" change="1426803047" id="E0000">
<type>Birth</type>
<dateval val="1823" type="before"/>
</event>
<event handle="_cde77b7eff96ae8455f" change="1426803072" id="E0001">
<type>Birth</type>
<dateval val="1823-03" type="before"/>
</event>
<event handle="_cde77be2a67401f7b16" change="1426803096" id="E0002">
<type>Birth</type>
<dateval val="1823-03-13" type="before"/>
</event>
<event handle="_cde7b70d22b30f00b14" change="1426802975" id="E0003">
<type>Birth</type>
<dateval val="1822" type="after"/>
</event>
<event handle="_cde7b8eb90e0a8792a9" change="1426802998" id="E0004">
<type>Birth</type>
<dateval val="1822-02" type="after"/>
</event>
<event handle="_cde7b95cb7e40432538" change="1426803021" id="E0005">
<type>Birth</type>
<dateval val="1822-02-13" type="after"/>
</event>
<event handle="_cde7b9b2b00713c42af" change="1426802885" id="E0006">
<type>Birth</type>
<dateval val="1821" type="about"/>
</event>
<event handle="_cde7b9f0da51d2ff10a" change="1426802925" id="E0007">
<type>Birth</type>
<dateval val="1821-01" type="about"/>
</event>
<event handle="_cde7ba310240e18a0ea" change="1426802949" id="E0008">
<type>Birth</type>
<dateval val="1821-01-13" type="about"/>
</event>
<event handle="_ce00f22be3443f0c30b" change="1426803671" id="E0009">
<type>Birth</type>
<dateval val="1851"/>
</event>
<event handle="_ce00f2ab83911df5354" change="1426803701" id="E0010">
<type>Birth</type>
<dateval val="1852-02"/>
</event>
<event handle="_ce00f2eb2f86d94ece0" change="1426803729" id="E0011">
<type>Birth</type>
<dateval val="1853-03-04"/>
</event>
<event handle="_cfa02e904f161e652da" change="1426793018" id="E0014">
<type>Birth</type>
<dateval val="1801-01"/>
</event>
<event handle="_cfa02efc75b0eb05cfa" change="1426793062" id="E0015">
<type>Birth</type>
<dateval val="1801-01-13"/>
</event>
<event handle="_cfa02f60fbe55ad36f7" change="1426793103" id="E0016">
<type>Birth</type>
<dateval val="1802-02"/>
</event>
<event handle="_cfa02fd93615614dc94" change="1426793153" id="E0017">
<type>Birth</type>
<dateval val="1802-02-13"/>
</event>
<event handle="_cfa030376d1228fb29b" change="1426793191" id="E0018">
<type>Birth</type>
<dateval val="1803-03"/>
</event>
<event handle="_cfa0308a9e766a18a5a" change="1426793225" id="E0019">
<type>Birth</type>
<dateval val="1803-03-13"/>
</event>
<event handle="_cfa0311ff9474a33dad" change="1426793404" id="E0020">
<type>Birth</type>
<dateval val="1804-04"/>
</event>
<event handle="_cfa0314208a175c695f" change="1426793300" id="E0021">
<type>Birth</type>
<dateval val="1804-04-13"/>
</event>
<event handle="_cfa031df6bb2f50f9c5" change="1426793365" id="E0022">
<type>Birth</type>
<dateval val="1805-05"/>
</event>
<event handle="_cfa0335efcf6eeb6bf6" change="1426793522" id="E0024">
<type>Birth</type>
<dateval val="1805-05-13"/>
</event>
<event handle="_cfa0342171e10e9a0c8" change="1426793602" id="E0025">
<type>Birth</type>
<dateval val="1806-06"/>
</event>
<event handle="_cfa03468bc76cf7a295" change="1426793631" id="E0026">
<type>Birth</type>
<dateval val="1807-07"/>
</event>
<event handle="_cfa034b07c9408b12cc" change="1426793660" id="E0027">
<type>Birth</type>
<dateval val="1808-08"/>
</event>
<event handle="_cfa034f8da44738c323" change="1426793690" id="E0028">
<type>Birth</type>
<dateval val="1809-09"/>
</event>
<event handle="_cfa03547c3765017895" change="1426793722" id="E0029">
<type>Birth</type>
<dateval val="1810-10"/>
</event>
<event handle="_cfa035965a02da81147" change="1426793754" id="E0030">
<type>Birth</type>
<dateval val="1811-11"/>
</event>
<event handle="_cfa035ee99b03f59cbc" change="1426793790" id="E0031">
<type>Birth</type>
<dateval val="1812-12"/>
</event>
<event handle="_cfa038cce441e73b1c5" change="1426794091" id="E0032">
<type>Birth</type>
<dateval val="1806-06-13"/>
</event>
<event handle="_cfa039308b34bf173be" change="1426794132" id="E0033">
<type>Birth</type>
<dateval val="1807-07-13"/>
</event>
<event handle="_cfa0399114e40ffcadf" change="1426794172" id="E0034">
<type>Birth</type>
<dateval val="1808-08-13"/>
</event>
<event handle="_cfa039f6e510c198300" change="1426794213" id="E0035">
<type>Birth</type>
<dateval val="1809-09-13"/>
</event>
<event handle="_cfa03a5c2fe4ce6e75d" change="1426794255" id="E0036">
<type>Birth</type>
<dateval val="1810-10-13"/>
</event>
<event handle="_cfa03aabe141219bb22" change="1426794287" id="E0037">
<type>Birth</type>
<dateval val="1811-11-13"/>
</event>
<event handle="_cfa03afa2ac4d140d9d" change="1426794319" id="E0038">
<type>Birth</type>
<dateval val="1812-12-13"/>
</event>
<event handle="_cfa0424ffcb19aed9f7" change="1426804001" id="E0039">
<type>Birth</type>
<datespan start="1876" stop="1877"/>
</event>
<event handle="_cfa042e5a0d52e9c63f" change="1426804044" id="E0040">
<type>Birth</type>
<datespan start="1876-06" stop="1877-07"/>
</event>
<event handle="_cfa0436b49b7746d225" change="1426804087" id="E0041">
<type>Birth</type>
<datespan start="1876-06-13" stop="1877-07-13"/>
</event>
<event handle="_cfa044b58de7b9a9759" change="1426803857" id="E0042">
<type>Birth</type>
<daterange start="1864" stop="1865"/>
</event>
<event handle="_cfa0454785d7f7fe074" change="1426803895" id="E0043">
<type>Birth</type>
<daterange start="1864-04" stop="1865-05"/>
</event>
<event handle="_cfa045f559074cd25a6" change="1426803934" id="E0044">
<type>Birth</type>
<daterange start="1864-04-13" stop="1865-05-13"/>
</event>
<event handle="_cfa05eab109493097d1" change="1426803468" id="E0045">
<type>Birth</type>
<dateval val="1849" quality="estimated"/>
</event>
<event handle="_cfa05fb82182cf228bc" change="1426803506" id="E0046">
<type>Birth</type>
<dateval val="1849-09" quality="estimated"/>
</event>
<event handle="_cfa0604633236ff9d43" change="1426803535" id="E0047">
<type>Birth</type>
<dateval val="1849-09-13" quality="estimated"/>
</event>
<event handle="_cfa060d09d433ae6313" change="1426803223" id="E0048">
<type>Birth</type>
<dateval val="1835" quality="calculated"/>
</event>
<event handle="_cfa062751af6a105a82" change="1426803248" id="E0049">
<type>Birth</type>
<dateval val="1835-05" quality="calculated"/>
</event>
<event handle="_cfa062e50d3096da9a5" change="1426803275" id="E0050">
<type>Birth</type>
<dateval val="1835-05-13" quality="calculated"/>
</event>
<event handle="_cfa063e88800cb80b33" change="1426803138" id="E0051">
<type>Birth</type>
<dateval val="1834" type="before" quality="calculated"/>
</event>
<event handle="_cfa064a6da37f0563f5" change="1426803166" id="E0052">
<type>Birth</type>
<dateval val="1834-04" type="before" quality="calculated"/>
</event>
<event handle="_cfa0654060124488afa" change="1426803189" id="E0053">
<type>Birth</type>
<dateval val="1834-04-13" type="before" quality="calculated"/>
</event>
<event handle="_cfa0670f11e1049f07b" change="1426803306" id="E0054">
<type>Birth</type>
<dateval val="1846" type="about" quality="estimated"/>
</event>
<event handle="_cfa067a8bbe2900a40c" change="1426803330" id="E0055">
<type>Birth</type>
<dateval val="1846-06" type="about" quality="estimated"/>
</event>
<event handle="_cfa0681c5085ac5e9e0" change="1426803354" id="E0056">
<type>Birth</type>
<dateval val="1846-06-13" type="about" quality="estimated"/>
</event>
<event handle="_cfa069a50b23f6b87fa" change="1426803388" id="E0057">
<type>Birth</type>
<daterange start="1848" stop="1849" quality="estimated"/>
</event>
<event handle="_cfa086bc43c31bcd49b" change="1426803415" id="E0058">
<type>Birth</type>
<daterange start="1848-08" stop="1849-09" quality="estimated"/>
</event>
<event handle="_cfa0873e5170a315aea" change="1426803439" id="E0059">
<type>Birth</type>
<daterange start="1848-08-13" stop="1849-09-13" quality="estimated"/>
</event>
<event handle="_cfa087488800cb80b33" change="1426803138" id="E0060">
<type>Birth</type>
<dateval val="1847" type="after" quality="estimated"/>
</event>
<event handle="_cfa08756da37f0563f5" change="1426803166" id="E0061">
<type>Birth</type>
<dateval val="1847-07" type="after" quality="estimated"/>
</event>
<event handle="_cfa0876060124488afa" change="1426803189" id="E0062">
<type>Birth</type>
<dateval val="1847-07-13" type="after" quality="estimated"/>
</event>
<event handle="_cfa0877ffcb19aed9f7" change="1426804001" id="E0063">
<type>Birth</type>
<datespan start="1878" stop="1879" quality="estimated"/>
</event>
<event handle="_cfa08785a0d52e9c63f" change="1426804044" id="E0064">
<type>Birth</type>
<datespan start="1878-08" stop="1879-09" quality="estimated"/>
</event>
<event handle="_cfa0879b49b7746d225" change="1426804087" id="E0065">
<type>Birth</type>
<datespan start="1878-08-13" stop="1879-09-13" quality="estimated"/>
</event>
<event handle="_d0545e83fa37336070a" change="1431629910" id="E0066">
<type>Birth</type>
<dateval val="1800-00-13"/>
</event>
</events>
<people home="_ce00f22fdb926a87cdd">
<person handle="_cde77b359d42a7abeb8" change="1426803052" id="I0000">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Before-Person</surname>
</name>
<eventref hlink="_cde77b2c30c13ea85db" role="Primary"/>
</person>
<person handle="_cde77b89083519bcf0b" change="1426803077" id="I0001">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Before-Person</surname>
</name>
<eventref hlink="_cde77b7eff96ae8455f" role="Primary"/>
</person>
<person handle="_cde77be591457afcffb" change="1426803099" id="I0002">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Before-Person</surname>
</name>
<eventref hlink="_cde77be2a67401f7b16" role="Primary"/>
</person>
<person handle="_cde7b70f31a17456a2e" change="1426802978" id="I0003">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>After-Person</surname>
</name>
<eventref hlink="_cde7b70d22b30f00b14" role="Primary"/>
</person>
<person handle="_cde7b8ed6cd11b5562e" change="1426803002" id="I0004">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>After-Person</surname>
</name>
<eventref hlink="_cde7b8eb90e0a8792a9" role="Primary"/>
</person>
<person handle="_cde7b95ec952bc2b12d" change="1426803025" id="I0005">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>After-Person</surname>
</name>
<eventref hlink="_cde7b95cb7e40432538" role="Primary"/>
</person>
<person handle="_cde7b9b4e9e5e81800d" change="1426802890" id="I0006">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>About-Person</surname>
</name>
<eventref hlink="_cde7b9b2b00713c42af" role="Primary"/>
</person>
<person handle="_cde7b9f2d2e633055b9" change="1426802928" id="I0007">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>About-Person</surname>
</name>
<eventref hlink="_cde7b9f0da51d2ff10a" role="Primary"/>
</person>
<person handle="_cde7ba324d85d019053" change="1426802954" id="I0008">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>About-Person</surname>
</name>
<eventref hlink="_cde7ba310240e18a0ea" role="Primary"/>
</person>
<person handle="_ce00f22fdb926a87cdd" change="1426803678" id="I0009">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Normal-Person</surname>
</name>
<eventref hlink="_ce00f22be3443f0c30b" role="Primary"/>
</person>
<person handle="_ce00f2aeb776bb53be5" change="1426803705" id="I0010">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Normal-Person</surname>
</name>
<eventref hlink="_ce00f2ab83911df5354" role="Primary"/>
</person>
<person handle="_ce00f2eda384642791d" change="1426803733" id="I0011">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Normal-Person</surname>
</name>
<eventref hlink="_ce00f2eb2f86d94ece0" role="Primary"/>
</person>
<person handle="_cfa02ea21cf2c08d6e2" change="1426793828" id="I0014">
<gender>M</gender>
<name type="Birth Name">
<first>B01</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa02e904f161e652da" role="Primary"/>
</person>
<person handle="_cfa02f060870eef1f71" change="1426793996" id="I0015">
<gender>M</gender>
<name type="Birth Name">
<first>C01</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa02efc75b0eb05cfa" role="Primary"/>
</person>
<person handle="_cfa02f6db513f4e1c14" change="1426793845" id="I0016">
<gender>M</gender>
<name type="Birth Name">
<first>B02</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa02f60fbe55ad36f7" role="Primary"/>
</person>
<person handle="_cfa02fe4e8d3cad65e6" change="1426794012" id="I0017">
<gender>M</gender>
<name type="Birth Name">
<first>C02</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa02fd93615614dc94" role="Primary"/>
</person>
<person handle="_cfa03042b93635f71a0" change="1426793861" id="I0018">
<gender>M</gender>
<name type="Birth Name">
<first>B03</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa030376d1228fb29b" role="Primary"/>
</person>
<person handle="_cfa03092fb610f772ba" change="1426794027" id="I0019">
<gender>M</gender>
<name type="Birth Name">
<first>C03</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa0308a9e766a18a5a" role="Primary"/>
</person>
<person handle="_cfa0314a7de1852f830" change="1426794043" id="I0021">
<gender>M</gender>
<name type="Birth Name">
<first>C04</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa0314208a175c695f" role="Primary"/>
</person>
<person handle="_cfa031e7f6333a37f87" change="1426793893" id="I0022">
<gender>M</gender>
<name type="Birth Name">
<first>B05</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa031df6bb2f50f9c5" role="Primary"/>
</person>
<person handle="_cfa03248bae711cb306" change="1426793877" id="I0023">
<gender>M</gender>
<name type="Birth Name">
<first>B04</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa0311ff9474a33dad" role="Primary"/>
</person>
<person handle="_cfa033674d813cb83fb" change="1426794060" id="I0024">
<gender>M</gender>
<name type="Birth Name">
<first>C05</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa0335efcf6eeb6bf6" role="Primary"/>
</person>
<person handle="_cfa03429a3506b90a17" change="1426793911" id="I0025">
<gender>M</gender>
<name type="Birth Name">
<first>B06</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa0342171e10e9a0c8" role="Primary"/>
</person>
<person handle="_cfa03471249305e11a3" change="1426793926" id="I0026">
<gender>M</gender>
<name type="Birth Name">
<first>B07</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa03468bc76cf7a295" role="Primary"/>
</person>
<person handle="_cfa034ba95d55bbb30d" change="1426793947" id="I0027">
<gender>M</gender>
<name type="Birth Name">
<first>B08</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa034b07c9408b12cc" role="Primary"/>
</person>
<person handle="_cfa035043d730daedcc" change="1426793965" id="I0028">
<gender>M</gender>
<name type="Birth Name">
<first>B09</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa034f8da44738c323" role="Primary"/>
</person>
<person handle="_cfa03553f6327fb3aa3" change="1426793727" id="I0029">
<gender>M</gender>
<name type="Birth Name">
<first>B10</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa03547c3765017895" role="Primary"/>
</person>
<person handle="_cfa035a31fd38ced89e" change="1426793759" id="I0030">
<gender>M</gender>
<name type="Birth Name">
<first>B11</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa035965a02da81147" role="Primary"/>
</person>
<person handle="_cfa035f87450688702b" change="1426793794" id="I0031">
<gender>M</gender>
<name type="Birth Name">
<first>B12</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa035ee99b03f59cbc" role="Primary"/>
</person>
<person handle="_cfa038d6790220eb6a0" change="1426794095" id="I0032">
<gender>M</gender>
<name type="Birth Name">
<first>C06</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa038cce441e73b1c5" role="Primary"/>
</person>
<person handle="_cfa039412cf2c81aaa6" change="1426794139" id="I0033">
<gender>M</gender>
<name type="Birth Name">
<first>C07</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa039308b34bf173be" role="Primary"/>
</person>
<person handle="_cfa0399d5b4296c09ed" change="1426794177" id="I0034">
<gender>M</gender>
<name type="Birth Name">
<first>C08</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa0399114e40ffcadf" role="Primary"/>
</person>
<person handle="_cfa03a00ae7431e3c10" change="1426794217" id="I0035">
<gender>M</gender>
<name type="Birth Name">
<first>C09</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa039f6e510c198300" role="Primary"/>
</person>
<person handle="_cfa03a68a5e1f70d524" change="1426794260" id="I0036">
<gender>M</gender>
<name type="Birth Name">
<first>C10</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa03a5c2fe4ce6e75d" role="Primary"/>
</person>
<person handle="_cfa03ab437d05844dc3" change="1426794291" id="I0037">
<gender>M</gender>
<name type="Birth Name">
<first>C11</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa03aabe141219bb22" role="Primary"/>
</person>
<person handle="_cfa03b0c1635ed179a5" change="1426794327" id="I0038">
<gender>M</gender>
<name type="Birth Name">
<first>C12</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_cfa03afa2ac4d140d9d" role="Primary"/>
</person>
<person handle="_cfa0425f40e5bd7f546" change="1426804005" id="I0039">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>SpanFrom-Person</surname>
</name>
<eventref hlink="_cfa0424ffcb19aed9f7" role="Primary"/>
</person>
<person handle="_cfa0431254247adca83" change="1426804048" id="I0040">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>SpanFrom-Person</surname>
</name>
<eventref hlink="_cfa042e5a0d52e9c63f" role="Primary"/>
</person>
<person handle="_cfa0439de437d741e80" change="1426804091" id="I0041">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>SpanFrom-Person</surname>
</name>
<eventref hlink="_cfa0436b49b7746d225" role="Primary"/>
</person>
<person handle="_cfa044c262e1e5c8503" change="1426803860" id="I0042">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>RangeBetween-Person</surname>
</name>
<eventref hlink="_cfa044b58de7b9a9759" role="Primary"/>
</person>
<person handle="_cfa04565ce470dcd2f8" change="1426803898" id="I0043">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>RangeBetween-Person</surname>
</name>
<eventref hlink="_cfa0454785d7f7fe074" role="Primary"/>
</person>
<person handle="_cfa0460050935c9a427" change="1426803937" id="I0044">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>RangeBetween-Person</surname>
</name>
<eventref hlink="_cfa045f559074cd25a6" role="Primary"/>
</person>
<person handle="_cfa05ec0033766aaf99" change="1426803473" id="I0045">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Estimated-Person</surname>
</name>
<eventref hlink="_cfa05eab109493097d1" role="Primary"/>
</person>
<person handle="_cfa05fccf2c4051824b" change="1426803510" id="I0046">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Estimated-Person</surname>
</name>
<eventref hlink="_cfa05fb82182cf228bc" role="Primary"/>
</person>
<person handle="_cfa060511337394614d" change="1426803539" id="I0047">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Estimated-Person</surname>
</name>
<eventref hlink="_cfa0604633236ff9d43" role="Primary"/>
</person>
<person handle="_cfa060e177361c262d1" change="1426803227" id="I0048">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Calculated-Person</surname>
</name>
<eventref hlink="_cfa060d09d433ae6313" role="Primary"/>
</person>
<person handle="_cfa0627d4346f5a6156" change="1426803252" id="I0049">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Calculated-Person</surname>
</name>
<eventref hlink="_cfa062751af6a105a82" role="Primary"/>
</person>
<person handle="_cfa062f0f6d6be03ddb" change="1426803278" id="I0050">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Calculated-Person</surname>
</name>
<eventref hlink="_cfa062e50d3096da9a5" role="Primary"/>
</person>
<person handle="_cfa063f5677702eaa46" change="1426803142" id="I0051">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Calculated-Before-Person</surname>
</name>
<eventref hlink="_cfa063e88800cb80b33" role="Primary"/>
</person>
<person handle="_cfa064bb7630e608798" change="1426803169" id="I0052">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Calculated-Before-Person</surname>
</name>
<eventref hlink="_cfa064a6da37f0563f5" role="Primary"/>
</person>
<person handle="_cfa0654ca9f46930cc4" change="1426803193" id="I0053">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Calculated-Before-Person</surname>
</name>
<eventref hlink="_cfa0654060124488afa" role="Primary"/>
</person>
<person handle="_cfa06717fb57c27f756" change="1426803310" id="I0054">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Estimated-About-Person</surname>
</name>
<eventref hlink="_cfa0670f11e1049f07b" role="Primary"/>
</person>
<person handle="_cfa067b2e020880caf3" change="1426803333" id="I0055">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Estimated-About-Person</surname>
</name>
<eventref hlink="_cfa067a8bbe2900a40c" role="Primary"/>
</person>
<person handle="_cfa068250bc3c821f3c" change="1426803357" id="I0056">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Estimated-About-Person</surname>
</name>
<eventref hlink="_cfa0681c5085ac5e9e0" role="Primary"/>
</person>
<person handle="_cfa069b80556bceaf0b" change="1426803392" id="I0057">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Estimated-RangeBetween-Person</surname>
</name>
<eventref hlink="_cfa069a50b23f6b87fa" role="Primary"/>
</person>
<person handle="_cfa086c6e4e248b4ac6" change="1426803418" id="I0058">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Estimated-RangeBetween-Person</surname>
</name>
<eventref hlink="_cfa086bc43c31bcd49b" role="Primary"/>
</person>
<person handle="_cfa0874684b42b63ab7" change="1426803443" id="I0059">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Estimated-RangeBetween-Person</surname>
</name>
<eventref hlink="_cfa0873e5170a315aea" role="Primary"/>
</person>
<person handle="_cfa087580556bceaf0b" change="1426803392" id="I0060">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Estimated-After-Person</surname>
</name>
<eventref hlink="_cfa087488800cb80b33" role="Primary"/>
</person>
<person handle="_cfa08766e4e248b4ac6" change="1426803418" id="I0061">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Estimated-After-Person</surname>
</name>
<eventref hlink="_cfa08756da37f0563f5" role="Primary"/>
</person>
<person handle="_cfa0877684b42b63ab7" change="1426803443" id="I0062">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Estimated-After-Person</surname>
</name>
<eventref hlink="_cfa0876060124488afa" role="Primary"/>
</person>
<person handle="_cfa087780556bceaf0b" change="1426803392" id="I0063">
<gender>M</gender>
<name type="Birth Name">
<first>A</first>
<surname>Estimated-SpanFrom-Person</surname>
</name>
<eventref hlink="_cfa0877ffcb19aed9f7" role="Primary"/>
</person>
<person handle="_cfa08786e4e248b4ac6" change="1426803418" id="I0064">
<gender>M</gender>
<name type="Birth Name">
<first>B</first>
<surname>Estimated-SpanFrom-Person</surname>
</name>
<eventref hlink="_cfa08785a0d52e9c63f" role="Primary"/>
</person>
<person handle="_cfa0879684b42b63ab7" change="1426803443" id="I0065">
<gender>M</gender>
<name type="Birth Name">
<first>C</first>
<surname>Estimated-SpanFrom-Person</surname>
</name>
<eventref hlink="_cfa0879b49b7746d225" role="Primary"/>
</person>
<person handle="_d0545e25fed7da2d864" change="1431629912" id="I0066">
<gender>M</gender>
<name type="Birth Name">
<first>Zero-Month</first>
<surname>Month-Person</surname>
</name>
<eventref hlink="_d0545e83fa37336070a" role="Primary"/>
</person>
</people>
</database>
+2688 -1312
View File
File diff suppressed because it is too large. Load diff
+2 -2
View File
@@ -20,9 +20,9 @@
# gen/__init__.py
"""
The core gramps module provides the different packages
The core gramps modules that provide the different packages
Plugins are loaded dynamically, so they the plugin directory is not included
Plugins are loaded dynamically, so that plugin directory is not included
"""
__all__ = ["gen", "cli", "gui"]
+6 -4
View File
@@ -34,7 +34,6 @@ Module responsible for handling the command line arguments for Gramps.
# Standard python modules
#
#-------------------------------------------------------------------------
from __future__ import print_function
import os
import sys
@@ -416,7 +415,9 @@ class ArgHandler(object):
for item in sorted(summary):
if item != "Family Tree":
# translators: needed for French, ignore otherwise
print(_(" %s: %s") % (item, summary[item]))
print(_(" %(item)s: %(summary)s") % {
'item' : item,
'summary' : summary[item] } )
sys.exit(0)
# Handle the "-t" List Family Trees, tab delimited option.
@@ -434,10 +435,11 @@ class ArgHandler(object):
print("\t".join(line_list))
for summary in sorted(summary_list,
key=lambda sum: sum[_("Family Tree")].lower()):
line_list = [('"%s"' % summary[_("Family Tree")])]
line_list = [(_('"%s"') % summary[_("Family Tree")])]
for item in sorted(summary):
if item != _("Family Tree"):
line_list += [('"%s"' % summary[item])]
# translators: ignore unless your quotation marks differ
line_list += [(_('"%s"') % summary[item])]
print("\t".join(line_list))
sys.exit(0)
-1
View File
@@ -34,7 +34,6 @@ Module responsible for handling the command line arguments for Gramps.
# Standard python modules
#
#-------------------------------------------------------------------------
from __future__ import print_function, unicode_literals
import sys
import getopt
import logging
+5 -14
View File
@@ -30,18 +30,12 @@ creating, and deleting of databases.
# Standard python modules
#
#-------------------------------------------------------------------------
from __future__ import print_function
import os
import sys
import time
import io
if sys.version_info[0] < 3:
from urlparse import urlparse
from urllib2 import urlopen, url2pathname
else:
from urllib.parse import urlparse
from urllib.request import urlopen, url2pathname
from urllib.parse import urlparse
from urllib.request import urlopen, url2pathname
import tempfile
#-------------------------------------------------------------------------
#
@@ -63,7 +57,7 @@ _ = glocale.translation.gettext
from gramps.gen.db import DbBsddb
from gramps.gen.plug import BasePluginManager
from gramps.gen.config import config
from gramps.gen.constfunc import win, conv_to_unicode, UNITYPE
from gramps.gen.constfunc import win, conv_to_unicode
#-------------------------------------------------------------------------
#
# constants
@@ -144,10 +138,7 @@ class CLIDbManager(object):
current DB.
Returns ("Unknown", "Unknown", "Unknown") if invalid DB or other error.
"""
if config.get('preferences.use-bsddb3') or sys.version_info[0] >= 3:
from bsddb3 import dbshelve, db
else:
from bsddb import dbshelve, db
from bsddb3 import dbshelve, db
from gramps.gen.db import META, PERSON_TBL
from gramps.gen.db.dbconst import BDBVERSFN
@@ -517,6 +508,6 @@ def find_locker_name(dirpath):
# feature request 2356: avoid genitive form
last = _("Locked by %s") % username
ifile.close()
except (OSError, IOError):
except (OSError, IOError, UnicodeDecodeError):
last = _("Unknown")
return last
-2
View File
@@ -31,8 +31,6 @@ Provides also two small base classes: :class:`CLIDbLoader`, :class:`CLIManager`
# Python modules
#
#-------------------------------------------------------------------------
from __future__ import print_function
from gramps.gen.const import GRAMPS_LOCALE as glocale
_ = glocale.translation.gettext
import os
+39 -12
View File
@@ -32,7 +32,6 @@
# Python modules
#
#-------------------------------------------------------------------------
from __future__ import print_function
import traceback
import os
import sys
@@ -47,7 +46,8 @@ log = logging.getLogger(".")
#-------------------------------------------------------------------------
from gramps.gen.plug import BasePluginManager
from gramps.gen.plug.docgen import (StyleSheet, StyleSheetList, PaperStyle,
PAPER_PORTRAIT, PAPER_LANDSCAPE, graphdoc)
PAPER_PORTRAIT, PAPER_LANDSCAPE, graphdoc,
treedoc)
from gramps.gen.plug.menu import (FamilyOption, PersonOption, NoteOption,
MediaOption, PersonListOption, NumberOption,
BooleanOption, DestinationOption, StringOption,
@@ -55,12 +55,11 @@ from gramps.gen.plug.menu import (FamilyOption, PersonOption, NoteOption,
from gramps.gen.display.name import displayer as name_displayer
from gramps.gen.errors import ReportError, FilterError
from gramps.gen.plug.report import (CATEGORY_TEXT, CATEGORY_DRAW, CATEGORY_BOOK,
CATEGORY_GRAPHVIZ, CATEGORY_CODE,
ReportOptions, append_styles)
CATEGORY_GRAPHVIZ, CATEGORY_TREE,
CATEGORY_CODE, ReportOptions, append_styles)
from gramps.gen.plug.report._paper import paper_sizes
from gramps.gen.const import USER_HOME
from gramps.gen.dbstate import DbState
from gramps.gen.constfunc import STRTYPE, conv_to_unicode_direct
from ..grampscli import CLIManager
from ..user import User
from gramps.gen.const import GRAMPS_LOCALE as glocale
@@ -78,13 +77,13 @@ def _convert_str_to_match_type(str_val, type_val):
str_val = str_val.strip()
ret_type = type(type_val)
if isinstance(type_val, STRTYPE):
if isinstance(type_val, str):
if ( str_val.startswith("'") and str_val.endswith("'") ) or \
( str_val.startswith('"') and str_val.endswith('"') ):
# Remove enclosing quotes
return conv_to_unicode_direct(str_val[1:-1])
return str(str_val[1:-1])
else:
return conv_to_unicode_direct(str_val)
return str(str_val)
elif ret_type == int:
if str_val.isdigit():
@@ -227,7 +226,7 @@ class CommandLineReport(object):
self.raw_name = name
self.option_class = option_class(name, database)
if category == CATEGORY_GRAPHVIZ:
# Need to include GraphViz options
# Need to include Graphviz options
self.__gvoptions = graphdoc.GVOptions()
menu = self.option_class.menu
self.__gvoptions.add_menu_options(menu)
@@ -235,6 +234,15 @@ class CommandLineReport(object):
if name not in self.option_class.options_dict:
self.option_class.options_dict[name] = \
menu.get_option_by_name(name).get_value()
if category == CATEGORY_TREE:
# Need to include Genealogy Tree options
self.__toptions = treedoc.TreeOptions()
menu = self.option_class.menu
self.__toptions.add_menu_options(menu)
for name in menu.get_all_option_names():
if name not in self.option_class.options_dict:
self.option_class.options_dict[
name] = menu.get_option_by_name(name).get_value()
self.option_class.load_previous_values()
_validate_options(self.option_class, database)
self.show = options_str_dict.pop('show', None)
@@ -303,6 +311,10 @@ class CommandLineReport(object):
for graph_format in graphdoc.FORMATS:
self.options_help['off'][2].append(
graph_format["type"] + "\t" + graph_format["descr"] )
elif self.category == CATEGORY_TREE:
for tree_format in treedoc.FORMATS:
self.options_help['off'][2].append(
tree_format["type"] + "\t" + tree_format["descr"])
else:
self.options_help['off'][2] = "NA"
@@ -415,7 +427,13 @@ class CommandLineReport(object):
elif isinstance(option, EnumeratedListOption):
ilist = []
for (value, description) in option.get_items():
ilist.append("%s\t%s" % (value, description))
tabs = '\t'
try:
tabs = '\t\t' if len(value) < 10 else '\t'
except TypeError: #Value is a number, use just one tab.
pass
val = "%s%s%s" % (value, tabs, description)
ilist.append(val)
self.options_help[name].append(ilist)
elif isinstance(option, Option):
self.options_help[name].append(option.get_help())
@@ -474,6 +492,15 @@ class CommandLineReport(object):
# Pick the first one as the default.
self.format = graphdoc.FORMATS[0]["class"]
_chosen_format = graphdoc.FORMATS[0]["type"]
elif self.category == CATEGORY_TREE:
for tree_format in treedoc.FORMATS:
if tree_format['type'] == self.options_dict['off']:
if not self.format: # choose the first one, not the last
self.format = tree_format["class"]
if self.format is None:
# Pick the first one as the default.
self.format = tree_format.FORMATS[0]["class"]
_chosen_format = tree_format.FORMATS[0]["type"]
else:
self.format = None
if _chosen_format and _format_str:
@@ -589,8 +616,8 @@ class CommandLineReport(object):
elif self.show in self.options_help:
opt = self.options_help[self.show]
tabs = '\t\t' if len(self.show) < 10 else '\t'
print(' %s%s%s (%s)' % (self.show, tabs, opt[1], opt[0]))
print(_(" Available values are:"))
print(' %s%s%s (%s)' % (self.show, tabs, opt[1], opt[0]))
vals = opt[2]
if isinstance(vals, (list, tuple)):
for val in vals:
@@ -636,7 +663,7 @@ def cl_report(database, name, category, report_class, options_class,
clr.selected_style,
PaperStyle(clr.paper,clr.orien,clr.marginl,
clr.marginr,clr.margint,clr.marginb))
elif category == CATEGORY_GRAPHVIZ:
elif category in [CATEGORY_GRAPHVIZ, CATEGORY_TREE]:
clr.option_class.handler.doc = clr.format(
clr.option_class,
PaperStyle(clr.paper,clr.orien,clr.marginl,
-2
View File
@@ -21,8 +21,6 @@
""" Unittest for argparser.py """
from __future__ import print_function
import unittest
from ..argparser import ArgParser
import sys
+15 -21
View File
@@ -20,16 +20,13 @@
""" CLI tests for gramps """
from __future__ import unicode_literals
import sys
import os
import unittest
import re
import io
import sys
import subprocess
from gramps.gen.constfunc import cuni
from gramps.gen.const import TEMP_DIR
test_ged = """0 HEAD
@@ -43,13 +40,6 @@ test_ged = """0 HEAD
0 TRLR
"""
# see gramps.grampsapp.py
## hack to avoid mentioning 'utf8' encoding everywhere unicode or str is is used
if sys.version_info[0] < 3:
reload(sys)
sys.setdefaultencoding('utf8')
##
ddir = os.path.dirname(__file__)
min1r = os.path.join(ddir, "min1r.ged")
out_ged = os.path.join(ddir, "test_out.ged")
@@ -83,10 +73,11 @@ class Test(unittest.TestCase):
# This tests the fix for bug #1331-1334
# read trivial gedcom input, write gedcom output
def test2_exec_CLI(self):
pyexec = sys.executable
ifile = min1r
ofile = out_ged
gcmd = "Gramps.py -i %s -e %s" % (ifile, ofile)
process = subprocess.Popen("python %s" % gcmd,
process = subprocess.Popen("%s %s" % (pyexec ,gcmd),
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE, shell=True)
@@ -105,17 +96,21 @@ class Test(unittest.TestCase):
# (eg cleanout stale files from prior crash-runs)
def test3_files_in_import_dir(self):
ddir = os.path.join(TEMP_DIR, "import_dbdir")
os.makedirs(ddir)
try:
os.makedirs(ddir)
except:
pass
bogofiles = [os.path.join(ddir, fn) for fn in ("family.db", "lock")]
for fn in bogofiles:
with io.open(fn, "w") as f:
f.write("garbage")
# ~same as test 2
pyexec = sys.executable
ifile = min1r
ofile = out_ged
gcmd = "Gramps.py -i %s -e %s" % (ifile, ofile)
process = subprocess.Popen("python %s" % gcmd,
process = subprocess.Popen("%s %s" % (pyexec, gcmd),
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE, shell=True)
@@ -128,28 +123,27 @@ class Test(unittest.TestCase):
class UnicodeTest(unittest.TestCase):
@unittest.skipIf(sys.version_info[0] < 3 and sys.platform == 'win32',
"Python2 bsddb doesn't handle unicode paths")
def setUp(self):
from gramps.cli.clidbman import CLIDbManager
from gramps.gen.config import set as setconfig
from gramps.gen.config import set as setconfig, get as getconfig
from gramps.gen.dbstate import DbState
self.newpath = os.path.join(os.path.dirname(__file__),
cuni('\u0393\u03c1\u03b1\u03bc\u03c3\u03c0'))
self.newtitle = cuni('Gr\u00e4mps T\u00e9st')
'\u0393\u03c1\u03b1\u03bc\u03c3\u03c0')
self.newtitle = 'Gr\u00e4mps T\u00e9st'
os.makedirs(self.newpath)
self.old_path = getconfig('behavior.database-path')
setconfig('behavior.database-path', self.newpath)
self.cli = CLIDbManager(DbState())
def tearDown(self):
from gramps.gen.config import set as setconfig
for (dirpath, dirnames, filenames) in os.walk(self.newpath, False):
for afile in filenames:
os.remove(os.path.join(dirpath, afile))
for adir in dirnames:
os.rmdir(os.path.join(dirpath, adir))
os.rmdir(self.newpath)
pass
setconfig('behavior.database-path', self.old_path)
# Test that clidbman will open files in a path containing
# arbitrary Unicode characters.
-2
View File
@@ -21,8 +21,6 @@
""" Unittest for user.py """
from __future__ import print_function
import unittest
from .. import user
from ...gen.test.user_test import TestUser
+1 -9
View File
@@ -22,14 +22,6 @@
The User class provides basic interaction with the user.
"""
#------------------------------------------------------------------------
#
# Python Modules
#
#------------------------------------------------------------------------
from __future__ import print_function, unicode_literals
import sys
#------------------------------------------------------------------------
#
# Gramps Modules
@@ -66,7 +58,7 @@ class User(user.User):
user.User.__init__(self, callback, error)
self.steps = 0;
self.current_step = 0;
self._input = raw_input if sys.version_info[0] < 3 else input
self._input = input
def yes(*args):
return True
+9 -8
View File
@@ -150,7 +150,7 @@ register('behavior.surname-guessing', 0)
register('behavior.use-tips', False)
register('behavior.welcome', 100)
register('behavior.web-search-url', 'http://google.com/#&q=%(text)s')
register('behavior.addons-url', "http://svn.code.sf.net/p/gramps-addons/code/branches/gramps41/")
register('behavior.addons-url', "https://raw.githubusercontent.com/gramps-project/addons/master/gramps42")
register('export.proxy-order', [
["privacy", 0],
@@ -171,9 +171,6 @@ register('geography.show_cross', False)
register('geography.path', "")
register('geography.use-keypad', True)
register('htmlview.start-url', "http://gramps-project.org")
register('htmlview.url-handler', False)
register('interface.address-height', 450)
register('interface.address-width', 650)
register('interface.attribute-height', 350)
@@ -213,7 +210,6 @@ register('interface.grampletbar-close', False)
register('interface.height', 500)
register('interface.ignore-gexiv2', False)
register('interface.ignore-osmgpsmap', False)
register('interface.ignore-webkit', False)
register('interface.lds-height', 450)
register('interface.lds-width', 600)
register('interface.location-height', 250)
@@ -273,6 +269,7 @@ register('interface.url-width', 600)
register('interface.view', True)
register('interface.width', 775)
register('interface.surname-box-height', 150)
register('interface.treemodel-cache-size', 1000)
register('paths.recent-export-dir', '')
register('paths.recent-file', '')
@@ -286,6 +283,7 @@ register('paths.quick-backup-filename',
register('preferences.date-format', 0)
register('preferences.calendar-format-report', 0)
register('preferences.cprefix', 'C%04d')
register('preferences.alternate-fonthandler', False)
register('preferences.default-source', False)
register('preferences.tag-on-import', False)
register('preferences.tag-on-import-format', _("Imported %Y/%m/%d %H:%M:%S"))
@@ -296,7 +294,11 @@ register('preferences.hide-ep-msg', False)
register('preferences.invalid-date-format', "<b>%s</b>")
register('preferences.iprefix', 'I%04d')
register('preferences.name-format', 1)
register('preferences.place-format', 0)
register('preferences.place-auto', True)
register('preferences.place-number', False)
register('preferences.place-reverse', False)
register('preferences.place-restrict', 0)
register('preferences.place-lang', '')
register('preferences.patronimic-surname', False)
register('preferences.no-given-text', "[%s]" % _("Missing Given Name"))
register('preferences.no-record-text', "[%s]" % _("Missing Record"))
@@ -315,7 +317,6 @@ register('preferences.sprefix', 'S%04d')
register('preferences.use-last-view', False)
register('preferences.last-view', '')
register('preferences.last-views', [])
register('preferences.use-bsddb3', False)
register('preferences.family-relation-type', 3) # UNKNOWN
register('preferences.age-display-precision', 1)
register('preferences.color-gender-male-alive', '#b8cee6')
@@ -345,7 +346,7 @@ register('researcher.researcher-phone', '')
register('researcher.researcher-postal', '')
register('researcher.researcher-state', '')
register('plugin.hiddenplugins', ['htmlview'])
register('plugin.hiddenplugins', [])
register('plugin.addonplugins', [])
#---------------------------------------------------------------
+11 -13
View File
@@ -25,8 +25,6 @@
Provides constants for other modules
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Standard python modules
@@ -57,9 +55,14 @@ from gramps.version import VERSION, VERSION_TUPLE, major_version
#-------------------------------------------------------------------------
URL_HOMEPAGE = "http://gramps-project.org/"
URL_MAILINGLIST = "http://sourceforge.net/mail/?group_id=25770"
URL_BUGTRACKER = "http://bugs.gramps-project.org/bug_report_advanced_page.php"
URL_BUGHOME = "http://gramps-project.org/bugs"
URL_BUGTRACKER = "http://gramps-project.org/bugs/bug_report_page.php"
URL_WIKISTRING = "http://gramps-project.org/wiki/index.php?title="
URL_MANUAL_PAGE = "Gramps_%s_Wiki_Manual" % major_version
URL_MANUAL_DATA = '%s_-_Entering_and_editing_data:_detailed' % URL_MANUAL_PAGE
URL_MANUAL_SECT1 = '%s_-_part_1' % URL_MANUAL_DATA
URL_MANUAL_SECT2 = '%s_-_part_2' % URL_MANUAL_DATA
URL_MANUAL_SECT3 = '%s_-_part_3' % URL_MANUAL_DATA
WIKI_FAQ = "FAQ"
WIKI_KEYBINDINGS = "Gramps_%s_Wiki_Manual_-_Keybindings" % major_version
WIKI_EXTRAPLUGINS= "%s_Addons" % major_version
@@ -122,20 +125,15 @@ USER_DIRLIST = (USER_HOME, HOME_DIR, VERSION_DIR, ENV_DIR, TEMP_DIR, THUMB_DIR,
# above this one, and that the plugins directory is below the root directory.
#
#-------------------------------------------------------------------------
# test for sys.frozen to detect a py2exe executable on Windows
if sys.version_info[0] < 3 and hasattr(sys, "frozen"):
ROOT_DIR = os.path.abspath(os.path.dirname(unicode(sys.executable)))
else:
ROOT_DIR = os.path.abspath(os.path.join(os.path.dirname(
conv_to_unicode(__file__)), os.pardir))
ROOT_DIR = os.path.abspath(os.path.join(os.path.dirname(
conv_to_unicode(__file__)), os.pardir))
sys.path.insert(0, ROOT_DIR)
git_revision = get_git_revision(ROOT_DIR)
if sys.platform == 'win32' and git_revision == "":
git_revision = get_git_revision(os.path.split(ROOT_DIR)[1])
#VERSION += git_revision
VERSION += "-1"
VERSION += git_revision
#VERSION += "-1"
#
# Glade files
@@ -192,7 +190,7 @@ GTK_GETTEXT_DOMAIN = 'gtk30'
#
#-------------------------------------------------------------------------
COPYRIGHT_MSG = "© 2001-2006 Donald N. Allingham\n" \
"© 2007-2015 The Gramps Developers"
"© 2007-2018 The Gramps Developers"
COMMENTS = _("Gramps\n (Genealogical Research and Analysis "
"Management Programming System)\n"
"is a personal genealogy program.")
+3 -47
View File
@@ -50,35 +50,11 @@ WINDOWS = ["Windows", "win32"]
# Public Functions
#
#-------------------------------------------------------------------------
#python 2 and 3 support, use correct conversion to unicode
if sys.version_info[0] < 3:
conv_to_unicode_direct = unicode
STRTYPE = basestring
UNITYPE = unicode
else:
conv_to_unicode_direct = str
STRTYPE = str
UNITYPE = str
cuni = conv_to_unicode_direct
def conv_to_unicode(x, y='utf8'):
return x if x is None or isinstance(x, UNITYPE) else cuni(x, y) if y else cuni(x)
def uni_to_gui(x):
'''
In Py2 we need to convert strings to utf8 before passing them to
Gtk functions.
'''
if sys.version_info[0] < 3 and isinstance(x, UNITYPE):
return x.encode('utf8')
else:
return x
return x if x is None or isinstance(x, str) else str(x, y) if y else str(x)
# handle in database is bytes, while internally Gramps wants unicode for py3
if sys.version_info[0] < 3:
handle2internal = lambda x: x
else:
handle2internal = lambda x: conv_to_unicode(x, 'utf-8')
handle2internal = lambda x: conv_to_unicode(x, 'utf-8')
#-------------------------------------------------------------------------
#
@@ -184,16 +160,6 @@ def get_env_var(name, default=None):
if not name or not name in os.environ:
return default
if sys.version_info[0] < 3 and win():
name = unicode(name) # make sure string argument is unicode
n = ctypes.windll.kernel32.GetEnvironmentVariableW(name, None, 0)
if n==0:
return default
# n is number of codepoints
buf = ctypes.create_unicode_buffer(n+1)
ctypes.windll.kernel32.GetEnvironmentVariableW(name, buf, n)
return buf.value
return os.environ[name]
def get_curr_dir():
@@ -203,14 +169,4 @@ def get_curr_dir():
an arbitrary unicode character in a path. This function uses the
native GetCurrentDirectory function to return a unicode cwd.
'''
if not (sys.version_info[0] < 3 and win()):
return os.getcwd()
n = ctypes.windll.kernel32.GetCurrentDirectoryW(0, None)
if n == 0:
return None
buf = ctypes.create_unicode_buffer(n+1)
ctypes.windll.kernel32.GetCurrentDirectoryW(n, buf)
return buf.value
return os.getcwd()
+5 -2
View File
@@ -22,8 +22,6 @@
Class handling language-specific selection for date parser and displayer.
"""
from __future__ import print_function, unicode_literals
#-------------------------------------------------------------------------
#
# set up logging
@@ -50,7 +48,10 @@ from . import _date_es
from . import _date_fi
from . import _date_fr
from . import _date_hr
from . import _date_hu
from . import _date_is
from . import _date_it
from . import _date_ja
from . import _date_lt
from . import _date_nb
from . import _date_nl
@@ -62,6 +63,8 @@ from . import _date_sl
from . import _date_sr
from . import _date_sv
from . import _date_uk
from . import _date_zh_CN
from . import _date_zh_TW
# Initialize global parser
try:
-4
View File
@@ -28,7 +28,6 @@ Arabic-specific classes for parsing and displaying dates.
# Python modules
#
#-------------------------------------------------------------------------
from __future__ import unicode_literals
import re
#-------------------------------------------------------------------------
@@ -67,9 +66,6 @@ class DateParserAR(DateParser):
'حوالي.' : Date.MOD_ABOUT,
'حوالي' : Date.MOD_ABOUT,
}
# in some languages some of above listed modifiers are after the date,
# in that case the subclass should put them into this dictionary instead
modifier_after_to_int = {}
islamic_to_int = {
"محرّم" : 1, "محرّم الحرام" : 1,
+1 -1
View File
@@ -22,7 +22,7 @@
"""
Bulgarian-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+1 -1
View File
@@ -24,7 +24,7 @@
"""
Catalan-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+13 -3
View File
@@ -22,7 +22,7 @@
"""
Czech-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -164,15 +164,20 @@ class DateParserCZ(DateParser):
quality_to_int = {
'přibližně' : Date.QUAL_ESTIMATED,
'odhadované' : Date.QUAL_ESTIMATED,
'odhadem' : Date.QUAL_ESTIMATED,
'odh.' : Date.QUAL_ESTIMATED,
'vypočteno' : Date.QUAL_CALCULATED,
'vypočtené' : Date.QUAL_CALCULATED,
'vyp.' : Date.QUAL_CALCULATED,
}
# bug 9739 _grampslocale.py gets '%-d.%-m.%Y' and makes it be '%/d.%/m.%Y'
fmt = DateParser.fmt.replace('/', '') # so counteract that
def init_strings(self):
DateParser.init_strings(self)
self._text2 = re.compile('(\d+)?\.?\s+?%s\.?\s*((\d+)(/\d+)?)?\s*$'
% self._mon_str, re.IGNORECASE)
self._span = re.compile(
"(od)\s+(?P<start>.+)\s+(do)\s+(?P<stop>.+)",
re.IGNORECASE)
@@ -221,7 +226,12 @@ class DateDisplayCZ(DateDisplay):
# this must agree with DateDisplayEn's "formats" definition
# (since no locale-specific _display_gregorian exists, here)
def display(self, date):
display = DateDisplay.display_formatted
# bug 9537 _grampslocale.py gets '%-d.%-m.%Y' and makes it be '%/d.%/m.%Y'
_tformat = DateDisplay._tformat.replace('/', '') # so counteract that
def orig_display(self, date): # unused: only here for historical reference
"""
Return a text string representing the date.
"""
+1 -1
View File
@@ -22,7 +22,7 @@
"""
Danish-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+2 -2
View File
@@ -22,7 +22,7 @@
"""
German-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -221,7 +221,7 @@ class DateDisplayDE(DateDisplay):
)
# this definition must agree with its "_display_gregorian" method
def _display_gregorian(self, date_val):
def _display_gregorian(self, date_val, **kwargs):
"""
display gregorian calendar date in different format
"""
+1 -5
View File
@@ -24,7 +24,6 @@
Greek-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -78,9 +77,6 @@ class DateParserEL(DateParser):
'γυρ.' : Date.MOD_ABOUT,
'~' : Date.MOD_ABOUT,
}
# in some languages some of above listed modifiers are after the date,
# in that case the subclass should put them into this dictionary instead
modifier_after_to_int = {}
bce = ["π.Χ.", "π.Κ.Χ.", "π.Κ.Ε.", "π.Χ" ]
@@ -159,7 +155,7 @@ class DateDisplayEL(DateDisplay):
)
# this definition must agree with its "_display_gregorian" method
def _display_gregorian(self, date_val):
def _display_gregorian(self, date_val, **kwargs):
"""
display gregorian calendar date in different format
"""
+1 -1
View File
@@ -22,7 +22,7 @@
"""
Spanish-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+52 -73
View File
@@ -22,7 +22,7 @@
"""
Finnish-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -98,7 +98,8 @@ class DateParserFI(DateParser):
def init_strings(self):
DateParser.init_strings(self)
# date, whitespace
self._text2 = re.compile('(\d+)?\.?\s+?%s\.?\s*((\d+)(/\d+)?)?\s*$'
% self._mon_str, re.IGNORECASE)
self._span = re.compile("(?P<start>.+)\s+(-)\s+(?P<stop>.+)",
re.IGNORECASE)
self._range = re.compile(
@@ -114,90 +115,68 @@ class DateDisplayFI(DateDisplay):
"""
Finnish language date display class.
"""
long_months = ("", "Tammikuu", "Helmikuu", "Maaliskuu", "Huhtikuu",
"Toukokuu", "Kesäkuu", "Heinäkuu", "Elokuu",
"Syyskuu", "Lokakuu", "Marraskuu", "Joulukuu")
short_months = ("", "Tammi", "Helmi", "Maali", "Huhti", "Touko",
"Kesäk", "Heinä", "Eloku", "Syysk", "Lokak", "Marra",
"Joulu")
calendar = ("",
"juliaaninen",
"heprealainen",
"ranskan v.",
"persialainen",
"islamilainen",
"svensk"
)
_qual_str = ("", "arviolta", "laskettuna")
_bce_str = "%s ekr."
formats = (
"VVVV-KK-PP (ISO)",
"PP.KK.VVVV"
"PP.KK.VVVV",
"Päivä Kuukausi Vuosi" # Day, full month name, year
)
# normally, this would agree with DateDisplayEn's "formats"
# (since no locale-specific _display_gregorian exists, here),
# but the locale-specific "display" (below) forces self.format = 1
# this definition must agree with its "_display_calendar" method
def display(self, date):
"""
Return a text string representing the date.
"""
mod = date.get_modifier()
qual = date.get_quality()
cal = date.get_calendar()
start = date.get_start_date()
newyear = date.get_new_year()
if mod == Date.MOD_TEXTONLY:
return date.get_text()
if start == Date.EMPTY:
return ""
display = DateDisplay.display_formatted
# select numerical date format
self.format = 1
def _display_calendar(self, date_val, long_months, short_months = None,
inflect=""):
# this must agree with its locale-specific "formats" definition
if mod == Date.MOD_SPAN:
d1 = self.display_cal[cal](start)
d2 = self.display_cal[cal](date.get_stop_date())
text = "%s - %s" % (d1, d2)
elif mod == Date.MOD_RANGE:
stop = date.get_stop_date()
if start[0] == start[1] == 0 and stop[0] == 0 and stop[1] == 0:
d1 = self.display_cal[cal](start)
d2 = self.display_cal[cal](stop)
text = "vuosien %s ja %s välillä" % (d1, d2)
else:
d1 = self.display_cal[cal](start)
d2 = self.display_cal[cal](stop)
text = "%s ja %s välillä" % (d1, d2)
if short_months is None:
# Let the short formats work the same as long formats
short_months = long_months
if self.format == 0:
return self.display_iso(date_val)
elif self.format == 1:
# numerical
value = self.dd_dformat01(date_val)
# elif self.format == 4:
else:
text = self.display_cal[date.get_calendar()](start)
if mod == Date.MOD_AFTER:
text = text + " jälkeen"
elif mod == Date.MOD_ABOUT:
text = "noin " + text
elif mod == Date.MOD_BEFORE:
text = "ennen " + text
# day month_name year
value = self.dd_dformat04(date_val, inflect, long_months)
if date_val[2] < 0:
# TODO fix BUG 7064: non-Gregorian calendars wrongly use BCE notation for negative dates
return self._bce_str % value
else:
return value
if qual:
# prepend quality
text = "%s %s" % (self._qual_str[qual], text)
if cal or newyear:
# append calendar type
scal = self.format_extras(cal, newyear)
text = "%s %s" % (text, scal)
return text
def dd_dformat04(self, date_val, inflect, long_months):
"""
day month_name year -- for Finnish locale
"""
year = self._slash_year(date_val[2], date_val[3])
if date_val[0] == 0:
if date_val[1] == 0:
return year
else:
if inflect:
return self.format_long_month_year(date_val[1], year,
inflect, long_months)
else:
return "{long_month.f[IN]} {year}".format(
long_month = long_months[date_val[1]],
year = year)
else:
if not hasattr(long_months[date_val[1]], 'f'): # not a Lexeme
return self.dd_dformat01(date_val) # maybe the month is zero
return "{day:d}. {long_month.f[P]} {year}".format(
day = date_val[0],
long_month = long_months[date_val[1]],
year = year)
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('fi_FI', 'fi', 'finnish', 'Finnish'), DateParserFI, DateDisplayFI)
register_datehandler(('fi_FI', 'fi', 'finnish', 'Finnish'),
DateParserFI, DateDisplayFI)
+4 -5
View File
@@ -21,16 +21,15 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
"""
French-specific classes for parsing and displaying dates.
"""
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
"""
French-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
import re
#-------------------------------------------------------------------------
+22 -13
View File
@@ -26,7 +26,7 @@
"""
Croatian-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -57,8 +57,7 @@ class DateParserHR(DateParser):
'po. ' : Date.MOD_AFTER,
'okolo' : Date.MOD_ABOUT,
'ok. ' : Date.MOD_ABOUT,
}
}
quality_to_int = {
'približno' : Date.QUAL_ESTIMATED,
@@ -77,16 +76,18 @@ class DateParserHR(DateParser):
DateParser.init_strings(self)
# match 'Day. MONTH year.' format with or without dots
self._text2 = re.compile('(\d+)?\.?\s*?%s\.?\s*((\d+)(/\d+)?)?\s*\.?$'
% self._mon_str, re.IGNORECASE)
% self._mon_str, re.IGNORECASE)
# match Day.Month.Year.
self._numeric = re.compile(
"((\d+)[/\. ])?\s*((\d+)[/\.])?\s*(\d+)\.?$")
"((\d+)[/\. ])?\s*((\d+)[/\.])?\s*(\d+)\.?$")
#"((\d+)[/\.]\s*)?((\d+)[/\.]\s*)?(\d+)\s*$")
self._span = re.compile(
"(od)\s+(?P<start>.+)\s+(do)\s+(?P<stop>.+)",
re.IGNORECASE)
re.IGNORECASE)
self._jtext2 = re.compile('(\d+)?.?\s+?%s\s*((\d+)(/\d+)?)?'\
% self._jmon_str, re.IGNORECASE)
#-------------------------------------------------------------------------
#
@@ -102,7 +103,7 @@ class DateDisplayHR(DateDisplay):
_bce_str = "%s p.n.e."
display = DateDisplay.display_formatted
def dd_dformat01(self, date_val):
"""
numerical
@@ -121,7 +122,12 @@ class DateDisplayHR(DateDisplay):
def dd_dformat04(self, date_val, inflect, long_months):
"""
day month_name year
this must agree with DateDisplayEn's "formats" definition
(it may be overridden if a locale-specific date displayer exists)
"""
_ = self._locale.translation.sgettext
year = self._slash_year(date_val[2], date_val[3])
if date_val[0] == 0:
if date_val[1] == 0:
@@ -129,12 +135,15 @@ class DateDisplayHR(DateDisplay):
else:
return self.format_long_month_year(date_val[1], year,
inflect, long_months)
elif date_val[1] == 0: # month is zero but day is not (see 8477)
return self.display_iso(date_val)
else:
return "{day:d}. {long_month.f[G]} {year}.".format(
day = date_val[0],
long_month = long_months[date_val[1]],
year = year)
# TRANSLATORS: this month is ALREADY inflected: ignore it
return _("{day:d} {long_month} {year}").format(
day = date_val[0],
long_month = self.format_long_month(date_val[1],
inflect, long_months).replace(' .', ''),
year = year)
#-------------------------------------------------------------------------
#
+368
View File
@@ -0,0 +1,368 @@
# -*- coding: utf-8 -*-
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2006 Donald N. Allingham
# Copyright (C) 2015 Lajos Nemeséri <nemeseril@gmail.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
"""
Hungarian-specific classes for parsing and displaying dates.
"""
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
import re
#-------------------------------------------------------------------------
#
# GRAMPS modules
#
#-------------------------------------------------------------------------
from ..lib.date import Date
from ._dateparser import DateParser
from ._datedisplay import DateDisplay
from ._datehandler import register_datehandler
#-------------------------------------------------------------------------
#
# Hungarian parser
#
#
#-------------------------------------------------------------------------
class DateParserHU(DateParser):
month_to_int = DateParser.month_to_int
month_to_int["-"]=0 #to make the Zero month to work
month_to_int["január"] = 1
month_to_int["jan"] = 1
month_to_int["jan."] = 1
month_to_int["I"] = 1
# month_to_int["i"] = 1
month_to_int["február"] = 2
month_to_int["feb"] = 2
month_to_int["feb."] = 2
month_to_int["II"] = 2
# month_to_int["ii"] = 2
month_to_int["március"] = 3
month_to_int["márc"] = 3
month_to_int["márc."] = 3
month_to_int["III"] = 3
# month_to_int["iii"] = 3
month_to_int["április"] = 4
month_to_int["ápr"] = 4
month_to_int["ápr."] = 4
month_to_int["IV"] = 4
# month_to_int["iv"] = 4
month_to_int["május"] = 5
month_to_int["máj"] = 5
month_to_int["máj."] = 5
month_to_int["V"] = 5
# month_to_int["v"] = 5
month_to_int["június"] = 6
month_to_int["jún"] = 6
month_to_int["jún."] = 6
month_to_int["VI"] = 6
# month_to_int["vi"] = 6
month_to_int["július"] = 7
month_to_int["júl"] = 7
month_to_int["júl."] = 7
month_to_int["VII"] = 7
# month_to_int["vii"] = 7
month_to_int["augusztus"] = 8
month_to_int["aug"] = 8
month_to_int["aug."] = 8
month_to_int["VIII"] = 8
# month_to_int["viii"] = 8
month_to_int["szeptember"] = 9
month_to_int["szept"] = 9
month_to_int["szept."] = 9
month_to_int["IX"] = 9
# month_to_int["ix"] = 9
month_to_int["október"] = 10
month_to_int["okt"] = 10
month_to_int["okt."] = 10
month_to_int["X"] = 10
# month_to_int["x"] = 10
month_to_int["november"] = 11
month_to_int["nov"] = 11
month_to_int["nov."] = 11
month_to_int["XI"] = 11
# month_to_int["xi"] = 11
month_to_int["december"] = 12
month_to_int["dec"] = 12
month_to_int["dec."] = 12
month_to_int["XII"] = 12
# month_to_int["xii"] = 12
#-----------------------------------------------------------------------
#
# Alternative and latin names - not verified
#
#-----------------------------------------------------------------------
# Other common latin names
# month_to_int["januaris"] = 01
# month_to_int["januarii"] = 01
# month_to_int["januarius"] = 01
# month_to_int["februaris"] = 02
# month_to_int["februarii"] = 02
# month_to_int["februarius"] = 02
# month_to_int["martii"] = 03
# month_to_int["martius"] = 03
# month_to_int["aprilis"] = 04
# month_to_int["maius"] = 05
# month_to_int["maii"] = 05
# month_to_int["junius"] = 06
# month_to_int["junii"] = 06
# month_to_int["julius"] = 07
# month_to_int["julii"] = 07
# month_to_int["augustus"] = 08
# month_to_int["augusti"] = 08
# month_to_int["septembris"] = 09
# month_to_int["7bris"] = 09
# month_to_int["september"] = 09
# month_to_int["october"] = 10
# month_to_int["octobris"] = 10
# month_to_int["8bris"] = 10
# month_to_int["novembris"] = 11
# month_to_int["9bris"] = 11
# month_to_int["november"] = 11
# month_to_int["decembris"] = 12
# month_to_int["10bris"] = 12
# month_to_int["xbris"] = 12
# month_to_int["december"] = 12
# old Hungarian names
# month_to_int["Boldogasszony hava"] = 01
# month_to_int["Fergeteg hava"] = 01
# month_to_int["Böjtelő hava"] = 02
# month_to_int["Jégbontó hava"] = 02
# month_to_int["Böjtmás hava"] = 03
# month_to_int["Kikelet hava"] = 03
# month_to_int["Szent György hava"] = 04
# month_to_int["Szelek hava"] = 04
# month_to_int["Pünkösd hava"] = 05
# month_to_int["Ígéret hava"] = 05
# month_to_int["Szent Iván hava"] = 06
# month_to_int["Napisten hava"] = 06
# month_to_int["Szent Jakab hava"] = 07
# month_to_int["Áldás hava"] = 07
# month_to_int["Kisasszony hava"] = 08
# month_to_int["Újkenyér hava"] = 08
# month_to_int["Szent Mihály hava"] = 09
# month_to_int["Földanya hava"] = 09
# month_to_int["Mindszent hava"] = 10
# month_to_int["Magvető hava"] = 10
# month_to_int["Szent András hava"] = 11
# month_to_int["Enyészet hava"] = 11
# month_to_int["Karácsony hava"] = 12
# month_to_int["Álom hava"] = 12
modifier_after_to_int={
'előtt' : Date.MOD_BEFORE,
'körül' : Date.MOD_ABOUT,
'után' : Date.MOD_AFTER,
}
quality_to_int = {
'becsült' : Date.QUAL_ESTIMATED,
'hozzávetőleg' : Date.QUAL_ESTIMATED,
'becs.' : Date.QUAL_ESTIMATED,
'számított' : Date.QUAL_CALCULATED,
'körülbelül' : Date.QUAL_ESTIMATED,
'számolt' : Date.QUAL_CALCULATED,
'szám.' : Date.QUAL_CALCULATED,
}
bce = ["időszámításunk előtt", "időszámítás előtt", "i. e.",
"Krisztus előtt", "Krisztus előtti", "Kr. e."] + DateParser.bce
calendar_to_int = {
'Gergely' : Date.CAL_GREGORIAN,
'Julián' : Date.CAL_JULIAN,
'héber' : Date.CAL_HEBREW,
'iszlám' : Date.CAL_ISLAMIC,
'francia köztársasági' : Date.CAL_FRENCH,
'perzsa' : Date.CAL_PERSIAN,
'svéd' : Date.CAL_SWEDISH,
}
def init_strings(self):
# Compiles regular expression strings for matching dates
DateParser.init_strings(self)
self._numeric = re.compile(
"((\d+)[/\.])?\s*((\d+)[/\.])?\s*(\d+)[/\. ]?$")
self._text2 = re.compile('((\d+)(/\d+)?\.)?\s+?%s\.?\s*(\d+\.)?\s*$'
% self._mon_str, re.IGNORECASE)
_span_1 = ['-tó\(ő\)l', '-tól', '-től']
_span_2 = ['-ig']
_range_1 = ['és']
_range_2 = ['között']
self._span = re.compile("(?P<start>.+)(%s)\s+(?P<stop>.+)(%s)" %
('|'.join(_span_1), '|'.join(_span_2)),
re.IGNORECASE)
self._range = re.compile("(?P<start>.+)\s+(%s)\s+(?P<stop>.+)\s+(%s)" %
('|'.join(_range_1), '|'.join(_range_2)),
re.IGNORECASE)
def _get_int(self, val):
"""
Convert the string to an integer if the value is not None. If the
value is None, a zero is returned
"""
if val is None:
return 0
else:
return int(val.replace('.', ''))
#-------------------------------------------------------------------------
#
# Hungarian display
#
#-------------------------------------------------------------------------
class DateDisplayHU(DateDisplay):
"""
Hungarian language date display class.
"""
_bce_str = "i. e. %s"
roman_months=(
"-.", "I.", "II.", "III.", "IV.", "V.", "VI.",
"VII.", "VIII.", "IX.", "X.", "XI.", "XII."
)
formats = (
"ÉÉÉÉ-HH-NN (ISO)", # 0
"Alapértelmezett éééé. hh. nn.", # 1
"Év hónap nap", # year, full month name, day # 2
"Év hó nap", #year, short month name, day # 3
"Év római h.sz. nap" #year, Roman number, day # 4
)
# this definition must agree with its "_display_calendar" method
display = DateDisplay.display_formatted
def _display_calendar(self, date_val, long_months, short_months = None,
inflect=""):
# this must agree with its locale-specific "formats" definition
year = self._slash_year(date_val[2], date_val[3])
if short_months is None:
# Let the short formats work the same as long formats
short_months = long_months
if self.format == 0:
return self.display_iso(date_val)
elif self.format == 1:
# Base defined Hungarian form
if date_val[3]:
return self.display_iso(date_val)
else:
if date_val[0]==0: #No day
if date_val[1]==0: #No month -> year
value="%s" % year
else:
value="%s. %02d." % (year, date_val[1]) #If no day -> year, month
else:
value="%s. %02d. %02d." % (year, date_val[1], date_val[0])
elif self.format == 2:
# year, full month name, day
if date_val[0]==0:
if date_val[1]==0:
value="%s" % year
else:
value="%s. %s" % (year, self.long_months[date_val[1]]) #If no day -> year, month
else:
if date_val[1]==0:
value="%s. %s %02d." % (year, '-', date_val[0]) #To indicate somehow if the month is missing
else:
value="%s. %s %02d." % (year, self.long_months[date_val[1]], date_val[0])
elif self.format == 3:
#year, short month name, day
if date_val[0]==0:
if date_val[1]==0:
value="%s" % year
else:
value="%s. %s" % (year, self.short_months[date_val[1]]) #If no day -> year, month
else:
if date_val[1]==0:
value="%s. %s %02d." % (year, '-.', date_val[0]) #To indicate somehow if the month is missing
else:
value="%s. %s %02d." % (year, self.short_months[date_val[1]], date_val[0])
elif self.format == 4:
#year, Roman number, day
if date_val[0]==0:
if date_val[1]==0:
value="%s" % year
else:
value="%s. %s" % (year, self.roman_months[date_val[1]]) #If no day -> year, month
else:
value="%s. %s %02d." % (year, self.roman_months[date_val[1]], date_val[0])
else:
# day month_name year
value = self.dd_dformat04(date_val, inflect, long_months)
if date_val[2] < 0:
# TODO fix BUG 7064: non-Gregorian calendars wrongly use BCE notation for negative dates
return self._bce_str % value
else:
return value
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('hu_HU', 'hu', 'hungarian', 'Hungarian', 'magyar'),
DateParserHU, DateDisplayHU)
+180
View File
@@ -0,0 +1,180 @@
# -*- coding: utf-8 -*-
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2006 Donald N. Allingham
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Attempt to parse dates for Icelandic, Sveinn í Felli 2016
"""
Icelandic-specific classes for parsing and displaying dates.
"""
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
import re
#-------------------------------------------------------------------------
#
# GRAMPS modules
#
#-------------------------------------------------------------------------
from ..lib.date import Date
from ._dateparser import DateParser
from ._datedisplay import DateDisplay
from ._datehandler import register_datehandler
#-------------------------------------------------------------------------
#
# Icelandic parser class
#
#-------------------------------------------------------------------------
class DateParserIs(DateParser):
"""
Convert a text string into a Date object, expecting a date
notation in the Icelandic language. If the date cannot be converted,
the text string is assigned.
"""
# modifiers before the date
modifier_to_int = {
'fyrir' : Date.MOD_BEFORE,
'á undan' : Date.MOD_BEFORE,
'eftir' : Date.MOD_AFTER,
'í kringum' : Date.MOD_ABOUT,
'uþb' : Date.MOD_ABOUT
}
bce = ["f Kr"]
calendar_to_int = {
'gregoríanskt ' : Date.CAL_GREGORIAN,
'g' : Date.CAL_GREGORIAN,
'júlíanskt' : Date.CAL_JULIAN,
'j' : Date.CAL_JULIAN,
'hebreskt' : Date.CAL_HEBREW,
'h' : Date.CAL_HEBREW,
'íslamskt' : Date.CAL_ISLAMIC,
'múslimskt' : Date.CAL_ISLAMIC,
'i' : Date.CAL_ISLAMIC,
'franskt' : Date.CAL_FRENCH,
'franska lýðveldisins' : Date.CAL_FRENCH,
'f' : Date.CAL_FRENCH,
'persneskt' : Date.CAL_PERSIAN,
'p' : Date.CAL_PERSIAN,
'sænskt' : Date.CAL_SWEDISH,
's' : Date.CAL_SWEDISH,
}
quality_to_int = {
'áætlað' : Date.QUAL_ESTIMATED,
'reiknað' : Date.QUAL_CALCULATED,
}
def init_strings(self):
DateParser.init_strings(self)
self._span = re.compile("(frá)?\s*(?P<start>.+)\s*(til|--|–)\s*(?P<stop>.+)",
re.IGNORECASE)
self._range = re.compile("(milli)\s+(?P<start>.+)\s+og\s+(?P<stop>.+)",
re.IGNORECASE)
#-------------------------------------------------------------------------
#
# Icelandic display class
#
#-------------------------------------------------------------------------
class DateDisplayIs(DateDisplay):
"""
Icelandic language date display class.
"""
long_months = ( "", "janúar", "febrúar", "mars", "apríl", "maí",
"júní", "júlí", "ágúst", "september", "október",
"nóvember", "desember" )
short_months = ( "", "jan", "feb", "mar", "apr", "maí", "jún",
"júl", "ágú", "sep", "okt", "nóv", "des" )
formats = (
"ÁÁÁÁ-MM-DD (ISO)",
"Tölulegt",
"Mánuður dagur, ár",
"Mán Dag Ár",
"Dagur mánuður ár",
"Dag Mán Ár",
)
# this must agree with DateDisplayEn's "formats" definition
# (since no locale-specific _display_gregorian exists, here)
calendar = (
"",
"júlíanskt",
"hebreskt",
"franska lýðveldisins",
"persneskt",
"íslamskt",
"sænskt"
)
_mod_str = ("", "fyrir ", "eftir ", "uþb ", "", "", "")
_qual_str = ("", "reiknað ", "reiknað ")
_bce_str = "%s f. Kr"
def display(self, date):
"""
Return a text string representing the date.
"""
mod = date.get_modifier()
cal = date.get_calendar()
qual = date.get_quality()
start = date.get_start_date()
newyear = date.get_new_year()
qual_str = self._qual_str[qual]
if mod == Date.MOD_TEXTONLY:
return date.get_text()
elif start == Date.EMPTY:
return ""
elif mod == Date.MOD_SPAN:
d1 = self.display_cal[cal](start)
d2 = self.display_cal[cal](date.get_stop_date())
scal = self.format_extras(cal, newyear)
return "%sfrá %s til %s%s" % (qual_str, d1, d2, scal)
elif mod == Date.MOD_RANGE:
d1 = self.display_cal[cal](start)
d2 = self.display_cal[cal](date.get_stop_date())
scal = self.format_extras(cal, newyear)
return "%smilli %s og %s%s" % (qual_str, d1, d2,
scal)
else:
text = self.display_cal[date.get_calendar()](start)
scal = self.format_extras(cal, newyear)
return "%s%s%s%s" % (qual_str, self._mod_str[mod],
text, scal)
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('is_IS', 'is', 'íslenskt', 'Icelandic'), DateParserIs, DateDisplayIs)
+1 -1
View File
@@ -24,7 +24,7 @@
"""
Italian-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+269
View File
@@ -0,0 +1,269 @@
# -*- coding: utf-8 -*-
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2006 Donald N. Allingham
# Copyright (C) 2014 Mathieu MD <mathieu.md@gmail.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#
"""
Japanese-specific classes for parsing and displaying dates.
"""
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
import re
#-------------------------------------------------------------------------
#
# GRAMPS modules
#
#-------------------------------------------------------------------------
from ..lib.date import Date
from ._dateparser import DateParser
from ._datedisplay import DateDisplay
from ._datehandler import register_datehandler
from . import _grampslocale
#-------------------------------------------------------------------------
#
# Japanese parser
#
#-------------------------------------------------------------------------
class DateParserJA(DateParser):
"""
Convert a text string into a Date object. If the date cannot be
converted, the text string is assigned.
"""
# modifiers before the date
modifier_to_int = {
'以前' : Date.MOD_BEFORE,
'以降' : Date.MOD_AFTER,
'頃' : Date.MOD_ABOUT,
'ごろ' : Date.MOD_ABOUT,
}
month_to_int = DateParser.month_to_int
quality_to_int = {
'およそ' : Date.QUAL_ESTIMATED,
'ごろ' : Date.QUAL_ESTIMATED,
'位' : Date.QUAL_ESTIMATED,
'計算上' : Date.QUAL_CALCULATED,
}
bce = ["紀元前", "BC"] + DateParser.bce
def init_strings(self):
"""
This method compiles regular expression strings for matching dates.
"""
DateParser.init_strings(self)
DateParser.calendar_to_int.update({
'グレゴリオ暦' : Date.CAL_GREGORIAN,
'g' : Date.CAL_GREGORIAN,
'ユリウス暦' : Date.CAL_JULIAN,
'j' : Date.CAL_JULIAN,
'ユダヤ暦' : Date.CAL_HEBREW,
'h' : Date.CAL_HEBREW,
'ヒジュラ暦' : Date.CAL_ISLAMIC,
'i' : Date.CAL_ISLAMIC,
'フランス革命暦' : Date.CAL_FRENCH,
'共和暦' : Date.CAL_FRENCH,
'f' : Date.CAL_FRENCH,
'イラン暦' : Date.CAL_PERSIAN,
'p' : Date.CAL_PERSIAN,
'スウェーデン暦' : Date.CAL_SWEDISH,
's' : Date.CAL_SWEDISH,
})
DateParser.month_to_int.update({
"一月" : 1,
"ichigatsu" : 1,
"睦月" : 1,
"mutsuki" : 1,
"二月" : 2,
"nigatsu" : 2,
"如月" : 2,
"kisaragi" : 2,
"衣更着" : 2,
"kinusaragi" : 2,
"三月" : 3,
"sangatsu" : 3,
"弥生" : 3,
"yayoi" : 3,
"四月" : 4,
"shigatsu" : 4,
"卯月" : 4,
"uzuki" : 4,
"五月" : 5,
"gogatsu" : 5,
"皐月" : 5,
"satsuki" : 5,
"早苗月" : 5,
"sanaetsuki" : 5,
"六月" : 6,
"rokugatsu" : 6,
"水無月" : 6,
"minazuki" : 6,
"七月" : 7,
"shichigatsu" : 7,
"文月" : 7,
"fumizuki" : 7,
"八月" : 8,
"hachigatsu" : 8,
"葉月" : 8,
"hazuki" : 8,
"九月" : 9,
"kugatsu" : 9,
"長月" : 9,
"nagatsuki" : 9,
"十月" : 10,
"jugatsu" : 10,
"jūgatsu" : 10,
"juugatsu" : 10,
"神無月" : 10,
"kannazuki" : 10,
"kaminazuki" : 10,
"神有月" : 10,
"神在月" : 10,
"kamiarizuki" : 10,
"十一月" : 11,
"juichigatsu" : 11,
"jūichigatsu" : 11,
"juuichigatsu" : 11,
"霜月" : 11,
"shimotsuki" : 11,
"十二月" : 12,
"junigatsu" : 12,
"jūnigatsu" : 12,
"juunigatsu" : 12,
"師走" : 12,
"shiwasu" : 12,
})
_span_1 = ['から', '~', '〜']
_span_2 = ['まで', '']
_range_1 = ['から', 'と', '~', '〜']
_range_2 = ['までの間', 'の間']
self._span = re.compile("(?P<start>.+)(%s)(?P<stop>\d+)(%s)" %
('|'.join(_span_1), '|'.join(_span_2)),
re.IGNORECASE)
self._range = re.compile("(?P<start>.+)(%s)(?P<stop>.+)(%s)" %
('|'.join(_range_1), '|'.join(_range_2)),
re.IGNORECASE)
self._numeric = re.compile("((\d+)年\s*)?((\d+)月\s*)?(\d+)?日?\s*$")
#-------------------------------------------------------------------------
#
# Japanese display
#
#-------------------------------------------------------------------------
class DateDisplayJA(DateDisplay):
"""
Japanese language date display class.
"""
# Specify what is actually the "System Default".
_locale_tformat = _grampslocale.tformat
_locale_tformat = _locale_tformat.replace('%d', "31")
_locale_tformat = _locale_tformat.replace('%m', "12")
_locale_tformat = _locale_tformat.replace('%Y', "1999")
# This definition must agree with its "_display_gregorian" method
formats = ("YYYY-MM-DD (ISO)", # 0
"システムデフォールト (" + _locale_tformat + ")", # 1
"1999年12月31日", # 2
"1999年十二月31日", # 3
)
def _display_gregorian(self, date_val, **kwargs):
"""
display gregorian calendar date in different format
"""
# this must agree with its locale-specific "formats" definition
year = self._slash_year(date_val[2], date_val[3])
if self.format == 0:
# ISO
return self.display_iso(date_val)
elif self.format == 1:
# System Default
if date_val[2] < 0 or date_val[3]:
return self.display_iso(date_val)
else:
if date_val[0] == date_val[1] == 0:
value = str(date_val[2])
else:
value = self._tformat.replace('%m', str(date_val[1]))
if date_val[0] == 0: # ignore the zero day and its delimiter
i_day = value.find('%d')
value = value.replace(value[i_day:i_day+3], '')
value = value.replace('%d', str(date_val[0]))
value = value.replace('%Y', str(date_val[2]))
elif self.format == 2:
# 1999年12月31日
if date_val[0] == 0:
if date_val[1] == 0:
value = "%s年" % year
else:
value = "%s年%s" % (year,
self.short_months[date_val[1]])
else:
value = "%s年%s%s日" % (year,
self.short_months[date_val[1]],
date_val[0])
elif self.format == 3:
# 1999年十二月31日
if date_val[0] == 0:
if date_val[1] == 0:
value = "%s年" % year
else:
value = "%s年%s" % (year,
self.long_months[date_val[1]])
else:
value = "%s年%s%s日" % (year,
self.long_months[date_val[1]],
date_val[0])
else:
return self.display_iso(date_val)
if date_val[2] < 0:
return self._bce_str % value
else:
return value
display = DateDisplay.display_formatted
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('ja_JP', 'ja', 'japanese', 'Japanese'),
DateParserJA, DateDisplayJA)
+4 -23
View File
@@ -22,7 +22,7 @@
"""
Lithuanian-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -130,6 +130,8 @@ class DateParserLT(DateParser):
def init_strings(self):
DateParser.init_strings(self)
self._text2 = re.compile('((\d+)(/\d+)?)?\s+?m\.\s+%s\s*(\d+)?\s*d?\.?$'
% self._mon_str, re.IGNORECASE)
_span_1 = ['nuo']
_span_2 = ['iki']
_range_1 = ['tarp']
@@ -141,27 +143,6 @@ class DateParserLT(DateParser):
('|'.join(_range_1), '|'.join(_range_2)),
re.IGNORECASE)
#------------------------------------------------------------------------
#
# FIXME: oficial long date format (ex, 2011 m. vasario 4 d.)
# is not recognized correctly:
# with self._text2 - day is recognized as year, year - as day
# with self._iso - month not recognized, day recognized,
# year increased by 1, date treated as double
# TODO: in _DateParser.py in _parse_calendar modify groups
#
#------------------------------------------------------------------------
#
# # gregorian and julian
#
# self._text2 = re.compile('(\d+)?\s*?m\.?\s*?%s\.?\s*((\d+)(/\d+)?)?\s*?d?\.?' %
# self._mon_str, re.IGNORECASE)
#
# self._iso = re.compile('(\d+)(/\d+)?\s*?m?\.?\s+?%s\.?\s*((\d+))?\s*?d?\.?' %
# self._mon_str, re.IGNORECASE)
#
#-------------------------------------------------------------------------
#-------------------------------------------------------------------------
#
# Lithuanian displayer
@@ -204,7 +185,7 @@ class DateDisplayLT(DateDisplay):
"mmmm-MM-DD (ISO)", "mmmm m. mėnesio diena d.", "Mėn diena, metai")
# this definition must agree with its "_display_gregorian" method
def _display_gregorian(self, date_val):
def _display_gregorian(self, date_val, **kwargs):
"""
display gregorian calendar date in different format
"""
+1 -1
View File
@@ -22,7 +22,7 @@
"""
Norwegian-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+1 -2
View File
@@ -28,7 +28,6 @@
"""
Dutch-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
@@ -165,7 +164,7 @@ class DateDisplayNL(DateDisplay):
)
# this definition must agree with its "_display_gregorian" method
def _display_gregorian(self, date_val):
def _display_gregorian(self, date_val, **kwargs):
"""
display gregorian calendar date in different format
"""
+2 -2
View File
@@ -25,7 +25,7 @@
"""
Polish-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -215,7 +215,7 @@ class DateDisplayPL(DateDisplay):
"XII"
)
def _display_gregorian(self, date_val):
def _display_gregorian(self, date_val, **kwargs):
"""
display gregorian calendar date in different format
"""
+1 -1
View File
@@ -24,7 +24,7 @@
"""
Portuguese-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+22 -1
View File
@@ -22,7 +22,7 @@
"""
Russian-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -130,12 +130,33 @@ class DateDisplayRU(DateDisplay):
else:
return self.format_long_month_year(date_val[1], year,
inflect, long_months)
elif date_val[1] == 0: # month is zero but day is not (see 8477)
return self.display_iso(date_val)
else:
return "{day:d} {long_month.f[Р]} {year}".format(
day = date_val[0],
long_month = long_months[date_val[1]],
year = year)
def dd_dformat05(self, date_val, inflect, short_months):
"""
day month_abbreviation year -- for Russian locale
"""
year = self._slash_year(date_val[2], date_val[3])
if date_val[0] == 0:
if date_val[1] == 0:
return year
else:
return self.format_short_month_year(date_val[1], year,
inflect, short_months)
elif date_val[1] == 0: # month is zero but day is not (see 8477)
return self.display_iso(date_val)
else:
return "{day:d} {short_month.f[Р]} {year}".format(
day = date_val[0],
short_month = short_months[date_val[1]],
year = year)
#-------------------------------------------------------------------------
#
# Register classes
+1 -1
View File
@@ -22,7 +22,7 @@
"""
Slovak-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
+15 -205
View File
@@ -22,7 +22,7 @@
# Slovenian version 2010 by Bernard Banko, based on croatian one by Josip
"""
Slovenian-specific classes for parsing and displaying dates.
Slovenian-specific classes for parsing and displaying dates - new framework.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
@@ -51,79 +51,6 @@ class DateParserSL(DateParser):
"""
Converts a text string into a Date object
"""
month_to_int = DateParser.month_to_int
month_to_int["januar"] = 1
month_to_int["januarja"] = 1
month_to_int["januarjem"] = 1
month_to_int["jan"] = 1
month_to_int["i"] = 1
month_to_int["februar"] = 2
month_to_int["februarjem"] = 2
month_to_int["februarja"] = 2
month_to_int["feb"] = 2
month_to_int["ii"] = 2
month_to_int["mar"] = 3
month_to_int["marcem"] = 3
month_to_int["marec"] = 3
month_to_int["marca"] = 3
month_to_int["iii"] = 3
month_to_int["apr"] = 4
month_to_int["april"] = 4
month_to_int["aprilom"] = 4
month_to_int["aprila"] = 4
month_to_int["iv"] = 4
month_to_int["maj"] = 5
month_to_int["maja"] = 5
month_to_int["majem"] = 5
month_to_int["v"] = 5
month_to_int["jun"] = 6
month_to_int["junij"] = 6
month_to_int["junijem"] = 6
month_to_int["junija"] = 6
month_to_int["vi"] = 6
month_to_int["jul"] = 7
month_to_int["julij"] = 7
month_to_int["julijem"] = 7
month_to_int["julija"] = 7
month_to_int["vii"] = 7
month_to_int["avg"] = 8
month_to_int["avgust"] = 8
month_to_int["avgustom"] = 8
month_to_int["avgusta"] = 8
month_to_int["viii"] = 8
month_to_int["sep"] = 9
month_to_int["sept"] = 9
month_to_int["september"] = 9
month_to_int["septembrom"] = 9
month_to_int["septembra"] = 9
month_to_int["ix"] = 9
month_to_int["okt"] = 10
month_to_int["oktober"] = 10
month_to_int["oktobrom"] = 10
month_to_int["oktobra"] = 10
month_to_int["x"] = 10
month_to_int["nov"] = 11
month_to_int["november"] = 11
month_to_int["novembrom"] = 11
month_to_int["novembra"] = 11
month_to_int["xi"] = 11
month_to_int["dec"] = 12
month_to_int["december"] = 12
month_to_int["decembrom"] = 12
month_to_int["decembra"] = 12
month_to_int["xii"] = 12
modifier_to_int = {
'pred' : Date.MOD_BEFORE,
@@ -136,31 +63,18 @@ class DateParserSL(DateParser):
'cca.' : Date.MOD_ABOUT,
'cca' : Date.MOD_ABOUT,
'circa' : Date.MOD_ABOUT,
'ca.' : Date.MOD_ABOUT,
}
calendar_to_int = {
'gregorijanski' : Date.CAL_GREGORIAN,
'greg.' : Date.CAL_GREGORIAN,
'julijanski' : Date.CAL_JULIAN,
'jul.' : Date.CAL_JULIAN,
'hebrejski' : Date.CAL_HEBREW,
'hebr.' : Date.CAL_HEBREW,
'islamski' : Date.CAL_ISLAMIC,
'isl.' : Date.CAL_ISLAMIC,
'francoski republikanski': Date.CAL_FRENCH,
'franc.' : Date.CAL_FRENCH,
'perzijski' : Date.CAL_PERSIAN,
'perz. ' : Date.CAL_PERSIAN,
'švedski' : Date.CAL_SWEDISH,
'šved.' : Date.CAL_SWEDISH,
'ca.' : Date.MOD_ABOUT,
'približno' : Date.MOD_ABOUT,
'pribl.' : Date.MOD_ABOUT,
}
quality_to_int = {
'približno' : Date.QUAL_ESTIMATED,
'pribl.' : Date.QUAL_ESTIMATED,
'izračunano' : Date.QUAL_CALCULATED,
'izrač.' : Date.QUAL_CALCULATED,
'ocenjeno' : Date.QUAL_ESTIMATED,
'oc.' : Date.QUAL_ESTIMATED,
'po oceni' : Date.QUAL_ESTIMATED,
'izračunano' : Date.QUAL_CALCULATED,
'izrač.' : Date.QUAL_CALCULATED,
'po izračunu': Date.QUAL_CALCULATED,
}
bce = ["pred našim štetjem", "pred Kristusom",
@@ -170,6 +84,7 @@ class DateParserSL(DateParser):
"""
compiles regular expression strings for matching dates
"""
DateParser.init_strings(self)
# match 'Day. MONTH year.' format with or without dots
self._text2 = re.compile('(\d+)?\.?\s*?%s\.?\s*((\d+)(/\d+)?)?\s*\.?$'
@@ -194,116 +109,11 @@ class DateDisplaySL(DateDisplay):
"""
Slovenian language date display class.
"""
long_months = ( "", "januarja", "februarja", "marca","aprila",
"maja", "junija", "julija", "avgusta", "septembra",
"oktobra", "novembra", "decembra"
)
short_months = ( "", "jan", "feb", "mar", "apr", "maj", "jun",
"jul", "avg", "sep", "okt", "nov", "dec"
)
calendar = (
"", "julijanski", "hebrejski",
"francoski republikanski", "perzijski", "islamski",
"švedski"
)
# TODO fix BUG 7064: non-Gregorian calendars wrongly use BCE notation for negative dates
# not refactoring _bce_str into base class because it'll be gone under #7064
_bce_str = "%s pr.Kr."
_mod_str = ("", "pred ", "po ", "okrog ", "", "", "")
_qual_str = ("", "približno ", "izračunano ")
_bce_str = "%s p.n.š."
formats = (
"ISO (leto-mm-dd)",
"številčno",
"dan. mes. leto",
"dan. mesec leto"
)
# this definition must agree with its "_display_gregorian" method
def _display_gregorian(self, date_val):
"""
display gregorian calendar date in different format
"""
# this must agree with its locale-specific "formats" definition
year = self._slash_year(date_val[2], date_val[3])
if self.format == 0:
return self.display_iso(date_val)
elif self.format == 1:
# day. month_number. year
if date_val[3]:
return self.display_iso(date_val)
else:
if date_val[0] == 0 and date_val[1] == 0:
value = str(date_val[2])
else:
value = self._tformat.replace('%m', str(date_val[1]))
value = value.replace('%d', str(date_val[0]))
value = value.replace('%Y', str(date_val[2]))
value = value.replace('-', '. ')
elif self.format == 2:
# day. month_abbreviation. year
if date_val[0] == 0:
if date_val[1] == 0:
value = year
else:
value = "%s. %s" % (self.short_months[date_val[1]], year)
else:
value = "%d. %s. %s" % (date_val[0],
self.short_months[date_val[1]], year)
else:
# day. month_name year
if date_val[0] == 0:
if date_val[1] == 0:
value = "%s." % year
else:
value = "%s %s" % (self.long_months[date_val[1]], year)
else:
value = "%d. %s %s" % (
date_val[0],self.long_months[date_val[1]], year)
if date_val[2] < 0:
return self._bce_str % value
else:
return value
def display(self, date):
"""
Return a text string representing the date.
"""
mod = date.get_modifier()
cal = date.get_calendar()
qual = date.get_quality()
start = date.get_start_date()
newyear = date.get_new_year()
qual_str = self._qual_str[qual]
if mod == Date.MOD_TEXTONLY:
return date.get_text()
elif start == Date.EMPTY:
return ""
elif mod == Date.MOD_SPAN:
d_1 = self.display_cal[cal](start)
d_2 = self.display_cal[cal](date.get_stop_date())
scal = self.format_extras(cal, newyear)
return "%sod %s do %s%s" % (qual_str, d_1, d_2, scal)
elif mod == Date.MOD_RANGE:
d_1 = self.display_cal[cal](start)
d_2 = self.display_cal[cal](date.get_stop_date())
scal = self.format_extras(cal, newyear)
date_string = "%smed %s in %s%s" % (qual_str, d_1, d_2, scal)
date_string = date_string.replace("a ","em ") #to correct declination
date_string = date_string.replace("lem ","lom ")
date_string = date_string.replace("rem ","rom ")
date_string = date_string.replace("tem ","tom ")
return date_string
else:
text = self.display_cal[date.get_calendar()](start)
scal = self.format_extras(cal, newyear)
date_string = "%s%s%s%s" % (qual_str, self._mod_str[mod], text, scal)
return date_string
display = DateDisplay.display_formatted
#-------------------------------------------------------------------------
#
+2 -2
View File
@@ -25,7 +25,7 @@
"""
Serbian-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
@@ -240,7 +240,7 @@ class DateDisplaySR_Base(DateDisplay):
"VII", "VIII", "IX", "X", "XI", "XII"
)
def _display_gregorian(self, date_val):
def _display_gregorian(self, date_val, **kwargs):
"""
display gregorian calendar date in different format
"""
+1 -1
View File
@@ -22,7 +22,7 @@
"""
Swedish-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
# Python modules
-1
View File
@@ -29,7 +29,6 @@ Ukrainian-specific classes for parsing and displaying dates.
# Python modules
#
#-------------------------------------------------------------------------
from __future__ import unicode_literals
import re
#-------------------------------------------------------------------------
-250
View File
@@ -1,250 +0,0 @@
# -*- coding: utf-8 -*-
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2006 Donald N. Allingham
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
"""
Chinese-specific classes for parsing and displaying dates.
"""
from __future__ import unicode_literals
import re
#-------------------------------------------------------------------------
#
# GRAMPS modules
#
#-------------------------------------------------------------------------
from ..lib.date import Date
from ._dateparser import DateParser
from ._datedisplay import DateDisplay
from ._datehandler import register_datehandler
#-------------------------------------------------------------------------
#
# Chinese parser
#
#-------------------------------------------------------------------------
class DateParserZH(DateParser):
"""
Convert a text string into a Date object. If the date cannot be
converted, the text string is assigned.
"""
# translate english strings into chinese
modifier_to_int = {
'before' : Date.MOD_BEFORE, 'bef' : Date.MOD_BEFORE,
'bef.' : Date.MOD_BEFORE, 'after' : Date.MOD_AFTER,
'aft' : Date.MOD_AFTER, 'aft.' : Date.MOD_AFTER,
'about' : Date.MOD_ABOUT, 'abt.' : Date.MOD_ABOUT,
'abt' : Date.MOD_ABOUT, 'circa' : Date.MOD_ABOUT,
'c.' : Date.MOD_ABOUT, 'around' : Date.MOD_ABOUT,
}
month_to_int = DateParser.month_to_int
month_to_int["正"] = 1
month_to_int["一"] = 1
month_to_int["zhēngyuè"] = 1
month_to_int["二"] = 2
month_to_int["èryuè"] = 2
month_to_int["三"] = 3
month_to_int["sānyuè"] = 3
month_to_int["四"] = 4
month_to_int["sìyuè"] = 4
month_to_int["五"] = 5
month_to_int["wǔyuè"] = 5
month_to_int["六"] = 6
month_to_int["liùyuè"] = 6
month_to_int["七"] = 7
month_to_int["qīyuè"] = 7
month_to_int["八"] = 8
month_to_int["bāyuè"] = 8
month_to_int["九"] = 9
month_to_int["jiǔyuè"] = 9
month_to_int["十"] = 10
month_to_int["shíyuè"] = 10
month_to_int["十一"] = 11
month_to_int["shíyīyuè"] = 11
month_to_int["十二"] = 12
month_to_int["shí'èryuè"] = 12
month_to_int["假閏"] = 13
month_to_int["jiǎ rùn yùe"] = 13
# translate english strings into chinese
calendar_to_int = {
'gregorian' : Date.CAL_GREGORIAN,
'g' : Date.CAL_GREGORIAN,
'julian' : Date.CAL_JULIAN,
'j' : Date.CAL_JULIAN,
'hebrew' : Date.CAL_HEBREW,
'h' : Date.CAL_HEBREW,
'islamic' : Date.CAL_ISLAMIC,
'i' : Date.CAL_ISLAMIC,
'french' : Date.CAL_FRENCH,
'french republican': Date.CAL_FRENCH,
'f' : Date.CAL_FRENCH,
'persian' : Date.CAL_PERSIAN,
'p' : Date.CAL_PERSIAN,
'swedish' : Date.CAL_SWEDISH,
's' : Date.CAL_SWEDISH,
}
# translate english strings into chinese
quality_to_int = {
'estimated' : Date.QUAL_ESTIMATED,
'est.' : Date.QUAL_ESTIMATED,
'est' : Date.QUAL_ESTIMATED,
'calc.' : Date.QUAL_CALCULATED,
'calc' : Date.QUAL_CALCULATED,
'calculated' : Date.QUAL_CALCULATED,
}
# translate english strings into chinese
bce = ["before calendar", "negative year"] + DateParser.bce
def init_strings(self):
"""
This method compiles regular expression strings for matching dates.
Most of the re's in most languages can stay as is. span and range
most likely will need to change. Whatever change is done, this method
may be called first as DateParser.init_strings(self) so that the
invariant expresions don't need to be repeteadly coded. All differences
can be coded after DateParser.init_strings(self) call, that way they
override stuff from this method. See DateParserRU() as an example.
"""
DateParser.init_strings(self)
# day: 日 ; month : 月 ; year : 年
# See DateParser class; translate english strings (from/to, between/and) into chinese
# do not translate <start> and <stop>
self._span = re.compile("(from)\s+(?P<start>.+)\s+to\s+(?P<stop>.+)",
re.IGNORECASE)
self._range = re.compile("(bet|bet.|between)\s+(?P<start>.+)\s+and\s+(?P<stop>.+)",
re.IGNORECASE)
#def _parse_lunisolar(self, date_val=text):
#text = text.strip() # otherwise spaces can make it a bad date
#date = Date(self._qual_str, self._mod_str, self._cal_str, text, self._ny_str)
#return unicode(text)
#-------------------------------------------------------------------------
#
# Chinese display
#
#-------------------------------------------------------------------------
class DateDisplayZH(DateDisplay):
"""
Chinese language date display class.
"""
# translate english strings into chinese
long_months = ( "", "January", "February", "March", "April", "May",
"June", "July", "August", "September", "October",
"November", "December" )
short_months = ( "", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec" )
calendar = (
"", "Julian", "Hebrew", "French Republican",
"Persian", "Islamic", "Swedish"
)
_mod_str = ("", "before ", "after ", "around ", "", "", "")
_qual_str = ("", "estimated ", "calculated ", "")
_bce_str = "%s B.C.E."
def display(self, date):
"""
Return a text string representing the date.
"""
mod = date.get_modifier()
cal = date.get_calendar()
qual = date.get_quality()
start = date.get_start_date()
newyear = date.get_new_year()
qual_str = (self._qual_str)[qual]
if mod == Date.MOD_TEXTONLY:
return date.get_text()
elif start == Date.EMPTY:
return ""
elif mod == Date.MOD_SPAN:
date1 = self.display_cal[cal](start)
date2 = self.display_cal[cal](date.get_stop_date())
scal = self.format_extras(cal, newyear)
# translate english strings into chinese
return "%s%s %s %s %s%s" % (qual_str, 'from', date1, 'to',
date2, scal)
elif mod == Date.MOD_RANGE:
date1 = self.display_cal[cal](start)
date2 = self.display_cal[cal](date.get_stop_date())
scal = self.format_extras(cal, newyear)
# translate english strings into chinese
return "%s%s %s %s %s%s" % (qual_str, 'between', date1, 'and',
date2, scal)
else:
text = self.display_cal[date.get_calendar()](start)
scal = self.format_extras(cal, newyear)
return "%s%s%s%s" % (qual_str, (self._mod_str)[mod], text,
scal)
#def _display_chinese(self, date_val):
#self._tformat = '%Y年%m月%d日'
#year = self._slash_year(date_val[2], date_val[3])
#if date_val[3]:
#return self.display_iso(date_val)
#else:
#if date_val[0] == date_val[1] == 0:
#value = u'%Y年' % date_val[2]
#else:
#value = self._tformat.replace('%m月', str(self.lunisolar[date_val[1]]))
#value = u'%m月' % date_val[1]
#value = u'%d日' % date_val[0]
#value = u'%Y年' % date_val[2]
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('zh_CN', 'zh_TW', 'zh_SG', 'zh_HK', 'zh', 'chinese', 'Chinese'),
DateParserZH, DateDisplayZH)
+182
View File
@@ -0,0 +1,182 @@
# -*- coding: utf-8 -*-
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2006 Donald N. Allingham
# Copyright (C) 2014-2015 Paul Franklin
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
"""
Simplified-Chinese-specific classes for parsing and displaying dates.
"""
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
import re
#-------------------------------------------------------------------------
#
# GRAMPS modules
#
#-------------------------------------------------------------------------
from ..lib.date import Date
from ._dateparser import DateParser
from ._datedisplay import DateDisplay
from ._datehandler import register_datehandler
#-------------------------------------------------------------------------
#
# Simplified-Chinese parser
#
#-------------------------------------------------------------------------
class DateParserZH_CN(DateParser):
"""
Convert a text string into a Date object. If the date cannot be
converted, the text string is assigned.
"""
# modifiers before the date
modifier_to_int = {
'以前' : Date.MOD_BEFORE,
'以后' : Date.MOD_AFTER,
'大约' : Date.MOD_ABOUT,
}
month_to_int = DateParser.month_to_int
month_to_int["正"] = 1
month_to_int["一"] = 1
month_to_int["zhēngyuè"] = 1
month_to_int["二"] = 2
month_to_int["èryuè"] = 2
month_to_int["三"] = 3
month_to_int["sānyuè"] = 3
month_to_int["四"] = 4
month_to_int["sìyuè"] = 4
month_to_int["五"] = 5
month_to_int["wǔyuè"] = 5
month_to_int["六"] = 6
month_to_int["liùyuè"] = 6
month_to_int["七"] = 7
month_to_int["qīyuè"] = 7
month_to_int["八"] = 8
month_to_int["bāyuè"] = 8
month_to_int["九"] = 9
month_to_int["jiǔyuè"] = 9
month_to_int["十"] = 10
month_to_int["shíyuè"] = 10
month_to_int["十一"] = 11
month_to_int["shíyīyuè"] = 11
month_to_int["十二"] = 12
month_to_int["shí'èryuè"] = 12
month_to_int["假閏"] = 13
month_to_int["jiǎ rùn yùe"] = 13
calendar_to_int = {
'阳历' : Date.CAL_GREGORIAN,
'g' : Date.CAL_GREGORIAN,
'儒略历' : Date.CAL_JULIAN,
'j' : Date.CAL_JULIAN,
'希伯来历' : Date.CAL_HEBREW,
'h' : Date.CAL_HEBREW,
'伊斯兰历' : Date.CAL_ISLAMIC,
'i' : Date.CAL_ISLAMIC,
'法国共和历' : Date.CAL_FRENCH,
'f' : Date.CAL_FRENCH,
'伊郎历' : Date.CAL_PERSIAN,
'p' : Date.CAL_PERSIAN,
'瑞典历' : Date.CAL_SWEDISH,
's' : Date.CAL_SWEDISH,
}
quality_to_int = {
'据估计' : Date.QUAL_ESTIMATED,
'据计算' : Date.QUAL_CALCULATED,
}
# FIXME translate these English strings into simplified-Chinese ones
bce = ["before calendar", "negative year"] + DateParser.bce
def init_strings(self):
"""
This method compiles regular expression strings for matching dates.
"""
DateParser.init_strings(self)
_span_1 = ['自']
_span_2 = ['至']
_range_1 = ['介于']
_range_2 = ['与']
self._span = re.compile("(%s)(?P<start>.+)(%s)(?P<stop>\d+)" %
('|'.join(_span_1), '|'.join(_span_2)),
re.IGNORECASE)
self._range = re.compile("(%s)(?P<start>.+)(%s)(?P<stop>\d+)" %
('|'.join(_range_1), '|'.join(_range_2)),
re.IGNORECASE)
self._numeric = re.compile("((\d+)年\s*)?((\d+)月\s*)?(\d+)?日?\s*$")
#-------------------------------------------------------------------------
#
# Simplified-Chinese display
#
#-------------------------------------------------------------------------
class DateDisplayZH_CN(DateDisplay):
"""
Simplified-Chinese language date display class.
"""
formats = (
"年年年年-月月-日日 (ISO)", "数字格式",
)
# this definition must agree with its "_display_calendar" method
# FIXME translate these English strings into simplified-Chinese ones
_bce_str = "%s B.C.E."
display = DateDisplay.display_formatted
def _display_calendar(self, date_val, long_months, short_months = None,
inflect=""):
# this must agree with its locale-specific "formats" definition
if short_months is None:
# Let the short formats work the same as long formats
short_months = long_months
if self.format == 0:
return self.display_iso(date_val)
# elif self.format == 1:
else:
# numerical
value = self.dd_dformat01(date_val)
if date_val[2] < 0:
# TODO fix BUG 7064: non-Gregorian calendars wrongly use BCE notation for negative dates
return self._bce_str % value
else:
return value
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('zh_CN', 'zh_SG', 'zh', 'chinese', 'Chinese'),
DateParserZH_CN, DateDisplayZH_CN)
+182
View File
@@ -0,0 +1,182 @@
# -*- coding: utf-8 -*-
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2006 Donald N. Allingham
# Copyright (C) 2014-2015 Paul Franklin
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
"""
Traditional-Chinese-specific classes for parsing and displaying dates.
"""
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
import re
#-------------------------------------------------------------------------
#
# GRAMPS modules
#
#-------------------------------------------------------------------------
from ..lib.date import Date
from ._dateparser import DateParser
from ._datedisplay import DateDisplay
from ._datehandler import register_datehandler
#-------------------------------------------------------------------------
#
# Traditional-Chinese parser
#
#-------------------------------------------------------------------------
class DateParserZH_TW(DateParser):
"""
Convert a text string into a Date object. If the date cannot be
converted, the text string is assigned.
"""
# modifiers before the date
modifier_to_int = {
'以前' : Date.MOD_BEFORE,
'以後' : Date.MOD_AFTER,
'大約' : Date.MOD_ABOUT,
}
month_to_int = DateParser.month_to_int
month_to_int["正"] = 1
month_to_int["一"] = 1
month_to_int["zhēngyuè"] = 1
month_to_int["二"] = 2
month_to_int["èryuè"] = 2
month_to_int["三"] = 3
month_to_int["sānyuè"] = 3
month_to_int["四"] = 4
month_to_int["sìyuè"] = 4
month_to_int["五"] = 5
month_to_int["wǔyuè"] = 5
month_to_int["六"] = 6
month_to_int["liùyuè"] = 6
month_to_int["七"] = 7
month_to_int["qīyuè"] = 7
month_to_int["八"] = 8
month_to_int["bāyuè"] = 8
month_to_int["九"] = 9
month_to_int["jiǔyuè"] = 9
month_to_int["十"] = 10
month_to_int["shíyuè"] = 10
month_to_int["十一"] = 11
month_to_int["shíyīyuè"] = 11
month_to_int["十二"] = 12
month_to_int["shí'èryuè"] = 12
month_to_int["假閏"] = 13
month_to_int["jiǎ rùn yùe"] = 13
calendar_to_int = {
'陽曆' : Date.CAL_GREGORIAN,
'g' : Date.CAL_GREGORIAN,
'儒略曆' : Date.CAL_JULIAN,
'j' : Date.CAL_JULIAN,
'希伯來歷' : Date.CAL_HEBREW,
'h' : Date.CAL_HEBREW,
'伊斯蘭曆' : Date.CAL_ISLAMIC,
'i' : Date.CAL_ISLAMIC,
'法國共和歷' : Date.CAL_FRENCH,
'f' : Date.CAL_FRENCH,
'伊郎歷' : Date.CAL_PERSIAN,
'p' : Date.CAL_PERSIAN,
'瑞典歷' : Date.CAL_SWEDISH,
's' : Date.CAL_SWEDISH,
}
quality_to_int = {
'據估計' : Date.QUAL_ESTIMATED,
'據計算' : Date.QUAL_CALCULATED,
}
# FIXME translate these English strings into traditional-Chinese ones
bce = ["before calendar", "negative year"] + DateParser.bce
def init_strings(self):
"""
This method compiles regular expression strings for matching dates.
"""
DateParser.init_strings(self)
_span_1 = ['自']
_span_2 = ['至']
_range_1 = ['介於']
_range_2 = ['與']
self._span = re.compile("(%s)(?P<start>.+)(%s)(?P<stop>\d+)" %
('|'.join(_span_1), '|'.join(_span_2)),
re.IGNORECASE)
self._range = re.compile("(%s)(?P<start>.+)(%s)(?P<stop>\d+)" %
('|'.join(_range_1), '|'.join(_range_2)),
re.IGNORECASE)
self._numeric = re.compile("((\d+)年\s*)?((\d+)月\s*)?(\d+)?日?\s*$")
#-------------------------------------------------------------------------
#
# Traditional-Chinese display
#
#-------------------------------------------------------------------------
class DateDisplayZH_TW(DateDisplay):
"""
Traditional-Chinese language date display class.
"""
formats = (
"年年年年-月月-日日 (ISO)", "數字格式",
)
# this definition must agree with its "_display_calendar" method
# FIXME translate these English strings into traditional-Chinese ones
_bce_str = "%s B.C.E."
display = DateDisplay.display_formatted
def _display_calendar(self, date_val, long_months, short_months = None,
inflect=""):
# this must agree with its locale-specific "formats" definition
if short_months is None:
# Let the short formats work the same as long formats
short_months = long_months
if self.format == 0:
return self.display_iso(date_val)
# elif self.format == 1:
else:
# numerical
value = self.dd_dformat01(date_val)
if date_val[2] < 0:
# TODO fix BUG 7064: non-Gregorian calendars wrongly use BCE notation for negative dates
return self._bce_str % value
else:
return value
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('zh_TW', 'zh_HK'),
DateParserZH_TW, DateDisplayZH_TW)
+155 -58
View File
@@ -4,7 +4,7 @@
#
# Copyright (C) 2004-2006 Donald N. Allingham
# Copyright (C) 2013 Vassilii Khachaturov
# Copyright (C) 2014 Paul Franklin
# Copyright (C) 2014-2015 Paul Franklin
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -25,7 +25,6 @@
U.S English date display class. Should serve as the base class for all
localized tasks.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
@@ -162,47 +161,70 @@ class DateDisplay(object):
"from"
# first date in a span
# You only need to translate this string if you translate one of the
# inflect=_("...") with "from"
# If "from <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("from|{long_month} {year}"),
"to"
# second date in a span
# You only need to translate this string if you translate one of the
# inflect=_("...") with "to"
# If "to <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("to|{long_month} {year}"),
"between"
# first date in a range
# You only need to translate this string if you translate one of the
# inflect=_("...") with "between"
# If "between <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("between|{long_month} {year}"),
"and"
# second date in a range
# You only need to translate this string if you translate one of the
# inflect=_("...") with "and"
# If "and <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("and|{long_month} {year}"),
"before"
# If "before <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("before|{long_month} {year}"),
"after"
# If "after <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("after|{long_month} {year}"),
"about"
# If "about <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("about|{long_month} {year}"),
# TODO if no modifier, but with qual, might need to inflect in some lang.
"estimated"
# If "estimated <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("estimated|{long_month} {year}"),
"calculated"
# If "calculated <Month>" needs a special inflection in your
# language, translate this to "{long_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("calculated|{long_month} {year}"),
}
self.FORMATS_short_month_year = {
@@ -211,37 +233,70 @@ class DateDisplay(object):
"from"
# first date in a span
# If "from <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("from|{short_month} {year}"),
"to"
# second date in a span
# If "to <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("to|{short_month} {year}"),
"between"
# first date in a range
# If "between <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("between|{short_month} {year}"),
"and"
# second date in a range
# If "and <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("and|{short_month} {year}"),
"before"
# If "before <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("before|{short_month} {year}"),
"after"
# If "after <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("after|{short_month} {year}"),
"about"
# If "about <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("about|{short_month} {year}"),
"estimated"
# If "estimated <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("estimated|{short_month} {year}"),
"calculated"
# If "calculated <Month>" needs a special inflection in your
# language, translate this to "{short_month.f[X]} {year}"
# (where X is one of the month-name inflections you defined)
# else leave it untranslated
: _("calculated|{short_month} {year}"),
}
def set_format(self, format):
@@ -328,6 +383,56 @@ class DateDisplay(object):
else:
return value
def dd_span(self, date):
"""
Return a text string representing the span date
(it may be overridden if a locale-specific date displayer exists)
"""
cal = date.get_calendar()
qual_str = self._qual_str[date.get_quality()]
scal = self.format_extras(cal, date.get_new_year())
d1 = self.display_cal[cal](date.get_start_date(),
# If there is no special inflection for "from <Month>"
# in your language, DON'T translate this string. Otherwise,
# "translate" this to "from" in ENGLISH!!! ENGLISH!!!
inflect=self._("from-date|"))
d2 = self.display_cal[cal](date.get_stop_date(),
# If there is no special inflection for "to <Month>"
# in your language, DON'T translate this string. Otherwise,
# "translate" this to "to" in ENGLISH!!! ENGLISH!!!
inflect=self._("to-date|"))
return self._("{date_quality}from {date_start} to {date_stop}"
"{nonstd_calendar_and_ny}").format(
date_quality=qual_str,
date_start=d1,
date_stop=d2,
nonstd_calendar_and_ny=scal)
def dd_range(self, date):
"""
Return a text string representing the range date
(it may be overridden if a locale-specific date displayer exists)
"""
cal = date.get_calendar()
qual_str = self._qual_str[date.get_quality()]
scal = self.format_extras(cal, date.get_new_year())
d1 = self.display_cal[cal](date.get_start_date(),
# If there is no special inflection for "between <Month>"
# in your language, DON'T translate this string. Otherwise,
# "translate" this to "between" in ENGLISH!!! ENGLISH!!!
inflect=self._("between-date|"))
d2 = self.display_cal[cal](date.get_stop_date(),
# If there is no special inflection for "and <Month>"
# in your language, DON'T translate this string. Otherwise,
# "translate" this to "and" in ENGLISH!!! ENGLISH!!!
inflect=self._("and-date|"))
return self._("{date_quality}between {date_start} and {date_stop}"
"{nonstd_calendar_and_ny}").format(
date_quality=qual_str,
date_start=d1,
date_stop=d2,
nonstd_calendar_and_ny=scal)
def display_formatted(self, date):
"""
Return a text string representing the date, according to the format.
@@ -346,49 +451,9 @@ class DateDisplay(object):
elif start == Date.EMPTY:
return ""
elif mod == Date.MOD_SPAN:
d1 = self.display_cal[cal](start,
# If there is no special inflection for "from <Month>" in your
# language, don't translate this string.
# Otherwise, translate it to the ENGLISH!!! ENGLISH!!!
# key appearing above in the FORMATS_... dict
# that maps to the special inflected format string that you need to localize.
inflect=_("from-date|"))
d2 = self.display_cal[cal](date.get_stop_date(),
# If there is no special inflection for "to <Month>" in your
# language, don't translate this string.
# Otherwise, translate it to the ENGLISH!!! ENGLISH!!!
# key appearing above in the FORMATS_... dict
# that maps to the special inflected format string that you need to localize.
inflect=_("to-date|"))
scal = self.format_extras(cal, newyear)
return _("{date_quality}from {date_start} to {date_stop}"
"{nonstd_calendar_and_ny}").format(
date_quality=qual_str,
date_start=d1,
date_stop=d2,
nonstd_calendar_and_ny=scal)
return self.dd_span(date)
elif mod == Date.MOD_RANGE:
d1 = self.display_cal[cal](start,
# If there is no special inflection for "between <Month>" in your
# language, don't translate this string.
# Otherwise, translate it to the ENGLISH!!! ENGLISH!!!
# key appearing above in the FORMATS_... dict
# that maps to the special inflected format string that you need to localize.
inflect=_("between-date|"))
d2 = self.display_cal[cal](date.get_stop_date(),
# If there is no special inflection for "and <Month>" in your
# language, don't translate this string.
# Otherwise, translate it to the ENGLISH!!! ENGLISH!!!
# key appearing above in the FORMATS_... dict
# that maps to the special inflected format string that you need to localize.
inflect=_("and-date|"))
scal = self.format_extras(cal, newyear)
return _("{date_quality}between {date_start} and {date_stop}"
"{nonstd_calendar_and_ny}").format(
date_quality=qual_str,
date_start=d1,
date_stop=d2,
nonstd_calendar_and_ny=scal)
return self.dd_range(date)
else:
if mod == Date.MOD_BEFORE:
# If there is no special inflection for "before <Month>"
@@ -405,16 +470,40 @@ class DateDisplay(object):
# in your language, DON'T translate this string. Otherwise,
# "translate" this to "about" in ENGLISH!!! ENGLISH!!!
date_type = _("about-date|")
elif qual == Date.QUAL_ESTIMATED:
# If there is no special inflection for "estimated <Month>"
# in your language, DON'T translate this string. Otherwise,
# "translate" this to "estimated" in ENGLISH!!! ENGLISH!!!
date_type = _("estimated-date|")
elif qual == Date.QUAL_CALCULATED:
# If there is no special inflection for "calculated <Month>"
# in your language, DON'T translate this string. Otherwise,
# "translate" this to "calculated" in ENGLISH!!! ENGLISH!!!
date_type = _("calculated-date|")
else:
date_type = ""
# TODO -- do "estimated" and "calculated" need their own "if"?
# i.e., what happens if a date is both "modified" and "qualified"?
# it won't matter if the month gets the same lexeme type, but
# what should be done if the types differ? there can only be one
# lexeme type for any month so which one should be last? so we
# will wait and see if any language ever requires such fine tuning
# as maybe it will be as simple as putting the "elif" choices for
# "estimated" and "calculated" before the others, or something
text = self.display_cal[cal](start, inflect=date_type)
modifier = self._mod_str[mod]
# some languages have a modifier after the date (e.g. Finnish)
# (if so, they are specified in DateParser.modifier_after_to_int)
if modifier.startswith(' '):
text += modifier
modifier = ''
scal = self.format_extras(cal, newyear)
return _("{date_quality}{noncompound_modifier}{date}"
"{nonstd_calendar_and_ny}").format(
date_quality=qual_str,
noncompound_modifier=self._mod_str[mod],
date=text,
nonstd_calendar_and_ny=scal)
"{nonstd_calendar_and_ny}").format(
date_quality=qual_str,
noncompound_modifier=modifier,
date=text,
nonstd_calendar_and_ny=scal)
def _display_gregorian(self, date_val, **kwargs):
return self._display_calendar(date_val, self.long_months,
@@ -485,6 +574,8 @@ class DateDisplay(object):
else:
return self.format_long_month_year(date_val[1], year,
inflect, long_months)
elif date_val[1] == 0: # month is zero but day is not (see 8477)
return self.display_iso(date_val)
else:
# TRANSLATORS: this month is ALREADY inflected: ignore it
return _("{long_month} {day:d}, {year}").format(
@@ -509,6 +600,8 @@ class DateDisplay(object):
else:
return self.format_short_month_year(date_val[1], year,
inflect, short_months)
elif date_val[1] == 0: # month is zero but day is not (see 8477)
return self.display_iso(date_val)
else:
# TRANSLATORS: this month is ALREADY inflected: ignore it
return _("{short_month} {day:d}, {year}").format(
@@ -533,6 +626,8 @@ class DateDisplay(object):
else:
return self.format_long_month_year(date_val[1], year,
inflect, long_months)
elif date_val[1] == 0: # month is zero but day is not (see 8477)
return self.display_iso(date_val)
else:
# TRANSLATORS: this month is ALREADY inflected: ignore it
return _("{day:d} {long_month} {year}").format(
@@ -557,6 +652,8 @@ class DateDisplay(object):
else:
return self.format_short_month_year(date_val[1], year,
inflect, short_months)
elif date_val[1] == 0: # month is zero but day is not (see 8477)
return self.display_iso(date_val)
else:
# TRANSLATORS: this month is ALREADY inflected: ignore it
return _("{day:d} {short_month} {year}").format(
+3 -9
View File
@@ -21,7 +21,6 @@
"""
Class handling language-specific selection for date parser and displayer.
"""
from __future__ import unicode_literals
#-------------------------------------------------------------------------
#
@@ -45,7 +44,7 @@ log = logging.getLogger(".gen.datehandler")
#-------------------------------------------------------------------------
from ._dateparser import DateParser
from ._datedisplay import DateDisplay, DateDisplayEn
from ..constfunc import win, cuni
from ..constfunc import win
from ..const import GRAMPS_LOCALE as glocale
from gramps.gen.utils.grampslocale import GrampsLocale
@@ -70,8 +69,8 @@ if LANG:
else:
LANG_SHORT = "C"
LANG = cuni(LANG)
LANG_SHORT = cuni(LANG_SHORT)
LANG = str(LANG)
LANG_SHORT = str(LANG_SHORT)
LANG_TO_PARSER = {
'C' : DateParser,
@@ -84,11 +83,6 @@ LANG_TO_DISPLAY = {
'en' : DateDisplayEn,
'en_GB' : DateDisplayEn,
'English_United States' : DateDisplayEn,
'zh_CN' : DateDisplay,
'zh_TW' : DateDisplay,
'zh_SG' : DateDisplay,
'zh_HK' : DateDisplay,
'ja_JP' : DateDisplay,
'ko_KR' : DateDisplay,
'nb_NO' : DateDisplay,
}
+42 -22
View File
@@ -29,8 +29,6 @@ date parsing class. The default base class provides parsing for English.
# Python modules
#
#-------------------------------------------------------------------------
from __future__ import print_function, unicode_literals
import re
import calendar
@@ -196,6 +194,7 @@ class DateParser(object):
_locale = GrampsLocale(lang='en', languages='en')
fmt = _grampslocale.tformat
_fmt_parse = re.compile(".*%(\S).*%(\S).*%(\S).*")
# RFC-2822 only uses capitalized English abbreviated names, no locales.
@@ -345,13 +344,13 @@ class DateParser(object):
Date.CAL_SWEDISH : self._parse_swedish,
}
fmt = _grampslocale.tformat
match = self._fmt_parse.match(fmt.lower())
match = self._fmt_parse.match(self.fmt.lower())
if match:
self.dmy = (match.groups() == ('d', 'm', 'y') or \
match.groups() == ('d', 'b', 'y'))
self.ymd = (match.groups() == ('y', 'm', 'd') or \
match.groups() == ('y', 'b', 'd'))
# note ('m','d','y') is valid -- in which case both will be False
else:
self.dmy = True
self.ymd = False
@@ -529,22 +528,38 @@ class DateParser(object):
match = regex2.match(text.lower())
if match:
groups = match.groups()
if groups[1] is None:
m = 0
else:
m = mmap[groups[1].lower()]
d = self._get_int(groups[0])
if groups[2] is None:
y = None
s = False
else:
if groups[4] is not None: # slash year digit
y = int(groups[3]) + 1 # fullyear + 1
s = True
if self.ymd:
if groups[3] is None:
m = 0
else:
y = int(groups[3])
m = mmap[groups[3].lower()]
d = self._get_int(groups[4])
if groups[0] is None:
y = None
s = False
else:
if groups[2] is not None: # slash year digit
y = int(groups[1]) + 1 # fullyear + 1
s = True
else: # regular, non-slash year
y = int(groups[1])
s = False
else:
if groups[1] is None:
m = 0
else:
m = mmap[groups[1].lower()]
d = self._get_int(groups[0])
if groups[2] is None:
y = None
s = False
else:
if groups[4] is not None: # slash year digit
y = int(groups[3]) + 1 # fullyear + 1
s = True
else: # regular, non-slash year
y = int(groups[3])
s = False
value = (d, m, y, s)
if check and not check((d, m, y)):
value = Date.EMPTY
@@ -582,12 +597,11 @@ class DateParser(object):
y = self._get_int(groups[0])
m = self._get_int(groups[3])
d = self._get_int(groups[4])
if check and not check((d, m, y)):
return Date.EMPTY
if groups[2]: # slash year digit
if groups[2] and julian_valid((d, m, y + 1)): # slash year digit
return (d, m, y + 1, True)
else:
if check is None or check((d, m, y)):
return (d, m, y, False)
return Date.EMPTY
# Database datetime format, used in ex. MSSQL
# YYYYMMDD HH:MM:SS or YYYYMMDD or YYYYMMDDHHMMSS
@@ -616,12 +630,18 @@ class DateParser(object):
match = self._numeric.match(text)
if match:
groups = match.groups()
if groups == (None, None, None, None, None):
return Date.EMPTY
if self.ymd:
# '1789' and ymd: incomplete date
if groups[1] is None:
y = self._get_int(groups[4])
m = 0
d = 0
elif groups[3] is None:
y = self._get_int(groups[1])
m = self._get_int(groups[4])
d = 0
else:
y = self._get_int(groups[1])
m = self._get_int(groups[3])
+21 -18
View File
@@ -21,8 +21,22 @@
"""
Date strings to translate per each language for display and parsing.
__main__
--------
Run this code with the appropriate ``LANG`` and ``LC_DATE`` set for your target
language, in order to generate the .po snippets initialized with the strings
from your locale (from the deprecated data provided in _grampslocale).
E.g., for French::
LANG=fr_FR.utf8 LC_ALL=fr_FR.utf8 GRAMPS_RESOURCES=$PWD python -m gramps.gen.datehandler._datestrings
Then merge the output into your language's .po file, and further modify the
strings as needed. Then remove the strings from your language's
:class:`DateParserXX` and :class:`DateHandlerXX` classes.
"""
from __future__ import print_function, unicode_literals
#-------------------------------------------------------------------------
#
@@ -206,8 +220,14 @@ class DateStrings(object):
)
self.modifiers = ("",
# TRANSLATORS: if the modifier is after the date
# put the space ahead of the word instead of after it
_("date modifier|before "),
# TRANSLATORS: if the modifier is after the date
# put the space ahead of the word instead of after it
_("date modifier|after "),
# TRANSLATORS: if the modifier is after the date
# put the space ahead of the word instead of after it
_("date modifier|about "),
"", "", "")
@@ -228,23 +248,6 @@ class DateStrings(object):
_("Saturday"),
)
__doc__ += """
__main__
--------
Run this code with the appropriate ``LANG`` and ``LC_DATE`` set for your target
language, in order to generate the .po snippets initialized with the strings
from your locale (from the deprecated data provided in _grampslocale).
E.g., for French::
LANG=fr_FR.utf8 LC_ALL=fr_FR.utf8 GRAMPS_RESOURCES=$PWD python -m gramps.gen.datehandler._datestrings
Then merge the output into your language's .po file, and further modify the
strings as needed. Then remove the strings from your language's
:class:`DateParserXX` and :class:`DateHandlerXX` classes.
"""
if __name__ == '__main__':
import sys
from ..utils.grampslocale import GrampsLocale
+77 -84
View File
@@ -21,9 +21,6 @@
#
import locale
import sys
from ..constfunc import mac, win, conv_to_unicode
from gramps.gen.const import GRAMPS_LOCALE as glocale
"""
@@ -36,11 +33,6 @@ strftime.
Since these routines return values encoded into selected character
set, we have to convert to unicode.
"""
if sys.version_info[0] < 3:
to_uni = conv_to_unicode
else:
#locale returns unicode in python 3
to_uni = lambda x, y: x
codeset = glocale.encoding
try:
@@ -48,34 +40,34 @@ try:
# here only for the upgrade tool, see _datestrings.py __main__
_deprecated_long_months = (
"",
to_uni(locale.nl_langinfo(locale.MON_1), codeset),
to_uni(locale.nl_langinfo(locale.MON_2), codeset),
to_uni(locale.nl_langinfo(locale.MON_3), codeset),
to_uni(locale.nl_langinfo(locale.MON_4), codeset),
to_uni(locale.nl_langinfo(locale.MON_5), codeset),
to_uni(locale.nl_langinfo(locale.MON_6), codeset),
to_uni(locale.nl_langinfo(locale.MON_7), codeset),
to_uni(locale.nl_langinfo(locale.MON_8), codeset),
to_uni(locale.nl_langinfo(locale.MON_9), codeset),
to_uni(locale.nl_langinfo(locale.MON_10), codeset),
to_uni(locale.nl_langinfo(locale.MON_11), codeset),
to_uni(locale.nl_langinfo(locale.MON_12), codeset),
locale.nl_langinfo(locale.MON_1),
locale.nl_langinfo(locale.MON_2),
locale.nl_langinfo(locale.MON_3),
locale.nl_langinfo(locale.MON_4),
locale.nl_langinfo(locale.MON_5),
locale.nl_langinfo(locale.MON_6),
locale.nl_langinfo(locale.MON_7),
locale.nl_langinfo(locale.MON_8),
locale.nl_langinfo(locale.MON_9),
locale.nl_langinfo(locale.MON_10),
locale.nl_langinfo(locale.MON_11),
locale.nl_langinfo(locale.MON_12),
)
_deprecated_short_months = (
"",
to_uni(locale.nl_langinfo(locale.ABMON_1), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_2), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_3), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_4), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_5), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_6), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_7), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_8), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_9), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_10), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_11), codeset),
to_uni(locale.nl_langinfo(locale.ABMON_12), codeset),
locale.nl_langinfo(locale.ABMON_1),
locale.nl_langinfo(locale.ABMON_2),
locale.nl_langinfo(locale.ABMON_3),
locale.nl_langinfo(locale.ABMON_4),
locale.nl_langinfo(locale.ABMON_5),
locale.nl_langinfo(locale.ABMON_6),
locale.nl_langinfo(locale.ABMON_7),
locale.nl_langinfo(locale.ABMON_8),
locale.nl_langinfo(locale.ABMON_9),
locale.nl_langinfo(locale.ABMON_10),
locale.nl_langinfo(locale.ABMON_11),
locale.nl_langinfo(locale.ABMON_12),
)
# Gramps day number: Sunday => 1, Monday => 2, etc
@@ -86,24 +78,24 @@ try:
# see http://docs.python.org/library/locale.html
_deprecated_long_days = (
"",
to_uni(locale.nl_langinfo(locale.DAY_1), codeset), # Sunday
to_uni(locale.nl_langinfo(locale.DAY_2), codeset), # Monday
to_uni(locale.nl_langinfo(locale.DAY_3), codeset), # Tuesday
to_uni(locale.nl_langinfo(locale.DAY_4), codeset), # Wednesday
to_uni(locale.nl_langinfo(locale.DAY_5), codeset), # Thursday
to_uni(locale.nl_langinfo(locale.DAY_6), codeset), # Friday
to_uni(locale.nl_langinfo(locale.DAY_7), codeset), # Saturday
locale.nl_langinfo(locale.DAY_1), # Sunday
locale.nl_langinfo(locale.DAY_2), # Monday
locale.nl_langinfo(locale.DAY_3), # Tuesday
locale.nl_langinfo(locale.DAY_4), # Wednesday
locale.nl_langinfo(locale.DAY_5), # Thursday
locale.nl_langinfo(locale.DAY_6), # Friday
locale.nl_langinfo(locale.DAY_7), # Saturday
)
_deprecated_short_days = (
"",
to_uni(locale.nl_langinfo(locale.ABDAY_1), codeset), # Sunday
to_uni(locale.nl_langinfo(locale.ABDAY_2), codeset), # Monday
to_uni(locale.nl_langinfo(locale.ABDAY_3), codeset), # Tuesday
to_uni(locale.nl_langinfo(locale.ABDAY_4), codeset), # Wednesday
to_uni(locale.nl_langinfo(locale.ABDAY_5), codeset), # Thursday
to_uni(locale.nl_langinfo(locale.ABDAY_6), codeset), # Friday
to_uni(locale.nl_langinfo(locale.ABDAY_7), codeset), # Saturday
locale.nl_langinfo(locale.ABDAY_1), # Sunday
locale.nl_langinfo(locale.ABDAY_2), # Monday
locale.nl_langinfo(locale.ABDAY_3), # Tuesday
locale.nl_langinfo(locale.ABDAY_4), # Wednesday
locale.nl_langinfo(locale.ABDAY_5), # Thursday
locale.nl_langinfo(locale.ABDAY_6), # Friday
locale.nl_langinfo(locale.ABDAY_7), # Saturday
)
tformat = locale.nl_langinfo(locale.D_FMT).replace('%y','%Y')
@@ -116,34 +108,34 @@ except:
_deprecated_long_months = (
"",
to_uni(time.strftime('%B',(1,1,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,2,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,3,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,4,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,5,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,6,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,7,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,8,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,9,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,10,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,11,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%B',(1,12,1,1,1,1,1,1,1)), codeset),
time.strftime('%B',(1,1,1,1,1,1,1,1,1)),
time.strftime('%B',(1,2,1,1,1,1,1,1,1)),
time.strftime('%B',(1,3,1,1,1,1,1,1,1)),
time.strftime('%B',(1,4,1,1,1,1,1,1,1)),
time.strftime('%B',(1,5,1,1,1,1,1,1,1)),
time.strftime('%B',(1,6,1,1,1,1,1,1,1)),
time.strftime('%B',(1,7,1,1,1,1,1,1,1)),
time.strftime('%B',(1,8,1,1,1,1,1,1,1)),
time.strftime('%B',(1,9,1,1,1,1,1,1,1)),
time.strftime('%B',(1,10,1,1,1,1,1,1,1)),
time.strftime('%B',(1,11,1,1,1,1,1,1,1)),
time.strftime('%B',(1,12,1,1,1,1,1,1,1)),
)
_deprecated_short_months = (
"",
to_uni(time.strftime('%b',(1,1,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,2,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,3,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,4,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,5,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,6,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,7,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,8,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,9,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,10,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,11,1,1,1,1,1,1,1)), codeset),
to_uni(time.strftime('%b',(1,12,1,1,1,1,1,1,1)), codeset),
time.strftime('%b',(1,1,1,1,1,1,1,1,1)),
time.strftime('%b',(1,2,1,1,1,1,1,1,1)),
time.strftime('%b',(1,3,1,1,1,1,1,1,1)),
time.strftime('%b',(1,4,1,1,1,1,1,1,1)),
time.strftime('%b',(1,5,1,1,1,1,1,1,1)),
time.strftime('%b',(1,6,1,1,1,1,1,1,1)),
time.strftime('%b',(1,7,1,1,1,1,1,1,1)),
time.strftime('%b',(1,8,1,1,1,1,1,1,1)),
time.strftime('%b',(1,9,1,1,1,1,1,1,1)),
time.strftime('%b',(1,10,1,1,1,1,1,1,1)),
time.strftime('%b',(1,11,1,1,1,1,1,1,1)),
time.strftime('%b',(1,12,1,1,1,1,1,1,1)),
)
# Gramps day number: Sunday => 1, Monday => 2, etc
@@ -157,24 +149,24 @@ except:
# just a dummy.
_deprecated_long_days = (
"",
to_uni(time.strftime('%A',(1,1,1,1,1,1,6,1,1)), codeset), # Sunday
to_uni(time.strftime('%A',(1,1,1,1,1,1,0,1,1)), codeset), # Monday
to_uni(time.strftime('%A',(1,1,1,1,1,1,1,1,1)), codeset), # Tuesday
to_uni(time.strftime('%A',(1,1,1,1,1,1,2,1,1)), codeset), # Wednesday
to_uni(time.strftime('%A',(1,1,1,1,1,1,3,1,1)), codeset), # Thursday
to_uni(time.strftime('%A',(1,1,1,1,1,1,4,1,1)), codeset), # Friday
to_uni(time.strftime('%A',(1,1,1,1,1,1,5,1,1)), codeset), # Saturday
time.strftime('%A',(1,1,1,1,1,1,6,1,1)), # Sunday
time.strftime('%A',(1,1,1,1,1,1,0,1,1)), # Monday
time.strftime('%A',(1,1,1,1,1,1,1,1,1)), # Tuesday
time.strftime('%A',(1,1,1,1,1,1,2,1,1)), # Wednesday
time.strftime('%A',(1,1,1,1,1,1,3,1,1)), # Thursday
time.strftime('%A',(1,1,1,1,1,1,4,1,1)), # Friday
time.strftime('%A',(1,1,1,1,1,1,5,1,1)), # Saturday
)
_deprecated_short_days = (
"",
to_uni(time.strftime('%a',(1,1,1,1,1,1,6,1,1)), codeset), # Sunday
to_uni(time.strftime('%a',(1,1,1,1,1,1,0,1,1)), codeset), # Monday
to_uni(time.strftime('%a',(1,1,1,1,1,1,1,1,1)), codeset), # Tuesday
to_uni(time.strftime('%a',(1,1,1,1,1,1,2,1,1)), codeset), # Wednesday
to_uni(time.strftime('%a',(1,1,1,1,1,1,3,1,1)), codeset), # Thursday
to_uni(time.strftime('%a',(1,1,1,1,1,1,4,1,1)), codeset), # Friday
to_uni(time.strftime('%a',(1,1,1,1,1,1,5,1,1)), codeset), # Saturday
time.strftime('%a',(1,1,1,1,1,1,6,1,1)), # Sunday
time.strftime('%a',(1,1,1,1,1,1,0,1,1)), # Monday
time.strftime('%a',(1,1,1,1,1,1,1,1,1)), # Tuesday
time.strftime('%a',(1,1,1,1,1,1,2,1,1)), # Wednesday
time.strftime('%a',(1,1,1,1,1,1,3,1,1)), # Thursday
time.strftime('%a',(1,1,1,1,1,1,4,1,1)), # Friday
time.strftime('%a',(1,1,1,1,1,1,5,1,1)), # Saturday
)
# depending on the locale, the value returned for 20th Feb 2009 could be
@@ -195,6 +187,7 @@ except:
'2005/10/25' : '%Y/%m/%d',
'25.10.2005' : '%d.%m.%Y',
'25.10.2005.' : '%d.%m.%Y.',
'25. 10. 2005.' : '%d. %m. %Y.',
'10.25.2005' : '%m.%d.%Y',
'2005.10.25' : '%Y.%m.%d',
}
@@ -23,7 +23,6 @@
Deeper testing of some DateParser internals.
"""
from __future__ import print_function, unicode_literals
import unittest
from ...utils.grampslocale import GrampsLocale
@@ -67,16 +66,30 @@ class DateDisplayInflectionsTestRU(DateDisplayTest):
self.assertIn(month_lexeme.f[inflection],
self.dd.display(date))
def test_month_only_date_nominative(self):
for qual in (Date.QUAL_NONE, Date.QUAL_ESTIMATED, Date.QUAL_CALCULATED):
d1945may = Date(1945, 5, 0)
d1945may.set_quality(qual)
self.assertInflectionInDate('И', d1945may)
def test_month_only_date_nominative_quality_none(self):
d1945may = Date(1945, 5, 0)
d1945may.set_quality(Date.QUAL_NONE)
self.assertInflectionInDate('И', d1945may)
def test_month_only_date_nominative_quality_estimated(self):
d1945may = Date(1945, 5, 0)
d1945may.set_quality(Date.QUAL_ESTIMATED)
self.assertInflectionInDate('Т', d1945may)
def test_month_only_date_nominative_quality_calculated(self):
d1945may = Date(1945, 5, 0)
d1945may.set_quality(Date.QUAL_CALCULATED)
self.assertInflectionInDate('И', d1945may)
def test_day_month_date_genitive(self):
d1945may9 = Date(1945, 5, 9)
self.assertInflectionInDate('Р', d1945may9)
def test_day_month_date_genitiive_quality_estimated(self):
d1945may9 = Date(1945, 5, 9)
d1945may9.set_quality(Date.QUAL_ESTIMATED)
self.assertInflectionInDate('Р', d1945may9)
def test_before_month_only_date_genitive(self):
d1945may = Date(1945, 5, 0)
d1945may.set_modifier(Date.MOD_BEFORE)
@@ -87,6 +100,26 @@ class DateDisplayInflectionsTestRU(DateDisplayTest):
# will be the same!
self.assertIn("до мая", self.dd.display(d1945may))
def test_after_month_only_date_genitive(self):
d1945may = Date(1945, 5, 0)
d1945may.set_modifier(Date.MOD_AFTER)
# TODO hardwired magic numbers! Bad API smell.
for inflecting_format in (3,4):
self.dd.set_format(inflecting_format)
# this depends on the fact that in Russian the short and long forms for May
# will be the same!
self.assertIn("после мая", self.dd.display(d1945may))
def test_about_month_only_date_genitive(self):
d1945may = Date(1945, 5, 0)
d1945may.set_modifier(Date.MOD_ABOUT)
# TODO hardwired magic numbers! Bad API smell.
for inflecting_format in (3,4):
self.dd.set_format(inflecting_format)
# this depends on the fact that in Russian the short and long forms for May
# will be the same!
self.assertIn("около мая", self.dd.display(d1945may))
def test_between_month_only_dates_ablative(self):
b1945may_1946may = Date()
b1945may_1946may.set(
@@ -32,7 +32,6 @@ Based on the Check Localized Date Displayer and Parser tool.
# standard python modules
#
#-------------------------------------------------------------------------
from __future__ import unicode_literals, division
import unittest
import sys
@@ -57,7 +56,7 @@ from .. import displayer as _dd
#
#-------------------------------------------------------------------------
class DateHandlerTest(unittest.TestCase):
def base_test(self, test_date):
def base_case(self, test_date):
datestr = _dd.display(test_date)
new_date = _dp.parse(datestr)
@@ -86,7 +85,7 @@ class DateHandlerTest(unittest.TestCase):
dates.append(d)
for test_date in dates:
self.base_test(test_date)
self.base_case(test_date)
def test_span(self):
@@ -125,7 +124,7 @@ class DateHandlerTest(unittest.TestCase):
dates.append(d)
for test_date in dates:
self.base_test(test_date)
self.base_case(test_date)
def test_textual(self):
calendar = Date.CAL_GREGORIAN
@@ -135,7 +134,7 @@ class DateHandlerTest(unittest.TestCase):
test_date = Date()
test_date.set(quality, modifier, calendar, Date.EMPTY,
"This is a textual date")
self.base_test(test_date)
self.base_case(test_date)
def test_too_few_arguments(self):
dateval = (4, 7, 1789, False)
@@ -23,7 +23,6 @@
Deeper testing of some DateParser internals.
"""
from __future__ import print_function, unicode_literals
import unittest
from ...utils.grampslocale import GrampsLocale
@@ -19,8 +19,6 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
from __future__ import print_function, unicode_literals
import unittest
from .. import _datestrings
+1 -5
View File
@@ -53,11 +53,7 @@ db.
#
#-------------------------------------------------------------------------
import os
import sys
if sys.version_info[0] < 3:
import cPickle as pickle
else:
import pickle
import pickle
#------------------------------------------------------------------------
#
+3 -3
View File
@@ -77,7 +77,7 @@ class DbReadBase(object):
Databases can implement certain features or not. The default is
None, unless otherwise explicitly stated.
"""
return self.__feature.get(feature, None) # can also be explitily None
return self.__feature.get(feature, None) # can also be explicitly None
def set_feature(self, feature, value):
"""
@@ -1149,8 +1149,8 @@ class DbReadBase(object):
"""
raise NotImplementedError
def set_prefixes(self, person, media, family, source, place, event,
repository, note):
def set_prefixes(self, person, media, family, source, citation,
place, event, repository, note):
"""
Set the prefixes for the gramps ids for all gramps objects
"""
Loaded 100 of 1087 files, more files were not shown because too many files have changed in this diff. Show more