# 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 <foo@example.com>",
  { 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