Ru:Gramps 3.4 Вики Руководство - Отчеты - часть 2
|
Особое уведомление об авторских правах: Все правки на этой странице должны удовлетворять требованиям двух следующих лицензий:
Указанные лицензии позволяют проекту Gramps максимально использовать настоящее вики-руководство в качестве свободного и бесплатного источника информации для будущих версий Gramps. Если Вы не согласны с условиями такого двойного лицензирования размещаемых на страницах вики-руководства материалов, то не редактируйте эту страницу. В этом случае Вы имеете право лишь создавать ссылки на другие страницы настоящего вики-руководства, которые соответствуют требованиям только лицензии GFDL, с использованием внешних ссылок (используя синтаксис: [http://www.gramps-project.org/...]), но не внутренних ссылок. |
Назад к списку отчетов.
Этот раздел описывает подстановку значений - метод, который используют различные отчеты Gramps.
Contents
Подстановка значений
Большинство графических отчетов позволяет настраивать выводимую информацию. Подстановка значений - это метод, который используется чтобы заменять специальные символы (ключи) на конкретные значения о персоне из вашего семейного древа.
| Пример: | Отображение: (человек ныне живущий) |
$n
р. $b{ в $B}
у. $d< в >$D
|
Смирнов Василий Иванович р. 1961-05-24 в г.Москва, Россия у. |
| 1 | Далее мы рассмотрим все доступные переменные (ключи для подстановки). Если вы желаете, чтобы имена, даты или места отображались особым образом - вы можете использовать строки форматирования. |
| 2 | Так же существуют Управляющие переменные для отображения специальных символов (таких, как знак доллара). |
| 3 | Вы можете использовать Группировку для привязки отображения дополнительной информации к значениям переменных. Во второй строке примера предлог ' в ' будет отображаться только если известно место рождения. |
| 4 | Вы можете печатать почти все данные, связанные с Событиями. |
| 5 | И в завершении описания - Разделители. В третьей строке примера предлог ' в ' будет отображаться только если известны и дата, и место рождения. |
Ключи для подстановки
| Ключи для людей | Ключи для семей | ||
| $n | Подставляет имя человека | $s | Подставляет имя супруга |
| $i | Подставляет идентификатор человека | $j | Подставляет идентификатор семьи |
| $b | Подставляет дату рождения человека | $m | Подставляет дату заключения брака |
| $B | Подставляет место рождения человека | $M | Подставляет место заключения брака |
| $d | Подставляет дату смерти человека | $v | Подставляет дату развода |
| $D | Подставляет место смерти человека | $V | Подставляет место развода |
| $a | Подставляет атрибуты человека.
Подробнее см. Атрибуты |
$u | Подставляет атрибуты семьи
Подробнее см. Атрибуты |
| $e | Подставляет события человека
Подробнее см. События |
$t | Подставляет события семьи
Подробнее см. События |
Все семейные переменные определяются по первому супругу в списке. Если человек никогда не был женат, эти переменные будут пустыми.
Стандартные форматы отображения
| $n $s | Имена отображаются как указано в настройках Gramps в поле 'Формат имен' |
| $B $D $M $V | Для мест отображается 'Название места' |
| $b $d $m $v | Даты отображаются как указано в настройках Gramps в поле 'Формат дат' |
| $e $t | Для событий отображается 'Описание' |
Устаревшие переменные
Некоторые переменные устарели, потому что их значения теперь можно получить из других переменных с помощью строк форматирования. Ниже приведен список таких переменных:
| Устаревшая переменная | Современная переменная | Что отображается |
|---|---|---|
| $f | $n | Полное имя - как указано в настройках Gramps |
| $n | $n(g f) | Полное имя - Имя Фамилия |
| $N | $n(f, g) | Полное имя - Фамилия, Имя (обратите внимание на запятую) |
| $nC | $n(g F) | Полное имя - Имя ФАМИЛИЯ (заглавными буквами) |
| $NC | $n(F, g) | Полное имя - ФАМИЛИЯ (заглавными буквами), Имя |
| $by | $b(yyyy) | Дата рождения, только год |
| $dy | $d(yyyy) | Дата смерти, только год |
| $my | $m(yyyy) | Дата вступления в брака, только год |
| $p | $s | Полное имя супруга, как указано в настройках Gramps |
| $s | $s(g f) | Полное имя супруга - Имя Фамилия |
| $S | $s(f, g) | Полное имя супруга - Фамилия, Имя |
| $sC | $s(g F) | Полное имя супруга - Имя ФАМИЛИЯ (заглавными буквами) |
| $SC | $s(F, g) | Полное имя супруга - ФАМИЛИЯ (заглавными буквами), Имя |
Строки форматирования
Строки форматирования используются для альтернативного отображения информации об именах, местах и событиях. Ниже приводится синтаксис строк форматирования:
$ключ(строка форматирования)
где ключ - это один из следующих символов: 'nsijbmBMdvDVauet'
строка форматирования - это любой текст, разделители и коды форматов для отображения информации о человеке.
Форматирование имен
Для имен ($n $s) можно использовать следующие коды форматов.
| t | Титул | f | Имя | |
| x | Имя в быту, либо, при его отсутствии, просто Имя | c | Имя в быту | |
| n | Прозвище | s | Суффикс | |
| l | Фамилия | g | Семейное прозвище |
Если код форматирования указать в верхнем регистре - результат будет выведен заглавными буквами.
| Пример | Отображение |
$n(L, f) ($n(c)), $n(L, f){ ($n(c))}
$s(f l s)
|
SMITH, Edwin Michael (), SMITH, Edwin Michael Janice Ann Adams |
Примечание: если вы хотите напечатать символ 'c' внутри строки форматирования (или любой другой символ из ключей форматов), вы должны поставить перед ним символ '\'. Подробнее смотри Управляющие переменные.
Примечание: фигурные скобки { } используются чтобы скрыть ненужную информацию. В примере они используются вокруг выражения ' ($n(c))', чтобы не отображать ' ()' (пустые скобки), если у человека нет прозвища. Подробнее смотрите в разделе Группировка.
Форматирование дат
Для дат ($b $d $m $v) можно использовать следующие коды форматов:
| yyyy | Год как четырехзначное число | yyy | Год как трехзначное число | |
| yy | Год как двузначное число от 00 до 99 | y | Год как число от 0 до 99 | |
| mmmm MMMM |
Полное название месяца Полное название заглавными буквами |
mmm MMM |
Сокращенное название месяца Сокращенное название заглавными буквами | |
| mm | Месяц как двузначное число от 00 до 12 | m | Месяц как число от 0 до 12 | |
| dd | День как двузначное число от 00 до 31 | d | День как число от 0 до 31 | |
| o | Тип даты ("До", "После", "Около") |
| Пример | Отображение |
$b(mmm-dd yy) $m(yyyy/mmm/d) $b(mmm-dd yy) |
May-24 61 1995/May/27 Jun-04 85 |
Форматирование мест
Для мест ($B $D $M $V) можно использовать следующие коды форматов:
| e | Улица | l | Местность | |
| c | Город | u | Район | |
| s | Область/Край/Республика | p | Почтовый индекс | |
| n | Страна | t | Название | |
| x | Долгота | y | Широта |
Если задать код формата заглавной буквой, то результат тоже будет заглавными буквами.
| Пример | Отображение |
$B $B(c, s, N) |
St Judes Hospital Carmel, IN, USA |
Правила для форматирования строк
| 1 | Внутри строки форматирования может быть всё, что угодно |
| 1a | Чтобы отобразить сами коды форматов и символы, такие как ')', необходимо использовать управляющие переменные |
| 2 | Внутри строк форматирования могут быть разделители |
| 3 | В строке форматирования должен присутствовать хотя бы ОДИН код формата |
Примеры
| Пример | Отображение |
$n(f l)
b. $b {at $B
{d. $d $D
|
Edwin Michael Smith b. 1961-05-24 at San Jose, Santa Clara Co., CAЧеловек ныне живущий (по известной информации), поэтому строку о смерти удаляем. |
Управляющие переменные
Управляющие переменные позволяют отображать спецсимволы и коды форматов.
Например, значок доллара '$' используется для обозначения начала переменной. Если вы захотите отобразить значок доллара - нужно использовать управляющую символ '\$'.
Управляющие переменные
| \$ | Отображает '$' | \\ | Отображает '\' | |
| \( | Отображает '(' | \) | Отображает ')' | |
| \{ | Отображает '{' | \} | Отображает '}' | |
| \< | Отображает '<' | \> | Отображает '>' |
То есть после знака '\' отображается любой символ.
Примечание: Это может пригодиться, если понадобится отобразить символы, которые являются кодами форматирования.
| Пример | Отображение |
$b(m hi mom) $b(m hi \mo\m) |
5 hi 5o5 5 hi mom |
этот человек родился в пятом месяце.
Группировка
В некоторых случаях не нужно отображать часть текста в строке форматирования. Например:
| Код | Известна только дата | Известно только место |
смерть в $D в $d |
смерть в в 1975-06-26 |
смерть в г.Москва в |
| Оба варианта не совсем корректны. | ||
| Группировка (обозначается фигурными скобками {}) позволяет выводить информацию внутри группы только если переменная содержит какое-либо значение. | ||
| Пример: | ||
| Код | Известна только дата | Известно только место |
смерть{ в $D}{ в $d}
|
смерть в 1975-06-26 |
смерть в г.Москва |
Что и было необходимо.
Правила для групп
Группа отображается только если в ней есть хотя бы одна переменная со значением. Если группа содержит только текст и/или только переменные, не содержащие значений - группа не отображается.
Группы можно вкладывать друг в друга. Внешняя группа будет отображаться только если хотя бы одна переменная в этой группе или в любой вложенной группе имеет значение.
Группы могут быть использованы для запрета отображения всей строки. Строка с символом '{' в начале не будет отображаться, если не выполнится правило из предыдущей строки.
Если вы не хотите, чтобы строка с информацией о смерти вообще не отображалась, если человек жив или информации о смерти не поступало, измените строку из примера как показано ниже:
{смерть{ в $D}{ в $d}
Чтобы вместо запрета отображения выводилась пустая строка, добавьте пробел перед фигурной скобкой ' {' или вставьте закрывающую скобку в конце строки и добавьте пробел после нее
Примеры
Скобки '(' и ')' будут скрыты, если нет информации о разводе (или брак действующий):
m. $m $M {- ($v(yyyy))
Показать информацию о супруге или вообще не выводить строку, если человек не был в браке:
{$s $m(yyyy) {- $v(\(yyyy\))}}
Атрибуты
У атрибутов нет строк форматирования. Имя атрибута заключается в квадратные скобки []. Далее показан синтаксис атрибутов:
$ключ[имя атрибута] где: ключ это один из следующих символов: 'au'
Пример:
$a[Профессия] $a[Номер социального страхования] $a[Всего \$ завещал] |
Программист 7A3-29-F1C6 300руб |
События
Синтаксис событий похож на синтаксис атрибутов, ключ $e или $t и название события в квадратных скобках [], но в отличие от атрибутов у событий имеется дополнительная строка форматирования для отображения описания, даты, места, идентификатора и атрибутов, связанных с событием. Каждый из этих элементов соответственно отвечают символы 'n', 'd', 'D', 'i' и 'a' в строке форматирования. Далее показан синтаксис событий:
$ключ[название события](строка форматирования) где: ключ это один из следующих символов: 'et'
Строка форматирования событий
Строка форматирования события используется для отображения информации о событии. Далее показаны коды форматов для отображения отдельных элементов события:
| n | Описание | i | ID | |
| d | Дата события* | D | Место события* | |
| a | Атрибуты события** |
*Эти элементы могут иметь собственные строки форматирования. О форматах даты и места смотрите в разделе Строки форматирования.
**Для атрибутов в квадратных скобках [] задается имя атрибута.
Пример:
$e[Первое причастие](d(yyyy-mm-d)) $e[Бар-мицва](n< at > D) $e[Рождение](d(yyyy mm/dd) D) |
2009-11-6 Jerry's Bar Mitzah at Opas house 2007 05/23 Grandmothers house |
Пример:
$b(yyyy-Mmm-dd) $M |
то же самое, что и | $e[Рождение](d(yyyy-Mmm-dd)) $t[Брак](D) |
Заметки для атрибутов и событий
| 1 | Имена атрибутов и названия событий являются обязательными параметрами. '$a' или '$a[]' ничего не отобразит. |
| 2 | Имена атрибутов и названия событий могут содержать специальные символы. В частности, ']' и ')'. В этих случаях необходимо использовать Управляющие переменные |
Разделители
Разделители - это особый текст внутри '<' и '>' (обычно ', ' или ' - '), который отображается между двух групп, переменных, кодов форматов или текстовых блоков.
Разделители отображаются согласно следующим правилам:
- Переменная, которая ничего не содержит, не будет отображаться сама. Разделитель слева от нее удаляется.
- Если слева нет разделителя, тогда удаляется правый разделитель.
- При наличии двух разделителей рядом, левый удалится, а правый останется.
- Разделители в начале и в конце строки форматирования не отображаются.
Примеры
$s(f l s)<, >$m(yyyy)< @ >$M< - >$v(\(yyyy\)) |
При различных значениях переменных мы получим:
| Если не одна из переменных не известна | Ни один разделитель не будет отображаться |
| Если известна только одна переменная | Отобразится только эта переменная. Ни один разделитель не будет отображаться |
| Если не известно только имя супруга | Первый разделитель не будет отображаться |
| Если не известна только дата свадьбы | Первый разделитель не будет отображаться. Останется только:
Jane Doe< - >{ … }И нужно знать только дату развода, чтобы отобразился второй разделитель. |
| Если не известна только дата развода | Второй разделитель не будет отображаться |
Разделители можно размещать внутри строк форматирования:
$n(<0>T< >L<, >f< >s)
В отличие от групп, разделители не могут выходить за границы строк форматирования. Поэтому разделитель <0> никогда не будет отображаться. Независимо от того, что находится на левой стороне переменной.
Полезный пример:
{({b. $b}<, >{d. $d})}
|
При разных значениях переменных мы получим:
| Внешние скобки () отобразятся только если известна дата рождения или дата смерти | ||||||||||
| Центральный разделитель отобразится только если известны и дата рождения, и дат смерти. | ||||||||||
Далее приведены некоторые примеры отображения:
| ||||||||||
Мы никогда не увидим такие строки:
|
Назад к списку отчетов.
