# our homepage url
baseURL = "https://cullmann.io/"

# default author
[Author]
name = "Christoph Cullmann"

[outputs]
# JSON for search
home = ["HTML", "RSS", "JSON"]

[ params ]
dateFormat = "January 2, 2006"
commit = true
rss = false


#
# links to my public profiles
#

[[params.social]]
name = "E-Mail"
icon = "fa fa-envelope"
weight = 1
url = "mailto:christoph@cullmann.io"

[[ params . social ]]
name = "GitHub"
icon = "fab fa-github"
weight = 2
url = "https://github.com/christoph-cullmann/"


# Single quoted keys: examples from spec
'key2' = "value"
'quoted "value"' = "value"

# Syntax used in Cargo.toml for platform-specific deps
[target.'cfg(all(windows, target_env="msvc"))'.build-dependencies]
vcpkg = { 'version' = '0.2' }

= "no key name" # INVALID
"" = "blank" # VALID but discouraged
'' = 'blank' # VALID but discouraged
name = "Orange"
fruit.name = "banana" # this is best practice
fruit. color = "yellow" # same as fruit.color
fruit . flavor = "banana" # same as fruit.flavor
site."google.com" = true
str4 = """Here are two quotation marks: "". Simple enough."""
# str5 = """Here are three quotation marks: """.""" # INVALID
str5 = """Here are three quotation marks: ""\".""" # comment
str6 = """Here are fifteen quotation marks: ""\"""\"""\"""\"""\".""" # comment

# "This," she said, "is just a pointless statement."
str7 = """"This," she said, "is just a pointless statement."""" # comment
str7 = """""This," she said, "is just a pointless statement.""""" # comment
str7 = """Here are fifteen quotation marks: """""" # INVALID

quot15 = '''Here are fifteen quotation marks: """""""""""""""''' # comment
str = ''''That,' she said, 'is still pointless.'''' # comment
str = '''''That,' she said, 'is still pointless.''''' # comment
str = '''''That,' she said, 'is still pointless.'''''' # INVALID

str = "x\tx\xx\nx\ux\xx\u123x\u12345x\U1234x\U1234567x\U123456789x"

int1 = +99
int2 = 42
int3 = 0
int4 = -17

int5 = 1_000
int6 = 5_349_221
int7 = 53_49_221 # Indian number system grouping
int8 = 1_2_3_4_5 # VALID but discouraged

# Invalid due to leading zeros
int9 = 030
int10 = 0_30

# hexadecimal with prefix `0x`
hex1 = 0xDEADBEEF
hex2 = 0xdeadbeef
hex3 = 0xdead_beef

# octal with prefix `0o`
oct1 = 0o01234567
oct2 = 0o755 # useful for Unix file permissions

# binary with prefix `0b`
bin1 = 0b11010110

# fractional
flt1 = +1.0
flt2 = 3.1415
flt3 = -0.01

# exponent
flt4 = 5e+22
flt5 = 1e06
flt6 = -2E-2

# both
flt7 = 6.626e-34

flt0 = 0.0
flt0 = +0.0
flt0 = -0.0

# INVALID FLOATS
invalid_float_1 = .7
invalid_float_2 = 7.
invalid_float_3 = 3.e+20
invalid_float_4 = 00.1

flt8 = 224_617.445_991_228

# infinity
sf1 = inf # positive infinity
sf2 = +inf # positive infinity
sf3 = -inf # negative infinity

# not a number
sf4 = nan # actual sNaN/qNaN encoding is implementation-specific
sf5 = +nan # same as `nan`
sf6 = -nan # valid, actual encoding is implementation-specific

# RFC 3339
odt1 = 1979-05-27T07:32:00+01:30
odt1 = 1979-05-27T07:32:00Z
odt2 = 1979-05-27T00:32:00-07:00
odt3 = 1979-05-27T00:32:00.999999-07:00
# RFC 3339 section 5.6
odt4 = 1979-05-27 07:32:00Z

ldt1 = 1979-05-27T07:32:00
ldt2 = 1979-05-27T00:32:00.999999
ld1 = 1979-05-27
lt1 = 07:32:00
lt2 = 00:32:00.999999

integers = [ 1, 2, 3 ]
colors = [ "red", "yellow", "green" ]
nested_arrays_of_ints = [ [ 1, 2 ], [3, 4, 5] ]
nested_mixed_array = [ [ 1, 2 ], ["a", "b", "c"] ]
string_array = [ "all", 'strings', """are the same""", '''type''' ]

# Mixed-type arrays are allowed
numbers = [ 0.1, 0.2, 0.5, 1, 2, 5 ]
contributors = [
"Foo Bar ",
{ name = "Baz Qux", email = "bazqux@example.com", url = "https://example.com/bazqux" }
]

integers3 = [
1,
2, # this is ok
]

name = { first = "Tom", last = "Preston-Werner" }
point = { x = 1, y = 2 }
animal = { type.name = "pug" }

key = "value" "INVALID" # comment