Compare commits
9 Commits
v4.2.0-bet
...
v4.0.0-alp
Author | SHA1 | Date | |
---|---|---|---|
|
7c6872c11a | ||
|
71f87a31b3 | ||
|
eb2ca43ff6 | ||
|
71b951f31d | ||
|
a542081e25 | ||
|
5b8da49bae | ||
|
4d7e1043ef | ||
|
2040716b9c | ||
|
8a3a477ea4 |
11
.get_packages_list.py
Normal file
11
.get_packages_list.py
Normal file
@@ -0,0 +1,11 @@
|
||||
import os
|
||||
|
||||
from distutils2.util import find_packages
|
||||
|
||||
exclude_list = ('src.gui.glade', 'src.guiQML', 'src.guiQML.views', 'src.images', 'src.plugins',
|
||||
'src.webapp', 'src.webapp.grampsdb', 'src.webapp.grampsdb.templatetags', 'src.webapp.grampsdb.view', )
|
||||
|
||||
packages = sorted(find_packages(exclude=exclude_list))
|
||||
|
||||
for package in packages:
|
||||
print(" '%s'," % package)
|
15
.gitignore
vendored
15
.gitignore
vendored
@@ -2,20 +2,11 @@
|
||||
*.py[cod]
|
||||
|
||||
# Distutils
|
||||
MANIFEST
|
||||
build/
|
||||
dist/
|
||||
sdist/
|
||||
|
||||
# Gramps
|
||||
data/tips.xml
|
||||
gramps/data/tips.xml
|
||||
gramps/gen/const.py
|
||||
gramps/plugins/lib/holidays.xml
|
||||
po/.intltool-merge-cache
|
||||
docs/_build/
|
||||
|
||||
# Editing
|
||||
tags
|
||||
*.swp
|
||||
|
||||
# Testing
|
||||
test/data
|
||||
gramps/webapp/grampsdb/fixtures/initial_data.json
|
||||
|
29
.travis.yml
29
.travis.yml
@@ -1,29 +0,0 @@
|
||||
# After changing this file, check it on:
|
||||
# http://lint.travis-ci.org/
|
||||
|
||||
|
||||
language: c
|
||||
#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 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/
|
||||
- DJANGO_SETTINGS_MODULE=gramps.webapp.settings nosetests3 --exclude=TestcaseGenerator --exclude=vcard --exclude=merge_ref_test gramps
|
2
COPYING
2
COPYING
@@ -2,7 +2,7 @@
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
675 Mass Ave, Cambridge, MA 02139, USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
|
183
FAQ
183
FAQ
@@ -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,116 +77,123 @@ 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 ==
|
||||
==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?
|
||||
|
||||
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?
|
||||
@@ -197,7 +204,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
|
||||
@@ -205,12 +212,12 @@ 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.
|
||||
|
||||
@@ -220,11 +227,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 :-)
|
||||
@@ -234,7 +241,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
|
||||
@@ -246,47 +253,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
|
||||
@@ -334,25 +341,41 @@ 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.
|
||||
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.
|
||||
|
||||
|
||||
**** End of Gramps Frequently Asked Questions ****
|
||||
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 ****
|
||||
|
||||
$Id$
|
||||
|
7
Gramps.py
Executable file → Normal file
7
Gramps.py
Executable file → Normal file
@@ -1,4 +1,3 @@
|
||||
#! /usr/bin/env python3
|
||||
#
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
@@ -16,16 +15,16 @@
|
||||
#
|
||||
# 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
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
"""
|
||||
This is a stub to start Gramps. It is provided for the sole reason of being
|
||||
able to run gramps from the source directory without setting PYTHONPATH
|
||||
|
||||
From this position, import gramps works great
|
||||
"""
|
||||
import os
|
||||
os.environ['GRAMPS_RESOURCES'] = os.path.dirname(os.path.abspath(__file__))
|
||||
import gramps.grampsapp as app
|
||||
app.main()
|
||||
|
81
INSTALL
81
INSTALL
@@ -1,55 +1,49 @@
|
||||
$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 as an existing install,
|
||||
If you do a source install in the same place of an existing install,
|
||||
you need to remove the old version first. You can delete the old
|
||||
version by deleting the installed directories. For example, if your installation prefix is /usr/local, remove the following:
|
||||
/usr/local/share/gramps
|
||||
version by deleting the installed directories (for example,
|
||||
/usr/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 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
|
||||
|
||||
|
||||
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. Missing dependencies will
|
||||
result in runtime errors.
|
||||
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.
|
||||
|
||||
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:
|
||||
python setup.py build
|
||||
sudo python setup.py install
|
||||
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
|
||||
python setup.py --help
|
||||
|
||||
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.
|
||||
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.
|
||||
|
||||
Typical install directories in linux (ubuntu) are:
|
||||
* /usr/local/lib/python3.4/dist-packages/gramps/ : the gramps python module
|
||||
* /usr/local/lib/python2.7/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
|
||||
@@ -62,35 +56,41 @@ 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()'
|
||||
|
||||
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
|
||||
First, copy/rename the gramps/gen/const.py.in to gramps/gen/const.py.
|
||||
Edit this file if needed. Now you can start Gramps from the source code
|
||||
directory with
|
||||
|
||||
python Gramps.py
|
||||
|
||||
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
|
||||
|
||||
Packager's issues
|
||||
------------------
|
||||
@@ -99,8 +99,3 @@ To create a source distribution run:
|
||||
|
||||
python 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):
|
||||
|
||||
python setup.py install --resourcepath=/usr/share
|
||||
|
2
LICENSE
2
LICENSE
@@ -3,7 +3,7 @@
|
||||
|
||||
|
||||
Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
|
22
MANIFEST.in
22
MANIFEST.in
@@ -1,7 +1,6 @@
|
||||
include AUTHORS
|
||||
include COPYING
|
||||
include FAQ
|
||||
include Gramps.py
|
||||
include INSTALL
|
||||
include LICENSE
|
||||
include MANIFEST.in
|
||||
@@ -12,21 +11,34 @@ include TestPlan.txt
|
||||
recursive-include data *
|
||||
recursive-include debian *
|
||||
recursive-include docs *
|
||||
recursive-include gramps *
|
||||
recursive-include help *
|
||||
recursive-include images *
|
||||
recursive-include mac *
|
||||
recursive-include po *
|
||||
recursive-include gramps *
|
||||
recursive-include test *
|
||||
recursive-include windows *
|
||||
|
||||
# Remove files created in the build
|
||||
exclude data/tips.xml
|
||||
exclude data/gramps.desktop
|
||||
exclude data/gramps.keys
|
||||
exclude data/gramps.xml
|
||||
recursive-exclude data/man *.1
|
||||
recursive-exclude data/man *.1.gz
|
||||
exclude gramps/const.py
|
||||
exclude gramps/data/tips.xml
|
||||
exclude gramps/plugins/lib/holidays.xml
|
||||
exclude po/*.gmo
|
||||
exclude po/.intltool-merge-cache
|
||||
exclude po/stamp-it
|
||||
exclude po/POTFILES
|
||||
global-exclude *.pyc
|
||||
global-exclude *.py~
|
||||
global-exclude *.pyo
|
||||
global-exclude *.bak
|
||||
|
||||
# Remove directories which should not be included in the distribution
|
||||
prune gramps/guiQML
|
||||
#prune gramps/webapp
|
||||
prune gramps/webapp
|
||||
|
||||
# Remove Makefiles used by autotools
|
||||
global-exclude Makefile*
|
||||
|
414
NEWS
414
NEWS
@@ -1,417 +1,3 @@
|
||||
2015-05-01
|
||||
Version 4.1.3, "Thou shalt not count to five", a maintenance release.
|
||||
* Fix db upgrade failure
|
||||
* GtkDialog mapped without a transient parent
|
||||
* [Gedcom} SUBN and SUBM record handling
|
||||
* [Gedcom] Import/export round trip causes lost information
|
||||
* [Gedcom] Entering a witness to an event such as marriage might be ignored
|
||||
* [Gedcom] Gramps can't import estim. date period exported by itself
|
||||
* [Gedcom] 1/4 and 1/2 ANSEL characters not supported on importing ANSEL
|
||||
* [Gedcom] Importing file containing multibyte UTF-8 characters fails
|
||||
* [Gedcom] Import fails for ANSI file under python 3
|
||||
* [Gedcom] Failure importing ANSEL encoded gedcom file.
|
||||
* [Gedcom] Characters ignored on a Gedcom encoded ANSI (cp1252 West Europe, USA)
|
||||
* [Gedcom] NameError in importer
|
||||
* [Gedcom] Event address is lost on import, i.e. disconnected from event
|
||||
* Crash on geneweb export with python3
|
||||
* GuiColorOption missing avail-changed event handler
|
||||
* Bad generation of [timeline report] ODT files since 4.0.0
|
||||
* Fix bad handle in explanation note for unknown event
|
||||
* Fix spurious generation of empty 'Alternative Name' in place.merge()
|
||||
* Support creating directories in various scenarios
|
||||
* Attempting to add a bookmark causes an error
|
||||
* Long series of "unhandled exception" popup boxes while doing a check & repair
|
||||
* Crash when trying to link existing place as an enclosing place using P0001 number
|
||||
* HTML view fails to load
|
||||
* Relationship Graph crashes
|
||||
* Python3 needs new_subpixbuf not subpixbuf
|
||||
* Regression: running gramps from crontab fails
|
||||
* tag_map is not initialized
|
||||
* Some labels now fit better on citations sidebar filter
|
||||
* Event columns in web narrative are too narrow
|
||||
* Problem by start program (launcher)
|
||||
* Translation string missing in Not Related tool for help and close button
|
||||
* Date format month/year is not well reported at editing time [in Italian]
|
||||
* Fix unknown gender relationships handler for the french locale
|
||||
* Fix a handle type bug on sidebar filter
|
||||
* Tidy up About dialog
|
||||
* Cleanup on some man files
|
||||
* Convert some remaining unicode literals
|
||||
* Fix mac menubar setting
|
||||
* Enable python3 to run po/update_po.py
|
||||
* Updated translations: cs, de, fr, is, nl
|
||||
|
||||
2015-02-28
|
||||
Version 4.1.2, "That's no ordinary rabbit", a maintenance release.
|
||||
* Error converting python2 utf-8 strings to python3 str when loading data from database
|
||||
* Removing a parent place from a place leaves a dangling reference
|
||||
* Error during checking the database
|
||||
* Stubborn blank space in database won't be removed, fix removing rows in flat list views
|
||||
* Database upgrade fails if default media path is not set
|
||||
* Error converting database after upgrade to Gramps 4.1.1
|
||||
* Error in a single place within the places section
|
||||
* Entries from the add-or-choose selector of Place/Source/Media/Note cannot be dragged
|
||||
* Enclosing places tab should work like other similar tabs, new place reference editor
|
||||
* Association editor refuses dropped persons
|
||||
* Error on opening twice an object from clipboard
|
||||
* Incorrect spacing in export assistant file chooser
|
||||
* New Event types are saved as a disordered list
|
||||
* Always display main participants
|
||||
* Place titles can now be generated on-the-fly by a place displayer, default is still to use the place title field
|
||||
* GEDCOM import of embedded notes attached to media does not work
|
||||
* Crash on Ancestry.com .ged import; consistent.
|
||||
* Errors handling owner/submitter information in GEDCOM files.
|
||||
Only import researcher from GEDCOM or XML if the family tree was originally empty.
|
||||
* GEDCOM export does not export media attached to citations.
|
||||
* The fanchart view crashes if max generation is set to 1 away.
|
||||
* Sidebar Filters do not match placetypes in new placeview, two new filter rules (HasTitle, HasData)
|
||||
* Fix bug when family has no parents
|
||||
* Fix bad handle in explanation note for unknown event
|
||||
* Some labels now fit better on citations sidebar filter
|
||||
* Views in Geography should not always use the last option set by the user
|
||||
* Request for keyboard-controlled zoom on Geography view
|
||||
* Error geography view - Displaying main menu
|
||||
* Configure screen needs a file selector to select directory for "offline mode" files
|
||||
* Filter panel on geography view displays improperly
|
||||
* Detailed descendant report crashes, bibliography (citations)
|
||||
* Can't disable box shadow in SVG descendant tree
|
||||
* Descendant tree graphical report, syntax error in svg output
|
||||
* Regression: Complete Individual report has partially-untranslated output
|
||||
* Events Page in Narrative Report not working
|
||||
* Gramps freeze after defining a report style with German cm values
|
||||
* Various problems with docgen.TextDoc.add_media_object
|
||||
* Report event attribute name is not translated
|
||||
* Records Gramplet uses wrong text
|
||||
* Closing detached gramplet causes python to crash
|
||||
* Cannot reduce size of gramplets detached from a gramplet bar
|
||||
* Gramplets don't fill window when detached from dashboard
|
||||
* ImageMetadata doesn't show metadata
|
||||
* typo on GLib call, used by an addon only
|
||||
* Fix error setting gramplet tab label
|
||||
* Check for active person in session log gramplet
|
||||
* Spurious spaces in CLI List Family Trees, tab delimited output.
|
||||
Print statements changed to assemble the whole line before output.
|
||||
* Gtk3 warning and custom undoableentry widget, see bugzilla_id 644927
|
||||
* Warnings: deprecated Gtk properties and errors loading theme icon.
|
||||
Fix: database manager dialog is inconsistent for older gtk+3 versions.
|
||||
Warnings: deprecated Gtk properties and errors loading theme icon.
|
||||
Fix: Error loading theme icon 'gtk-apply'
|
||||
* gramps fails to start with gtk+-3.13.3
|
||||
* Places in data.gramps are not in the new Place hierarchy
|
||||
* Upgrade the version of some dependencies for Mac OS and Windows OS.
|
||||
* Keywords entry in gramps.desktop does not work
|
||||
* 'Available Gramps Updates for Addons' window not on top
|
||||
* Some text not translatable in context menu fancharts
|
||||
* Fix for Unit test
|
||||
* date inflections in _datehandler.py, update for Ukrainian, Russian, Croatian
|
||||
* Better support for Serbian and Turkish locales
|
||||
* New translation: Icelandic
|
||||
* Re-enable Turkish support after a major review. Thank you Uğur.
|
||||
* Updated translations: cs, de, eo, fi, fr, hr, hu, it, nb, nn, ru, sk, sr, sv, uk, zh_CN
|
||||
|
||||
2014-10-24
|
||||
Version 4.1.1, "MachineThatGoes...Ping!", a maintenance release.
|
||||
* Fix custom place types in the place editor
|
||||
* Allow place type combobox to receive focus.
|
||||
* Store custom place types in the metadata table
|
||||
* Fix place type for places without a main location
|
||||
* Fix bug adding parent places to a new place
|
||||
* Prevent user creating a cycle in the place hierarchy
|
||||
* Avoid infinite loop when place cycle encountered
|
||||
* Prevent creation of a place cycle when merging
|
||||
* 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.
|
||||
* Add a new Top Level place through the Place Reference Editor
|
||||
* Fix backlinks code in place report
|
||||
* Backlinks for places can now also be places as well as events.
|
||||
* Fix check and repair tool for empty placerefs
|
||||
* Update location utilities to work with proxies
|
||||
* Place report does not run
|
||||
* Update place details gramplet
|
||||
* Locations are now displayed in a new separate gramplet.
|
||||
* Add check for empty handle in gramplets
|
||||
* Check DB lock on the recent opened trees list
|
||||
* Sidebarfilter gramplet does not fit well into People, Events or Media views
|
||||
* Fix new event default type considering existing events with *default* role
|
||||
* Rebuild secondary indexes after database upgrade
|
||||
* Importing gedcom files containing multibyte UTF-8 characters fails
|
||||
* Ahnentafel Report did not use Christening Date if no Birth Date
|
||||
* [Narweb:] Missing webpage for media under some circumstances
|
||||
* Fix narrated web report with gendex option enabled
|
||||
* Tweak to "default" CSS choice for the narrated web report
|
||||
* Invalid link for Merge citation Help button
|
||||
* Fix 'todo' gramplet
|
||||
* Fix path when using drag & drop to add media
|
||||
* Limit the number of generations displayed in the ancestor gramplet
|
||||
* Export of a subset of the tree failed
|
||||
* Fix issues in python3, and bytes-string mismatch with ICU
|
||||
* Fix url/uri handling with non-ascii characters under linux and mac
|
||||
* Fix name format on graphical reports
|
||||
* Fix name format on textual reports
|
||||
* Better GUI support for embeded custom attributes list on media object
|
||||
* Better keys for search under linux shells (.desktop file)
|
||||
* 'Unknown' person in detailed ancestor report can not be translated
|
||||
* Translations don't show in many labels
|
||||
* Ensure python text domain gets the right encoding.
|
||||
* Translate some punctuation marks
|
||||
* Various fixes around Geography and osmgpsmap
|
||||
* Allow gramplets to be displayed in the dashboard only
|
||||
* Update FSF address
|
||||
* Add Arabic-script, Islamic-date, Thai script, Married Name and more dates examples
|
||||
* Fix on czech date handler for calculated and estimated dates
|
||||
* Enhance Serbian date handler to handle Cyrillic dates
|
||||
* Simplify Canadian Ash Wednesday holiday
|
||||
* Re-enable Esperanto support (for non-Windows OS only) after a large review
|
||||
* New translation: Serbian
|
||||
* Various fixes in German and Czech
|
||||
* Updated translations: ar, cs, de, fi, fr, it, sv
|
||||
|
||||
2014-06-15
|
||||
Version 4.1.0, the "Name go in book", new major release.
|
||||
* GEP 006: Better Place handling
|
||||
* New Tags support on Event, Place, Repository, Source, and Citation
|
||||
* Source/Citation Data becomes Attributes
|
||||
* Add optional support for checksum on Media object
|
||||
* New place hierarchies model
|
||||
* By default, you can choose navigator modes with a drop down.
|
||||
* New Place editor
|
||||
* Enhanced MediaReference Editor
|
||||
* Some debug tools move to new gramplets
|
||||
* Full Python 3 support
|
||||
* New functions and widgets related to Place and Media selections
|
||||
* Enhancements on to_struct()
|
||||
* New methods on Date handlers
|
||||
* Better support on translation for inflection rules
|
||||
|
||||
2014-05-22
|
||||
Version 4.0.4, "Not the comfy chair", a maintenance release.
|
||||
* Upgrade to db version 17 fails in Python 3 due to use of iteritems
|
||||
* Database corrupted - TypeError: unhashable type: 'list'
|
||||
* Fix bug in abandon changes and quit
|
||||
* Consistency on create_id method
|
||||
* Better handling for non-ASCII characters on database-path
|
||||
* Better support for ANSEL characters
|
||||
* 'Display as' field in Name Editor reverts to Preferences default
|
||||
* Fix vcard date converter
|
||||
* View does not communicate over proxy server with autorisation
|
||||
* Enhanced Bookmark support
|
||||
* Event gramplet filter does not have field for primary role,
|
||||
* New HasDayOfWeek filter rule
|
||||
* Error when leaving a Gramps type field blank in an editor
|
||||
* Fix creation of events with same Gramps-ID
|
||||
* Crash when opening details of a person
|
||||
* Fix spacing on dialogs for some recent linux distribution
|
||||
* date editor and Date class allow e.g. Hebrew dates with newyear (Mar25)
|
||||
* Fix crash in fan chart view when scrolling
|
||||
* Poor contrast mouse on mouse over
|
||||
* Drag and drop only one data into Editors tabs
|
||||
* Enhancements and consitency on events gramplet, selector and view
|
||||
* Sometimes says 'no data exists for note' when saving
|
||||
* Enhanced Citation Editor
|
||||
* Do not always raise errors when some plugins are hidden
|
||||
* Remove hover selection from embedded lists
|
||||
* Fix update of active object after merge
|
||||
* Cleanup on warnings and messages around locale directory
|
||||
* Media Editor error if Path value was changed to a non existing file
|
||||
* Register history objects at startup
|
||||
* Avoid dumb encoding error when compiling gpr file
|
||||
* Work around Py2Cairo
|
||||
* Given Name Cloud Gramplet splits up given names into words
|
||||
* Users should not be allowed to edit and delete 'default' style into Style Editor
|
||||
* Filename Decoding Error in Graphical Reports
|
||||
* Missing closing bracket in Web_Basic-Spruce.css
|
||||
* Reorder tool: global name 'gen' is not defined
|
||||
* Fix start in East Asian language, force UTF-8 locale on Mac
|
||||
* Fix apple_collation
|
||||
* Spelling messages at random cause hang for a few seconds.
|
||||
* Media viewer list crashes during start if one try to select an entry where the media isn't available
|
||||
* 'Available Gramps Updates for Addons' window not on top
|
||||
* HTML View fails to load
|
||||
* Paper names and Styles values are now translated
|
||||
* Sort failure using glocale.sort_key
|
||||
* Improve support for collation variants
|
||||
* Translate some punctuation marks
|
||||
* Fix unit tests and python3 issues
|
||||
* Fix Relationships handler for Portuguese
|
||||
* Updated translations: ar, cs, de, fi, fr, he, it, lt, nb, nl, pl, pt_BR, ru, sv, uk
|
||||
|
||||
2014-01-27
|
||||
Version 4.0.3, "It's tomorrow, ask me now", a maintenance release.
|
||||
* Fix copy via context menu on Views into Charts Category
|
||||
* Fix Tab sequence in Name Editor
|
||||
* Fix citations gramplet into media view
|
||||
* Fix unhandled exception when inspecting media
|
||||
* Fix Citation sidebar filter for python3
|
||||
* Fix add link to a "Html code" note
|
||||
* Fix message on backup dialog
|
||||
* Fix space for selection lists
|
||||
* Fix spell with myspell and LANG
|
||||
* Fix changes root cursor to hand
|
||||
* Recent file parser now gives the file location
|
||||
* Fix vertical overflows on check and repair-tool dialog
|
||||
* Fix custom key/value (data item) on Database difference report
|
||||
* Fix unhandled exception in media exif information under Windows OS
|
||||
* Fix person selector in searchfilter under Windows OS
|
||||
* Starting Gramps without console is now possible under Windows OS
|
||||
* Specific OS handling
|
||||
* Common fixes and changes with 3.4.7.
|
||||
* Updated translations: ca, de, fi, fr, ru
|
||||
|
||||
2013-11-08
|
||||
Version 4.0.2, "Welcome to our humble abode", a maintenance release.
|
||||
* Citation merge works better for all objects with citations
|
||||
* Fixed citations attached to family events
|
||||
* Fixed several crashes, hangs, and data corruption scenarios
|
||||
* Fixed bugs in determining whether a person is alive, potentially resolving private data leak via export or report
|
||||
* Fixed bugs on proxies
|
||||
* VCF export/import now support gender information
|
||||
* Several bugs with filtering fixed, most filters now support regular expressions
|
||||
* Fixed bug in Hebrew calendar date calculations
|
||||
* Fix some regressions on GEDCOM file format export and enhancement on CONT/CONC handling
|
||||
* Multiple fixes and improvements on gramplets
|
||||
* Multiple fixes in the narrated website and web calendar reports
|
||||
* Enhancements on date and calendar
|
||||
* Some fixes and improvements of the webapp
|
||||
* Fix on Database Differences module
|
||||
* Enhancements of the citation tree view (Sources category)
|
||||
* Improvements on User classes
|
||||
* Polish and consistency on Gramps XML export
|
||||
* Bump XML schema to 1.5.1
|
||||
* Fixed several long-standing problems with report generation
|
||||
* Better support of RTL locales (Arabic, Hebrew, etc.) in GUI
|
||||
* Better support for selected lang on some reports
|
||||
* Better way for displaying missing dependencies
|
||||
* Better Spell support
|
||||
* Platform-specific fixes for Mac and Windows
|
||||
* Add printing functionality for all geography views
|
||||
* New date handlers for Arabic and Greek
|
||||
* Translation updates (ar, cs, de, fr, lt, nb, nl, ru, sv) and translation-related fixes
|
||||
* Repaired and enhanced tests broken since 3.3.x, resulting in overall reliability improvements
|
||||
* Add a support for AppData
|
||||
|
||||
2013-06-24
|
||||
Version 4.0.1, the "What is washing when we are on the verge of a great scientific breakthrough?", a maintenance release.
|
||||
* Gtk3: fix menu on person editor and Geography views, convert deprecated code for the indicator in entryfield
|
||||
* Gedcom: Fix crash on export when there are addresses, fix space on ID
|
||||
* Disallow bookmarking a source in the Citation Tree View
|
||||
* Better RTL support on Pedigreeview and position for gramplets
|
||||
* Fix bad scaling in address editor
|
||||
* Fix crash on ancestor chart report
|
||||
* Fix navigation issues with selected line
|
||||
* Fix size of the 'Tip of the day' dialog
|
||||
* Fix right-click on tables in Quick Views
|
||||
* Fix cursor corruption on Pedigree view
|
||||
* Improvements when exporting via CLI
|
||||
* Reports: Various fixes on dialogs, output file formats and cleanup on error messages
|
||||
* MacOS: Fix bad filename on Gramps URL, osm-gps-map revision, image paths, resource-path file, maclocale
|
||||
* Move the HTML resources from gramps/plugins/webstuff to Data and Images
|
||||
* Alternate Names in Person Details Gramplet (patch by Heinz Brinker)
|
||||
* New holidays, date and relationship handlers for Ukrainian
|
||||
* Enhancements for testing localized Relationship handlers (contribution by Fedir)
|
||||
* More names and events on data.gramps sample
|
||||
* Translations updated: cs, de, es, fr, hu, nb, nl, ru, uk, and new support for Arabic
|
||||
|
||||
2013-05-21
|
||||
Version 4.0.0, the "The Miracle of Birth", new major release.
|
||||
* GEP 8: code reorganization
|
||||
* GEP 26: Replace make
|
||||
* GEP 29: Gtk 3 support
|
||||
* GEP 31: Python 3 support
|
||||
* Completely reworked localization handling
|
||||
* The Gramplet view has been renamed Dashboard. This to avoid an overload of the word Gramplet, and to make it more clear to new users what can be expected in this view
|
||||
* GTK 3 uses new themes, so users not on Gnome must set a nice GTK 3 theme to fully appreciate Gramps 4.0. Install a GTK 3 theme and set it. If Gramps looks ugly, you made an error in this step.
|
||||
* Different sidebar navigators can be installed
|
||||
* New Ancestor Fan Chart View and Descendant Fan Chart View, which offer a lot of insight in your family tree on a small space. Direct printing is available from these views.
|
||||
* All wizards are reworked, so the exporter dialog, help and bug report dialog are different from version 3.4, but offer the same functions
|
||||
* New To Do Gramplets listing all To Do Notes
|
||||
* More reports support output in a different language than the interface language
|
||||
* Narrative Web has been reworked to make it more stable.
|
||||
|
||||
2013-05-15
|
||||
Version 3.4.4 of Gramps! "The Ministry of Silly Names", a maintenance release.
|
||||
* infinite recursion bug in narrative web generation
|
||||
* protection on family trees when using version 3.4 and 4.0 on the same PC (road to 4.0)
|
||||
* merging notes of media with citations now works
|
||||
* crash during Calculate Preview of a filtered XML export
|
||||
* 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
|
||||
* 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
|
||||
* Polish and backport code on XML import (road to 4.0)
|
||||
* Regular expression rules now use search rather than match, fix design issues on regex filter rules
|
||||
* Disable/Enable indent spouse on descendants tree
|
||||
* fix regular expressions on Place filter rule
|
||||
* consistency on cli arguments (road to 4.0)
|
||||
* fix call of non-existant process on references proxy, enhanced tests on proxy filter
|
||||
* fix NarWeb creation via cli for some non-english locales
|
||||
* Various updated translations: ca, de, fr, it, nl, pt_BR, ru, sv, uk
|
||||
|
||||
2013-03-19
|
||||
Version 3.4.3 of Gramps! "Whenever life gets you down, Mrs. Brown", a maintenance release.
|
||||
* 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.
|
||||
* 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
|
||||
* 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
|
||||
** 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
|
||||
** remove highlighting of media subregions except in the media pages (it was confusing and not very well implemented)
|
||||
** include people whose surname is absent in the individual, surname and families indexes
|
||||
** html_escape names and surnames
|
||||
** always display media thumbnails for first image in Gallery list (in some cases they were suppressed if they had been displayed at the top of the page)
|
||||
** change partner and parent columns in families index to improve the layout of the HTML and put the comma between multiple partners in the right place
|
||||
** use event description (where present) instead of just event type in back references
|
||||
** fix bug in the way obj_dict and bkref_dict were initialised
|
||||
** fix missing document.png for missing media
|
||||
** fixed problems that bibliography ignores media attached to citations, so if that is the only 'interesting' thing about the citation, the citation media is not output
|
||||
** Replaced person link routine with one that takes into account whether there is a page for the person.
|
||||
** Included repository reference media type and call number in the 'Repositories' section of the relevant source instead of the Repository page.
|
||||
** 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)
|
||||
** 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
|
||||
** Change Source Pages to use the list of sources generated by the first pass that finds objects to be output, and simplify references section on the Source page to use the references passed to it.
|
||||
** 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.
|
||||
** 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
|
||||
|
||||
2012-10-28
|
||||
Version 3.4.2 -- the "We're all individuals!" bug fix release.
|
||||
* Some fixes on NarrativeWeb report
|
||||
* Some fixes on book report
|
||||
* Improvement on database path interface and user's preferences
|
||||
* Consistency on Name display and regex support
|
||||
* Some platform-specific fixes for Windows system environment
|
||||
* Better support for media links on Gedcom file format
|
||||
* Fix possible incorrect family relations on Gedcom file format
|
||||
* Various fixes on citation records
|
||||
* Fix and improve places handling on Geography views
|
||||
* Fix on command line arguments
|
||||
* Consistency on PDF file format
|
||||
* New language: Greek
|
||||
* Various updated translations
|
||||
* Changelog: http://www.gramps-project.org/bugs/changelog_page.php?version_id=32
|
||||
|
||||
2012-08-23
|
||||
Version 3.4.1 -- The "A tiger? In Africa?!" bug fix release.
|
||||
Mention in the release that upgrading is advised for two critical issues:
|
||||
|
85
README
85
README
@@ -1,91 +1,74 @@
|
||||
Please read the COPYING file first.
|
||||
|
||||
Please read the INSTALL file if you intend to build from source.
|
||||
If building from source, also read the INSTALL file (at least through the
|
||||
"SUPER-SHORT VERSION") before going further.
|
||||
|
||||
Requirements
|
||||
--------------------------------
|
||||
The following packages *MUST* be installed in order for Gramps to work:
|
||||
Python 3.2 or greater
|
||||
GTK 3.10 or greater
|
||||
Python 2.7 or greater, Python 3.2 or greater (python version cannot be mixed)
|
||||
GTK 3.0 or greater
|
||||
pygobject 3.3.2 or greater
|
||||
cairo, pango, pangocairo with introspection bindings (the gi packages)
|
||||
librsvg2 (svg icon view)
|
||||
xdg-utils
|
||||
bsddb3
|
||||
|
||||
The following package is needed for full translation of the interface
|
||||
to your language:
|
||||
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-xx
|
||||
Translation of GTK elements to your language, with
|
||||
xx your language code eg for Dutch you need
|
||||
language-pack-gnome-nl. The translation of the
|
||||
Gramps strings is included with the gramps source.
|
||||
Gramps strings is included with the source code.
|
||||
|
||||
|
||||
The following packages are *STRONGLY RECOMMENDED* to be installed:
|
||||
|
||||
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.
|
||||
osmgpsmap Used to show maps in the geography view.
|
||||
Without this the GeoView will not be active, see
|
||||
http://gramps-project.org/wiki/index.php?title=Gramps_4.1_Wiki_Manual_-_Main_Window#Geography_Category
|
||||
|
||||
http://gramps-project.org/wiki/index.php?title=Gramps_3.3_Wiki_Manual_-_Main_Window#Geography_Category
|
||||
The package is named osmgpsmap, osm-gps-map
|
||||
or python-osmgpsmap. Or obtain it from: http://nzjrs.github.com/osm-gps-map/
|
||||
GraphViz Enable creation of graphs using GraphViz engine.
|
||||
Without this, three reports cannot be run.
|
||||
Without this no beautiful graphs can be created.
|
||||
Obtain it from: http://www.graphviz.org
|
||||
|
||||
PyICU Improves localised sorting in Gramps. In particular, this
|
||||
applies to sorting in the various views and in the
|
||||
Narrative Web output. It is particularly helpful for
|
||||
non-Latin characters, for non-English locales and on MS
|
||||
Windows and Mac OS X platforms. If it is not available,
|
||||
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.)
|
||||
pyexiv2 Enables Gramps to manage Exif metadata embedded in your
|
||||
media. Gramps needs version 0.1.3 or greater.
|
||||
Obtain it from: http://tilloy.net/dev/pyexiv2/download.html
|
||||
|
||||
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.1_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,
|
||||
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.
|
||||
See http://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion#GExiv2_for_Image_metadata
|
||||
|
||||
ttf-freefont More font support in the reports
|
||||
|
||||
gir-webkit Required for the (user-downloadable) HtmlView plugin
|
||||
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
|
||||
|
||||
goocanvas2 Required for the (user-downloadable) GraphView plugin
|
||||
goocanvas2:
|
||||
Required for the Graphview plugin
|
||||
|
||||
No longer needed in 4.1:
|
||||
?
|
||||
No longer needed in 4.0:
|
||||
pygoocanvas, pygtk, pyexiv2
|
||||
pygoocanvas, pygtk
|
||||
No longer needed in 3.3:
|
||||
python-enchant Enchant
|
||||
No longer needed in 3.2:
|
||||
python glade bindings
|
||||
No longer needed in 3.1:
|
||||
yelp Gnome help browser. No offline help is shipped see Gramps website for User manual
|
||||
yelp Gnome help browser. At the moment no help is shipped
|
||||
|
||||
Remark: There is a conflict when using python-gnome2 in Ubuntu. This is evident
|
||||
with the error: TypeError: Error when calling the metaclass bases
|
||||
metaclass conflict
|
||||
|
||||
Documentation
|
||||
---------------------------------
|
||||
The User Manual is maintained on the Gramps website,
|
||||
The User Manual is now maintained on the gramps website,
|
||||
http://www.gramps-project.org/wiki/index.php?title=User_manual
|
||||
|
||||
--------------------------------
|
||||
|
@@ -1,14 +1,11 @@
|
||||
$Id$
|
||||
"UNSTABLE Gramps 4.0.0 Alpha1 release.
|
||||
|
||||
UNSTABLE Gramps 4.0.0 Beta2 release.
|
||||
This is a technology preview to allow plugin writers and packagers-installer
|
||||
writers to update their plugins and scripts. This release is not production
|
||||
ready, so use for testing!"
|
||||
|
||||
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!
|
||||
|
||||
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.
|
||||
It is recommended to use Gramps 4.0.0 with python 3.2 so as to be ready
|
||||
for the future (python 2.7 works though).
|
||||
|
||||
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
|
||||
|
@@ -1,18 +0,0 @@
|
||||
<?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>
|
@@ -8,6 +8,5 @@ Terminal=false
|
||||
Type=Application
|
||||
StartupNotify=true
|
||||
Categories=GTK;Office;
|
||||
_Keywords=Genealogy;Family History;Research;Family Tree;GEDCOM;
|
||||
MimeType=application/x-gramps;application/x-gedcom;application/x-gramps-package;application/x-gramps-xml;
|
||||
Exec=gramps %F
|
||||
|
@@ -16,7 +16,7 @@
|
||||
|
||||
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.
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
$Id$
|
||||
|
@@ -5,7 +5,7 @@
|
||||
#
|
||||
# Copyright (C) 2001 Graham J. Williams
|
||||
# Copyright (C) 2000-2007 Donald N. Allingham
|
||||
# Copyright (C) 2010-2014 Nick Hall
|
||||
# Copyright (C) 2010-2011 Nick Hall
|
||||
#
|
||||
# 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
|
||||
@@ -19,21 +19,21 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
# $Id$
|
||||
-->
|
||||
|
||||
<!--
|
||||
This is the Document Type Definition file for v1.6.0
|
||||
This is the Document Type Definition file for v1.5.0
|
||||
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.5.0//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.5.0//EN"
|
||||
"http://gramps-project.org/xml/1.5.0/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.5.0/">
|
||||
|
||||
|
||||
<!-- ************************************************************
|
||||
@@ -215,8 +215,7 @@ EVENT
|
||||
<!ELEMENT events (event)*>
|
||||
|
||||
<!ELEMENT event (type?, (daterange|datespan|dateval|datestr)?, place?, cause?,
|
||||
description?, attribute*, noteref*, citationref*, objref*,
|
||||
tagref*)>
|
||||
description?, attribute*, noteref*, citationref*, objref*)>
|
||||
<!ATTLIST event
|
||||
id CDATA #IMPLIED
|
||||
handle ID #REQUIRED
|
||||
@@ -230,7 +229,7 @@ SOURCES
|
||||
|
||||
<!ELEMENT sources (source)*>
|
||||
<!ELEMENT source (stitle?, sauthor?, spubinfo?, sabbrev?,
|
||||
noteref*, objref*, srcattribute*, reporef*, tagref*)>
|
||||
noteref*, objref*, data_item*, reporef*)>
|
||||
<!ATTLIST source
|
||||
id CDATA #IMPLIED
|
||||
handle ID #REQUIRED
|
||||
@@ -248,20 +247,16 @@ PLACES
|
||||
|
||||
<!ELEMENT places (placeobj)*>
|
||||
|
||||
<!ELEMENT placeobj (ptitle?, code?, alt_name*, coord?, placeref*, location*,
|
||||
objref*, url*, noteref*, citationref*, tagref*)>
|
||||
<!ELEMENT placeobj (ptitle?, coord?, location*, objref*, url*, noteref*,
|
||||
citationref*)>
|
||||
<!ATTLIST placeobj
|
||||
id CDATA #IMPLIED
|
||||
handle ID #REQUIRED
|
||||
priv (0|1) #IMPLIED
|
||||
change CDATA #REQUIRED
|
||||
name CDATA #REQUIRED
|
||||
type CDATA #REQUIRED
|
||||
>
|
||||
|
||||
<!ELEMENT ptitle (#PCDATA)>
|
||||
<!ELEMENT code (#PCDATA)>
|
||||
<!ELEMENT alt_name (#PCDATA)>
|
||||
|
||||
<!ELEMENT coord EMPTY>
|
||||
<!ATTLIST coord
|
||||
@@ -301,7 +296,6 @@ OBJECTS
|
||||
<!ATTLIST file
|
||||
src CDATA #REQUIRED
|
||||
mime CDATA #REQUIRED
|
||||
checksum CDATA #IMPLIED
|
||||
description CDATA #REQUIRED
|
||||
>
|
||||
|
||||
@@ -311,7 +305,7 @@ REPOSITORIES
|
||||
|
||||
<!ELEMENT repositories (repository)*>
|
||||
|
||||
<!ELEMENT repository (rname, type, address*, url*, noteref*, tagref*)>
|
||||
<!ELEMENT repository (rname, type, address*, url*, noteref*)>
|
||||
<!ATTLIST repository
|
||||
id CDATA #IMPLIED
|
||||
handle ID #REQUIRED
|
||||
@@ -373,8 +367,8 @@ CITATIONS
|
||||
|
||||
<!ELEMENT citations (citation)*>
|
||||
|
||||
<!ELEMENT citation ((daterange|datespan|dateval|datestr)?, page?, confidence,
|
||||
noteref*, objref*, srcattribute*, sourceref, tagref*)>
|
||||
<!ELEMENT citation ((daterange|datespan|dateval|datestr)?, page?, confidence?,
|
||||
noteref*, objref*, data_item*, sourceref)>
|
||||
<!ATTLIST citation
|
||||
id CDATA #IMPLIED
|
||||
handle ID #REQUIRED
|
||||
@@ -499,13 +493,6 @@ SHARED ELEMENTS
|
||||
value CDATA #REQUIRED
|
||||
>
|
||||
|
||||
<!ELEMENT srcattribute EMPTY>
|
||||
<!ATTLIST srcattribute
|
||||
priv (0|1) #IMPLIED
|
||||
type CDATA #REQUIRED
|
||||
value CDATA #REQUIRED
|
||||
>
|
||||
|
||||
<!ELEMENT place EMPTY>
|
||||
<!ATTLIST place hlink IDREF #REQUIRED>
|
||||
|
||||
@@ -526,11 +513,6 @@ SHARED ELEMENTS
|
||||
priv (0|1) #IMPLIED
|
||||
>
|
||||
|
||||
<!ELEMENT placeref ((daterange|datespan|dateval|datestr)?)>
|
||||
<!ATTLIST placeref
|
||||
hlink IDREF #REQUIRED
|
||||
>
|
||||
|
||||
<!ELEMENT region EMPTY>
|
||||
<!ATTLIST region
|
||||
corner1_x CDATA #REQUIRED
|
||||
|
@@ -4,7 +4,7 @@
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
# Copyright (C) 2005-2007 Donald N. Allingham
|
||||
# Copyright (C) 2010-2014 Nick Hall
|
||||
# Copyright (C) 2010-2011 Nick Hall
|
||||
#
|
||||
# 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
|
||||
@@ -18,20 +18,21 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
# Written by Alex Roitman
|
||||
|
||||
# $Id$
|
||||
-->
|
||||
|
||||
<!--
|
||||
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.5.0/"
|
||||
xmlns="http://relaxng.org/ns/structure/1.0">
|
||||
|
||||
<start><element name="database">
|
||||
@@ -427,31 +428,26 @@
|
||||
<zeroOrMore><element name="objref">
|
||||
<ref name="objref-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="tagref">
|
||||
<ref name="tagref-content"/>
|
||||
</element></zeroOrMore>
|
||||
</define>
|
||||
|
||||
<define name="citation-content">
|
||||
<ref name="primary-object"/>
|
||||
<optional><ref name="date-content"/></optional>
|
||||
<optional><element name="page"><text/></element></optional>
|
||||
<element name="confidence"><text/></element>
|
||||
<optional><element name="confidence"><text/></element></optional>
|
||||
<zeroOrMore><element name="noteref">
|
||||
<ref name="noteref-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="objref">
|
||||
<ref name="objref-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="srcattribute">
|
||||
<ref name="srcattribute-content"/>
|
||||
<zeroOrMore><element name="data_item">
|
||||
<attribute name="key"><text/></attribute>
|
||||
<attribute name="value"><text/></attribute>
|
||||
</element></zeroOrMore>
|
||||
<element name="sourceref">
|
||||
<ref name="sourceref-content"/>
|
||||
</element>
|
||||
<zeroOrMore><element name="tagref">
|
||||
<ref name="tagref-content"/>
|
||||
</element></zeroOrMore>
|
||||
</define>
|
||||
|
||||
<define name="source-content">
|
||||
@@ -466,31 +462,22 @@
|
||||
<zeroOrMore><element name="objref">
|
||||
<ref name="objref-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="srcattribute">
|
||||
<ref name="srcattribute-content"/>
|
||||
<zeroOrMore><element name="data_item">
|
||||
<attribute name="key"><text/></attribute>
|
||||
<attribute name="value"><text/></attribute>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="reporef">
|
||||
<ref name="reporef-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="tagref">
|
||||
<ref name="tagref-content"/>
|
||||
</element></zeroOrMore>
|
||||
</define>
|
||||
|
||||
<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>
|
||||
<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>
|
||||
</element></optional>
|
||||
<zeroOrMore><element name="placeref">
|
||||
<ref name="placeref-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="location">
|
||||
<optional><attribute name="street"><text/></attribute></optional>
|
||||
<optional><attribute name="locality"><text/></attribute></optional>
|
||||
@@ -514,9 +501,6 @@
|
||||
<zeroOrMore><element name="citationref">
|
||||
<ref name="citationref-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="tagref">
|
||||
<ref name="tagref-content"/>
|
||||
</element></zeroOrMore>
|
||||
</define>
|
||||
|
||||
<define name="object-content">
|
||||
@@ -524,8 +508,7 @@
|
||||
<element name="file">
|
||||
<attribute name="src"><text/></attribute>
|
||||
<attribute name="mime"><text/></attribute>
|
||||
<optional><attribute name="checksum"><text/></attribute></optional>
|
||||
<optional><attribute name="description"><text/></attribute></optional>
|
||||
<attribute name="description"><text/></attribute>
|
||||
</element>
|
||||
<zeroOrMore><element name="attribute">
|
||||
<ref name="attribute-content"/>
|
||||
@@ -555,9 +538,6 @@
|
||||
<zeroOrMore><element name="noteref">
|
||||
<ref name="noteref-content"/>
|
||||
</element></zeroOrMore>
|
||||
<zeroOrMore><element name="tagref">
|
||||
<ref name="tagref-content"/>
|
||||
</element></zeroOrMore>
|
||||
</define>
|
||||
|
||||
<define name="bookmark-content">
|
||||
@@ -700,14 +680,6 @@
|
||||
<ref name="noteref-content"/>
|
||||
</element></zeroOrMore>
|
||||
</define>
|
||||
|
||||
<define name="srcattribute-content">
|
||||
<optional><attribute name="priv">
|
||||
<ref name="priv-content"/>
|
||||
</attribute></optional>
|
||||
<attribute name="type"><text/></attribute>
|
||||
<attribute name="value"><text/></attribute>
|
||||
</define>
|
||||
|
||||
<define name="url-content">
|
||||
<optional><attribute name="priv">
|
||||
@@ -772,11 +744,6 @@
|
||||
<text/>
|
||||
</define>
|
||||
|
||||
<define name="placeref-content">
|
||||
<attribute name="hlink"><data type="IDREF"/></attribute>
|
||||
<optional><ref name="date-content"/></optional>
|
||||
</define>
|
||||
|
||||
<define name="tagref-content">
|
||||
<attribute name="hlink"><data type="IDREF"/></attribute>
|
||||
</define>
|
||||
|
14
data/man/Makefile.am
Normal file
14
data/man/Makefile.am
Normal file
@@ -0,0 +1,14 @@
|
||||
# This is the data/man level Makefile for Gramps
|
||||
# $Id$
|
||||
|
||||
SUBDIRS = fr sv nl pl cs pt_BR
|
||||
|
||||
man_IN_FILES = gramps.1.in
|
||||
man_MANS = $(man_IN_FILES:.1.in=.1)
|
||||
|
||||
EXTRA_DIST = $(man_MANS) $(man_IN_FILES)
|
||||
|
||||
gramps.1: $(top_builddir)/config.status gramps.1.in
|
||||
cd $(top_builddir) && CONFIG_FILES=data/man/$@ $(SHELL) ./config.status
|
||||
|
||||
CLEANFILES=$(man_MANS)
|
@@ -41,16 +41,16 @@ master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, Gramps project'
|
||||
copyright = u'2012, 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.2'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
14
data/man/cs/Makefile.am
Normal file
14
data/man/cs/Makefile.am
Normal file
@@ -0,0 +1,14 @@
|
||||
# This is the data/man/sv level Makefile for Gramps
|
||||
# $Id: Makefile.am 6189 2006-03-21 19:05:46Z rshura $
|
||||
|
||||
man_IN_FILES = gramps.1.in
|
||||
man_MANS = $(man_IN_FILES:.1.in=.1)
|
||||
|
||||
mandir = @mandir@/cs
|
||||
|
||||
EXTRA_DIST = $(man_MANS) $(man_IN_FILES)
|
||||
|
||||
gramps.1: $(top_builddir)/config.status gramps.1.in
|
||||
cd $(top_builddir) && CONFIG_FILES=data/man/cs/$@ $(SHELL) ./config.status
|
||||
|
||||
CLEANFILES=$(man_MANS)
|
@@ -41,16 +41,16 @@ master_doc = 'cs'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, Gramps project'
|
||||
copyright = u'2012, 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.2'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@@ -249,9 +249,7 @@ gramps(1) 3.4.0 gramps(1)
|
||||
|
||||
*${PREFIX}/bin/gramps*
|
||||
|
||||
*${PREFIX}/lib/python/dist-packages/gramps/*
|
||||
|
||||
*${PREFIX}/share/*
|
||||
*${PREFIX}/share/gramps*
|
||||
|
||||
*${HOME}/.gramps*
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
English
|
||||
=======
|
||||
|
||||
gramps(1) @VERSION@ gramps(1)
|
||||
gramps(1) 4.0.0 gramps(1)
|
||||
|
||||
|
||||
|
||||
@@ -82,9 +82,9 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
**-i** , **--import=** *FILE*
|
||||
Import data from *FILE* . If you haven't specified a database, then
|
||||
an empty database is created for you called Family Tree x
|
||||
(where x is an incrementing number).
|
||||
Import data from *FILE* . If you haven't specified a database then
|
||||
a temporary database is used; this is deleted when you exit
|
||||
gramps.
|
||||
|
||||
When more than one input file is given, each has to be preceded
|
||||
by **-i** flag. The files are imported in the specified order, i.e.
|
||||
@@ -262,14 +262,11 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
**KNOWN BUGS AND LIMITATIONS**
|
||||
|
||||
**FILES**
|
||||
|
||||
|
||||
*${PREFIX}/bin/gramps*
|
||||
|
||||
*${PREFIX}/lib/python/dist-packages/gramps/*
|
||||
|
||||
*${PREFIX}/share/*
|
||||
*${PREFIX}/share/gramps*
|
||||
|
||||
*${HOME}/.gramps*
|
||||
|
||||
@@ -296,4 +293,4 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
|
||||
gramps(1) @VERSION@ gramps(1)
|
||||
January 2013 4.0.0 gramps(1)
|
||||
|
14
data/man/fr/Makefile.am
Normal file
14
data/man/fr/Makefile.am
Normal file
@@ -0,0 +1,14 @@
|
||||
# This is the data/man/fr level Makefile for Gramps
|
||||
# $Id$
|
||||
|
||||
man_IN_FILES = gramps.1.in
|
||||
man_MANS = $(man_IN_FILES:.1.in=.1)
|
||||
|
||||
mandir = @mandir@/fr
|
||||
|
||||
EXTRA_DIST = $(man_MANS) $(man_IN_FILES)
|
||||
|
||||
gramps.1: $(top_builddir)/config.status gramps.1.in
|
||||
cd $(top_builddir) && CONFIG_FILES=data/man/fr/$@ $(SHELL) ./config.status
|
||||
|
||||
CLEANFILES=$(man_MANS)
|
@@ -41,16 +41,16 @@ master_doc = 'fr'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, Gramps project'
|
||||
copyright = u'2012, 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.2'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@@ -1,7 +1,9 @@
|
||||
French
|
||||
=======
|
||||
|
||||
gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
gramps(1) 4.0.0 gramps(1)
|
||||
|
||||
|
||||
|
||||
**NOM**
|
||||
@@ -32,33 +34,33 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
**OPTIONS**
|
||||
**gramps** *FICHIER*
|
||||
Si *FICHIER* est désigné (sans autres commandes) comme arbre
|
||||
familial ou comme répertoire d'arbre familial, alors une session
|
||||
interactive est ouverte. Si *FICHIER* est un format de fichier
|
||||
supporté par Gramps, une base vide est créée dont le nom est
|
||||
celui du *FICHIER* et les données y seront importées. Les autres
|
||||
options sont ignorées. Ce type de lancement permet d'utiliser
|
||||
gramps pour manipuler des données comme dans un navigateur web.
|
||||
Les formats natifs de gramps sont acceptés, voir ci-dessous.
|
||||
Si *FICHIER* est désigné (sans autres commandes) comme arbre
|
||||
familial ou comme répertoire d'arbre familial, alors une session
|
||||
interactive est ouverte. Si *FICHIER* est un format de fichier
|
||||
supporté par Gramps, une base vide est créée dont le nom est
|
||||
celui du *FICHIER* et les données y seront importées. Les autres
|
||||
options sont ignorées. Ce type de lancement permet d'utiliser
|
||||
gramps pour manipuler des données comme dans un navigateur web.
|
||||
Les formats natifs de gramps sont acceptés, voir ci-dessous.
|
||||
|
||||
|
||||
**-f** , **--format=** *FORMAT*
|
||||
Le format spécifique du *FICHIER* est précédé par les arguments
|
||||
**-i** , ou **-e** . Si l'option **-f** n'est pas donnée pour le *FICHIER* ,
|
||||
alors le format sera celui de l'extension ou du type-MIME.
|
||||
Le format spécifique du *FICHIER* est précédé par les arguments
|
||||
**-i** , ou **-e** . Si l'option **-f** n'est pas donnée pour le *FICHIER* ,
|
||||
alors le format sera celui de l'extension ou du type-MIME.
|
||||
|
||||
Les formats de sortie disponibles sont **gramps-xml** (deviné si
|
||||
*FICHIER* se termine par **.gramps** ), et **gedcom** (deviné si *FICHIER* se
|
||||
termine par **.ged** ), ou tout autre fichier d'exportation
|
||||
disponible dans le système de plugin Gramps.
|
||||
Les formats de sortie disponibles sont **gramps-xml** (deviné si
|
||||
*FICHIER* se termine par **.gramps** ), et **gedcom** (deviné si *FICHIER* se
|
||||
termine par **.ged** ), ou tout autre fichier d'exportation
|
||||
disponible dans le système de plugin Gramps.
|
||||
|
||||
Les formats disponibles pour l'importation sont **grdb** ,
|
||||
**gramps-xml** , **gedcom** , **gramps-pkg** (deviné si *FICHIER* se termine par
|
||||
**.gpkg** ), et **geneweb** (deviné si *FICHIER* se termine par **.gw** ).
|
||||
Les formats disponibles pour l'importation sont **grdb** ,
|
||||
**gramps-xml** , **gedcom** , **gramps-pkg** (deviné si *FICHIER* se termine par
|
||||
**.gpkg** ), et **geneweb** (deviné si *FICHIER* se termine par **.gw** ).
|
||||
|
||||
Les formats disponibles pour l'exportation sont **gramps-xml** , **ged‐
|
||||
com** , **gramps-pkg** , **wft** (deviné si *FICHIER* se termine par **.wft** ),
|
||||
**geneweb** .
|
||||
Les formats disponibles pour l'exportation sont **gramps-xml** , **ged‐
|
||||
com** , **gramps-pkg** , **wft** (deviné si *FICHIER* se termine par **.wft** ),
|
||||
**geneweb** .
|
||||
|
||||
|
||||
**-l**
|
||||
@@ -66,29 +68,29 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
**-u** , **--force-unlock**
|
||||
Débloquer une base de données verrouillée.
|
||||
Débloquer une base de données verrouillée.
|
||||
|
||||
|
||||
**-O** , **--open=** *BASE_DE_DONNEES*
|
||||
Ouvrir une *BASE_DE_DONNEES* qui doit être une base présente dans
|
||||
le répertoire des bases ou le nom d'un arbre familial existant.
|
||||
Si aucune action n'est définie, les options d'import ou d'export
|
||||
sont données par la ligne de commande puis une session interactive
|
||||
est ouverte, utilisant cette base de données.
|
||||
Ouvrir une *BASE_DE_DONNEES* qui doit être une base présente dans
|
||||
le répertoire des bases ou le nom d'un arbre familial existant.
|
||||
Si aucune action n'est définie, les options d'import ou d'export
|
||||
sont données par la ligne de commande puis une session interac‐
|
||||
tive est ouverte, utilisant cette base de données.
|
||||
|
||||
Seulement une base peut être ouverte. Si vous utilisez plusieurs
|
||||
sources, vous devez utiliser l'option d'import.
|
||||
Seulement une base peut être ouverte. Si vous utilisez plusieurs
|
||||
sources, vous devez utiliser l'option d'import.
|
||||
|
||||
|
||||
**-i** , **--import=** *FICHIER*
|
||||
Importer des données depuis un *FICHIER* . Si vous n'avez pas
|
||||
spécifié de base de données, alors une base de données vide
|
||||
est utilisée.
|
||||
Importer des données depuis un *FICHIER* . Si vous n'avez pas
|
||||
spécifié de base de données alors une base de données temporaire
|
||||
est utilisée; elle sera effacée quand vous quitterez gramps.
|
||||
|
||||
Quand plus d'un fichier doit être importé, chacun doit être
|
||||
précédé par la commande **-i** . Ces fichiers sont importés dans le
|
||||
même ordre, **-i** *FICHIER1* **-i** *FICHIER2* et **-i** *FICHIER2* **-i**
|
||||
*FICHIER1* vont tous les deux produire différents IDs gramps.
|
||||
Quand plus d'un fichier doit être importé, chacun doit être
|
||||
précédé par la commande **-i** . Ces fichiers sont importés dans le
|
||||
même ordre, i.e. **-i** *FICHIER1* **-i** *FICHIER2* et **-i** *FICHIER2* **-i**
|
||||
*FICHIER1* vont tous les deux produire différents IDs gramps.
|
||||
|
||||
|
||||
**-e** , **--export=** *FICHIER*
|
||||
@@ -102,38 +104,38 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
**-a** , **--action=** *ACTION*
|
||||
Accomplir une *ACTION* sur les données importées. C'est effectué à
|
||||
la fin de l'importation. Les actions possibles sont **summary**
|
||||
(comme le rapport -> Afficher -> Statistiques sur la base),
|
||||
**check** (comme l'outil -> Réparation de la base -> Vérifier et
|
||||
réparer), **report** (produit un rapport) et **tool** (utilise un
|
||||
outil), ces derniers ont besoin de *OPTION* précédé par la commande -p.
|
||||
Accomplir une *ACTION* sur les données importées. C'est effectué à
|
||||
la fin de l'importation. Les actions possibles sont **summary**
|
||||
(comme le rapport -> Afficher -> Statistiques sur la base),
|
||||
**check** (comme l'outil -> Réparation de la base -> Vérifier et
|
||||
réparer), **report** (produit un rapport) et **tool** (utilise un
|
||||
outil), ces derniers ont besoin de *OPTION* précédé par la commande -p.
|
||||
|
||||
L' *OPTION* doit satisfaire ces conditions:
|
||||
Il ne doit pas y avoir d'espace. Si certains arguments doivent
|
||||
utiliser des espaces, la chaîne doit être encadrée par des
|
||||
guillemets. Les options vont par paire nom et valeur. Une
|
||||
paire est séparée par un signe égal. Différentes paires sont
|
||||
séparées par une virgule.
|
||||
L' *OPTION* doit satisfaire ces conditions:
|
||||
Il ne doit pas y avoir d'espace. Si certains arguments doivent
|
||||
utiliser des espaces, la chaîne doit être encadrée par des
|
||||
guillemets. Les options vont par paire nom et valeur. Une
|
||||
paire est séparée par un signe égal. Différentes paires sont
|
||||
séparées par une virgule.
|
||||
|
||||
La plupart des options sont spécifiques à chaque rapport. Même
|
||||
s'il existe des options communes.
|
||||
La plupart des options sont spécifiques à chaque rapport. Même
|
||||
s'il existe des options communes.
|
||||
|
||||
**name=name**
|
||||
Cette option est obligatoire, elle détermine quel rapport ou
|
||||
outil sera utilisé. Si le name saisi ne correspond à aucun
|
||||
module disponible, un message d'erreur sera ajouté.
|
||||
**name=name**
|
||||
Cette option est obligatoire, elle détermine quel rapport ou
|
||||
outil sera utilisé. Si le name saisi ne correspond à aucun
|
||||
module disponible, un message d'erreur sera ajouté.
|
||||
|
||||
**show=all**
|
||||
Cette option produit une liste avec les noms des options
|
||||
disponibles pour un rapport donné.
|
||||
**show=all**
|
||||
Cette option produit une liste avec les noms des options
|
||||
disponibles pour un rapport donné.
|
||||
|
||||
**show=optionname**
|
||||
Cette option affiche une description de toutes les fonctionnalités
|
||||
proposées par optionname, aussi bien les types que les valeurs pour une option.
|
||||
|
||||
Utiliser les options ci-dessus pour trouver tout sur un rapport
|
||||
choisi.
|
||||
choisi.
|
||||
|
||||
|
||||
Quand plus d'une action doit être effectuée, chacune doit être précédée
|
||||
@@ -142,23 +144,23 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
**-d** , **--debug=** *NOM_LOGGER*
|
||||
Permet les logs de debug pour le développement et les tests.
|
||||
Regarder le code source pour les détails.
|
||||
Permet les logs de debug pour le développement et les tests.
|
||||
Regarder le code source pour les détails.
|
||||
|
||||
**--version**
|
||||
Imprime le numéro de version pour gramps puis quitte.
|
||||
Imprime le numéro de version pour gramps puis quitte.
|
||||
|
||||
|
||||
|
||||
|
||||
**Opération**
|
||||
Si le premie argument de la ligne de commande ne commence pas par un
|
||||
tiret (i.e. pas d'instruction), gramps va essayer d'ouvrir la base de
|
||||
données avec le nom donné par le premier argument et démarrer une ses‐
|
||||
tiret (i.e. pas d'instruction), gramps va essayer d'ouvrir la base de
|
||||
données avec le nom donné par le premier argument et démarrer une ses‐
|
||||
sion interactive, en ignorant le reste de la ligne de commande.
|
||||
|
||||
|
||||
Si la commande **-O** est notée, alors gramps va essayer le fichier défini
|
||||
Si la commande **-O** est notée, alors gramps va essayer le fichier défini
|
||||
et va travailler avec ses données, comme pour les autres paramètres de
|
||||
la ligne de commande.
|
||||
|
||||
@@ -181,7 +183,7 @@ gramps(1) @VERSION@ gramps(1)
|
||||
Cette base sera **import_db.grdb** dans le répertoire **~/.gramps/import**.
|
||||
|
||||
|
||||
Les erreurs rencontrées lors d'importation, d'exportation, ou d'action, seront
|
||||
Les erreurs rencontrées lors d'importation, d'exportation, ou d'action, seront
|
||||
mémorisées en *stdout* (si elles sont le fait de la manipulation par
|
||||
gramps) ou en *stderr* (si elles ne sont pas le fait d'une manipulation).
|
||||
Utilisez les shell de redirection de *stdout* et *stderr* pour sauver
|
||||
@@ -189,16 +191,16 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
**EXEMPLES**
|
||||
Pour ouvrir un arbre familial et y importer un fichier XML, on peut
|
||||
Pour ouvrir un arbre familial et y importer un fichier XML, on peut
|
||||
saisir:
|
||||
|
||||
**gramps -O** *'Mon Arbre Familial'* **-i** *~/db3.gramps*
|
||||
**gramps -O** *'Mon Arbre Familial'* **-i** *~/db3.gramps*
|
||||
|
||||
Ceci ouvre un arbre familial, pour faire la même chose, mais importer
|
||||
dans un arbre familial temporaire et démarrer une session interactive,
|
||||
on peut saisir :
|
||||
dans un arbre familial temporaire et démarrer une session interactive,
|
||||
on peut saisir:
|
||||
|
||||
**gramps -i** *'Mon Arbre Familial'* **-i** *~/db3.gramps*
|
||||
**gramps -i** *'Mon Arbre Familial'* **-i** *~/db3.gramps*
|
||||
|
||||
Lecture de quatre bases de données dont les formats peuvent être
|
||||
devinés d'après les noms, puis vérification des données:
|
||||
@@ -223,12 +225,12 @@ gramps(1) @VERSION@ gramps(1)
|
||||
Pour lire trois ensembles de données puis lancer une session
|
||||
interactive de gramps sur le tout :
|
||||
|
||||
**gramps -i** *file1.ged* **-i** *file2.tgz* **-i** *~/db3.gramps*
|
||||
**gramps -i** *file1.ged* **-i** *file2.tgz* **-i** *~/db3.gramps*
|
||||
|
||||
Pour lancer l'outil de vérification de la base de données depuis la
|
||||
ligne de commande et obtenir le résultat :
|
||||
|
||||
**gramps -O** *'My Family Tree'* **-a** *tool* **-p name=** *verify*
|
||||
**gramps -O** *'My Family Tree'* **-a** *tool* **-p name=** *verify*
|
||||
|
||||
Enfin, pour lancer une session interactive normale, entrer :
|
||||
|
||||
@@ -251,24 +253,21 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
**CONCEPTS**
|
||||
Gramps est un système basé sur le support de plugin-python, permettant
|
||||
d'importer et d'exporter, la saisie, générer des rapports, des outils,
|
||||
et afficher des filtres pouvant être ajoutés sans modifier le programme.
|
||||
d'importer et d'exporter, la saisie, générer des rapports, des outils,
|
||||
et afficher des filtres pouvant être ajoutés sans modifier le programme.
|
||||
|
||||
Par ailleurs, gramps permet la génération directe : impression, rap‐
|
||||
ports avec sortie vers d'autres formats, comme *LibreOffice.org* ,
|
||||
*HTML* , ou *LaTeX* pour permettre à l'utilisateur de choisir selon ses
|
||||
*HTML* , ou *LaTeX* pour permettre à l'utilisateur de choisir selon ses
|
||||
besoins
|
||||
|
||||
|
||||
**BUGS CONNUS ET LIMITATIONS**
|
||||
|
||||
**FICHIERS**
|
||||
|
||||
*${PREFIX}/bin/gramps*
|
||||
|
||||
*${PREFIX}/lib/python/dist-packages/gramps/*
|
||||
|
||||
*${PREFIX}/share/*
|
||||
*${PREFIX}/share/gramps*
|
||||
|
||||
*${HOME}/.gramps*
|
||||
|
||||
@@ -297,4 +296,4 @@ gramps(1) @VERSION@ gramps(1)
|
||||
|
||||
|
||||
|
||||
gramps(1) @VERSION@ gramps(1)
|
||||
Janvier 2013 4.0.0 gramps(1)
|
||||
|
@@ -1,4 +1,4 @@
|
||||
.TH "GRAMPS" "1" "09 March 2015" "4.2" "Gramps"
|
||||
.TH "GRAMPS" "1" "04 December 2012" "4.0" "Gramps"
|
||||
.SH NAME
|
||||
gramps \- Gramps Documentation
|
||||
.
|
||||
@@ -31,7 +31,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||
.\" Man page generated from reStructeredText.
|
||||
.
|
||||
.sp
|
||||
gramps(1) @VERSION@ gramps(1)
|
||||
gramps(1) 4.0.0 gramps(1)
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \fBNOM\fP
|
||||
@@ -72,7 +72,7 @@ Les formats natifs de gramps sont acceptés, voir ci\-dessous.
|
||||
.TP
|
||||
.B \fB\-f\fP , \fB\-\-format=\fP \fIFORMAT\fP
|
||||
Le format spécifique du \fIFICHIER\fP est précédé par les arguments
|
||||
\fB\-i\fP , ou \fB\-e\fP . Si l\(aqoption \fB\-f\fP n\(aqest pas donnée pour le \fIFICHIER\fP ,
|
||||
\fB\-i\fP , ou \fB\-e\fP . Si l\(aqoption \fB\-f\fP n\(aqest pas donnée pour le \fIFICHIER\fP ,
|
||||
alors le format sera celui de l\(aqextension ou du type\-MIME.
|
||||
.sp
|
||||
Les formats de sortie disponibles sont \fBgramps\-xml\fP (deviné si
|
||||
@@ -96,22 +96,22 @@ Débloquer une base de données verrouillée.
|
||||
.TP
|
||||
.B \fB\-O\fP , \fB\-\-open=\fP \fIBASE_DE_DONNEES\fP
|
||||
Ouvrir une \fIBASE_DE_DONNEES\fP qui doit être une base présente dans
|
||||
le répertoire des bases ou le nom d\(aqun arbre familial existant.
|
||||
le répertoire des bases ou le nom d\(aqun arbre familial existant.
|
||||
Si aucune action n\(aqest définie, les options d\(aqimport ou d\(aqexport
|
||||
sont données par la ligne de commande puis une session interactive
|
||||
est ouverte, utilisant cette base de données.
|
||||
sont données par la ligne de commande puis une session interac‐
|
||||
tive est ouverte, utilisant cette base de données.
|
||||
.sp
|
||||
Seulement une base peut être ouverte. Si vous utilisez plusieurs
|
||||
sources, vous devez utiliser l\(aqoption d\(aqimport.
|
||||
.TP
|
||||
.B \fB\-i\fP , \fB\-\-import=\fP \fIFICHIER\fP
|
||||
Importer des données depuis un \fIFICHIER\fP . Si vous n\(aqavez pas
|
||||
spécifié de base de données, alors une base de données vide
|
||||
est utilisée.
|
||||
spécifié de base de données alors une base de données temporaire
|
||||
est utilisée; elle sera effacée quand vous quitterez gramps.
|
||||
.sp
|
||||
Quand plus d\(aqun fichier doit être importé, chacun doit être
|
||||
Quand plus d\(aqun fichier doit être importé, chacun doit être
|
||||
précédé par la commande \fB\-i\fP . Ces fichiers sont importés dans le
|
||||
même ordre, \fB\-i\fP \fIFICHIER1\fP \fB\-i\fP \fIFICHIER2\fP et \fB\-i\fP \fIFICHIER2\fP \fB\-i\fP
|
||||
même ordre, i.e. \fB\-i\fP \fIFICHIER1\fP \fB\-i\fP \fIFICHIER2\fP et \fB\-i\fP \fIFICHIER2\fP \fB\-i\fP
|
||||
\fIFICHIER1\fP vont tous les deux produire différents IDs gramps.
|
||||
.TP
|
||||
.B \fB\-e\fP , \fB\-\-export=\fP \fIFICHIER\fP
|
||||
@@ -124,15 +124,17 @@ précédé par la commande \fB\-e\fP . Ces fichiers sont importés dans le
|
||||
même ordre.
|
||||
.TP
|
||||
.B \fB\-a\fP , \fB\-\-action=\fP \fIACTION\fP
|
||||
.INDENT 7.0
|
||||
.INDENT 3.5
|
||||
Accomplir une \fIACTION\fP sur les données importées. C\(aqest effectué à
|
||||
la fin de l\(aqimportation. Les actions possibles sont \fBsummary\fP
|
||||
(comme le rapport \-> Afficher \-> Statistiques sur la base),
|
||||
\fBcheck\fP (comme l\(aqoutil \-> Réparation de la base \-> Vérifier et
|
||||
réparer), \fBreport\fP (produit un rapport) et \fBtool\fP (utilise un
|
||||
la fin de l\(aqimportation. Les actions possibles sont \fBsummary\fP
|
||||
(comme le rapport \-> Afficher \-> Statistiques sur la base),
|
||||
\fBcheck\fP (comme l\(aqoutil \-> Réparation de la base \-> Vérifier et
|
||||
réparer), \fBreport\fP (produit un rapport) et \fBtool\fP (utilise un
|
||||
outil), ces derniers ont besoin de \fIOPTION\fP précédé par la commande \-p.
|
||||
.sp
|
||||
L\(aq \fIOPTION\fP doit satisfaire ces conditions:
|
||||
Il ne doit pas y avoir d\(aqespace. Si certains arguments doivent
|
||||
Il ne doit pas y avoir d\(aqespace. Si certains arguments doivent
|
||||
utiliser des espaces, la chaîne doit être encadrée par des
|
||||
guillemets. Les options vont par paire nom et valeur. Une
|
||||
paire est séparée par un signe égal. Différentes paires sont
|
||||
@@ -142,21 +144,25 @@ La plupart des options sont spécifiques à chaque rapport. Même
|
||||
s\(aqil existe des options communes.
|
||||
.sp
|
||||
\fBname=name\fP
|
||||
Cette option est obligatoire, elle détermine quel rapport ou
|
||||
Cette option est obligatoire, elle détermine quel rapport ou
|
||||
outil sera utilisé. Si le name saisi ne correspond à aucun
|
||||
module disponible, un message d\(aqerreur sera ajouté.
|
||||
.sp
|
||||
\fBshow=all\fP
|
||||
Cette option produit une liste avec les noms des options
|
||||
disponibles pour un rapport donné.
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
\fBshow=optionname\fP
|
||||
Cette option affiche une description de toutes les fonctionnalités
|
||||
proposées par optionname, aussi bien les types que les valeurs pour une option.
|
||||
.sp
|
||||
Utiliser les options ci\-dessus pour trouver tout sur un rapport
|
||||
.INDENT 7.0
|
||||
.TP
|
||||
.B Utiliser les options ci\-dessus pour trouver tout sur un rapport
|
||||
choisi.
|
||||
.UNINDENT
|
||||
.UNINDENT
|
||||
.sp
|
||||
Quand plus d\(aqune action doit être effectuée, chacune doit être précédée
|
||||
par la commande \fB\-a\fP . Les actions seront réalisées une à une, dans
|
||||
@@ -173,11 +179,11 @@ Imprime le numéro de version pour gramps puis quitte.
|
||||
.TP
|
||||
.B \fBOpération\fP
|
||||
Si le premie argument de la ligne de commande ne commence pas par un
|
||||
tiret (i.e. pas d\(aqinstruction), gramps va essayer d\(aqouvrir la base de
|
||||
données avec le nom donné par le premier argument et démarrer une ses‐
|
||||
tiret (i.e. pas d\(aqinstruction), gramps va essayer d\(aqouvrir la base de
|
||||
données avec le nom donné par le premier argument et démarrer une ses‐
|
||||
sion interactive, en ignorant le reste de la ligne de commande.
|
||||
.sp
|
||||
Si la commande \fB\-O\fP est notée, alors gramps va essayer le fichier défini
|
||||
Si la commande \fB\-O\fP est notée, alors gramps va essayer le fichier défini
|
||||
et va travailler avec ses données, comme pour les autres paramètres de
|
||||
la ligne de commande.
|
||||
.sp
|
||||
@@ -202,7 +208,7 @@ Utilisez les shell de redirection de \fIstdout\fP et \fIstderr\fP pour sauver
|
||||
les messages et les erreurs dans les fichiers.
|
||||
.TP
|
||||
.B \fBEXEMPLES\fP
|
||||
Pour ouvrir un arbre familial et y importer un fichier XML, on peut
|
||||
Pour ouvrir un arbre familial et y importer un fichier XML, on peut
|
||||
saisir:
|
||||
.INDENT 7.0
|
||||
.INDENT 3.5
|
||||
@@ -211,8 +217,8 @@ saisir:
|
||||
.UNINDENT
|
||||
.sp
|
||||
Ceci ouvre un arbre familial, pour faire la même chose, mais importer
|
||||
dans un arbre familial temporaire et démarrer une session interactive,
|
||||
on peut saisir :
|
||||
dans un arbre familial temporaire et démarrer une session interactive,
|
||||
on peut saisir:
|
||||
.INDENT 7.0
|
||||
.INDENT 3.5
|
||||
\fBgramps \-i\fP \fI\(aqMon Arbre Familial\(aq\fP \fB\-i\fP \fI~/db3.gramps\fP
|
||||
@@ -286,25 +292,22 @@ PROFILE pour Windows 2000/XP).
|
||||
.TP
|
||||
.B \fBCONCEPTS\fP
|
||||
Gramps est un système basé sur le support de plugin\-python, permettant
|
||||
d\(aqimporter et d\(aqexporter, la saisie, générer des rapports, des outils,
|
||||
et afficher des filtres pouvant être ajoutés sans modifier le programme.
|
||||
d\(aqimporter et d\(aqexporter, la saisie, générer des rapports, des outils,
|
||||
et afficher des filtres pouvant être ajoutés sans modifier le programme.
|
||||
.sp
|
||||
Par ailleurs, gramps permet la génération directe : impression, rap‐
|
||||
ports avec sortie vers d\(aqautres formats, comme \fILibreOffice.org\fP ,
|
||||
\fIHTML\fP , ou \fILaTeX\fP pour permettre à l\(aqutilisateur de choisir selon ses
|
||||
\fIHTML\fP , ou \fILaTeX\fP pour permettre à l\(aqutilisateur de choisir selon ses
|
||||
besoins
|
||||
.UNINDENT
|
||||
.sp
|
||||
\fBBUGS CONNUS ET LIMITATIONS\fP
|
||||
.sp
|
||||
\fBFICHIERS\fP
|
||||
.INDENT 0.0
|
||||
.INDENT 3.5
|
||||
\fI${PREFIX}/bin/gramps\fP
|
||||
.sp
|
||||
\fI${PREFIX}/lib/python/dist\-packages/gramps/\fP
|
||||
.sp
|
||||
\fI${PREFIX}/share/\fP
|
||||
\fI${PREFIX}/share/gramps\fP
|
||||
.sp
|
||||
\fI${HOME}/.gramps\fP
|
||||
.UNINDENT
|
||||
@@ -312,15 +315,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,14 +333,14 @@ 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)
|
||||
Janvier 2013 4.0.0 gramps(1)
|
||||
.SH AUTHOR
|
||||
Jerome Rapinat
|
||||
.SH COPYRIGHT
|
||||
2015, Gramps project
|
||||
2012, Gramps project
|
||||
.\" Generated by docutils manpage writer.
|
||||
.\"
|
||||
.
|
||||
|
@@ -104,7 +104,7 @@ If no action, import or export options are given on the command line then an int
|
||||
|
||||
.TP
|
||||
.BI \-i,\-\^\-import= " FILE"
|
||||
Import data from \fIFILE\fR. If you haven't specified a database, then an empty database is created for you called Family Tree x (where x is an incrementing number).
|
||||
Import data from \fIFILE\fR. If you haven't specified a database then a temporary database is used; this is deleted when you exit gramps.
|
||||
.br
|
||||
|
||||
When more than one input file is given, each has to be preceded by \fB\-i\fR
|
||||
@@ -298,11 +298,9 @@ or LaTeX to allow the users to modify the format to suit their needs.
|
||||
|
||||
.SH FILES
|
||||
.LP
|
||||
\fI${PREFIX}/bin/gramps\fP
|
||||
\fI${PREFIX}/bin/gramps\fP
|
||||
.br
|
||||
\fI${PREFIX}/lib/python/dist\-packages/gramps/\fP
|
||||
.br
|
||||
\fI${PREFIX}/share/\fP
|
||||
\fI${PREFIX}/share/gramps\fP
|
||||
.br
|
||||
\fI${HOME}/.gramps\fP
|
||||
|
||||
|
15
data/man/nl/Makefile.am
Normal file
15
data/man/nl/Makefile.am
Normal file
@@ -0,0 +1,15 @@
|
||||
# This is the data/man/nl level Makefile for Gramps
|
||||
# $Id: Makefile.am 9819 2008-01-15 15:42:10Z bmcage $
|
||||
|
||||
mandir = @mandir@/nl
|
||||
|
||||
man_IN_FILES = gramps.1.in
|
||||
man_MANS = $(man_IN_FILES:.1.in=.1)
|
||||
|
||||
EXTRA_DIST = $(man_MANS) $(man_IN_FILES)
|
||||
|
||||
gramps.1: $(top_builddir)/config.status gramps.1.in
|
||||
cd $(top_builddir) && CONFIG_FILES=data/man/nl/$@ $(SHELL) ./config.status
|
||||
|
||||
CLEANFILES=$(man_MANS)
|
||||
|
@@ -41,16 +41,16 @@ master_doc = 'nl'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, Gramps project'
|
||||
copyright = u'2012, 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.2'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@@ -227,14 +227,11 @@ gramps(1) 3.4.0 gramps(1)
|
||||
|
||||
|
||||
**GEKENDE BUGS EN BEPERKINGEN**
|
||||
|
||||
**BESTANDEN**
|
||||
|
||||
*${PREFIX}/bin/gramps*
|
||||
|
||||
*${PREFIX}/lib/python/dist-packages/gramps/*
|
||||
|
||||
*${PREFIX}/share/*
|
||||
*${PREFIX}/share/gramps*
|
||||
|
||||
*${HOME}/.gramps*
|
||||
|
||||
|
14
data/man/pl/Makefile.am
Normal file
14
data/man/pl/Makefile.am
Normal file
@@ -0,0 +1,14 @@
|
||||
# This is the data/man/sv level Makefile for Gramps
|
||||
# $Id: Makefile.am 6189 2006-03-21 19:05:46Z rshura $
|
||||
|
||||
man_IN_FILES = gramps.1.in
|
||||
man_MANS = $(man_IN_FILES:.1.in=.1)
|
||||
|
||||
mandir = @mandir@/pl
|
||||
|
||||
EXTRA_DIST = $(man_MANS) $(man_IN_FILES)
|
||||
|
||||
gramps.1: $(top_builddir)/config.status gramps.1.in
|
||||
cd $(top_builddir) && CONFIG_FILES=data/man/pl/$@ $(SHELL) ./config.status
|
||||
|
||||
CLEANFILES=$(man_MANS)
|
@@ -41,16 +41,16 @@ master_doc = 'pl'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, Gramps project'
|
||||
copyright = u'2012, 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.2'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@@ -276,9 +276,7 @@ gramps(1) 3.4.0 gramps(1)
|
||||
|
||||
*${PREFIX}/bin/gramps*
|
||||
|
||||
*${PREFIX}/lib/python/dist-packages/gramps/*
|
||||
|
||||
*${PREFIX}/share/*
|
||||
*${PREFIX}/share/gramps*
|
||||
|
||||
*${HOME}/.gramps (jeśli nie użyta została zmienna środowiskowa GRAMP‐
|
||||
SHOME)*
|
||||
|
14
data/man/pt_BR/Makefile.am
Normal file
14
data/man/pt_BR/Makefile.am
Normal file
@@ -0,0 +1,14 @@
|
||||
# This is the data/pt_BR level Makefile for Gramps
|
||||
# $Id: Makefile.am 16377 2011-01-13 18:32:42Z matlas $
|
||||
|
||||
man_IN_FILES = gramps.1.in
|
||||
man_MANS = $(man_IN_FILES:.1.in=.1)
|
||||
|
||||
mandir = @mandir@/pt_BR
|
||||
|
||||
EXTRA_DIST = $(man_MANS) $(man_IN_FILES)
|
||||
|
||||
gramps.1: $(top_builddir)/config.status gramps.1.in
|
||||
cd $(top_builddir) && CONFIG_FILES=data/man/pt_BR/$@ $(SHELL) ./config.status
|
||||
|
||||
CLEANFILES=$(man_MANS)
|
@@ -41,16 +41,16 @@ master_doc = 'pt_BR'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, Gramps project'
|
||||
copyright = u'2012, 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.2'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@@ -255,11 +255,9 @@ gramps(1) 4.0.0 gramps(1)
|
||||
*ARQUIVOS**
|
||||
|
||||
*${PREFIX}/bin/gramps*
|
||||
|
||||
*${PREFIX}/lib/python/dist-packages/gramps/*
|
||||
|
||||
*${PREFIX}/share/*
|
||||
|
||||
|
||||
*${PREFIX}/share/gramps*
|
||||
|
||||
*${HOME}/.gramps*
|
||||
|
||||
|
||||
|
14
data/man/sv/Makefile.am
Normal file
14
data/man/sv/Makefile.am
Normal file
@@ -0,0 +1,14 @@
|
||||
# This is the data/man/sv level Makefile for Gramps
|
||||
# $Id: Makefile.am 6189 2006-03-21 19:05:46Z rshura $
|
||||
|
||||
man_IN_FILES = gramps.1.in
|
||||
man_MANS = $(man_IN_FILES:.1.in=.1)
|
||||
|
||||
mandir = @mandir@/sv
|
||||
|
||||
EXTRA_DIST = $(man_MANS) $(man_IN_FILES)
|
||||
|
||||
gramps.1: $(top_builddir)/config.status gramps.1.in
|
||||
cd $(top_builddir) && CONFIG_FILES=data/man/sv/$@ $(SHELL) ./config.status
|
||||
|
||||
CLEANFILES=$(man_MANS)
|
@@ -41,16 +41,16 @@ master_doc = 'sv'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, Gramps project'
|
||||
copyright = u'2012, 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.2'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
|
@@ -246,9 +246,7 @@ Gramps(1) 3.4.0 Gramps(1)
|
||||
|
||||
*${PREFIX}/bin/gramps*
|
||||
|
||||
*${PREFIX}/lib/python/dist-packages/gramps/*
|
||||
|
||||
*${PREFIX}/share/*
|
||||
*${PREFIX}/share/gramps*
|
||||
|
||||
*${HOME}/.gramps*
|
||||
|
||||
|
@@ -19,7 +19,7 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
"""
|
||||
update_man.py for command line documentation.
|
||||
@@ -43,7 +43,7 @@ except:
|
||||
DOCUTILS = False
|
||||
|
||||
LANGUAGES = ['sv', 'nl', 'pl', 'cs', 'pt_BR', 'fr']
|
||||
VERSION = '4.2.0'
|
||||
VERSION = '4.0.0'
|
||||
DATE = ''
|
||||
|
||||
# You can set these variables from the command line.
|
||||
@@ -52,11 +52,11 @@ SPHINXBUILD = 'sphinx-build'
|
||||
if sys.platform == 'win32':
|
||||
pythonCmd = os.path.join(sys.prefix, 'bin', 'python.exe')
|
||||
sphinxCmd = os.path.join(sys.prefix, 'bin', 'sphinx-build.exe')
|
||||
elif sys.platform in ['linux2', 'darwin', 'cygwin']:
|
||||
elif sys.platform == 'linux2' or os.name == 'darwin':
|
||||
pythonCmd = os.path.join(sys.prefix, 'bin', 'python')
|
||||
sphinxCmd = SPHINXBUILD
|
||||
else:
|
||||
print ("Update Man ERROR: unknown system, don't know sphinx, ... commands")
|
||||
print ("ERROR: unknown system, don't know sphinx, ... commands")
|
||||
sys.exit(0)
|
||||
|
||||
def tests():
|
||||
|
28
debian/README.Debian
vendored
28
debian/README.Debian
vendored
@@ -1,18 +1,18 @@
|
||||
Gramps for Debian
|
||||
gramps for Debian
|
||||
----------------------
|
||||
|
||||
This is the Debian package of the 4.0 series of GRAMPS.
|
||||
This is the Debian package of GRAMPS.
|
||||
|
||||
It is a major update of Gramps to upgrade to GTK 3. A switch was also made to distutils from autotools.
|
||||
Regarding the extra dependencies:
|
||||
|
||||
The 4.0 series of Gramps is being packaged for the experimental distribution until all dependencies are available
|
||||
and it proves stable.
|
||||
|
||||
Webkit - gir1.2-webkit-3.0 crashes. Gramps has been patched disable the hidden
|
||||
HTML view instead until a solution is found.
|
||||
|
||||
Goocanvas2 - The latest Goocanvas is not available in Debian yet. If you miss
|
||||
the Graphview plugin, you could try installing the gir1.2-goocanvas-2.0-9 which
|
||||
is available in Ubuntu.
|
||||
|
||||
-- Ross Gammon <rossgammon@mail.dk> Sat, 25 Jan 2014 18:00:00 +0100
|
||||
Recommends: graphviz
|
||||
Enable creation of graphs
|
||||
Recommends: python-gtkmozembed
|
||||
Recommends: python-webkit
|
||||
Enable html rendering for Geographic view and Web view. If both
|
||||
are installed webkit will be used. python-gtkmozembed may be more
|
||||
stable.
|
||||
Suggests: ttf-freefont
|
||||
Allows more fonts in reports
|
||||
Suggests: python-gtkspell python-enchant
|
||||
allows spell checking in the notes. Both need to be installed.
|
||||
|
18
debian/changelog
vendored
18
debian/changelog
vendored
@@ -1,21 +1,3 @@
|
||||
gramps (4.0.3) precise; urgency=low
|
||||
|
||||
* - 4.0.4-git.f08e40 Experimental stream gramps.git
|
||||
|
||||
-- Jérôme Rapinat <romjerome@yahoo.fr> Tue, 04 Feb 2014 19:49:32 +0100
|
||||
|
||||
gramps (4.0.2) precise; urgency=low
|
||||
|
||||
* experimental .deb for gramps 4.0.2
|
||||
|
||||
-- Jérôme Rapinat <romjerome@yahoo.fr> Wed, 04 Dec 2013 10:23:36 +0100
|
||||
|
||||
gramps (4.0.1-2) precise; urgency=low
|
||||
|
||||
* bug 6918: make package more compliant according to Debian policy
|
||||
|
||||
-- Jérôme Rapinat <romjerome@yahoo.fr> Mon, 29 Jul 2013 18:00:11 +0200
|
||||
|
||||
gramps (3.3.0-1) lucid; urgency=low
|
||||
|
||||
* New upstream release
|
||||
|
2
debian/compat
vendored
2
debian/compat
vendored
@@ -1 +1 @@
|
||||
9
|
||||
7
|
||||
|
49
debian/control
vendored
49
debian/control
vendored
@@ -1,43 +1,20 @@
|
||||
Source: gramps
|
||||
Section: python
|
||||
Section: gnome
|
||||
Priority: optional
|
||||
Maintainer: Ross Gammon <rossgammon@mail.dk>
|
||||
Build-Depends-Indep:
|
||||
dh-linktree,
|
||||
gettext,
|
||||
intltool,
|
||||
libxml-parser-perl,
|
||||
python-all,
|
||||
python-setuptools
|
||||
Build-Depends:
|
||||
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
|
||||
Maintainer: Stéphane Charette <stephanecharette@gmail.com>
|
||||
Build-Depends-Indep: libxml-parser-perl, python-gtk2, gettext, python-central (>= 0.5.6), python, intltool
|
||||
Build-Depends: debhelper (>= 7)
|
||||
Standards-Version: 3.8.3
|
||||
Homepage: http://www.gramps-project.org/
|
||||
X-Python-Version: >= 3.0
|
||||
XS-Python-Version: >=2.5
|
||||
|
||||
Package: python3-gramps
|
||||
Package: gramps
|
||||
Architecture: all
|
||||
Depends:
|
||||
gir1.2-gtk-3.0,
|
||||
librsvg2-2,
|
||||
python3-gi,
|
||||
python3-gi-cairo,
|
||||
python3-bsddb3,
|
||||
xdg-utils,
|
||||
${misc:Depends},
|
||||
${python:Depends}
|
||||
Recommends:
|
||||
graphviz,
|
||||
libosmgpsmap-1.0-0-dev,
|
||||
python3-pyicu
|
||||
Suggests:
|
||||
fonts-freefont-ttf,
|
||||
gir1.2-gexiv2-0.4,
|
||||
gir1.2-gtk-gtkspell3-3.0,
|
||||
python3-pil,
|
||||
rcs
|
||||
Depends: ${python:Depends}, librsvg2-common, python-gtk2, python-pyexiv2, xdg-utils, graphviz, python-osmgpsmap ${misc:Depends}
|
||||
Replaces: gramps-manual, gramps-extending-doc
|
||||
Conflicts: gramps-manual, gramps-extending-doc, gramps-common, python-gtk-1.2
|
||||
Recommends:
|
||||
Suggests: ttf-freefont, python-enchant, python-gtkspell
|
||||
Description: Genealogical research program
|
||||
GRAMPS is an Open Source genealogy program written in Python, using
|
||||
the GTK/GNOME interface. It is an extremely flexible program fitting
|
||||
@@ -46,3 +23,5 @@ Description: Genealogical research program
|
||||
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.
|
||||
XB-Python-Version: ${python:Versions}
|
||||
|
||||
|
529
debian/copyright
vendored
529
debian/copyright
vendored
@@ -1,314 +1,251 @@
|
||||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Name: Gramps
|
||||
Source: http://gramps-project.org
|
||||
This package was originally debianized by Brandon L. Griffith
|
||||
<brandon@debian.org> on Sat, 19 May 2001 13:37:24 -0400.
|
||||
|
||||
Files: *
|
||||
Copyright: 2000-2007, Alex Roitman
|
||||
2000-2002, Bruce J. DeGrasse
|
||||
2000-2008, Donald N. Allingham
|
||||
2000-2007, Martin Hawlisch
|
||||
2001, Andrés Sepúlveda
|
||||
2001, David R. Hampton
|
||||
2001-2013, Free Software Foundation, Inc.
|
||||
2001, Graham J. Williams
|
||||
2001, Jesper Zedlitz
|
||||
2001-2013, The Gramps Project
|
||||
2002, Gary Shao
|
||||
2003-2006, Josiah Carlson
|
||||
2004-2006, Eero Tamminen
|
||||
2004-2013, Julio Sánchez
|
||||
2004, Toshio Kuratomi
|
||||
2005-2011, Serge Noiraud
|
||||
2006-2011, Brian G. Matherly
|
||||
2006, 2008-2011, Kees Bakker
|
||||
2006-2008, Steve Hall
|
||||
2007-2012, Benny Malengier
|
||||
2007-2012, Douglas S. Blank
|
||||
2007-2012, Gary Burton
|
||||
2007-2011, Jerome Rapinat
|
||||
2007, Johan Gronqvist
|
||||
2007, Robert Cawley
|
||||
2007-2009, Stephane Charette
|
||||
2007, Thom Sturgill
|
||||
2007-2008, Zsolt Foldvari
|
||||
2008-2010, 2012, Craig J. Anderson
|
||||
2008-2009, James Friedmann
|
||||
2008-2009, Jason Simanek
|
||||
2008, Lukasz Rymarczyk
|
||||
2008-2010, Peter G. Landgren
|
||||
2008, 2010, Raphael Ackermann
|
||||
2008-2011, Reinhard Mueller
|
||||
2008, 2011, Robert Cheramy
|
||||
2008-2012, Rob G. Healey
|
||||
2008, Stefan Siegel
|
||||
2008-2010, Stephen George
|
||||
2009-2010, Andrew I Baznikin
|
||||
2009, 2011, The Dojo Foundation
|
||||
2009, Florian Heinle
|
||||
2009, Gerald W. Britton
|
||||
2009, Igal Shapira
|
||||
2009, 2011, John Resig
|
||||
2009-2013, Nick Hall
|
||||
2009, Pander Musubi
|
||||
2009, Robert Ham
|
||||
2009, Swoon on bug tracker
|
||||
2009, Yevgeny Zegzda
|
||||
2010, Gramps
|
||||
2010, Jakim Friant
|
||||
2010, Josip
|
||||
2010, lcc & Robert Jerome
|
||||
2010-2012, Michiel D. Nauta
|
||||
2010-2013, Tim G L Lyons
|
||||
2010-2011, Vlada Perić
|
||||
2011, Adam Stein
|
||||
2011-2012, Harald Rosemann
|
||||
2011, 2013, Heinz Brinker
|
||||
2011, Helge Herz
|
||||
2011, 2013 John Ralls
|
||||
2011, Matt Keenan
|
||||
2011-2013, Paul Franklin
|
||||
2012, Mathieu MD
|
||||
2012, Nicolas Adenis-Lamarre
|
||||
2013, Fedir Zinchuk
|
||||
2013, Oleh Petrivk
|
||||
2013, Vassilii Khachaturov
|
||||
2013, Zissis Papadopoulos
|
||||
License: GPL-2+
|
||||
The current Debian maintainer is James A. Treacy <treacy@debian.org>
|
||||
|
||||
Files: data/javascript/jquery-1.3.2.min.js
|
||||
Copyright: 2009, John Resig
|
||||
License: MIT and GPL
|
||||
It was downloaded from http://gramps-project.org
|
||||
|
||||
Files: data/javascript/jquery-1.7.1.js
|
||||
Copyright: 2011, John Resig
|
||||
2011, The Dojo Foundation
|
||||
License: BSD and MIT and GPL-2
|
||||
Upstream Authors:
|
||||
Donald N. Allingham, Alexander Roitman, Martin Hawlisch, Richard Taylor,
|
||||
Brian Matherly, Tim Waugh, Donald A. Peterson, David Hampton
|
||||
|
||||
Files: data/javascript/jquery-ui-1.7.2.custom.min.js
|
||||
Copyright: 2009, jQuery UI Team (http://jqueryui.com/about/)
|
||||
License: MIT and GPL-2
|
||||
========================================================
|
||||
Copyright: 2001-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.
|
||||
|
||||
Files: data/javascript/jquery.flexbox*
|
||||
Copyright: 2008-2010, Noah Heldman and Fairway Technologies
|
||||
License: Ms-PL
|
||||
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.
|
||||
|
||||
Files: data/jhtmlarea/Readme.txt
|
||||
Copyright: 2009, Chris Pietschmann
|
||||
License: Ms-RL
|
||||
You should have received a copy of the GNU General Public License with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Files: data/jhtmlarea/scripts/jHtmlArea*
|
||||
Copyright: 2009, Chris Pietschmann
|
||||
License: Ms-RL
|
||||
On Debian systems, the complete text of the GNU General Public
|
||||
License can be found in /usr/share/common-licenses/GPL
|
||||
|
||||
Files: data/jhtmlarea/scripts/jquery-1.3.2*
|
||||
Copyright: 2009, John Resig
|
||||
2009, The Dojo Foundation
|
||||
License: MIT
|
||||
========================================================
|
||||
The files in help/C directory are Copyright 2006 Alexander Roitman
|
||||
This documentation 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.
|
||||
|
||||
Files: data/jhtmlarea/scripts/jquery-ui-*
|
||||
Copyright: 2009, jQuery UI Team (http://jqueryui.com/about)
|
||||
License: MIT and GPL
|
||||
This documentation 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.
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2001-2002, Brandon L. Griffith
|
||||
2002, Alex Roitman
|
||||
2002-2012, James A. Treacy
|
||||
2013, Ross Gammon
|
||||
License: GPL-2+
|
||||
You should have received a copy of the GNU General Public License with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Files: gramps/webapp/grampsdb/view/png.py
|
||||
Copyright: 2006, Johann C. Rocholl
|
||||
2009, David Jones
|
||||
2006, Nicko van Someren
|
||||
License: MIT
|
||||
========================================================
|
||||
The files in help/fr directory are Copyright 2003-2006 Jerome Rapinat
|
||||
This documentation 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.
|
||||
|
||||
License: BSD
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
* Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
* Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
* Neither the name of the <organization> nor the
|
||||
names of its contributors may be used to endorse or promote products
|
||||
derived from this software without specific prior written permission.
|
||||
.
|
||||
THIS SOFTWARE IS PROVIDED BY John Resig ''AS IS'' AND ANY
|
||||
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL <copyright holder> BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
This documentation 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.
|
||||
|
||||
License: GPL
|
||||
This package 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; version 1 only of the License.
|
||||
.
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License can be found in `/usr/share/common-licenses/GPL'.
|
||||
You should have received a copy of the GNU General Public License with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
License: GPL-2
|
||||
This package 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; version 2 only of the License.
|
||||
.
|
||||
This package 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 package; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
.
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License can be found in `/usr/share/common-licenses/GPL-2'.
|
||||
========================================================
|
||||
The data/grampsxml.dtd file is Copyright 2001 Graham J. William
|
||||
and Copyright 2000-2006 Donald N. Allingham
|
||||
|
||||
License: GPL-2+
|
||||
This package 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 package 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 package; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
.
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License can be found in `/usr/share/common-licenses/GPL-2'.
|
||||
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.
|
||||
|
||||
License: MIT
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
to deal in the Software without restriction, including without limitation
|
||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
and/or sell copies of the Software, and to permit persons to whom the
|
||||
Software is furnished to do so, subject to the following conditions:
|
||||
.
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
DEALINGS IN THE SOFTWARE.
|
||||
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.
|
||||
|
||||
License: Ms-PL
|
||||
This license governs use of the accompanying software. If you use the
|
||||
software, you accept this license. If you do not accept the license, do not
|
||||
use the software.
|
||||
.
|
||||
1. Definitions
|
||||
.
|
||||
The terms "reproduce," "reproduction," "derivative works," and "distribution"
|
||||
have the same meaning here as under U.S. copyright law.
|
||||
.
|
||||
A "contribution" is the original software, or any additions or changes to the
|
||||
software.
|
||||
.
|
||||
A "contributor" is any person that distributes its contribution under this
|
||||
license.
|
||||
.
|
||||
"Licensed patents" are a contributor's patent claims that read directly on its
|
||||
contribution.
|
||||
.
|
||||
2. Grant of Rights
|
||||
.
|
||||
(A) Copyright Grant- Subject to the terms of this license, including the
|
||||
license conditions and limitations in section 3, each contributor grants you a
|
||||
non-exclusive, worldwide, royalty-free copyright license to reproduce its
|
||||
contribution, prepare derivative works of its contribution, and distribute its
|
||||
contribution or any derivative works that you create.
|
||||
.
|
||||
(B) Patent Grant- Subject to the terms of this license, including the license
|
||||
conditions and limitations in section 3, each contributor grants you a
|
||||
non-exclusive, worldwide, royalty-free license under its licensed patents to
|
||||
make, have made, use, sell, offer for sale, import, and/or otherwise dispose of
|
||||
its contribution in the software or derivative works of the contribution in the
|
||||
software.
|
||||
.
|
||||
3. Conditions and Limitations
|
||||
.
|
||||
(A) No Trademark License- This license does not grant you rights to use any
|
||||
contributors' name, logo, or trademarks.
|
||||
.
|
||||
(B) If you bring a patent claim against any contributor over patents that you
|
||||
claim are infringed by the software, your patent license from such contributor
|
||||
to the software ends automatically.
|
||||
.
|
||||
(C) If you distribute any portion of the software, you must retain all copyright,
|
||||
patent, trademark, and attribution notices that are present in the software.
|
||||
.
|
||||
(D) If you distribute any portion of the software in source code form, you may do
|
||||
so only under this license by including a complete copy of this license with your
|
||||
distribution. If you distribute any portion of the software in compiled or object
|
||||
code form, you may only do so under a license that complies with this license.
|
||||
.
|
||||
(E) The software is licensed "as-is." You bear the risk of using it. The
|
||||
contributors give no express warranties, guarantees or conditions. You may have
|
||||
additional consumer rights under your local laws which this license cannot change.
|
||||
To the extent permitted under your local laws, the contributors exclude the
|
||||
implied warranties of merchantability, fitness for a particular purpose and
|
||||
non-infringement.
|
||||
You should have received a copy of the GNU General Public License with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
License: Ms-RL
|
||||
This license governs use of the accompanying software. If you use the software,
|
||||
you accept this license. If you do not accept the license, do not use the software.
|
||||
.
|
||||
1. Definitions
|
||||
The terms "reproduce," "reproduction," "derivative works," and "distribution" have
|
||||
the same meaning here as under U.S. copyright law.
|
||||
A "contribution" is the original software, or any additions or changes to the
|
||||
software.
|
||||
A "contributor" is any person that distributes its contribution under this license.
|
||||
"Licensed patents" are a contributor's patent claims that read directly on its
|
||||
contribution.
|
||||
.
|
||||
2. Grant of Rights
|
||||
(A) Copyright Grant- Subject to the terms of this license, including the license
|
||||
conditions and limitations in section 3, each contributor grants you a
|
||||
non-exclusive, worldwide, royalty-free copyright license to reproduce its
|
||||
contribution, prepare derivative works of its contribution, and distribute its
|
||||
contribution or any derivative works that you create.
|
||||
(B) Patent Grant- Subject to the terms of this license, including the license
|
||||
conditions and limitations in section 3, each contributor grants you a
|
||||
non-exclusive, worldwide, royalty-free license under its licensed patents to make,
|
||||
have made, use, sell, offer for sale, import, and/or otherwise dispose of its
|
||||
contribution in the software or derivative works of the contribution in the software.
|
||||
.
|
||||
3. Conditions and Limitations
|
||||
(A) Reciprocal Grants- For any file you distribute that contains code from the
|
||||
software (in source code or binary format), you must provide recipients the source
|
||||
code to that file along with a copy of this license, which license will govern that
|
||||
file. You may license other files that are entirely your own work and do not contain
|
||||
code from the software under any terms you choose.
|
||||
(B) No Trademark License- This license does not grant you rights to use any
|
||||
contributors' name, logo, or trademarks.
|
||||
(C) If you bring a patent claim against any contributor over patents that you claim
|
||||
are infringed by the software, your patent license from such contributor to the
|
||||
software ends automatically.
|
||||
(D) If you distribute any portion of the software, you must retain all copyright,
|
||||
patent, trademark, and attribution notices that are present in the software.
|
||||
(E) If you distribute any portion of the software in source code form, you may do so
|
||||
only under this license by including a complete copy of this license with your
|
||||
distribution. If you distribute any portion of the software in compiled or object code
|
||||
form, you may only do so under a license that complies with this license.
|
||||
(F) The software is licensed "as-is." You bear the risk of using it. The contributors
|
||||
give no express warranties, guarantees or conditions. You may have additional consumer
|
||||
rights under your local laws which this license cannot change. To the extent permitted
|
||||
under your local laws, the contributors exclude the implied warranties of
|
||||
merchantability, fitness for a particular purpose and non-infringement.
|
||||
========================================================
|
||||
The src/TreeTips.py file is Copyright 2004 Toshio Kuratomi
|
||||
|
||||
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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
========================================================
|
||||
The src/data/fdl.txt file is Copyright 2000,2001,2002
|
||||
Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330,
|
||||
Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
========================================================
|
||||
The file src/docgen/ODFDoc.py file is Copyright 2005-2006 Serge Noiraud
|
||||
and Copyright 2005-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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
========================================================
|
||||
The file src/Mime/_WinMime.py file is Copyright 2006 Brian Matherly
|
||||
and Copyright 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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
========================================================
|
||||
The src/plugins/Ancestors.py file is Copyright 2003 Tim Waugh
|
||||
and Copyright 2003-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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
========================================================
|
||||
The src/plugins/CountAncestors.py file is Copyright 2001 Jesper Zedlitz
|
||||
and Copyright 2001-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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
========================================================
|
||||
The files:
|
||||
src/plugins/DetAncestralReport.py
|
||||
src/plugins/DetDescendantReport.py
|
||||
are Copyright 2000-2002 Bruce J. DeGrasse
|
||||
and Copyright 2002-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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
========================================================
|
||||
The files:
|
||||
src/date_test.py
|
||||
src/DataViews/_PedigreeView.py
|
||||
src/plugins/DumpGenderStats.py
|
||||
src/plugins/ExportVCalendar.py
|
||||
src/plugins/ExportVCard.py
|
||||
src/plugins/ImportGeneWeb.py
|
||||
src/plugins/ImportvCard.py
|
||||
src/plugins/TestcaseGenerator.py
|
||||
src/plugins/WriteGeneWeb.py
|
||||
are Copyright 2001-2006 Martin Hawlisch, 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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
========================================================
|
||||
The files:
|
||||
src/ReportBase/__init__.py
|
||||
src/ReportBase/_Report.py
|
||||
are Copyright 2001 David R. Hampton
|
||||
and Copyright 2001-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 with
|
||||
the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
|
||||
if not, write to the Free Software Foundation, Inc., 59 Temple Place,
|
||||
Suite 330, Boston, MA 02111-1307 USA
|
||||
|
2
debian/gramps-help.docs
vendored
Normal file
2
debian/gramps-help.docs
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
NEWS
|
||||
README
|
2
debian/gramps.dirs
vendored
Normal file
2
debian/gramps.dirs
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
usr/share/pixmaps
|
||||
usr/share/mime/packages
|
5
debian/gramps.docs
vendored
Normal file
5
debian/gramps.docs
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
AUTHORS
|
||||
FAQ
|
||||
NEWS
|
||||
README
|
||||
TODO
|
3
debian/gramps.files
vendored
Normal file
3
debian/gramps.files
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
/usr/bin/
|
||||
/usr/share/
|
||||
/etc
|
2
debian/gramps.install
vendored
2
debian/gramps.install
vendored
@@ -1,2 +0,0 @@
|
||||
# Install icon to the correct place
|
||||
debian/gramps.xpm usr/share/pixmaps/
|
1
debian/gramps.manpages
vendored
Normal file
1
debian/gramps.manpages
vendored
Normal file
@@ -0,0 +1 @@
|
||||
data/man/gramps.1
|
3
debian/gramps.menu
vendored
Normal file
3
debian/gramps.menu
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
?package(gramps):needs="X11" section="Applications/Office"\
|
||||
title="gramps" command="/usr/bin/gramps"\
|
||||
icon="/usr/share/pixmaps/gramps.xpm"
|
3
debian/gramps.postinst
vendored
Normal file
3
debian/gramps.postinst
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
#DEBHELPER#
|
3
debian/gramps.postrm
vendored
Normal file
3
debian/gramps.postrm
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
#DEBHELPER#
|
3
debian/gramps.prerm
vendored
Normal file
3
debian/gramps.prerm
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
# #DEBHELPER#
|
@@ -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
debian/patches/0002-Disable-HTML-View.patch
vendored
22
debian/patches/0002-Disable-HTML-View.patch
vendored
@@ -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
debian/patches/series
vendored
2
debian/patches/series
vendored
@@ -1,2 +0,0 @@
|
||||
0001-Correct-resource-path-in-setup.py.patch
|
||||
0002-Disable-HTML-View.patch
|
1
debian/pycompat
vendored
Normal file
1
debian/pycompat
vendored
Normal file
@@ -0,0 +1 @@
|
||||
2
|
94
debian/rules
vendored
94
debian/rules
vendored
@@ -1,37 +1,73 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
export DH_VERBOSE=1
|
||||
export DH_OPTIONS=-v
|
||||
build: build-stamp
|
||||
build-stamp:
|
||||
dh_testdir
|
||||
|
||||
%:
|
||||
dh $@ --with python3
|
||||
#./autogen.sh --prefix=/usr --mandir=\$${prefix}/share/man --sysconfdir=/etc
|
||||
./configure --enable-packager-mode --prefix=/usr --mandir=\$${prefix}/share/man --sysconfdir=/etc
|
||||
# ./configure --prefix=`pwd`/debian/tmp/usr --mandir=\$${prefix}/share/man
|
||||
$(MAKE)
|
||||
# $(MAKE) html
|
||||
|
||||
# Override auto test because upstream do not use the standard unittest discover
|
||||
override_dh_auto_test:
|
||||
touch build-stamp
|
||||
|
||||
# Override of auto_build
|
||||
override_dh_auto_build:
|
||||
python3 setup.py build --resourcepath=/usr/share
|
||||
clean:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
|
||||
# Override of auto_install to remove information from package
|
||||
override_dh_auto_install:
|
||||
#dh_auto_install
|
||||
# Remove duplicate copyright information
|
||||
#rm $(CURDIR)/debian/python3-gramps/usr/share/doc/gramps/COPYING
|
||||
# Remove install file as it is not needed by package users
|
||||
#rm $(CURDIR)/debian/python3-gramps/usr/share/doc/gramps/INSTALL
|
||||
# Remove duplicate license information
|
||||
#rm $(CURDIR)/debian/python3-gramps/usr/share/doc/gramps/LICENSE
|
||||
python3 setup.py install --root=debian/python3-gramps --install-layout=deb
|
||||
# [ ! -f Makefile ] || $(MAKE) distclean
|
||||
# -rm -f src/*.pyo src/*/*.pyo
|
||||
# -rm -f config.status config.log
|
||||
|
||||
# Make css style sheets and png icons non-executable
|
||||
override_dh_fixperms:
|
||||
dh_fixperms
|
||||
chmod a-x $(CURDIR)/debian/python3-gramps/usr/share/gramps/css/Web_*.css
|
||||
#chmod a-x $(CURDIR)/debian/python3-gramps/usr/share/gramps/images/hicolor/22x22/actions/gramps*.png
|
||||
#chmod a-x $(CURDIR)/debian/python3-gramps/usr/share/gramps/images/hicolor/16x16/actions/gramps*.png
|
||||
dh_auto_clean
|
||||
dh_clean
|
||||
|
||||
# Avoid compressing COPYING file so that it can appear in the "About" dialog
|
||||
override_dh_compress:
|
||||
dh_compress -X COPYING
|
||||
install: build
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_prep
|
||||
dh_installdirs
|
||||
|
||||
# Add here commands to install the package into debian/tmp.
|
||||
# GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
|
||||
$(MAKE) install DESTDIR=`pwd`/debian/gramps
|
||||
-rm -f debian/gramps/usr/share/gramps/COPYING
|
||||
ln -s /usr/share/common-licenses/GPL-2 debian/gramps/usr/share/gramps/COPYING
|
||||
-rm -rf debian/gramps/usr/var
|
||||
# cp src/data/gramps.xml debian/gramps/usr/share/mime/packages
|
||||
-find debian/gramps/usr/share/ -name "*.pyo" -exec rm -f '{}' ';'
|
||||
|
||||
cp debian/gramps.xpm debian/gramps/usr/share/pixmaps/
|
||||
# cp src/gramps.xpm debian/tmp/usr/share/pixmaps/
|
||||
# cp src/images/gramps.svg debian/gramps/usr/share/pixmaps/
|
||||
# chmod 644 debian/gramps/usr/share/pixmaps/gramps.svg
|
||||
|
||||
# Build architecture-independent files here.
|
||||
binary-indep: build install
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_installdocs FAQ
|
||||
dh_installmenu
|
||||
# dh_installman
|
||||
dh_installmime -i
|
||||
# dh_installchangelogs ChangeLog
|
||||
dh_installchangelogs
|
||||
dh_icons
|
||||
# dh_movefiles -i
|
||||
# dh_gconf -i
|
||||
dh_link -i
|
||||
dh_compress -i
|
||||
dh_fixperms -i
|
||||
dh_pycentral -i
|
||||
dh_installdeb -i
|
||||
dh_gencontrol -i
|
||||
dh_md5sums -i
|
||||
dh_builddeb -i
|
||||
|
||||
|
||||
# Build architecture-dependent files here.
|
||||
binary-arch: build install
|
||||
|
||||
binary: binary-indep binary-arch
|
||||
.PHONY: build clean binary-indep binary-arch binary install
|
||||
|
1
debian/source/format
vendored
1
debian/source/format
vendored
@@ -1 +0,0 @@
|
||||
1.0
|
1
debian/source/local-options
vendored
1
debian/source/local-options
vendored
@@ -1 +0,0 @@
|
||||
unapply-patches
|
2
debian/substvars
vendored
Normal file
2
debian/substvars
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
shlibs:Depends=libbonobo2-0 (>= 2.4.3), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libgnomevfs2-0 (>= 2.4.1), libgnomevfs2-common (>= 2.4.1), liborbit2 (>= 1:2.8.0)
|
||||
python:Depends=python (>= 2.3), python (<< 2.4)
|
4
debian/watch
vendored
4
debian/watch
vendored
@@ -1,4 +0,0 @@
|
||||
version=3
|
||||
|
||||
opts="dversionmangle=s/\+dfsg//g" \
|
||||
http://sf.net/gramps/gramps-(.+)\.tar\.gz
|
@@ -3,7 +3,7 @@
|
||||
|
||||
# You can set these variables from the command line.
|
||||
SPHINXOPTS =
|
||||
SPHINXBUILD = GRAMPS_RESOURCES=$$PWD/.. sphinx-build
|
||||
SPHINXBUILD = sphinx-build
|
||||
PAPER =
|
||||
|
||||
# Internal variables.
|
||||
|
@@ -3,9 +3,7 @@ Installation and building the docs
|
||||
|
||||
You need to install sphinx. Assuming you have installed the python setuptools, just do:
|
||||
|
||||
sudo easy_install sphinx
|
||||
or
|
||||
sudo pip install sphinx
|
||||
sudo easy_install sphinx
|
||||
|
||||
Once installed, go to the docs directory, and do:
|
||||
|
||||
@@ -19,7 +17,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
|
||||
|
||||
@@ -71,4 +69,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
|
||||
`
|
||||
`
|
@@ -2,12 +2,12 @@
|
||||
Code Documentation
|
||||
##################
|
||||
|
||||
*Gramps* provides several general API. The most important is the *gen* module, providing access to all code that can be of interest outside of the Gramps program.
|
||||
*GRAMPS* provides several general API. The most important is the *gen* module, providing access to all code that can be of interest outside of the GRAMPS program.
|
||||
|
||||
The :mod:`gen` Module
|
||||
=======================
|
||||
|
||||
.. automodule:: gramps.gen
|
||||
.. automodule:: gen
|
||||
|
||||
Contents:
|
||||
|
||||
@@ -22,7 +22,7 @@ Contents:
|
||||
gen/gen_proxy
|
||||
gen/gen_utils
|
||||
|
||||
The Gramps Application
|
||||
The GRAMPS Application
|
||||
========================
|
||||
|
||||
Contents:
|
||||
@@ -32,12 +32,11 @@ Contents:
|
||||
|
||||
corecli/cli
|
||||
coregui/gui
|
||||
coregui/gui_widgets
|
||||
date
|
||||
relationship
|
||||
simple
|
||||
|
||||
Useful snippets
|
||||
Usefull snippets
|
||||
===================
|
||||
|
||||
Contents:
|
||||
|
19
docs/conf.py
19
docs/conf.py
@@ -18,14 +18,19 @@ import sys, os
|
||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||
#sys.path.append(os.path.abspath('.'))
|
||||
|
||||
#documentation in root/docs, allow import from root
|
||||
sys.path.append(os.path.abspath(os.pardir))
|
||||
#documentation in root/docs, allow import from root/src where GRAMPS modules life
|
||||
sourcedir = (os.path.abspath('.')).split(os.sep)[:-1] + ['gramps']
|
||||
sys.path.append((os.sep).join(sourcedir))
|
||||
#make it possible to add plugins --> walk the plugin dir and add to sys.path.append
|
||||
for (dirpath, dirnames, filenames) in os.walk((os.sep).join(sourcedir + ['plugins'])):
|
||||
# add the directory to the python search path
|
||||
sys.path.append(dirpath)
|
||||
|
||||
# -- General configuration -----------------------------------------------------
|
||||
|
||||
# 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', 'sphinx.ext.viewcode']
|
||||
extensions = ['sphinx.ext.autodoc', 'sphinx.ext.todo', 'sphinx.ext.coverage']
|
||||
|
||||
# Add any paths that contain templates here, relative to this directory.
|
||||
templates_path = ['_templates']
|
||||
@@ -41,16 +46,16 @@ master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'Gramps'
|
||||
copyright = u'2015, The Gramps Project'
|
||||
copyright = u'2012, 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.2.0'
|
||||
version = '4.0'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '4.2.0-master'
|
||||
release = '4.0.0'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
@@ -89,8 +94,6 @@ pygments_style = 'sphinx'
|
||||
# A list of ignored prefixes for module index sorting.
|
||||
#modindex_common_prefix = []
|
||||
|
||||
# If true, todo entries will be included in the output.
|
||||
todo_include_todos = True
|
||||
|
||||
# -- Options for HTML output ---------------------------------------------------
|
||||
|
||||
|
@@ -2,12 +2,12 @@
|
||||
The :mod:`cli` Module
|
||||
##########################
|
||||
|
||||
.. automodule:: gramps.cli
|
||||
.. automodule:: cli
|
||||
|
||||
*****************************
|
||||
Argument Handler
|
||||
*****************************
|
||||
.. automodule:: gramps.cli.arghandler
|
||||
.. automodule:: cli.arghandler
|
||||
.. autoclass:: ArgHandler
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -16,7 +16,7 @@ Argument Handler
|
||||
*****************************
|
||||
Argument Parser
|
||||
*****************************
|
||||
.. automodule:: gramps.cli.argparser
|
||||
.. automodule:: cli.argparser
|
||||
.. autoclass:: ArgParser
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -25,7 +25,7 @@ Argument Parser
|
||||
*****************************
|
||||
CLI DB manager
|
||||
*****************************
|
||||
.. automodule:: gramps.cli.clidbman
|
||||
.. automodule:: cli.clidbman
|
||||
.. autoclass:: CLIDbManager
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -34,7 +34,7 @@ CLI DB manager
|
||||
*****************************
|
||||
Gramps CLI
|
||||
*****************************
|
||||
.. automodule:: gramps.cli.grampscli
|
||||
.. automodule:: cli.grampscli
|
||||
.. autoclass:: CLIDbLoader
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -47,7 +47,7 @@ Gramps CLI
|
||||
*****************************
|
||||
User
|
||||
*****************************
|
||||
.. automodule:: gramps.cli.user
|
||||
.. automodule:: cli.user
|
||||
.. autoclass:: User
|
||||
:members:
|
||||
:undoc-members:
|
||||
|
@@ -1,6 +1,6 @@
|
||||
############################
|
||||
##########################
|
||||
The :mod:`gramps.gui` Module
|
||||
############################
|
||||
##########################
|
||||
|
||||
.. automodule:: gramps.gui
|
||||
|
||||
@@ -153,6 +153,23 @@ Filter Editor
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Gramps Bar
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.grampsbar
|
||||
.. autoclass:: DetachedWindow
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GrampsBar
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: TabGramplet
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Navigator
|
||||
*****************************
|
||||
@@ -163,7 +180,7 @@ Navigator
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Plugin Manager
|
||||
Plugins Manager
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.pluginmanager
|
||||
.. autoclass:: GuiPluginManager
|
||||
@@ -198,7 +215,7 @@ Utils
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
View Manager
|
||||
Views Manager
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.viewmanager
|
||||
.. autoclass:: ViewManager
|
||||
|
@@ -1,433 +0,0 @@
|
||||
####################################
|
||||
The :mod:`gramps.gui.widgets` Module
|
||||
####################################
|
||||
|
||||
.. automodule:: gramps.gui.widgets
|
||||
|
||||
*****************************
|
||||
Basic Entry
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.basicentry
|
||||
.. autoclass:: BasicEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Buttons
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.buttons
|
||||
.. autoclass:: IconButton
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: WarnButton
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: SimpleButton
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: PrivacyButton
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Date Entry
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.dateentry
|
||||
.. autoclass:: DateEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Expand Collapse Arrow
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.expandcollapsearrow
|
||||
.. autoclass:: ExpandCollapseArrow
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Fanchart
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.fanchart
|
||||
.. autoclass:: FanChartBaseWidget
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: FanChartWidget
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: FanChartGrampsGUI
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Fanchart Descendant
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.fanchartdesc
|
||||
.. autoclass:: FanChartDescWidget
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: FanChartDescGrampsGUI
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Gramplet Bar
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.grampletbar
|
||||
.. autoclass:: DetachedWindow
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GrampletBar
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: TabGramplet
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Gramplet Pane
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.grampletpane
|
||||
.. autoclass:: LinkTag
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GrampletWindow
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GuiGramplet
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GridGramplet
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GrampletPane
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: Configuration
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Labels
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.labels
|
||||
.. autoclass:: LinkLabel
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: EditLabel
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: BasicLabel
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GenderLabel
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MarkupLabel
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: DualMarkupLabel
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Link Box
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.linkbox
|
||||
.. autoclass:: LinkBox
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Menu Item
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.menuitem
|
||||
.. autoclass:: MenuItemWithData
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Monitored Widgets
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.monitoredwidgets
|
||||
.. autoclass:: MonitoredCheckbox
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredEntryIndicator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredSpinButton
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredText
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredType
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredDataType
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredMenu
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredStrMenu
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredDate
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredComboSelectedEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MonitoredTagList
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Multi Tree View
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.multitreeview
|
||||
.. autoclass:: MultiTreeView
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Photo
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.photo
|
||||
.. autoclass:: Photo
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Progress Dialog
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.progressdialog
|
||||
.. autoclass:: LongOpStatus
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: ProgressMonitor
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GtkProgressDialog
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Shortlist ComboEntry
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.shortlistcomboentry
|
||||
.. autoclass:: ShortlistComboEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Spring Separator
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.springseparator
|
||||
.. autoclass:: SpringSeparatorToolItem
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: SpringSeparatorAction
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Statusbar
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.statusbar
|
||||
.. autoclass:: Statusbar
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Styled Text Buffer
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.styledtextbuffer
|
||||
.. autoclass:: LinkTag
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: GtkSpellState
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: StyledTextBuffer
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Styled Text Editor
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.styledtexteditor
|
||||
.. autoclass:: StyledTextEditor
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Tool ComboEntry
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.toolcomboentry
|
||||
.. autoclass:: ToolComboEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Undoable Buffer
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.undoablebuffer
|
||||
.. autoclass:: Stack
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableInsert
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableDelete
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableBuffer
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Undoable Entry
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.undoableentry
|
||||
.. autoclass:: UndoableInsertEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableDeleteEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Undoable Styled Buffer
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.undoablestyledbuffer
|
||||
.. autoclass:: UndoableInsertStyled
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableDeleteStyled
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableApplyStyle
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: UndoableStyledBuffer
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Validated Combo Entry
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.validatedcomboentry
|
||||
.. autoclass:: ValidatedComboEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Validated Masked Entry
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.validatedmaskedentry
|
||||
.. autoclass:: FadeOut
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: MaskedEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: ValidatableMaskedEntry
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Value Action
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.valueaction
|
||||
.. autoclass:: ValueAction
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Value Tool Item
|
||||
*****************************
|
||||
.. automodule:: gramps.gui.widgets.valuetoolitem
|
||||
.. autoclass:: ValueToolItem
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
@@ -4,22 +4,15 @@ The :class:`Date Handler` Classes
|
||||
|
||||
DateParser
|
||||
====================================
|
||||
.. automodule:: gramps.gen.datehandler._dateparser
|
||||
.. automodule:: gen.datehandler._dateparser
|
||||
.. autoclass:: DateParser
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
DateStrings
|
||||
===========
|
||||
.. automodule:: gramps.gen.datehandler._datestrings
|
||||
.. autoclass:: DateStrings
|
||||
:members:
|
||||
:show-inheritance:
|
||||
|
||||
DateDisplay
|
||||
====================================
|
||||
.. automodule:: gramps.gen.datehandler._datedisplay
|
||||
.. automodule:: gen.datehandler._datedisplay
|
||||
.. autoclass:: DateDisplay
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -31,14 +24,14 @@ DateDisplay
|
||||
|
||||
DateUtils
|
||||
====================================
|
||||
.. automodule:: gramps.gen.datehandler._dateutils
|
||||
.. automodule:: gen.datehandler._dateutils
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
DateHandler
|
||||
====================================
|
||||
.. automodule:: gramps.gen.datehandler._datehandler
|
||||
.. automodule:: gen.datehandler._datehandler
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -49,11 +42,11 @@ Localized Date Handlers
|
||||
*****************************
|
||||
DateHandler (Bulgarian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_bg.DateParserBG
|
||||
.. autoclass:: gen.datehandler._date_bg.DateParserBG
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_bg.DateDisplayBG
|
||||
.. autoclass:: gen.datehandler._date_bg.DateDisplayBG
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -61,11 +54,11 @@ DateHandler (Bulgarian)
|
||||
*****************************
|
||||
DateHandler (Catalan)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_ca.DateParserCA
|
||||
.. autoclass:: gen.datehandler._date_ca.DateParserCA
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_ca.DateDisplayCA
|
||||
.. autoclass:: gen.datehandler._date_ca.DateDisplayCA
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -73,11 +66,11 @@ DateHandler (Catalan)
|
||||
*****************************
|
||||
DateHandler (Czech)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_cs.DateParserCZ
|
||||
.. autoclass:: gen.datehandler._date_cs.DateParserCZ
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_cs.DateDisplayCZ
|
||||
.. autoclass:: gen.datehandler._date_cs.DateDisplayCZ
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -85,11 +78,11 @@ DateHandler (Czech)
|
||||
*****************************
|
||||
DateHandler (German)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_de.DateParserDE
|
||||
.. autoclass:: gen.datehandler._date_de.DateParserDE
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_de.DateDisplayDE
|
||||
.. autoclass:: gen.datehandler._date_de.DateDisplayDE
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -97,11 +90,11 @@ DateHandler (German)
|
||||
*****************************
|
||||
DateHandler (Spanish)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_es.DateParserES
|
||||
.. autoclass:: gen.datehandler._date_es.DateParserES
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_es.DateDisplayES
|
||||
.. autoclass:: gen.datehandler._date_es.DateDisplayES
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -109,11 +102,11 @@ DateHandler (Spanish)
|
||||
*****************************
|
||||
DateHandler (Finnish)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_fi.DateParserFI
|
||||
.. autoclass:: gen.datehandler._date_fi.DateParserFI
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_fi.DateDisplayFI
|
||||
.. autoclass:: gen.datehandler._date_fi.DateDisplayFI
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -121,11 +114,11 @@ DateHandler (Finnish)
|
||||
*****************************
|
||||
DateHandler (French)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_fr.DateParserFR
|
||||
.. autoclass:: gen.datehandler._date_fr.DateParserFR
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_fr.DateDisplayFR
|
||||
.. autoclass:: gen.datehandler._date_fr.DateDisplayFR
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -133,11 +126,11 @@ DateHandler (French)
|
||||
*****************************
|
||||
DateHandler (Croatian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_hr.DateParserHR
|
||||
.. autoclass:: gen.datehandler._date_hr.DateParserHR
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_hr.DateDisplayHR
|
||||
.. autoclass:: gen.datehandler._date_hr.DateDisplayHR
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -145,11 +138,11 @@ DateHandler (Croatian)
|
||||
*****************************
|
||||
DateHandler (Italian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_it.DateParserIT
|
||||
.. autoclass:: gen.datehandler._date_it.DateParserIT
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_it.DateDisplayIT
|
||||
.. autoclass:: gen.datehandler._date_it.DateDisplayIT
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -157,11 +150,11 @@ DateHandler (Italian)
|
||||
*****************************
|
||||
DateHandler (Lituanian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_lt.DateParserLT
|
||||
.. autoclass:: gen.datehandler._date_lt.DateParserLT
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_lt.DateDisplayLT
|
||||
.. autoclass:: gen.datehandler._date_lt.DateDisplayLT
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -169,11 +162,11 @@ DateHandler (Lituanian)
|
||||
*****************************
|
||||
DateHandler (Norwegian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_nb.DateParserNb
|
||||
.. autoclass:: gen.datehandler._date_nb.DateParserNb
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_nb.DateDisplayNb
|
||||
.. autoclass:: gen.datehandler._date_nb.DateDisplayNb
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -181,11 +174,11 @@ DateHandler (Norwegian)
|
||||
*****************************
|
||||
DateHandler (Dutch)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_nl.DateParserNL
|
||||
.. autoclass:: gen.datehandler._date_nl.DateParserNL
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_nl.DateDisplayNL
|
||||
.. autoclass:: gen.datehandler._date_nl.DateDisplayNL
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -193,11 +186,11 @@ DateHandler (Dutch)
|
||||
*****************************
|
||||
DateHandler (Polish)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_pl.DateParserPL
|
||||
.. autoclass:: gen.datehandler._date_pl.DateParserPL
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_pl.DateDisplayPL
|
||||
.. autoclass:: gen.datehandler._date_pl.DateDisplayPL
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -205,11 +198,11 @@ DateHandler (Polish)
|
||||
*****************************
|
||||
DateHandler (Portuguese)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_pt.DateParserPT
|
||||
.. autoclass:: gen.datehandler._date_pt.DateParserPT
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_pt.DateDisplayPT
|
||||
.. autoclass:: gen.datehandler._date_pt.DateDisplayPT
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -217,11 +210,11 @@ DateHandler (Portuguese)
|
||||
*****************************
|
||||
DateHandler (Russian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_ru.DateParserRU
|
||||
.. autoclass:: gen.datehandler._date_ru.DateParserRU
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_ru.DateDisplayRU
|
||||
.. autoclass:: gen.datehandler._date_ru.DateDisplayRU
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -229,11 +222,11 @@ DateHandler (Russian)
|
||||
*****************************
|
||||
DateHandler (Slovak)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_sk.DateParserSK
|
||||
.. autoclass:: gen.datehandler._date_sk.DateParserSK
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_sk.DateDisplaySK
|
||||
.. autoclass:: gen.datehandler._date_sk.DateDisplaySK
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -241,11 +234,11 @@ DateHandler (Slovak)
|
||||
*****************************
|
||||
DateHandler (Slovenian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_sl.DateParserSL
|
||||
.. autoclass:: gen.datehandler._date_sl.DateParserSL
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_sl.DateDisplaySL
|
||||
.. autoclass:: gen.datehandler._date_sl.DateDisplaySL
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -253,11 +246,11 @@ DateHandler (Slovenian)
|
||||
*****************************
|
||||
DateHandler (Serbian)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_sr.DateParserSR
|
||||
.. autoclass:: gen.datehandler._date_sr.DateParserSR
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_sr.DateDisplaySR_latin
|
||||
.. autoclass:: gen.datehandler._date_sr.DateDisplaySR_latin
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -265,11 +258,11 @@ DateHandler (Serbian)
|
||||
*****************************
|
||||
DateHandler (Swedish)
|
||||
*****************************
|
||||
.. autoclass:: gramps.gen.datehandler._date_sv.DateParserSv
|
||||
.. autoclass:: gen.datehandler._date_sv.DateParserSv
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. autoclass:: gramps.gen.datehandler._date_sv.DateDisplaySv
|
||||
.. autoclass:: gen.datehandler._date_sv.DateDisplaySv
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -1,4 +1,4 @@
|
||||
Developer Guide
|
||||
===============
|
||||
|
||||
Please consult the API documentation, and the development section of `our wiki <https://gramps-project.org/wiki/index.php?title=Portal:Developers>`_\ .
|
||||
Please consult the API documentation, and the development part of `our wiki <http://gramps-project.org>`_\ .
|
||||
|
@@ -1,13 +1,13 @@
|
||||
############################
|
||||
The :mod:`gramps.gen` Module
|
||||
############################
|
||||
##########################
|
||||
The :mod:`gen` Module
|
||||
##########################
|
||||
|
||||
.. automodule:: gramps.gen
|
||||
.. automodule:: gen
|
||||
|
||||
*****************************
|
||||
Database State
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.dbstate
|
||||
.. automodule:: gen.dbstate
|
||||
.. autoclass:: DbState
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -16,7 +16,7 @@ Database State
|
||||
*****************************
|
||||
Errors
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.errors
|
||||
.. automodule:: gen.errors
|
||||
.. autoclass:: DatabaseError
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -35,7 +35,7 @@ TODO
|
||||
*****************************
|
||||
Recent Files
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.recentfiles
|
||||
.. automodule:: gen.recentfiles
|
||||
.. autoclass:: RecentFiles
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -52,7 +52,7 @@ Recent Files
|
||||
*****************************
|
||||
Sort
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.sort
|
||||
.. automodule:: gen.sort
|
||||
.. autoclass:: Sort
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -61,7 +61,7 @@ Sort
|
||||
*****************************
|
||||
Update callback
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.updatecallback
|
||||
.. automodule:: gen.updatecallback
|
||||
.. autoclass:: UpdateCallback
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -70,7 +70,7 @@ Update callback
|
||||
*****************************
|
||||
User
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.user
|
||||
.. automodule:: gen.user
|
||||
.. autoclass:: User
|
||||
:members:
|
||||
:undoc-members:
|
||||
|
@@ -1,78 +1,78 @@
|
||||
###############################
|
||||
The :mod:`gramps.gen.db` Module
|
||||
###############################
|
||||
##########################
|
||||
The :mod:`gen.db` Module
|
||||
##########################
|
||||
|
||||
.. automodule:: gramps.gen.db
|
||||
.. automodule:: gen.db
|
||||
|
||||
GrampsDbBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.base
|
||||
.. automodule:: gen.db.base
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
GrampsDbRead
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.read
|
||||
.. automodule:: gen.db.read
|
||||
:members:
|
||||
:show-inheritance:
|
||||
|
||||
GrampsDbWrite
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.write
|
||||
.. automodule:: gen.db.write
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
GrampsCursor
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.cursor
|
||||
.. automodule:: gen.db.cursor
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
BSDDBtxn
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.bsddbtxn
|
||||
.. automodule:: gen.db.bsddbtxn
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
GrampsDbTxn
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.txn
|
||||
.. automodule:: gen.db.txn
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
GrampsDbUndo
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.undoredo
|
||||
.. automodule:: gen.db.undoredo
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
DbConst
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.dbconst
|
||||
.. automodule:: gen.db.dbconst
|
||||
:members:
|
||||
|
||||
GrampsDbException
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.exceptions
|
||||
.. automodule:: gen.db.exceptions
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Upgrade utilities
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.upgrade
|
||||
.. automodule:: gen.db.upgrade
|
||||
:members:
|
||||
:undoc-members:
|
||||
|
||||
Backup
|
||||
====================================
|
||||
.. automodule:: gramps.gen.db.backup
|
||||
.. automodule:: gen.db.backup
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -1,12 +1,12 @@
|
||||
####################################
|
||||
The :mod:`gramps.gen.display` Module
|
||||
####################################
|
||||
#############################
|
||||
The :mod:`gen.display` Module
|
||||
#############################
|
||||
|
||||
.. automodule:: gramps.gen.display
|
||||
.. automodule:: gen.display
|
||||
|
||||
Name
|
||||
====================================
|
||||
.. automodule:: gramps.gen.display.name
|
||||
.. automodule:: gen.display.name
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -1,8 +1,8 @@
|
||||
################################
|
||||
The :mod:`gramps.gen.lib` Module
|
||||
################################
|
||||
##########################
|
||||
The :mod:`gen.lib` Module
|
||||
##########################
|
||||
|
||||
.. automodule:: gramps.gen.lib
|
||||
.. automodule:: gen.lib
|
||||
|
||||
*****************************
|
||||
Base objects
|
||||
@@ -10,60 +10,39 @@ Base objects
|
||||
|
||||
BaseObject
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.baseobj
|
||||
.. autoclass:: gramps.gen.lib.baseobj.BaseObject
|
||||
.. automodule:: gen.lib.baseobj
|
||||
.. autoclass:: gen.lib.baseobj.BaseObject
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
AddressBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.addressbase
|
||||
.. automodule:: gen.lib.addressbase
|
||||
.. autoclass:: AddressBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
AttributeRootBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.attrbase
|
||||
.. autoclass:: AttributeRootBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
AttributeBase
|
||||
====================================
|
||||
.. automodule:: gen.lib.attrbase
|
||||
.. autoclass:: AttributeBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
SrcAttributeBase
|
||||
====================================
|
||||
.. autoclass:: SrcAttributeBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
CitationBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.citationbase
|
||||
.. automodule:: gen.lib.citationbase
|
||||
.. autoclass:: CitationBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
IndirectCitationBase
|
||||
====================================
|
||||
.. autoclass:: IndirectCitationBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
DateBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.datebase
|
||||
.. automodule:: gen.lib.datebase
|
||||
.. autoclass:: DateBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -71,7 +50,7 @@ DateBase
|
||||
|
||||
LdsOrdBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.ldsordbase
|
||||
.. automodule:: gen.lib.ldsordbase
|
||||
.. autoclass:: LdsOrdBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -79,7 +58,7 @@ LdsOrdBase
|
||||
|
||||
LocationBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.locationbase
|
||||
.. automodule:: gen.lib.locationbase
|
||||
.. autoclass:: LocationBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -87,7 +66,7 @@ LocationBase
|
||||
|
||||
MediaBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.mediabase
|
||||
.. automodule:: gen.lib.mediabase
|
||||
.. autoclass:: MediaBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -95,7 +74,7 @@ MediaBase
|
||||
|
||||
NoteBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.notebase
|
||||
.. automodule:: gen.lib.notebase
|
||||
.. autoclass:: NoteBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -103,7 +82,7 @@ NoteBase
|
||||
|
||||
PlaceBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.placebase
|
||||
.. automodule:: gen.lib.placebase
|
||||
.. autoclass:: PlaceBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -111,7 +90,7 @@ PlaceBase
|
||||
|
||||
PrivacyBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.privacybase
|
||||
.. automodule:: gen.lib.privacybase
|
||||
.. autoclass:: PrivacyBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -119,7 +98,7 @@ PrivacyBase
|
||||
|
||||
RefBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.refbase
|
||||
.. automodule:: gen.lib.refbase
|
||||
.. autoclass:: RefBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -127,7 +106,7 @@ RefBase
|
||||
|
||||
SurnameBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.surnamebase
|
||||
.. automodule:: gen.lib.surnamebase
|
||||
.. autoclass:: SurnameBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -135,7 +114,7 @@ SurnameBase
|
||||
|
||||
TagBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.tagbase
|
||||
.. automodule:: gen.lib.tagbase
|
||||
.. autoclass:: TagBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -143,7 +122,7 @@ TagBase
|
||||
|
||||
UrlBase
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.urlbase
|
||||
.. automodule:: gen.lib.urlbase
|
||||
.. autoclass:: UrlBase
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -155,7 +134,7 @@ Primary objects
|
||||
|
||||
BasicPrimaryObject
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.primaryobj
|
||||
.. automodule:: gen.lib.primaryobj
|
||||
.. autoclass:: BasicPrimaryObject
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -170,7 +149,7 @@ PrimaryObject
|
||||
|
||||
Person
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.person
|
||||
.. automodule:: gen.lib.person
|
||||
.. autoclass:: Person
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -178,7 +157,7 @@ Person
|
||||
|
||||
Family
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.family
|
||||
.. automodule:: gen.lib.family
|
||||
.. autoclass:: Family
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -186,7 +165,7 @@ Family
|
||||
|
||||
Event
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.event
|
||||
.. automodule:: gen.lib.event
|
||||
.. autoclass:: Event
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -194,7 +173,7 @@ Event
|
||||
|
||||
Place
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.place
|
||||
.. automodule:: gen.lib.place
|
||||
.. autoclass:: Place
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -202,7 +181,7 @@ Place
|
||||
|
||||
Source
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.src
|
||||
.. automodule:: gen.lib.src
|
||||
.. autoclass:: Source
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -210,7 +189,7 @@ Source
|
||||
|
||||
Citation
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.citation
|
||||
.. automodule:: gen.lib.citation
|
||||
.. autoclass:: Citation
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -218,7 +197,7 @@ Citation
|
||||
|
||||
Media Object
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.mediaobj
|
||||
.. automodule:: gen.lib.mediaobj
|
||||
.. autoclass:: MediaObject
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -226,7 +205,7 @@ Media Object
|
||||
|
||||
Repository
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.repo
|
||||
.. automodule:: gen.lib.repo
|
||||
.. autoclass:: Repository
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -234,7 +213,7 @@ Repository
|
||||
|
||||
Note
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.note
|
||||
.. automodule:: gen.lib.note
|
||||
.. autoclass:: Note
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -246,7 +225,7 @@ Secondary objects
|
||||
|
||||
Secondary Object
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.secondaryobj
|
||||
.. automodule:: gen.lib.secondaryobj
|
||||
.. autoclass:: SecondaryObject
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -254,7 +233,7 @@ Secondary Object
|
||||
|
||||
Address
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.address
|
||||
.. automodule:: gen.lib.address
|
||||
.. autoclass:: Address
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -262,22 +241,15 @@ Address
|
||||
|
||||
Attribute
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.attribute
|
||||
.. automodule:: gen.lib.attribute
|
||||
.. autoclass:: Attribute
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
AttributeRoot
|
||||
====================================
|
||||
.. autoclass:: AttributeRoot
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
LdsOrd
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.ldsord
|
||||
.. automodule:: gen.lib.ldsord
|
||||
.. autoclass:: LdsOrd
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -285,7 +257,7 @@ LdsOrd
|
||||
|
||||
Location
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.location
|
||||
.. automodule:: gen.lib.location
|
||||
.. autoclass:: Location
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -293,7 +265,7 @@ Location
|
||||
|
||||
Name
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.name
|
||||
.. automodule:: gen.lib.name
|
||||
.. autoclass:: Name
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -301,7 +273,7 @@ Name
|
||||
|
||||
Surname
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.surname
|
||||
.. automodule:: gen.lib.surname
|
||||
.. autoclass:: Surname
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -309,7 +281,7 @@ Surname
|
||||
|
||||
Url
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.url
|
||||
.. automodule:: gen.lib.url
|
||||
.. autoclass:: Url
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -321,7 +293,7 @@ Reference objects
|
||||
|
||||
ChildRef
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.childref
|
||||
.. automodule:: gen.lib.childref
|
||||
.. autoclass:: ChildRef
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -329,7 +301,7 @@ ChildRef
|
||||
|
||||
EventRef
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.eventref
|
||||
.. automodule:: gen.lib.eventref
|
||||
.. autoclass:: EventRef
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -337,7 +309,7 @@ EventRef
|
||||
|
||||
MediaRef
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.mediaref
|
||||
.. automodule:: gen.lib.mediaref
|
||||
.. autoclass:: MediaRef
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -345,43 +317,27 @@ MediaRef
|
||||
|
||||
PersonRef
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.personref
|
||||
.. automodule:: gen.lib.personref
|
||||
.. autoclass:: PersonRef
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
PlaceRef
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.placeref
|
||||
.. autoclass:: PlaceRef
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
RepoRef
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.reporef
|
||||
.. automodule:: gen.lib.reporef
|
||||
.. autoclass:: RepoRef
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
*****************************
|
||||
Table objects
|
||||
Table object
|
||||
*****************************
|
||||
|
||||
Table object
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.tableobj
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Tag
|
||||
====================================
|
||||
.. automodule:: gramps.gen.lib.tag
|
||||
.. autoclass:: Tag
|
||||
.. automodule:: gen.lib.tableobj
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -389,7 +345,7 @@ Tag
|
||||
*****************************
|
||||
Date objects
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.lib.date
|
||||
.. automodule:: gen.lib.date
|
||||
|
||||
Date
|
||||
====================================
|
||||
@@ -415,7 +371,7 @@ Text objects
|
||||
|
||||
StyledTextTag
|
||||
===================
|
||||
.. automodule:: gramps.gen.lib.styledtexttag
|
||||
.. automodule:: gen.lib.styledtexttag
|
||||
.. autoclass:: StyledTextTag
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -423,7 +379,7 @@ StyledTextTag
|
||||
|
||||
StyledText
|
||||
===========
|
||||
.. automodule:: gramps.gen.lib.styledtext
|
||||
.. automodule:: gen.lib.styledtext
|
||||
.. autoclass:: StyledText
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -436,7 +392,7 @@ Meta data
|
||||
GenderStats
|
||||
============
|
||||
|
||||
.. automodule:: gramps.gen.lib.genderstats
|
||||
.. automodule:: gen.lib.genderstats
|
||||
.. autoclass:: GenderStats
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -444,7 +400,7 @@ GenderStats
|
||||
|
||||
Researcher
|
||||
===========
|
||||
.. automodule:: gramps.gen.lib.researcher
|
||||
.. automodule:: gen.lib.researcher
|
||||
.. autoclass:: Researcher
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -453,7 +409,7 @@ Researcher
|
||||
*****************************
|
||||
Type classes
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.lib.grampstype
|
||||
.. automodule:: gen.lib.grampstype
|
||||
.. autoclass:: GrampsTypeMeta
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -468,21 +424,21 @@ GrampsType
|
||||
|
||||
AttributeType
|
||||
=============
|
||||
.. automodule:: gramps.gen.lib.attrtype
|
||||
.. automodule:: gen.lib.attrtype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
ChildRefType
|
||||
=============
|
||||
.. automodule:: gramps.gen.lib.childreftype
|
||||
.. automodule:: gen.lib.childreftype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
EventType
|
||||
===========
|
||||
.. automodule:: gramps.gen.lib.eventtype
|
||||
.. automodule:: gen.lib.eventtype
|
||||
.. autoclass:: EventType
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -490,77 +446,70 @@ EventType
|
||||
|
||||
EventRoleType
|
||||
==============
|
||||
.. automodule:: gramps.gen.lib.eventroletype
|
||||
.. automodule:: gen.lib.eventroletype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
FamilyRelType
|
||||
=============
|
||||
.. automodule:: gramps.gen.lib.familyreltype
|
||||
.. automodule:: gen.lib.familyreltype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
MarkerType
|
||||
==========
|
||||
.. automodule:: gramps.gen.lib.markertype
|
||||
.. automodule:: gen.lib.markertype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
NameType
|
||||
===========
|
||||
.. automodule:: gramps.gen.lib.nametype
|
||||
.. automodule:: gen.lib.nametype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
NameOriginType
|
||||
==============
|
||||
.. automodule:: gramps.gen.lib.nameorigintype
|
||||
.. automodule:: gen.lib.nameorigintype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
NoteType
|
||||
=========
|
||||
.. automodule:: gramps.gen.lib.notetype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
PlaceType
|
||||
=========
|
||||
.. automodule:: gramps.gen.lib.placetype
|
||||
.. automodule:: gen.lib.notetype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
RepositoryType
|
||||
==============
|
||||
.. automodule:: gramps.gen.lib.repotype
|
||||
.. automodule:: gen.lib.repotype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
SourceMediaType
|
||||
================
|
||||
.. automodule:: gramps.gen.lib.srcmediatype
|
||||
.. automodule:: gen.lib.srcmediatype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
StyledTextTagType
|
||||
==================
|
||||
.. automodule:: gramps.gen.lib.styledtexttagtype
|
||||
.. automodule:: gen.lib.styledtexttagtype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
UrlType
|
||||
========
|
||||
.. automodule:: gramps.gen.lib.urltype
|
||||
.. automodule:: gen.lib.urltype
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -570,9 +519,9 @@ Privacy
|
||||
*****************************
|
||||
|
||||
PrivateSourceNote
|
||||
=================
|
||||
============
|
||||
|
||||
.. automodule:: gramps.gen.lib.privsrcnote
|
||||
.. automodule:: gen.lib.privsrcnote
|
||||
.. autoclass:: PrivateSourceNote
|
||||
:members:
|
||||
:undoc-members:
|
||||
|
@@ -1,119 +1,119 @@
|
||||
#################################
|
||||
The :mod:`gramps.gen.plug` Module
|
||||
#################################
|
||||
############################
|
||||
The :mod:`gen.plug` Module
|
||||
############################
|
||||
|
||||
.. automodule:: gramps.gen.plug
|
||||
.. automodule:: gen.plug
|
||||
|
||||
Plugin
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug._plugin
|
||||
.. automodule:: gen.plug._plugin
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
BaseManager
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug._manager
|
||||
.. automodule:: gen.plug._manager
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Export
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug._export
|
||||
.. automodule:: gen.plug._export
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Gramplet
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug._gramplet
|
||||
.. automodule:: gen.plug._gramplet
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Import
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug._import
|
||||
.. automodule:: gen.plug._import
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Menu
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug.menu._menu
|
||||
.. automodule:: gen.plug.menu._menu
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._boolean
|
||||
.. automodule:: gen.plug.menu._boolean
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._booleanlist
|
||||
.. automodule:: gen.plug.menu._booleanlist
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._color
|
||||
.. automodule:: gen.plug.menu._color
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._destination
|
||||
.. automodule:: gen.plug.menu._destination
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._enumeratedlist
|
||||
.. automodule:: gen.plug.menu._enumeratedlist
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._family
|
||||
.. automodule:: gen.plug.menu._family
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._filter
|
||||
.. automodule:: gen.plug.menu._filter
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._media
|
||||
.. automodule:: gen.plug.menu._media
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._note
|
||||
.. automodule:: gen.plug.menu._note
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._number
|
||||
.. automodule:: gen.plug.menu._number
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._option
|
||||
.. automodule:: gen.plug.menu._option
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._person
|
||||
.. automodule:: gen.plug.menu._person
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._personlist
|
||||
.. automodule:: gen.plug.menu._personlist
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._placelist
|
||||
.. automodule:: gen.plug.menu._placelist
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._string
|
||||
.. automodule:: gen.plug.menu._string
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._style
|
||||
.. automodule:: gen.plug.menu._style
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._surnamecolor
|
||||
.. automodule:: gen.plug.menu._surnamecolor
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.menu._text
|
||||
.. automodule:: gen.plug.menu._text
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -121,38 +121,38 @@ Menu
|
||||
*****************************
|
||||
Options
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.plug._options
|
||||
.. automodule:: gen.plug._options
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Reports
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug.report._options
|
||||
.. automodule:: gen.plug.report._options
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.report._bibliography
|
||||
.. automodule:: gen.plug.report._bibliography
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.report._constants
|
||||
.. automodule:: gen.plug.report._constants
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.report.endnotes
|
||||
.. automodule:: gen.plug.report.endnotes
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.report._paper
|
||||
.. automodule:: gen.plug.report._paper
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.report._reportbase
|
||||
.. automodule:: gen.plug.report._reportbase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.report.utils
|
||||
.. automodule:: gen.plug.report.utils
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -160,7 +160,7 @@ Reports
|
||||
*****************************
|
||||
Docgen
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.plug._docgenplugin
|
||||
.. automodule:: gen.plug._docgenplugin
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -168,47 +168,47 @@ Docgen
|
||||
*****************************
|
||||
Generators
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.plug.docgen.basedoc
|
||||
.. automodule:: gen.plug.docgen.basedoc
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.drawdoc
|
||||
.. automodule:: gen.plug.docgen.drawdoc
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.fontscale
|
||||
.. automodule:: gen.plug.docgen.fontscale
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.fontstyle
|
||||
.. automodule:: gen.plug.docgen.fontstyle
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.graphdoc
|
||||
.. automodule:: gen.plug.docgen.graphdoc
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.graphicstyle
|
||||
.. automodule:: gen.plug.docgen.graphicstyle
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.paperstyle
|
||||
.. automodule:: gen.plug.docgen.paperstyle
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.paragraphstyle
|
||||
.. automodule:: gen.plug.docgen.paragraphstyle
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.stylesheet
|
||||
.. automodule:: gen.plug.docgen.stylesheet
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.tablestyle
|
||||
.. automodule:: gen.plug.docgen.tablestyle
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docgen.textdoc
|
||||
.. automodule:: gen.plug.docgen.textdoc
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
@@ -216,25 +216,25 @@ Generators
|
||||
*****************************
|
||||
Doc Backend
|
||||
*****************************
|
||||
.. automodule:: gramps.gen.plug.docbackend.cairobackend
|
||||
.. automodule:: gen.plug.docbackend.cairobackend
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.plug.docbackend.docbackend
|
||||
.. automodule:: gen.plug.docbackend.docbackend
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Register
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug._pluginreg
|
||||
.. automodule:: gen.plug._pluginreg
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Utils
|
||||
====================================
|
||||
.. automodule:: gramps.gen.plug.utils
|
||||
.. automodule:: gen.plug.utils
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -1,40 +1,40 @@
|
||||
##################################
|
||||
The :mod:`gramps.gen.proxy` Module
|
||||
##################################
|
||||
############################
|
||||
The :mod:`gen.proxy` Module
|
||||
############################
|
||||
|
||||
.. automodule:: gramps.gen.proxy
|
||||
.. automodule:: gen.proxy
|
||||
|
||||
Proxy Base
|
||||
====================================
|
||||
.. automodule:: gramps.gen.proxy.proxybase
|
||||
.. automodule:: gen.proxy.proxybase
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Filter
|
||||
====================================
|
||||
.. automodule:: gramps.gen.proxy.filter
|
||||
.. automodule:: gen.proxy.filter
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Living
|
||||
====================================
|
||||
.. automodule:: gramps.gen.proxy.living
|
||||
.. automodule:: gen.proxy.living
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Private
|
||||
====================================
|
||||
.. automodule:: gramps.gen.proxy.private
|
||||
.. automodule:: gen.proxy.private
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
References
|
||||
====================================
|
||||
.. automodule:: gramps.gen.proxy.referencedbyselection
|
||||
.. automodule:: gen.proxy.referencedbyselection
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -1,101 +1,78 @@
|
||||
##################################
|
||||
The :mod:`gramps.gen.utils` Module
|
||||
##################################
|
||||
############################
|
||||
The :mod:`gen.utils` Module
|
||||
############################
|
||||
|
||||
.. automodule:: gramps.gen.utils
|
||||
.. automodule:: gen.utils
|
||||
|
||||
**********************************
|
||||
Utilities
|
||||
**********************************
|
||||
|
||||
Callback
|
||||
Utils
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.callback
|
||||
.. automodule:: gen.utils.alive
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.callman
|
||||
.. automodule:: gen.utils.callback
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.callman
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.cast
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.config
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.configmanager
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.db
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.file
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.id
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.image
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.keyword
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.lds
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.mactrans
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.place
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.string
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.trans
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gen.utils.unknown
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Configuration
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.configmanager
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.config
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Database
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.alive
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.db
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.unknown
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
File
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.file
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Image
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.image
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Locale
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.grampslocale
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.maclocale
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.keyword
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Place
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.place
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Other
|
||||
====================================
|
||||
.. automodule:: gramps.gen.utils.cast
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.id
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.lds
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
.. automodule:: gramps.gen.utils.string
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -4,8 +4,8 @@ The :class:`Html` Class
|
||||
|
||||
Contents:
|
||||
|
||||
.. automodule:: gramps.plugins.lib.libhtml
|
||||
.. automodule:: libhtml
|
||||
.. autoclass:: Html
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
:show-inheritance:
|
@@ -2,7 +2,7 @@
|
||||
The :class:`RelationshipCalculator` Class
|
||||
#########################################
|
||||
|
||||
.. automodule:: gramps.gen.relationship
|
||||
.. automodule:: gen.relationship
|
||||
.. autoclass:: RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
@@ -14,119 +14,119 @@ Localized Handlers
|
||||
|
||||
Relationship (Czech)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_cs.RelationshipCalculator
|
||||
.. autoclass:: rel_cs.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Danish)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_da.RelationshipCalculator
|
||||
.. autoclass:: rel_da.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (German)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_de.RelationshipCalculator
|
||||
.. autoclass:: rel_de.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Spanish)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_es.RelationshipCalculator
|
||||
.. autoclass:: rel_es.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Finnish)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_fi.RelationshipCalculator
|
||||
.. autoclass:: rel_fi.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (French)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_fr.RelationshipCalculator
|
||||
.. autoclass:: rel_fr.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Croatian)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_hr.RelationshipCalculator
|
||||
.. autoclass:: rel_hr.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Hungarian)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_hu.RelationshipCalculator
|
||||
.. autoclass:: rel_hu.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Italian)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_it.RelationshipCalculator
|
||||
.. autoclass:: rel_it.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Dutch)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_nl.RelationshipCalculator
|
||||
.. autoclass:: rel_nl.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Norwegian)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_no.RelationshipCalculator
|
||||
.. autoclass:: rel_no.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Polish)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_pl.RelationshipCalculator
|
||||
.. autoclass:: rel_pl.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Portuguese)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_pt.RelationshipCalculator
|
||||
.. autoclass:: rel_pt.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Russian)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_ru.RelationshipCalculator
|
||||
.. autoclass:: rel_ru.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Slovak)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_sk.RelationshipCalculator
|
||||
.. autoclass:: rel_sk.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Slovenian)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_sl.RelationshipCalculator
|
||||
.. autoclass:: rel_sl.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Relationship (Swedish)
|
||||
====================================
|
||||
.. autoclass:: gramps.plugins.rel.rel_sv.RelationshipCalculator
|
||||
.. autoclass:: rel_sv.RelationshipCalculator
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -2,25 +2,25 @@
|
||||
The :class:`Simple` Classes
|
||||
###########################
|
||||
|
||||
.. automodule:: gramps.gen.simple
|
||||
.. automodule:: gen.simple
|
||||
|
||||
Simple Access
|
||||
====================================
|
||||
.. automodule:: gramps.gen.simple._simpleaccess
|
||||
.. automodule:: gen.simple._simpleaccess
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Simple Doc
|
||||
====================================
|
||||
.. automodule:: gramps.gen.simple._simpledoc
|
||||
.. automodule:: gen.simple._simpledoc
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
Simple Table
|
||||
====================================
|
||||
.. automodule:: gramps.gen.simple._simpletable
|
||||
.. automodule:: gen.simple._simpletable
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
@@ -19,7 +19,7 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
"""
|
||||
update_doc.py for Gramps API(s) documentation.
|
||||
@@ -42,11 +42,11 @@ SPHINXBUILD = 'sphinx-build'
|
||||
if sys.platform == 'win32':
|
||||
pythonCmd = os.path.join(sys.prefix, 'bin', 'python.exe')
|
||||
sphinxCmd = os.path.join(sys.prefix, 'bin', 'sphinx-build.exe')
|
||||
elif sys.platform in ['linux2', 'darwin', 'cygwin']:
|
||||
elif sys.platform == 'linux2' or os.name == 'darwin':
|
||||
pythonCmd = os.path.join(sys.prefix, 'bin', 'python')
|
||||
sphinxCmd = SPHINXBUILD
|
||||
else:
|
||||
print ("Update Docs ERROR: unknown system, don't know sphinx, ... commands")
|
||||
print ("ERROR: unknown system, don't know sphinx, ... commands")
|
||||
sys.exit(0)
|
||||
|
||||
def tests():
|
||||
|
@@ -1,4 +1,4 @@
|
||||
User Guide
|
||||
==========
|
||||
|
||||
Please consult the manual which you find on `our wiki <https://gramps-project.org/wiki/index.php?title=User_manual>`_\ .
|
||||
Please consult the manual which you find on `our wiki <http://www.gramps-project.org/wiki/index.php?title=User_manual>`_\ .
|
@@ -1,7 +0,0 @@
|
||||
person,surname,given
|
||||
a,"CSV Surname","Given 1"
|
||||
b,"CSV Surname","Given 2"
|
||||
|
||||
marriage,mother,father
|
||||
1,a,b
|
||||
|
|
@@ -25,7 +25,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Anna Hansdotter
|
||||
2 DATE 2 OCT 1864
|
||||
2 PLAC Löderup, Malmöhus Län, Sweden
|
||||
2 PLAC Loderup, Malmous Lan, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Anna Hansdotter
|
||||
2 DATE 29 SEP 1945
|
||||
@@ -55,7 +55,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hans Peter Smith
|
||||
2 DATE 17 APR 1904
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Hans Peter Smith
|
||||
2 DATE 29 JAN 1977
|
||||
@@ -74,7 +74,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hanna Smith
|
||||
2 DATE 29 JAN 1821
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 FAMC @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
@@ -87,7 +87,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Herman Julius Nielsen
|
||||
2 DATE 31 AUG 1889
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Herman Julius Nielsen
|
||||
2 DATE 1945
|
||||
@@ -128,7 +128,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Gus Smith
|
||||
2 DATE 11 SEP 1897
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Gus Smith
|
||||
2 DATE 21 OCT 1963
|
||||
@@ -146,7 +146,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Jennifer Anderson
|
||||
2 DATE 5 NOV 1907
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Jennifer Anderson
|
||||
2 DATE 29 MAY 1985
|
||||
@@ -163,7 +163,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Lillie Harriet Jones
|
||||
2 DATE 2 MAY 1910
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Lillie Harriet Jones
|
||||
2 DATE 26 JUN 1990
|
||||
@@ -227,7 +227,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Carl Emil Smith
|
||||
2 DATE 20 DEC 1899
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Carl Emil Smith
|
||||
2 DATE 28 JAN 1959
|
||||
@@ -245,11 +245,11 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hjalmar Smith
|
||||
2 DATE 31 JAN 1893
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Hjalmar Smith
|
||||
2 DATE 25 SEP 1894
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 FAMC @F3@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
@@ -262,7 +262,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Martin Smith
|
||||
2 DATE 19 NOV 1830
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Martin Smith
|
||||
2 DATE BET 1899 AND 1905
|
||||
@@ -270,7 +270,7 @@
|
||||
1 BAPM
|
||||
2 TYPE Baptism of Martin Smith
|
||||
2 DATE 23 NOV 1830
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 FAMC @F0@
|
||||
1 FAMS @F2@
|
||||
1 NOTE @N0002@
|
||||
@@ -285,7 +285,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Astrid Shermanna Augusta Smith
|
||||
2 DATE 31 JAN 1889
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Astrid Shermanna Augusta Smith
|
||||
2 DATE 21 DEC 1963
|
||||
@@ -304,7 +304,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Gustaf Smith, Sr.
|
||||
2 DATE 28 NOV 1862
|
||||
2 PLAC Grostorp, Kristianstad Län, Sweden
|
||||
2 PLAC Grostorp, Kristianstad Lan, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Gustaf Smith, Sr.
|
||||
2 DATE BEF 23 JUL 1930
|
||||
@@ -316,7 +316,7 @@
|
||||
1 CHR
|
||||
2 TYPE Christening of Gustaf Smith, Sr.
|
||||
2 DATE 7 DEC 1862
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 FAMC @F2@
|
||||
1 FAMS @F3@
|
||||
1 CHAN
|
||||
@@ -343,7 +343,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Kirsti Marie Smith
|
||||
2 DATE 15 DEC 1886
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Kirsti Marie Smith
|
||||
2 DATE 18 JUL 1966
|
||||
@@ -378,7 +378,7 @@
|
||||
1 DEAT
|
||||
2 TYPE Death of Anna Streiffert
|
||||
2 DATE 2 FEB 1927
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 FAMS @F11@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
@@ -407,11 +407,11 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Magnes Smith
|
||||
2 DATE 6 OCT 1858
|
||||
2 PLAC Simrishamn, Kristianstad Län, Sweden
|
||||
2 PLAC Simrishamn, Kristianstad Lan, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Magnes Smith
|
||||
2 DATE 20 FEB 1910
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 FAMC @F2@
|
||||
1 FAMS @F11@
|
||||
1 CHAN
|
||||
@@ -515,14 +515,14 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Elna Jefferson
|
||||
2 DATE 14 SEP 1800
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Elna Jefferson
|
||||
2 PLAC Sweden
|
||||
1 CHR
|
||||
2 TYPE Christening of Elna Jefferson
|
||||
2 DATE 16 SEP 1800
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 FAMS @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
@@ -560,7 +560,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Kerstina Hansdotter
|
||||
2 DATE 29 NOV 1832
|
||||
2 PLAC Smestorp, Kristianstad Län, Sweden
|
||||
2 PLAC Smestorp, Kristianstad Lan, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Kerstina Hansdotter
|
||||
2 DATE BEF 1908
|
||||
@@ -577,7 +577,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Martin Smith
|
||||
2 DATE BET 1794 AND 1796
|
||||
2 PLAC Tommarp, Kristianstad Län, Sweden
|
||||
2 PLAC Tommarp, Kristianstad Lan, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Martin Smith
|
||||
2 PLAC Sweden
|
||||
@@ -594,7 +594,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Ingeman Smith
|
||||
2 DATE 29 JAN 1826
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 FAMC @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
@@ -661,7 +661,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Ingar Smith
|
||||
2 DATE AFT 1823
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 FAMC @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
@@ -674,7 +674,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hjalmar Smith
|
||||
2 DATE 7 APR 1895
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Hjalmar Smith
|
||||
2 DATE 26 JUN 1975
|
||||
@@ -682,7 +682,7 @@
|
||||
1 BAPM
|
||||
2 TYPE Baptism of Hjalmar Smith
|
||||
2 DATE 3 JUN 1895
|
||||
2 PLAC Rønne Bornholm, Denmark
|
||||
2 PLAC Ronne Bornholm, Denmark
|
||||
1 EVEN
|
||||
2 TYPE Immi
|
||||
2 DATE 14 NOV 1912
|
||||
@@ -701,7 +701,7 @@
|
||||
1 BIRT
|
||||
2 TYPE Birth of Emil Smith
|
||||
2 DATE 27 SEP 1860
|
||||
2 PLAC Simrishamn, Kristianstad Län, Sweden
|
||||
2 PLAC Simrishamn, Kristianstad Lan, Sweden
|
||||
1 FAMC @F2@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
@@ -712,7 +712,7 @@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Martin Smith and Elna Jefferson
|
||||
2 DATE ABT 1816
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
2 PLAC Gladsax, Kristianstad Lan, Sweden
|
||||
1 CHIL @I11@
|
||||
1 CHIL @I7@
|
||||
1 CHIL @I4@
|
||||
@@ -748,7 +748,7 @@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Magnes Smith and Anna Streiffert
|
||||
2 DATE 24 AUG 1884
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
@@ -805,7 +805,7 @@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Gustaf Smith, Sr. and Anna Hansdotter
|
||||
2 DATE 27 NOV 1885
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 CHIL @I26@
|
||||
1 CHIL @I23@
|
||||
1 CHIL @I21@
|
||||
@@ -831,7 +831,7 @@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Herman Julius Nielsen and Astrid Shermanna Augusta Smith
|
||||
2 DATE 30 NOV 1912
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
2 PLAC Ronne, Bornholm, Denmark
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
|
Binary file not shown.
@@ -1,782 +0,0 @@
|
||||
<?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>
|
File diff suppressed because it is too large
Load Diff
@@ -15,14 +15,16 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# gen/__init__.py
|
||||
# $Id$
|
||||
#
|
||||
|
||||
"""
|
||||
The core gramps modules that provide the different packages
|
||||
The core gramps module provides the different packages
|
||||
|
||||
Plugins are loaded dynamically, so that plugin directory is not included
|
||||
Plugins are loaded dynamically, so they the plugin directory is not included
|
||||
"""
|
||||
|
||||
__all__ = ["gen", "cli", "gui"]
|
||||
|
@@ -14,9 +14,11 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
"""
|
||||
Package init for the cli package.
|
||||
"""
|
||||
|
@@ -8,7 +8,7 @@
|
||||
# Copyright (C) 2008 Brian G. Matherly
|
||||
# Copyright (C) 2010 Jakim Friant
|
||||
# Copyright (C) 2012 Doug Blank
|
||||
# Copyright (C) 2012-2013 Paul Franklin
|
||||
# Copyright (C) 2012 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
|
||||
@@ -22,11 +22,13 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
"""
|
||||
Module responsible for handling the command line arguments for Gramps.
|
||||
Module responsible for handling the command line arguments for GRAMPS.
|
||||
"""
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
@@ -34,8 +36,10 @@ Module responsible for handling the command line arguments for Gramps.
|
||||
# Standard python modules
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from __future__ import print_function
|
||||
import os
|
||||
import sys
|
||||
from gramps.gen.ggettext import gettext as _
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -43,16 +47,15 @@ import sys
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from gramps.gen.recentfiles import recent_files
|
||||
from gramps.gen.utils.file import rm_tempdir, get_empty_tempdir
|
||||
from gramps.gen.utils.file import (rm_tempdir, get_empty_tempdir,
|
||||
get_unicode_path_from_env_var)
|
||||
from gramps.gen.db import DbBsddb
|
||||
from .clidbman import CLIDbManager, NAME_FILE, find_locker_name
|
||||
|
||||
from gramps.gen.plug import BasePluginManager
|
||||
from gramps.gen.plug.report import CATEGORY_BOOK, CATEGORY_CODE, BookList
|
||||
from .plug import cl_report, cl_book
|
||||
from gramps.gen.const import GRAMPS_LOCALE as glocale
|
||||
_ = glocale.translation.gettext
|
||||
from gramps.gen.constfunc import conv_to_unicode
|
||||
from .user import User
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -64,31 +67,24 @@ def _split_options(options_str):
|
||||
Split the options for the action.
|
||||
|
||||
Rules:
|
||||
|
||||
* Entries in the list of options are separated by commas without
|
||||
spaces between entries
|
||||
* List values must be inclosed in brackets ("[" and "]")
|
||||
* Entries within a list value are separated by commas
|
||||
* Text values (as a value or as entries in a list) do not have to be
|
||||
enclosed in quotes unless they include commas or quotation marks.
|
||||
* Text containing double quotes must be contained in single quotes
|
||||
* Text containing single quotes must be contained in double quotes
|
||||
* Text cannot include both single and double quotes
|
||||
* Entries in the list of options are separated by commas without
|
||||
spaces between entries
|
||||
* List values must be inclosed in brackets ("[" and "]")
|
||||
* Entries within a list value are separated by commas
|
||||
* Text values (as a value or as entries in a list) do not have to be
|
||||
enclosed in quotes unless they include commas or quotation marks.
|
||||
* Text containing double quotes must be contained in single quotes
|
||||
* Text containing single quotes must be contained in double quotes
|
||||
* Text cannot include both single and double quotes
|
||||
|
||||
Examples:
|
||||
|
||||
Multiple options specified::
|
||||
|
||||
report -p 'name=ancestor_chart,father_disp=["$n born $b"]'
|
||||
|
||||
Using text with commas and quotes::
|
||||
|
||||
title="This is some text with ,s and 's"
|
||||
title='This is some text with ,s and "s'
|
||||
|
||||
Using a list of text::
|
||||
|
||||
textlist=[row1,row2,"row3 with ' and ,"]
|
||||
* Multiple options specified:
|
||||
report -p 'name=ancestor_chart,father_disp=["$n born $b"]'
|
||||
* Using text with commas and quotes:
|
||||
title="This is some text with ,s and 's"
|
||||
title='This is some text with ,s and "s'
|
||||
* Using a list of text
|
||||
textlist=[row1,row2,"row3 with ' and ,"]
|
||||
"""
|
||||
name = ""
|
||||
value = ""
|
||||
@@ -151,7 +147,7 @@ class ArgHandler(object):
|
||||
"""
|
||||
This class is responsible for the non GUI handling of commands.
|
||||
The handler is passed a parser object, sanitizes it, and can execute the
|
||||
actions requested working on a :class:`.DbState`.
|
||||
actions requested working on a DbState.
|
||||
"""
|
||||
|
||||
def __init__(self, dbstate, parser, sessionmanager,
|
||||
@@ -160,7 +156,6 @@ class ArgHandler(object):
|
||||
self.sm = sessionmanager
|
||||
self.errorfunc = errorfunc
|
||||
self.gui = gui
|
||||
self.user = sessionmanager.user
|
||||
if self.gui:
|
||||
self.actions = []
|
||||
self.list = False
|
||||
@@ -170,7 +165,6 @@ class ArgHandler(object):
|
||||
self.actions = parser.actions
|
||||
self.list = parser.list
|
||||
self.list_more = parser.list_more
|
||||
self.list_table = parser.list_table
|
||||
self.open_gui = parser.open_gui
|
||||
self.imp_db_path = None
|
||||
self.dbman = CLIDbManager(self.dbstate)
|
||||
@@ -189,9 +183,11 @@ class ArgHandler(object):
|
||||
if self.errorfunc:
|
||||
self.errorfunc(msg1)
|
||||
else:
|
||||
print(msg1, file=sys.stderr)
|
||||
# Need to convert to system file encoding before printing
|
||||
# For non latin characters in path/file/user names
|
||||
print(msg1.encode(sys.getfilesystemencoding()), file=sys.stderr)
|
||||
if msg2 is not None:
|
||||
print(msg2, file=sys.stderr)
|
||||
print(msg2.encode(sys.getfilesystemencoding()), file=sys.stderr)
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
# Argument parser: sorts out given arguments
|
||||
@@ -213,7 +209,7 @@ class ArgHandler(object):
|
||||
"""
|
||||
if value is None:
|
||||
return None
|
||||
value = conv_to_unicode(value, sys.stdin.encoding)
|
||||
value = get_unicode_path_from_env_var(value)
|
||||
db_path = self.__deduce_db_path(value)
|
||||
|
||||
if db_path:
|
||||
@@ -222,7 +218,7 @@ class ArgHandler(object):
|
||||
if not self.check_db(db_path, self.force_unlock):
|
||||
sys.exit(0)
|
||||
if create:
|
||||
self.__error( _("Error: Family Tree '%s' already exists.\n"
|
||||
self.__error( _("Error: Family tree '%s' already exists.\n"
|
||||
"The '-C' option cannot be used.") % value)
|
||||
sys.exit(0)
|
||||
return db_path
|
||||
@@ -231,9 +227,9 @@ class ArgHandler(object):
|
||||
db_path, title = self.dbman.create_new_db_cli(title=value)
|
||||
return db_path
|
||||
else:
|
||||
self.__error( _('Error: Input Family Tree "%s" does not exist.\n'
|
||||
self.__error( _('Error: Input family tree "%s" does not exist.\n'
|
||||
"If GEDCOM, Gramps-xml or grdb, use the -i option "
|
||||
"to import into a Family Tree instead.") % value)
|
||||
"to import into a family tree instead.") % value)
|
||||
sys.exit(0)
|
||||
|
||||
def __handle_import_option(self, value, family_tree_format):
|
||||
@@ -243,7 +239,8 @@ class ArgHandler(object):
|
||||
"""
|
||||
# Need to convert path/filename to unicode before opening
|
||||
# For non latin characters in Windows path/file/user names
|
||||
fname = conv_to_unicode(value, sys.stdin.encoding)
|
||||
value = get_unicode_path_from_env_var(value)
|
||||
fname = value
|
||||
fullpath = os.path.abspath(os.path.expanduser(fname))
|
||||
if fname != '-' and not os.path.exists(fullpath):
|
||||
self.__error(_('Error: Import file %s not found.') % fname)
|
||||
@@ -272,30 +269,41 @@ class ArgHandler(object):
|
||||
|
||||
def __handle_export_option(self, value, family_tree_format):
|
||||
"""
|
||||
Handle the "-e" or "--export" option.
|
||||
|
||||
.. note:: this can only happen in the CLI version.
|
||||
Handle the "-e" or "--export" option.
|
||||
Note: this can only happen in the CLI version.
|
||||
"""
|
||||
if self.gui:
|
||||
return
|
||||
# Need to convert path/filename to unicode before opening
|
||||
# For non latin characters in Windows path/file/user names
|
||||
fname = conv_to_unicode(value, sys.stdin.encoding)
|
||||
value = get_unicode_path_from_env_var(value)
|
||||
fname = value
|
||||
if fname == '-':
|
||||
fullpath = '-'
|
||||
else:
|
||||
fullpath = os.path.abspath(os.path.expanduser(fname))
|
||||
if os.path.exists(fullpath):
|
||||
message = _("WARNING: Output file already exists!\n"
|
||||
"WARNING: It will be overwritten:\n %s"
|
||||
) % fullpath
|
||||
accepted = self.user.prompt(_('OK to overwrite?'), message,
|
||||
_('yes'), _('no'))
|
||||
if accepted:
|
||||
self.__error(_("Will overwrite the existing file: %s")
|
||||
% fullpath)
|
||||
else:
|
||||
sys.exit(0)
|
||||
self.__error(_("WARNING: Output file already exists!\n"
|
||||
"WARNING: It will be overwritten:\n %s") %
|
||||
fullpath)
|
||||
answer = None
|
||||
while not answer:
|
||||
try:
|
||||
if sys.version_info[0] < 3:
|
||||
ask = raw_input
|
||||
else:
|
||||
ask = input
|
||||
ans = ask(_('OK to overwrite? (yes/no) ') \
|
||||
.encode(sys.getfilesystemencoding()))
|
||||
except EOFError:
|
||||
print()
|
||||
sys.exit(0)
|
||||
if ans.upper() in ('Y', 'YES', _('YES').upper()):
|
||||
self.__error( _("Will overwrite the existing file: %s")
|
||||
% fullpath)
|
||||
answer = "ok"
|
||||
else:
|
||||
sys.exit(0)
|
||||
|
||||
if family_tree_format is None:
|
||||
# Guess the file format based on the file extension.
|
||||
@@ -320,8 +328,8 @@ class ArgHandler(object):
|
||||
"""
|
||||
Attempt to find a database path for the given parameter.
|
||||
|
||||
:returns: The path to a Gramps DB or None if a database can not be
|
||||
deduced.
|
||||
@return: The path to a Gramps DB
|
||||
or None if a database can not be deduced.
|
||||
"""
|
||||
# First, check if this is the name of a family tree
|
||||
db_path = self.dbman.get_family_tree_path(db_name_or_path)
|
||||
@@ -344,16 +352,15 @@ class ArgHandler(object):
|
||||
#-------------------------------------------------------------------------
|
||||
def handle_args_gui(self):
|
||||
"""
|
||||
Method to handle the arguments that can be given for a GUI session.
|
||||
|
||||
:returns: the filename of the family tree that should be opened if
|
||||
user just passed a famtree or a filename.
|
||||
|
||||
1. no options: a family tree can be given, if so, this name is tested
|
||||
and returned. If a filename, it is imported in a new db and name of
|
||||
new db returned
|
||||
2. an open and/or import option can have been given, if so, this is
|
||||
handled, and None is returned
|
||||
method to handle the arguments that can be given for a GUI session.
|
||||
Returns the filename of the family tree that should be opened if
|
||||
user just passed a famtree or a filename
|
||||
1/no options: a family tree can be given, if so, this name is
|
||||
tested and returned. If a filename, it is imported
|
||||
in a new db and name of new db returned
|
||||
2/an open and/or import option can have been given, if so, this
|
||||
is handled, and None is returned
|
||||
|
||||
"""
|
||||
if self.open_gui:
|
||||
# First check if a Gramps database was provided
|
||||
@@ -363,15 +370,19 @@ class ArgHandler(object):
|
||||
if not db_path:
|
||||
# Apparently it is not a database. See if it is a file that
|
||||
# can be imported.
|
||||
db_path, title = self.dbman.import_new_db(self.open_gui, self.user)
|
||||
db_path, title = self.dbman.import_new_db(self.open_gui, None)
|
||||
|
||||
if db_path:
|
||||
# Test if not locked or problematic
|
||||
if not self.check_db(db_path, self.force_unlock):
|
||||
sys.exit(0)
|
||||
# Add the file to the recent items
|
||||
title = self.dbstate.db.get_dbname()
|
||||
if not title:
|
||||
path = os.path.join(db_path, "name.txt")
|
||||
try:
|
||||
ifile = open(path)
|
||||
title = ifile.readline().strip()
|
||||
ifile.close()
|
||||
except:
|
||||
title = db_path
|
||||
recent_files(db_path, title)
|
||||
self.open = db_path
|
||||
@@ -391,72 +402,52 @@ class ArgHandler(object):
|
||||
Depending on the given arguments, import or open data, launch
|
||||
session, write files, and/or perform actions.
|
||||
|
||||
:param: climan: the manager of a CLI session
|
||||
:type: :class:`.CLIManager` object
|
||||
@param: climan: the manager of a CLI session
|
||||
@type: CLIManager object
|
||||
"""
|
||||
# Handle the "-l" List Family Trees option.
|
||||
if self.list:
|
||||
print(_('List of known Family Trees in your database path\n'))
|
||||
|
||||
if self.list:
|
||||
print(_('List of known family trees in your database path\n').\
|
||||
encode(sys.getfilesystemencoding()))
|
||||
for name, dirname in sorted(self.dbman.family_tree_list(),
|
||||
key=lambda pair: pair[0].lower()):
|
||||
|
||||
print(_("%(full_DB_path)s with name \"%(f_t_name)s\"")
|
||||
% {'full_DB_path' : dirname, 'f_t_name' : name})
|
||||
|
||||
print((_("%(full_DB_path)s with name \"%(f_t_name)s\"") % \
|
||||
{'full_DB_path' : dirname,
|
||||
'f_t_name' : name}).encode(sys.getfilesystemencoding()))
|
||||
sys.exit(0)
|
||||
|
||||
# Handle the "-L" List Family Trees in detail option.
|
||||
|
||||
if self.list_more:
|
||||
print(_('Gramps Family Trees:'))
|
||||
print(_('Gramps Family Trees:').encode(sys.getfilesystemencoding()))
|
||||
summary_list = self.dbman.family_tree_summary()
|
||||
for summary in sorted(summary_list,
|
||||
key=lambda sum: sum[_("Family Tree")].lower()):
|
||||
print(_("Family Tree \"%s\":") % summary[_("Family Tree")])
|
||||
key=lambda sum: sum["Family tree"].lower()):
|
||||
print(_("Family Tree \"%s\":").\
|
||||
encode(sys.getfilesystemencoding()) % summary["Family tree"])
|
||||
for item in sorted(summary):
|
||||
if item != "Family Tree":
|
||||
# translators: needed for French, ignore otherwise
|
||||
print(_(" %(item)s: %(summary)s") % {
|
||||
'item' : item,
|
||||
'summary' : summary[item] } )
|
||||
if item != "Family tree":
|
||||
print((" %s: %s" % (item, summary[item])).\
|
||||
encode(sys.getfilesystemencoding()))
|
||||
sys.exit(0)
|
||||
|
||||
# Handle the "-t" List Family Trees, tab delimited option.
|
||||
if self.list_table:
|
||||
print(_('Gramps Family Trees:'))
|
||||
summary_list = self.dbman.family_tree_summary()
|
||||
if not summary_list:
|
||||
sys.exit(0)
|
||||
# We have to construct the line elements together, to avoid
|
||||
# insertion of blank spaces when print on the same line is used
|
||||
line_list = [_("Family Tree")]
|
||||
for key in sorted(summary_list[0]):
|
||||
if key != _("Family Tree"):
|
||||
line_list += [key]
|
||||
print("\t".join(line_list))
|
||||
for summary in sorted(summary_list,
|
||||
key=lambda sum: sum[_("Family Tree")].lower()):
|
||||
line_list = [(_('"%s"') % summary[_("Family Tree")])]
|
||||
for item in sorted(summary):
|
||||
if item != _("Family Tree"):
|
||||
# translators: ignore unless your quotation marks differ
|
||||
line_list += [(_('"%s"') % summary[item])]
|
||||
print("\t".join(line_list))
|
||||
sys.exit(0)
|
||||
|
||||
self.__open_action()
|
||||
self.__import_action()
|
||||
|
||||
for (action, op_string) in self.actions:
|
||||
print(_("Performing action: %s.") % action, file=sys.stderr)
|
||||
if op_string:
|
||||
print(_("Using options string: %s")
|
||||
% op_string, file=sys.stderr)
|
||||
print(_("Using options string: %s") % op_string, file=sys.stderr)
|
||||
self.cl_action(action, op_string)
|
||||
|
||||
for expt in self.exports:
|
||||
print(_("Exporting: file %(filename)s, format %(format)s.")
|
||||
% {'filename' : expt[0],
|
||||
'format' : expt[1]}, file=sys.stderr)
|
||||
# Need to convert path/filename to str before printing
|
||||
# For non latin characters in Windows path/file/user names
|
||||
fn = expt[0].encode(sys.getfilesystemencoding())
|
||||
fmt = str(expt[1])
|
||||
print(_("Exporting: file %(filename)s, "
|
||||
"format %(format)s.") % \
|
||||
{'filename' : fn,
|
||||
'format' : fmt}, file=sys.stderr)
|
||||
self.cl_export(expt[0], expt[1])
|
||||
|
||||
if cleanup:
|
||||
@@ -473,10 +464,8 @@ class ArgHandler(object):
|
||||
|
||||
def __import_action(self):
|
||||
"""
|
||||
Take action for all given import files.
|
||||
|
||||
.. note:: Family trees are not supported.
|
||||
|
||||
Take action for all given import files. Note: Family trees are
|
||||
not supported.
|
||||
If a family tree is open, the import happens on top of it. If not
|
||||
open, a new family tree is created, and the import done. If this
|
||||
is CLI, the created tree is deleted at the end (as some action will
|
||||
@@ -490,13 +479,14 @@ class ArgHandler(object):
|
||||
if self.gui:
|
||||
self.imp_db_path, title = self.dbman.create_new_db_cli()
|
||||
else:
|
||||
self.imp_db_path = get_empty_tempdir("import_dbdir")
|
||||
self.imp_db_path = get_empty_tempdir("import_dbdir") \
|
||||
.encode(sys.getfilesystemencoding())
|
||||
newdb = DbBsddb()
|
||||
newdb.write_version(self.imp_db_path)
|
||||
|
||||
try:
|
||||
self.sm.open_activate(self.imp_db_path)
|
||||
msg = _("Created empty Family Tree successfully")
|
||||
msg = _("Created empty family tree successfully")
|
||||
print(msg, file=sys.stderr)
|
||||
except:
|
||||
print(_("Error opening the file."), file=sys.stderr)
|
||||
@@ -504,8 +494,10 @@ class ArgHandler(object):
|
||||
sys.exit(0)
|
||||
|
||||
for imp in self.imports:
|
||||
fn = imp[0].encode(sys.getfilesystemencoding())
|
||||
fmt = str(imp[1])
|
||||
msg = _("Importing: file %(filename)s, format %(format)s.") % \
|
||||
{'filename' : imp[0], 'format' : imp[1]}
|
||||
{'filename' : fn, 'format' : fmt}
|
||||
print(msg, file=sys.stderr)
|
||||
self.cl_import(imp[0], imp[1])
|
||||
|
||||
@@ -558,7 +550,13 @@ class ArgHandler(object):
|
||||
for plugin in pmgr.get_import_plugins():
|
||||
if family_tree_format == plugin.get_extension():
|
||||
import_function = plugin.get_import_function()
|
||||
import_function(self.dbstate.db, filename, self.user)
|
||||
import_function(self.dbstate.db, filename, User())
|
||||
|
||||
if not self.cl:
|
||||
if self.imp_db_path:
|
||||
return self.sm.open_activate(self.imp_db_path)
|
||||
else:
|
||||
return self.sm.open_activate(self.open)
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -574,7 +572,7 @@ class ArgHandler(object):
|
||||
for plugin in pmgr.get_export_plugins():
|
||||
if family_tree_format == plugin.get_extension():
|
||||
export_function = plugin.get_export_function()
|
||||
export_function(self.dbstate.db, filename, self.user)
|
||||
export_function(self.dbstate.db, filename, User(error=self.__error))
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -591,8 +589,7 @@ class ArgHandler(object):
|
||||
options_str_dict = _split_options(options_str)
|
||||
except:
|
||||
options_str_dict = {}
|
||||
print(_("Ignoring invalid options string."),
|
||||
file=sys.stderr)
|
||||
print(_("Ignoring invalid options string."), file=sys.stderr)
|
||||
|
||||
name = options_str_dict.pop('name', None)
|
||||
_cl_list = pmgr.get_reg_reports(gui=False)
|
||||
@@ -620,17 +617,16 @@ class ArgHandler(object):
|
||||
msg = _("Report name not given. "
|
||||
"Please use one of %(donottranslate)s=reportname") % \
|
||||
{'donottranslate' : '[-p|--options] name'}
|
||||
|
||||
|
||||
print(_("%s\n Available names are:") % msg, file=sys.stderr)
|
||||
for pdata in sorted(_cl_list, key= lambda pdata: pdata.id.lower()):
|
||||
# Print cli report name ([item[0]), GUI report name (item[4])
|
||||
if len(pdata.id) <= 25:
|
||||
print(" %s%s- %s"
|
||||
% ( pdata.id, " " * (26 - len(pdata.id)),
|
||||
pdata.name), file=sys.stderr)
|
||||
print(" %s%s- %s" % ( pdata.id, " " * (26 - len(pdata.id)),
|
||||
pdata.name.encode(sys.getfilesystemencoding())), file=sys.stderr)
|
||||
else:
|
||||
print(" %s\t- %s"
|
||||
% (pdata.id, pdata.name), file=sys.stderr)
|
||||
print(" %s\t- %s" % (pdata.id,
|
||||
pdata.name.encode(sys.getfilesystemencoding())), file=sys.stderr)
|
||||
|
||||
elif action == "tool":
|
||||
from gramps.gui.plug import tool
|
||||
@@ -639,8 +635,7 @@ class ArgHandler(object):
|
||||
chunk in options_str.split(',') ] )
|
||||
except:
|
||||
options_str_dict = {}
|
||||
print(_("Ignoring invalid options string."),
|
||||
file=sys.stderr)
|
||||
print(_("Ignoring invalid options string."), file=sys.stderr)
|
||||
|
||||
name = options_str_dict.pop('name', None)
|
||||
_cli_tool_list = pmgr.get_reg_tools(gui=False)
|
||||
@@ -654,40 +649,32 @@ class ArgHandler(object):
|
||||
category = pdata.category
|
||||
tool_class = eval('mod.' + pdata.toolclass)
|
||||
options_class = eval('mod.' + pdata.optionclass)
|
||||
tool.cli_tool(
|
||||
dbstate=self.dbstate,
|
||||
name=name,
|
||||
category=category,
|
||||
tool_class=tool_class,
|
||||
options_class=options_class,
|
||||
options_str_dict=options_str_dict,
|
||||
user=self.user)
|
||||
tool.cli_tool(self.dbstate, name, category, tool_class,
|
||||
options_class, options_str_dict)
|
||||
return
|
||||
msg = _("Unknown tool name.")
|
||||
else:
|
||||
msg = _("Tool name not given. "
|
||||
"Please use one of %(donottranslate)s=toolname.") % \
|
||||
{'donottranslate' : '[-p|--options] name'}
|
||||
|
||||
|
||||
print(_("%s\n Available names are:") % msg, file=sys.stderr)
|
||||
for pdata in sorted(_cli_tool_list,
|
||||
key=lambda pdata: pdata.id.lower()):
|
||||
# Print cli report name ([item[0]), GUI report name (item[4])
|
||||
if len(pdata.id) <= 25:
|
||||
print(" %s%s- %s"
|
||||
% ( pdata.id, " " * (26 - len(pdata.id)),
|
||||
pdata.name), file=sys.stderr)
|
||||
print(" %s%s- %s" % ( pdata.id, " " * (26 - len(pdata.id)),
|
||||
pdata.name.encode(sys.getfilesystemencoding())), file=sys.stderr)
|
||||
else:
|
||||
print(" %s\t- %s"
|
||||
% (pdata.id, pdata.name), file=sys.stderr)
|
||||
print(" %s\t- %s" % (pdata.id,
|
||||
pdata.name.encode(sys.getfilesystemencoding())), file=sys.stderr)
|
||||
|
||||
elif action == "book":
|
||||
try:
|
||||
options_str_dict = _split_options(options_str)
|
||||
except:
|
||||
options_str_dict = {}
|
||||
print(_("Ignoring invalid options string."),
|
||||
file=sys.stderr)
|
||||
print(_("Ignoring invalid options string."), file=sys.stderr)
|
||||
|
||||
name = options_str_dict.pop('name', None)
|
||||
book_list = BookList('books.xml', self.dbstate.db)
|
||||
|
@@ -8,7 +8,7 @@
|
||||
# Copyright (C) 2008 Raphael Ackermann
|
||||
# Copyright (C) 2008 Brian G. Matherly
|
||||
# Copyright (C) 2012 Doug Blank
|
||||
# Copyright (C) 2012-2013 Paul Franklin
|
||||
# Copyright (C) 2012 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
|
||||
@@ -22,11 +22,13 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
"""
|
||||
Module responsible for handling the command line arguments for Gramps.
|
||||
Module responsible for handling the command line arguments for GRAMPS.
|
||||
"""
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
@@ -34,8 +36,10 @@ Module responsible for handling the command line arguments for Gramps.
|
||||
# Standard python modules
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from __future__ import print_function
|
||||
import sys
|
||||
import getopt
|
||||
from gramps.gen.ggettext import gettext as _
|
||||
import logging
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
@@ -45,11 +49,10 @@ import logging
|
||||
#-------------------------------------------------------------------------
|
||||
from gramps.gen.const import LONGOPTS, SHORTOPTS
|
||||
from gramps.gen.config import config
|
||||
from gramps.gen.utils.cast import get_type_converter
|
||||
from gramps.gen.const import GRAMPS_LOCALE as glocale
|
||||
_ = glocale.translation.gettext
|
||||
from gramps.gen.constfunc import conv_to_unicode
|
||||
from gramps.gen.utils.configmanager import safe_eval
|
||||
from gramps.gen.utils.file import get_unicode_path_from_env_var
|
||||
|
||||
# Note: Make sure to edit const.py.in POPT_TABLE too!
|
||||
_HELP = _("""
|
||||
Usage: gramps.py [OPTION...]
|
||||
--load-modules=MODULE1,MODULE2,... Dynamic modules to load
|
||||
@@ -59,22 +62,19 @@ Help options
|
||||
--usage Display brief usage message
|
||||
|
||||
Application options
|
||||
-O, --open=FAMILY_TREE Open Family Tree
|
||||
-C, --create=FAMILY_TREE Create on open if new Family Tree
|
||||
-O, --open=FAMILY_TREE Open family tree
|
||||
-C, --create=FAMILY_TREE Create on open if new family tree
|
||||
-i, --import=FILENAME Import file
|
||||
-e, --export=FILENAME Export file
|
||||
-f, --format=FORMAT Specify Family Tree format
|
||||
-f, --format=FORMAT Specify family tree format
|
||||
-a, --action=ACTION Specify action
|
||||
-p, --options=OPTIONS_STRING Specify options
|
||||
-d, --debug=LOGGER_NAME Enable debug logs
|
||||
-l List Family Trees
|
||||
-L List Family Trees in Detail
|
||||
-t List Family Trees, tab delimited
|
||||
-u, --force-unlock Force unlock of Family Tree
|
||||
-u, --force-unlock Force unlock of family tree
|
||||
-s, --show Show config settings
|
||||
-c, --config=[config.setting[:value]] Set config setting(s) and start Gramps
|
||||
-y, --yes Don't ask to confirm dangerous actions (non-GUI mode only)
|
||||
-q, --quiet Suppress progress indication output (non-GUI mode only)
|
||||
-v, --version Show versions
|
||||
""")
|
||||
|
||||
@@ -110,7 +110,7 @@ Use the name=timeline,show=all to find out about all available options for the t
|
||||
To find out details of a particular option, use show=option_name , e.g. name=timeline,show=off string.
|
||||
To learn about available report names, use name=show string.
|
||||
|
||||
9. To convert a Family Tree on the fly to a .gramps xml file:
|
||||
9. To convert a family tree on the fly to a .gramps xml file:
|
||||
gramps -O 'Family Tree 1' -e output.gramps -f gramps-xml
|
||||
|
||||
10. To generate a web site into an other locale (in german):
|
||||
@@ -130,58 +130,35 @@ class ArgParser(object):
|
||||
"""
|
||||
This class is responsible for parsing the command line arguments (if any)
|
||||
given to gramps, and determining if a GUI or a CLI session must be started.
|
||||
A filename and/or options may be specified as arguments.
|
||||
The valid arguments are:
|
||||
|
||||
The valid options are:
|
||||
|
||||
-O, --open=FAMILY_TREE Open Family Tree
|
||||
-C, --create=FAMILY_TREE Create on open if new Family Tree
|
||||
-i, --import=FILENAME Import file
|
||||
-e, --export=FILENAME Export file
|
||||
-f, --format=FORMAT Specify Family Tree format
|
||||
-a, --action=ACTION Specify action
|
||||
-p, --options=OPTIONS_STRING Specify options
|
||||
-d, --debug=LOGGER_NAME Enable debug logs
|
||||
-l List Family Trees
|
||||
-L List Family Trees in Detail
|
||||
-t List Family Trees, tab delimited
|
||||
-u, --force-unlock Force unlock of Family Tree
|
||||
-s, --show Show config settings
|
||||
-c, --config=SETTINGS Set config setting(s) and start Gramps
|
||||
-y, --yes Don't ask to confirm dangerous actions
|
||||
-q, --quiet Suppress progress indication output
|
||||
-v, --version Show versions
|
||||
-h, --help Display the help
|
||||
--usage Display usage information
|
||||
|
||||
If the filename (no options) is specified, the interactive session is
|
||||
launched using data from filename. In this mode (filename, no options), the
|
||||
rest of the arguments are ignored. This is a mode suitable by default for
|
||||
GUI launchers, mime type handlers, and the like.
|
||||
Possible:
|
||||
1/ FAMTREE : Just the family tree (name or database dir)
|
||||
2/ -O, --open=FAMTREE, Open of a family tree
|
||||
3/ -i, --import=FILE, Import a family tree of any format understood
|
||||
by an importer, optionally provide -f to indicate format
|
||||
4/ -e, --export=FILE, export a family tree in required format,
|
||||
optionally provide -f to indicate format
|
||||
5/ -f, --format=FORMAT : format after a -i or -e option
|
||||
6/ -a, --action: An action (possible: 'report', 'tool')
|
||||
7/ -p, --options=OPTIONS_STRING : specify options
|
||||
8/ -u, --force-unlock: A locked database can be unlocked by giving
|
||||
this argument when opening it
|
||||
|
||||
If the filename (no flags) is specified, the interactive session is
|
||||
launched using data from filename.
|
||||
In this mode (filename, no flags), the rest of the arguments is ignored.
|
||||
This is a mode suitable by default for GUI launchers, mime type handlers,
|
||||
and the like
|
||||
|
||||
If no filename or -i option is given, a new interactive session (empty
|
||||
database) is launched, since no data is given anyway.
|
||||
|
||||
If -O or -i option is given, but no -e or -a options are given, an
|
||||
interactive session is launched with the ``FILENAME`` (specified with -i).
|
||||
interactive session is launched with the FILE (specified with -i).
|
||||
|
||||
If both input (-O or -i) and processing (-e or -a) options are given,
|
||||
interactive session will not be launched.
|
||||
|
||||
When using import ot export options (-i or -e), the -f option may be
|
||||
specified to indicate the family tree format.
|
||||
|
||||
Possible values for ``ACTION`` are: 'report', 'book' and 'tool'.
|
||||
|
||||
Configuration ``SETTINGS`` may be specified using the -c option. The
|
||||
settings are of the form config.setting[:value]. If used without a value,
|
||||
the setting is shown.
|
||||
|
||||
If the -y option is given, the user's acceptance of any CLI prompt is
|
||||
assumed. (see :meth:`.cli.user.User.prompt`)
|
||||
|
||||
If the -q option is given, extra noise on sys.stderr, such as progress
|
||||
indicators, is suppressed.
|
||||
interactive session will not be launched.
|
||||
"""
|
||||
|
||||
def __init__(self, args):
|
||||
@@ -198,14 +175,11 @@ class ArgParser(object):
|
||||
self.imp_db_path = None
|
||||
self.list = False
|
||||
self.list_more = False
|
||||
self.list_table = False
|
||||
self.help = False
|
||||
self.usage = False
|
||||
self.force_unlock = False
|
||||
self.create = None
|
||||
self.runqml = False
|
||||
self.quiet = False
|
||||
self.auto_accept = False
|
||||
|
||||
self.errors = []
|
||||
self.parse_args()
|
||||
@@ -218,6 +192,23 @@ class ArgParser(object):
|
||||
Fill in lists with open, exports, imports, and actions options.
|
||||
|
||||
Any errors are added to self.errors
|
||||
|
||||
Possible:
|
||||
1/ Just the family tree (name or database dir)
|
||||
2/ -O, --open: Open of a family tree
|
||||
3/ -i, --import: Import a family tree of any format understood by
|
||||
an importer, optionally provide -f to indicate format
|
||||
4/ -e, --export: export a family tree in required format, optionally
|
||||
provide -f to indicate format
|
||||
5/ -f, --format=FORMAT : format after a -i or -e option
|
||||
6/ -a, --action: An action (possible: 'report', 'tool')
|
||||
7/ -p, --options=OPTIONS_STRING : specify options
|
||||
8/ -u, --force-unlock: A locked database can be unlocked by giving
|
||||
this argument when opening it
|
||||
9/ -s --show : Show config settings
|
||||
10/ -c --config=config.setting:value : Set config.setting and start
|
||||
Gramps without :value, the actual config.setting is shown
|
||||
|
||||
"""
|
||||
try:
|
||||
# Convert arguments to unicode, otherwise getopt will not work
|
||||
@@ -226,8 +217,7 @@ class ArgParser(object):
|
||||
# -Ärik is '-\xc3\x84rik' and getopt will respond :
|
||||
# option -\xc3 not recognized
|
||||
for arg in range(len(self.args) - 1):
|
||||
self.args[arg+1] = conv_to_unicode(self.args[arg + 1],
|
||||
sys.stdin.encoding)
|
||||
self.args[arg+1] = get_unicode_path_from_env_var(self.args[arg + 1])
|
||||
options, leftargs = getopt.getopt(self.args[1:],
|
||||
SHORTOPTS, LONGOPTS)
|
||||
except getopt.GetoptError as msg:
|
||||
@@ -251,8 +241,7 @@ class ArgParser(object):
|
||||
# if there were an argument without option,
|
||||
# use it as a file to open and return
|
||||
self.open_gui = leftargs[0]
|
||||
print(_("Trying to open: %s ...") % leftargs[0],
|
||||
file=sys.stderr)
|
||||
print ("Trying to open: %s ..." % leftargs[0], file=sys.stderr)
|
||||
#see if force open is on
|
||||
for opt_ix in range(len(options)):
|
||||
option, value = options[opt_ix]
|
||||
@@ -266,55 +255,52 @@ class ArgParser(object):
|
||||
need_to_quit = False
|
||||
for opt_ix in range(len(options)):
|
||||
option, value = options[opt_ix]
|
||||
if option in ['-O', '--open']:
|
||||
if option in ( '-O', '--open'):
|
||||
self.open = value
|
||||
elif option in ['-C', '--create']:
|
||||
elif option in ( '-C', '--create'):
|
||||
self.create = value
|
||||
elif option in ['-i', '--import']:
|
||||
elif option in ( '-i', '--import'):
|
||||
family_tree_format = None
|
||||
if opt_ix < len(options) - 1 \
|
||||
and options[opt_ix + 1][0] in ( '-f', '--format'):
|
||||
family_tree_format = options[opt_ix + 1][1]
|
||||
self.imports.append((value, family_tree_format))
|
||||
elif option in ['-e', '--export']:
|
||||
elif option in ( '-e', '--export' ):
|
||||
family_tree_format = None
|
||||
if opt_ix < len(options) - 1 \
|
||||
and options[opt_ix + 1][0] in ( '-f', '--format'):
|
||||
family_tree_format = options[opt_ix + 1][1]
|
||||
self.exports.append((value, family_tree_format))
|
||||
elif option in ['-a', '--action']:
|
||||
elif option in ( '-a', '--action' ):
|
||||
action = value
|
||||
if action not in ('report', 'tool', 'book'):
|
||||
print(_("Unknown action: %s. Ignoring.") % action,
|
||||
file=sys.stderr)
|
||||
print ("Unknown action: %s. Ignoring." % action, file=sys.stderr)
|
||||
continue
|
||||
options_str = ""
|
||||
if opt_ix < len(options)-1 \
|
||||
and options[opt_ix+1][0] in ( '-p', '--options' ):
|
||||
options_str = options[opt_ix+1][1]
|
||||
self.actions.append((action, options_str))
|
||||
elif option in ['-d', '--debug']:
|
||||
print(_('setup debugging'), value, file=sys.stderr)
|
||||
elif option in ('-d', '--debug'):
|
||||
print ('setup debugging', value, file=sys.stderr)
|
||||
logger = logging.getLogger(value)
|
||||
logger.setLevel(logging.DEBUG)
|
||||
cleandbg += [opt_ix]
|
||||
elif option in ['-l']:
|
||||
elif option in ('-l'):
|
||||
self.list = True
|
||||
elif option in ['-L']:
|
||||
elif option in ('-L'):
|
||||
self.list_more = True
|
||||
elif option in ['-t']:
|
||||
self.list_table = True
|
||||
elif option in ['-s','--show']:
|
||||
print(_("Gramps config settings from %s:")
|
||||
% config.filename)
|
||||
elif option in ('-s','--show'):
|
||||
print ("Gramps config settings from %s:" % \
|
||||
config.filename.encode(sys.getfilesystemencoding()))
|
||||
for section in config.data:
|
||||
for setting in config.data[section]:
|
||||
print("%s.%s=%s"
|
||||
% (section, setting,
|
||||
repr(config.data[section][setting])))
|
||||
print()
|
||||
print ("%s.%s=%s" % (
|
||||
section, setting,
|
||||
repr(config.data[section][setting])))
|
||||
print ('')
|
||||
sys.exit(0)
|
||||
elif option in ['-c', '--config']:
|
||||
elif option in ('-c', '--config'):
|
||||
setting_name = value
|
||||
set_value = False
|
||||
if setting_name:
|
||||
@@ -323,45 +309,34 @@ class ArgParser(object):
|
||||
set_value = True
|
||||
if config.has_default(setting_name):
|
||||
setting_value = config.get(setting_name)
|
||||
print(_("Current Gramps config setting: "
|
||||
"%(name)s:%(value)s")
|
||||
% {'name' : setting_name,
|
||||
'value' : repr(setting_value)},
|
||||
file=sys.stderr)
|
||||
print ("Current Gramps config setting: " \
|
||||
"%s:%s" % (setting_name, repr(setting_value)), file=sys.stderr)
|
||||
if set_value:
|
||||
# does a user want the default config value?
|
||||
if new_value in ("DEFAULT", _("DEFAULT")):
|
||||
if new_value == "DEFAULT":
|
||||
new_value = config.get_default(setting_name)
|
||||
else:
|
||||
converter = get_type_converter(setting_value)
|
||||
new_value = converter(new_value)
|
||||
new_value = safe_eval(new_value)
|
||||
config.set(setting_name, new_value)
|
||||
# translators: indent "New" to match "Current"
|
||||
print(_(" New Gramps config setting: "
|
||||
"%(name)s:%(value)s") %
|
||||
{'name' : setting_name,
|
||||
'value' : repr(
|
||||
config.get(setting_name))},
|
||||
file=sys.stderr)
|
||||
print (" New Gramps config " \
|
||||
"setting: %s:%s" % (
|
||||
setting_name,
|
||||
repr(config.get(setting_name))
|
||||
), file=sys.stderr)
|
||||
else:
|
||||
need_to_quit = True
|
||||
else:
|
||||
print(_("Gramps: no such config setting: '%s'")
|
||||
% setting_name, file=sys.stderr)
|
||||
print ("Gramps: no such config setting:" \
|
||||
" '%s'" % setting_name, file=sys.stderr)
|
||||
need_to_quit = True
|
||||
cleandbg += [opt_ix]
|
||||
elif option in ['-h', '-?', '--help']:
|
||||
elif option in ('-h', '-?', '--help'):
|
||||
self.help = True
|
||||
elif option in ['-u', '--force-unlock']:
|
||||
elif option in ('-u', '--force-unlock'):
|
||||
self.force_unlock = True
|
||||
elif option in ['--usage']:
|
||||
elif option in ('--usage'):
|
||||
self.usage = True
|
||||
elif option in ['--qml']:
|
||||
elif option in ('--qml'):
|
||||
self.runqml = True
|
||||
elif option in ['-y', '--yes']:
|
||||
self.auto_accept = True
|
||||
elif option in ['-q', '--quiet']:
|
||||
self.quiet = True
|
||||
|
||||
#clean options list
|
||||
cleandbg.reverse()
|
||||
@@ -369,16 +344,14 @@ class ArgParser(object):
|
||||
del options[ind]
|
||||
|
||||
if len(options) > 0 and self.open is None and self.imports == [] \
|
||||
and not (self.list or self.list_more or self.list_table or
|
||||
self.help or self.runqml):
|
||||
and not (self.list or self.list_more or self.help or self.runqml):
|
||||
# Extract and convert to unicode the arguments in the list.
|
||||
# The % operator replaces the list elements with repr() of
|
||||
# the list elements, which is OK for latin characters
|
||||
# but not for non-latin characters in list elements
|
||||
cliargs = "[ "
|
||||
for arg in range(len(self.args) - 1):
|
||||
cliargs += conv_to_unicode(self.args[arg + 1],
|
||||
sys.stdin.encoding) + ' '
|
||||
cliargs += get_unicode_path_from_env_var(self.args[arg + 1]) + " "
|
||||
cliargs += "]"
|
||||
self.errors += [(_('Error parsing the arguments'),
|
||||
_("Error parsing the arguments: %s \n"
|
||||
@@ -398,7 +371,7 @@ class ArgParser(object):
|
||||
#errors in argument parsing ==> give cli error, no gui needed
|
||||
return False
|
||||
|
||||
if self.list or self.list_more or self.list_table or self.help:
|
||||
if self.list or self.list_more or self.help:
|
||||
return False
|
||||
|
||||
if self.open_gui:
|
||||
@@ -428,13 +401,15 @@ class ArgParser(object):
|
||||
If the user gives the --help or -h option, print the output to terminal.
|
||||
"""
|
||||
if self.help:
|
||||
print(_HELP)
|
||||
# Convert Help messages to file system encoding before printing
|
||||
print (_HELP.encode(sys.getfilesystemencoding()))
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def print_usage(self):
|
||||
"""
|
||||
If the user gives the --usage print the output to terminal.
|
||||
"""
|
||||
if self.usage:
|
||||
print(_USAGE)
|
||||
# Convert Help messages to file system encoding before printing
|
||||
print (_USAGE.encode(sys.getfilesystemencoding()))
|
||||
sys.exit(0)
|
||||
|
@@ -17,9 +17,11 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
"""
|
||||
Provide the management of databases from CLI. This includes opening, renaming,
|
||||
creating, and deleting of databases.
|
||||
@@ -30,13 +32,19 @@ creating, and deleting of databases.
|
||||
# Standard python modules
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from __future__ import print_function
|
||||
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
import io
|
||||
from urllib.parse import urlparse
|
||||
from urllib.request import urlopen, url2pathname
|
||||
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
|
||||
import tempfile
|
||||
from gramps.gen.ggettext import gettext as _
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
# set up logging
|
||||
@@ -44,16 +52,12 @@ import tempfile
|
||||
#-------------------------------------------------------------------------
|
||||
import logging
|
||||
LOG = logging.getLogger(".clidbman")
|
||||
from gramps.gen.db.dbconst import DBLOGNAME
|
||||
_LOG = logging.getLogger(DBLOGNAME)
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
# gramps modules
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from gramps.gen.const import GRAMPS_LOCALE as glocale
|
||||
_ = glocale.translation.gettext
|
||||
from gramps.gen.db import DbBsddb
|
||||
from gramps.gen.plug import BasePluginManager
|
||||
from gramps.gen.config import config
|
||||
@@ -127,100 +131,82 @@ class CLIDbManager(object):
|
||||
self._populate_cli()
|
||||
|
||||
def empty(self, val):
|
||||
"""
|
||||
Callback that does nothing
|
||||
"""Callback that does nothing
|
||||
"""
|
||||
pass
|
||||
|
||||
def get_dbdir_summary(self, dirpath, name):
|
||||
def get_dbdir_summary(self, file_name):
|
||||
"""
|
||||
Returns (people_count, bsddb_version, schema_version) of
|
||||
current DB.
|
||||
Returns ("Unknown", "Unknown", "Unknown") if invalid DB or other error.
|
||||
Returns (people_count, version_number) of current DB.
|
||||
Returns ("Unknown", "Unknown") if invalid DB or other error.
|
||||
"""
|
||||
from bsddb3 import dbshelve, db
|
||||
|
||||
from gramps.gen.db import META, PERSON_TBL
|
||||
from gramps.gen.db.dbconst import BDBVERSFN
|
||||
|
||||
bdbversion_file = os.path.join(dirpath, BDBVERSFN)
|
||||
if os.path.isfile(bdbversion_file):
|
||||
vers_file = open(bdbversion_file)
|
||||
bsddb_version = vers_file.readline().strip()
|
||||
if config.get('preferences.use-bsddb3') or sys.version_info[0] >= 3:
|
||||
from bsddb3 import dbshelve, db
|
||||
else:
|
||||
return "Unknown", "Unknown", "Unknown"
|
||||
|
||||
current_bsddb_version = str(db.version())
|
||||
if bsddb_version != current_bsddb_version:
|
||||
return "Unknown", bsddb_version, "Unknown"
|
||||
|
||||
from bsddb import dbshelve, db
|
||||
from gramps.gen.db import META, PERSON_TBL
|
||||
env = db.DBEnv()
|
||||
flags = db.DB_CREATE | db.DB_PRIVATE |\
|
||||
db.DB_INIT_MPOOL |\
|
||||
db.DB_INIT_LOG | db.DB_INIT_TXN
|
||||
db.DB_INIT_MPOOL | db.DB_INIT_LOCK |\
|
||||
db.DB_INIT_LOG | db.DB_INIT_TXN | db.DB_THREAD
|
||||
try:
|
||||
env.open(dirpath, flags)
|
||||
except Exception as msg:
|
||||
LOG.warning("Error opening db environment for '%s': %s" %
|
||||
(name, str(msg)))
|
||||
try:
|
||||
env.close()
|
||||
except Exception as msg:
|
||||
LOG.warning("Error closing db environment for '%s': %s" %
|
||||
(name, str(msg)))
|
||||
return "Unknown", bsddb_version, "Unknown"
|
||||
env.open(file_name, flags)
|
||||
except:
|
||||
return "Unknown", "Unknown"
|
||||
dbmap1 = dbshelve.DBShelf(env)
|
||||
fname = os.path.join(dirpath, META + ".db")
|
||||
fname = os.path.join(file_name, META + ".db")
|
||||
try:
|
||||
dbmap1.open(fname, META, db.DB_HASH, db.DB_RDONLY)
|
||||
except:
|
||||
env.close()
|
||||
return "Unknown", bsddb_version, "Unknown"
|
||||
schema_version = dbmap1.get(b'version', default=None)
|
||||
return "Unknown", "Unknown"
|
||||
version = dbmap1.get('version', default=None)
|
||||
dbmap1.close()
|
||||
dbmap2 = dbshelve.DBShelf(env)
|
||||
fname = os.path.join(dirpath, PERSON_TBL + ".db")
|
||||
fname = os.path.join(file_name, PERSON_TBL + ".db")
|
||||
try:
|
||||
dbmap2.open(fname, PERSON_TBL, db.DB_HASH, db.DB_RDONLY)
|
||||
except:
|
||||
env.close()
|
||||
return "Unknown", bsddb_version, schema_version
|
||||
return "Unknown", "Unknown"
|
||||
count = len(dbmap2)
|
||||
dbmap2.close()
|
||||
env.close()
|
||||
return (count, bsddb_version, schema_version)
|
||||
return (count, version)
|
||||
|
||||
def family_tree_summary(self):
|
||||
"""
|
||||
Return a list of dictionaries of the known family trees.
|
||||
"""
|
||||
# make the default directory if it does not exist
|
||||
summary_list = []
|
||||
list = []
|
||||
for item in self.current_names:
|
||||
(name, dirpath, path_name, last,
|
||||
tval, enable, stock_id) = item
|
||||
count, bsddb_version, schema_version = self.get_dbdir_summary(dirpath, name)
|
||||
count, version = self.get_dbdir_summary(dirpath)
|
||||
retval = {}
|
||||
retval[_("Number of people")] = count
|
||||
retval["Number of people"] = count
|
||||
if enable:
|
||||
retval[_("Locked?")] = _("yes")
|
||||
retval["Locked?"] = "yes"
|
||||
else:
|
||||
retval[_("Locked?")] = _("no")
|
||||
retval[_("Bsddb version")] = bsddb_version
|
||||
retval[_("Schema version")] = schema_version
|
||||
retval[_("Family Tree")] = name
|
||||
retval[_("Path")] = dirpath
|
||||
retval[_("Last accessed")] = time.strftime('%x %X',
|
||||
retval["Locked?"] = "no"
|
||||
retval["DB version"] = version
|
||||
if sys.version_info[0] < 3:
|
||||
retval["Family tree"] = name.encode(sys.getfilesystemencoding())
|
||||
else:
|
||||
retval["Family tree"] = name
|
||||
retval["Path"] = dirpath
|
||||
retval["Last accessed"] = time.strftime('%x %X',
|
||||
time.localtime(tval))
|
||||
summary_list.append( retval )
|
||||
return summary_list
|
||||
list.append( retval )
|
||||
return list
|
||||
|
||||
def _populate_cli(self):
|
||||
"""
|
||||
Get the list of current names in the database dir
|
||||
""" Get the list of current names in the database dir
|
||||
"""
|
||||
# make the default directory if it does not exist
|
||||
dbdir = os.path.expanduser(config.get('behavior.database-path'))
|
||||
if sys.version_info[0] < 3:
|
||||
dbdir = dbdir.encode(sys.getfilesystemencoding())
|
||||
db_ok = make_dbdir(dbdir)
|
||||
|
||||
self.current_names = []
|
||||
@@ -229,9 +215,8 @@ class CLIDbManager(object):
|
||||
dirpath = os.path.join(dbdir, dpath)
|
||||
path_name = os.path.join(dirpath, NAME_FILE)
|
||||
if os.path.isfile(path_name):
|
||||
file = io.open(path_name, 'r', encoding='utf8')
|
||||
file = open(path_name)
|
||||
name = file.readline().strip()
|
||||
file.close()
|
||||
|
||||
(tval, last) = time_val(dirpath)
|
||||
(enable, stock_id) = self.icon_values(dirpath, self.active,
|
||||
@@ -257,8 +242,7 @@ class CLIDbManager(object):
|
||||
return None
|
||||
|
||||
def family_tree_list(self):
|
||||
"""
|
||||
Return a list of name, dirname of the known family trees
|
||||
"""Return a list of name, dirname of the known family trees
|
||||
"""
|
||||
lst = [(x[0], x[1]) for x in self.current_names]
|
||||
return lst
|
||||
@@ -275,7 +259,7 @@ class CLIDbManager(object):
|
||||
"""
|
||||
print(_('Import finished...'))
|
||||
|
||||
def create_new_db_cli(self, title=None, create_db=True):
|
||||
def create_new_db_cli(self, title=None):
|
||||
"""
|
||||
Create a new database.
|
||||
"""
|
||||
@@ -287,15 +271,14 @@ class CLIDbManager(object):
|
||||
if title is None:
|
||||
name_list = [ name[0] for name in self.current_names ]
|
||||
title = find_next_db_name(name_list)
|
||||
|
||||
name_file = io.open(path_name, "w", encoding='utf8')
|
||||
|
||||
name_file = open(path_name, "w")
|
||||
name_file.write(title)
|
||||
name_file.close()
|
||||
|
||||
if create_db:
|
||||
# write the version number into metadata
|
||||
newdb = DbBsddb()
|
||||
newdb.write_version(new_path)
|
||||
# write the version number into metadata
|
||||
newdb = DbBsddb()
|
||||
newdb.write_version(new_path)
|
||||
|
||||
(tval, last) = time_val(new_path)
|
||||
|
||||
@@ -315,40 +298,33 @@ class CLIDbManager(object):
|
||||
A new database will only be created if an appropriate importer was
|
||||
found.
|
||||
|
||||
:param filename: a fully-qualified path, filename, and
|
||||
extension to open.
|
||||
@param filename: a fully-qualified path, filename, and
|
||||
extension to open.
|
||||
|
||||
:param user: a :class:`.cli.user.User` or :class:`.gui.user.User`
|
||||
instance for managing user interaction.
|
||||
@param user: a cli.User or gui.User instance for managing user
|
||||
interaction.
|
||||
|
||||
:returns: A tuple of (new_path, name) for the new database
|
||||
or (None, None) if no import was performed.
|
||||
@return: A tuple of (new_path, name) for the new database
|
||||
or (None, None) if no import was performed.
|
||||
"""
|
||||
pmgr = BasePluginManager.get_instance()
|
||||
# check to see if it isn't a filename directly:
|
||||
if not os.path.isfile(filename):
|
||||
# Allow URL names here; make temp file if necessary
|
||||
url = urlparse(filename)
|
||||
if url.scheme != "":
|
||||
if url.scheme == "file":
|
||||
filename = url2pathname(filename[7:])
|
||||
else:
|
||||
url_fp = urlopen(filename) # open URL
|
||||
# make a temp local file:
|
||||
ext = os.path.splitext(url.path)[1]
|
||||
fd, filename = tempfile.mkstemp(suffix=ext)
|
||||
temp_fp = os.fdopen(fd, "w")
|
||||
# read from URL:
|
||||
data = url_fp.read()
|
||||
# write locally:
|
||||
temp_fp.write(data)
|
||||
url_fp.close()
|
||||
from gen.db.dbconst import BDBVERSFN
|
||||
versionpath = os.path.join(name, BDBVERSFN)
|
||||
_LOG.debug("Write bsddb version %s" % str(dbase.version()))
|
||||
with open(versionpath, "w") as version_file:
|
||||
version_file.write(str(dbase.version()))
|
||||
temp_fp.close()
|
||||
# Allow URL names here; make temp file if necessary
|
||||
url = urlparse(filename)
|
||||
if url.scheme != "":
|
||||
if url.scheme == "file":
|
||||
filename = url2pathname(filename[7:])
|
||||
else:
|
||||
url_fp = urlopen(filename) # open URL
|
||||
# make a temp local file:
|
||||
ext = os.path.splitext(url.path)[1]
|
||||
fd, filename = tempfile.mkstemp(suffix=ext)
|
||||
temp_fp = os.fdopen(fd, "w")
|
||||
# read from URL:
|
||||
data = url_fp.read()
|
||||
# write locally:
|
||||
temp_fp.write(data)
|
||||
url_fp.close()
|
||||
temp_fp.close()
|
||||
|
||||
(name, ext) = os.path.splitext(os.path.basename(filename))
|
||||
format = ext[1:].lower()
|
||||
@@ -376,7 +352,7 @@ class CLIDbManager(object):
|
||||
|
||||
def is_locked(self, dbpath):
|
||||
"""
|
||||
Returns True if there is a lock file in the dirpath
|
||||
returns True if there is a lock file in the dirpath
|
||||
"""
|
||||
if os.path.isfile(os.path.join(dbpath,"lock")):
|
||||
return True
|
||||
@@ -384,7 +360,7 @@ class CLIDbManager(object):
|
||||
|
||||
def needs_recovery(self, dbpath):
|
||||
"""
|
||||
Returns True if the database in dirpath needs recovery
|
||||
returns True if the database in dirpath needs recovery
|
||||
"""
|
||||
if os.path.isfile(os.path.join(dbpath,"need_recover")):
|
||||
return True
|
||||
@@ -396,16 +372,14 @@ class CLIDbManager(object):
|
||||
Returns old_name, new_name if success, None, None if no success
|
||||
"""
|
||||
try:
|
||||
filepath = conv_to_unicode(filepath, 'utf8')
|
||||
new_text = conv_to_unicode(new_text, 'utf8')
|
||||
name_file = io.open(filepath, "r", encoding='utf8')
|
||||
name_file = open(filepath, "r")
|
||||
old_text=name_file.read()
|
||||
name_file.close()
|
||||
name_file = io.open(filepath, "w", encoding='utf8')
|
||||
name_file = open(filepath, "w")
|
||||
name_file.write(new_text)
|
||||
name_file.close()
|
||||
except (OSError, IOError) as msg:
|
||||
CLIDbManager.ERROR(_("Could not rename Family Tree"),
|
||||
CLIDbManager.ERROR(_("Could not rename family tree"),
|
||||
str(msg))
|
||||
return None, None
|
||||
return old_text, new_text
|
||||
@@ -439,6 +413,7 @@ def make_dbdir(dbdir):
|
||||
if not os.path.isdir(dbdir):
|
||||
os.makedirs(dbdir)
|
||||
except (IOError, OSError) as msg:
|
||||
msg = conv_to_unicode(str(msg), sys.getfilesystemencoding())
|
||||
LOG.error(_("\nERROR: Wrong database path in Edit Menu->Preferences.\n"
|
||||
"Open preferences and set correct database path.\n\n"
|
||||
"Details: Could not make database directory:\n %s\n\n") % msg)
|
||||
@@ -454,7 +429,7 @@ def find_next_db_name(name_list):
|
||||
while True:
|
||||
title = "%s %d" % (DEFAULT_TITLE, i)
|
||||
if title not in name_list:
|
||||
return conv_to_unicode(title)
|
||||
return title
|
||||
i += 1
|
||||
|
||||
def find_next_db_dir():
|
||||
@@ -466,6 +441,8 @@ def find_next_db_dir():
|
||||
while True:
|
||||
base = "%x" % int(time.time())
|
||||
dbdir = os.path.expanduser(config.get('behavior.database-path'))
|
||||
if sys.version_info[0] < 3:
|
||||
dbdir = dbdir.encode(sys.getfilesystemencoding())
|
||||
new_path = os.path.join(dbdir, base)
|
||||
if not os.path.isdir(new_path):
|
||||
break
|
||||
@@ -503,11 +480,15 @@ def find_locker_name(dirpath):
|
||||
"""
|
||||
try:
|
||||
fname = os.path.join(dirpath, "lock")
|
||||
ifile = io.open(fname, 'r', encoding='utf8')
|
||||
ifile = open(fname, 'rb')
|
||||
username = ifile.read().strip()
|
||||
# Convert username to unicode according to system encoding
|
||||
# Otherwise problems with non ASCII characters in
|
||||
# username in Windows
|
||||
username = conv_to_unicode(username, sys.getfilesystemencoding())
|
||||
# feature request 2356: avoid genitive form
|
||||
last = _("Locked by %s") % username
|
||||
ifile.close()
|
||||
except (OSError, IOError, UnicodeDecodeError):
|
||||
except (OSError, IOError):
|
||||
last = _("Unknown")
|
||||
return last
|
||||
|
@@ -16,14 +16,16 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
"""
|
||||
Provides the startcli function, which the main program calls for CLI
|
||||
execution of Gramps.
|
||||
execution of GRAMPS.
|
||||
|
||||
Provides also two small base classes: :class:`CLIDbLoader`, :class:`CLIManager`
|
||||
Provides also two small base classes: CLIDbLoader, CLIManager
|
||||
"""
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
@@ -31,8 +33,9 @@ Provides also two small base classes: :class:`CLIDbLoader`, :class:`CLIManager`
|
||||
# Python modules
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from gramps.gen.const import GRAMPS_LOCALE as glocale
|
||||
_ = glocale.translation.gettext
|
||||
from __future__ import print_function
|
||||
|
||||
from gramps.gen.ggettext import gettext as _
|
||||
import os
|
||||
import sys
|
||||
|
||||
@@ -51,13 +54,7 @@ from gramps.gen.errors import DbError
|
||||
from gramps.gen.dbstate import DbState
|
||||
from gramps.gen.db import DbBsddb
|
||||
from gramps.gen.db.exceptions import (DbUpgradeRequiredError,
|
||||
BsddbDowngradeError,
|
||||
DbVersionError,
|
||||
DbEnvironmentError,
|
||||
BsddbUpgradeRequiredError,
|
||||
BsddbDowngradeRequiredError,
|
||||
PythonUpgradeRequiredError,
|
||||
PythonDowngradeError)
|
||||
DbVersionError)
|
||||
from gramps.gen.plug import BasePluginManager
|
||||
from gramps.gen.utils.config import get_researcher
|
||||
from gramps.gen.recentfiles import recent_files
|
||||
@@ -69,8 +66,8 @@ from gramps.gen.recentfiles import recent_files
|
||||
#-------------------------------------------------------------------------
|
||||
class CLIDbLoader(object):
|
||||
"""
|
||||
Base class for Db loading action inside a :class:`.DbState`. Only the
|
||||
minimum is present needed for CLI handling
|
||||
Base class for Db loading action inside a dbstate. Only the minimum is
|
||||
present needed for CLI handling
|
||||
"""
|
||||
def __init__(self, dbstate):
|
||||
self.dbstate = dbstate
|
||||
@@ -79,24 +76,22 @@ class CLIDbLoader(object):
|
||||
"""
|
||||
Issue a warning message. Inherit for GUI action
|
||||
"""
|
||||
print(_('WARNING: %s') % warnmessage, file=sys.stderr)
|
||||
print(_('WARNING: %s') % warnmessage)
|
||||
|
||||
def _errordialog(self, title, errormessage):
|
||||
"""
|
||||
Show the error. A title for the error and an errormessage
|
||||
Inherit for GUI action
|
||||
"""
|
||||
print(_('ERROR: %s') % errormessage, file=sys.stderr)
|
||||
print(_('ERROR: %s') % errormessage)
|
||||
sys.exit(1)
|
||||
|
||||
def _dberrordialog(self, msg):
|
||||
"""
|
||||
Show a database error.
|
||||
|
||||
:param msg: an error message
|
||||
:type msg : string
|
||||
|
||||
.. note:: Inherit for GUI action
|
||||
@param: msg : an error message
|
||||
@type: string
|
||||
@note: Inherit for GUI action
|
||||
"""
|
||||
self._errordialog( '', _("Low level database corruption detected")
|
||||
+ '\n' +
|
||||
@@ -162,35 +157,17 @@ class CLIDbLoader(object):
|
||||
try:
|
||||
self.dbstate.db.load(filename, self._pulse_progress, mode)
|
||||
self.dbstate.db.set_save_path(filename)
|
||||
except DbEnvironmentError as msg:
|
||||
except gen.db.exceptions.DbUpgradeRequiredError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except BsddbUpgradeRequiredError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except BsddbDowngradeRequiredError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except BsddbDowngradeError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except DbUpgradeRequiredError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except PythonDowngradeError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except PythonUpgradeRequiredError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except DbVersionError as msg:
|
||||
except gen.db.exceptions.DbVersionError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog( _("Cannot open database"), str(msg))
|
||||
except OSError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._errordialog(
|
||||
_("Could not open file: %s") % filename, str(msg))
|
||||
except DbError as msg:
|
||||
except Errors.DbError as msg:
|
||||
self.dbstate.no_database()
|
||||
self._dberrordialog(msg)
|
||||
except Exception:
|
||||
@@ -206,12 +183,12 @@ class CLIDbLoader(object):
|
||||
|
||||
class CLIManager(object):
|
||||
"""
|
||||
Sessionmanager for Gramps. This is in effect a reduced :class:`.ViewManager`
|
||||
Sessionmanager for GRAMPS. This is in effect a reduced viewmanager
|
||||
instance (see gui/viewmanager), suitable for CLI actions.
|
||||
Aim is to manage a dbstate on which to work (load, unload), and interact
|
||||
with the plugin session
|
||||
"""
|
||||
def __init__(self, dbstate, setloader, user):
|
||||
def __init__(self, dbstate, setloader):
|
||||
self.dbstate = dbstate
|
||||
if setloader:
|
||||
self.db_loader = CLIDbLoader(self.dbstate)
|
||||
@@ -219,8 +196,7 @@ class CLIManager(object):
|
||||
self.db_loader = None
|
||||
self.file_loaded = False
|
||||
self._pmgr = BasePluginManager.get_instance()
|
||||
self.user = user
|
||||
|
||||
|
||||
def open_activate(self, path):
|
||||
"""
|
||||
Open and make a family tree active
|
||||
@@ -231,7 +207,7 @@ class CLIManager(object):
|
||||
"""
|
||||
Show the error. A title for the error and an errormessage
|
||||
"""
|
||||
print(_('ERROR: %s') % errormessage, file=sys.stderr)
|
||||
print(_('ERROR: %s') % errormessage)
|
||||
sys.exit(1)
|
||||
|
||||
def _read_recent_file(self, filename):
|
||||
@@ -247,13 +223,6 @@ class CLIManager(object):
|
||||
_("Family Tree does not exist, as it has been deleted."))
|
||||
return
|
||||
|
||||
if os.path.isfile(os.path.join(filename, "lock")):
|
||||
self._errordialog(
|
||||
_("The database is locked."),
|
||||
_("Use the --force-unlock option if you are sure "
|
||||
"that the database is not in use."))
|
||||
return
|
||||
|
||||
if self.db_loader.read_file(filename):
|
||||
# Attempt to figure out the database title
|
||||
path = os.path.join(filename, "name.txt")
|
||||
@@ -295,10 +264,7 @@ class CLIManager(object):
|
||||
# apply preferred researcher if loaded file has none
|
||||
res = self.dbstate.db.get_researcher()
|
||||
owner = get_researcher()
|
||||
# If the DB Owner Info is empty and
|
||||
# [default] Researcher is not empty and
|
||||
# database is empty, then copy default researcher to DB owner
|
||||
if res.is_empty() and not owner.is_empty() and self.dbstate.db.is_empty():
|
||||
if res.get_name() == "" and owner.get_name() != "":
|
||||
self.dbstate.db.set_researcher(owner)
|
||||
|
||||
name_displayer.set_name_format(self.dbstate.db.name_formats)
|
||||
@@ -322,36 +288,36 @@ class CLIManager(object):
|
||||
|
||||
def startcli(errors, argparser):
|
||||
"""
|
||||
Starts a cli session of Gramps.
|
||||
|
||||
:param errors: errors already encountered
|
||||
:param argparser: :class:`.ArgParser` instance
|
||||
Starts a cli session of GRAMPS.
|
||||
errors : errors already encountered
|
||||
argparser : ArgParser instance
|
||||
"""
|
||||
if errors:
|
||||
#already errors encountered. Show first one on terminal and exit
|
||||
# Convert error message to file system encoding before print
|
||||
errmsg = _('Error encountered: %s') % errors[0][0]
|
||||
print(errmsg, file=sys.stderr)
|
||||
errmsg = errmsg.encode(sys.getfilesystemencoding())
|
||||
print(errmsg)
|
||||
errmsg = _(' Details: %s') % errors[0][1]
|
||||
print(errmsg, file=sys.stderr)
|
||||
errmsg = errmsg.encode(sys.getfilesystemencoding())
|
||||
print(errmsg)
|
||||
sys.exit(1)
|
||||
|
||||
if argparser.errors:
|
||||
# Convert error message to file system encoding before print
|
||||
errmsg = _('Error encountered in argument parsing: %s') \
|
||||
% argparser.errors[0][0]
|
||||
print(errmsg, file=sys.stderr)
|
||||
errmsg = errmsg.encode(sys.getfilesystemencoding())
|
||||
print(errmsg)
|
||||
errmsg = _(' Details: %s') % argparser.errors[0][1]
|
||||
print(errmsg, file=sys.stderr)
|
||||
errmsg = errmsg.encode(sys.getfilesystemencoding())
|
||||
print(errmsg)
|
||||
sys.exit(1)
|
||||
|
||||
#we need to keep track of the db state
|
||||
dbstate = DbState()
|
||||
|
||||
#we need a manager for the CLI session
|
||||
from .user import User
|
||||
user=User(auto_accept=argparser.auto_accept,
|
||||
quiet=argparser.quiet)
|
||||
climanager = CLIManager(dbstate, setloader=True, user=user)
|
||||
|
||||
climanager = CLIManager(dbstate, True)
|
||||
#load the plugins
|
||||
climanager.do_reg_plugins(dbstate, uistate=None)
|
||||
# handle the arguments
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# Copyright (C) 2008 Raphael Ackermann
|
||||
# Copyright (C) 2008-2011 Brian G. Matherly
|
||||
# Copyright (C) 2010 Jakim Friant
|
||||
# Copyright (C) 2011-2013 Paul Franklin
|
||||
# Copyright (C) 2011-2012 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
|
||||
@@ -20,11 +20,12 @@
|
||||
#
|
||||
# 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.
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
#
|
||||
# cli.plug.__init__
|
||||
#
|
||||
# $Id$
|
||||
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
@@ -32,6 +33,9 @@
|
||||
# Python modules
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
from __future__ import print_function
|
||||
|
||||
from gramps.gen.ggettext import gettext as _
|
||||
import traceback
|
||||
import os
|
||||
import sys
|
||||
@@ -55,14 +59,13 @@ 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)
|
||||
ReportOptions, create_style_sheet)
|
||||
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
|
||||
_ = glocale.translation.gettext
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
#
|
||||
@@ -76,13 +79,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, str):
|
||||
if isinstance(type_val, STRTYPE):
|
||||
if ( str_val.startswith("'") and str_val.endswith("'") ) or \
|
||||
( str_val.startswith('"') and str_val.endswith('"') ):
|
||||
# Remove enclosing quotes
|
||||
return str(str_val[1:-1])
|
||||
return conv_to_unicode_direct(str_val[1:-1])
|
||||
else:
|
||||
return str(str_val)
|
||||
return conv_to_unicode_direct(str_val)
|
||||
|
||||
elif ret_type == int:
|
||||
if str_val.isdigit():
|
||||
@@ -165,8 +168,7 @@ def _validate_options(options, dbase):
|
||||
phandle = None
|
||||
person = dbase.get_person_from_handle(phandle)
|
||||
if not person:
|
||||
print(_("ERROR: Please specify a person"),
|
||||
file=sys.stderr)
|
||||
print(_("ERROR: Please specify a person"))
|
||||
if person:
|
||||
option.set_value(person.get_gramps_id())
|
||||
|
||||
@@ -190,7 +192,7 @@ def _validate_options(options, dbase):
|
||||
family = dbase.get_family_from_handle(family_handle)
|
||||
option.set_value(family.get_gramps_id())
|
||||
else:
|
||||
print(_("ERROR: Please specify a family"), file=sys.stderr)
|
||||
print(_("ERROR: Please specify a family"))
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
#
|
||||
@@ -262,21 +264,17 @@ class CommandLineReport(object):
|
||||
}
|
||||
|
||||
self.options_help = {
|
||||
'of' : [_("=filename"), _("Output file name. MANDATORY"),""],
|
||||
'off' : [_("=format"), _("Output file format."), []],
|
||||
'style' : [_("=name"), _("Style name."), ""],
|
||||
'papers' : [_("=name"), _("Paper size name."), ""],
|
||||
'papero' : [_("=number"), _("Paper orientation number."), ""],
|
||||
'paperml' : [_("=number"), _("Left paper margin"),
|
||||
_("Size in cm")],
|
||||
'papermr' : [_("=number"), _("Right paper margin"),
|
||||
_("Size in cm")],
|
||||
'papermt' : [_("=number"), _("Top paper margin"),
|
||||
_("Size in cm")],
|
||||
'papermb' : [_("=number"), _("Bottom paper margin"),
|
||||
_("Size in cm")],
|
||||
'css' : [_("=css filename"), _("CSS filename to use, "
|
||||
"html format only"), ""],
|
||||
'of' : ["=filename", "Output file name. MANDATORY", ""],
|
||||
'off' : ["=format", "Output file format.", []],
|
||||
'style' : ["=name", "Style name.", ""],
|
||||
'papers' : ["=name", "Paper size name.", ""],
|
||||
'papero' : ["=num", "Paper orientation number.", ""],
|
||||
'paperml' : ["=num", "Left paper margin", "Size in cm"],
|
||||
'papermr' : ["=num", "Right paper margin", "Size in cm"],
|
||||
'papermt' : ["=num", "Top paper margin", "Size in cm"],
|
||||
'papermb' : ["=num", "Bottom paper margin", "Size in cm"],
|
||||
'css' : ["=css filename", "CSS filename to use, html format"
|
||||
" only", ""],
|
||||
}
|
||||
|
||||
if noopt:
|
||||
@@ -300,13 +298,13 @@ class CommandLineReport(object):
|
||||
elif self.category == CATEGORY_GRAPHVIZ:
|
||||
for graph_format in graphdoc.FORMATS:
|
||||
self.options_help['off'][2].append(
|
||||
graph_format["type"] + "\t" + graph_format["descr"] )
|
||||
graph_format["ext"] + "\t" + graph_format["descr"] )
|
||||
else:
|
||||
self.options_help['off'][2] = "NA"
|
||||
|
||||
self.options_help['papers'][2] = \
|
||||
[ paper.get_name() for paper in paper_sizes
|
||||
if paper.get_name() != 'Custom Size' ]
|
||||
if paper.get_name() != _("Custom Size") ]
|
||||
|
||||
self.options_help['papero'][2] = [
|
||||
"%d\tPortrait" % PAPER_PORTRAIT,
|
||||
@@ -418,14 +416,12 @@ class CommandLineReport(object):
|
||||
elif isinstance(option, Option):
|
||||
self.options_help[name].append(option.get_help())
|
||||
else:
|
||||
print(_("Unknown option: %s") % option, file=sys.stderr)
|
||||
print(_(" Valid options are:") +
|
||||
", ".join(list(self.options_dict.keys())),
|
||||
file=sys.stderr)
|
||||
print(_(" Use '%(donottranslate)s' to see description "
|
||||
"and acceptable values")
|
||||
% {'donottranslate' : "show=option"},
|
||||
file=sys.stderr)
|
||||
print(_("Unknown option: %s") % option)
|
||||
print(_(" Valid options are:"),
|
||||
", ".join(list(self.options_dict.keys())))
|
||||
print((_(" Use '%(donottranslate)s' to see description "
|
||||
"and acceptable values") %
|
||||
{'donottranslate' : "show=option"}))
|
||||
|
||||
def parse_options(self):
|
||||
"""
|
||||
@@ -465,24 +461,23 @@ class CommandLineReport(object):
|
||||
_chosen_format = plugin.get_extension()
|
||||
elif self.category == CATEGORY_GRAPHVIZ:
|
||||
for graph_format in graphdoc.FORMATS:
|
||||
if graph_format['type'] == self.options_dict['off']:
|
||||
if graph_format['ext'] == self.options_dict['off']:
|
||||
if not self.format: # choose the first one, not the last
|
||||
self.format = graph_format["class"]
|
||||
if self.format is None:
|
||||
# Pick the first one as the default.
|
||||
self.format = graphdoc.FORMATS[0]["class"]
|
||||
_chosen_format = graphdoc.FORMATS[0]["type"]
|
||||
_chosen_format = graphdoc.FORMATS[0]["ext"]
|
||||
else:
|
||||
self.format = None
|
||||
if _chosen_format and _format_str:
|
||||
print(_("Ignoring '%(notranslate1)s=%(notranslate2)s' "
|
||||
"and using '%(notranslate1)s=%(notranslate3)s'.")
|
||||
% {'notranslate1' : "off",
|
||||
'notranslate2' : self.options_dict['off'],
|
||||
'notranslate3' : _chosen_format},
|
||||
file=sys.stderr)
|
||||
print(_("Use '%(notranslate)s' to see valid values.")
|
||||
% {'notranslate' : "show=off"}, file=sys.stderr)
|
||||
print((_("Ignoring '%(notranslate1)s=%(notranslate2)s' "
|
||||
"and using '%(notranslate1)s=%(notranslate3)s'.") %
|
||||
{'notranslate1' : "off",
|
||||
'notranslate2' : self.options_dict['off'],
|
||||
'notranslate3' : _chosen_format}))
|
||||
print((_("Use '%(notranslate)s' to see valid values.") %
|
||||
{'notranslate' : "show=off"}))
|
||||
|
||||
self.do_doc_options()
|
||||
|
||||
@@ -494,23 +489,21 @@ class CommandLineReport(object):
|
||||
|
||||
self.option_class.handler.options_dict[opt] = \
|
||||
self.options_dict[opt]
|
||||
|
||||
|
||||
if menu and opt in menu_opt_names:
|
||||
option = menu.get_option_by_name(opt)
|
||||
option.set_value(self.options_dict[opt])
|
||||
|
||||
else:
|
||||
print(_("Ignoring unknown option: %s") % opt, file=sys.stderr)
|
||||
print(_("Ignoring unknown option: %s") % opt )
|
||||
print(_(" Valid options are:"),
|
||||
", ".join(list(self.options_dict.keys())),
|
||||
file=sys.stderr)
|
||||
", ".join(list(self.options_dict.keys())))
|
||||
print(_(" Use '%(donottranslate)s' to see description "
|
||||
"and acceptable values") %
|
||||
{'donottranslate' : "show=option"}, file=sys.stderr)
|
||||
{'donottranslate' : "show=option"})
|
||||
|
||||
self.option_class.handler.output = self.options_dict['of']
|
||||
|
||||
self.paper = paper_sizes[0] # make sure one exists
|
||||
for paper in paper_sizes:
|
||||
if paper.get_name() == self.options_dict['papers']:
|
||||
self.paper = paper
|
||||
@@ -577,13 +570,14 @@ class CommandLineReport(object):
|
||||
# Make the output nicer to read, assume a tab has 8 spaces
|
||||
tabs = '\t\t' if len(key) < 10 else '\t'
|
||||
optmsg = " %s%s%s (%s)" % (key, tabs, opt[1], opt[0])
|
||||
print(optmsg.encode(sys.getfilesystemencoding()))
|
||||
else:
|
||||
optmsg = " %s%s%s" % (key, tabs,
|
||||
_('(no help available)'))
|
||||
print(optmsg)
|
||||
print(_(" Use '%(donottranslate)s' to see description "
|
||||
"and acceptable values")
|
||||
% {'donottranslate' : "show=option"})
|
||||
print(optmsg.encode(sys.getfilesystemencoding()))
|
||||
print((_(" Use '%(donottranslate)s' to see description "
|
||||
"and acceptable values") %
|
||||
{'donottranslate' : "show=option"}))
|
||||
elif self.show in self.options_help:
|
||||
opt = self.options_help[self.show]
|
||||
tabs = '\t\t' if len(self.show) < 10 else '\t'
|
||||
@@ -592,17 +586,17 @@ class CommandLineReport(object):
|
||||
vals = opt[2]
|
||||
if isinstance(vals, (list, tuple)):
|
||||
for val in vals:
|
||||
print(" %s" % val)
|
||||
optmsg = " %s" % val
|
||||
print(optmsg.encode(sys.getfilesystemencoding()))
|
||||
else:
|
||||
print(" %s" % opt[2])
|
||||
optmsg = " %s" % opt[2]
|
||||
print(optmsg.encode(sys.getfilesystemencoding()))
|
||||
|
||||
else:
|
||||
#there was a show option given, but the option is invalid
|
||||
print(_("option '%(optionname)s' not valid. "
|
||||
"Use '%(donottranslate)s' to see all valid options.")
|
||||
% {'optionname' : self.show,
|
||||
'donottranslate' : "show=all"},
|
||||
file=sys.stderr)
|
||||
print((_("option '%(optionname)s' not valid. "
|
||||
"Use '%(donottranslate)s' to see all valid options.") %
|
||||
{'optionname' : self.show, 'donottranslate' : "show=all"}))
|
||||
|
||||
#------------------------------------------------------------------------
|
||||
#
|
||||
@@ -650,10 +644,10 @@ def cl_report(database, name, category, report_class, options_class,
|
||||
return clr
|
||||
except ReportError as msg:
|
||||
(m1, m2) = msg.messages()
|
||||
print(err_msg, file=sys.stderr)
|
||||
print(m1, file=sys.stderr)
|
||||
print(err_msg)
|
||||
print(m1)
|
||||
if m2:
|
||||
print(m2, file=sys.stderr)
|
||||
print(m2)
|
||||
except:
|
||||
if len(log.handlers) > 0:
|
||||
log.error(err_msg, exc_info=True)
|
||||
@@ -688,7 +682,7 @@ def run_report(db, name, **options_str_dict):
|
||||
filename in clr.option_class.get_output()
|
||||
"""
|
||||
dbstate = DbState()
|
||||
climanager = CLIManager(dbstate, setloader=False, user=User()) # don't load db
|
||||
climanager = CLIManager(dbstate, False) # don't load db
|
||||
climanager.do_reg_plugins(dbstate, None)
|
||||
pmgr = BasePluginManager.get_instance()
|
||||
cl_list = pmgr.get_reg_reports()
|
||||
@@ -732,7 +726,6 @@ def cl_book(database, name, book, options_str_dict):
|
||||
clr.marginr, clr.margint, clr.marginb))
|
||||
user = User()
|
||||
rptlist = []
|
||||
selected_style = StyleSheet()
|
||||
for item in book.get_item_list():
|
||||
|
||||
# The option values were loaded magically by the book parser.
|
||||
@@ -748,15 +741,14 @@ def cl_book(database, name, book, options_str_dict):
|
||||
report_class = item.get_write_item()
|
||||
obj = write_book_item(database,
|
||||
report_class, item.option_class, user)
|
||||
if obj:
|
||||
append_styles(selected_style, item)
|
||||
rptlist.append(obj)
|
||||
style_sheet = create_style_sheet(item)
|
||||
rptlist.append((obj, style_sheet))
|
||||
|
||||
doc.set_style_sheet(selected_style)
|
||||
doc.open(clr.option_class.get_output())
|
||||
doc.init()
|
||||
newpage = 0
|
||||
for rpt in rptlist:
|
||||
for rpt, style_sheet in rptlist:
|
||||
doc.set_style_sheet(style_sheet)
|
||||
if newpage:
|
||||
doc.page_break()
|
||||
newpage = 1
|
||||
@@ -776,10 +768,10 @@ def write_book_item(database, report_class, options, user):
|
||||
return report_class(database, options, user)
|
||||
except ReportError as msg:
|
||||
(m1, m2) = msg.messages()
|
||||
print("ReportError", m1, m2, file=sys.stderr)
|
||||
print("ReportError", m1, m2)
|
||||
except FilterError as msg:
|
||||
(m1, m2) = msg.messages()
|
||||
print("FilterError", m1, m2, file=sys.stderr)
|
||||
print("FilterError", m1, m2)
|
||||
except:
|
||||
log.error("Failed to write book item.", exc_info=True)
|
||||
return None
|
||||
|
@@ -1,84 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
# Copyright (C) 2013 Vassilii Khachaturov <vassilii@tarunz.org>
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
""" Unittest for argparser.py """
|
||||
|
||||
import unittest
|
||||
from ..argparser import ArgParser
|
||||
import sys
|
||||
|
||||
try:
|
||||
if sys.version_info < (3,3):
|
||||
from mock import Mock
|
||||
else:
|
||||
from unittest.mock import Mock
|
||||
|
||||
MOCKING = True
|
||||
|
||||
except:
|
||||
MOCKING = False
|
||||
print ("Mocking disabled", sys.exc_info()[0:2])
|
||||
|
||||
class TestArgParser(unittest.TestCase):
|
||||
def setUp(self):
|
||||
pass
|
||||
|
||||
def create_parser(*self_and_args):
|
||||
return ArgParser(list(self_and_args))
|
||||
|
||||
def triggers_option_error(self, option):
|
||||
ap = self.create_parser(option)
|
||||
return (str(ap.errors).find("option "+option)>=0, ap)
|
||||
|
||||
def test_wrong_argument_triggers_option_error(self):
|
||||
bad,ap = self.triggers_option_error('--I-am-a-wrong-argument')
|
||||
assert bad, ap.__dict__
|
||||
|
||||
def test_y_shortopt_sets_auto_accept(self):
|
||||
bad,ap = self.triggers_option_error('-y')
|
||||
assert not bad, ap.errors
|
||||
assert ap.auto_accept
|
||||
|
||||
def test_yes_longopt_sets_auto_accept(self):
|
||||
bad,ap = self.triggers_option_error('--yes')
|
||||
assert not bad, ap.errors
|
||||
assert ap.auto_accept
|
||||
|
||||
def test_q_shortopt_sets_quiet(self):
|
||||
bad,ap = self.triggers_option_error('-q')
|
||||
assert not bad, ap.errors
|
||||
assert ap.quiet
|
||||
|
||||
def test_quiet_longopt_sets_quiet(self):
|
||||
bad,ap = self.triggers_option_error('--quiet')
|
||||
assert not bad, ap.errors
|
||||
assert ap.quiet
|
||||
|
||||
def test_quiet_exists_by_default(self):
|
||||
ap = self.create_parser()
|
||||
assert hasattr(ap,'quiet')
|
||||
|
||||
def test_auto_accept_unset_by_default(self):
|
||||
ap = self.create_parser()
|
||||
assert not ap.auto_accept
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user