citeproc 1.0.3 → 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +19 -13
- data/Rakefile +7 -3
- data/features/affix/InterveningEmpty.feature +52 -0
- data/features/affix/PrefixFullCitationTextOnly.feature +41 -0
- data/features/affix/PrefixWithDecorations.feature +41 -0
- data/features/affix/SuppressDelimiterCharsWhenFullStopInSuffix.feature +410 -0
- data/features/affix/TextNodeWithMacro.feature +40 -0
- data/features/affix/WithCommas.feature +987 -0
- data/features/affix/WordProcessorAffixNoSpace.feature +41 -0
- data/features/api/SuppressAuthor.feature +48 -0
- data/features/api/UpdateItemsDelete.feature +44 -0
- data/features/api/UpdateItemsDeleteDecrementsByCiteDisambiguation.feature +46 -0
- data/features/api/UpdateItemsReshuffle.feature +44 -0
- data/features/bibheader/EntryspacingDefaultValueOne.feature +37 -0
- data/features/bibheader/EntryspacingExplicitValueZero.feature +38 -0
- data/features/bibheader/SecondFieldAlign.feature +38 -0
- data/features/bibheader/SecondFieldAlignWithAuthor.feature +40 -0
- data/features/bibheader/SecondFieldAlignWithNumber.feature +44 -0
- data/features/bibsection/Exclude.feature +47 -0
- data/features/bibsection/Include.feature +47 -0
- data/features/bibsection/Quash.feature +48 -0
- data/features/bibsection/Select.feature +47 -0
- data/features/bugreports/Abnt.feature +59 -0
- data/features/bugreports/AccidentalAllCaps.feature +813 -0
- data/features/bugreports/AllCapsLeakage.feature +818 -0
- data/features/bugreports/ApostropheOnParticle.feature +35 -0
- data/features/bugreports/AsaSpacing.feature +49 -0
- data/features/bugreports/AsmJournals.feature +153 -0
- data/features/bugreports/AuthorYear.feature +343 -0
- data/features/bugreports/AutomaticallyDeleteItemsFails.feature +154 -0
- data/features/bugreports/BadCitationUpdate.feature +39 -0
- data/features/bugreports/BrokenInstitutionalName.feature +390 -0
- data/features/bugreports/ChicagoAuthorDateLooping.feature +388 -0
- data/features/bugreports/ChineseCharactersFamilyOnlyPluralLabel.feature +36 -0
- data/features/bugreports/CitationSortsWithEtAl.feature +74 -0
- data/features/bugreports/CollapseFailure.feature +72 -0
- data/features/bugreports/ContainerTitleShort.feature +45 -0
- data/features/bugreports/ContentPunctuationDuplicate1.feature +40 -0
- data/features/bugreports/ContextualPluralWithMainItemFields.feature +34 -0
- data/features/bugreports/CreepingAddNames.feature +223 -0
- data/features/bugreports/DelimiterBug.feature +984 -0
- data/features/bugreports/DelimitersOnLocator.feature +322 -0
- data/features/bugreports/DemoPageFullCiteCruftOnSubsequent.feature +711 -0
- data/features/bugreports/DisambiguationAddNames.feature +233 -0
- data/features/bugreports/DisambiguationAddNamesBibliography.feature +235 -0
- data/features/bugreports/DroppingGroupDelimiterSpace.feature +37 -0
- data/features/bugreports/DuplicateSpaces.feature +151 -0
- data/features/bugreports/DuplicateSpaces2.feature +333 -0
- data/features/bugreports/DuplicateSpaces3.feature +200 -0
- data/features/bugreports/DuplicateTerminalPunctuationInBibliography.feature +227 -0
- data/features/bugreports/EmptyIfMatchNoneFail.feature +38 -0
- data/features/bugreports/EtAlSubsequent.feature +41 -0
- data/features/bugreports/FourAndFour.feature +715 -0
- data/features/bugreports/FrenchApostrophe.feature +34 -0
- data/features/bugreports/GreekStyleProblems.feature +1201 -0
- data/features/bugreports/GreekStyleTwoEditors.feature +1201 -0
- data/features/bugreports/IeeePunctuation.feature +151 -0
- data/features/bugreports/LabelsOutOfPlace.feature +715 -0
- data/features/bugreports/MovePunctuationInsideQuotesForLocator.feature +714 -0
- data/features/bugreports/NoEventInNestedMacroWithOldProcessor.feature +120 -0
- data/features/bugreports/NoTitle.feature +346 -0
- data/features/bugreports/NumberAffixEscape.feature +35 -0
- data/features/bugreports/NumberInMacroWithVerticalAlign.feature +36 -0
- data/features/bugreports/NumericStyleFirstRefMultipleCiteFailure.feature +148 -0
- data/features/bugreports/OldMhraDisambiguationFailure.feature +411 -0
- data/features/bugreports/ProcessorHang1.feature +209 -0
- data/features/bugreports/SingleQuote.feature +151 -0
- data/features/bugreports/SingletonIfMatchNoneFail.feature +38 -0
- data/features/bugreports/SortSecondaryKey.feature +233 -0
- data/features/bugreports/SortSecondaryKeyBibliography.feature +235 -0
- data/features/bugreports/SortedIeeeItalicsFail.feature +296 -0
- data/features/bugreports/ThesisUniversityAppearsTwice.feature +715 -0
- data/features/bugreports/TitleCase.feature +33 -0
- data/features/bugreports/TwoCitesPlusOneBackref.feature +963 -0
- data/features/bugreports/TwoFullStops.feature +394 -0
- data/features/bugreports/UndefinedInName.feature +199 -0
- data/features/bugreports/UndefinedInName2.feature +184 -0
- data/features/bugreports/UndefinedInName3.feature +351 -0
- data/features/bugreports/UndefinedNotString.feature +144 -0
- data/features/bugreports/UndefinedStr.feature +151 -0
- data/features/bugreports/UnisaHarvardInitialization.feature +62 -0
- data/features/bugreports/YearSuffixInHarvard1.feature +205 -0
- data/features/bugreports/YearSuffixLingers.feature +55 -0
- data/features/bugreports/disambiguate.feature +343 -0
- data/features/bugreports/ikeyOne.feature +277 -0
- data/features/bugreports/parenthesis.feature +333 -0
- data/features/bugreports/parseName.feature +46 -0
- data/features/bugreports/undefinedCrash.feature +150 -0
- data/features/collapse/AuthorCollapse.feature +41 -0
- data/features/collapse/AuthorCollapseDifferentAuthorsOneWithEtAl.feature +43 -0
- data/features/collapse/AuthorCollapseNoDate.feature +41 -0
- data/features/collapse/AuthorCollapseNoDateSorted.feature +45 -0
- data/features/collapse/CitationNumberRangesInsert.feature +39 -0
- data/features/collapse/CitationNumberRangesMixed.feature +39 -0
- data/features/collapse/CitationNumberRangesMixed2.feature +39 -0
- data/features/collapse/CitationNumberRangesMixed3.feature +39 -0
- data/features/collapse/CitationNumberRangesOneOnly.feature +41 -0
- data/features/collapse/CitationNumberRangesWithAffixes.feature +35 -0
- data/features/collapse/CitationNumberRangesWithAffixesGrouped.feature +51 -0
- data/features/collapse/CitationNumberRangesWithAffixesGroupedLocator.feature +51 -0
- data/features/collapse/CitationNumberRangesWithAffixesNoCollapse.feature +36 -0
- data/features/collapse/NumericDuplicate.feature +37 -0
- data/features/collapse/NumericDuplicate2.feature +34 -0
- data/features/collapse/TrailingDelimiter.feature +57 -0
- data/features/collapse/YearSuffixCollapse.feature +46 -0
- data/features/collapse/YearSuffixCollapseNoRange.feature +46 -0
- data/features/collapse/YearSuffixCollapseNoYearSuffixDelimiter.feature +45 -0
- data/features/collapse/YearSuffixImplicitCollapseNoYearSuffixDelimiter.feature +44 -0
- data/features/condition/EmptyDate.feature +42 -0
- data/features/condition/EmptyIsNumericFalse.feature +40 -0
- data/features/condition/EmptyIsUncertainDateFalse.feature +40 -0
- data/features/condition/EmptyShortTitleFalse.feature +40 -0
- data/features/condition/FirstNullAny.feature +38 -0
- data/features/condition/IsNumeric.feature +49 -0
- data/features/condition/LocatorIsFalse.feature +50 -0
- data/features/condition/MatchAll.feature +43 -0
- data/features/condition/NameAndTextVars.feature +56 -0
- data/features/condition/NumberIsNumeric.feature +40 -0
- data/features/condition/NumeralIsNumeric.feature +40 -0
- data/features/condition/NumeralWithTextIsNumeric.feature +40 -0
- data/features/condition/RefTypeBranching.feature +119 -0
- data/features/condition/SingletonIfMatchNone.feature +41 -0
- data/features/condition/TextIsNotNumeric.feature +40 -0
- data/features/condition/VariableAll.feature +41 -0
- data/features/condition/VariableAny.feature +41 -0
- data/features/condition/VariableNone.feature +41 -0
- data/features/date/Accessed.feature +33 -0
- data/features/date/DateAD.feature +37 -0
- data/features/date/DateBC.feature +37 -0
- data/features/date/DateNoDateNoTest.feature +37 -0
- data/features/date/DateNoDateWithTest.feature +45 -0
- data/features/date/DayOrdinalDayOneOnly.feature +44 -0
- data/features/date/IgnoreNonexistentSort.feature +37 -0
- data/features/date/InPress.feature +38 -0
- data/features/date/January.feature +33 -0
- data/features/date/KeyVariable.feature +46 -0
- data/features/date/LiteralFailGracefullyIfNoValue.feature +38 -0
- data/features/date/LocalizedDateFormats-af-ZA.feature +57 -0
- data/features/date/LocalizedDateFormats-ar-AR.feature +57 -0
- data/features/date/LocalizedDateFormats-bg-BG.feature +57 -0
- data/features/date/LocalizedDateFormats-ca-AD.feature +57 -0
- data/features/date/LocalizedDateFormats-cs-CZ.feature +57 -0
- data/features/date/LocalizedDateFormats-da-DK.feature +57 -0
- data/features/date/LocalizedDateFormats-de-AT.feature +57 -0
- data/features/date/LocalizedDateFormats-de-CH.feature +57 -0
- data/features/date/LocalizedDateFormats-de-DE.feature +57 -0
- data/features/date/LocalizedDateFormats-el-GR.feature +57 -0
- data/features/date/LocalizedDateFormats-en-US.feature +57 -0
- data/features/date/LocalizedDateFormats-es-ES.feature +57 -0
- data/features/date/LocalizedDateFormats-et-EE.feature +57 -0
- data/features/date/LocalizedDateFormats-fr-FR.feature +57 -0
- data/features/date/LocalizedDateFormats-he-IL.feature +57 -0
- data/features/date/LocalizedDateFormats-hu-HU.feature +57 -0
- data/features/date/LocalizedDateFormats-is-IS.feature +57 -0
- data/features/date/LocalizedDateFormats-it-IT.feature +57 -0
- data/features/date/LocalizedDateFormats-ja-JP.feature +57 -0
- data/features/date/LocalizedDateFormats-kh-KH.feature +46 -0
- data/features/date/LocalizedDateFormats-ko-KR.feature +57 -0
- data/features/date/LocalizedDateFormats-mn-MN.feature +57 -0
- data/features/date/LocalizedDateFormats-nb-NO.feature +57 -0
- data/features/date/LocalizedDateFormats-nl-NL.feature +57 -0
- data/features/date/LocalizedDateFormats-pl-PL.feature +57 -0
- data/features/date/LocalizedDateFormats-pt-BR.feature +57 -0
- data/features/date/LocalizedDateFormats-pt-PT.feature +57 -0
- data/features/date/LocalizedDateFormats-ro-RO.feature +57 -0
- data/features/date/LocalizedDateFormats-ru-RU.feature +57 -0
- data/features/date/LocalizedDateFormats-sk-SK.feature +57 -0
- data/features/date/LocalizedDateFormats-sl-SL.feature +57 -0
- data/features/date/LocalizedDateFormats-sr-RS.feature +57 -0
- data/features/date/LocalizedDateFormats-sv-SE.feature +57 -0
- data/features/date/LocalizedDateFormats-th-TH.feature +57 -0
- data/features/date/LocalizedDateFormats-tr-TR.feature +57 -0
- data/features/date/LocalizedDateFormats-uk-UA.feature +57 -0
- data/features/date/LocalizedDateFormats-vi-VN.feature +57 -0
- data/features/date/LocalizedDateFormats-zh-CN.feature +57 -0
- data/features/date/LocalizedDateFormats-zh-TW.feature +57 -0
- data/features/date/LocalizedNumericDefault.feature +33 -0
- data/features/date/LocalizedNumericDefaultMissingDay.feature +33 -0
- data/features/date/LocalizedNumericDefaultWithAffixes.feature +33 -0
- data/features/date/LocalizedNumericYear.feature +33 -0
- data/features/date/LocalizedNumericYearMonth.feature +33 -0
- data/features/date/LocalizedNumericYearRange.feature +33 -0
- data/features/date/LocalizedNumericYearWithAffixes.feature +33 -0
- data/features/date/LocalizedTextDefault.feature +33 -0
- data/features/date/LocalizedTextDefaultMissingDay.feature +33 -0
- data/features/date/LocalizedTextDefaultWithAffixes.feature +33 -0
- data/features/date/LocalizedTextInStyleLocaleWithTextCase.feature +42 -0
- data/features/date/LocalizedTextMonthFormOverride.feature +35 -0
- data/features/date/LocalizedTextYear.feature +33 -0
- data/features/date/LocalizedTextYearMonth.feature +33 -0
- data/features/date/LocalizedTextYearWithAffixes.feature +33 -0
- data/features/date/LocalizedWithInStyleFormatting.feature +35 -0
- data/features/date/LoneJapaneseMonth.feature +33 -0
- data/features/date/LongMonth.feature +37 -0
- data/features/date/LopsidedDataYearSuffixCollapse.feature +43 -0
- data/features/date/MaskNonexistentWithCondition.feature +42 -0
- data/features/date/NegativeDateSort.feature +40 -0
- data/features/date/NegativeDateSortViaMacro.feature +43 -0
- data/features/date/NegativeDateSortViaMacroOnYearMonthOnly.feature +53 -0
- data/features/date/NoDate.feature +45 -0
- data/features/date/NonexistentSortReverseBibliography.feature +47 -0
- data/features/date/NonexistentSortReverseCitation.feature +37 -0
- data/features/date/OtherAlone.feature +37 -0
- data/features/date/OtherWithDate.feature +37 -0
- data/features/date/RawParseSimpleDate.feature +37 -0
- data/features/date/RawSeasonRange1.feature +33 -0
- data/features/date/RawSeasonRange2.feature +33 -0
- data/features/date/RawSeasonRange3.feature +33 -0
- data/features/date/SeasonSubstituteInGroup.feature +38 -0
- data/features/date/SortEmptyDatesBibliography.feature +53 -0
- data/features/date/SortEmptyDatesCitation.feature +42 -0
- data/features/date/String.feature +36 -0
- data/features/date/TextFormFulldateDayRange.feature +37 -0
- data/features/date/TextFormFulldateMonthRange.feature +37 -0
- data/features/date/TextFormFulldateYearRange.feature +37 -0
- data/features/date/TextFormMonthdateMonthRange.feature +37 -0
- data/features/date/TextFormMonthdateYearRange.feature +37 -0
- data/features/date/TextFormYeardateYearRange.feature +37 -0
- data/features/date/TextFormYeardateYearRangeOpen.feature +37 -0
- data/features/date/Uncertain.feature +42 -0
- data/features/date/VariousInvalidDates.feature +37 -0
- data/features/date/YearSuffixDelimiter.feature +44 -0
- data/features/date/YearSuffixImplicitWithNoDate.feature +54 -0
- data/features/date/YearSuffixImplicitWithNoDateOneOnly.feature +54 -0
- data/features/date/YearSuffixWithNoDate.feature +54 -0
- data/features/decorations/AndTermUnaffectedByNameDecorations.feature +38 -0
- data/features/decorations/Baseline.feature +48 -0
- data/features/decorations/NestedQuotes.feature +33 -0
- data/features/decorations/NestedQuotesInnerReverse.feature +33 -0
- data/features/decorations/NoNormalWithoutDecoration.feature +41 -0
- data/features/decorations/SimpleFlipFlop.feature +33 -0
- data/features/decorations/SimpleQuotes.feature +33 -0
- data/features/disambiguate/AddNamesFailure.feature +43 -0
- data/features/disambiguate/AddNamesFailureWithAddGivenname.feature +44 -0
- data/features/disambiguate/AddNamesSuccess.feature +43 -0
- data/features/disambiguate/AllNamesBaseNameCountOnFailureIfYearSuffixAvailable.feature +55 -0
- data/features/disambiguate/AllNamesGenerally.feature +44 -0
- data/features/disambiguate/AllNamesSimpleSequence.feature +42 -0
- data/features/disambiguate/AllNamesWithInitialsGenerally.feature +44 -0
- data/features/disambiguate/AndreaEg1a.feature +47 -0
- data/features/disambiguate/AndreaEg1b.feature +48 -0
- data/features/disambiguate/AndreaEg1c.feature +47 -0
- data/features/disambiguate/AndreaEg2.feature +49 -0
- data/features/disambiguate/AndreaEg3.feature +50 -0
- data/features/disambiguate/AndreaEg4.feature +52 -0
- data/features/disambiguate/AndreaEg5.feature +53 -0
- data/features/disambiguate/BasedOnEtAlSubsequent.feature +44 -0
- data/features/disambiguate/BasedOnSubsequentFormWithBackref.feature +63 -0
- data/features/disambiguate/BasedOnSubsequentFormWithLocator.feature +67 -0
- data/features/disambiguate/ByCiteBaseNameCountOnFailureIfYearSuffixAvailable.feature +47 -0
- data/features/disambiguate/ByCiteDisambiguateCondition.feature +54 -0
- data/features/disambiguate/ByCiteGivennameExpandCrossNestedNames.feature +40 -0
- data/features/disambiguate/ByCiteGivennameNoShortFormInitializeWith.feature +39 -0
- data/features/disambiguate/ByCiteGivennameShortFormInitializeWith.feature +40 -0
- data/features/disambiguate/ByCiteGivennameShortFormNoInitializeWith.feature +39 -0
- data/features/disambiguate/ByCiteIncremental1.feature +355 -0
- data/features/disambiguate/ByCiteIncremental2.feature +352 -0
- data/features/disambiguate/ByCiteIsDefault.feature +250 -0
- data/features/disambiguate/ByCiteMinimalGivennameExpandMinimalNames.feature +48 -0
- data/features/disambiguate/ByCiteRetainNamesOnFailureIfYearSuffixNotAvailable.feature +46 -0
- data/features/disambiguate/ByCiteTwoAuthorsSameCite.feature +38 -0
- data/features/disambiguate/ByCiteTwoAuthorsSameFamilyName.feature +44 -0
- data/features/disambiguate/CitationLabelDefault.feature +34 -0
- data/features/disambiguate/CitationLabelInData.feature +34 -0
- data/features/disambiguate/DifferentSpacingInInitials.feature +40 -0
- data/features/disambiguate/DisambiguateTrueAndYearSuffixOne.feature +220 -0
- data/features/disambiguate/DisambiguateTrueAndYearSuffixTwo.feature +220 -0
- data/features/disambiguate/DisambiguateWithThree.feature +48 -0
- data/features/disambiguate/DisambiguateWithThree2.feature +91 -0
- data/features/disambiguate/DisambiguationHang.feature +48 -0
- data/features/disambiguate/ExtraTextCitation.feature +44 -0
- data/features/disambiguate/FailWithYearSuffix.feature +390 -0
- data/features/disambiguate/FamilyNameOnly.feature +43 -0
- data/features/disambiguate/HonorFullnameInBibliography.feature +49 -0
- data/features/disambiguate/ImplicitYearSuffixOnceOnly.feature +56 -0
- data/features/disambiguate/IncrementalExtraText.feature +55 -0
- data/features/disambiguate/InitializeWithButNoDisambiguation.feature +292 -0
- data/features/disambiguate/LastOnlyFailWithByCite.feature +49 -0
- data/features/disambiguate/NoTextElementUsesYearSuffixVariable.feature +39 -0
- data/features/disambiguate/PrimaryNameGenerally.feature +42 -0
- data/features/disambiguate/PrimaryNameWithInitialsLimitedToPrimary.feature +46 -0
- data/features/disambiguate/SetsOfNames.feature +205 -0
- data/features/disambiguate/SkipAccessedYearSuffix.feature +258 -0
- data/features/disambiguate/ThreeNoAuthorNoTitleEntries.feature +63 -0
- data/features/disambiguate/ToInitialOnly.feature +39 -0
- data/features/disambiguate/Trigraph.feature +36 -0
- data/features/disambiguate/YearCollapseWithInstitution.feature +51 -0
- data/features/disambiguate/YearSuffixAndSort.feature +50 -0
- data/features/disambiguate/YearSuffixAtTwoLevels.feature +45 -0
- data/features/disambiguate/YearSuffixFiftyTwoEntries.feature +48 -0
- data/features/disambiguate/YearSuffixFiftyTwoEntriesByCite.feature +48 -0
- data/features/disambiguate/YearSuffixMacroSameYearExplicit.feature +45 -0
- data/features/disambiguate/YearSuffixMacroSameYearImplicit.feature +42 -0
- data/features/disambiguate/YearSuffixMidInsert.feature +391 -0
- data/features/disambiguate/YearSuffixMixedDates.feature +52 -0
- data/features/disambiguate/YearSuffixTwoPairsBibliography.feature +63 -0
- data/features/disambiguate/YearSuffixTwoPairsFirstNameBibliography.feature +65 -0
- data/features/disambiguate/YearSuffixTwoPairsFullNamesBibliography.feature +63 -0
- data/features/disambiguate/YearSuffixWithEtAlSubequent.feature +51 -0
- data/features/disambiguate/YearSuffixWithMixedCreatorTypes.feature +53 -0
- data/features/discretionary/AuthorDateAuthorOnlyThenSuppressAuthor.feature +46 -0
- data/features/discretionary/AuthorOnly.feature +42 -0
- data/features/discretionary/CitationNumberAuthorOnlyThenSuppressAuthor.feature +41 -0
- data/features/discretionary/CitationNumberSuppressAuthor.feature +40 -0
- data/features/discretionary/SuppressAuthorSolo.feature +45 -0
- data/features/discretionary/SuppressEditorSolo.feature +45 -0
- data/features/discretionary/SuppressEditorSubstitute.feature +45 -0
- data/features/discretionary/SuppressMultipleAuthors.feature +45 -0
- data/features/display/AuthorAsHeading.feature +80 -0
- data/features/display/DisplayBlock.feature +54 -0
- data/features/display/SecondFieldAlignClone.feature +65 -0
- data/features/display/SecondFieldAlignMigratePunctuation.feature +154 -0
- data/features/etal/ShortFormOfName.feature +38 -0
- data/features/etal/UseZeroFirst.feature +47 -0
- data/features/flipflop/Apostrophes.feature +1064 -0
- data/features/flipflop/BoldfaceNodeLevelMarkup.feature +33 -0
- data/features/flipflop/ItalicsFlipped.feature +35 -0
- data/features/flipflop/ItalicsSimple.feature +39 -0
- data/features/flipflop/ItalicsWithOk.feature +48 -0
- data/features/flipflop/ItalicsWithOkAndTextcase.feature +48 -0
- data/features/flipflop/LeadingSingleQuote.feature +33 -0
- data/features/flipflop/QuotesInFieldNotOnNode.feature +33 -0
- data/features/flipflop/QuotesNodeLevelMarkup.feature +40 -0
- data/features/flipflop/SingleQuotesOnItalics.feature +33 -0
- data/features/flipflop/SmallCaps.feature +36 -0
- data/features/flipflop/StartingApostrophe.feature +33 -0
- data/features/form/TitleShort.feature +33 -0
- data/features/form/TitleShortNoLong.feature +33 -0
- data/features/form/TitleTestNoLongFalse.feature +40 -0
- data/features/fullstyles/ABdNT.feature +675 -0
- data/features/fullstyles/APA.feature +361 -0
- data/features/fullstyles/ChicagoArticleTitleQuestion.feature +390 -0
- data/features/fullstyles/ChicagoAuthorDateSimple.feature +394 -0
- data/features/fullstyles/ChicagoNoteWithBibliographyWithPublisher.feature +716 -0
- data/features/group/ComplexNesting.feature +397 -0
- data/features/group/ShortOutputOnly.feature +35 -0
- data/features/group/SuppressTermWhenNoOutputFromPartialDate.feature +39 -0
- data/features/group/SuppressValueWithEmptySubgroup.feature +46 -0
- data/features/group/SuppressWithEmptyNestedDateNode.feature +202 -0
- data/features/integration/CitationSort.feature +50 -0
- data/features/integration/CitationSortTwice.feature +51 -0
- data/features/integration/CrossCitationIbidOnInsert.feature +82 -0
- data/features/integration/DeleteName.feature +36 -0
- data/features/integration/DisambiguateAddGivenname1.feature +45 -0
- data/features/integration/DisambiguateAddGivenname2.feature +45 -0
- data/features/integration/DuplicateItem.feature +45 -0
- data/features/integration/DuplicateItem2.feature +45 -0
- data/features/integration/FirstReferenceNoteNumberPositionChange.feature +62 -0
- data/features/integration/IbidOnInsert.feature +50 -0
- data/features/integration/IbidWithDifferentLocators.feature +59 -0
- data/features/integration/SimpleFirstReferenceNoteNumber.feature +61 -0
- data/features/integration/SimpleIbid.feature +57 -0
- data/features/integration/SubsequentWhenInterveningFootnote.feature +51 -0
- data/features/integration/YearSuffixOnOffOn.feature +46 -0
- data/features/label/CollapsedPageNumberPluralDetection.feature +42 -0
- data/features/label/EditorTranslator1.feature +556 -0
- data/features/label/EmptyLabelVanish.feature +43 -0
- data/features/label/ImplicitForm.feature +36 -0
- data/features/label/NoFirstCharCapWithInTextClass.feature +38 -0
- data/features/label/NonexistentNameVariableLabel.feature +36 -0
- data/features/label/PageWithEmbeddedLabel.feature +35 -0
- data/features/label/PluralNumberOfVolumes.feature +36 -0
- data/features/label/PluralPagesWithAlphaPrefix.feature +37 -0
- data/features/locale/EffectOfStyleDefinition.feature +38 -0
- data/features/locale/EmptyDate.feature +41 -0
- data/features/locale/EmptyPlusOverrideDate.feature +48 -0
- data/features/locale/EmptyPlusOverrideStyleOpt.feature +39 -0
- data/features/locale/EmptyPlusOverrideTerm.feature +44 -0
- data/features/locale/EmptyStyleOpt.feature +36 -0
- data/features/locale/EmptyTerm.feature +39 -0
- data/features/locale/ForceEmptyAndOthersTerm.feature +41 -0
- data/features/locale/ForceEmptyEtAlTerm.feature +40 -0
- data/features/locale/NonExistentLocaleDef.feature +48 -0
- data/features/locale/OverloadWithEmptyString.feature +46 -0
- data/features/locale/PageRangeDelimiterTermDefined.feature +38 -0
- data/features/locale/PageRangeDelimiterTermFrenchUndef.feature +34 -0
- data/features/locale/PageRangeDelimiterTermUndefined.feature +33 -0
- data/features/locale/SpecificDate.feature +41 -0
- data/features/locale/SpecificStyleOpt.feature +36 -0
- data/features/locale/SpecificTerm.feature +39 -0
- data/features/locale/TermInSort.feature +77 -0
- data/features/locale/TitleCaseEmptyLangEmptyLocale.feature +33 -0
- data/features/locale/TitleCaseEmptyLangNonEnglishLocale.feature +34 -0
- data/features/locale/TitleCaseEnglishLangUpperEmptyLocale.feature +33 -0
- data/features/locale/TitleCaseGarbageLangEmptyLocale.feature +33 -0
- data/features/locale/TitleCaseGarbageLangEnglishLocale.feature +34 -0
- data/features/locale/TitleCaseGarbageLangNonEnglishLocale.feature +34 -0
- data/features/locale/TitleCaseNonEnglishLangUpperEmptyLocale.feature +33 -0
- data/features/locale/UnknownTerm.feature +34 -0
- data/features/locator/SimpleLocators.feature +46 -0
- data/features/locator/TermSelection.feature +40 -0
- data/features/locator/TrickyEntryForPlurals.feature +40 -0
- data/features/locator/WorkaroundTestForSubVerbo.feature +47 -0
- data/features/magic/AllowRepeatDateRenderings.feature +47 -0
- data/features/magic/CapitalizeFirstOccurringNameParticle.feature +35 -0
- data/features/magic/CapitalizeFirstOccurringTerm.feature +33 -0
- data/features/magic/CitationLabelInBibliography.feature +234 -0
- data/features/magic/CitationLabelInCitation.feature +224 -0
- data/features/magic/EntrySpacingDouble.feature +52 -0
- data/features/magic/HangingIndent.feature +52 -0
- data/features/magic/ImplicitYearSuffixDelimiter.feature +38 -0
- data/features/magic/ImplicitYearSuffixExplicitDelimiter.feature +52 -0
- data/features/magic/LineSpacingDouble.feature +52 -0
- data/features/magic/LineSpacingTripleStretch.feature +52 -0
- data/features/magic/NameParticle.feature +35 -0
- data/features/magic/NameSuffixNoComma.feature +35 -0
- data/features/magic/NameSuffixWithComma.feature +35 -0
- data/features/magic/NumberRangeEnglish.feature +33 -0
- data/features/magic/NumberRangeFrench.feature +34 -0
- data/features/magic/PunctuationInQuoteDefaultEnglishDelimiter.feature +41 -0
- data/features/magic/PunctuationInQuoteDefaultEnglishSuffix.feature +39 -0
- data/features/magic/PunctuationInQuoteDelimiterTrue.feature +44 -0
- data/features/magic/PunctuationInQuoteFalse.feature +44 -0
- data/features/magic/PunctuationInQuoteFalseSuppressExtra.feature +37 -0
- data/features/magic/PunctuationInQuoteNested.feature +47 -0
- data/features/magic/PunctuationInQuoteSuffixTrue.feature +42 -0
- data/features/magic/PunctuationInQuoteTrueSuppressExtra.feature +37 -0
- data/features/magic/QuotesAndBraces1.feature +36 -0
- data/features/magic/QuotesAndBraces2.feature +36 -0
- data/features/magic/SecondFieldAlign.feature +57 -0
- data/features/magic/StripPeriodsExcludeAffixes.feature +44 -0
- data/features/magic/StripPeriodsFalse.feature +34 -0
- data/features/magic/StripPeriodsTrue.feature +34 -0
- data/features/magic/StripPeriodsTrueShortForm.feature +46 -0
- data/features/magic/SubsequentAuthorSubstitute.feature +55 -0
- data/features/magic/SubsequentAuthorSubstituteNotFooled.feature +497 -0
- data/features/magic/SubsequentAuthorSubstituteOfTitleField.feature +55 -0
- data/features/magic/SuperscriptChars.feature +241 -0
- data/features/magic/SuppressDuplicateVariableRendering.feature +43 -0
- data/features/magic/SuppressExtraTerminalPunctuationAfterTerm.feature +410 -0
- data/features/magic/SuppressLayoutDelimiterIfPrefixComma.feature +34 -0
- data/features/magic/TermCapitalizationWithPrefix.feature +49 -0
- data/features/magic/TextRangeEnglish.feature +33 -0
- data/features/magic/TextRangeFrench.feature +34 -0
- data/features/name/AfterInvertedName.feature +42 -0
- data/features/name/AllCapsInitialsUntouched.feature +46 -0
- data/features/name/AndTextDelimiterPrecedesLastAlways.feature +35 -0
- data/features/name/ArticularNameAsSortOrder.feature +35 -0
- data/features/name/ArticularPlain.feature +35 -0
- data/features/name/ArticularShortForm.feature +35 -0
- data/features/name/ArticularShortFormCommaSuffix.feature +35 -0
- data/features/name/ArticularWithComma.feature +35 -0
- data/features/name/ArticularWithCommaNameAsSortOrder.feature +35 -0
- data/features/name/Asian.feature +35 -0
- data/features/name/AsianGlyphs.feature +35 -0
- data/features/name/AuthorCount.feature +39 -0
- data/features/name/AuthorCountWithMultipleVariables.feature +37 -0
- data/features/name/AuthorCountWithSameVarContentAndCombinedTermFail.feature +45 -0
- data/features/name/AuthorCountWithSameVarContentAndCombinedTermSucceed.feature +45 -0
- data/features/name/AuthorEditorCount.feature +37 -0
- data/features/name/CelticClanName.feature +35 -0
- data/features/name/CeltsAndToffsCrowdedInitials.feature +35 -0
- data/features/name/CeltsAndToffsNoHyphens.feature +36 -0
- data/features/name/CeltsAndToffsSpacedInitials.feature +35 -0
- data/features/name/CeltsAndToffsWithHyphens.feature +36 -0
- data/features/name/CollapseRoleLabels.feature +46 -0
- data/features/name/Delimiter.feature +37 -0
- data/features/name/EditorTranslatorBoth.feature +189 -0
- data/features/name/EditorTranslatorSameEmptyTerm.feature +41 -0
- data/features/name/EditorTranslatorSameWithTerm.feature +36 -0
- data/features/name/EditorTranslatorWithTranslatorOnly.feature +35 -0
- data/features/name/EditorTranslatorWithTranslatorOnlyBib.feature +189 -0
- data/features/name/EtAlUseLast.feature +47 -0
- data/features/name/FormattingOfParticles.feature +37 -0
- data/features/name/GreekSimple.feature +35 -0
- data/features/name/HebrewAnd.feature +40 -0
- data/features/name/HierarchicalDelimiter.feature +35 -0
- data/features/name/HyphenatedFirstName.feature +35 -0
- data/features/name/HyphenatedNonDroppingParticle1.feature +51 -0
- data/features/name/HyphenatedNonDroppingParticle2.feature +51 -0
- data/features/name/InheritAttributesEtAlStyle.feature +37 -0
- data/features/name/Institution.feature +35 -0
- data/features/name/InstitutionDecoration.feature +45 -0
- data/features/name/LabelAfterPlural.feature +36 -0
- data/features/name/LabelAfterPluralDecorations.feature +38 -0
- data/features/name/LongAbbreviation.feature +35 -0
- data/features/name/LowercaseSurnameSuffix.feature +35 -0
- data/features/name/MixedFormatsInitialSortOrderAllWithDecorationsEtAl.feature +39 -0
- data/features/name/MixedFormatsInitialSortOrderFirstWithDecorationsEtAl.feature +39 -0
- data/features/name/MixedFormatsInitialsWithDecorationsEtAl.feature +39 -0
- data/features/name/MixedFormatsPrimaryDecorations.feature +37 -0
- data/features/name/MixedFormatsWithDecorationsEtAl.feature +39 -0
- data/features/name/MixedFormatsWithDecorationsPlusAlternateEtAlDecorations.feature +40 -0
- data/features/name/MixedFormatsWithDecorationsPlusEtAlDecorations.feature +40 -0
- data/features/name/MultipleLiteral.feature +35 -0
- data/features/name/NoNameNode.feature +33 -0
- data/features/name/NonDroppingParticleDefault.feature +35 -0
- data/features/name/OnlyFamilyname.feature +35 -0
- data/features/name/OnlyGivenname.feature +35 -0
- data/features/name/OverridingHierarchicalDelimiter.feature +36 -0
- data/features/name/ParseNames.feature +39 -0
- data/features/name/ParsedCommaDelimitedDroppingParticleNormalOrderingWithAffixes.feature +38 -0
- data/features/name/ParsedCommaDelimitedDroppingParticleNormalOrderingWithoutAffixes.feature +36 -0
- data/features/name/ParsedCommaDelimitedDroppingParticleSortOrderingWithoutAffixes.feature +38 -0
- data/features/name/ParsedDroppingParticleWithAffixes.feature +39 -0
- data/features/name/ParsedDroppingParticleWithApostrophe.feature +38 -0
- data/features/name/ParsedNonDroppingParticleWithAffixes.feature +39 -0
- data/features/name/ParsedNonDroppingParticleWithApostrophe.feature +39 -0
- data/features/name/ParsedUpperCaseNonDroppingParticle.feature +39 -0
- data/features/name/ParticleCaps1.feature +40 -0
- data/features/name/ParticleCaps2.feature +46 -0
- data/features/name/ParticleCaps3.feature +47 -0
- data/features/name/ParticleFormatting.feature +38 -0
- data/features/name/ParticlesDemoteNonDroppingNever.feature +99 -0
- data/features/name/PeriodAfterInitials.feature +38 -0
- data/features/name/QuashOrdinaryVariableRenderedViaSubstitute.feature +39 -0
- data/features/name/RomanianTwo.feature +36 -0
- data/features/name/SemicolonWithAnd.feature +38 -0
- data/features/name/SplitInitials.feature +35 -0
- data/features/name/SubsequentAuthorSubstituteMultipleNames.feature +50 -0
- data/features/name/SubstituteInheritLabel.feature +44 -0
- data/features/name/SubstituteMacroInheritDecorations.feature +42 -0
- data/features/name/SubstituteName.feature +38 -0
- data/features/name/SubstituteOnDateGroupSpanFail.feature +45 -0
- data/features/name/SubstituteOnGroupSpanGroupSpanFail.feature +46 -0
- data/features/name/SubstituteOnMacroGroupSpanFail.feature +46 -0
- data/features/name/SubstituteOnNamesSingletonGroupSpanFail.feature +42 -0
- data/features/name/SubstituteOnNamesSpanGroupSpanFail.feature +44 -0
- data/features/name/SubstituteOnNamesSpanNamesSpanFail.feature +43 -0
- data/features/name/SubstituteOnNumberGroupSpanFail.feature +42 -0
- data/features/name/TwoRolesSameRenderingSeparateRoleLabels.feature +43 -0
- data/features/name/WesternArticularLowercase.feature +35 -0
- data/features/name/WesternPrimaryFontStyle.feature +37 -0
- data/features/name/WesternPrimaryFontStyleTwoAuthors.feature +37 -0
- data/features/name/WesternSimple.feature +35 -0
- data/features/name/WesternTwoAuthors.feature +35 -0
- data/features/name/namepartAffixes.feature +38 -0
- data/features/name/namepartAffixesNameAsSortOrder.feature +39 -0
- data/features/name/namepartAffixesNameAsSortOrderDemoteNonDroppingParticle.feature +39 -0
- data/features/nameattr/AndOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/AndOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/AndOnCitationInBibliography.feature +45 -0
- data/features/nameattr/AndOnCitationInCitation.feature +36 -0
- data/features/nameattr/AndOnNamesInBibliography.feature +42 -0
- data/features/nameattr/AndOnNamesInCitation.feature +35 -0
- data/features/nameattr/AndOnStyleInBibliography.feature +43 -0
- data/features/nameattr/AndOnStyleInCitation.feature +43 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnCitationInBibliography.feature +45 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnCitationInCitation.feature +36 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnNamesInBibliography.feature +42 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnNamesInCitation.feature +35 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnStyleInBibliography.feature +43 -0
- data/features/nameattr/DelimiterPrecedesEtAlOnStyleInCitation.feature +36 -0
- data/features/nameattr/DelimiterPrecedesLastOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/DelimiterPrecedesLastOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/DelimiterPrecedesLastOnCitationInBibliography.feature +45 -0
- data/features/nameattr/DelimiterPrecedesLastOnCitationInCitation.feature +36 -0
- data/features/nameattr/DelimiterPrecedesLastOnNamesInBibliography.feature +42 -0
- data/features/nameattr/DelimiterPrecedesLastOnNamesInCitation.feature +35 -0
- data/features/nameattr/DelimiterPrecedesLastOnStyleInBibliography.feature +43 -0
- data/features/nameattr/DelimiterPrecedesLastOnStyleInCitation.feature +36 -0
- data/features/nameattr/EtAlMinOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/EtAlMinOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/EtAlMinOnCitationInBibliography.feature +45 -0
- data/features/nameattr/EtAlMinOnCitationInCitation.feature +36 -0
- data/features/nameattr/EtAlMinOnNamesInBibliography.feature +42 -0
- data/features/nameattr/EtAlMinOnNamesInCitation.feature +35 -0
- data/features/nameattr/EtAlMinOnStyleInBibliography.feature +42 -0
- data/features/nameattr/EtAlMinOnStyleInCitation.feature +35 -0
- data/features/nameattr/EtAlSubsequentMinOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/EtAlSubsequentMinOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/EtAlSubsequentMinOnCitationInBibliography.feature +45 -0
- data/features/nameattr/EtAlSubsequentMinOnCitationInCitation.feature +37 -0
- data/features/nameattr/EtAlSubsequentMinOnNamesInBibliography.feature +42 -0
- data/features/nameattr/EtAlSubsequentMinOnStyleInBibliography.feature +42 -0
- data/features/nameattr/EtAlSubsequentMinOnStyleInCitation.feature +38 -0
- data/features/nameattr/EtAlSubsequentUseFirstOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/EtAlSubsequentUseFirstOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/EtAlSubsequentUseFirstOnCitationInBibliography.feature +45 -0
- data/features/nameattr/EtAlSubsequentUseFirstOnCitationInCitation.feature +44 -0
- data/features/nameattr/EtAlSubsequentUseFirstOnStyleInBibliography.feature +43 -0
- data/features/nameattr/EtAlSubsequentUseFirstOnStyleInCitation.feature +37 -0
- data/features/nameattr/EtAlUseFirstOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/EtAlUseFirstOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/EtAlUseFirstOnCitationInBibliography.feature +45 -0
- data/features/nameattr/EtAlUseFirstOnCitationInCitation.feature +43 -0
- data/features/nameattr/EtAlUseFirstOnNamesInBibliography.feature +42 -0
- data/features/nameattr/EtAlUseFirstOnNamesInCitation.feature +35 -0
- data/features/nameattr/EtAlUseFirstOnStyleInBibliography.feature +43 -0
- data/features/nameattr/EtAlUseFirstOnStyleInCitation.feature +35 -0
- data/features/nameattr/InitializeWithOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/InitializeWithOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/InitializeWithOnCitationInBibliography.feature +45 -0
- data/features/nameattr/InitializeWithOnCitationInCitation.feature +36 -0
- data/features/nameattr/InitializeWithOnNamesInBibliography.feature +42 -0
- data/features/nameattr/InitializeWithOnNamesInCitation.feature +35 -0
- data/features/nameattr/InitializeWithOnStyleInBibliography.feature +43 -0
- data/features/nameattr/InitializeWithOnStyleInCitation.feature +36 -0
- data/features/nameattr/NameAsSortOrderOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/NameAsSortOrderOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/NameAsSortOrderOnCitationInBibliography.feature +45 -0
- data/features/nameattr/NameAsSortOrderOnCitationInCitation.feature +36 -0
- data/features/nameattr/NameAsSortOrderOnNamesInBibliography.feature +42 -0
- data/features/nameattr/NameAsSortOrderOnNamesInCitation.feature +35 -0
- data/features/nameattr/NameAsSortOrderOnStyleInBibliography.feature +43 -0
- data/features/nameattr/NameAsSortOrderOnStyleInCitation.feature +35 -0
- data/features/nameattr/NameDelimiterOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/NameDelimiterOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/NameDelimiterOnCitationInBibliography.feature +45 -0
- data/features/nameattr/NameDelimiterOnCitationInCitation.feature +43 -0
- data/features/nameattr/NameDelimiterOnNamesInBibliography.feature +42 -0
- data/features/nameattr/NameDelimiterOnNamesInCitation.feature +42 -0
- data/features/nameattr/NameDelimiterOnStyleInBibliography.feature +43 -0
- data/features/nameattr/NameDelimiterOnStyleInCitation.feature +43 -0
- data/features/nameattr/NameFormOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/NameFormOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/NameFormOnCitationInBibliography.feature +45 -0
- data/features/nameattr/NameFormOnCitationInCitation.feature +43 -0
- data/features/nameattr/NameFormOnNamesInBibliography.feature +42 -0
- data/features/nameattr/NameFormOnNamesInCitation.feature +35 -0
- data/features/nameattr/NameFormOnStyleInBibliography.feature +43 -0
- data/features/nameattr/NameFormOnStyleInCitation.feature +36 -0
- data/features/nameattr/NamesDelimiterOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/NamesDelimiterOnBibliographyInCitation.feature +43 -0
- data/features/nameattr/NamesDelimiterOnCitationInBibliography.feature +45 -0
- data/features/nameattr/NamesDelimiterOnCitationInCitation.feature +36 -0
- data/features/nameattr/NamesDelimiterOnNamesInBibliography.feature +42 -0
- data/features/nameattr/NamesDelimiterOnNamesInCitation.feature +35 -0
- data/features/nameattr/NamesDelimiterOnStyleInBibliography.feature +42 -0
- data/features/nameattr/NamesDelimiterOnStyleInCitation.feature +36 -0
- data/features/nameattr/SortSeparatorOnBibliographyInBibliography.feature +43 -0
- data/features/nameattr/SortSeparatorOnBibliographyInCitation.feature +44 -0
- data/features/nameattr/SortSeparatorOnCitationInBibliography.feature +45 -0
- data/features/nameattr/SortSeparatorOnCitationInCitation.feature +36 -0
- data/features/nameattr/SortSeparatorOnNamesInBibliography.feature +42 -0
- data/features/nameattr/SortSeparatorOnNamesInCitation.feature +35 -0
- data/features/nameattr/SortSeparatorOnStyleInBibliography.feature +43 -0
- data/features/nameattr/SortSeparatorOnStyleInCitation.feature +36 -0
- data/features/nameorder/Long.feature +35 -0
- data/features/nameorder/LongNameAsSortDemoteDisplayAndSort.feature +36 -0
- data/features/nameorder/LongNameAsSortDemoteNever.feature +36 -0
- data/features/nameorder/Short.feature +35 -0
- data/features/nameorder/ShortDemoteDisplayAndSort.feature +36 -0
- data/features/nameorder/ShortNameAsSortDemoteNever.feature +36 -0
- data/features/namespaces/NonNada3.feature +33 -0
- data/features/number/EditionSort.feature +47 -0
- data/features/number/FailingDelimiters.feature +44 -0
- data/features/number/IsNumericWithAlpha.feature +40 -0
- data/features/number/MixedPageRange.feature +34 -0
- data/features/number/MixedText.feature +33 -0
- data/features/number/NewOrdinals.feature +64 -0
- data/features/number/NewOrdinalsEdition.feature +1044 -0
- data/features/number/NewOrdinalsWithGenderChange.feature +45 -0
- data/features/number/PageFirst.feature +36 -0
- data/features/number/PageRange.feature +33 -0
- data/features/number/PlainHyphenOrEnDashAlwaysPlural.feature +42 -0
- data/features/number/SeparateOrdinalNamespaces.feature +55 -0
- data/features/number/SimpleNumberArabic.feature +33 -0
- data/features/number/SimpleNumberOrdinalLong.feature +35 -0
- data/features/number/SimpleNumberOrdinalShort.feature +33 -0
- data/features/number/SimpleNumberRoman.feature +33 -0
- data/features/number/StrangeError.feature +34 -0
- data/features/page/Chicago.feature +55 -0
- data/features/page/Expand.feature +42 -0
- data/features/page/Minimal.feature +55 -0
- data/features/page/NoOption.feature +34 -0
- data/features/page/NumberPageFirst.feature +33 -0
- data/features/page/PluralDetectWithEndash.feature +33 -0
- data/features/parallel/Bibliography.feature +87 -0
- data/features/parallel/HackedChicago.feature +715 -0
- data/features/parallel/JournalArticleReverse.feature +46 -0
- data/features/parallel/JournalArticleSimple.feature +46 -0
- data/features/parallel/TrailingIbid.feature +69 -0
- data/features/plural/LabelForced.feature +37 -0
- data/features/plural/NameLabelAlways.feature +36 -0
- data/features/plural/NameLabelContextualPlural.feature +36 -0
- data/features/plural/NameLabelContextualSingular.feature +36 -0
- data/features/plural/NameLabelDefaultPlural.feature +36 -0
- data/features/plural/NameLabelDefaultSingular.feature +36 -0
- data/features/plural/NameLabelNever.feature +36 -0
- data/features/position/FalseInBibliography.feature +47 -0
- data/features/position/FirstTrueOnlyOnce.feature +55 -0
- data/features/position/IbidInText.feature +51 -0
- data/features/position/IbidSeparateCiteSameNote.feature +80 -0
- data/features/position/IbidWithLocator.feature +52 -0
- data/features/position/IbidWithMultipleSoloCitesInBackref.feature +52 -0
- data/features/position/IbidWithPrefixFullStop.feature +44 -0
- data/features/position/IbidWithSuffix.feature +54 -0
- data/features/position/IfIbidIsTrueThenSubsequentIsTrue.feature +61 -0
- data/features/position/IfIbidWithLocatorIsTrueThenIbidIsTrue.feature +58 -0
- data/features/position/NearNoteFalse.feature +41 -0
- data/features/position/NearNoteSameNote.feature +43 -0
- data/features/position/NearNoteTrue.feature +41 -0
- data/features/position/NearNoteUnsupported.feature +40 -0
- data/features/position/NearNoteWithPlugin.feature +454 -0
- data/features/position/ResetNoteNumbers.feature +54 -0
- data/features/position/TrueInCitation.feature +45 -0
- data/features/punctuation/DateStripPeriods.feature +36 -0
- data/features/punctuation/DefaultYearSuffixDelimiter.feature +183 -0
- data/features/punctuation/DelimiterWithStripPeriodsAndSubstitute1.feature +53 -0
- data/features/punctuation/DelimiterWithStripPeriodsAndSubstitute2.feature +52 -0
- data/features/punctuation/DelimiterWithStripPeriodsAndSubstitute3.feature +60 -0
- data/features/punctuation/DoNotSuppressColonAfterPeriod.feature +34 -0
- data/features/punctuation/FrenchOrthography.feature +33 -0
- data/features/punctuation/FullMontyField.feature +230 -0
- data/features/punctuation/FullMontyPlain.feature +230 -0
- data/features/punctuation/FullMontyQuotesIn.feature +233 -0
- data/features/punctuation/FullMontyQuotesOut.feature +233 -0
- data/features/punctuation/NoSuppressOfPeriodBeforeSemicolon.feature +36 -0
- data/features/punctuation/SemicolonDelimiter.feature +62 -0
- data/features/punctuation/SuppressPrefixPeriodForDelimiterSemicolon.feature +715 -0
- data/features/quotes/Punctuation.feature +43 -0
- data/features/quotes/PunctuationNasty.feature +977 -0
- data/features/quotes/PunctuationWithInnerQuote.feature +43 -0
- data/features/simplespace/case1.feature +202 -0
- data/features/sort/AguStyle.feature +94 -0
- data/features/sort/AguStyleReverseGroups.feature +94 -0
- data/features/sort/AuthorDateWithYearSuffix.feature +202 -0
- data/features/sort/BibliographyCitationNumberDescending.feature +51 -0
- data/features/sort/BibliographyCitationNumberDescendingViaMacro.feature +54 -0
- data/features/sort/BibliographyNosortOption.feature +44 -0
- data/features/sort/CaseInsensitiveBibliography.feature +55 -0
- data/features/sort/CaseInsensitiveCitation.feature +36 -0
- data/features/sort/ChangeInNameSort.feature +54 -0
- data/features/sort/ChicagoYearSuffix1.feature +391 -0
- data/features/sort/ChicagoYearSuffix2.feature +391 -0
- data/features/sort/Citation.feature +42 -0
- data/features/sort/CitationEdit.feature +49 -0
- data/features/sort/CitationSecondaryKey.feature +46 -0
- data/features/sort/CitationUnsorted.feature +42 -0
- data/features/sort/CiteGroupDelimiter.feature +45 -0
- data/features/sort/ConditionalMacroDates.feature +64 -0
- data/features/sort/DateMacroSortWithSecondFieldAlign.feature +56 -0
- data/features/sort/DateVariable.feature +36 -0
- data/features/sort/DateVariableMixedElementsAscendingA.feature +36 -0
- data/features/sort/DateVariableMixedElementsAscendingB.feature +36 -0
- data/features/sort/DateVariableMixedElementsDescendingA.feature +36 -0
- data/features/sort/DateVariableMixedElementsDescendingB.feature +36 -0
- data/features/sort/DateVariableRange.feature +36 -0
- data/features/sort/DateVariableRangeMixed.feature +36 -0
- data/features/sort/DropNameLabelInSort.feature +116 -0
- data/features/sort/EtAlUseLast.feature +54 -0
- data/features/sort/FamilyOnly.feature +45 -0
- data/features/sort/GroupedByAuthorstring.feature +50 -0
- data/features/sort/LatinUnicode.feature +42 -0
- data/features/sort/LeadingApostropheOnNameParticle.feature +55 -0
- data/features/sort/LocalizedDateLimitedParts.feature +40 -0
- data/features/sort/NameImplicitSortOrderAndForm.feature +51 -0
- data/features/sort/NameParticleInNameSortFalse.feature +48 -0
- data/features/sort/NameParticleInNameSortTrue.feature +48 -0
- data/features/sort/NameVariable.feature +47 -0
- data/features/sort/NamesUseLast.feature +64 -0
- data/features/sort/NumberOfAuthorsAsKey.feature +68 -0
- data/features/sort/SeparateAuthorsAndOthers.feature +127 -0
- data/features/sort/StatusFieldAscending.feature +46 -0
- data/features/sort/StatusFieldDescending.feature +46 -0
- data/features/sort/StripMarkup.feature +39 -0
- data/features/sort/SubstituteTitle.feature +398 -0
- data/features/sort/VariousNameMacros1.feature +287 -0
- data/features/sort/VariousNameMacros2.feature +287 -0
- data/features/sort/VariousNameMacros3.feature +288 -0
- data/features/sort/WithAndInOneEntry.feature +228 -0
- data/features/sortseparator/SortSeparatorEmpty.feature +44 -0
- data/features/substitute/RepeatedNamesOk.feature +52 -0
- data/features/substitute/SuppressOrdinaryVariable.feature +79 -0
- data/features/testers/FirstAutoGeneratedZoteroPluginTest.feature +715 -0
- data/features/testers/SecondAutoGeneratedZoteroPluginTest.feature +717 -0
- data/features/textcase/CapitalizeAll.feature +33 -0
- data/features/textcase/CapitalizeFirst.feature +33 -0
- data/features/textcase/CapitalizeFirstWithDecor.feature +33 -0
- data/features/textcase/CapitalsUntouched.feature +37 -0
- data/features/textcase/Lowercase.feature +33 -0
- data/features/textcase/SentenceCapitalization.feature +33 -0
- data/features/textcase/SkipNameParticlesInTitleCase.feature +33 -0
- data/features/textcase/TitleCapitalization.feature +33 -0
- data/features/textcase/TitleCaseNonEnglish.feature +33 -0
- data/features/textcase/TitleCaseNonEnglish2.feature +34 -0
- data/features/textcase/TitleCaseWithHyphens.feature +33 -0
- data/features/textcase/TitleCaseWithInitials.feature +33 -0
- data/features/textcase/Uppercase.feature +59 -0
- data/features/textcase/UppercaseNumber.feature +33 -0
- data/features/unicode/NonBreakingSpace.feature +34 -0
- data/features/variables/ShortForm.feature +54 -0
- data/features/variables/TitleShortOnAbbrevWithTitle.feature +37 -0
- data/features/variables/TitleShortOnAbbrevWithTitleCondition.feature +57 -0
- data/features/variables/TitleShortOnAbbrevWithTitleGroup.feature +44 -0
- data/features/variables/TitleShortOnShortTitleNoTitle.feature +33 -0
- data/features/variables/TitleShortOnShortTitleNoTitleCondition.feature +53 -0
- data/features/variables/TitleShortOnShortTitleNoTitleGroup.feature +40 -0
- data/features/virtual/PageFirst.feature +37 -0
- data/lib/citeproc/attributes.rb +7 -1
- data/lib/citeproc/version.rb +1 -1
- data/spec/citeproc/attributes_spec.rb +71 -27
- data/spec/citeproc/item_spec.rb +12 -0
- metadata +1563 -4
@@ -0,0 +1,144 @@
|
|
1
|
+
Feature: bugreports
|
2
|
+
As a CSL cite processor hacker
|
3
|
+
I want the test bugreports_UndefinedNotString to pass
|
4
|
+
|
5
|
+
@bibliography @bugreports
|
6
|
+
Scenario: Undefined Not String
|
7
|
+
Given the following style:
|
8
|
+
"""
|
9
|
+
<?xml version="1.0" encoding="utf-8"?>
|
10
|
+
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0">
|
11
|
+
<info>
|
12
|
+
<title>Advanced Engineering Materials</title>
|
13
|
+
<id>http://www.zotero.org/styles/advanced-engineering-materials</id>
|
14
|
+
<link href="http://www.zotero.org/styles/advanced-engineering-materials" rel="self"/>
|
15
|
+
<author>
|
16
|
+
<name>Richard Karnesky</name>
|
17
|
+
<email>karnesky+zotero@gmail.com</email>
|
18
|
+
<uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>
|
19
|
+
</author>
|
20
|
+
<category field="engineering"/>
|
21
|
+
<!--<category term="materials science"/>-->
|
22
|
+
<category field="generic-base"/>
|
23
|
+
<category citation-format="numeric"/>
|
24
|
+
<updated>2008-10-05T08:50:29+00:00</updated>
|
25
|
+
<summary>A style for Wiley-VCH's journal "Advanced Engineering Materials"</summary>
|
26
|
+
<issn>1438-1656</issn>
|
27
|
+
<link href="http://www3.interscience.wiley.com/journal/67500980/home/2266_guidelines.html" rel="documentation"/>
|
28
|
+
<rights>This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License: http://creativecommons.org/licenses/by-sa/3.0/us/</rights>
|
29
|
+
</info>
|
30
|
+
<macro name="author">
|
31
|
+
<names variable="author">
|
32
|
+
<label form="short" prefix=", " text-case="capitalize-first" suffix=": " strip-periods="true"/>
|
33
|
+
<name initialize-with="." delimiter=", " delimiter-precedes-last="always" name-as-sort-order="all"/>
|
34
|
+
<substitute>
|
35
|
+
<names variable="editor"/>
|
36
|
+
<names variable="translator"/>
|
37
|
+
</substitute>
|
38
|
+
</names>
|
39
|
+
</macro>
|
40
|
+
<macro name="editor">
|
41
|
+
<names variable="editor">
|
42
|
+
<label form="short" text-case="capitalize-first" suffix=": " strip-periods="true"/>
|
43
|
+
<name initialize-with="." delimiter=", " delimiter-precedes-last="always" name-as-sort-order="all"/>
|
44
|
+
</names>
|
45
|
+
</macro>
|
46
|
+
<macro name="year-date">
|
47
|
+
<group font-weight="bold">
|
48
|
+
<choose>
|
49
|
+
<if variable="issued">
|
50
|
+
<date variable="issued">
|
51
|
+
<date-part name="year"/>
|
52
|
+
</date>
|
53
|
+
</if>
|
54
|
+
<else>
|
55
|
+
<text term="no date" form="short"/>
|
56
|
+
</else>
|
57
|
+
</choose>
|
58
|
+
</group>
|
59
|
+
</macro>
|
60
|
+
<macro name="publisher">
|
61
|
+
<group delimiter=", ">
|
62
|
+
<text variable="publisher" text-case="capitalize-all"/>
|
63
|
+
<text variable="publisher-place" suffix=" " text-case="title"/>
|
64
|
+
</group>
|
65
|
+
<text macro="year-date"/>
|
66
|
+
</macro>
|
67
|
+
<citation collapse="citation-number">
|
68
|
+
<sort>
|
69
|
+
<key variable="citation-number"/>
|
70
|
+
</sort>
|
71
|
+
<layout vertical-align="sup" prefix="[" suffix="]" delimiter=", ">
|
72
|
+
<text variable="citation-number"/>
|
73
|
+
</layout>
|
74
|
+
</citation>
|
75
|
+
<bibliography entry-spacing="0" second-field-align="flush">
|
76
|
+
<layout suffix=".">
|
77
|
+
<text variable="citation-number" prefix="[" suffix="]"/>
|
78
|
+
<text macro="author" prefix=" " suffix=", "/>
|
79
|
+
<choose>
|
80
|
+
<if type="bill book graphic legal_case motion_picture report song" match="any">
|
81
|
+
<group delimiter=", ">
|
82
|
+
<text variable="title" text-case="title" font-style="italic"/>
|
83
|
+
<text macro="publisher"/>
|
84
|
+
</group>
|
85
|
+
</if>
|
86
|
+
<else-if type="chapter paper-conference" match="any">
|
87
|
+
<group delimiter=", ">
|
88
|
+
<group delimiter=" ">
|
89
|
+
<text term="in" text-case="lowercase"/>
|
90
|
+
<text variable="container-title" form="short" text-case="title" font-style="italic"/>
|
91
|
+
<text macro="editor" prefix="(" suffix=")"/>
|
92
|
+
</group>
|
93
|
+
<text macro="publisher"/>
|
94
|
+
<group delimiter=" ">
|
95
|
+
<!-- TODO: Change to page-first when Zotero supports it -->
|
96
|
+
<text variable="page"/>
|
97
|
+
</group>
|
98
|
+
</group>
|
99
|
+
</else-if>
|
100
|
+
<else-if type="patent">
|
101
|
+
<group delimiter=", ">
|
102
|
+
<text variable="title" text-case="title" font-style="italic"/>
|
103
|
+
<text macro="year-date"/>
|
104
|
+
<text variable="number" prefix="U.S. Patent "/>
|
105
|
+
</group>
|
106
|
+
</else-if>
|
107
|
+
<else-if type="thesis">
|
108
|
+
<group delimiter=", ">
|
109
|
+
<text variable="title" text-case="title" font-style="italic"/>
|
110
|
+
<text variable="genre"/>
|
111
|
+
<text variable="publisher"/>
|
112
|
+
<text macro="year-date"/>
|
113
|
+
</group>
|
114
|
+
</else-if>
|
115
|
+
<else>
|
116
|
+
<group delimiter=" ">
|
117
|
+
<text variable="container-title" form="short" text-case="title" font-style="italic"/>
|
118
|
+
<group delimiter=", ">
|
119
|
+
<text macro="year-date"/>
|
120
|
+
<text variable="volume" font-style="italic"/>
|
121
|
+
<!-- TODO: Change to page-first when Zotero supports it -->
|
122
|
+
<text variable="page" form="short"/>
|
123
|
+
</group>
|
124
|
+
</group>
|
125
|
+
</else>
|
126
|
+
</choose>
|
127
|
+
</layout>
|
128
|
+
</bibliography>
|
129
|
+
</style>
|
130
|
+
|
131
|
+
"""
|
132
|
+
And the following input:
|
133
|
+
"""
|
134
|
+
[{"container-title":"FOO BAR","id":"ITEM-1","type":"article-journal"}]
|
135
|
+
"""
|
136
|
+
When I render the entire bibliography
|
137
|
+
Then the bibliography should be:
|
138
|
+
"""
|
139
|
+
<div class="csl-bib-body">
|
140
|
+
<div class="csl-entry">
|
141
|
+
<div class="csl-left-margin">[1]</div><div class="csl-right-inline"><i>FOO BAR</i> <b>n.d.</b></div>
|
142
|
+
</div>
|
143
|
+
</div>
|
144
|
+
"""
|
@@ -0,0 +1,151 @@
|
|
1
|
+
Feature: bugreports
|
2
|
+
As a CSL cite processor hacker
|
3
|
+
I want the test bugreports_UndefinedStr to pass
|
4
|
+
|
5
|
+
@bibliography @bugreports
|
6
|
+
Scenario: Undefined Str
|
7
|
+
Given the following style:
|
8
|
+
"""
|
9
|
+
<?xml version="1.0" encoding="utf-8"?>
|
10
|
+
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0">
|
11
|
+
<info>
|
12
|
+
<title>Acta Materialia</title>
|
13
|
+
<id>http://www.zotero.org/styles/acta-materialia</id>
|
14
|
+
<link href="http://www.zotero.org/styles/acta-materialia" rel="self"/>
|
15
|
+
<author>
|
16
|
+
<name>Richard Karnesky</name>
|
17
|
+
<email>karnesky+zotero@gmail.com</email>
|
18
|
+
<uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>
|
19
|
+
</author>
|
20
|
+
<category field="engineering"/>
|
21
|
+
<!--<category term="materials science"/>-->
|
22
|
+
<category field="generic-base"/>
|
23
|
+
<category citation-format="numeric"/>
|
24
|
+
<updated>2010-04-24T04:49:00+09:00</updated>
|
25
|
+
<summary>A style for Elsevier's journal "Acta Materialia"</summary>
|
26
|
+
<issn>1359-6454</issn>
|
27
|
+
<link href="http://www.elsevier.com/wps/find/journaldescription.cws_home/221/authorinstructions#Refs" rel="documentation"/>
|
28
|
+
<rights>This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License: http://creativecommons.org/licenses/by-sa/3.0/us/</rights>
|
29
|
+
</info>
|
30
|
+
<macro name="author">
|
31
|
+
<names variable="author">
|
32
|
+
<name initialize-with="" delimiter=", " delimiter-precedes-last="always" name-as-sort-order="all" sort-separator=" "/>
|
33
|
+
<label form="long" prefix=", " text-case="lowercase" suffix="."/>
|
34
|
+
<substitute>
|
35
|
+
<names variable="editor"/>
|
36
|
+
<names variable="translator"/>
|
37
|
+
</substitute>
|
38
|
+
</names>
|
39
|
+
</macro>
|
40
|
+
<macro name="editor">
|
41
|
+
<names variable="editor">
|
42
|
+
<name initialize-with="" delimiter=", " delimiter-precedes-last="always" name-as-sort-order="all" sort-separator=" "/>
|
43
|
+
<label form="long" prefix=", " text-case="lowercase" suffix="."/>
|
44
|
+
</names>
|
45
|
+
</macro>
|
46
|
+
<macro name="year-date">
|
47
|
+
<choose>
|
48
|
+
<if variable="issued">
|
49
|
+
<date variable="issued">
|
50
|
+
<date-part name="year"/>
|
51
|
+
</date>
|
52
|
+
</if>
|
53
|
+
<else>
|
54
|
+
<text term="no date" form="short"/>
|
55
|
+
</else>
|
56
|
+
</choose>
|
57
|
+
</macro>
|
58
|
+
<macro name="publisher">
|
59
|
+
<text variable="publisher-place" suffix=": " text-case="title"/>
|
60
|
+
<text variable="publisher" suffix=", "/>
|
61
|
+
<text macro="year-date"/>
|
62
|
+
</macro>
|
63
|
+
<citation collapse="citation-number">
|
64
|
+
<sort>
|
65
|
+
<key variable="citation-number"/>
|
66
|
+
</sort>
|
67
|
+
<layout prefix="[" suffix="]" delimiter=",">
|
68
|
+
<text variable="citation-number"/>
|
69
|
+
</layout>
|
70
|
+
</citation>
|
71
|
+
<bibliography entry-spacing="0" second-field-align="flush">
|
72
|
+
<layout suffix=".">
|
73
|
+
<text variable="citation-number" prefix="[" suffix="]"/>
|
74
|
+
<text macro="author" prefix=" " suffix=". "/>
|
75
|
+
<choose>
|
76
|
+
<if type="bill book graphic legal_case motion_picture report song" match="any">
|
77
|
+
<group delimiter=". ">
|
78
|
+
<group delimiter=", ">
|
79
|
+
<text variable="title" text-case="title"/>
|
80
|
+
<text variable="volume" prefix="vol. "/>
|
81
|
+
</group>
|
82
|
+
<text macro="publisher"/>
|
83
|
+
</group>
|
84
|
+
</if>
|
85
|
+
<else-if type="chapter paper-conference" match="any">
|
86
|
+
<group delimiter=". ">
|
87
|
+
<text variable="title" text-case="sentence"/>
|
88
|
+
<text term="in" text-case="sentence" suffix=":"/>
|
89
|
+
<text macro="editor"/>
|
90
|
+
<group delimiter=", ">
|
91
|
+
<text variable="container-title" form="short" text-case="title"/>
|
92
|
+
<text variable="volume" prefix="vol. "/>
|
93
|
+
</group>
|
94
|
+
<text macro="publisher"/>
|
95
|
+
<group delimiter=" ">
|
96
|
+
<label variable="page" form="short" suffix="." strip-periods="true"/>
|
97
|
+
<text variable="page"/>
|
98
|
+
</group>
|
99
|
+
</group>
|
100
|
+
</else-if>
|
101
|
+
<else-if type="patent">
|
102
|
+
<group delimiter=", ">
|
103
|
+
<group delimiter=". ">
|
104
|
+
<text variable="title" text-case="title"/>
|
105
|
+
<text variable="number" prefix="U.S. Patent "/>
|
106
|
+
</group>
|
107
|
+
<text macro="year-date"/>
|
108
|
+
</group>
|
109
|
+
</else-if>
|
110
|
+
<else-if type="thesis">
|
111
|
+
<group delimiter=". ">
|
112
|
+
<text variable="title" text-case="title"/>
|
113
|
+
<text variable="genre"/>
|
114
|
+
<group delimiter=", ">
|
115
|
+
<text variable="publisher"/>
|
116
|
+
<text macro="year-date"/>
|
117
|
+
</group>
|
118
|
+
</group>
|
119
|
+
</else-if>
|
120
|
+
<else>
|
121
|
+
<group delimiter=":">
|
122
|
+
<group delimiter=" ">
|
123
|
+
<text variable="container-title" form="short" text-case="sentence"/>
|
124
|
+
<group delimiter=";">
|
125
|
+
<text macro="year-date"/>
|
126
|
+
<text variable="volume"/>
|
127
|
+
</group>
|
128
|
+
</group>
|
129
|
+
<!-- TODO: Change to page-first when Zotero supports it -->
|
130
|
+
<text variable="page" form="short"/>
|
131
|
+
</group>
|
132
|
+
</else>
|
133
|
+
</choose>
|
134
|
+
</layout>
|
135
|
+
</bibliography>
|
136
|
+
</style>
|
137
|
+
|
138
|
+
"""
|
139
|
+
And the following input:
|
140
|
+
"""
|
141
|
+
[{"author":[{"family":"FamilyName","given":"GivenName"}],"id":"ITEM-1","title":"The Title","type":"article-journal"}]
|
142
|
+
"""
|
143
|
+
When I render the entire bibliography
|
144
|
+
Then the bibliography should be:
|
145
|
+
"""
|
146
|
+
<div class="csl-bib-body">
|
147
|
+
<div class="csl-entry">
|
148
|
+
<div class="csl-left-margin">[1]</div><div class="csl-right-inline"> FamilyName G. n.d.</div>
|
149
|
+
</div>
|
150
|
+
</div>
|
151
|
+
"""
|
@@ -0,0 +1,62 @@
|
|
1
|
+
Feature: bugreports
|
2
|
+
As a CSL cite processor hacker
|
3
|
+
I want the test bugreports_UnisaHarvardInitialization to pass
|
4
|
+
|
5
|
+
@bibliography @bugreports
|
6
|
+
Scenario: Unisa Harvard Initialization
|
7
|
+
Given the following style:
|
8
|
+
"""
|
9
|
+
<style
|
10
|
+
xmlns="http://purl.org/net/xbiblio/csl"
|
11
|
+
class="in-text"
|
12
|
+
version="1.0">
|
13
|
+
<info>
|
14
|
+
<id />
|
15
|
+
<title />
|
16
|
+
<updated>2009-08-10T04:49:00+09:00</updated>
|
17
|
+
</info>
|
18
|
+
<macro name="author">
|
19
|
+
<names variable="author">
|
20
|
+
<name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with="" delimiter=", " delimiter-precedes-last="never"/>
|
21
|
+
<label form="short" prefix=" (" suffix=")" strip-periods="true"/>
|
22
|
+
<substitute>
|
23
|
+
<names variable="editor"/>
|
24
|
+
</substitute>
|
25
|
+
</names>
|
26
|
+
</macro>
|
27
|
+
<macro name="year-date">
|
28
|
+
<choose>
|
29
|
+
<if variable="issued">
|
30
|
+
<date variable="issued">
|
31
|
+
<date-part name="year"/>
|
32
|
+
</date>
|
33
|
+
</if>
|
34
|
+
<else>
|
35
|
+
<text term="no date" form="short"/>
|
36
|
+
</else>
|
37
|
+
</choose>
|
38
|
+
</macro>
|
39
|
+
<citation>
|
40
|
+
<layout>
|
41
|
+
<text value="BOGUS"/>
|
42
|
+
</layout>
|
43
|
+
</citation>
|
44
|
+
<bibliography>
|
45
|
+
<layout>
|
46
|
+
<text macro="author"/>
|
47
|
+
<text macro="year-date" prefix=" " suffix=", "/>
|
48
|
+
</layout>
|
49
|
+
</bibliography>
|
50
|
+
</style>
|
51
|
+
"""
|
52
|
+
And the following input:
|
53
|
+
"""
|
54
|
+
[{"author":[{"family":"Doe","given":"John Quiggly"}],"id":"ITEM-1","type":"book"}]
|
55
|
+
"""
|
56
|
+
When I render the entire bibliography
|
57
|
+
Then the bibliography should be:
|
58
|
+
"""
|
59
|
+
<div class="csl-bib-body">
|
60
|
+
<div class="csl-entry">Doe, JQ n.d., </div>
|
61
|
+
</div>
|
62
|
+
"""
|
@@ -0,0 +1,205 @@
|
|
1
|
+
Feature: bugreports
|
2
|
+
As a CSL cite processor hacker
|
3
|
+
I want the test bugreports_YearSuffixInHarvard1 to pass
|
4
|
+
|
5
|
+
@bibliography @bugreports
|
6
|
+
Scenario: Year Suffix In Harvard1
|
7
|
+
Given the following style:
|
8
|
+
"""
|
9
|
+
<?xml version="1.0" encoding="utf-8"?>
|
10
|
+
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0">
|
11
|
+
<info>
|
12
|
+
<title>Harvard Reference format 1 (Author-Date)</title>
|
13
|
+
<id>http://www.zotero.org/styles/harvard1</id>
|
14
|
+
<link href="http://www.zotero.org/styles/harvard1" rel="self"/>
|
15
|
+
<author>
|
16
|
+
<name>Julian Onions</name>
|
17
|
+
<email>julian.onions@gmail.com</email>
|
18
|
+
</author>
|
19
|
+
<category citation-format="author-date"/>
|
20
|
+
<category field="generic-base"/>
|
21
|
+
<updated>2008-10-29T21:20:42+00:00</updated>
|
22
|
+
<summary>The Harvard author-date style</summary>
|
23
|
+
<link href="http://libweb.anglia.ac.uk/referencing/harvard.htm" rel="documentation"/>
|
24
|
+
</info>
|
25
|
+
<macro name="editor">
|
26
|
+
<names variable="editor" delimiter=", ">
|
27
|
+
<name and="symbol" initialize-with=". " delimiter=", "/>
|
28
|
+
<label form="short" prefix=", " text-case="lowercase" suffix="." strip-periods="true"/>
|
29
|
+
</names>
|
30
|
+
</macro>
|
31
|
+
<macro name="anon">
|
32
|
+
<text term="anonymous" form="short" text-case="capitalize-first" strip-periods="true"/>
|
33
|
+
</macro>
|
34
|
+
<macro name="author">
|
35
|
+
<names variable="author">
|
36
|
+
<name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with="." delimiter-precedes-last="never" delimiter=", "/>
|
37
|
+
<label form="short" prefix=" " suffix="." text-case="lowercase" strip-periods="true"/>
|
38
|
+
<substitute>
|
39
|
+
<names variable="editor"/>
|
40
|
+
<text macro="anon"/>
|
41
|
+
</substitute>
|
42
|
+
</names>
|
43
|
+
</macro>
|
44
|
+
<macro name="author-short">
|
45
|
+
<names variable="author">
|
46
|
+
<name form="short" and="symbol" delimiter=", " delimiter-precedes-last="never" initialize-with=". "/>
|
47
|
+
<substitute>
|
48
|
+
<names variable="editor"/>
|
49
|
+
<names variable="translator"/>
|
50
|
+
<text macro="anon"/>
|
51
|
+
</substitute>
|
52
|
+
</names>
|
53
|
+
</macro>
|
54
|
+
<macro name="access">
|
55
|
+
<group>
|
56
|
+
<text value="Available at:" suffix=" "/>
|
57
|
+
<text variable="URL"/>
|
58
|
+
<group prefix=" [" suffix="]">
|
59
|
+
<text term="accessed" text-case="capitalize-first" suffix=" "/>
|
60
|
+
<date variable="accessed">
|
61
|
+
<date-part name="month" suffix=" "/>
|
62
|
+
<date-part name="day" suffix=", "/>
|
63
|
+
<date-part name="year"/>
|
64
|
+
</date>
|
65
|
+
</group>
|
66
|
+
</group>
|
67
|
+
</macro>
|
68
|
+
<macro name="title">
|
69
|
+
<choose>
|
70
|
+
<if type="bill book graphic legal_case motion_picture report song thesis" match="any">
|
71
|
+
<text variable="title" font-style="italic"/>
|
72
|
+
</if>
|
73
|
+
<else>
|
74
|
+
<text variable="title"/>
|
75
|
+
</else>
|
76
|
+
</choose>
|
77
|
+
</macro>
|
78
|
+
<macro name="publisher">
|
79
|
+
<group delimiter=": ">
|
80
|
+
<text variable="publisher-place"/>
|
81
|
+
<text variable="publisher"/>
|
82
|
+
</group>
|
83
|
+
</macro>
|
84
|
+
<macro name="year-date">
|
85
|
+
<choose>
|
86
|
+
<if variable="issued">
|
87
|
+
<date variable="issued">
|
88
|
+
<date-part name="year"/>
|
89
|
+
</date>
|
90
|
+
</if>
|
91
|
+
<else>
|
92
|
+
<text term="no date" form="short"/>
|
93
|
+
</else>
|
94
|
+
</choose>
|
95
|
+
</macro>
|
96
|
+
<macro name="edition">
|
97
|
+
<choose>
|
98
|
+
<if is-numeric="edition">
|
99
|
+
<group delimiter=" ">
|
100
|
+
<number variable="edition" form="ordinal"/>
|
101
|
+
<text term="edition" form="short" suffix="." strip-periods="true"/>
|
102
|
+
</group>
|
103
|
+
</if>
|
104
|
+
<else>
|
105
|
+
<text variable="edition" suffix="."/>
|
106
|
+
</else>
|
107
|
+
</choose>
|
108
|
+
</macro>
|
109
|
+
<macro name="pages">
|
110
|
+
<group>
|
111
|
+
<label variable="page" form="short" suffix=" "/>
|
112
|
+
<text variable="page"/>
|
113
|
+
</group>
|
114
|
+
</macro>
|
115
|
+
<citation et-al-min="3" et-al-use-first="1" et-al-subsequent-min="3" et-al-subsequent-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true">
|
116
|
+
<layout prefix="(" suffix=")" delimiter="; ">
|
117
|
+
<group delimiter=", ">
|
118
|
+
<group delimiter=" ">
|
119
|
+
<text macro="author-short"/>
|
120
|
+
<text macro="year-date"/>
|
121
|
+
</group>
|
122
|
+
<group>
|
123
|
+
<label variable="locator" suffix="." form="short" strip-periods="true"/>
|
124
|
+
<text variable="locator"/>
|
125
|
+
</group>
|
126
|
+
</group>
|
127
|
+
</layout>
|
128
|
+
</citation>
|
129
|
+
<bibliography hanging-indent="true" et-al-min="4" et-al-use-first="1">
|
130
|
+
<sort>
|
131
|
+
<key macro="author"/>
|
132
|
+
<key variable="title"/>
|
133
|
+
</sort>
|
134
|
+
<layout>
|
135
|
+
<text macro="author" suffix=","/>
|
136
|
+
<date variable="issued" prefix=" " suffix=".">
|
137
|
+
<date-part name="year"/>
|
138
|
+
</date>
|
139
|
+
<choose>
|
140
|
+
<if type="bill book graphic legal_case motion_picture report song" match="any">
|
141
|
+
<group prefix=" " delimiter=" " suffix=",">
|
142
|
+
<text macro="title"/>
|
143
|
+
<text macro="edition"/>
|
144
|
+
<text macro="editor"/>
|
145
|
+
</group>
|
146
|
+
<text prefix=" " suffix="." macro="publisher"/>
|
147
|
+
</if>
|
148
|
+
<else-if type="chapter paper-conference" match="any">
|
149
|
+
<text macro="title" prefix=" " suffix="."/>
|
150
|
+
<group prefix=" " delimiter=" ">
|
151
|
+
<text term="in" text-case="capitalize-first"/>
|
152
|
+
<text macro="editor"/>
|
153
|
+
<text variable="container-title" font-style="italic" suffix="."/>
|
154
|
+
<text variable="collection-title" suffix="."/>
|
155
|
+
<group suffix="." delimiter=", ">
|
156
|
+
<text macro="publisher" prefix=" "/>
|
157
|
+
<text macro="pages"/>
|
158
|
+
</group>
|
159
|
+
</group>
|
160
|
+
</else-if>
|
161
|
+
<else-if type="thesis">
|
162
|
+
<group prefix=" " suffix="." delimiter=". ">
|
163
|
+
<text macro="title"/>
|
164
|
+
<text variable="genre"/>
|
165
|
+
<text macro="publisher"/>
|
166
|
+
</group>
|
167
|
+
</else-if>
|
168
|
+
<else>
|
169
|
+
<group suffix=".">
|
170
|
+
<text macro="title" prefix=" "/>
|
171
|
+
<text macro="editor" prefix=" "/>
|
172
|
+
</group>
|
173
|
+
<group prefix=" " suffix=".">
|
174
|
+
<text variable="container-title" font-style="italic"/>
|
175
|
+
<group prefix=", ">
|
176
|
+
<text variable="volume"/>
|
177
|
+
<text variable="issue" prefix="(" suffix=")"/>
|
178
|
+
</group>
|
179
|
+
<group prefix=", ">
|
180
|
+
<label variable="page" suffix="." form="short" strip-periods="true"/>
|
181
|
+
<text variable="page"/>
|
182
|
+
</group>
|
183
|
+
</group>
|
184
|
+
</else>
|
185
|
+
</choose>
|
186
|
+
<text prefix=" " macro="access" suffix="."/>
|
187
|
+
</layout>
|
188
|
+
</bibliography>
|
189
|
+
</style>
|
190
|
+
|
191
|
+
"""
|
192
|
+
And the following input:
|
193
|
+
"""
|
194
|
+
[{"author":[{"literal":"Africa News"}],"container-title":"Africa News","id":"ITEM-1","issued":{"date-parts":[["2006"]]},"title":"Burkina Faso: Journalist Case Puts Spotlight On Justice System","type":"article-journal"},{"author":[{"literal":"Africa News"}],"container-title":"Africa News","id":"ITEM-2","issued":{"date-parts":[["2010"]]},"title":"Niger: Who Really Ousted Tandja, And Why?","type":"article-journal"},{"author":[{"literal":"Africa News"}],"container-title":"Africa News","id":"ITEM-3","issued":{"date-parts":[["2007"]]},"title":"Uganda: Police Protect Besigye Rally","type":"article-journal"},{"author":[{"literal":"Africa News"}],"container-title":"Africa News","id":"ITEM-4","issued":{"date-parts":[["2006"]]},"title":"Uganda: UK, US Deploy Observers","type":"article-journal"}]
|
195
|
+
"""
|
196
|
+
When I render the entire bibliography
|
197
|
+
Then the bibliography should be:
|
198
|
+
"""
|
199
|
+
<div class="csl-bib-body">
|
200
|
+
<div class="csl-entry">Africa News, 2006a. Burkina Faso: Journalist Case Puts Spotlight On Justice System. <i>Africa News</i>.</div>
|
201
|
+
<div class="csl-entry">Africa News, 2010. Niger: Who Really Ousted Tandja, And Why? <i>Africa News</i>.</div>
|
202
|
+
<div class="csl-entry">Africa News, 2007. Uganda: Police Protect Besigye Rally. <i>Africa News</i>.</div>
|
203
|
+
<div class="csl-entry">Africa News, 2006b. Uganda: UK, US Deploy Observers. <i>Africa News</i>.</div>
|
204
|
+
</div>
|
205
|
+
"""
|