asciidoctor-bibliography 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.codeclimate.yml +5 -0
- data/.gitignore +8 -2
- data/.hound.yml +3 -0
- data/.oss-guides.rubocop.yml +1076 -0
- data/.rubocop.yml +4 -10
- data/.travis.yml +2 -1
- data/Gemfile +1 -1
- data/README.adoc +224 -24
- data/Rakefile +2 -2
- data/asciidoctor-bibliography.gemspec +23 -23
- data/lib/asciidoctor-bibliography.rb +2 -2
- data/lib/asciidoctor-bibliography/asciidoctor.rb +4 -4
- data/lib/asciidoctor-bibliography/asciidoctor/bibliographer_preprocessor.rb +9 -56
- data/lib/asciidoctor-bibliography/bibliographer.rb +6 -7
- data/lib/asciidoctor-bibliography/citation.rb +56 -53
- data/lib/asciidoctor-bibliography/citation_item.rb +19 -10
- data/lib/asciidoctor-bibliography/database.rb +18 -6
- data/lib/asciidoctor-bibliography/databases/bibtex.rb +10 -10
- data/lib/asciidoctor-bibliography/errors.rb +16 -0
- data/lib/asciidoctor-bibliography/formatters/csl.rb +13 -2
- data/lib/asciidoctor-bibliography/formatters/tex.rb +42 -44
- data/lib/asciidoctor-bibliography/helpers.rb +9 -9
- data/lib/asciidoctor-bibliography/index.rb +17 -13
- data/lib/asciidoctor-bibliography/options.rb +97 -0
- data/lib/asciidoctor-bibliography/version.rb +1 -1
- data/samples/latex_macros_in_bibtex/sample.adoc +1 -1
- data/samples/standard/sample-default.adoc +3 -3
- data/samples/standard/sample-default.html +9 -8
- data/samples/standard/sample-din.adoc +1 -1
- data/samples/standard/sample-din.html +4 -3
- data/samples/standard/sample-ieee.adoc +1 -1
- data/samples/standard/sample-ieee.html +4 -3
- data/samples/tex/sample-authoryear.adoc +7 -17
- data/samples/tex/sample-authoryear.html +10 -32
- data/samples/tex/sample-numbers.adoc +7 -18
- data/samples/tex/sample-numbers.html +7 -29
- data/samples/tex/{sample-ordering.adoc → sample-sort.adoc} +6 -4
- data/spec/citation_item_spec.rb +67 -19
- data/spec/database_spec.rb +21 -16
- data/spec/helpers_spec.rb +46 -44
- data/spec/options_spec.rb +43 -0
- data/spec/spec_helper.rb +53 -55
- metadata +9 -7
- data/lib/asciidoctor-bibliography/exceptions.rb +0 -5
- data/samples/tex/sample-din.adoc +0 -74
- data/samples/tex/sample-din.html +0 -556
- data/samples/tex/sample-ordering.html +0 -467
@@ -9,26 +9,26 @@ module AsciidoctorBibliography
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def self.html_to_asciidoc(string)
|
12
|
-
string
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
12
|
+
string.
|
13
|
+
gsub(%r{<\/?i>}, "_").
|
14
|
+
gsub(%r{<\/?b>}, "*").
|
15
|
+
gsub(%r{<\/?span.*?>}, "").
|
16
|
+
gsub(/\{|\}/, "")
|
17
17
|
# TODO: bracket dropping is inappropriate here.
|
18
18
|
end
|
19
19
|
|
20
20
|
# NOTE: mostly stolen from ActiveSupport.
|
21
21
|
def self.to_sentence(array, options = {})
|
22
22
|
default_connectors = {
|
23
|
-
:
|
24
|
-
:
|
25
|
-
:
|
23
|
+
words_connector: ", ",
|
24
|
+
two_words_connector: " and ",
|
25
|
+
last_word_connector: ", and ",
|
26
26
|
}
|
27
27
|
options = default_connectors.merge!(options)
|
28
28
|
|
29
29
|
case array.length
|
30
30
|
when 0
|
31
|
-
|
31
|
+
""
|
32
32
|
when 1
|
33
33
|
array[0].to_s.dup
|
34
34
|
when 2
|
@@ -1,7 +1,7 @@
|
|
1
|
-
require
|
2
|
-
require_relative
|
1
|
+
require "asciidoctor/attribute_list"
|
2
|
+
require_relative "formatters/csl"
|
3
3
|
|
4
|
-
require_relative
|
4
|
+
require_relative "helpers"
|
5
5
|
|
6
6
|
module AsciidoctorBibliography
|
7
7
|
class Index
|
@@ -16,16 +16,21 @@ module AsciidoctorBibliography
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def render(bibliographer)
|
19
|
-
formatter = Formatters::CSL.new(bibliographer.options
|
20
|
-
|
21
|
-
|
22
|
-
|
19
|
+
formatter = Formatters::CSL.new(bibliographer.options.style)
|
20
|
+
|
21
|
+
unless bibliographer.options.sort.nil?
|
22
|
+
formatter.replace_bibliography_sort bibliographer.options.sort
|
23
|
+
end
|
24
|
+
|
25
|
+
filtered_db = bibliographer.occurring_keys.
|
26
|
+
map { |id| bibliographer.database.find_entry_by_id(id) }.
|
27
|
+
map { |entry| prepare_entry_metadata bibliographer, entry }
|
23
28
|
formatter.import filtered_db
|
24
29
|
formatter.sort(mode: :bibliography)
|
25
30
|
|
26
31
|
lines = []
|
27
32
|
formatter.bibliography.each_with_index do |reference, index|
|
28
|
-
line =
|
33
|
+
line = "{empty}"
|
29
34
|
line << "anchor:#{anchor_id(formatter.data[index].id)}[]"
|
30
35
|
line << Helpers.html_to_asciidoc(reference)
|
31
36
|
lines << line
|
@@ -36,13 +41,13 @@ module AsciidoctorBibliography
|
|
36
41
|
end
|
37
42
|
|
38
43
|
def prepare_entry_metadata(bibliographer, entry)
|
39
|
-
entry
|
40
|
-
|
41
|
-
|
44
|
+
entry.
|
45
|
+
merge('citation-number': bibliographer.appearance_index_of(entry["id"])).
|
46
|
+
merge('citation-label': entry["id"]) # TODO: smart label generators
|
42
47
|
end
|
43
48
|
|
44
49
|
def anchor_id(target)
|
45
|
-
[
|
50
|
+
["bibliography", target].compact.join("-")
|
46
51
|
end
|
47
52
|
|
48
53
|
def render_entry_label(target, formatter)
|
@@ -54,4 +59,3 @@ module AsciidoctorBibliography
|
|
54
59
|
end
|
55
60
|
end
|
56
61
|
end
|
57
|
-
|
@@ -0,0 +1,97 @@
|
|
1
|
+
require "asciidoctor"
|
2
|
+
require_relative "errors"
|
3
|
+
require "csl/styles"
|
4
|
+
|
5
|
+
module AsciidoctorBibliography
|
6
|
+
class Options < Hash
|
7
|
+
PREFIX = "bibliography-".freeze
|
8
|
+
|
9
|
+
DEFAULTS = {
|
10
|
+
"bibliography-database" => nil,
|
11
|
+
"bibliography-style" => "apa",
|
12
|
+
"bibliography-hyperlinks" => "true",
|
13
|
+
"bibliography-order" => "alphabetical", # TODO: deprecate
|
14
|
+
"bibliography-tex-style" => "authoryear",
|
15
|
+
"bibliography-sort" => nil,
|
16
|
+
}.freeze
|
17
|
+
|
18
|
+
def initialize
|
19
|
+
merge DEFAULTS
|
20
|
+
end
|
21
|
+
|
22
|
+
def style
|
23
|
+
# Error throwing delegated to CSL library. Seems to have nice messages.
|
24
|
+
self["bibliography-style"] || DEFAULTS["bibliography-style"]
|
25
|
+
end
|
26
|
+
|
27
|
+
def hyperlinks?
|
28
|
+
value = self["bibliography-hyperlinks"] || DEFAULTS["bibliography-hyperlinks"]
|
29
|
+
unless %w[true false].include? value
|
30
|
+
message = "Option :bibliography-hyperlinks: has an invalid value (#{value}). Allowed values are 'true' and 'false'."
|
31
|
+
raise Errors::Options::Invalid, message
|
32
|
+
end
|
33
|
+
|
34
|
+
value == "true"
|
35
|
+
end
|
36
|
+
|
37
|
+
def database
|
38
|
+
value = self["bibliography-database"] || DEFAULTS["bibliography-database"]
|
39
|
+
if value.nil?
|
40
|
+
message = "Option :bibliography-database: is mandatory. A bibliographic database is required."
|
41
|
+
raise Errors::Options::Missing, message
|
42
|
+
end
|
43
|
+
|
44
|
+
value
|
45
|
+
end
|
46
|
+
|
47
|
+
def sort
|
48
|
+
begin
|
49
|
+
value = YAML.safe_load self["bibliography-sort"].to_s
|
50
|
+
rescue Psych::SyntaxError => psych_error
|
51
|
+
message = "Option :bibliography-sort: is not a valid YAML string: \"#{psych_error}\"."
|
52
|
+
raise Errors::Options::Invalid, message
|
53
|
+
end
|
54
|
+
|
55
|
+
value = self.class.validate_parsed_sort_type! value
|
56
|
+
value = self.class.validate_parsed_sort_contents! value unless value.nil?
|
57
|
+
value
|
58
|
+
end
|
59
|
+
|
60
|
+
def tex_style
|
61
|
+
self["bibliography-tex-style"] || DEFAULTS["bibliography-tex-style"]
|
62
|
+
end
|
63
|
+
|
64
|
+
def self.validate_parsed_sort_type!(value)
|
65
|
+
return value if value.nil?
|
66
|
+
return value if value.is_a?(Array) && value.all? { |v| v.is_a? Hash }
|
67
|
+
return [value] if value.is_a? Hash
|
68
|
+
message = "Option :bibliography-sort: has an invalid value (#{value}). Please refer to manual for more info."
|
69
|
+
raise Errors::Options::Invalid, message
|
70
|
+
end
|
71
|
+
|
72
|
+
def self.validate_parsed_sort_contents!(array)
|
73
|
+
# TODO: should we restrict these? Double check the CSL spec.
|
74
|
+
allowed_keys = %w[variable macro sort names-min names-use-first names-use-last]
|
75
|
+
return array unless array.any? { |hash| (hash.keys - allowed_keys).any? }
|
76
|
+
message = "Option :bibliography-sort: has a value containing invalid keys (#{array}). Allowed keys are #{allowed_keys.inspect}. Please refer to manual for more info."
|
77
|
+
raise Errors::Options::Invalid, message
|
78
|
+
end
|
79
|
+
|
80
|
+
def self.new_from_reader(reader)
|
81
|
+
header_attributes = get_header_attributes_hash reader
|
82
|
+
header_attributes.select! { |key, _| DEFAULTS.keys.include? key }
|
83
|
+
new.merge header_attributes
|
84
|
+
end
|
85
|
+
|
86
|
+
def self.get_header_attributes_hash(reader)
|
87
|
+
# We peek at the document attributes we need, without perturbing the parsing flow.
|
88
|
+
# NOTE: we'll use this in a preprocessor and they haven't been parsed yet, there.
|
89
|
+
tmp_document = ::Asciidoctor::Document.new
|
90
|
+
tmp_reader = ::Asciidoctor::PreprocessorReader.new(tmp_document, reader.source_lines)
|
91
|
+
|
92
|
+
::Asciidoctor::Parser.
|
93
|
+
parse(tmp_reader, tmp_document, header_only: true).
|
94
|
+
attributes
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
@@ -1,9 +1,11 @@
|
|
1
1
|
= Sample usage of asciidoctor-bibliography
|
2
2
|
:bibliography-database: biblio.bib
|
3
|
-
:bibliography-hyperlinks:
|
3
|
+
:bibliography-hyperlinks: true
|
4
4
|
|
5
5
|
## Standard
|
6
6
|
|
7
|
+
cite:[Lane12a]+[Lane12b]
|
8
|
+
|
7
9
|
cite:[Anderson04]
|
8
10
|
|
9
11
|
cite:[Anderson04, page=10]
|
@@ -12,8 +14,6 @@ cite:[Anderson04, chapter=10]
|
|
12
14
|
|
13
15
|
cite:[Anderson04, page=10, chapter=12]
|
14
16
|
|
15
|
-
cite:[Lane12a]+[Lane12b]
|
16
|
-
|
17
17
|
cite:[Lane12a, page=42]+[Lane12b, opus=12]
|
18
18
|
|
19
19
|
## Bibliography
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]-->
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
7
7
|
<meta name="generator" content="Asciidoctor 1.5.6.1">
|
8
|
-
<title>
|
8
|
+
<title>Sample usage of asciidoctor-bibliography</title>
|
9
9
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700">
|
10
10
|
<style>
|
11
11
|
/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */
|
@@ -427,28 +427,29 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
427
427
|
</head>
|
428
428
|
<body class="article">
|
429
429
|
<div id="header">
|
430
|
+
<h1>Sample usage of asciidoctor-bibliography</h1>
|
430
431
|
</div>
|
431
432
|
<div id="content">
|
432
433
|
<div class="sect1">
|
433
434
|
<h2 id="_standard">Standard</h2>
|
434
435
|
<div class="sectionbody">
|
435
436
|
<div class="paragraph">
|
436
|
-
<p>(
|
437
|
+
<p>(<a href="#bibliography-Lane12a">Lane, 2000</a>; <a href="#bibliography-Lane12b">Mane & Smith, 2000</a>)</p>
|
437
438
|
</div>
|
438
439
|
<div class="paragraph">
|
439
|
-
<p>(Anderson et al., 2004
|
440
|
+
<p>(<a href="#bibliography-Anderson04">Anderson et al., 2004</a>)</p>
|
440
441
|
</div>
|
441
442
|
<div class="paragraph">
|
442
|
-
<p>(Anderson et al., 2004,
|
443
|
+
<p>(<a href="#bibliography-Anderson04">Anderson et al., 2004, p. 10</a>)</p>
|
443
444
|
</div>
|
444
445
|
<div class="paragraph">
|
445
|
-
<p>(Anderson et al., 2004, chap.
|
446
|
+
<p>(<a href="#bibliography-Anderson04">Anderson et al., 2004, chap. 10</a>)</p>
|
446
447
|
</div>
|
447
448
|
<div class="paragraph">
|
448
|
-
<p>(
|
449
|
+
<p>(<a href="#bibliography-Anderson04">Anderson et al., 2004, p. 10</a>)</p>
|
449
450
|
</div>
|
450
451
|
<div class="paragraph">
|
451
|
-
<p>(Lane, 2000, p. 42
|
452
|
+
<p>(<a href="#bibliography-Lane12a">Lane, 2000, p. 42</a>; <a href="#bibliography-Lane12b">Mane & Smith, 2000, op. 12</a>)</p>
|
452
453
|
</div>
|
453
454
|
</div>
|
454
455
|
</div>
|
@@ -469,7 +470,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
469
470
|
</div>
|
470
471
|
<div id="footer">
|
471
472
|
<div id="footer-text">
|
472
|
-
Last updated 2017-09-
|
473
|
+
Last updated 2017-09-17 18:42:29 CEST
|
473
474
|
</div>
|
474
475
|
</div>
|
475
476
|
</body>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]-->
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
7
7
|
<meta name="generator" content="Asciidoctor 1.5.6.1">
|
8
|
-
<title>
|
8
|
+
<title>Sample usage of asciidoctor-bibliography</title>
|
9
9
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700">
|
10
10
|
<style>
|
11
11
|
/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */
|
@@ -427,6 +427,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
427
427
|
</head>
|
428
428
|
<body class="article">
|
429
429
|
<div id="header">
|
430
|
+
<h1>Sample usage of asciidoctor-bibliography</h1>
|
430
431
|
</div>
|
431
432
|
<div id="content">
|
432
433
|
<div class="sect1">
|
@@ -442,7 +443,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
442
443
|
<p>[<a href="#bibliography-Anderson04">Anderson04, chap.10</a>]</p>
|
443
444
|
</div>
|
444
445
|
<div class="paragraph">
|
445
|
-
<p>[<a href="#bibliography-Anderson04">Anderson04,
|
446
|
+
<p>[<a href="#bibliography-Anderson04">Anderson04, p.10</a>]</p>
|
446
447
|
</div>
|
447
448
|
<div class="paragraph">
|
448
449
|
<p>[<a href="#bibliography-Lane12a">Lane12a</a>; <a href="#bibliography-Lane12b">Lane12b</a>]</p>
|
@@ -469,7 +470,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
469
470
|
</div>
|
470
471
|
<div id="footer">
|
471
472
|
<div id="footer-text">
|
472
|
-
Last updated 2017-09-
|
473
|
+
Last updated 2017-09-16 21:33:46 CEST
|
473
474
|
</div>
|
474
475
|
</div>
|
475
476
|
</body>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]-->
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
7
7
|
<meta name="generator" content="Asciidoctor 1.5.6.1">
|
8
|
-
<title>
|
8
|
+
<title>Sample usage of asciidoctor-bibliography</title>
|
9
9
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700">
|
10
10
|
<style>
|
11
11
|
/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */
|
@@ -427,6 +427,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
427
427
|
</head>
|
428
428
|
<body class="article">
|
429
429
|
<div id="header">
|
430
|
+
<h1>Sample usage of asciidoctor-bibliography</h1>
|
430
431
|
</div>
|
431
432
|
<div id="content">
|
432
433
|
<div class="sect1">
|
@@ -442,7 +443,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
442
443
|
<p><a href="#bibliography-Anderson04">[1, Ch. 10]</a></p>
|
443
444
|
</div>
|
444
445
|
<div class="paragraph">
|
445
|
-
<p><a href="#bibliography-Anderson04">[1,
|
446
|
+
<p><a href="#bibliography-Anderson04">[1, P. 10]</a></p>
|
446
447
|
</div>
|
447
448
|
<div class="paragraph">
|
448
449
|
<p><a href="#bibliography-Lane12a">[2]</a>, <a href="#bibliography-Lane12b">[3]</a></p>
|
@@ -469,7 +470,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
469
470
|
</div>
|
470
471
|
<div id="footer">
|
471
472
|
<div id="footer-text">
|
472
|
-
Last updated 2017-09-
|
473
|
+
Last updated 2017-09-16 21:33:46 CEST
|
473
474
|
</div>
|
474
475
|
</div>
|
475
476
|
</body>
|
@@ -1,23 +1,9 @@
|
|
1
1
|
= Sample usage of asciidoctor-bibliography
|
2
2
|
:bibliography-database: biblio.bib
|
3
|
+
:bibliography-tex-style: authoryear
|
4
|
+
:bibliography-style: apa
|
3
5
|
|
4
|
-
##
|
5
|
-
|
6
|
-
cite:[Lane12a]+[Lane12b]
|
7
|
-
|
8
|
-
cite:[Anderson04]
|
9
|
-
|
10
|
-
cite:[Anderson04, page=10]
|
11
|
-
|
12
|
-
cite:[Anderson04, chapter=10]
|
13
|
-
|
14
|
-
cite:[Anderson04, page=10, chapter=12]
|
15
|
-
|
16
|
-
## TeX-compatible
|
17
|
-
|
18
|
-
fullcite:[Anderson04] (fullcite, single)
|
19
|
-
|
20
|
-
fullcite:[Anderson04, page=123] (fullcite, single)
|
6
|
+
## Citations
|
21
7
|
|
22
8
|
citet:[Anderson04] (citet, single)
|
23
9
|
|
@@ -67,7 +53,11 @@ citeyearpar:[Anderson04] (citeyearpar, single)
|
|
67
53
|
|
68
54
|
citeyearpar:[Lane12a]+[Lane12b] (citeyearpar, multiple)
|
69
55
|
|
56
|
+
fullcite:[Anderson04] (fullcite)
|
57
|
+
|
58
|
+
|
70
59
|
## Bibliography
|
71
60
|
|
61
|
+
|
72
62
|
bibliography::[]
|
73
63
|
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]-->
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
7
7
|
<meta name="generator" content="Asciidoctor 1.5.6.1">
|
8
|
-
<title>
|
8
|
+
<title>Sample usage of asciidoctor-bibliography</title>
|
9
9
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700">
|
10
10
|
<style>
|
11
11
|
/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */
|
@@ -427,38 +427,13 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
427
427
|
</head>
|
428
428
|
<body class="article">
|
429
429
|
<div id="header">
|
430
|
+
<h1>Sample usage of asciidoctor-bibliography</h1>
|
430
431
|
</div>
|
431
432
|
<div id="content">
|
432
433
|
<div class="sect1">
|
433
|
-
<h2 id="
|
434
|
+
<h2 id="_citations">Citations</h2>
|
434
435
|
<div class="sectionbody">
|
435
436
|
<div class="paragraph">
|
436
|
-
<p>(<a href="#bibliography-Lane12a">Lane 2000</a>; <a href="#bibliography-Lane12b">Mane and Smith 2000</a>)</p>
|
437
|
-
</div>
|
438
|
-
<div class="paragraph">
|
439
|
-
<p>(<a href="#bibliography-Anderson04">Anderson et al. 2004</a>)</p>
|
440
|
-
</div>
|
441
|
-
<div class="paragraph">
|
442
|
-
<p>(<a href="#bibliography-Anderson04">Anderson et al. 2004, p. 10</a>)</p>
|
443
|
-
</div>
|
444
|
-
<div class="paragraph">
|
445
|
-
<p>(<a href="#bibliography-Anderson04">Anderson et al. 2004, chap. 10</a>)</p>
|
446
|
-
</div>
|
447
|
-
<div class="paragraph">
|
448
|
-
<p>(<a href="#bibliography-Anderson04">Anderson et al. 2004, chap. 12</a>)</p>
|
449
|
-
</div>
|
450
|
-
</div>
|
451
|
-
</div>
|
452
|
-
<div class="sect1">
|
453
|
-
<h2 id="_tex_compatible">TeX-compatible</h2>
|
454
|
-
<div class="sectionbody">
|
455
|
-
<div class="paragraph">
|
456
|
-
<p>Anderson, J. R., D. Bothell, M. D. Byrne, S. Douglass, C. Lebiere, and Y. L. Qin. 2004. “An Integrated Theory of the Mind.” <em>Psychological Review</em> 111 (4): 1036–60. (fullcite, single)</p>
|
457
|
-
</div>
|
458
|
-
<div class="paragraph">
|
459
|
-
<p>Anderson, J. R., D. Bothell, M. D. Byrne, S. Douglass, C. Lebiere, and Y. L. Qin. 2004. “An Integrated Theory of the Mind.” <em>Psychological Review</em> 111 (4): 123. (fullcite, single)</p>
|
460
|
-
</div>
|
461
|
-
<div class="paragraph">
|
462
437
|
<p><a href="#bibliography-Anderson04">Anderson et al. (2004)</a> (citet, single)</p>
|
463
438
|
</div>
|
464
439
|
<div class="paragraph">
|
@@ -530,26 +505,29 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
|
|
530
505
|
<div class="paragraph">
|
531
506
|
<p>(<a href="#bibliography-Lane12a">2000</a>; <a href="#bibliography-Lane12b">2000</a>) (citeyearpar, multiple)</p>
|
532
507
|
</div>
|
508
|
+
<div class="paragraph">
|
509
|
+
<p>Anderson, J. R., Bothell, D., Byrne, M. D., Douglass, S., Lebiere, C., & Qin, Y. L. (2004). An integrated theory of the mind. <em>Psychological Review</em>, <em>111</em>(4), 1036–1060. (fullcite)</p>
|
510
|
+
</div>
|
533
511
|
</div>
|
534
512
|
</div>
|
535
513
|
<div class="sect1">
|
536
514
|
<h2 id="_bibliography">Bibliography</h2>
|
537
515
|
<div class="sectionbody">
|
538
516
|
<div class="paragraph">
|
539
|
-
<p><a id="bibliography-Anderson04"></a>Anderson, J. R., D
|
517
|
+
<p><a id="bibliography-Anderson04"></a>Anderson, J. R., Bothell, D., Byrne, M. D., Douglass, S., Lebiere, C., & Qin, Y. L. (2004). An integrated theory of the mind. <em>Psychological Review</em>, <em>111</em>(4), 1036–1060.</p>
|
540
518
|
</div>
|
541
519
|
<div class="paragraph">
|
542
|
-
<p><a id="bibliography-Lane12a"></a>Lane, P. 2000. <em>Book
|
520
|
+
<p><a id="bibliography-Lane12a"></a>Lane, P. (2000). <em>Book title</em>. Publisher.</p>
|
543
521
|
</div>
|
544
522
|
<div class="paragraph">
|
545
|
-
<p><a id="bibliography-Lane12b"></a>Mane, K.,
|
523
|
+
<p><a id="bibliography-Lane12b"></a>Mane, K., & Smith, D. (2000). <em>Book title</em>. Publisher.</p>
|
546
524
|
</div>
|
547
525
|
</div>
|
548
526
|
</div>
|
549
527
|
</div>
|
550
528
|
<div id="footer">
|
551
529
|
<div id="footer-text">
|
552
|
-
Last updated 2017-09-
|
530
|
+
Last updated 2017-09-17 18:31:37 CEST
|
553
531
|
</div>
|
554
532
|
</div>
|
555
533
|
</body>
|