Директорията: адресни книги с LaTeX и BibTeX
Original on http://www.geuz.org/directory/
Christophe Geuzaine
Версия 1.20, 22 септември 2004 г.
Изтегляне
Сегашното разпределение на директория е директория-1.20.tgz. Това разпределение съдържа както PostScript и PDF версия на документацията. Отделни файлове също са достъпни чрез CTAN сайтове в biblio / BibTeX Contrib / / директория / поддиректория. По-старите версии са все още на разположение тук. Всички въпроси, коментари или предложения? Изпрати ми електронна поща.
Съдържание
1 Въведение
2 Общо описание
2.1 Package включване и опции
2.2 Осъществяване на цитиране
2,3 bst стилове
2.4 лигавник файла полета
3 персонализиране
3.1 Размери
3.2 знамена и формати
4 Използване на двете директория и
библиография 5 Генериране на директории с хипертекстови
връзки 6 Генериране на HTML, картичка или LDIF директории
7 Пример
7.1 файла източник
7.2 Output
8 участващите
9 Версии
1 Въведение
директория 1 е макро пакет за LaTeX и BibTeX, че улеснява изграждането, поддържането и експлоатацията на адресната книга, като база данни. Тя се състои от пет стил файлове BibTeX (address.bst, phone.bst, email.bst, birthday.bst и letter.bst), предназначени да бъдат използвани във връзка с LaTeX файла directory.sty стил. В зависимост от използваните библиографските стил, пакетът има две основни приложения:
- изграждане на списък с информация (адрес, телефонен номер и т.н.) за избрани лица, фирми или места;
- включването на избраното парче на информация относно дадено лице, място или дружество, в желано от вас място в документа.
В първия случай, директорията се държи точно като стандартните библиографски стилове: Докато стандартните библиографски стилове обработват данни, свързани със книги, статии, производство и т.н., директория обработва данните, в сравнение с хора, компании или места. Например, името в заглавието на настоящото ръководство се отнася към съответните влизането в директорията, изброени в раздел 7.2. Първите четири BibTeX файлове предлагаме няколко начина да се справим с това данни.
Във втория случай, пакетът дава възможност за бита на базата данни да бъдат поставени във вашия документ. Той може например да се използва за да въведете адреса на вашия кореспондент в полето за адрес на писмо.
Четири специални стил BibTeX файлове (html.bst-адрес, имейл html.bst, адрес vcard.bst и адрес ldif.bst) също са предоставени за лесно генериране на HTML, картичка и LDIF версии на вашите директории.
2 Общо описание
2.1 Package включване и опции
В пакета е включена от обичайните \ usepackage {директория} команда в горната част на документа. Четири опции са достъпни:
- почивка:
- позволява на директорията полета, за да бъдат разбити от различни страници;
- немски:
- създава директории на немски език;
- френски:
- създава директории на френски език;
- longdates:
- щампи рожден ден датира използва месеца имена вместо номера.
Старата (преди версия 1.10) опции за форматиране сега се обработват от един и същ механизъм команда като всички други опции за персонализиране (виж раздел 3).
Директория се произвежда от директорията \ [ разширение ] { име на файл } команда, където името на файла е съкращение от името на файла лигавник (безлигавник разширение) и където незадължителен аргумент за продължаване дава, ако е необходимо, удължаване на изходния файл от BibTeX (виж раздел 4 ). Както обикновено, могат да бъдат включени множество лигавник файлове, запетая, отделяне на различни файлови имена.
2.2 Осъществяване цитиране
Един запис, цитирани в текста от \ реж. { ключови }, \ pdir { ключови } \ rdir { ключови } или \ wdir { ключови } команда, равностойни на стандарта \ цитират { ключови } команда, която се използва в ключови същия начин, както някога, отнасящи се до влизането в лигавник файл. Разликите между четирите цитиране команди ще бъде обяснено в следващия раздел. A \ nodir { ключови } команда съществува и действа точно като \ nocite { ключови } за стандартните библиографии.
2.3 bst стилове
Стилът на регистъра е избран от \ directorystyle { стил } команда, където стил е един от следните:
- адрес:
- пълен списък в директорията на всички области, които съответстват на ключовите влизане. \ реж. { ключови } команда отпечатва името на полето на влизането в документа;
- телефон за връзка:
- се показват само на телефон, клетъчни и факс полета, съответстващи на цитираните влизане в Указателя. \ реж. { ключови } команда действа по същия начин, кактос адрес стил, с изключение на това, че имената са съкратени ;
- Имейл:
- само адреси за електронна поща се показват в Указателя. \ реж. { ключови } команда действа по същия начин, както с адрес стил ;
- Рожден ден Няма попълнена дата
- се показват само на рождени дни, сортиране на записите в хронологичен ред. \ реж. { ключови } команда действа по същия начин, както с адрес стил ;
- писмо:
- актове в малко по-различен начин, отколкото предходните четири стилове. Не директория се произвежда с директорията \ команда. \ реж. { ключови } команда резултати в името на полето на ключовите влизане, които да бъдат отпечатани в документа. \ Pdir { ключови } (\ rdir { ключови } или \ wdir { ключови }) команда отпечатва името и на частен адрес (съответно пребиваване или работа) в документ в табличен начин.
2.4 лигавник полета файлове
директория определя три влизане видове: @ човек {}, @ компания {} и @ място {}. Във всички тези видове, името е единственото задължително поле, тъй като тя служи като ключ за сортиране на записите. Тук са всички налични полета, които могат да бъдат определени за всяко вписване:
@person{key,
name = "Full name(s), in standard BibTeX format",
nickname = "Nickname(s)",
birthday = "Birthday date(s), in numeric 'day month' format",
birthyear = "Birth year(s)",
p.street = "Street of private residence",
p.city = "City of private residence",
p.zip = "ZIP code of private residence",
p.state = "State of private residence",
p.country = "Country of private residence",
p.phone = "Private phone number",
p.cellular = "Private mobile phone number",
p.fax = "Private fax number",
p.email = "Private e-mail address",
p.url = "Private home page",
p.account = "Private bank account",
r.street = "Street of alternative residence",
r.city = "City of alternative residence",
r.zip = "ZIP code of alternative residence",
r.state = "State of alternative residence",
r.country = "Country of alternative residence",
r.phone = "Alternative phone number",
r.cellular = "Alternative mobile phone number",
r.fax = "Alternative fax number",
r.email = "Alternative e-mail address",
r.url = "Alternative home page",
r.account = "Alternative bank account",
w.name = "Work organization name",
w.title = "Job title",
w.street = "Street of work organization",
w.city = "City of work organization",
w.zip = "ZIP code of work organization",
w.state = "State of work organization",
w.country = "Country of work organization",
w.phone = "Work phone number",
w.cellular = "Work mobile phone number",
w.fax = "Work fax number",
w.email = "Work e-mail address",
w.url = "Work home page",
w.account = "Work bank account",
note = "Additional notes about the person",
}
@company{key,
name = "Company name",
street = "Company street",
city = "Company city",
zip = "Company ZIP code",
state = "Company state",
country = "Company country",
phone = "Company phone number",
cellular = "Company mobile phone number",
fax = "Company fax number",
email = "Company e-mail address",
url = "Company home page",
account = "Company bank account",
note = "Additional notes about the company",
}
@place{key,
name = "Place name",
street = "Place street",
city = "Place city",
zip = "Place ZIP code",
state = "Place state",
country = "Place country",
phone = "Place phone number",
cellular = "Place mobile phone number",
fax = "Place fax number",
note = "Additional notes about the place",
}
Трябва да бъде на няколко имена, прякори или рожден ден дати, разделени с "и". За обратна съвместимост, или ако е необходимо, нетрадиционен форматиране адрес на улицата, града, държавата, цип и страната области (и техните стр., Р. и вата еквиваленти) може да бъде заменен от общ адрес, p.address, r. адрес илиw.address полета. Веднага след като адресното поле се определя, всеки на улицата, града, държавата, цип или страната дефиниция поле се игнорира и форматирането в полето за адрес се пази като е.
3 персонализиране
3.1 Размери
Три нови измерения, дефиниращи отстъпа на полета ( \ dirindent и \ dirparindent ) и размера на пространството между две влизания ( \ dirsep ) са били въведени.Стойностите по подразбиране са:
\ Setlength {\ dirindent} {3em} \ Setlength {\ dirparindent} {0em} \ Setlength {\ dirsep} {3ex}
Ако искате изрично да се въведе нов параграф в поле, трябва да използвате \ dirbreak команда.
А четвъртото измерение (\ dirtablewidth) определя ширината на таблицата, който се използва за показване на полета, когато е избран писмо стил. Стойността по подразбиране е:
\ Setlength {\ dirtablewidth} {0,5 \ textwidth}
3.2 Знамена и формати
Всяка област на директория е лесно приспособима чрез преосмисляне на една от командите, обобщени в таблица 1 в края на това ръководство за потребителя (страница pageref ).
Например, за да произвежда добре оформен адрес брошури, бихте могли да се предефинира \ Dirheader команда като
\pagestyle{headings}
\renewcommand{\Dirheader}[1]
{\newpage\markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}}
(Което ще се раздели директория различни страници, с първата буква, използвана в алгоритъм за сортиране в заглавната част на всяка страница) или
\renewcommand{\Dirheader}[1]
{\item\hspace{-\dirindent}\textbf{\MakeUppercase{#1}}}
(Която ще произвежда вградени заглавия).
Когато тип поле се появява няколко пъти в запис, настройките по подразбиране се приема, същото форматиране за всеки един. За пример, има три инстанции нателефон тип поле в пълен човек влизане, т.е. p.phone, r.phone и w.phone, и \ dirphone и \ Dirphone персонализиране команди се отнасят към тези три инстанции по същия начин.
За конкретизиране на форматирането на един от тези случаи, можете да използвате специални версии на персонализиране команди, изградени чрез вмъкване на P, Rили w след \ реж. или \ Dir префикс от оригиналните команди. Например, за да персонализирате само областта на телефона в работата част, вие трябва да използвате \ dirwphone и \ Dirwphone.
За да промените форматирането на имена, трябва да редактирате BibTeX файлове стил. Например, името по подразбиране формат "Кристоф фон Geuzaine, Jr." може да бъде променена в "фон Geuzaine C., Jr." в адресните книги чрез замяна на линията
s nameptr "{ее} {В.В.} {ще} {, JJ}" format.name $ 'т: =
във файла address.bst от линията
s nameptr ", {В.В.} {ще} {f.} {, JJ}" format.name $ 'т: =
4 Използване на двете директория и библиография
От BibTeX винаги води до изходния файл на формата " име на файл. барела ", е необходимо, за да използвате и двете директория и библиография вписванията, след генериране на BBL файла в директорията, за да го преименувате с ново разширение (Например реж.) и да дам това ново разширение като незадължителен аргумент \ директория команда. Нормалната процедура могат да бъдат следвани по време на останалата част от библиографията обработка. Не забравяйте, че промяна на директорията (добавяне на влизането или укриване на една) ви принуждава да се рестартира от началото.
5 Генериране на директории с хипертекстови линкове
Можете да използвате hyperref пакет заедно с директория. Например, добавянето на следните редове в преамбюла на документа ви и използването на pdflatex ще произвежда PDF версия на вашия телефонен указател, с работни връзки за електронна поща и URL полета.
\ifx\pdfoutput\undefined\else
\usepackage{hyperref}
\newcommand\MyURL{\begingroup\Url}
\renewcommand{\Diremail}[1]{\href{mailto:#1}{\MyURL{#1}}}
\renewcommand{\Dirurl}[1]{\href{#1}{\MyURL{#1}}}
\fi
6 Генериране на HTML, картичка или директории LDIF
Четири специални файлове BibTeX стил (адрес-HTML, HTML имейл, адрес VCard и адрес ldif) позволяват лесно генериране на HTML, картичка и LDIF версии на вашите директории:
- адрес-HTML :
- Пълен списък в HTML директория на всички полета, съответстващи на ключовите влизане. Изходът форматирането е подобна на тази, произведени от латекс садрес стил ;
- имейл-HTML :
- само е-мейл адреси са показани в HTML директория;
- VCard на адрес:
- Пълен списък на картичка директория на всички полета, съответстващи на ключовите влизане.
- адрес ldif :
- Пълен списък в LDIF директория на всички области, които съответстват на ключовите влизане.
Тъй като BibTeX директно изходи барела файла в HTML, картичка или LDIF формат, без допълнително програма е необходимо да се направи HTML / картичка / LDIF преобразуване. Барела файла директно съдържа HTML / картичка / LDIF код, готови да бъдат включени в HTML документ или да бъдат внасяни в Бизнес картичка / LDIF-Aware прилагане (Address Book Apple, Microsoft Outlook, Mozilla Mail и др.).
Този метод, обаче, малко недостатък: след BibTeX’ing ви LaTeX файл, използвате LaTeX по един и същи файл (дори и с друга \ directorystyle), ще доведе до грешки, тъй като барела файл не е разбираемо от LaTeX. За да изтриете барела файл или да се наложи над съобщения за грешка (и за промяна на \ directorystyle) преди всяка последваща успешна план LaTeX.
Обработката на специални символи в HTML / картичка / LDIF директории също е малко проблематично: специални характер LaTeX последователност е изхода на начина, по който тя е в лигавник файл. Това означава например, че {\ ‘д} е отпечатана в HTML документ като {\ ‘E}, а не като é. Визитка стил предполага, ISO Latin 1 кодиране на директорията. Ако се използва кодиране в лигавник файл, изходът на LDIF ще трябва да бъдат конвертирани към UTF8. Вижте коментарите в BibTeX стил файлове за повече информация.
7 Пример
Въпреки опция, описани в раздел 4, един от най-интересен начин за използване на директория е да се изгради отделен бележник за адреси, включително няколко лигавник файлове, отнасящи се до няколко категории хора, компании или места, както в примера, показан в този документ:
\nodir{*}
\directory{family,business}
Вторият интересен начин за използване на директорията е да го използвате във вашите факсове или букви. Използването на стандарт клас LaTeX letter.cls с писмо директория стил, може например да започне писмо от следната команда (\ wdir трябва да се защити ", изд, тъй като аргумент на писмо среда е движеща се аргумент):
\begin{letter}{\protect\wdir{c.geuzaine}}
Обърнете внимание например текс и лигавник файлове (directory.tex, family.bib и business.bib) и се опитайте опциите. Изходните файлове са коментирали и лесни за персонализиране. Ще бъда много щастлив да получите предложения за подобряване на този пакет.
7.1 файла източник
Тук са четири лигавник записи, взети от family.bib и business.bib:
@Person{c.geuzaine,
name = "Christophe Geuzaine",
birthday = "06 02",
birthyear = "1973",
p.email = "geuz@geuz.org",
p.url = "http://www.geuz.org",
w.title = "Postdoctoral Scholar",
w.name = "Caltech, Applied and Computational Mathematics",
w.url = "http://www.acm.caltech.edu",
w.street = "1200 E California Blvd",
w.city = "Pasadena",
w.state = "CA",
w.zip = 91125,
w.country = "USA",
w.phone = "1 626 395 4552",
}
@Person{d.d.knu,
name = "Knudson, Daffy Duck and Bunny, Bugs and Mr. Pluto",
nickname = "gnat and gnu and pluto",
birthday = "10 02 and 05 11 and 01 01",
p.phone = "+01-(0)2-765.43.21",
p.cellular = "+01-(0)5-555.55.55",
p.account = "010-1234567-05",
r.street = "Haight Street 512",
r.zip = 80214,
r.city = "Novosibirsk",
r.country = "Gnuland",
r.phone = "+01-(0)2-876.54.32",
w.name = "University of Novosibirsk,
Department of Octopus Parthenogenesis",
}
@Company{knudsoft,
name = "The Knudsoft Company",
email = "knud@knudsoft.com",
url = "http://knudsoft.com/hole/gates.htm",
}
@Place{knudsoft:rs.2,
name = "Knudsoft (RS.2 Computer Room)",
phone = "+01-(0)2-434.23.23",
}
7.2 Изход
Резултатът от директорията \ {семейство, бизнес} команда е показано по-долу (всички записи в списъка, благодарение на \ nodir {*} команда):
директория, генерирани с адрес html.bst, имейл html.bst, адрес vcard.bst и адрес ldif.bst.
8 Автори
Много благодаря на Бернд Schandl, Робърт Уокър Съмнър, Томас Руедас и Юрген Göbel за техните предложения и корекции.
9 Версии
- 0.95
- (8 януари, 1998) Първо разпределени версия.
- 0.96
- (Jan 9, 1998) Нови документация. Въвеждане на персонализация команди. Нова подравняване механизъм в адресната и телефонен указател среда.
- 0.97
- (Jan 26, 1998) влизания на ККП и p.ccp промени за сметка и p.account.
- 0.98
- (Feb 9, 1998) нов стил letter.bst. Нови команди \ pdir, \ rdir и \ wdir, за да произвеждат в текст адресите, когато се използва с letter.bst стил. Нови вътрешни ключ поколение.
- 0.99
- (12 февруари, 1998 г.) промяна на името на старите флагове за персонализиране (\ име флаг става \ реж. име). Нови знамена: \dirnickname, \dirphone, \dirfax, \diremail, \dirurl, \diraccount и \dirand.
- 1.00
- (Мар 26, 1998) Нови HTML стилове (адрес html.bst и имейл html.bst).
- 1.01
- (Окт 26, 1998 г.) Малки корекции.
- 1.10
- (6 май, 1999 г.) майор, пренаписването на bst файлове (потискане на преките форматиране LaTeX). Определение на нови команди за персонализиране. Нов пакет глобални възможности да се раздели на директории във всички страници и да се позволи на новите страници вътре директория полета. Url.sty пакет сега е необходимо.
- 1.11
- (7 май, 1999 г.) Въвеждане на \ dirparindent.
- 1.12
- (11 май, 1999 г.) Форматиране команди могат да бъдат уточняващ Всяко подполе чрез добавяне на P, R или W след \ реж. или \ Dir префикс на оригиналната команда персонализиране. Много опростявания и малки корекции в механизъм за чупене на страница и в списъка среди.
- 1.13
- (Jun 21, 1999) Фиксирана бъг за дълги записи без празни пространства (например в URL полета).
- 1.14
- (Jun 21, 2000) По-гъвкаво определение на \ Dirheader.
- 1.15
- (Aug 28, 2000) Добавени полета за клетъчни телефони (предложен от Стефано Ferrari). Добавена е раздел обяснява как да използвате hyperref за генериране на PDF документи с хипервръзки. Актуализирано адрес на уеб сайт.
- 1.16
- (Feb 5, 2002) Добавена \ dirtablewidth да зададете ширината на полетата, когато писмото е избран стил. Потиснати разцеплението опция (предефиниране \Dirheader команда прави възможно да се постигне един и същ резултат: вижте раздел 3.2 ).
- 1.17
- (Дек 15, 2002), Ревизираната документация.
- 1.18
- (13 септември, 2003) Добавена картичка и подкрепа LDIF.
- 1.19
- (15 септември, 2003) Сплит адрес в улицата, града, държавата, цип и страната.
- 1.20
- (22 септември, 2004) Фиксирани малък бъг на VCard износ, при използване на стария адрес полета, нови немски, френски и longdates опции.
Таблица 1: Обобщение на персонализация команди
| Команда | Arg. | Обяснение | По подразбиране |
| \ Dirsymbol | 0 | В текст символ, произведени след цитиране директория | |
| \ Dirand | 0 | "Anding" низ | \ Normalfont {и} |
| \ Dirbirthday | 0 | Флаг Рожден ден на полето | $ \ Звезда $ ~ |
| \ Dirprivate | 0 | Частен областта флаг | \ Emph {P} ~~ |
| \ Dirresidence | 0 | Флаг Residence на полето | \ Emph {R} ~~ |
| \ Dirwork | 0 | Флаг работа на полето | \ Emph {w} ~~ |
| \ Dirnote | 0 | Флаг Забележка на полето | $ \ Triangleright $ ~ |
| \ Dirnickname | 0 | Флаг Псевдоним на полето | |
| \ Diraddress | 0 | Адрес полета флаг | |
| \ Dirphone * | 0 | Полета флаг по телефона | тел.: |
| \ Dircellular * | 0 | Клетъчен телефон полета флаг | мобилен: |
| \ Dirfax * | 0 | Факс полета флаг | факс: |
| \ Diremail * | 0 | Е-мейл полета флаг | |
| \ Dirurl * | 0 | Url полета флаг | |
| \ Diraccount * | 0 | Сметка полета флаг | ACC: |
| \ Dirtitle | 0 | Флаг Заглавие на полето | |
| \ Dirname | 0 | Име на поле флаг | |
| \ Dirlabel | 1 | Формат на етикета | {\ Textbf {# 1}} |
| \ Dirheader | 1 | Командване, издава за всяка нова начална буква в директория (ARG. Е първата буква, се използва в алгоритъм за сортиране) | {} |
| \ Dirbirthday | 2 | Рожден ден формат (ARG. Е денят, вторият е месец) | {\ Номер # 2} / {\ # 1} |
| \ Dirbirthyear | 1 | Година на раждане формат, когато имарожден ден поле | / {# 1} |
| \ DirbirthyearAlone | 1 | Година на раждане формат, когато няма рожден ден поле | {# 1} |
| \ Dirnickname | 1 | Прякор формат | (Известен още като \ emph {# 1}) |
| \ Diraddress * | 1 | Адрес формат | {# 1} |
| \ Dirphone * | 1 | Телефон формат | {# 1} |
| \ Dircellular * | 1 | Формат на мобилен телефон | {# 1} |
| \ Dirfax * | 1 | Факс формат | {# 1} |
| \ Diremail * | 1 | Е-мейл формат | \ URL {# 1} |
| \ Dirurl * | 1 | Url формат | \ URL {# 1} |
| \ Diraccount * | 1 | Сметка формат | \ URL {# 1} |
| \ Dirtitle | 1 | Заглавие формат | {# 1} |
| \ Dirname | 1 | Име формат | {# 1} |
| \ Dirnote | 1 | Забележка формат | {# 1} |
* команди, отбелязани със звездичка, също съществуват в три други версии, които контролират самостоятелно частно, части за пребиваване и работа (напр. \ dirphone може да бъде уточняващ \ dirpphone, \ dirrphone и \ dirwphone).
Бележки под линия:
1 директория се разпределя по проекта Public License латекс (LPPL) от версия 1.11.
Обратно към geuz.org
