Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7117a1e60f
|
||
|
|
9be60483a5 | ||
|
|
214a956f42 | ||
|
|
eebb2a9d7e | ||
|
|
c179c25fe9 | ||
|
|
d90cdc1894 | ||
|
|
f0961eeb8b | ||
|
|
7d40e146fb | ||
|
|
8f3ef0d1d0
|
||
|
|
28d0951b85
|
||
|
|
ccd0e62ce2
|
||
|
|
081b821457
|
||
|
|
57c961dd18
|
||
|
|
4e4e93e096
|
||
|
|
5b0bdf333f
|
||
|
|
a903bf0fc8
|
||
|
|
ee570f7487
|
||
|
|
ef03fdfbc4
|
||
|
|
07c8fa50f9
|
||
|
|
8da80916df
|
||
|
|
588eca1c7d | ||
|
|
7f3183bd92 | ||
|
|
3e70585ffa | ||
|
|
1230057477 | ||
|
|
60a54cccf5 | ||
|
|
7ad3c5ad65
|
||
|
|
079e80edb2
|
||
|
|
4761b49867
|
||
|
|
e4c1350ebc
|
||
|
|
b0dac5f91a | ||
|
|
d0e7fe4371
|
||
|
|
0cd345a123
|
||
|
|
d296f3a3f1
|
||
|
|
338fee564f
|
||
|
|
a2f2b6e59c
|
||
|
|
a76b261348
|
||
|
|
093fcf88fd
|
||
|
|
9bb814f108
|
||
|
|
c306e56ec6 | ||
|
|
7ed699d2f7
|
||
|
|
257926d7a5
|
||
|
|
647fddbf18
|
||
|
|
93a7794c2e
|
||
|
|
40cc652aeb
|
||
|
|
600925157a
|
||
|
|
ed552faef2
|
||
|
|
1e095a8b26
|
||
|
|
5d8eb4763e
|
||
|
|
5ad6c10b65
|
||
|
|
05a66f4956
|
No files matched your search
@@ -11,12 +11,19 @@ links below to their main page.
|
||||
- [**codly-languages**](https://typst.app/universe/package/codly-languages): A
|
||||
set of language configurations for use with
|
||||
[codly](https://typst.app/universe/package/codly).
|
||||
- [easy-typography](https://typst.app/universe/package/easy-typography): Sets up
|
||||
sensible typography defaults.
|
||||
- [**glossy**](https://typst.app/universe/package/glossy): A very simple
|
||||
glossary system with easily customizable output.
|
||||
- [**rfc-vibe**](https://typst.app/universe/package/rfc-vibe): Bring RFC language
|
||||
into everyday docs.
|
||||
- [**run-liners**](https://typst.app/universe/package/run-liners): Functions to
|
||||
create various run-in lists.
|
||||
- [**swank-tex**](https://typst.app/universe/package/swank-tex): Render those
|
||||
funky logos for TeX, LaTeX, and friends.
|
||||
- [**tasteful-pairings**](https://typst.app/universe/package/tasteful-pairings):
|
||||
A carefully curated collection of font pairings focusing on readability and
|
||||
typographic harmony.
|
||||
|
||||
## Templates
|
||||
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
# remove-diff-out.sh
|
||||
#
|
||||
# Removes all files (including hidden) in any <pkg>/tests/<test>/diff or out directories.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# 1) Make the shell match hidden files (dotfiles) in globs.
|
||||
# 2) Let an empty glob expand to zero arguments rather than itself.
|
||||
shopt -s dotglob nullglob
|
||||
|
||||
# 2) Loop over any matching directories: <pkg>/tests/<test>/{diff,out}
|
||||
for dir in */tests/*/{diff,out}; do
|
||||
# Only proceed if it's actually a directory
|
||||
if [[ -d "$dir" ]]; then
|
||||
echo "Removing files under: $dir"
|
||||
# Remove everything inside (including hidden files)
|
||||
rm -rf -- "$dir"/*
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Done!"
|
||||
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 Stephen Waits <steve@waits.net>
|
||||
Copyright (c) 2025 Stephen Waits <steve@waits.net>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
@@ -13,7 +13,7 @@ Configure `codly` with the languages. Like this:
|
||||
#import "@preview/codly:1.1.1": *
|
||||
#show: codly-init
|
||||
|
||||
#import "@preview/codly-languages:0.1.3": *
|
||||
#import "@preview/codly-languages:0.1.6": *
|
||||
#codly(languages: codly-languages)
|
||||
```
|
||||
|
||||
@@ -24,82 +24,38 @@ languages, should look like this:
|
||||
|
||||
## Contributing
|
||||
|
||||
The following languages are still missing. All contributions welcome.
|
||||
|
||||
- ASP
|
||||
- ActionScript
|
||||
- Ada
|
||||
- AppleScript
|
||||
- AsciiDoc
|
||||
- Batch File
|
||||
- CFML
|
||||
- CSV
|
||||
- Cabal
|
||||
- Crontab
|
||||
- D
|
||||
- Diff
|
||||
- DotENV
|
||||
- Email
|
||||
- Fish
|
||||
- Fstab
|
||||
- GLSL
|
||||
- Graphviz
|
||||
- Groff
|
||||
- Group
|
||||
- INI
|
||||
- Jinja2
|
||||
- Jsonnet
|
||||
- Lean
|
||||
- LiveScript
|
||||
- Makefile
|
||||
- MediaWiki
|
||||
- NSIS
|
||||
- Ninja
|
||||
- Org mode
|
||||
- Pascal
|
||||
- Passwd
|
||||
- Protobuf
|
||||
- Puppet
|
||||
- QML
|
||||
- Racket
|
||||
- Rego
|
||||
- Regular Expressions
|
||||
- Resolv
|
||||
- RestructuredText
|
||||
- Robot
|
||||
- SLS
|
||||
- SML
|
||||
- Slim
|
||||
- Strace
|
||||
- SublimeEthereum
|
||||
- SublimeJQ
|
||||
- SystemVerilo
|
||||
- TCL
|
||||
- TOML
|
||||
- Textile
|
||||
- TodoTxt
|
||||
- Verilog
|
||||
- WGSL
|
||||
- cmd-help
|
||||
- gnuplot
|
||||
- hosts
|
||||
- http-request-response
|
||||
- varlink
|
||||
- vscode-wgsl
|
||||
Some languages are still missing. All contributions welcome.
|
||||
|
||||
## Icon Attribution
|
||||
|
||||
The `typst-small.png` icon included in this package came from the MIT-licensed
|
||||
[codly](https://github.com/Dherse/codly) project.
|
||||
| **Icon** | **Source** | **License** |
|
||||
| ----------------- | --------------------------------------------- | -------------------------------- |
|
||||
| `css3.svg` | [CSS-Next/logo.css][css3-source] | [CC0][css3-license] |
|
||||
| `cuda.svg` | [vscode-icons/vscode-icons][cuda-source] | [MIT][cuda-license] |
|
||||
| `lisp.svg` | [Wikipedia (User:Jooja)][lisp-source] | [CC BY-SA 4.0][lisp-license] |
|
||||
| `nextflow.svg` | [nextflow-io/trademark][nextflow-source] | [Limited Use][nextflow-license] |
|
||||
| `splunk.svg` | [denali-design/denali-icons][splunk-source] | [MIT][splunk-license] |
|
||||
| `typst-small.png` | [Dherse/codly][typst-source] | [MIT][typst-license] |
|
||||
|
||||
The `lisp.svg` icon comes [from
|
||||
Wikipedia](https://commons.wikimedia.org/wiki/File:Lisp_logo.svg), attribution:
|
||||
Jooja, CC BY-SA 4.0 <https://creativecommons.org/licenses/by-sa/4.0>, via
|
||||
Wikimedia Commons.
|
||||
[css3-source]: https://github.com/CSS-Next/logo.css/blob/main/css.svg?short_path=c59d4da
|
||||
[css3-license]: https://github.com/CSS-Next/logo.css/blob/main/LICENSE
|
||||
[cuda-source]: https://github.com/vscode-icons/vscode-icons/tree/master
|
||||
[cuda-license]: https://github.com/vscode-icons/vscode-icons/blob/master/LICENSE
|
||||
[lisp-source]: https://commons.wikimedia.org/wiki/File:Lisp_logo.svg
|
||||
[lisp-license]: https://commons.wikimedia.org/wiki/File:Lisp_logo.svg#Licensing
|
||||
[nextflow-source]: https://github.com/nextflow-io/trademark
|
||||
[nextflow-license]: https://github.com/nextflow-io/trademark/blob/master/README.md
|
||||
[splunk-source]: https://github.com/denali-design/denali-icons/blob/master/svg/splunk.svg
|
||||
[splunk-license]: https://github.com/denali-design/denali-icons/blob/master/LICENSE.md
|
||||
[typst-source]: https://github.com/Dherse/codly
|
||||
[typst-license]: https://github.com/Dherse/codly/blob/main/LICENSE
|
||||
|
||||
All other icons included here came from the MIT-licensed
|
||||
[devicon](https://github.com/devicons/devicon/) project.
|
||||
All icons not listed in this table come from the
|
||||
[devicons/devicon][default-source] project, [MIT licensed][default-license].
|
||||
|
||||
[default-source]: https://github.com/devicons/devicon/
|
||||
[default-license]: https://github.com/devicons/devicon/blob/master/LICENSE
|
||||
|
||||
## License
|
||||
|
||||
This package is released under the MIT License.
|
||||
This package is released under the [MIT License](LICENSE).
|
||||
@@ -1 +1,2 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><g fill="#0a094d"><path d="M114.33 75.056c.136-.547-.375-1.063-.715-.723-.418.422-.703.25-.582-.347.07-.36.035-.563-.102-.563-.36 0-.23-.527.207-.836.23-.16.801-.293 1.27-.297.469 0 .98-.09 1.133-.203.218-.152.168-.176-.22-.09-.276.063-.734.024-1.01-.082-.38-.144-.645-.12-1.075.094-.715.355-.703.36-.703-.078 0-.25-.153-.383-.485-.422l-.48-.063.41-.437c.438-.469.914-.48 2.2-.066.84.27.769.004-.133-.504-.852-.477-1.434-1.137-3.598-4.07-2.305-3.118-2.469-3.52-2.57-6.153l-.086-2.203-1.196-1.402c-.656-.77-1.28-1.454-1.386-1.52-.106-.062-.618-.168-1.137-.23-1.067-.125-1.133-.278-.547-1.27.46-.789 1.07-.879 1.953-.293.313.207.692.367.848.363.176-.007.12-.09-.14-.218-.235-.11-.423-.262-.423-.336 0-.211 2.477-.375 3.2-.207 1.5.343 1.98.87 2.234 2.445.172 1.066.285 1.281 1.058 2.008.473.449 1.344 1.047 1.934 1.328s1.414.789 1.836 1.125c.992.789 2.547 3.062 3.078 4.492.23.621.512 1.238.625 1.379.309.371-.187.625-.988.5a13.79 13.79 0 0 0-1.598-.117c-.52-.008-1.055-.106-1.191-.215-.348-.281-1.266-2.363-1.434-3.242-.293-1.563-.855-2.14-2.832-2.91-1.418-.551-1.523-.637-2.285-1.825-.7-1.09-.832-1.91-.3-1.87.546.042.398-.688-.192-.97-.403-.195-.668-.203-1.153-.042-.418.136-.886.148-1.406.03-.426-.097-.777-.132-.777-.077 0 .05.437.57.973 1.152 1.562 1.711 1.687 1.988 1.546 3.461-.082.852-.05 1.352.098 1.531.121.145.203.336.184.422-.02.09.105.477.273.863.172.383.313.828.313.985 0 .16.132.289.296.289.22 0 .258.11.16.422-.113.351-.09.386.133.199.22-.18.313-.11.512.379.133.328.324.797.422 1.043.098.242.34.484.54.535.202.05.41.324.476.613.062.285.27.688.457.89.187.204.402.552.472.774.176.551 1.024 1.117 1.805 1.207.492.059.652.164.652.442 0 .199.098.343.215.32.121-.023.32.086.45.234.124.153.316.278.425.278.11 0 0-.211-.242-.469s-.39-.523-.324-.59c.066-.062.344.149.617.477.547.648 1.176 1.054 1.36.87.066-.062-.262-.44-.723-.843-.461-.398-.774-.789-.7-.867.079-.078.352.062.61.312 1.242 1.203 2.25 1.864 2.855 1.864.285 0 .282-.035-.02-.368-.179-.199-.277-.445-.214-.55a.217.217 0 0 0-.07-.301c-.102-.063-.578-.875-1.059-1.805-.48-.93-1.031-1.773-1.227-1.879-.699-.375-.324-.492 1.458-.457l1.816.04 1.562 1.663c.86.918 1.532 1.696 1.493 1.735-.036.039-.239-.02-.45-.133-.52-.281-.57-.262-.457.172.11.418-.129.496-.468.152-.125-.12-.29-.156-.368-.078-.078.082.36.606.977 1.164.66.602 1.047 1.082.938 1.176-.247.21-4.247-.055-4.739-.32-.219-.118-.742-.211-1.164-.211-.637 0-.765.062-.765.37 0 .755-.614 1.872-1.434 2.622-.465.422-.887.77-.934.77s-.035-.2.028-.438zm.902-1.223c-.082-.25-.062-.261.082-.054.152.207.242.171.477-.192.156-.246.312-.617.347-.82.051-.32-.027-.367-.504-.313-.671.078-1.199.336-1.644.797-.403.422-.414.547-.043.547.156 0 .426.168.598.371.367.426.855.188.687-.336zm-.656-.605c.469-.39.777-.473.777-.211 0 .152-.828.601-1.09.59-.07-.004.067-.176.313-.38zm6.515-2.625c-.066-.106-.203-.188-.304-.188-.106 0-.137.082-.07.188.062.101.199.187.3.187.106 0 .137-.086.074-.187zm-.582-2.371c.512-.196.329-.45-.242-.332-.308.058-.597.015-.668-.102-.176-.281-.535-.262-.437.023.043.13.281.29.531.36.254.07.473.137.488.144.02.012.168-.03.328-.093zm-1.77-.996c0-.09-.132-.22-.296-.282-.461-.175-.523-.136-.266.168.258.313.563.375.563.114zm-2.41-2.317c-.136-.137-.222-.148-.222-.027 0 .25.223.472.348.347.054-.054-.004-.199-.125-.32zm.508-.61c-.324-.32-1.546-1.042-1.628-.956-.059.054-.07.129-.028.16.043.031.324.246.621.473.446.335 1.325.613 1.035.324zm1.34-.476c0-.226-.691-.672-1.32-.847-.422-.122-.402-.079.191.441.66.582 1.13.75 1.13.406zm-1.847-3.05c-.137-.137-.223-.149-.223-.032 0 .254.223.473.348.348.054-.05-.004-.195-.125-.317zm-1.352-.985c0-.047-.086-.137-.187-.2-.106-.062-.188-.026-.188.083 0 .11.082.2.188.2.101 0 .187-.036.187-.083zm-2.527-.77c-.387-.289-.602-.242-.395.086.067.114.266.2.442.196.277-.004.273-.04-.047-.281zm-4.242-4.976a.196.196 0 0 0-.2-.191c-.109 0-.148.085-.086.191.067.102.157.187.2.187.047 0 .086-.085.086-.187zm-3.575-.191c0-.102-.191-.184-.425-.184-.34.004-.368.039-.141.184.367.238.566.238.566 0zm10.657 15.3c-.067-.07-.125-.25-.125-.402 0-.219.054-.227.28-.04.157.13.286.31.286.4 0 .195-.262.218-.441.042zm-2.579-2.867c-.355-.3-.578-.617-.496-.703.086-.086.243-.008.348.18.102.187.39.414.64.511.25.094.458.258.458.364 0 .32-.262.222-.95-.352zm-10.66-11.93-.605-.218.476-.614c.352-.449.633-.609 1.047-.609.313 0 .532.063.493.14-.04.079-.215.458-.395.844-.176.391-.34.7-.367.692a84.463 84.463 0 0 1-.649-.235zM20.498 34.126h.922c1.03 0 1.355.164 1.675.84.422.918.422.918.68.918h.371v-2.691c-.422.16-.758.207-1.277.207h-6.29c-.695 0-.968-.047-1.324-.207v2.691h.5c.16 0 .258-.129.34-.465.242-.984.676-1.293 1.805-1.293h1.016v8.762c0 .469-.11.613-.5.68l-.16.015c-.192.031-.29.13-.29.305v.277h3.485v-.277c0-.176-.098-.274-.258-.305l-.18-.015c-.386-.051-.515-.211-.515-.68zm6.281 4.133c.39-.535 1.164-.906 1.89-.906.45 0 .872.148 1.16.437.29.274.387.563.387 1.211v3.758c0 .582-.03.645-.468.758l-.078.035c-.165.047-.227.129-.227.32v.293h3.016v-.293c0-.191-.063-.304-.207-.32l-.13-.035c-.40Line truncated
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><title>file_type_awk</title><path d="M26.925,27.737C23.431,26.1,24.606,14.588,13.81,8.319,14.089,5.792,14.758-.5,7.961,3,6.845,3.128,4.907,2.331,4,4.831v.114C16.918,3.9.088,10.53,16.75,25.844c-.373.176-.674-.325-1.97.1l-.014.016c-1.722,1.135,1.933.768,4.154,1.274-1.611.417-5.594-1.137-6.3,1.645.877-.37,1,.329,1.076,1.077A26.277,26.277,0,0,1,22.379,27.5c1.1.285,4.118,2.049,5.122.551C27.519,27.93,27.221,27.876,26.925,27.737Z"/><path d="M10.446,2.97l-.121.088a.266.266,0,0,0-.011.377.211.211,0,0,0,.045.039.416.416,0,0,0,.521-.063.263.263,0,0,0,.078-.364l-.01-.014c-.076-.143-.163-.177-.34-.127C10.553,2.925,10.5,2.946,10.446,2.97Z" style="fill:#d2d2d2"/><path d="M18,26.368c.151-.041.318-.828.174-.949A6.29,6.29,0,0,0,19.4,26.485c1.023,1.007,2.665-.032,3.482.759a10.736,10.736,0,0,0,1.957,1.027c-.139-.151-.029-.144.179-.011-.13-.338-4.421-5.156-5.226-7.18.095.293-1.608-.824-2.076-1.419-.028.056-.092-.251-.228-.434-.041.05-.2-.433-.3-.728.037.187-.462-.5-.65-.818-.056.09-.719.372-.809.286-.729-.4,2.529,4.066.122,2.559.676.683.614.4-1.095-.852.364.452-.317.312-1.553-1.523.186.2-.218-.576-.218-.576a2.692,2.692,0,0,0-.133-.483c-.056-.32-.241-.723-.12-.65-1.444-1.556,1.314-3.3.719-3.671-.111,0-.027.017-.151-.106-.09,0-.468.285-.587-.234.006.132-.034.406-.153-.1-.023.052.015.1-.03.145-.225-.576-.772-1.6-1.217-2.539-.158.155-.138-.076-.193-1.092.053.144-.225,1.921-.2.13-.128.007.108,1.258-.343.21-.141.05-.305-.363-.341-1.178-.048.623-.29.187-.5-.923-.269.508-1.6,1.743-.333,7.622-.053-.313.186.341.755,2.427.021-.039-.022-.083.038-.131a6.324,6.324,0,0,0,.677,1.365c.544.658.995,2.074.8,1.277a11.867,11.867,0,0,0,2.554,3.249A34.423,34.423,0,0,0,18,26.368Z" style="fill:#d2d2d2"/><path d="M10.823,2.557a.291.291,0,0,0-.051-.022c-.221-.04-.429.153-.654.032-.145.085-.257-.036-.375-.073a.224.224,0,0,0-.2.014,5.823,5.823,0,0,0-.814.582,1.037,1.037,0,0,0-.273.449c-.021.048-.037.126.05.137a2.3,2.3,0,0,0,.682.045c.177-.028.277-.152.418-.221a1.2,1.2,0,0,0,.592-.68c.064-.175.161-.167.28-.2S10.7,2.62,10.823,2.557Z" style="fill:#d2d2d2"/><path d="M10.325,3.058l.121-.088a.117.117,0,0,1,.12.064c.044.1.106.112.193.047.033-.025.071-.058.118-.027a.119.119,0,0,1,.041.128.276.276,0,0,1-.187.248.266.266,0,0,1-.3-.03C10.341,3.308,10.26,3.2,10.325,3.058Z"/></svg>
|
||||
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 2.4 KiB |
@@ -1 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><path fill="#1572B6" d="M18.814 114.123L8.76 1.352h110.48l-10.064 112.754-45.243 12.543-45.119-12.526z"/><path fill="#33A9DC" d="M64.001 117.062l36.559-10.136 8.601-96.354h-45.16v106.49z"/><path fill="#fff" d="M64.001 51.429h18.302l1.264-14.163H64.001V23.435h34.682l-.332 3.711-3.4 38.114h-30.95V51.429z"/><path fill="#EBEBEB" d="M64.083 87.349l-.061.018-15.403-4.159-.985-11.031H33.752l1.937 21.717 28.331 7.863.063-.018v-14.39z"/><path fill="#fff" d="M81.127 64.675l-1.666 18.522-15.426 4.164v14.39l28.354-7.858.208-2.337 2.406-26.881H81.127z"/><path fill="#EBEBEB" d="M64.048 23.435v13.831H30.64l-.277-3.108-.63-7.012-.331-3.711h34.646zm-.047 27.996v13.831H48.792l-.277-3.108-.631-7.012-.33-3.711h16.447z"/></svg>
|
||||
<!--from https://github.com/CSS-Next/logo.css/blob/main/css.svg?short_path=c59d4da cc0-->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000" role="img" aria-labelledby="css-logo-title css-logo-description">
|
||||
<path id="bg" fill="#639" d="M0 0H840A160 160 0 0 1 1000 160V840A160 160 0 0 1 840 1000H160A160 160 0 0 1 0 840V0Z" />
|
||||
<path id="fg" fill="#fff" d="m358.1,920c-64.23-.06-103.86-36.23-103.1-102.79,0,0,0-168.39,0-168.39,0-33.74,9.88-59.4,29.64-76.96,35.49-34.19,117.83-36.27,152.59.52,21.42,18.89,29.5,57.48,27.58,93.49h-73.72c.56-14.15-.19-35.58-8.51-43.65-10.81-14.63-39.36-12.91-46.91,2.32-4.64,8.26-6.96,20.49-6.96,36.67v146.18c0,30.65,10.65,46.15,31.96,46.49,9.96,0,17.53-3.62,22.68-10.85,7.19-8.58,8.31-27.58,7.73-41.32h73.72c5.04,70.07-36.32,119.16-106.71,118.29Zm234.04,0c-71.17.98-103.01-49.66-101.04-118.29h69.59c-1.93,29.92,8.35,57.17,32.99,55.27,10.99,0,18.73-3.44,23.2-10.33,8.5-12.59,10.09-48.95-2.06-63.02-8.49-13.55-39.03-25.51-55.16-33.57-23.03-11.02-39.61-24.1-49.75-39.26-22.87-33.64-20.75-107.48,11.34-137.4,31.18-36.92,112.61-38.62,143.82-.77,19.25,19.51,27.66,57.9,26.03,93.23h-67.02c.57-14.52-.8-37.95-6.44-46.49-3.95-7.23-11.43-10.85-22.42-10.85-19.59,0-29.38,11.71-29.38,35.12.21,24.86,9.9,35.06,32.48,45.45,29.24,11.36,66.42,30.76,79.9,54.24,40.2,71.54,12.62,180.82-86.09,176.65Zm224.76,0c-71.17.98-103.01-49.66-101.04-118.29h69.59c-1.93,29.92,8.35,57.17,32.99,55.27,10.99,0,18.73-3.44,23.2-10.33,8.5-12.59,10.09-48.95-2.06-63.02-8.49-13.55-39.03-25.51-55.16-33.57-23.03-11.02-39.61-24.1-49.75-39.26-22.87-33.64-20.75-107.48,11.34-137.4,31.18-36.92,112.61-38.62,143.82-.77,19.25,19.51,27.66,57.9,26.03,93.23h-67.02c.57-14.52-.8-37.95-6.44-46.49-3.95-7.23-11.43-10.85-22.42-10.85-19.59,0-29.38,11.71-29.38,35.12.21,24.86,9.9,35.06,32.48,45.45,29.24,11.36,66.42,30.76,79.9,54.24,40.2,71.54,12.62,180.82-86.09,176.65Z" />
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 778 B After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>file_type_cuda</title><path d="M12.447,12.265V10.591c.163-.012.327-.02.494-.026,4.577-.143,7.581,3.934,7.581,3.934S17.278,19,13.8,19a4.2,4.2,0,0,1-1.353-.217V13.712c1.782.215,2.14,1,3.212,2.788l2.383-2.009A6.312,6.312,0,0,0,13.37,12.21a8.606,8.606,0,0,0-.923.055m0-5.529v2.5c.164-.013.329-.024.494-.03,6.366-.214,10.513,5.221,10.513,5.221s-4.764,5.792-9.726,5.792a7.4,7.4,0,0,1-1.281-.112v1.545a8.528,8.528,0,0,0,1.067.069c4.618,0,7.958-2.358,11.192-5.15.535.43,2.731,1.474,3.182,1.932-3.075,2.574-10.241,4.649-14.3,4.649-.392,0-.769-.024-1.138-.06v2.172H30V6.736Zm0,12.051v1.32c-4.271-.762-5.457-5.2-5.457-5.2a9.234,9.234,0,0,1,5.457-2.64v1.447h-.006a4.1,4.1,0,0,0-3.184,1.456s.782,2.811,3.19,3.62M4.861,14.713a10.576,10.576,0,0,1,7.586-4.122V9.236C6.848,9.685,2,14.427,2,14.427s2.746,7.939,10.447,8.665v-1.44C6.8,20.941,4.861,14.713,4.861,14.713Z" style="fill:#80bc00"/></svg>
|
||||
|
After Width: | Height: | Size: 945 B |
@@ -1 +1,3 @@
|
||||
<svg viewBox="0 0 128 128" xmlns="http://www.w3.org/2000/svg"><path d="M103.555 95.851L64 80.52 24.446 95.847l15.618-24.436L0 56.447l49.208.23L63.999 32.1l14.794 24.578L128 56.453l-40.065 14.96 15.62 24.438"/><path d="M98.204 91.48l-34.17-13.244-34.168 13.242 13.491-21.11-34.61-12.926 42.506.198L64.03 36.41l12.78 21.23 42.509-.194L84.71 70.37l13.493 21.11" fill="#619cbc"/><path d="M37.804 44.66c3.413 0 1.424 8.528.21 11.1-1.04 2.201-3.38 5.377-6.153 5.377-3.327 0-3.228-3.727-1.904-6.532.717-1.52 1.82-3.222 3.338-4.474-.39 1.307.925 2.2.393 3.325-.363.769-1.114 1.609-1.504 2.436-.631 1.337-.39 3.71 1.135 3.71 1.365 0 2.578-1.692 3.075-2.745 1.019-2.158 3.566-11.366.719-11.366-3.28 0-8.93 7.99-10.113 10.497-2.112 4.474-.58 9.984 4.231 9.984 3.252 0 5.926-3.126 7.218-5.862a14.931 14.931 0 001.353-4.781l.632-.116c.139 4.21 4.592 11.18 2.697 15.196-2.427 5.14-9.681 5.094-13.824 6.918-.87-2.037-2.05-3.93-3.711-5.376 3.695-1.243 12.775-3.33 14.75-7.512.83-1.758.264-4.671-.694-5.659a10.916 10.916 0 01-.689 1.89c-1.69 3.58-5.31 6.357-9.041 6.357-5.196 0-7.398-3.733-4.953-8.913 1.467-3.109 8.96-13.455 12.835-13.455"/><path d="M37.804 44.66c3.413 0 1.424 8.528.21 11.1-1.04 2.201-3.38 5.377-6.153 5.377-3.327 0-3.228-3.727-1.904-6.532.717-1.52 1.82-3.222 3.338-4.474-.39 1.307.925 2.2.393 3.325-.363.769-1.114 1.609-1.504 2.436-.631 1.337-.39 3.71 1.135 3.71 1.365 0 2.578-1.692 3.075-2.745 1.019-2.158 3.566-11.366.719-11.366-3.28 0-8.93 7.99-10.113 10.497-2.112 4.474-.58 9.984 4.231 9.984 3.252 0 5.926-3.126 7.218-5.862a14.931 14.931 0 001.353-4.781l.632-.116c.139 4.21 4.592 11.18 2.697 15.196-2.427 5.14-9.681 5.094-13.824 6.918-.87-2.037-2.05-3.93-3.711-5.376 3.695-1.243 12.775-3.33 14.75-7.512.83-1.758.264-4.671-.694-5.659a10.916 10.916 0 01-.689 1.89c-1.69 3.58-5.31 6.357-9.041 6.357-5.196 0-7.398-3.733-4.953-8.913 1.467-3.109 8.96-13.455 12.835-13.455z" fill="none" stroke="#000" stroke-linejoin="round" stroke-miterlimit="3.864" stroke-width="5.7179996"/><path d="M46.681 57.002c.206.508.803 3.38 1.256 3.38.979 0 2.748-2.663 3.222-3.355.87.57.388 1.767 2 1.767.73 0 1.098-1.573 1.858-1.599.026.636.067 1.211-.28 1.946-.534 1.132-1.886 2.666-3.215 2.666-.953 0-2.279-1.146-2.54-1.146-.282 0-.802.132-.967.483-.693 1.467 1.158 6.363 3.014 6.363.992 0 2.175-.728 3.213-1.176-.27 1.764-.308 3.251.05 4.77a5.674 5.674 0 01-2.942.85c-4.56 0-2.045-10.605-6.25-12.865l1.58-2.084"/><path d="M46.681 57.002c.206.508.803 3.38 1.256 3.38.979 0 2.748-2.663 3.222-3.355.87.57.388 1.767 2 1.767.73 0 1.098-1.573 1.858-1.599.026.636.067 1.211-.28 1.946-.534 1.132-1.886 2.666-3.215 2.666-.953 0-2.279-1.146-2.54-1.146-.282 0-.802.132-.967.483-.693 1.467 1.158 6.363 3.014 6.363.992 0 2.175-.728 3.213-1.176-.27 1.764-.308 3.251.05 4.77a5.674 5.674 0 01-2.942.85c-4.56 0-2.045-10.605-6.25-12.865z" fill="none" stroke="#000" stroke-linejoin="round" stroke-miterlimit="3.864" stroke-width="5.7179996"/><path d="M64.209 56.154c3.447 0 4.808 6.2 3.261 9.476-1.2 2.542-3.327 4.384-6.052 4.384-4.812 0-4.21-6.56-2.332-10.538.518-1.096 2.287-3.484 3.67-3.484.51 0 .93.162 1.453.162zm-.107.579c-.542 0-1.02.268-1.27.802-.53 1.118 2.105 2.25 1.727 3.051-.238.504-1.144.976-1.601.976-2.284 0-2.265-2.972-.903-4.908-.847.539-1.402 1.363-1.762 2.127-1.338 2.835-.276 6.734 2.778 6.734 1.688 0 3.631-1.516 4.387-3.117.93-1.968-1.448-5.665-3.356-5.665" fill-rule="evenodd"/><path d="M64.209 56.154c3.447 0 4.808 6.2 3.261 9.476-1.2 2.542-3.327 4.384-6.052 4.384-4.812 0-4.21-6.56-2.332-10.538.518-1.096 2.287-3.484 3.67-3.484.51 0 .93.162 1.453.162z" fill="none" stroke="#000" stroke-linejoin="round" stroke-miterlimit="3.864" stroke-width="5.7179996"/><path d="M64.101 56.733c-.542 0-1.02.268-1.271.802-.528 1.119 2.106 2.25 1.728 3.051-.238.504-1.144.976-1.601.976-2.284 0-2.265-2.972-.903-4.908-.847.54-1.402 1.363-1.762 2.127-1.339 2.835-.277 6.735 2.778 6.735 1.687 0 3.631-1.517 4.387-3.117.93-1.968-1.448-5.666-3.356-5.666z" fill="none" stroke="#000" stroke-linejoin="round" stroke-miterlimit="3.864" stroke-width="5.7179996"/><path d="M79.875 66.36c-.901 1.908-2.58 2.955-4.47 2.955-5.997 0-7.187-5.469-4.587-10.975.613-1.3 1.62-2.737 3.159-2.737 4.818 0 8.174 5.933 5.897 10.757zM75.09 56.293c-.443 0-.83.16-1.043.61-.466.989 2.072 1.87 2.075 2.892-.265.314-1.007.665-1.33.665-1.828 0-3.208-2.478-1.647-4.32-.634.403-1.01 1.005-1.277 1.57-1.582 3.352.673 6.74 3.96 6.74 1.368 0 3.13-.76 3.841-2.266 1.006-2.13-2.576-5.89-4.58-5.89" fill-rule="evenodd"/><path d="M79.875 66.36c-.901 1.908-2.58 2.955-4.47 2.955-5.997 0-7.187-5.469-4.587-10.975.613-1.3 1.62-2.737 3.159-2.737 4.818 0 8.174 5.933 5.897 10.757z" fill="none" stroke="#000" stroke-linejoin="round" stroke-miterlimit="3.864" stroke-width="5.7179996"/><path d="M75.089 56.294c-.442 0-.83.16-1.043.61-.466.988 2.072 1.87 2.076 2.892-.265.313-1.008.665-1.331.665-1.828 0-3.208-2.478-1.647-4.32-.633.402-1.01 1.004-1.277 1.57-1.582 3.352.674 6.74 3.96 6.74 1.368 0 3.131-.76 3.842-2.266 1.005-2.13-2.576-5.89-4.58-5.89z" fill="none" stroke="#Line truncated
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-star" viewBox="0 0 16 16">
|
||||
<path d="M2.866 14.85c-.078.444.36.791.746.593l4.39-2.256 4.389 2.256c.386.198.824-.149.746-.592l-.83-4.73 3.522-3.356c.33-.314.16-.888-.282-.95l-4.898-.696L8.465.792a.513.513 0 0 0-.927 0L5.354 5.12l-4.898.696c-.441.062-.612.636-.283.95l3.523 3.356-.83 4.73zm4.905-2.767-3.686 1.894.694-3.957a.56.56 0 0 0-.163-.505L1.71 6.745l4.052-.576a.53.53 0 0 0 .393-.288L8 2.223l1.847 3.658a.53.53 0 0 0 .393.288l4.052.575-2.906 2.77a.56.56 0 0 0-.163.506l.694 3.957-3.686-1.894a.5.5 0 0 0-.461 0z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 623 B |
@@ -0,0 +1,6 @@
|
||||
<svg width="251" height="251" viewBox="0 0 251 251" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M0 47.0195C39.45 49.6394 71.06 81.3272 73.54 120.815H119.61C117.05 55.8589 64.93 3.64245 0 0.942627V47.0195Z" fill="#0DC09D"/>
|
||||
<path d="M73.8 131.324C71.18 170.771 39.49 202.379 0 204.859V250.926C64.96 248.366 117.18 196.249 119.88 131.324H73.8Z" fill="#0DC09D"/>
|
||||
<path d="M176.201 120.545C178.821 81.0972 210.511 49.4894 250.001 47.0095V0.942627C185.041 3.50245 132.821 55.619 130.121 120.545H176.201Z" fill="#0DC09D"/>
|
||||
<path d="M250.001 204.849C210.551 202.229 178.941 170.542 176.461 131.054H130.391C132.951 196.01 185.071 248.226 250.001 250.926V204.849Z" fill="#0DC09D"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 693 B |
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- License: MIT. Made by Denali Design: https://github.com/denali-design/denali-icons -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg">
|
||||
<title>splunk</title>
|
||||
<g id="Layer_2" data-name="Layer 2">
|
||||
<g id="invisible_box" data-name="invisible box">
|
||||
<rect width="48" height="48" fill="none"/>
|
||||
</g>
|
||||
<g id="Q3_icons" data-name="Q3 icons">
|
||||
<path d="M37.5,4h-27A6.5,6.5,0,0,0,4,10.5v27A6.5,6.5,0,0,0,10.5,44h27A6.5,6.5,0,0,0,44,37.5v-27A6.5,6.5,0,0,0,37.5,4ZM33.6,26.1c0,.1,0,.2-.2.3L14.7,35.8c-.1.1-.3-.1-.3-.2V30.8c0-.1,0-.2.1-.2l13.6-6.8L14.5,16.9c-.1,0-.1-.1-.1-.2V11.9c0-.1.2-.3.3-.2l18.7,9.4a.5.5,0,0,1,.2.4Z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 743 B |
@@ -42,6 +42,8 @@
|
||||
cplusplus: (name: "C++", color: rgb("#00599c"), icon: __icon("cplusplus.svg")),
|
||||
cpp: (name: "C++", color: rgb("#00599c"), icon: __icon("cplusplus.svg")),
|
||||
cxx: (name: "C++", color: rgb("#00599c"), icon: __icon("cplusplus.svg")),
|
||||
cuda: (name: "CUDA", color: rgb("#80bc00"), icon: __icon("cuda.svg")),
|
||||
cu: (name: "CUDA", color: rgb("#80bc00"), icon: __icon("cuda.svg")),
|
||||
crystal: (name: "Crystal", color: rgb("#000000"), icon: __icon("crystal.svg")),
|
||||
csharp: (name: "C#", color: rgb("#9b4f96"), icon: __icon("csharp.svg")),
|
||||
cs: (name: "C#", color: rgb("#9b4f96"), icon: __icon("csharp.svg")),
|
||||
@@ -85,6 +87,7 @@
|
||||
markdown: (name: "Markdown", color: rgb("#000000"), icon: __icon("markdown.svg")),
|
||||
matlab: (name: "Matlab", color: rgb("#4499dd"), icon: __icon("matlab.svg")),
|
||||
mysql: (name: "MySQL", color: rgb("#00618a"), icon: __icon("mysql.svg")),
|
||||
nextflow: (name: "Nextflow", color: rgb("#0dc09d"), icon: __icon("nextflow.svg")),
|
||||
neovim: (name: "Neovim", color: rgb("#517d37"), icon: __icon("neovim.svg")),
|
||||
nvim: (name: "Neovim", color: rgb("#517d37"), icon: __icon("neovim.svg")),
|
||||
nginx: (name: "Nginx", color: rgb("#009900"), icon: __icon("nginx.svg")),
|
||||
@@ -123,6 +126,8 @@
|
||||
shell: (name: "Shell", color: rgb("#293138"), icon: __icon("bash.svg")),
|
||||
solidity: (name: "Solidity", color: rgb("#000000"), icon: __icon("solidity.svg")),
|
||||
sol: (name: "Solidity", color: rgb("#000000"), icon: __icon("solidity.svg")),
|
||||
splunk: (name: "Splunk", color: rgb("#76a445"), icon: __icon("splunk.svg")),
|
||||
spl: (name: "Splunk", color: rgb("#76a445"), icon: __icon("splunk.svg")),
|
||||
sql: (name: "SQL", color: rgb("#f2f2f2"), icon: __icon("sql.svg")),
|
||||
sqlite: (name: "SQLite", color: rgb("#0b7fcc"), icon: __icon("sqlite.svg")),
|
||||
ssh-config: (name: "SSH", color: rgb("#231f20"), icon: __icon("ssh.svg")),
|
||||
|
||||
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 76 KiB |
@@ -18,6 +18,7 @@
|
||||
"crystal",
|
||||
"csharp",
|
||||
"css",
|
||||
"cuda",
|
||||
"dart",
|
||||
"docker",
|
||||
"elixir",
|
||||
@@ -48,6 +49,7 @@
|
||||
"matlab",
|
||||
"mysql",
|
||||
"neovim",
|
||||
"nextflow",
|
||||
"nginx",
|
||||
"nim",
|
||||
"nix",
|
||||
@@ -68,6 +70,7 @@
|
||||
"sass",
|
||||
"scala",
|
||||
"solidity",
|
||||
"splunk",
|
||||
"sql",
|
||||
"sqlite",
|
||||
"ssh-config",
|
||||
@@ -108,6 +111,7 @@ Found all base languages!
|
||||
"cpp",
|
||||
"cs",
|
||||
"cxx",
|
||||
"cu",
|
||||
"dockerfile",
|
||||
"erl",
|
||||
"ex",
|
||||
@@ -133,6 +137,7 @@ Found all base languages!
|
||||
"sh",
|
||||
"shell",
|
||||
"sol",
|
||||
"spl",
|
||||
"ssh",
|
||||
"styl",
|
||||
"tf",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "codly-languages"
|
||||
version = "0.1.3"
|
||||
version = "0.1.6"
|
||||
entrypoint = "lib.typ"
|
||||
authors = ["Stephen Waits <steve@waits.net>"]
|
||||
license = "MIT"
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
tests/**/out/
|
||||
tests/**/diff/
|
||||
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2025 Stephen Waits <steve@waits.net>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -0,0 +1,65 @@
|
||||
# Easy Typography for Typst
|
||||
|
||||
A Typst package that simplifies professional typography by providing sensible
|
||||
defaults and easy customization options. Focus on your content while ensuring
|
||||
beautiful, readable documents.
|
||||
|
||||
## Features
|
||||
|
||||
- 🎨 Precise heading scale with clear hierarchy
|
||||
- 📏 Optimal line height and paragraph spacing
|
||||
- 📖 Professional text justification and hyphenation
|
||||
- ⚖️ Balanced vertical rhythm throughout
|
||||
- ⚡ Simple configuration with reasonable defaults
|
||||
|
||||
## Usage
|
||||
|
||||
Basic usage with default settings:
|
||||
|
||||
```typst
|
||||
#import "@preview/easy-typography:0.1.0": *
|
||||
#show: easy-typography
|
||||
|
||||
= Your Document Title
|
||||
Your content here...
|
||||
```
|
||||
|
||||
Customized usage with specific fonts:
|
||||
|
||||
```typst
|
||||
#show: easy-typography.with(
|
||||
fonts: (
|
||||
heading: "Source Sans Pro",
|
||||
body: "Source Serif Pro"
|
||||
),
|
||||
body-size: 11pt,
|
||||
paper: "a4",
|
||||
margin: 2cm
|
||||
)
|
||||
```
|
||||
|
||||
## Configuration Options
|
||||
|
||||
- `body-size`: Base size for body text (default: 10pt)
|
||||
- `fonts`: Dictionary specifying heading and body fonts
|
||||
- `heading`: Font for headings (default: "Libertinus Sans")
|
||||
- `body`: Font for body text (default: "Libertinus Serif")
|
||||
- `paper`: Paper size setting (optional)
|
||||
- `margin`: Page margin setting (optional)
|
||||
|
||||
## Example Output
|
||||
|
||||
The package automatically handles:
|
||||
|
||||
- Heading sizes with natural visual hierarchy (H1-H5)
|
||||
- Optimal spacing between elements
|
||||
- Professional text justification
|
||||
- Smart hyphenation
|
||||
- Consistent vertical rhythm
|
||||
|
||||
See the [example output](thumbnail.png) for more information and a complete
|
||||
example.
|
||||
|
||||
## License
|
||||
|
||||
MIT License - See [LICENSE](LICENSE) for details.
|
||||
@@ -0,0 +1 @@
|
||||
#import "src/main.typ": easy-typography
|
||||
@@ -0,0 +1,29 @@
|
||||
// Constants
|
||||
|
||||
// space above H1
|
||||
#let heading-above-max = 1.25em
|
||||
|
||||
// space above H5
|
||||
#let heading-above-min = 0.80em
|
||||
|
||||
// space below H1
|
||||
#let heading-below-max = 0.65em
|
||||
|
||||
// space below H5
|
||||
#let heading-below-min = 0.55em
|
||||
|
||||
// font size for H1
|
||||
#let heading-size-max = 1.10em
|
||||
|
||||
// font size for H5
|
||||
#let heading-size-min = 1.00em
|
||||
|
||||
// default text weight -- light is best for reading, and printers are fine with
|
||||
// it these days
|
||||
#let body-weight = "light"
|
||||
|
||||
// line spacing -- tight; efficient but still readable with good fonts
|
||||
#let line-spacing = 1.30
|
||||
|
||||
// paragraph spacing -- defaults to a double-space
|
||||
#let paragraph-spacing = 1.70
|
||||
@@ -0,0 +1,102 @@
|
||||
#import "constants.typ": *
|
||||
|
||||
/// The main function for easy typography setup.
|
||||
///
|
||||
/// - body-size (): The size of body text (default 10pt).
|
||||
/// - fonts (): A dictionary specifying heading/body fonts.
|
||||
/// - paper (str): The paper size to use (none to skip).
|
||||
/// - margin (): Margin for the page (none to skip).
|
||||
/// -> content
|
||||
#let easy-typography(
|
||||
body-size: 10pt,
|
||||
fonts: (heading: "Libertinus Sans", body: "Libertinus Serif"),
|
||||
paper: none,
|
||||
margin: none,
|
||||
body
|
||||
) = {
|
||||
// Optional page setup
|
||||
if paper != none {
|
||||
set page(paper: paper)
|
||||
}
|
||||
if margin != none {
|
||||
set page(margin: margin)
|
||||
}
|
||||
|
||||
// Paragraphs
|
||||
set par(
|
||||
leading: line-spacing * 0.5em,
|
||||
spacing: paragraph-spacing * 0.5em,
|
||||
justify: true,
|
||||
linebreaks: "optimized",
|
||||
)
|
||||
|
||||
// Body text
|
||||
set text(
|
||||
font: fonts.body,
|
||||
fallback: false,
|
||||
style: "normal",
|
||||
weight: body-weight,
|
||||
stretch: 100%,
|
||||
size: body-size,
|
||||
tracking: 0pt,
|
||||
spacing: 100% + 0pt,
|
||||
baseline: 0pt,
|
||||
overhang: true,
|
||||
hyphenate: true,
|
||||
kerning: true,
|
||||
ligatures: true,
|
||||
number-width: "proportional",
|
||||
// number-type: "lining", // commented: intentionally left up to the font to choose
|
||||
)
|
||||
|
||||
show table: set text(number-width: "tabular")
|
||||
|
||||
/// Top-heavy easing function for heading sizes/spacing.
|
||||
///
|
||||
/// `sqrt(t)` gives biggest decrease at top, gentlest at bottom.
|
||||
///
|
||||
/// - max (length): Biggest size (H1)
|
||||
/// - min (length): Smallest size (H5)
|
||||
/// - level (length): From 1 to 5
|
||||
/// -> length
|
||||
let compute-size(max, min, level) = {
|
||||
if level <= 1 {
|
||||
max
|
||||
} else if level >= 5 {
|
||||
min
|
||||
} else {
|
||||
let t = (level - 1) / 4
|
||||
max - (max - min) * calc.sqrt(t)
|
||||
}
|
||||
}
|
||||
|
||||
// Heading weight logic
|
||||
let compute-weight(level) = {
|
||||
if level <= 1 {
|
||||
"bold"
|
||||
} else if level == 2 {
|
||||
"semibold"
|
||||
} else if level == 3 {
|
||||
"medium"
|
||||
} else {
|
||||
"regular"
|
||||
}
|
||||
}
|
||||
|
||||
// Show headings using computed size/spacing values
|
||||
show heading: it => block(
|
||||
breakable: false,
|
||||
sticky: true,
|
||||
above: compute-size(heading-above-max, heading-above-min, it.level),
|
||||
below: compute-size(heading-below-max, heading-below-min, it.level),
|
||||
text(
|
||||
font: fonts.heading,
|
||||
size: compute-size(heading-size-max, heading-size-min, it.level),
|
||||
weight: compute-weight(it.level),
|
||||
it
|
||||
)
|
||||
)
|
||||
|
||||
// Finally, render the body
|
||||
body
|
||||
}
|
||||
|
After Width: | Height: | Size: 769 KiB |
@@ -0,0 +1,125 @@
|
||||
#import "/lib.typ": *
|
||||
|
||||
#import "@preview/codly:1.2.0": *
|
||||
#import "@preview/codly-languages:0.1.1": *
|
||||
#show: codly-init.with()
|
||||
#codly(languages: codly-languages)
|
||||
|
||||
#show: easy-typography.with(
|
||||
fonts: (heading: "Source Sans 3", body: "Source Serif 4"),
|
||||
)
|
||||
|
||||
= Introducing Easy Typography
|
||||
|
||||
#set heading(numbering: (..nums) => {
|
||||
numbering("1.1.", ..nums.pos().slice(1))
|
||||
})
|
||||
|
||||
The `easy-typography` package transforms complex typographic decisions into
|
||||
simple choices, letting you focus on your content while ensuring professional
|
||||
results. By adjusting the settings to match your specific needs, you can refine
|
||||
the aesthetic or adapt your layout for everything from casual reading to formal
|
||||
publication.
|
||||
|
||||
== Core Typography Features
|
||||
|
||||
The package manages:
|
||||
|
||||
#columns(2)[
|
||||
- Precise heading scale with a clear hierarchy
|
||||
- Optimal line height and paragraph spacing
|
||||
#colbreak()
|
||||
- Professional text justification and hyphenation
|
||||
- Balanced vertical rhythm throughout
|
||||
]
|
||||
|
||||
These features ensure that your document is both visually appealing and easy to
|
||||
read.
|
||||
|
||||
=== Type Formatting
|
||||
|
||||
This package automatically adjusts line spacing, paragraph spacing, and
|
||||
justification to maintain a clean layout. Headings are also carefully weighted
|
||||
to balance them against the body text, so you can focus on content rather than
|
||||
tweaking spacing and sizing. Standard formatting like *bold* and _italic_
|
||||
integrates seamlessly with `easy-typography`'s approach.
|
||||
|
||||
=== Heading Levels
|
||||
|
||||
The heading scale gracefully steps down, ensuring that each level remains
|
||||
distinct yet consistent. Behind the scenes, `easy-typography` calculates the
|
||||
ideal size for each heading, preserving a cohesive visual hierarchy as your
|
||||
document gets deeper. This approach supports manuals, academic papers, and any
|
||||
long-form text where structure matters. It also helps in shorter documents,
|
||||
guaranteeing a crisp layout with minimal effort.
|
||||
|
||||
== Why Typography Matters
|
||||
|
||||
Good typography isn't just about aesthetics. It's about effective communication.
|
||||
Well-designed text:
|
||||
|
||||
#columns(2)[
|
||||
- Improves reading comprehension
|
||||
- Reduces eye strain
|
||||
- Maintains reader engagement
|
||||
#colbreak()
|
||||
- Establishes visual hierarchy
|
||||
- Conveys professionalism
|
||||
]
|
||||
|
||||
Notice how this document's typography enhances readability. The justified text,
|
||||
proper hyphenation, and optimized line breaks create a clean, professional
|
||||
appearance. With each heading level, the user can quickly scan and digest
|
||||
important information.
|
||||
|
||||
== Example Usage and Output
|
||||
|
||||
#set heading(numbering: none)
|
||||
#show raw.where(block: true): set text(size: 7pt)
|
||||
|
||||
#grid(
|
||||
columns: (55%, auto),
|
||||
gutter: 1.0em,
|
||||
[
|
||||
// code
|
||||
```typst
|
||||
#import "@preview/easy-typography:0.1.0": *
|
||||
#show: easy-typography.with(
|
||||
fonts: (
|
||||
heading: "Source Sans Pro",
|
||||
body: "Source Serif Pro"
|
||||
),
|
||||
)
|
||||
|
||||
#lorem(6)
|
||||
= Level One
|
||||
#lorem(6)
|
||||
== Level Two
|
||||
#lorem(6)
|
||||
=== Level Three
|
||||
#lorem(6)
|
||||
==== Level Four
|
||||
#lorem(6)
|
||||
===== Level Five
|
||||
#lorem(6)
|
||||
```
|
||||
],
|
||||
box(
|
||||
stroke: 0.5pt + silver,
|
||||
inset: 0.5em,
|
||||
radius: 0.2em,
|
||||
[
|
||||
#lorem(6)
|
||||
= Level One
|
||||
#lorem(6)
|
||||
== Level Two
|
||||
#lorem(6)
|
||||
=== Level Three
|
||||
#lorem(6)
|
||||
==== Level Four
|
||||
#lorem(6)
|
||||
===== Level Five
|
||||
#lorem(6)
|
||||
]
|
||||
) // box
|
||||
)
|
||||
|
After Width: | Height: | Size: 306 KiB |
@@ -0,0 +1,10 @@
|
||||
[package]
|
||||
name = "easy-typography"
|
||||
version = "0.1.0"
|
||||
entrypoint = "lib.typ"
|
||||
authors = ["Stephen Waits <steve@waits.net>"]
|
||||
license = "MIT"
|
||||
description = "Sets up sensible typography defaults."
|
||||
keywords = ["easy", "typography", "defaults"]
|
||||
repository = "https://github.com/swaits/typst-collection"
|
||||
exclude = ["thumbnail.png", "tests"]
|
||||
@@ -0,0 +1,2 @@
|
||||
tests/**/out/
|
||||
tests/**/diff/
|
||||
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 Stephen Waits <steve@waits.net>
|
||||
Copyright (c) 2025 Stephen Waits <steve@waits.net>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
@@ -15,15 +15,17 @@ education, experience, skills, and more.
|
||||
To use this template, import it with the version number and utilize the `resume` or `cv` function:
|
||||
|
||||
```typst
|
||||
#import "@preview/finely-crafted-cv:0.1.0": *
|
||||
#import "@preview/finely-crafted-cv:0.3.0": *
|
||||
|
||||
#show: resume.with(
|
||||
name: "Amira Patel",
|
||||
tagline: "Innovative marine biologist with 15+ years of experience in ocean conservation and research.",
|
||||
keywords: "marine biology, conservation, research, education, patents",
|
||||
email: "amira.patel@oceandreams.org",
|
||||
phone: "+1-305-555-7890",
|
||||
linkedin-username: "amirapatel",
|
||||
icon-contact-header: (
|
||||
(image("icons/email.svg"), link("mailto:amira.patel@oceandreams.org", "amira.patel@oceandreams.org")),
|
||||
(image("icons/phone.svg"), link("tel:+13055557890", "+1-305-555-7890")),
|
||||
(image("icons/linkedin.svg"), link("https://www.linkedin.com/in/amirapatel/", "amirapatel")),
|
||||
),
|
||||
thumbnail: image("assets/my-qr-code.svg"),
|
||||
)
|
||||
|
||||
@@ -75,9 +77,8 @@ This is the main function to create a CV document.
|
||||
- `heading-font`: (Font) Font for headings, customizable.
|
||||
- `body-font`: (Font) Font for body text, customizable.
|
||||
- `body-size`: (Size) Font size for body text.
|
||||
- `email`: (String) Your email address.
|
||||
- `phone`: (String) Your phone number.
|
||||
- `linkedin-username`: (String) Your LinkedIn username.
|
||||
- `icon-contact-header`: (Array of Tuples) Array of (icon, content) pairs
|
||||
which will make up the contact header (top of first page).
|
||||
- `keywords`: (String) Keywords for searchability.
|
||||
- `thumbnail`: (Image) Thumbnail or QR code image, optional.
|
||||
- `body`: (Block) The main content of your CV.
|
||||
|
||||
@@ -1,18 +1,32 @@
|
||||
#import "constants.typ":*
|
||||
|
||||
#let icon_and_contact(icon, content) = {
|
||||
grid(
|
||||
columns: 2,
|
||||
align: center+horizon,
|
||||
gutter: COMPANY_ICON_SPACING,
|
||||
if icon != none and content != none {
|
||||
grid(
|
||||
columns: 2,
|
||||
align: center+horizon,
|
||||
gutter: COMPANY_ICON_SPACING,
|
||||
|
||||
box(
|
||||
height: HEADER_ICON_HEIGHT,
|
||||
width: auto,
|
||||
icon
|
||||
),
|
||||
content
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
#let make-icon-header(icon-tuples) = {
|
||||
// what we put between elements
|
||||
let icon-joiner = box(baseline: -0.15em, [#h(0.5em)#sym.divides#h(0.5em)])
|
||||
|
||||
// map them into formatted content, and join
|
||||
icon-tuples.map(((icon, content)) => {
|
||||
box(
|
||||
height: HEADER_ICON_HEIGHT,
|
||||
width: auto,
|
||||
image(icon)
|
||||
),
|
||||
content
|
||||
)
|
||||
icon_and_contact(icon, content)
|
||||
)
|
||||
}).join(icon-joiner)
|
||||
}
|
||||
|
||||
#let hrule(stroke: 1pt + black) = {
|
||||
|
||||
@@ -10,9 +10,7 @@
|
||||
heading-font: HEADING_FONT,
|
||||
body-font: BODY_FONT,
|
||||
body-size: BODY_SIZE,
|
||||
email: none,
|
||||
phone: none,
|
||||
linkedin-username: none,
|
||||
icon-contact-header: none,
|
||||
keywords: "",
|
||||
thumbnail: none, // check out https://qrframe.kylezhe.ng/ for QR code generation
|
||||
body
|
||||
@@ -30,19 +28,13 @@
|
||||
margin: PAGE_MARGIN,
|
||||
numbering: "1 / 1",
|
||||
header: context {
|
||||
if here().page() == 1 {
|
||||
text(
|
||||
size: HEADER_SIZE,
|
||||
grid(
|
||||
columns: (1fr, auto, auto, auto, auto, auto),
|
||||
gutter: 1em,
|
||||
align: center+horizon,
|
||||
"",
|
||||
icon_and_contact("icons/email.svg", link("mailto:" + email, email)),
|
||||
sym.divides,
|
||||
icon_and_contact("icons/phone.svg", link("tel:" + phone, phone)),
|
||||
sym.divides,
|
||||
icon_and_contact("icons/linkedin.svg", link("https://www.linkedin.com/in/" + linkedin-username, linkedin-username))
|
||||
if here().page() == 1 and icon-contact-header != none {
|
||||
grid(
|
||||
columns: (1fr, auto),
|
||||
[],
|
||||
text(
|
||||
size: HEADER_SIZE,
|
||||
make-icon-header(icon-contact-header)
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
#import "@preview/finely-crafted-cv:0.1.0": *
|
||||
#import "@preview/finely-crafted-cv:0.3.0": *
|
||||
|
||||
#show: resume.with(
|
||||
name: "Amira Patel",
|
||||
tagline: "Innovative marine biologist with 15+ years of experience in ocean conservation and research.",
|
||||
keywords: "marine biology, conservation, research, education, patents",
|
||||
email: "amira.patel@oceandreams.org",
|
||||
phone: "+1-305-555-7890",
|
||||
linkedin-username: "amirapatel",
|
||||
icon-contact-header: (
|
||||
(image("icons/email.svg"), link("mailto:amira.patel@oceandreams.org", "amira.patel@oceandreams.org")),
|
||||
(image("icons/phone.svg"), link("tel:+13055557890", "+1-305-555-7890")),
|
||||
(image("icons/linkedin.svg"), link("https://www.linkedin.com/in/amirapatel/", "amirapatel")),
|
||||
),
|
||||
thumbnail: image("assets/my-qr-code.svg"),
|
||||
)
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-2 -2 33 33"><rect x="-2" y="-2" width="33" height="33" fill="#ffffff"></rect><g fill="#000000c6"><path d="M0,0h7v7h-7zM1,1v5h5v-5zM2,2h3v3h-3zM22,0h7v7h-7zM23,1v5h5v-5zM24,2h3v3h-3zM0,22h7v7h-7zM1,23v5h5v-5zM2,24h3v3h-3z"></path><path d="M15,0h1v1h-1zM16,0h1v1h-1zM17,0h1v1h-1zM18,0h1v1h-1zM19,0h1v1h-1zM11,1h1v1h-1zM17,1h1v1h-1zM20,1h1v1h-1zM8,2h1v1h-1zM12,2h1v1h-1zM14,2h1v1h-1zM16,2h1v1h-1zM19,2h1v1h-1zM20,2h1v1h-1zM8,3h1v1h-1zM11,3h1v1h-1zM17,3h1v1h-1zM8,4h1v1h-1zM9,4h1v1h-1zM13,4h1v1h-1zM14,4h1v1h-1zM15,4h1v1h-1zM19,4h1v1h-1zM20,4h1v1h-1zM8,5h1v1h-1zM13,5h1v1h-1zM14,5h1v1h-1zM15,5h1v1h-1zM16,5h1v1h-1zM18,5h1v1h-1zM8,6h1v1h-1zM10,6h1v1h-1zM12,6h1v1h-1zM14,6h1v1h-1zM16,6h1v1h-1zM18,6h1v1h-1zM20,6h1v1h-1zM8,7h1v1h-1zM9,7h1v1h-1zM10,7h1v1h-1zM13,7h1v1h-1zM18,7h1v1h-1zM19,7h1v1h-1zM0,8h1v1h-1zM2,8h1v1h-1zM3,8h1v1h-1zM4,8h1v1h-1zM5,8h1v1h-1zM6,8h1v1h-1zM12,8h1v1h-1zM14,8h1v1h-1zM15,8h1v1h-1zM16,8h1v1h-1zM17,8h1v1h-1zM20,8h1v1h-1zM22,8h1v1h-1zM23,8h1v1h-1zM24,8h1v1h-1zM25,8h1v1h-1zM26,8h1v1h-1zM1,9h1v1h-1zM7,9h1v1h-1zM8,9h1v1h-1zM11,9h1v1h-1zM12,9h1v1h-1zM16,9h1v1h-1zM19,9h1v1h-1zM20,9h1v1h-1zM21,9h1v1h-1zM22,9h1v1h-1zM23,9h1v1h-1zM24,9h1v1h-1zM28,9h1v1h-1zM0,10h1v1h-1zM1,10h1v1h-1zM3,10h1v1h-1zM6,10h1v1h-1zM9,10h1v1h-1zM11,10h1v1h-1zM12,10h1v1h-1zM15,10h1v1h-1zM20,10h1v1h-1zM21,10h1v1h-1zM0,11h1v1h-1zM4,11h1v1h-1zM5,11h1v1h-1zM10,11h1v1h-1zM11,11h1v1h-1zM12,11h1v1h-1zM14,11h1v1h-1zM16,11h1v1h-1zM19,11h1v1h-1zM20,11h1v1h-1zM24,11h1v1h-1zM25,11h1v1h-1zM27,11h1v1h-1zM2,12h1v1h-1zM3,12h1v1h-1zM4,12h1v1h-1zM6,12h1v1h-1zM8,12h1v1h-1zM9,12h1v1h-1zM17,12h1v1h-1zM19,12h1v1h-1zM23,12h1v1h-1zM25,12h1v1h-1zM26,12h1v1h-1zM0,13h1v1h-1zM2,13h1v1h-1zM3,13h1v1h-1zM5,13h1v1h-1zM9,13h1v1h-1zM11,13h1v1h-1zM13,13h1v1h-1zM14,13h1v1h-1zM16,13h1v1h-1zM18,13h1v1h-1zM19,13h1v1h-1zM20,13h1v1h-1zM22,13h1v1h-1zM23,13h1v1h-1zM24,13h1v1h-1zM28,13h1v1h-1zM1,14h1v1h-1zM6,14h1v1h-1zM7,14h1v1h-1zM9,14h1v1h-1zM13,14h1v1h-1zM14,14h1v1h-1zM15,14h1v1h-1zM16,14h1v1h-1zM17,14h1v1h-1zM18,14h1v1h-1zM21,14h1v1h-1zM23,14h1v1h-1zM24,14h1v1h-1zM25,14h1v1h-1zM26,14h1v1h-1zM0,15h1v1h-1zM1,15h1v1h-1zM4,15h1v1h-1zM8,15h1v1h-1zM9,15h1v1h-1zM11,15h1v1h-1zM13,15h1v1h-1zM16,15h1v1h-1zM18,15h1v1h-1zM19,15h1v1h-1zM20,15h1v1h-1zM21,15h1v1h-1zM27,15h1v1h-1zM0,16h1v1h-1zM1,16h1v1h-1zM3,16h1v1h-1zM4,16h1v1h-1zM6,16h1v1h-1zM9,16h1v1h-1zM12,16h1v1h-1zM14,16h1v1h-1zM17,16h1v1h-1zM19,16h1v1h-1zM25,16h1v1h-1zM26,16h1v1h-1zM0,17h1v1h-1zM2,17h1v1h-1zM3,17h1v1h-1zM7,17h1v1h-1zM16,17h1v1h-1zM17,17h1v1h-1zM18,17h1v1h-1zM19,17h1v1h-1zM21,17h1v1h-1zM22,17h1v1h-1zM23,17h1v1h-1zM24,17h1v1h-1zM26,17h1v1h-1zM28,17h1v1h-1zM0,18h1v1h-1zM2,18h1v1h-1zM4,18h1v1h-1zM6,18h1v1h-1zM7,18h1v1h-1zM8,18h1v1h-1zM9,18h1v1h-1zM10,18h1v1h-1zM15,18h1v1h-1zM16,18h1v1h-1zM21,18h1v1h-1zM23,18h1v1h-1zM24,18h1v1h-1zM26,18h1v1h-1zM0,19h1v1h-1zM2,19h1v1h-1zM3,19h1v1h-1zM7,19h1v1h-1zM8,19h1v1h-1zM9,19h1v1h-1zM11,19h1v1h-1zM12,19h1v1h-1zM14,19h1v1h-1zM15,19h1v1h-1zM18,19h1v1h-1zM20,19h1v1h-1zM23,19h1v1h-1zM27,19h1v1h-1zM0,20h1v1h-1zM2,20h1v1h-1zM3,20h1v1h-1zM4,20h1v1h-1zM6,20h1v1h-1zM7,20h1v1h-1zM8,20h1v1h-1zM11,20h1v1h-1zM12,20h1v1h-1zM17,20h1v1h-1zM19,20h1v1h-1zM20,20h1v1h-1zM21,20h1v1h-1zM22,20h1v1h-1zM23,20h1v1h-1zM24,20h1v1h-1zM26,20h1v1h-1zM27,20h1v1h-1zM28,20h1v1h-1zM8,21h1v1h-1zM9,21h1v1h-1zM10,21h1v1h-1zM11,21h1v1h-1zM12,21h1v1h-1zM13,21h1v1h-1zM14,21h1v1h-1zM16,21h1v1h-1zM17,21h1v1h-1zM18,21h1v1h-1zM20,21h1v1h-1zM24,21h1v1h-1zM25,21h1v1h-1zM26,21h1v1h-1zM27,21h1v1h-1zM28,21h1v1h-1zM13,22h1v1h-1zM14,22h1v1h-1zM15,22h1v1h-1zM18,22h1v1h-1zM19,22h1v1h-1zM20,22h1v1h-1zM22,22h1v1h-1zM24,22h1v1h-1zM25,22h1v1h-1zM26,22h1v1h-1zM8,23h1v1h-1zM9,23h1v1h-1zM11,23h1v1h-1zM13,23h1v1h-1zM15,23h1v1h-1zM16,23h1v1h-1zM19,23h1v1h-1zM20,23h1v1h-1zM24,23h1v1h-1zM28,23h1v1h-1zM8,24h1v1h-1zM11,24h1v1h-1zM12,24h1v1h-1zM14,24h1v1h-1zM15,24h1v1h-1zM16,24h1v1h-1zM17,24h1v1h-1zM20,24h1v1h-1zM21,24h1v1h-1zM22,24h1v1h-1zM23,24h1v1h-1zM24,24h1v1h-1zM26,24h1v1h-1zM27,24h1v1h-1zM8,25h1v1h-1zM9,25h1v1h-1zM16,25h1v1h-1zM18,25h1v1h-1zM19,25h1v1h-1zM25,25h1v1h-1zM26,25h1v1h-1zM27,25h1v1h-1zM28,25h1v1h-1zM8,26h1v1h-1zM9,26h1v1h-1zM10,26h1v1h-1zM11,26h1v1h-1zM13,26h1v1h-1zM14,26h1v1h-1zM15,26h1v1h-1zM16,26h1v1h-1zM17,26h1v1h-1zM18,26h1v1h-1zM19,26h1v1h-1zM22,26h1v1h-1zM23,26h1v1h-1zM24,26h1v1h-1zM25,26h1v1h-1zM26,26h1v1h-1zM27,26h1v1h-1zM9,27h1v1h-1zM10,27h1v1h-1zM12,27h1v1h-1zM14,27h1v1h-1zM15,27h1v1h-1zM20,27h1v1h-1zM23,27h1v1h-1zM24,27h1v1h-1zM25,27h1v1h-1zM27,27h1v1h-1zM8,28h1v1h-1zM11,28h1v1h-1zM15,28h1v1h-1zM17,28h1v1h-1zM19,28h1v1h-1zM21,28h1v1h-1zM24,28h1v1h-1zM26,28h1v1h-1z"></path></g></svg>
|
||||
|
After Width: | Height: | Size: 4.5 KiB |
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 511.997 511.997" xml:space="preserve">
|
||||
<path style="fill:#F15A24;" d="M450.018,218.943c-2.63,9.656-7.659,21.352-18.865,37.594c-2.264-1.46-4.659-3.192-7.043-5.243
|
||||
c-12.155-10.452-18.566-23.911-19.6-41.147c-0.881-14.697-13.511-25.901-28.208-25.015c-14.697,0.881-25.897,13.511-25.015,28.208
|
||||
c1.96,32.664,15.962,60.472,40.495,80.418c0.338,0.274,0.674,0.539,1.012,0.807c-12.629,8.742-27.873,16.702-46.267,23.132
|
||||
c-3.846-16.724-9.228-32.735-14.438-48.232c-9.427-28.047-18.333-54.538-19.252-84.142c-0.405-13.037,0.102-28.108,1.105-43.491
|
||||
c26.915-2.012,71.335-9.781,99.811-38.078c10.444-10.379,10.497-27.258,0.117-37.701c-10.378-10.446-27.259-10.496-37.701-0.118
|
||||
c-13.42,13.335-37.516,19.345-57.14,21.78c3.115-26.48,6.223-46.265,6.289-46.684c2.305-14.541-7.614-28.198-22.155-30.504
|
||||
c-14.548-2.307-28.2,7.613-30.506,22.155c-0.611,3.855-14.951,95.09-13.113,154.295c1.165,37.475,12.237,70.413,22.007,99.476
|
||||
c15.624,46.479,27.867,82.9,2.935,128.948c-9.969-27.452-25.982-62.181-51.241-97.577c-9.456-13.251-19.413-26.617-29.955-40.767
|
||||
c-23.301-31.275-48.26-64.778-66.788-96.409c24.322-13.768,55.95-44.956,64.197-115.083c1.72-14.623-8.741-27.871-23.363-29.591
|
||||
c-14.629-1.718-27.871,8.741-29.591,23.363c-5.282,44.92-22.028,64.494-34.167,72.913c-3.163-9.619-5.104-18.776-5.498-27.308
|
||||
c-0.68-14.708-13.13-26.097-27.862-25.4c-14.707,0.679-26.079,13.153-25.4,27.861c2.569,55.604,42.886,116.243,86.772,175.964
|
||||
c-29.89,1.011-67.209-2.714-85.761-21.905c-10.258-10.613-27.197-10.874-37.779-0.56C7.383,271.3,7.795,288.718,18.266,299.311
|
||||
c23.636,23.913,60.036,36.519,108.211,37.473c1.93,0.038,3.835,0.056,5.722,0.056c19.385,0,36.28-1.904,46.524-3.393
|
||||
c3.805,5.186,7.518,10.295,11.122,15.348c46.914,65.745,57.087,129.651,57.174,130.218c1.495,10.18,8.715,18.59,18.551,21.61
|
||||
c2.576,0.79,5.21,1.175,7.822,1.175c7.359-0.001,14.53-3.052,19.659-8.651c11.274-12.304,20.581-24.227,28.222-35.804
|
||||
c8.114,2.147,20.148,4.681,33.663,5.375c2.461,0.126,4.852,0.187,7.184,0.187c40.601,0,62.046-18.54,72.996-34.598
|
||||
c8.295-12.165,5.157-28.751-7.008-37.045c-12.164-8.296-28.75-5.157-37.045,7.008c-9.072,13.305-30.763,12.329-45.97,9.652
|
||||
c3.767-12.337,5.805-24.265,6.536-35.832c73.471-22.012,111.456-64.119,130.592-96.614c9.034-15.341,14.771-29.861,18.41-41.934
|
||||
c4.912-16.296-6.791-32.878-23.785-33.822l0,0C464.497,199.034,453.269,207.01,450.018,218.943z"/>
|
||||
<path d="M273.393,511.997c-3.666,0-7.304-0.547-10.815-1.624c-13.526-4.153-23.593-15.881-25.648-29.878
|
||||
c-0.085-0.531-10.305-62.6-55.385-125.775c-2.303-3.226-4.769-6.644-7.47-10.35c-12.079,1.521-29.003,2.982-47.797,2.613
|
||||
c-50.917-1.008-89.696-14.634-115.264-40.5c-7.072-7.155-11.073-17.036-10.98-27.111c0.092-9.859,3.962-19.01,10.898-25.771
|
||||
c7.072-6.895,16.443-10.625,26.279-10.462c9.875,0.147,19.091,4.138,25.953,11.238c12.908,13.354,37.565,17.638,58.297,18.669
|
||||
c-38.966-54.168-74.32-110.83-76.831-165.169c-0.936-20.303,14.817-37.582,35.118-38.52c9.837-0.455,19.243,2.928,26.518,9.552
|
||||
c7.285,6.635,11.549,15.714,12.004,25.566c0.118,2.569,0.406,5.268,0.862,8.085c7.504-10.112,15.25-26.884,18.486-54.41
|
||||
c2.373-20.18,20.714-34.675,40.91-32.301c20.185,2.373,34.676,20.726,32.303,40.911c-7.763,66.01-35.508,99.888-60.445,117.201
|
||||
c17.558,28.583,39.654,58.241,61.085,87.007c10.594,14.221,20.571,27.613,30.079,40.937c17.031,23.866,31.508,49.53,43.198,76.549
|
||||
c9.438-32.401-0.28-61.319-12.86-98.741c-9.996-29.74-21.323-63.436-22.534-102.414c-1.868-60.18,12.615-152.317,13.234-156.21
|
||||
c3.184-20.072,22.098-33.813,42.178-30.629c20.071,3.183,33.811,22.103,30.63,42.174c-0.105,0.666-2.176,13.915-4.589,32.861
|
||||
c17.351-3.511,30.665-9.325,38.178-16.789c6.955-6.912,16.177-10.714,25.979-10.714c0.039,0,0.078,0,0.116,0
|
||||
c9.846,0.031,19.091,3.893,26.029,10.878c6.94,6.981,10.745,16.249,10.714,26.095c-0.031,9.845-3.894,19.089-10.877,26.029
|
||||
c-27.075,26.906-66.334,36.827-97.335,40.199c-0.677,12.947-0.871,24.294-0.575,33.819c0.872,28.095,9.542,53.89,18.722,81.199
|
||||
c4.115,12.243,8.339,24.806,11.876,37.889c7.88-3.239,15.327-6.884,22.289-10.911c-20.967-20.905-32.94-48.051-34.812-79.234
|
||||
c-0.59-9.827,2.683-19.296,9.215-26.663c6.533-7.366,15.543-11.747,25.371-12.337c9.81-0.597,19.295,2.678,26.664,9.214
|
||||
c7.366,6.533,11.747,15.544,12.336,25.372c0.81,13.495,5.27,23.779,13.978,32.127c5.635-9.255,9.352-17.487,11.508-25.402l0,0
|
||||
c4.478-16.435,20.122-27.676,37.234-26.726c11.269,0.625,21.448,6.287,27.928,15.53c6.456,9.212,8.299,20.664,5.057,31.419
|
||||
c-4.606,15.284-11.128,30.144-19.386,44.166c-19.105,32.442-57.034,75.504-129.801,99.133c-0.696,6.523-1.783,13.024-3.253,19.457
|
||||
c12.378,0.776,21.15-1.54,24.679-6.717c5.547-8.135,13.93-13.622,23.604-15.452c9.674-1.83,19.483,0.216,27.615,5.765
|
||||
c8.133,5.545,13.62,13.927,15.45,23.601c1.831,9.674-0.216,19.482-5.763,27.616c-12.146,17.815-36.133,39.051-81.421,39.051
|
||||
c-2.52,0-5.114-0.067-7.708-0.2c-10.904-0.56-20.887-2.251-28.685-3.984c-7.274,10.37-15.714,20.81-25.157,31.117
|
||||
C293.608,507.637,283.702,511.997,273.393,511.997z M178.724,323.25c3.217,0,6.283,1.525,8.222,4.165
|
||||
c4.205,5.73,7.87,10.787,11.202,15.457c48.279,67.659,58.853,133.939,58.954,134.601c0.927,6.31,5.423,11.547,11.463,13.401
|
||||
c1.569,0.481,3.193,0.726,4.827,0.726c4.605,0,9.03-1.947,12.138-5.341c10.531-11.494,19.693-23.111,27.231-34.534
|
||||
c2.411-3.654,6.883-5.362,11.12-4.242c7.334,1.941,18.766,4.392,31.577,5.05c2.246,0.115,4.488,0.173,6.662,0.173
|
||||
c36.379,0,55.192-16.392,64.569-30.144c2.476-3.633,3.39-8.012,2.572-12.332c-0.817-4.32-3.268-8.064-6.901-10.54
|
||||
c-3.633-2.477-8.012-3.391-12.331-2.574c-4.32,0.818-8.065,3.269-10.542,6.902c-9.491,13.922-28.911,18.746-56.164,13.951
|
||||
c-2.877-0.507-5.399-2.222-6.926-4.713c-1.528-2.491-1.913-5.517-1.061-8.31c3.343-10.949,5.401-22.219,6.112-33.496
|
||||
c0.27-4.26,3.164-7.901,7.252-9.126c70.792-21.21,106.903-61.748,124.73-92.02c7.431-12.618,13.297-25.975,17.434-39.701
|
||||
c1.425-4.729,0.612-9.768-2.232-13.825c-2.867-4.09-7.37-6.594-12.353-6.87c-7.566-0.421-14.458,4.509-16.423,11.72
|
||||
c-3.462,12.703-9.915,25.637-20.311,40.705c-3.129,4.535-9.293,5.766-13.922,2.78c-2.899-1.868-5.645-3.914-8.165-6.082
|
||||
c-14.157-12.173-21.94-28.413-23.132-48.269c-0.263-4.391-2.219-8.414-5.509-11.332c-3.289-2.917-7.535-4.381-11.902-4.113
|
||||
c-4.393,0.263-8.416,2.22-11.333,5.51c-2.917,3.289-4.379,7.518-4.114,11.907c1.784,29.738,14.491,55.021,36.748,73.115
|
||||
c0.22,0.178,0.442,0.354,0.661,0.529l0.259,0.205c2.528,2.008,3.956,5.095,3.849,8.322c-0.106,3.227-1.733,6.212-4.389,8.05
|
||||
c-14.228,9.849-30.615,18.051-48.705,24.374c-2.737,0.956-5.753,0.704-8.293-0.699c-2.54-1.401-4.362-3.817-5.012-6.644
|
||||
c-3.735-16.237-9.038-32.012-14.167-47.268c-9.676-28.788-18.812-55.969-19.779-87.075c-0.38-12.252-0.003-27.215,1.122-44.47
|
||||
c0.33-5.074,4.347-9.129,9.416-9.508c23.433-1.752,66.721-8.647,93.383-35.142c3.119-3.1,4.844-7.227,4.858-11.624
|
||||
c0.014-4.396-1.685-8.535-4.784-11.653c-3.1-3.12-7.227-4.845-11.623-4.859c-0.017,0-0.035,0-0.052,0
|
||||
c-4.379,0-8.496,1.698-11.603,4.784c-16.004,15.904-43.134,22.192-63.073,24.668c-3.11,0.388-6.223-0.677-8.445-2.886
|
||||
c-2.223-2.208-3.307-5.315-2.941-8.427c3.085-26.231,6.209-46.226,6.341-47.064c1.425-8.989-4.711-17.438-13.674-18.859
|
||||
c-8.969-1.423-17.413,4.715-18.835,13.679c-0.606,3.815-14.802,94.105-12.992,152.381c1.118,35.968,11.934,68.147,21.479,96.539
|
||||
c15.713,46.747,29.281,87.112,2.238,137.057c-1.912,3.532-5.74,5.614-9.723,5.315c-4.004-0.297-7.462-2.916-8.833-6.691
|
||||
c-12.327-33.948-29.134-65.955-49.955-95.133c-9.386-13.153-19.304-26.465-29.802-40.558c-23.917-32.101-48.617-65.254-67.44-97.387
|
||||
c-1.381-2.357-1.758-5.168-1.047-7.805c0.709-2.637,2.447-4.879,4.824-6.226c22.707-12.854,51.391-41.921,59.091-107.399
|
||||
c1.06-9.014-5.412-17.21-14.425-18.27c-9.017-1.058-17.211,5.413-18.271,14.426c-5.651,48.064-24.048,70.089-38.484,80.103
|
||||
c-2.647,1.835-6,2.313-9.054,1.289c-3.053-1.023-5.442-3.427-6.448-6.485c-3.56-10.83-5.578-20.931-5.997-30.024
|
||||
c-0.204-4.404-2.107-8.461-5.362-11.425c-3.243-2.954-7.455-4.46-11.831-4.257c-9.076,0.42-16.113,8.137-15.695,17.204
|
||||
c2.503,54.147,45.086,116.346,84.802,170.394c2.24,3.049,2.609,7.086,0.957,10.491c-1.65,3.403-5.051,5.615-8.832,5.742
|
||||
c-30.598,1.036-71.644-2.465-93.437-25.01c-3.065-3.171-7.181-4.953-11.59-5.018c-4.385-0.077-8.578,1.594-11.736,4.673
|
||||
c-3.015,2.939-4.698,6.971-4.739,11.354c-0.044,4.679,1.81,9.265,5.089,12.582c21.703,21.958,55.738,33.546,101.159,34.445
|
||||
c20.808,0.408,39.245-1.586,50.576-3.232C177.746,323.284,178.237,323.25,178.724,323.25z"/>
|
||||
<path d="M175.297,297.658c-3.273,0-6.487-1.573-8.458-4.488l-24.528-36.282c-3.156-4.666-1.93-11.007,2.737-14.162
|
||||
c4.666-3.153,11.007-1.93,14.162,2.737l24.528,36.282c3.156,4.666,1.93,11.007-2.737,14.162
|
||||
C179.25,297.09,177.264,297.658,175.297,297.658z"/>
|
||||
<path d="M131.32,232.607c-3.273,0-6.487-1.573-8.458-4.488l-7.208-10.662c-3.156-4.666-1.93-11.007,2.737-14.162
|
||||
c4.666-3.153,11.007-1.93,14.162,2.737l7.208,10.662c3.156,4.666,1.93,11.007-2.737,14.162
|
||||
C135.273,232.04,133.287,232.607,131.32,232.607z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.9 KiB |
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m18.68 10.74a26.63 26.63 0 0 1 11.25-3.53c4.25-.21 8.15.79 13.56 3.38s8.4 5.06 10.69 9.31 3.53 7.38 2.28 12.91-1.63 11.09-3.85 14.93-5.93 6.5-11.43 7.88-13.32 2.28-20.07-1.44-11.5-9.25-13.25-16.9-.31-11.63 1-15.22a23.64 23.64 0 0 1 9.82-11.32z" fill="#1d1d1b"/>
|
||||
<path d="m20.55 11.31a22.85 22.85 0 0 1 7.69-2.6c4-.47 10.47 1.32 11.15 1.63s1.25.5 1 .69-2.53 2.18-3.34 2.31-3.62-.56-5.75-.47-3.56.5-4.59.5-2.5-1.13-3.5-1.22-3.13-.59-2.66-.84z" fill="#4eae4d"/>
|
||||
<path d="m18.58 12.87a5.82 5.82 0 0 1 4.16.34c1.62.88 1.44 1.25 3.65 1.22s3.29-.4 3.94-.25 3.41 1.35 5.85.88a10.42 10.42 0 0 0 4.28-1.75c.72-.47 1.15-1.25 1.59-1.19s4.41 2.41 4.34 2.66a4.52 4.52 0 0 1 -1.71 1.5 7.43 7.43 0 0 0 -2.79 3.46c-.5 1.47-.78 5.88-.12 6.32s2.34-.19 3 .31.81 2.06 1.91 2.19 1.56-.69 2.56 0 1 1.21 2.56 1.25 3-.32 3.09 0a2.47 2.47 0 0 1 -.12 1.43c-.16.1-5.44.72-6.69.79s-1 .34-1.69 0-1.78-1.63-3.39-1.88-6.53-.56-7.5-.56-1.25 0-1.35.47.1 5.18-.4 6.72-.16 4.06 1.65 4.78 3.69 1.09 3.94 1.75 1.13 5 1.91 6.47 1.87 3.15 1.5 3.46a20.31 20.31 0 0 1 -6 1.54 23.64 23.64 0 0 1 -5.78 0s-1.16-6-1.47-6.54a4.67 4.67 0 0 1 -.41-2.34c.13-.41 2.34-4.87 2.06-6s-.72-2.28-1.75-2.56-2.75 0-5.53 0a27.84 27.84 0 0 1 -5.34-.44c-.56-.12-.88 0-1.13-.28s-2.28-4-2-4.34 3.13-1.16 3.25-1.82-.06-2.25.66-2.31 3.87.38 4.87-.15 1.13-1.75 1.16-2.82-.37-3.4-.84-3.84-5-1.81-6.72-2.72-3.17-1.62-2.98-2.22a12.45 12.45 0 0 1 3.78-3.53z" fill="#85bfe9"/>
|
||||
<path d="m20.49 15c.54-.07.59.35.4.72s0 1.72.6 1.69a55.56 55.56 0 0 1 6.4-1.06 26.38 26.38 0 0 1 8 1.65c.75.41 1.1 2 1.16 2.47a29.44 29.44 0 0 1 -2.75 5.53c-.28.15-3.19-1-5.28-2s-3-1.47-3.09-1.88a6.23 6.23 0 0 0 -.5-1.69c-.19-.09-3-.28-4.35-1.09s-2.56-2.13-2.31-2.69a4.18 4.18 0 0 1 1.72-1.65z" fill="#1d1d1b"/>
|
||||
<path d="m24.36 17.87a20.8 20.8 0 0 1 7.25.31c3.19.63 3.69 1.16 3.6 1.94s-1.28 4-1.72 3.84a41.78 41.78 0 0 1 -5.31-2.18c-.22-.32-.29-1.88-1.22-2.16s-2.88-.88-3.53-1.13-.5-.5-.35-.5 1.28-.12 1.28-.12z" fill="#4eae4d"/>
|
||||
<path d="m47.58 15.21c.21-.07 2.94 1.07 4.81 4.63s2.47 7.94 2.25 8.34-.9.44-1.53.25-3.11-1.56-3.65-1.56-1.41.47-1.78 0-1.5-1.87-2.63-1.87-1.37.19-1.56-.06-.81-5.53.37-6.5 2.22-1.59 2.69-2 .75-1.13 1.03-1.23z" fill="#4eae4d"/>
|
||||
<path d="m35.71 31c.36 0 5.72-.4 6.78.63s1.94 2.15 2.84 2.12 9.19-.75 9.19-.43-.94 7.5-2.38 11.15a15.91 15.91 0 0 1 -5.53 7.06c-1.15.66-2.34.91-2.43.72a21.82 21.82 0 0 1 -2.29-5.93c-.68-3.22-.87-4.72-1.93-5s-3.69-.9-4.19-1.53a4 4 0 0 1 -.56-1.87s.28-3.88.28-4.72.03-2.2.22-2.2z" fill="#4eae4d"/>
|
||||
<path d="m17.43 38.21a12.74 12.74 0 0 0 4.84.91c3.31.06 6.56-.31 6.91.09s.28 1.78-.44 3.1a21.38 21.38 0 0 0 -1.19 2.59 26.16 26.16 0 0 0 -3.16-2.5.59.59 0 0 0 -.34.69c.13.28 3 2.22 3.13 2.47a9.75 9.75 0 0 1 -.1 1.75 25.76 25.76 0 0 0 -3-2.38c-.37-.06-.62.85-.5 1s3.53 2.5 4 2.91a6.06 6.06 0 0 1 .84 2.53c-.09 0-3.9-3.09-4.12-3.13s-.28 1-.28 1 4.5 3.19 4.65 3.44a6.49 6.49 0 0 1 .44 1.88 32.57 32.57 0 0 1 -3.59-.91c-1.25-.47-2.35-.72-2.35-.81s-1.17-3.78-2.81-5.38a12.91 12.91 0 0 1 -2.36-2.65 31.09 31.09 0 0 1 -.35-3.72c-.04-.85-.41-2.88-.22-2.88z" fill="#4eae4d"/>
|
||||
<path d="m10.52 38.4c.19-.37 2.56.25 3.69.69s1.5 1 1.53 1.87-.13 4.66.65 5.35a10.71 10.71 0 0 1 3.07 3.28 7.26 7.26 0 0 1 1 2.19 20.15 20.15 0 0 1 -5.91-5.5c-3.19-4.13-4.12-7.69-4.03-7.88z" fill="#85bfe9"/>
|
||||
<path d="m9.61 36.18a17.66 17.66 0 0 1 -.12-9.65c1.37-5.69 4-8.72 4.22-8.69s5.4 3 7.5 4 2.22 1 2.37 1.44a10.13 10.13 0 0 1 -.19 3.34c-.18.09-3.93-.09-5 0s-1.39 1.59-1.31 2.19.13.87-.12 1.06-3.6 1.09-3.78 2 2.37 5.37 2 5.5-4.57-.16-5.57-1.19z" fill="#4eae4d"/>
|
||||
<g fill="#1d1d1b">
|
||||
<path d="m11.36 25.18a19.09 19.09 0 0 1 1.16-3.65c.5-.75.72-.91.94-.85s.84.35.78.53-1.13 2.25-1.41 3.16 0 .91-.4 1-.94.03-1.07-.19z"/>
|
||||
<path d="m40 15.59c.16-.14 2.53-.72 2.69-.5s.34.44.18.56a11.75 11.75 0 0 1 -2.62.94c-.2-.1-.45-.85-.25-1z"/>
|
||||
<path d="m38.46 22.93c.15.16 1.47 2.28 1.31 2.47s0 .47-.34.31a6.24 6.24 0 0 1 -1.54-2.22c.11-.25.57-.56.57-.56z"/>
|
||||
<path d="m37 24.37a12.18 12.18 0 0 1 1.72 2.09c0 .19 0 .47-.31.38a8.07 8.07 0 0 1 -1.86-1.84c0-.16.45-.66.45-.63z"/>
|
||||
<path d="m49.33 19.65a7.18 7.18 0 0 1 2.5 1.22c0 .19.1.69-.15.59s-2.54-1-2.63-1.12.25-.66.28-.69z"/>
|
||||
<path d="m49.11 22c.08-.11 4 2.18 4 2.53s.35.59-.06.53a30.17 30.17 0 0 1 -4.25-2.16c-.12-.19.2-.75.31-.9z"/>
|
||||
<path d="m48.74 24a25.43 25.43 0 0 1 4.84 2.62c.06.28.28.59-.12.56a40.58 40.58 0 0 1 -4.94-2.37c-.09-.13.09-.75.22-.81z"/>
|
||||
<path d="m49.68 35.53a13.17 13.17 0 0 1 2.9 2.78c-.09.25 0 .37-.28.28a22.37 22.37 0 0 1 -3.12-2.72c.06-.16.34-.28.5-.34z"/>
|
||||
<path d="m48.11 37.43a28.41 28.41 0 0 1 3.35 3.16c0 .25-.13.47-.25.44a41.72 41.72 0 0 1 -3.44-3 4.75 4.75 0 0 1 .34-.6z"/>
|
||||
<path d="m47.11 39.46a23.35 23.35 0 0 1 3.35 3.32c-.07.25.06.4-.25.37a39.21 39.21 0 0 1 -3.53-3.15 3.19 3.19 0 0 1 .43-.54z"/>
|
||||
<path d="m46.33 41.12a29.14 29.14 0 0 1 3.41 3.28c0 .25-.1.41-.22.31a43.92 43.92 0 0 1 -3.84-3.09.84.84 0 0 1 .65-.5z"/>
|
||||
<path d="m45.71 44.12a16 16 0 0 1 3.06 2.72c0 .22-.16.37-.25.34a33.63 33.63 0 0 1 -3.19-2.5c-.03-.19.31-.53.38-.56z"/>
|
||||
<path d="m45 45.93c.17 0 3.25 2.69 3 2.94s-.12.37-.37.28a22.27 22.27 0 0 1 -3.13-2.69c.11-.15.33-.53.5-.53z"/>
|
||||
<path d="m35.18 43.43c.09-.14 1.31.31 1.28.6s0 .34-.16.34a5 5 0 0 1 -1.53-.44c0-.12.34-.4.41-.5z"/>
|
||||
<path d="m33.14 47.28a1.46 1.46 0 0 1 1.16 0c.47.22 1.16 1 1.78 1.1s1.1-.28 1.25-.19a.37.37 0 0 1 .16.47c-.1.16-.16.31-.41.37a2 2 0 0 1 -1.5-.15c-.58-.39-.94-.88-1.58-.88s-.57.12-.69 0-.42-.51-.17-.72z"/>
|
||||
<path d="m26 40.15c.25.16 2.06 1.75 2 2s-.19.5-.38.44a10.1 10.1 0 0 1 -2.15-1.82c-.01-.24.53-.62.53-.62z"/>
|
||||
<path d="m24.21 30.43c.12 0 2.81 4.19 2.59 4.41s-.34.44-.47.31a44.75 44.75 0 0 1 -2.84-4.34 1.31 1.31 0 0 1 .72-.38z"/>
|
||||
<path d="m25.24 30c0-.12.59-.38.78-.19a12 12 0 0 1 1.37 2.72c-.09.18 0 .47-.25.28a17.6 17.6 0 0 1 -1.9-2.81z"/>
|
||||
<path d="m30.74 29.71c.08-.11 1-1 1.28-1s1 0 .91.22-1.41 1.91-1.66 1.75a1.66 1.66 0 0 1 -.53-.97z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.9 KiB |
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 500 500" enable-background="new 0 0 500 500" id="Layer_1" version="1.1" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g>
|
||||
<path d="M458.41,284.071c-18.154-57.832-35.808-115.882-54.029-173.704c-4.565-14.082-14.193-28.553-33.242-22.906 c-86.518,24.843-173.71,47.452-260.272,72.213c-14.963,4.171-29.882,8.495-44.873,12.569c-14.311,3.135-29.075,11.983-25.48,30.866 c14.936,61.124,33.264,121.347,50.649,181.802c2.237,15.592,14.588,31.238,31.45,28.585c72.706-18.79,144.089-43.364,216.18-64.692 c33.493-10.35,67.068-20.44,100.36-31.43C453.27,313.46,464.304,298.759,458.41,284.071z" fill="#3F3756"/>
|
||||
<path d="M44.073,210.175c0,0,50.037,177.5,53.987,184.874s10.26,15.563,25.282,15.275 c15.022-0.288,319.535-97.353,319.535-97.353s16.509-10.394,14.923-22.692S396.703,103.78,396.703,103.78 c-12.169,19.051-109.591,152.363-130.096,167.23C233.361,268.354,79.309,221.321,44.073,210.175z" fill="#A7943F"/>
|
||||
<path d="M43.283,206.4c0,0-4.74-20.542,8.427-26.335c13.168-5.794,326.295-90.242,326.295-90.242 c4.311,0.848,17.887,6.526,18.522,15.626c-21.7,29.349-104.91,147.391-132.33,165.662C229.163,268.336,69.886,217.4,43.283,206.4z" fill="#E2B251"/>
|
||||
<path d="M266.08,272.194c-13.27,13.363-45.925-2.647-63.153-4.52c-18.892-4.309-38.147-9.169-56.266-15.287 c13.603,47.964,33.582,104.519,83.401,125.328c-143.309,41.418-115.691,63.405-153.984-65.577 c-8.718-29.637-17.36-59.299-26.641-88.766c-0.365-2.374-5.808-14.08-1.952-12.017c48.553,16.221,97.041,32.774,146.504,46.051 C217.964,262.429,241.249,273.18,266.08,272.194z" fill="#8A7527"/>
|
||||
<path d="M126.522,161.733c3.341,26.359,9.387,52.371,16.484,77.958c-32.998-10.262-67.253-21.367-99.044-33.044 c-2.483-10.573,1.86-23.222,13.198-26.109C80.314,174.392,103.389,167.958,126.522,161.733z" fill="#D69735"/>
|
||||
<path d="M259.062,271.603c29.71-34.519,57.443-72.46,85.769-108.715c8.73-12.689,18.119-24.896,26.81-37.598 c5.275-8.938,15.914-18.135,10.779-29.384c-2.747-5.353,3.785-2.266,5.815-0.469c2.242,2.153,5.831,4.9,6.138,7.946 c-16.608,29.633-38.763,55.699-59.785,82.281c-17.534,22.284-34.915,44.704-52.911,66.607 C274.619,258.636,269.141,270.523,259.062,271.603z" fill="#E9C36F"/>
|
||||
<path d="M447.846,308.757c0.903-3.543,3.654-7.16,2.642-10.851c-3.482-13.921-7.759-27.592-12.426-41.121 c-15.14-47.874-30.532-95.655-46.855-143.157c1.118-2.208,4.629-5.622,5.321-8.181c15.417,44.009,27.148,89.173,42.155,133.405 C442.252,257.143,468.594,296.807,447.846,308.757z" fill="#B9A95D"/>
|
||||
<path d="M403.892,186.878c-0.563-12.899,9.32,7.439,2.184,1.283c-0.272,8.362-5.525,1.896-5.155-2.655 c-0.128-1.612,2.153-1.814,2.259-0.176C403.271,185.811,403.354,186.322,403.892,186.878z" fill="#B9A95C"/>
|
||||
<path d="M369.338,298.88c-0.09,2.536-5.866-8.478-4.42-8.543C367.342,291.786,367.996,296.251,369.338,298.88z" fill="#403855"/>
|
||||
<path d="M420.881,240.028c0.873,1.67,1.046,3.768,3.198,4.331c1.11,0.313,2.848,1.95,2.533,3.194 C424.104,246.767,419.213,243.273,420.881,240.028z" fill="#403855"/>
|
||||
<path d="M249.795,195.487c-6.514,18.297-21.794-1.671-14.574-12.717c3.273-7.936,15.955-5.894,15.536,2.962 c0.113,1.663-1.809,2.177-2.467,0.629c-7.179-11.812-14.888,4.75-7.934,11.026c6.179,5.617,5.532-12.904,11.645-6.446 c1.705,0.937,3.64,6.512,5.452,3.672c4.643-6.611,4.493-15.833,0.751-22.817c-6.192-11.404-22.622-7.491-29.03,1.69 c-21.86,24.921,15.885,59.152,36.083,31.539c1.301-1.397,2.356-4.807,4.71-4.058c2.638,3.829-2.249,9.206-4.68,12.212 c-8.948,9.343-24.995,9.556-35.057,1.794c-37.188-28.612,21.896-82.716,34.302-36.948 C267.258,186.948,259.745,211.09,249.795,195.487z" fill="#3F3756"/>
|
||||
<path d="M107.708,341.981c-0.265-3.05-0.342-7.25,1.106-9.723C109.692,335.054,108.203,338.926,107.708,341.981z" fill="#403855"/>
|
||||
<path d="M171.484,364.605c-1.577-0.108-4.007-0.477-4.138-1.971C168.548,361.849,170.372,363.446,171.484,364.605z" fill="#413954"/>
|
||||
<path d="M458.41,284.071c-18.154-57.832-35.808-115.882-54.029-173.704c-4.565-14.082-14.193-28.553-33.242-22.906 c-86.518,24.843-173.71,47.452-260.272,72.213c-14.963,4.171-29.882,8.495-44.873,12.569c-14.311,3.135-29.075,11.983-25.48,30.866 c14.936,61.124,33.264,121.347,50.649,181.802c2.237,15.592,14.588,31.238,31.45,28.585c72.706-18.79,144.089-43.364,216.18-64.692 c33.493-10.35,67.068-20.44,100.36-31.43C453.27,313.46,464.304,298.759,458.41,284.071z M45.872,206.074 c-2.394-10.213,1.793-22.425,12.746-25.214c29.258-7.855,58.494-15.791,87.672-23.938c78.549-19.703,156.067-47.735,235.126-63.279 c0,0,0,0,0,0c5.158,0.71,8.83,5.048,11.573,9.141c1.411,0.613-3.351,6.334-3.555,7.886 c-23.567,38.081-53.701,71.572-80.867,107.072c-10.762,11.332-34.474,49.499-48.099,51.317 c-40.482-5.179-79.8-19.541-118.944-31.072l0,0v0C109.656,228.075,76.574,217.353,45.872,206.074z M446.168,305.924 c-29.501,14.249-62.982,19.95-93.929,30.951c-48.05,14.895-96.115,29.765-144.067,44.94c-17.002,5.359-34.034,10.626-50.919,16.342 c-17.115,3.652-42.526,18.196-54.683-1.087c-19.131-56.61-32.972-115.145-51.638-172.018c-0.552-2.479-5.533-13.706-1.904-11.731 c35.279,11.753,70.438,23.838,106.114,34.347c28.717,8.99,57.994,16.012,87.083,23.669c9.587,1.982,21.895,6.093,29.764-1.935 c41.214-50.542,84.444-99.922,121.082-154.002c0,0,0,0,0,0c1.048-2.156,2.42-4.152,3.069-6.65 c13.794,42.855,27.068,86.146,41.439,128.92C440.834,255.699,465.694,293.673,446.168,305.924z" fill="#3F3756"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.4 KiB |
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 128 128" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--noto" preserveAspectRatio="xMidYMid meet"><path d="M99.06 91.42S83.95 105.6 63.97 105.6S28.89 91.42 28.89 91.42s-2.81-13.49 4.45-36.78c3.83-12.28 58.33-13.53 62.6-2.79c7.26 18.23 3.12 39.57 3.12 39.57z" fill="#424242"></path><path d="M28.89 91.42l4.79 3.84s-.04-7.6 2.31-14.69c.88-2.65 4.02-3.76 6.38-2.27l18.29 11.47a6.389 6.389 0 0 0 6.7.05c8.74-5.3 31.54-19.17 32.58-20.02c0 0 0-1.71-.43-3.89L28.63 66l.26 25.42z" fill="#212121"></path><path d="M122.81 52.03l-56.8 33.83c-1.24.74-2.79.74-4.04 0L5.19 52.03c-1.58-.94-1.58-3.23 0-4.17l56.8-33.83c1.24-.74 2.79-.74 4.04 0l56.8 33.83c1.57.94 1.57 3.23-.02 4.17z" fill="#424242"></path><path d="M64.04 83.38c-.01 0-.03.01-.04.01c-.16 0-.32-.04-.46-.13L4.18 49.04s-.29.55 0 1.54c.3.99.76 1.31 1.01 1.46l56.8 33.83c.62.37 1.32.56 2.02.56h.04v-3.05z" fill="#9e9e9e"></path><path d="M64 83.38c.01 0 .03.01.04.01c.16 0 .32-.04.46-.13l59.36-34.22s.29.55 0 1.54c-.3.99-.76 1.31-1.01 1.46l-56.8 33.83c-.62.37-1.32.56-2.02.56h-.04v-3.05z" fill="#616161"></path><path d="M35.45 70.06l.32-2.81S60.28 53.92 62.7 52.52c2.42-1.4 4.96-2.96 6.09-4.21c2-2.2.56-3.58.56-3.58s-1.58 2.56-5.35 2.11c-2.16-.26-4.97-2.01-5.44-2.83s-27.67 19.9-27.67 19.9l-.19 3.33l4.75 2.82z" fill="#424242"></path><path d="M69.35 44.74c-2.62 3.66-7.06 2.06-7.06 2.06s-13.91 6.67-14.43 5.66s11.49-7.19 11.49-7.19s-.67-2.46-.6-3.51c0 0-21.72 13.82-29.87 18.47c-4.27 2.44-5.18 4.74-5.17 7.98c0 1.42.02 6.03.04 8.78c0 .51-.22.99-.61 1.31a5.162 5.162 0 0 0-1.89 3.99c0 1.53.67 2.9 1.73 3.85c.57.51.45 1.61.5 2.32c.1 1.36 0 1.98-.56 3.24c-.55 1.23-1.06 2.49-1.41 3.79c-.27 1-.45 2.03-.63 3.05c-1.19 6.83-1.73 14.13-4.88 20.41a.993.993 0 0 0 .45 1.34a1.007 1.007 0 0 0 1.35-.44c1.64-3.27 2.49-6.85 3.19-10.4c-.04 3.21-.06 6.45-.17 9.95c-.02.68-.07 2.05.55 2.35c2.33 1.13 2.33-2.35 2.33-2.35s.03 3.13 3.2 3.13s3.4-3.13 3.4-3.13s.23 2.87 1.86 2.73c.66-.06 1.53-.46 1.22-3.89c-.31-3.42-1.08-15.68-1.41-19.56c-.46-5.37-2.22-8.56-2.58-10.46c-.13-.72-.14-1.47.43-1.94a5.165 5.165 0 0 0 .13-7.88a1.71 1.71 0 0 1-.58-1.42c.19-2.59.4-6.35.57-7.22c.74-3.91 2.67-4.61 4.65-5.77c1.98-1.17 30.66-14.19 32.33-15.3c3.09-2.07 2.43-3.95 2.43-3.95z" fill="#e2a610"></path><path d="M69.35 44.74c-2.47 3.49-7.6 1.93-7.6 1.93s-13.11 5.81-12.24 4.76c.86-1.05 9.84-6.16 9.84-6.16s-.67-2.46-.6-3.51c0 0-22.1 12.77-30.67 18.91c-2.21 1.59-4.95 4.19-2.72 6.78c1.03 1.19 3.02 1.44 4.29.5c.77-.56 1.37-1.38 2.05-2.03c.84-.82 1.86-1.34 2.86-1.93c1.98-1.17 30.66-14.19 32.33-15.3c3.12-2.07 2.46-3.95 2.46-3.95z" fill="#ffca28"></path><path d="M26.11 91.86c-1.32 0-2.21-.11-3.02-.3a.62.62 0 0 1-.48-.65l.26-3.82c.03-.39.4-.66.78-.55c.9.26 2.7.52 5.64-.1c.36-.08.72.17.76.54l.4 3.8c.03.31-.17.6-.47.67c-1.53.35-2.64.41-3.87.41z" fill="#9e740b"></path><path d="M99.06 91.42s1.77-9.24 1.06-19.07c-.12-1.66-1.14-3.09-1.93 2.72c-.45 3.33-1.43 13.3-3.1 19.53c2.55-1.84 3.97-3.18 3.97-3.18z" fill="#616161"></path><path d="M65.73 36.79c.73.23 1.4.79 1.59 1.54c.25 1-.38 2-1.06 2.78c-1.33 1.53-3.16 2.87-5.19 2.8c-.67-.02-1.39-.24-1.8-.77c-.29-.37-.39-.85-.42-1.32c-.18-3.43 3.7-6.03 6.88-5.03z" fill="#616161"></path></svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid">
|
||||
<g>
|
||||
<path d="M218.123122,218.127392 L180.191928,218.127392 L180.191928,158.724263 C180.191928,144.559023 179.939053,126.323993 160.463756,126.323993 C140.707926,126.323993 137.685284,141.757585 137.685284,157.692986 L137.685284,218.123441 L99.7540894,218.123441 L99.7540894,95.9665207 L136.168036,95.9665207 L136.168036,112.660562 L136.677736,112.660562 C144.102746,99.9650027 157.908637,92.3824528 172.605689,92.9280076 C211.050535,92.9280076 218.138927,118.216023 218.138927,151.114151 L218.123122,218.127392 Z M56.9550587,79.2685282 C44.7981969,79.2707099 34.9413443,69.4171797 34.9391618,57.260052 C34.93698,45.1029244 44.7902948,35.2458562 56.9471566,35.2436736 C69.1040185,35.2414916 78.9608713,45.0950217 78.963054,57.2521493 C78.9641017,63.090208 76.6459976,68.6895714 72.5186979,72.8184433 C68.3913982,76.9473153 62.7929898,79.26748 56.9550587,79.2685282 M75.9206558,218.127392 L37.94995,218.127392 L37.94995,95.9665207 L75.9206558,95.9665207 L75.9206558,218.127392 Z M237.033403,0.0182577091 L18.8895249,0.0182577091 C8.57959469,-0.0980923971 0.124827038,8.16056231 -0.001,18.4706066 L-0.001,237.524091 C0.120519052,247.839103 8.57460631,256.105934 18.8895249,255.9977 L237.033403,255.9977 C247.368728,256.125818 255.855922,247.859464 255.999,237.524091 L255.999,18.4548016 C255.851624,8.12438979 247.363742,-0.133792868 237.033403,0.000790807055" fill="#0A66C2">
|
||||
</path>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
@@ -0,0 +1,72 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 511.998 511.998" xml:space="preserve">
|
||||
<path style="fill:#CCF7FF;" d="M163.834,349.074c-25.064,0-45.383,20.319-45.383,45.383h205.213v-45.383H163.834z"/>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M124.537,371.766c-3.864,6.677-6.086,14.422-6.086,22.692
|
||||
h205.213v-22.692L124.537,371.766L124.537,371.766z"/>
|
||||
<g>
|
||||
<path style="fill:#667C80;" d="M417.467,439.839H93.254c-18.851,0-34.134,15.282-34.134,34.134v30.219H451.6v-30.219
|
||||
C451.6,455.121,436.318,439.839,417.467,439.839z"/>
|
||||
<path style="fill:#667C80;" d="M401.605,396.196c31.13-23.616,51.274-60.993,51.274-102.992
|
||||
c0-63.667-46.286-116.72-106.973-127.293l-49.73,31.465l6.147,37.44c6.659-2.441,13.847-3.775,21.341-3.775
|
||||
c34.276,0,62.162,27.886,62.162,62.162c0,26.852-17.116,49.779-41.009,58.453l17.963,36.697L401.605,396.196z"/>
|
||||
</g>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M296.176,197.376l6.147,37.44
|
||||
c6.659-2.442,13.847-3.775,21.341-3.775c1.86,0,3.698,0.097,5.518,0.258l37.834-59.817c-6.795-2.427-13.848-4.307-21.11-5.572
|
||||
L296.176,197.376z"/>
|
||||
<g>
|
||||
|
||||
<rect x="166.409" y="263.413" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 268.335 635.4025)" style="fill:#293133;" width="119.62" height="30.829"/>
|
||||
|
||||
<rect x="334.839" y="27.238" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 670.2496 279.5049)" style="fill:#293133;" width="81.556" height="30.829"/>
|
||||
</g>
|
||||
<rect x="341.366" y="53.313" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 626.1679 318.5302)" style="fill:#667C80;" width="35.728" height="30.478"/>
|
||||
<rect x="345.609" y="54.552" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 637.5773 308.4405)" style="opacity:0.15;fill:#293133;enable-background:new ;" width="35.728" height="14.605"/>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M367.322,337.395c-6.328,6.252-13.982,11.166-22.504,14.261
|
||||
l17.963,36.697l38.824,7.842c5.681-4.31,10.992-9.083,15.885-14.255C405.799,362.025,388.149,346.516,367.322,337.395z"/>
|
||||
<path style="fill:#85A1A6;" d="M407.07,408.983c-12.063-35.8-45.627-59.909-83.405-59.909l0,0
|
||||
c-37.778,0-71.342,24.109-83.405,59.909l-10.397,30.856h187.605L407.07,408.983z"/>
|
||||
<circle style="fill:#293133;" cx="323.667" cy="394.461" r="17.279"/>
|
||||
<g>
|
||||
|
||||
<rect x="251.995" y="64.531" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 447.3835 476.8507)" style="fill:#CCF7FF;" width="81.556" height="218.163"/>
|
||||
<polygon style="fill:#CCF7FF;" points="316.635,59.619 200.015,243.998 385.561,103.216 "/>
|
||||
</g>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M59.181,472.016c-0.037,0.648-0.059,1.3-0.059,1.958v30.219
|
||||
h392.48v-30.219c0-0.658-0.023-1.31-0.059-1.958H59.181z"/>
|
||||
<g>
|
||||
<path style="fill:#26150C;" d="M423.21,432.435l-8.742-25.945c-0.93-2.757-1.988-5.442-3.143-8.068
|
||||
c31.446-26.169,49.361-64.158,49.361-105.218c0-32.414-11.573-63.883-32.587-88.612c-18.266-21.495-42.68-36.82-69.642-43.92
|
||||
l33.702-53.283c1.107-1.75,1.473-3.868,1.019-5.888c-0.455-2.02-1.693-3.777-3.443-4.884l-12.767-8.075l7.945-12.561l12.767,8.076
|
||||
c1.295,0.818,2.739,1.21,4.165,1.21c2.588,0,5.119-1.285,6.606-3.635l16.48-26.056c1.107-1.75,1.473-3.868,1.019-5.888
|
||||
s-1.693-3.777-3.443-4.884L353.58,1.208c-3.644-2.301-8.466-1.219-10.771,2.425l-16.48,26.056c-1.107,1.75-1.473,3.868-1.019,5.888
|
||||
c0.455,2.02,1.693,3.777,3.443,4.884l12.767,8.075l-7.945,12.561l-12.767-8.076c-3.643-2.302-8.467-1.219-10.771,2.425
|
||||
L197.591,233.226l-9.485-5.999c-1.75-1.106-3.868-1.473-5.889-1.018c-2.02,0.455-3.777,1.692-4.884,3.443l-16.48,26.057
|
||||
c-2.305,3.644-1.22,8.466,2.424,10.771l101.092,63.941c1.295,0.818,2.739,1.21,4.165,1.21c2.588,0,5.119-1.286,6.606-3.635
|
||||
l16.48-26.056c2.305-3.644,1.22-8.466-2.424-10.771l-9.485-5.999l27.734-43.846c5.23-1.64,10.673-2.473,16.219-2.473
|
||||
c29.971,0,54.355,24.383,54.355,54.355c0,22.037-13.484,41.975-33.78,50.306c-6.662-1.461-13.548-2.243-20.576-2.243H163.835
|
||||
c-29.328,0-53.19,23.861-53.19,53.191c0,4.312,3.495,7.807,7.807,7.807h115.955c-0.543,1.393-1.064,2.798-1.546,4.226
|
||||
l-8.606,25.541H93.254c-23.126,0-41.942,18.815-41.942,41.941v30.218c0,4.312,3.495,7.807,7.807,7.807H451.6
|
||||
c4.312,0,7.807-3.495,7.807-7.807v-30.219C459.408,452.795,443.628,435.245,423.21,432.435z M351.832,18.578l55.73,35.249
|
||||
l-8.133,12.86l-12.763-8.073c-0.001-0.001-0.003-0.002-0.004-0.003l-30.195-19.099c-0.002-0.001-0.005-0.003-0.007-0.004
|
||||
l-12.76-8.071L351.832,18.578z M371.716,67.634l-7.944,12.561l-16.999-10.752l7.944-12.561L371.716,67.634z M266.119,313.051
|
||||
l-87.896-55.594l8.133-12.861l9.474,5.993c0.003,0.002,0.006,0.005,0.011,0.007l68.926,43.596l0.001,0.001l9.483,5.998
|
||||
L266.119,313.051z M266.516,276.822l-1.859-1.176l-53.87-34.074L319.059,70.392l12.762,8.072c0.002,0.001,0.003,0.002,0.005,0.003
|
||||
l30.195,19.099c0.002,0.001,0.004,0.002,0.006,0.003l12.761,8.071l-35.479,56.094c-0.001,0.001-0.001,0.002-0.002,0.002
|
||||
l-24.48,38.704L266.516,276.822z M393.634,293.204c0-38.581-31.388-69.97-69.97-69.97c-1.635,0-3.264,0.056-4.884,0.169
|
||||
l30.617-48.407l0.25-0.395c25.796,5.657,49.272,19.766,66.554,40.102c18.618,21.908,28.87,49.787,28.87,78.501
|
||||
c0,35.327-14.967,68.101-41.359,91.207c-0.094-0.142-0.193-0.279-0.288-0.422c-0.462-0.695-0.931-1.383-1.41-2.063
|
||||
c-0.156-0.222-0.316-0.442-0.473-0.662c-0.529-0.738-1.065-1.47-1.613-2.192c-0.083-0.108-0.168-0.216-0.251-0.324
|
||||
c-9.401-12.255-21.605-22.029-35.522-28.516C382.295,337.3,393.634,316.135,393.634,293.204z M310.385,357.991
|
||||
c18.805-3.142,38.629,0.649,54.928,10.551c15.998,9.719,28.382,25.195,34.359,42.933l6.927,20.556H240.732l6.927-20.556
|
||||
c1.557-4.621,3.519-9.018,5.813-13.178c0.012-0.021,0.027-0.038,0.038-0.059c11.804-21.331,32.536-35.897,56.057-40.1
|
||||
C309.84,358.089,310.111,358.037,310.385,357.991z M127.074,386.649c3.602-16.986,18.716-29.768,36.759-29.768h107.389
|
||||
c-11.635,7.608-21.586,17.73-29.03,29.768H127.074z M443.793,496.384H66.928v-22.411c0-14.517,11.81-26.326,26.327-26.326h136.608
|
||||
h187.605c14.516,0,26.326,11.809,26.326,26.326v22.411H443.793z"/>
|
||||
<path style="fill:#26150C;" d="M323.664,419.543c13.833,0,25.086-11.255,25.086-25.087s-11.253-25.086-25.086-25.086
|
||||
c-13.833,0-25.086,11.253-25.086,25.086C298.578,408.288,309.832,419.543,323.664,419.543z M323.664,384.985
|
||||
c5.223,0,9.472,4.249,9.472,9.472c0,5.224-4.249,9.473-9.472,9.473s-9.472-4.249-9.472-9.473
|
||||
C314.193,389.234,318.442,384.985,323.664,384.985z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.5 KiB |
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 36 36" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--twemoji" preserveAspectRatio="xMidYMid meet"><path fill="#C1694F" d="M21.978 20.424a29.331 29.331 0 0 0-.247-2.325a30.78 30.78 0 0 0-1.885-6.93c-.527-1.299-.943-2.043-.943-2.043l-3.613.466s.417.87.868 2.575c.183.692.371 1.524.54 2.495c.086.49.166 1.012.238 1.573c.1.781.183 1.632.242 2.549c.034.518.058 1.058.074 1.619c.006.204.015.401.018.611a14.52 14.52 0 0 1-.118 1.989c-.074.6-.182 1.197-.311 1.789a26.225 26.225 0 0 1-.67 2.475a34.793 34.793 0 0 1-.655 1.84c-.344.891-.69 1.692-.989 2.359c-.502 1.119-.871 1.863-.871 2.018c0 .49.35 1.408 2.797 2.02c3.827.956 4.196-.621 4.196-.621s.243-.738.526-2.192c.14-.718.289-1.605.424-2.678c.081-.642.156-1.348.222-2.116a61.85 61.85 0 0 0 .22-4.864c.002-.246.008-.484.008-.737c0-.64-.03-1.261-.071-1.872z"></path><path fill="#D99E82" d="M18.306 30.068c-1.403-.244-2.298-.653-2.789-.959c-.344.891-.69 1.692-.989 2.359c.916.499 2.079.895 3.341 1.114c.729.127 1.452.191 2.131.191c.414 0 .803-.033 1.176-.08c.14-.718.289-1.605.424-2.678c-.444.157-1.548.357-3.294.053zm1.06-4.673c-1.093-.108-1.934-.348-2.525-.602a26.225 26.225 0 0 1-.67 2.475c.864.326 1.881.561 2.945.666c.429.042.855.064 1.27.064c.502 0 .978-.039 1.435-.099c.068-.8.125-1.667.165-2.605c-.628.135-1.509.21-2.62.101zm.309-2.133c.822 0 1.63-.083 2.366-.228c.002-.246.008-.484.008-.737c0-.641-.029-1.262-.071-1.873c-.529.138-1.285.272-2.352.286c-1.084-.005-1.847-.155-2.374-.306c.006.204.015.401.018.611a14.52 14.52 0 0 1-.118 1.989c.763.161 1.605.253 2.461.257l.062.001zm-.249-4.577a12.08 12.08 0 0 0 2.304-.585a30.343 30.343 0 0 0-.485-2.513c-.496.204-1.199.431-2.181.572a9.03 9.03 0 0 1-2.129.077c.1.781.183 1.632.242 2.549c.152.006.29.029.446.029c.588.001 1.2-.043 1.803-.129zm1.271-5.116a30.223 30.223 0 0 0-.852-2.4a9.452 9.452 0 0 1-1.737.659a9.23 9.23 0 0 1-1.951.339c.183.692.371 1.524.54 2.495a12.42 12.42 0 0 0 2.094-.376c.679-.188 1.31-.44 1.906-.717z"></path><path fill="#3E721D" d="M32.61 4.305c-.044-.061-4.48-5.994-10.234-3.39c-2.581 1.167-4.247 3.074-4.851 5.535c-1.125-1.568-2.835-2.565-5.093-2.968C6.233 2.376 2.507 9.25 2.47 9.32c-.054.102-.031.229.056.305s.217.081.311.015c.028-.02 2.846-1.993 7.543-1.157c4.801.854 8.167 1.694 8.201 1.702a.254.254 0 0 0 .245-.073c.032-.035 3.22-3.46 6.153-4.787c4.339-1.961 7.298-.659 7.326-.646a.252.252 0 0 0 .298-.07a.246.246 0 0 0 .007-.304z"></path><path fill="#5C913B" d="M27.884 7.63c-4.405-2.328-7.849-1.193-9.995.22c-2.575-.487-7.334-.459-11.364 4.707c-4.983 6.387-.618 14.342-.573 14.422a.376.376 0 0 0 .689-.086c.015-.054 1.527-5.52 5.35-10.118c2.074-2.496 4.55-4.806 6.308-6.34c1.762.298 4.327.947 6.846 2.354c4.958 2.773 7.234 7.466 7.257 7.513a.372.372 0 0 0 .379.212a.377.377 0 0 0 .325-.287c.02-.088 1.968-8.8-5.222-12.597z"></path></svg>
|
||||
|
After Width: | Height: | Size: 2.9 KiB |
@@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 478.512 478.512" xml:space="preserve">
|
||||
<path style="fill:#3AADD9;" d="M185.497,469.312l-21.344,1.096c-30.016,1.544-58.36-13.872-73.384-39.896L19.737,307.48
|
||||
c-15.024-26.024-14.2-58.28,2.144-83.504l11.624-17.936l35.816-20.68c7.656-4.416,17.44-1.8,21.856,5.856l24,41.568
|
||||
c4.416,7.656,1.8,17.44-5.856,21.856l-6.928,4c-15.304,8.84-20.552,28.408-11.712,43.712l40,69.28
|
||||
c8.84,15.304,28.408,20.552,43.712,11.712l6.928-4c7.656-4.416,17.44-1.8,21.856,5.856l24,41.568
|
||||
c4.416,7.656,1.8,17.44-5.856,21.856L185.497,469.312z"/>
|
||||
<path d="M159.969,478.512c-31.424,0-60.288-16.56-76.128-44L12.801,311.48c-16.608-28.784-15.704-63.976,2.36-91.856l1.152-1.776
|
||||
c7.544-11.64,17.864-21.44,29.856-28.368l19.152-11.056c11.456-6.608,26.168-2.68,32.784,8.784l24,41.568
|
||||
c3.2,5.552,4.056,12.016,2.392,18.208c-1.656,6.192-5.632,11.368-11.176,14.576l-6.928,4c-5.552,3.2-9.52,8.376-11.184,14.568
|
||||
c-1.656,6.192-0.808,12.664,2.4,18.208l40,69.28c3.2,5.552,8.376,9.52,14.568,11.184c6.2,1.664,12.656,0.808,18.208-2.4l6.928-4
|
||||
c11.464-6.616,26.168-2.672,32.784,8.784l24,41.568c6.616,11.464,2.672,26.168-8.784,32.784l-19.152,11.056
|
||||
c-11.992,6.928-25.648,10.96-39.488,11.672l-2.12,0.112C163.025,478.472,161.497,478.512,159.969,478.512z M77.305,191.216
|
||||
c-1.36,0-2.728,0.344-3.992,1.072l-19.152,11.056c-9.816,5.664-18.264,13.688-24.424,23.2l-1.144,1.776
|
||||
c-14.784,22.816-15.52,51.616-1.936,75.16l71.032,123.032c13.592,23.536,38.864,37.312,66.04,35.904l2.12-0.112l0,0
|
||||
c11.328-0.584,22.496-3.888,32.312-9.552l19.152-11.056c1.848-1.064,3.168-2.792,3.728-4.856s0.272-4.216-0.8-6.072l-24-41.568
|
||||
c-1.064-1.848-2.792-3.168-4.856-3.728c-2.056-0.544-4.216-0.272-6.072,0.8l-6.928,4c-9.256,5.336-20.04,6.752-30.352,4
|
||||
c-10.32-2.768-18.944-9.384-24.288-18.64l-40-69.28c-5.344-9.248-6.76-20.032-4-30.352s9.384-18.944,18.64-24.288l6.928-4
|
||||
c3.824-2.2,5.136-7.104,2.928-10.928l-24-41.568C82.769,192.656,80.073,191.216,77.305,191.216z"/>
|
||||
<g>
|
||||
<ellipse style="fill:#FFFFFF;" cx="187.462" cy="421.949" rx="8" ry="8"/>
|
||||
<ellipse style="fill:#FFFFFF;" cx="155.777" cy="431.049" rx="8" ry="8"/>
|
||||
<ellipse style="fill:#FFFFFF;" cx="75.466" cy="227.992" rx="8" ry="8"/>
|
||||
<ellipse style="fill:#FFFFFF;" cx="51.741" cy="250.924" rx="8" ry="8"/>
|
||||
</g>
|
||||
<path style="fill:#F5B945;" d="M437.561,8h-248c-17.672,0-32,14.328-32,32v118.792c0,17.672,14.328,33.208,32,33.208h16v34.256
|
||||
c0,20.4,22.928,32.096,38.544,18.968L307.209,192h130.352c17.672,0,32-14.328,32-32V40C469.561,22.328,455.233,8,437.561,8z"/>
|
||||
<path d="M229.225,258.76c-4.408,0-8.84-0.96-13.032-2.912c-11.496-5.352-18.632-16.688-18.632-29.592V200h-8
|
||||
c-21.68,0-40-18.872-40-41.208V40c0-22.056,17.944-40,40-40h248c22.056,0,40,17.944,40,40v120c0,22.056-17.944,40-40,40H310.129
|
||||
l-60.872,51.344C243.441,256.232,236.377,258.76,229.225,258.76z M189.561,16c-13.232,0-24,10.768-24,24v118.792
|
||||
c0,13.664,10.992,25.208,24,25.208h16c4.416,0,8,3.584,8,8v34.256c0,7.904,4.84,12.976,9.376,15.088
|
||||
c2.584,1.2,9.32,3.392,16.016-2.24l63.104-53.224c1.44-1.216,3.264-1.88,5.152-1.88h130.352c13.232,0,24-10.768,24-24V40
|
||||
c0-13.232-10.768-24-24-24H189.561z"/>
|
||||
<g>
|
||||
<circle style="fill:#FFFFFF;" cx="227.745" cy="94.304" r="24"/>
|
||||
<circle style="fill:#FFFFFF;" cx="311.721" cy="94.792" r="24"/>
|
||||
<circle style="fill:#FFFFFF;" cx="395.745" cy="94.304" r="24"/>
|
||||
</g>
|
||||
<path d="M227.745,126.304c-17.648,0-32-14.352-32-32s14.352-32,32-32s32,14.352,32,32S245.393,126.304,227.745,126.304z
|
||||
M227.745,78.304c-8.824,0-16,7.176-16,16s7.176,16,16,16s16-7.176,16-16S236.569,78.304,227.745,78.304z"/>
|
||||
<path d="M311.745,126.792c-17.648,0-32-14.352-32-32s14.352-32,32-32s32,14.352,32,32S329.393,126.792,311.745,126.792z
|
||||
M311.745,78.792c-8.824,0-16,7.176-16,16s7.176,16,16,16s16-7.176,16-16S320.569,78.792,311.745,78.792z"/>
|
||||
<path d="M395.745,126.304c-17.648,0-32-14.352-32-32s14.352-32,32-32s32,14.352,32,32S413.393,126.304,395.745,126.304z
|
||||
M395.745,78.304c-8.824,0-16,7.176-16,16s7.176,16,16,16s16-7.176,16-16S404.569,78.304,395.745,78.304z"/>
|
||||
<path d="M439.433,241.368c-5.72-0.056-10.592-4.44-10.864-9.8c-0.304-5.352,4.224-10.24,9.744-10.88
|
||||
c5.848-0.672,10.6,3.728,10.952,9.792C449.561,236.544,445.153,241.424,439.433,241.368z"/>
|
||||
<path d="M435.537,280.224c-5.592-1.192-9.496-6.456-8.688-11.752c0.84-5.296,6.104-9.208,11.656-8.744
|
||||
c5.848,0.496,9.776,5.76,8.84,11.768C446.425,277.512,441.129,281.416,435.537,280.224z"/>
|
||||
<path d="M423.065,319.32c-5.104-2.296-7.64-8.2-5.912-13.272c1.84-5.032,7.784-7.752,13.256-6.08
|
||||
c5.472,1.672,8.232,7.656,6.136,13.376C434.553,319.088,428.393,321.712,423.065,319.32z"/>
|
||||
<path d="M402.633,354.888c-4.728-3.472-5.448-9.424-2.856-14.136c2.776-4.584,9.096-6.032,14.088-3.248
|
||||
c4.992,2.784,6.496,9.264,3.336,14.456C414.209,357.28,407.121,358.2,402.633,354.888z"/>
|
||||
<path d="M375.257,385.424c-3.816-4.296-3.624-10.632,0.28-14.312c3.6-3.976,10.008-4.136,14.312-0.36
|
||||
c4.304,3.768,4.48,10.48,0.376,14.968C385.817,389.904,379.033,389.688,375.257,385.424z"/>
|
||||
<path d="M342.137,409.624c-2.816-4.976-1.392-11.28,3.192-14.056c4.624-2.72,10.632-1.976,14.128,2.728
|
||||
c3.344,4.472,2.416,11.512-2.808,14.624C351.457,416.088,344.961,414.6,342.137,409.624z"/>
|
||||
<path d="M306.585,425.68c-1.76-5.44,0.888-11.36,5.92-13.192c5.12-1.632,10.832,0.272,13.312,5.56
|
||||
c2.384,5.064,0.088,11.808-5.704,13.712C314.401,433.856,308.337,431.12,306.585,425.68z"/>
|
||||
<path d="M266.521,434.544c-0.568-5.696,3.256-10.976,8.56-11.784c5.328-0.664,10.608,2.92,11.864,8.376
|
||||
c1.304,5.688-2.464,11.28-8.504,12.064C272.433,444.12,267.097,440.232,266.521,434.544z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.6 KiB |
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 511.997 511.997" xml:space="preserve">
|
||||
<polygon style="fill:#51D1F5;" points="401.068,139.208 401.068,196.761 433.566,185.867 433.566,139.208 417.317,150.101 "/>
|
||||
<path style="fill:#147391;" d="M338.929,99.676c0,27.85,22.577,50.425,50.425,50.425h27.963
|
||||
C409.589,114.501,374.529,91.948,338.929,99.676z"/>
|
||||
<path style="fill:#51D1F5;" d="M417.317,150.101h27.963c27.85,0,50.425-22.576,50.425-50.425
|
||||
C460.105,91.948,425.045,114.501,417.317,150.101z"/>
|
||||
<path style="fill:#A1EBFF;" d="M401.068,185.867L19.349,221.634c16.961,98.185,102.55,172.87,205.582,172.87
|
||||
c115.225,0,208.635-93.41,208.635-208.637L401.068,185.867L401.068,185.867z"/>
|
||||
<path style="fill:#147391;" d="M312.593,313.805c51.698-19.496,88.475-69.417,88.475-127.937H16.295
|
||||
c0,12.195,1.046,24.146,3.055,35.767l125.679-0.001c8.291,0,15.012,6.721,15.012,15.011c0,8.291-6.721,15.012-15.012,15.012
|
||||
c22.787,41.947,66.072,69.999,116.929,70.865c6.278,17.769,17.678,35.978,33.667,52.009c24.764,24.827,54.718,38.607,80.155,39.316
|
||||
c-0.749-25.546-14.521-55.602-39.287-80.429C328.92,325.826,320.859,319.273,312.593,313.805z"/>
|
||||
<path d="M505.563,91.693c-22.872-4.965-47.028,1.288-64.617,16.724c-3.391,2.976-3.728,8.139-0.751,11.531
|
||||
c2.975,3.39,8.139,3.728,11.53,0.751c12.124-10.641,27.628-15.617,43.372-14.127c-3.301,20.031-20.74,35.36-41.691,35.36h-21.675
|
||||
c-5.158-16.572-15.853-30.669-30.611-40.161c-16.633-10.7-36.452-14.278-55.799-10.077c-3.757,0.815-6.437,4.14-6.437,7.984
|
||||
c0,32.309,26.286,58.596,58.596,58.596h19.793v19.425H8.17c-4.513,0-8.17,3.658-8.17,8.17c0,119.548,97.258,216.807,216.806,216.807
|
||||
c25.745,0,50.879-4.456,74.79-13.249c23.422,19.907,51.013,31.898,75.829,32.589c0.076,0.002,0.153,0.003,0.228,0.003
|
||||
c2.166,0,4.246-0.861,5.782-2.398c1.588-1.59,2.451-3.765,2.385-6.012c-0.837-28.506-16.412-60.64-41.669-85.959
|
||||
c-4.271-4.283-8.748-8.307-13.389-12.041c21.514-10.688,40.001-26.54,54.011-46.434c15.662-22.24,24.587-48.068,26.088-75.137
|
||||
h16.234c-1.951,48.551-21.24,94.366-54.835,129.777c-3.106,3.274-2.97,8.446,0.304,11.551c1.581,1.499,3.604,2.243,5.622,2.243
|
||||
c2.162,0,4.323-0.854,5.928-2.547c38.366-40.441,59.495-93.426,59.495-149.194v-27.597h19.794c32.309,0,58.595-26.285,58.595-58.596
|
||||
C512,95.832,509.32,92.508,505.563,91.693z M397.479,141.931c-20.949,0-38.388-15.326-41.692-35.355
|
||||
c12.797-1.199,25.532,1.885,36.494,8.936c10.02,6.446,17.638,15.618,22.092,26.419H397.479z M21.206,229.804h115.698
|
||||
c3.774,0,6.842,3.069,6.842,6.841c0,3.772-3.069,6.842-6.842,6.842c-2.881,0-5.549,1.517-7.022,3.994
|
||||
c-1.473,2.476-1.532,5.545-0.158,8.077c24.182,44.512,68.15,72.221,118.393,74.936c6.615,16.364,16.932,32.179,30.15,46.236
|
||||
c-19.777,6.371-40.394,9.604-61.46,9.604C121.361,386.334,41.294,319.275,21.206,229.804z M301.586,306.16
|
||||
c-2.872,1.083-4.893,3.683-5.237,6.732c-0.342,3.049,1.052,6.033,3.611,7.727c7.996,5.289,15.606,11.537,22.623,18.57
|
||||
c19.607,19.656,32.623,43.572,36.038,65.633c-21.946-3.4-45.75-16.422-65.339-36.06c-14.639-14.677-25.617-31.608-31.748-48.961
|
||||
c-1.136-3.217-4.153-5.389-7.563-5.447c-43.242-0.735-81.739-22.236-104.815-58.035c6.559-4.099,10.93-11.385,10.93-19.674
|
||||
c0-12.783-10.4-23.182-23.183-23.182H18.237c-0.882-6.386-1.468-12.865-1.733-19.427h367.984
|
||||
C381.265,243.95,348.781,288.362,301.586,306.16z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 987 KiB |
@@ -0,0 +1,93 @@
|
||||
#import "/lib.typ": *
|
||||
|
||||
#show: resume.with(
|
||||
name: "Amira Patel",
|
||||
tagline: "Innovative marine biologist with 15+ years of experience in ocean conservation and research.",
|
||||
keywords: "marine biology, conservation, research, education, patents",
|
||||
icon-contact-header: (
|
||||
(image("icons/email.svg"), link("mailto:amira.patel@oceandreams.org", "amira.patel@oceandreams.org")),
|
||||
(image("icons/phone.svg"), link("tel:+13055557890", "+1-305-555-7890")),
|
||||
(image("icons/linkedin.svg"), link("https://www.linkedin.com/in/amirapatel/", "amirapatel")),
|
||||
),
|
||||
thumbnail: image("assets/my-qr-code.svg"),
|
||||
)
|
||||
|
||||
= Research Philosophy
|
||||
|
||||
My approach to marine biology is rooted in curiosity, collaboration, and
|
||||
conservation. I believe in conducting rigorous scientific research that not only
|
||||
advances our understanding of marine ecosystems but also informs policy
|
||||
decisions to protect our oceans. By fostering interdisciplinary partnerships and
|
||||
engaging with local communities, I strive to create impactful solutions that
|
||||
balance human needs with ecological preservation.
|
||||
|
||||
= Experience
|
||||
|
||||
#company-heading("Global Ocean Institute", start: "March 2018", end: "Present", icon: image("./icons/earth.svg"))[
|
||||
#job-heading("Senior Marine Biologist", location: "Brisbane, Queensland, AU")[
|
||||
- Leading a team of 12 researchers in a long-term study on coral reef
|
||||
resilience in changing climates.
|
||||
- Developed an AI-powered system for monitoring fish populations, increasing
|
||||
data accuracy by 40%.
|
||||
- Secured \$2.5M in research grants for the institute's sustainable fishing
|
||||
practices initiative.
|
||||
- Mentored 20+ graduate students, with 5 going on to publish in top-tier
|
||||
scientific journals.
|
||||
]
|
||||
]
|
||||
|
||||
#company-heading("OceanTech Solutions", start: "June 2014", end: "February 2018", icon: image("icons/whale.svg"))[
|
||||
#job-heading("Research Scientist", location: "Baltimore, Maryland")[
|
||||
- Pioneered use of autonomous underwater vehicles for deep-sea exploration,
|
||||
discovering 3 new species.
|
||||
- Collaborated with engineers to develop biodegradable sensors for ocean
|
||||
pollution monitoring.
|
||||
- Presented findings at 15+ international conferences, establishing the
|
||||
company as a leader in marine tech.
|
||||
]
|
||||
]
|
||||
|
||||
#company-heading("Coral Conservation Alliance", start: "September 2009", end: "May 2014", icon: image("icons/coral.svg"))[
|
||||
#job-heading("Conservation Biologist", location: "Corpus Christi, Texas")[
|
||||
- Managed a team of 8 in implementing coral restoration techniques across 5
|
||||
Caribbean sites.
|
||||
- Increased local community engagement in conservation efforts by 200%
|
||||
through education programs.
|
||||
- Co-authored a policy brief that influenced the establishment of 3 new
|
||||
marine protected areas.
|
||||
]
|
||||
]
|
||||
|
||||
#company-heading("Pacific Marine Research Center", start: "July 2005", end: "August 2009", icon: image("icons/microscope.svg"))[
|
||||
#job-heading("Research Assistant", location: "San Diego, California",
|
||||
comment: [Contributed to 7 published studies. #footnote[Visit https://amirapatel.org/publications for full list of publications.]]
|
||||
)[]
|
||||
]
|
||||
|
||||
= Patents
|
||||
|
||||
#link(
|
||||
"https://patents.google.com/patent/US20230123456A1",
|
||||
strong("MARINE BIODIVERSITY MONITORING SYSTEM USING ENVIRONMENTAL DNA (US 20230123456A1)")
|
||||
)
|
||||
#quote[A novel system and method for monitoring marine biodiversity using
|
||||
environmental DNA (eDNA) sampling and analysis. The invention includes an
|
||||
automated collection device capable of filtering seawater at various depths,
|
||||
preserving eDNA samples, and transmitting data in real-time.]
|
||||
|
||||
= Eligibility and Location
|
||||
|
||||
- *Eligibility:* United States Permanent Resident
|
||||
- *Location:* Open to remote opportunities or relocation to coastal areas.
|
||||
- *Travel Availability:* Willing to travel up to 40% for field research and
|
||||
conferences.
|
||||
|
||||
= Education
|
||||
|
||||
#school-heading("University of California, San Diego", start: "Fall 2001", end: "Spring 2005", icon: image("icons/graduation-cap.svg"))[
|
||||
#degree-heading("Ph.D. in Marine Biology")[]
|
||||
]
|
||||
|
||||
#school-heading("University of Miami", start: "Fall 1997", end: "Spring 2001", icon: image("icons/palm-tree.svg"))[
|
||||
#degree-heading("B.S. in Marine Science, Minor in Environmental Policy")[]
|
||||
]
|
||||
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-2 -2 33 33"><rect x="-2" y="-2" width="33" height="33" fill="#ffffff"></rect><g fill="#000000c6"><path d="M0,0h7v7h-7zM1,1v5h5v-5zM2,2h3v3h-3zM22,0h7v7h-7zM23,1v5h5v-5zM24,2h3v3h-3zM0,22h7v7h-7zM1,23v5h5v-5zM2,24h3v3h-3z"></path><path d="M15,0h1v1h-1zM16,0h1v1h-1zM17,0h1v1h-1zM18,0h1v1h-1zM19,0h1v1h-1zM11,1h1v1h-1zM17,1h1v1h-1zM20,1h1v1h-1zM8,2h1v1h-1zM12,2h1v1h-1zM14,2h1v1h-1zM16,2h1v1h-1zM19,2h1v1h-1zM20,2h1v1h-1zM8,3h1v1h-1zM11,3h1v1h-1zM17,3h1v1h-1zM8,4h1v1h-1zM9,4h1v1h-1zM13,4h1v1h-1zM14,4h1v1h-1zM15,4h1v1h-1zM19,4h1v1h-1zM20,4h1v1h-1zM8,5h1v1h-1zM13,5h1v1h-1zM14,5h1v1h-1zM15,5h1v1h-1zM16,5h1v1h-1zM18,5h1v1h-1zM8,6h1v1h-1zM10,6h1v1h-1zM12,6h1v1h-1zM14,6h1v1h-1zM16,6h1v1h-1zM18,6h1v1h-1zM20,6h1v1h-1zM8,7h1v1h-1zM9,7h1v1h-1zM10,7h1v1h-1zM13,7h1v1h-1zM18,7h1v1h-1zM19,7h1v1h-1zM0,8h1v1h-1zM2,8h1v1h-1zM3,8h1v1h-1zM4,8h1v1h-1zM5,8h1v1h-1zM6,8h1v1h-1zM12,8h1v1h-1zM14,8h1v1h-1zM15,8h1v1h-1zM16,8h1v1h-1zM17,8h1v1h-1zM20,8h1v1h-1zM22,8h1v1h-1zM23,8h1v1h-1zM24,8h1v1h-1zM25,8h1v1h-1zM26,8h1v1h-1zM1,9h1v1h-1zM7,9h1v1h-1zM8,9h1v1h-1zM11,9h1v1h-1zM12,9h1v1h-1zM16,9h1v1h-1zM19,9h1v1h-1zM20,9h1v1h-1zM21,9h1v1h-1zM22,9h1v1h-1zM23,9h1v1h-1zM24,9h1v1h-1zM28,9h1v1h-1zM0,10h1v1h-1zM1,10h1v1h-1zM3,10h1v1h-1zM6,10h1v1h-1zM9,10h1v1h-1zM11,10h1v1h-1zM12,10h1v1h-1zM15,10h1v1h-1zM20,10h1v1h-1zM21,10h1v1h-1zM0,11h1v1h-1zM4,11h1v1h-1zM5,11h1v1h-1zM10,11h1v1h-1zM11,11h1v1h-1zM12,11h1v1h-1zM14,11h1v1h-1zM16,11h1v1h-1zM19,11h1v1h-1zM20,11h1v1h-1zM24,11h1v1h-1zM25,11h1v1h-1zM27,11h1v1h-1zM2,12h1v1h-1zM3,12h1v1h-1zM4,12h1v1h-1zM6,12h1v1h-1zM8,12h1v1h-1zM9,12h1v1h-1zM17,12h1v1h-1zM19,12h1v1h-1zM23,12h1v1h-1zM25,12h1v1h-1zM26,12h1v1h-1zM0,13h1v1h-1zM2,13h1v1h-1zM3,13h1v1h-1zM5,13h1v1h-1zM9,13h1v1h-1zM11,13h1v1h-1zM13,13h1v1h-1zM14,13h1v1h-1zM16,13h1v1h-1zM18,13h1v1h-1zM19,13h1v1h-1zM20,13h1v1h-1zM22,13h1v1h-1zM23,13h1v1h-1zM24,13h1v1h-1zM28,13h1v1h-1zM1,14h1v1h-1zM6,14h1v1h-1zM7,14h1v1h-1zM9,14h1v1h-1zM13,14h1v1h-1zM14,14h1v1h-1zM15,14h1v1h-1zM16,14h1v1h-1zM17,14h1v1h-1zM18,14h1v1h-1zM21,14h1v1h-1zM23,14h1v1h-1zM24,14h1v1h-1zM25,14h1v1h-1zM26,14h1v1h-1zM0,15h1v1h-1zM1,15h1v1h-1zM4,15h1v1h-1zM8,15h1v1h-1zM9,15h1v1h-1zM11,15h1v1h-1zM13,15h1v1h-1zM16,15h1v1h-1zM18,15h1v1h-1zM19,15h1v1h-1zM20,15h1v1h-1zM21,15h1v1h-1zM27,15h1v1h-1zM0,16h1v1h-1zM1,16h1v1h-1zM3,16h1v1h-1zM4,16h1v1h-1zM6,16h1v1h-1zM9,16h1v1h-1zM12,16h1v1h-1zM14,16h1v1h-1zM17,16h1v1h-1zM19,16h1v1h-1zM25,16h1v1h-1zM26,16h1v1h-1zM0,17h1v1h-1zM2,17h1v1h-1zM3,17h1v1h-1zM7,17h1v1h-1zM16,17h1v1h-1zM17,17h1v1h-1zM18,17h1v1h-1zM19,17h1v1h-1zM21,17h1v1h-1zM22,17h1v1h-1zM23,17h1v1h-1zM24,17h1v1h-1zM26,17h1v1h-1zM28,17h1v1h-1zM0,18h1v1h-1zM2,18h1v1h-1zM4,18h1v1h-1zM6,18h1v1h-1zM7,18h1v1h-1zM8,18h1v1h-1zM9,18h1v1h-1zM10,18h1v1h-1zM15,18h1v1h-1zM16,18h1v1h-1zM21,18h1v1h-1zM23,18h1v1h-1zM24,18h1v1h-1zM26,18h1v1h-1zM0,19h1v1h-1zM2,19h1v1h-1zM3,19h1v1h-1zM7,19h1v1h-1zM8,19h1v1h-1zM9,19h1v1h-1zM11,19h1v1h-1zM12,19h1v1h-1zM14,19h1v1h-1zM15,19h1v1h-1zM18,19h1v1h-1zM20,19h1v1h-1zM23,19h1v1h-1zM27,19h1v1h-1zM0,20h1v1h-1zM2,20h1v1h-1zM3,20h1v1h-1zM4,20h1v1h-1zM6,20h1v1h-1zM7,20h1v1h-1zM8,20h1v1h-1zM11,20h1v1h-1zM12,20h1v1h-1zM17,20h1v1h-1zM19,20h1v1h-1zM20,20h1v1h-1zM21,20h1v1h-1zM22,20h1v1h-1zM23,20h1v1h-1zM24,20h1v1h-1zM26,20h1v1h-1zM27,20h1v1h-1zM28,20h1v1h-1zM8,21h1v1h-1zM9,21h1v1h-1zM10,21h1v1h-1zM11,21h1v1h-1zM12,21h1v1h-1zM13,21h1v1h-1zM14,21h1v1h-1zM16,21h1v1h-1zM17,21h1v1h-1zM18,21h1v1h-1zM20,21h1v1h-1zM24,21h1v1h-1zM25,21h1v1h-1zM26,21h1v1h-1zM27,21h1v1h-1zM28,21h1v1h-1zM13,22h1v1h-1zM14,22h1v1h-1zM15,22h1v1h-1zM18,22h1v1h-1zM19,22h1v1h-1zM20,22h1v1h-1zM22,22h1v1h-1zM24,22h1v1h-1zM25,22h1v1h-1zM26,22h1v1h-1zM8,23h1v1h-1zM9,23h1v1h-1zM11,23h1v1h-1zM13,23h1v1h-1zM15,23h1v1h-1zM16,23h1v1h-1zM19,23h1v1h-1zM20,23h1v1h-1zM24,23h1v1h-1zM28,23h1v1h-1zM8,24h1v1h-1zM11,24h1v1h-1zM12,24h1v1h-1zM14,24h1v1h-1zM15,24h1v1h-1zM16,24h1v1h-1zM17,24h1v1h-1zM20,24h1v1h-1zM21,24h1v1h-1zM22,24h1v1h-1zM23,24h1v1h-1zM24,24h1v1h-1zM26,24h1v1h-1zM27,24h1v1h-1zM8,25h1v1h-1zM9,25h1v1h-1zM16,25h1v1h-1zM18,25h1v1h-1zM19,25h1v1h-1zM25,25h1v1h-1zM26,25h1v1h-1zM27,25h1v1h-1zM28,25h1v1h-1zM8,26h1v1h-1zM9,26h1v1h-1zM10,26h1v1h-1zM11,26h1v1h-1zM13,26h1v1h-1zM14,26h1v1h-1zM15,26h1v1h-1zM16,26h1v1h-1zM17,26h1v1h-1zM18,26h1v1h-1zM19,26h1v1h-1zM22,26h1v1h-1zM23,26h1v1h-1zM24,26h1v1h-1zM25,26h1v1h-1zM26,26h1v1h-1zM27,26h1v1h-1zM9,27h1v1h-1zM10,27h1v1h-1zM12,27h1v1h-1zM14,27h1v1h-1zM15,27h1v1h-1zM20,27h1v1h-1zM23,27h1v1h-1zM24,27h1v1h-1zM25,27h1v1h-1zM27,27h1v1h-1zM8,28h1v1h-1zM11,28h1v1h-1zM15,28h1v1h-1zM17,28h1v1h-1zM19,28h1v1h-1zM21,28h1v1h-1zM24,28h1v1h-1zM26,28h1v1h-1z"></path></g></svg>
|
||||
|
After Width: | Height: | Size: 4.5 KiB |
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 511.997 511.997" xml:space="preserve">
|
||||
<path style="fill:#F15A24;" d="M450.018,218.943c-2.63,9.656-7.659,21.352-18.865,37.594c-2.264-1.46-4.659-3.192-7.043-5.243
|
||||
c-12.155-10.452-18.566-23.911-19.6-41.147c-0.881-14.697-13.511-25.901-28.208-25.015c-14.697,0.881-25.897,13.511-25.015,28.208
|
||||
c1.96,32.664,15.962,60.472,40.495,80.418c0.338,0.274,0.674,0.539,1.012,0.807c-12.629,8.742-27.873,16.702-46.267,23.132
|
||||
c-3.846-16.724-9.228-32.735-14.438-48.232c-9.427-28.047-18.333-54.538-19.252-84.142c-0.405-13.037,0.102-28.108,1.105-43.491
|
||||
c26.915-2.012,71.335-9.781,99.811-38.078c10.444-10.379,10.497-27.258,0.117-37.701c-10.378-10.446-27.259-10.496-37.701-0.118
|
||||
c-13.42,13.335-37.516,19.345-57.14,21.78c3.115-26.48,6.223-46.265,6.289-46.684c2.305-14.541-7.614-28.198-22.155-30.504
|
||||
c-14.548-2.307-28.2,7.613-30.506,22.155c-0.611,3.855-14.951,95.09-13.113,154.295c1.165,37.475,12.237,70.413,22.007,99.476
|
||||
c15.624,46.479,27.867,82.9,2.935,128.948c-9.969-27.452-25.982-62.181-51.241-97.577c-9.456-13.251-19.413-26.617-29.955-40.767
|
||||
c-23.301-31.275-48.26-64.778-66.788-96.409c24.322-13.768,55.95-44.956,64.197-115.083c1.72-14.623-8.741-27.871-23.363-29.591
|
||||
c-14.629-1.718-27.871,8.741-29.591,23.363c-5.282,44.92-22.028,64.494-34.167,72.913c-3.163-9.619-5.104-18.776-5.498-27.308
|
||||
c-0.68-14.708-13.13-26.097-27.862-25.4c-14.707,0.679-26.079,13.153-25.4,27.861c2.569,55.604,42.886,116.243,86.772,175.964
|
||||
c-29.89,1.011-67.209-2.714-85.761-21.905c-10.258-10.613-27.197-10.874-37.779-0.56C7.383,271.3,7.795,288.718,18.266,299.311
|
||||
c23.636,23.913,60.036,36.519,108.211,37.473c1.93,0.038,3.835,0.056,5.722,0.056c19.385,0,36.28-1.904,46.524-3.393
|
||||
c3.805,5.186,7.518,10.295,11.122,15.348c46.914,65.745,57.087,129.651,57.174,130.218c1.495,10.18,8.715,18.59,18.551,21.61
|
||||
c2.576,0.79,5.21,1.175,7.822,1.175c7.359-0.001,14.53-3.052,19.659-8.651c11.274-12.304,20.581-24.227,28.222-35.804
|
||||
c8.114,2.147,20.148,4.681,33.663,5.375c2.461,0.126,4.852,0.187,7.184,0.187c40.601,0,62.046-18.54,72.996-34.598
|
||||
c8.295-12.165,5.157-28.751-7.008-37.045c-12.164-8.296-28.75-5.157-37.045,7.008c-9.072,13.305-30.763,12.329-45.97,9.652
|
||||
c3.767-12.337,5.805-24.265,6.536-35.832c73.471-22.012,111.456-64.119,130.592-96.614c9.034-15.341,14.771-29.861,18.41-41.934
|
||||
c4.912-16.296-6.791-32.878-23.785-33.822l0,0C464.497,199.034,453.269,207.01,450.018,218.943z"/>
|
||||
<path d="M273.393,511.997c-3.666,0-7.304-0.547-10.815-1.624c-13.526-4.153-23.593-15.881-25.648-29.878
|
||||
c-0.085-0.531-10.305-62.6-55.385-125.775c-2.303-3.226-4.769-6.644-7.47-10.35c-12.079,1.521-29.003,2.982-47.797,2.613
|
||||
c-50.917-1.008-89.696-14.634-115.264-40.5c-7.072-7.155-11.073-17.036-10.98-27.111c0.092-9.859,3.962-19.01,10.898-25.771
|
||||
c7.072-6.895,16.443-10.625,26.279-10.462c9.875,0.147,19.091,4.138,25.953,11.238c12.908,13.354,37.565,17.638,58.297,18.669
|
||||
c-38.966-54.168-74.32-110.83-76.831-165.169c-0.936-20.303,14.817-37.582,35.118-38.52c9.837-0.455,19.243,2.928,26.518,9.552
|
||||
c7.285,6.635,11.549,15.714,12.004,25.566c0.118,2.569,0.406,5.268,0.862,8.085c7.504-10.112,15.25-26.884,18.486-54.41
|
||||
c2.373-20.18,20.714-34.675,40.91-32.301c20.185,2.373,34.676,20.726,32.303,40.911c-7.763,66.01-35.508,99.888-60.445,117.201
|
||||
c17.558,28.583,39.654,58.241,61.085,87.007c10.594,14.221,20.571,27.613,30.079,40.937c17.031,23.866,31.508,49.53,43.198,76.549
|
||||
c9.438-32.401-0.28-61.319-12.86-98.741c-9.996-29.74-21.323-63.436-22.534-102.414c-1.868-60.18,12.615-152.317,13.234-156.21
|
||||
c3.184-20.072,22.098-33.813,42.178-30.629c20.071,3.183,33.811,22.103,30.63,42.174c-0.105,0.666-2.176,13.915-4.589,32.861
|
||||
c17.351-3.511,30.665-9.325,38.178-16.789c6.955-6.912,16.177-10.714,25.979-10.714c0.039,0,0.078,0,0.116,0
|
||||
c9.846,0.031,19.091,3.893,26.029,10.878c6.94,6.981,10.745,16.249,10.714,26.095c-0.031,9.845-3.894,19.089-10.877,26.029
|
||||
c-27.075,26.906-66.334,36.827-97.335,40.199c-0.677,12.947-0.871,24.294-0.575,33.819c0.872,28.095,9.542,53.89,18.722,81.199
|
||||
c4.115,12.243,8.339,24.806,11.876,37.889c7.88-3.239,15.327-6.884,22.289-10.911c-20.967-20.905-32.94-48.051-34.812-79.234
|
||||
c-0.59-9.827,2.683-19.296,9.215-26.663c6.533-7.366,15.543-11.747,25.371-12.337c9.81-0.597,19.295,2.678,26.664,9.214
|
||||
c7.366,6.533,11.747,15.544,12.336,25.372c0.81,13.495,5.27,23.779,13.978,32.127c5.635-9.255,9.352-17.487,11.508-25.402l0,0
|
||||
c4.478-16.435,20.122-27.676,37.234-26.726c11.269,0.625,21.448,6.287,27.928,15.53c6.456,9.212,8.299,20.664,5.057,31.419
|
||||
c-4.606,15.284-11.128,30.144-19.386,44.166c-19.105,32.442-57.034,75.504-129.801,99.133c-0.696,6.523-1.783,13.024-3.253,19.457
|
||||
c12.378,0.776,21.15-1.54,24.679-6.717c5.547-8.135,13.93-13.622,23.604-15.452c9.674-1.83,19.483,0.216,27.615,5.765
|
||||
c8.133,5.545,13.62,13.927,15.45,23.601c1.831,9.674-0.216,19.482-5.763,27.616c-12.146,17.815-36.133,39.051-81.421,39.051
|
||||
c-2.52,0-5.114-0.067-7.708-0.2c-10.904-0.56-20.887-2.251-28.685-3.984c-7.274,10.37-15.714,20.81-25.157,31.117
|
||||
C293.608,507.637,283.702,511.997,273.393,511.997z M178.724,323.25c3.217,0,6.283,1.525,8.222,4.165
|
||||
c4.205,5.73,7.87,10.787,11.202,15.457c48.279,67.659,58.853,133.939,58.954,134.601c0.927,6.31,5.423,11.547,11.463,13.401
|
||||
c1.569,0.481,3.193,0.726,4.827,0.726c4.605,0,9.03-1.947,12.138-5.341c10.531-11.494,19.693-23.111,27.231-34.534
|
||||
c2.411-3.654,6.883-5.362,11.12-4.242c7.334,1.941,18.766,4.392,31.577,5.05c2.246,0.115,4.488,0.173,6.662,0.173
|
||||
c36.379,0,55.192-16.392,64.569-30.144c2.476-3.633,3.39-8.012,2.572-12.332c-0.817-4.32-3.268-8.064-6.901-10.54
|
||||
c-3.633-2.477-8.012-3.391-12.331-2.574c-4.32,0.818-8.065,3.269-10.542,6.902c-9.491,13.922-28.911,18.746-56.164,13.951
|
||||
c-2.877-0.507-5.399-2.222-6.926-4.713c-1.528-2.491-1.913-5.517-1.061-8.31c3.343-10.949,5.401-22.219,6.112-33.496
|
||||
c0.27-4.26,3.164-7.901,7.252-9.126c70.792-21.21,106.903-61.748,124.73-92.02c7.431-12.618,13.297-25.975,17.434-39.701
|
||||
c1.425-4.729,0.612-9.768-2.232-13.825c-2.867-4.09-7.37-6.594-12.353-6.87c-7.566-0.421-14.458,4.509-16.423,11.72
|
||||
c-3.462,12.703-9.915,25.637-20.311,40.705c-3.129,4.535-9.293,5.766-13.922,2.78c-2.899-1.868-5.645-3.914-8.165-6.082
|
||||
c-14.157-12.173-21.94-28.413-23.132-48.269c-0.263-4.391-2.219-8.414-5.509-11.332c-3.289-2.917-7.535-4.381-11.902-4.113
|
||||
c-4.393,0.263-8.416,2.22-11.333,5.51c-2.917,3.289-4.379,7.518-4.114,11.907c1.784,29.738,14.491,55.021,36.748,73.115
|
||||
c0.22,0.178,0.442,0.354,0.661,0.529l0.259,0.205c2.528,2.008,3.956,5.095,3.849,8.322c-0.106,3.227-1.733,6.212-4.389,8.05
|
||||
c-14.228,9.849-30.615,18.051-48.705,24.374c-2.737,0.956-5.753,0.704-8.293-0.699c-2.54-1.401-4.362-3.817-5.012-6.644
|
||||
c-3.735-16.237-9.038-32.012-14.167-47.268c-9.676-28.788-18.812-55.969-19.779-87.075c-0.38-12.252-0.003-27.215,1.122-44.47
|
||||
c0.33-5.074,4.347-9.129,9.416-9.508c23.433-1.752,66.721-8.647,93.383-35.142c3.119-3.1,4.844-7.227,4.858-11.624
|
||||
c0.014-4.396-1.685-8.535-4.784-11.653c-3.1-3.12-7.227-4.845-11.623-4.859c-0.017,0-0.035,0-0.052,0
|
||||
c-4.379,0-8.496,1.698-11.603,4.784c-16.004,15.904-43.134,22.192-63.073,24.668c-3.11,0.388-6.223-0.677-8.445-2.886
|
||||
c-2.223-2.208-3.307-5.315-2.941-8.427c3.085-26.231,6.209-46.226,6.341-47.064c1.425-8.989-4.711-17.438-13.674-18.859
|
||||
c-8.969-1.423-17.413,4.715-18.835,13.679c-0.606,3.815-14.802,94.105-12.992,152.381c1.118,35.968,11.934,68.147,21.479,96.539
|
||||
c15.713,46.747,29.281,87.112,2.238,137.057c-1.912,3.532-5.74,5.614-9.723,5.315c-4.004-0.297-7.462-2.916-8.833-6.691
|
||||
c-12.327-33.948-29.134-65.955-49.955-95.133c-9.386-13.153-19.304-26.465-29.802-40.558c-23.917-32.101-48.617-65.254-67.44-97.387
|
||||
c-1.381-2.357-1.758-5.168-1.047-7.805c0.709-2.637,2.447-4.879,4.824-6.226c22.707-12.854,51.391-41.921,59.091-107.399
|
||||
c1.06-9.014-5.412-17.21-14.425-18.27c-9.017-1.058-17.211,5.413-18.271,14.426c-5.651,48.064-24.048,70.089-38.484,80.103
|
||||
c-2.647,1.835-6,2.313-9.054,1.289c-3.053-1.023-5.442-3.427-6.448-6.485c-3.56-10.83-5.578-20.931-5.997-30.024
|
||||
c-0.204-4.404-2.107-8.461-5.362-11.425c-3.243-2.954-7.455-4.46-11.831-4.257c-9.076,0.42-16.113,8.137-15.695,17.204
|
||||
c2.503,54.147,45.086,116.346,84.802,170.394c2.24,3.049,2.609,7.086,0.957,10.491c-1.65,3.403-5.051,5.615-8.832,5.742
|
||||
c-30.598,1.036-71.644-2.465-93.437-25.01c-3.065-3.171-7.181-4.953-11.59-5.018c-4.385-0.077-8.578,1.594-11.736,4.673
|
||||
c-3.015,2.939-4.698,6.971-4.739,11.354c-0.044,4.679,1.81,9.265,5.089,12.582c21.703,21.958,55.738,33.546,101.159,34.445
|
||||
c20.808,0.408,39.245-1.586,50.576-3.232C177.746,323.284,178.237,323.25,178.724,323.25z"/>
|
||||
<path d="M175.297,297.658c-3.273,0-6.487-1.573-8.458-4.488l-24.528-36.282c-3.156-4.666-1.93-11.007,2.737-14.162
|
||||
c4.666-3.153,11.007-1.93,14.162,2.737l24.528,36.282c3.156,4.666,1.93,11.007-2.737,14.162
|
||||
C179.25,297.09,177.264,297.658,175.297,297.658z"/>
|
||||
<path d="M131.32,232.607c-3.273,0-6.487-1.573-8.458-4.488l-7.208-10.662c-3.156-4.666-1.93-11.007,2.737-14.162
|
||||
c4.666-3.153,11.007-1.93,14.162,2.737l7.208,10.662c3.156,4.666,1.93,11.007-2.737,14.162
|
||||
C135.273,232.04,133.287,232.607,131.32,232.607z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.9 KiB |
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m18.68 10.74a26.63 26.63 0 0 1 11.25-3.53c4.25-.21 8.15.79 13.56 3.38s8.4 5.06 10.69 9.31 3.53 7.38 2.28 12.91-1.63 11.09-3.85 14.93-5.93 6.5-11.43 7.88-13.32 2.28-20.07-1.44-11.5-9.25-13.25-16.9-.31-11.63 1-15.22a23.64 23.64 0 0 1 9.82-11.32z" fill="#1d1d1b"/>
|
||||
<path d="m20.55 11.31a22.85 22.85 0 0 1 7.69-2.6c4-.47 10.47 1.32 11.15 1.63s1.25.5 1 .69-2.53 2.18-3.34 2.31-3.62-.56-5.75-.47-3.56.5-4.59.5-2.5-1.13-3.5-1.22-3.13-.59-2.66-.84z" fill="#4eae4d"/>
|
||||
<path d="m18.58 12.87a5.82 5.82 0 0 1 4.16.34c1.62.88 1.44 1.25 3.65 1.22s3.29-.4 3.94-.25 3.41 1.35 5.85.88a10.42 10.42 0 0 0 4.28-1.75c.72-.47 1.15-1.25 1.59-1.19s4.41 2.41 4.34 2.66a4.52 4.52 0 0 1 -1.71 1.5 7.43 7.43 0 0 0 -2.79 3.46c-.5 1.47-.78 5.88-.12 6.32s2.34-.19 3 .31.81 2.06 1.91 2.19 1.56-.69 2.56 0 1 1.21 2.56 1.25 3-.32 3.09 0a2.47 2.47 0 0 1 -.12 1.43c-.16.1-5.44.72-6.69.79s-1 .34-1.69 0-1.78-1.63-3.39-1.88-6.53-.56-7.5-.56-1.25 0-1.35.47.1 5.18-.4 6.72-.16 4.06 1.65 4.78 3.69 1.09 3.94 1.75 1.13 5 1.91 6.47 1.87 3.15 1.5 3.46a20.31 20.31 0 0 1 -6 1.54 23.64 23.64 0 0 1 -5.78 0s-1.16-6-1.47-6.54a4.67 4.67 0 0 1 -.41-2.34c.13-.41 2.34-4.87 2.06-6s-.72-2.28-1.75-2.56-2.75 0-5.53 0a27.84 27.84 0 0 1 -5.34-.44c-.56-.12-.88 0-1.13-.28s-2.28-4-2-4.34 3.13-1.16 3.25-1.82-.06-2.25.66-2.31 3.87.38 4.87-.15 1.13-1.75 1.16-2.82-.37-3.4-.84-3.84-5-1.81-6.72-2.72-3.17-1.62-2.98-2.22a12.45 12.45 0 0 1 3.78-3.53z" fill="#85bfe9"/>
|
||||
<path d="m20.49 15c.54-.07.59.35.4.72s0 1.72.6 1.69a55.56 55.56 0 0 1 6.4-1.06 26.38 26.38 0 0 1 8 1.65c.75.41 1.1 2 1.16 2.47a29.44 29.44 0 0 1 -2.75 5.53c-.28.15-3.19-1-5.28-2s-3-1.47-3.09-1.88a6.23 6.23 0 0 0 -.5-1.69c-.19-.09-3-.28-4.35-1.09s-2.56-2.13-2.31-2.69a4.18 4.18 0 0 1 1.72-1.65z" fill="#1d1d1b"/>
|
||||
<path d="m24.36 17.87a20.8 20.8 0 0 1 7.25.31c3.19.63 3.69 1.16 3.6 1.94s-1.28 4-1.72 3.84a41.78 41.78 0 0 1 -5.31-2.18c-.22-.32-.29-1.88-1.22-2.16s-2.88-.88-3.53-1.13-.5-.5-.35-.5 1.28-.12 1.28-.12z" fill="#4eae4d"/>
|
||||
<path d="m47.58 15.21c.21-.07 2.94 1.07 4.81 4.63s2.47 7.94 2.25 8.34-.9.44-1.53.25-3.11-1.56-3.65-1.56-1.41.47-1.78 0-1.5-1.87-2.63-1.87-1.37.19-1.56-.06-.81-5.53.37-6.5 2.22-1.59 2.69-2 .75-1.13 1.03-1.23z" fill="#4eae4d"/>
|
||||
<path d="m35.71 31c.36 0 5.72-.4 6.78.63s1.94 2.15 2.84 2.12 9.19-.75 9.19-.43-.94 7.5-2.38 11.15a15.91 15.91 0 0 1 -5.53 7.06c-1.15.66-2.34.91-2.43.72a21.82 21.82 0 0 1 -2.29-5.93c-.68-3.22-.87-4.72-1.93-5s-3.69-.9-4.19-1.53a4 4 0 0 1 -.56-1.87s.28-3.88.28-4.72.03-2.2.22-2.2z" fill="#4eae4d"/>
|
||||
<path d="m17.43 38.21a12.74 12.74 0 0 0 4.84.91c3.31.06 6.56-.31 6.91.09s.28 1.78-.44 3.1a21.38 21.38 0 0 0 -1.19 2.59 26.16 26.16 0 0 0 -3.16-2.5.59.59 0 0 0 -.34.69c.13.28 3 2.22 3.13 2.47a9.75 9.75 0 0 1 -.1 1.75 25.76 25.76 0 0 0 -3-2.38c-.37-.06-.62.85-.5 1s3.53 2.5 4 2.91a6.06 6.06 0 0 1 .84 2.53c-.09 0-3.9-3.09-4.12-3.13s-.28 1-.28 1 4.5 3.19 4.65 3.44a6.49 6.49 0 0 1 .44 1.88 32.57 32.57 0 0 1 -3.59-.91c-1.25-.47-2.35-.72-2.35-.81s-1.17-3.78-2.81-5.38a12.91 12.91 0 0 1 -2.36-2.65 31.09 31.09 0 0 1 -.35-3.72c-.04-.85-.41-2.88-.22-2.88z" fill="#4eae4d"/>
|
||||
<path d="m10.52 38.4c.19-.37 2.56.25 3.69.69s1.5 1 1.53 1.87-.13 4.66.65 5.35a10.71 10.71 0 0 1 3.07 3.28 7.26 7.26 0 0 1 1 2.19 20.15 20.15 0 0 1 -5.91-5.5c-3.19-4.13-4.12-7.69-4.03-7.88z" fill="#85bfe9"/>
|
||||
<path d="m9.61 36.18a17.66 17.66 0 0 1 -.12-9.65c1.37-5.69 4-8.72 4.22-8.69s5.4 3 7.5 4 2.22 1 2.37 1.44a10.13 10.13 0 0 1 -.19 3.34c-.18.09-3.93-.09-5 0s-1.39 1.59-1.31 2.19.13.87-.12 1.06-3.6 1.09-3.78 2 2.37 5.37 2 5.5-4.57-.16-5.57-1.19z" fill="#4eae4d"/>
|
||||
<g fill="#1d1d1b">
|
||||
<path d="m11.36 25.18a19.09 19.09 0 0 1 1.16-3.65c.5-.75.72-.91.94-.85s.84.35.78.53-1.13 2.25-1.41 3.16 0 .91-.4 1-.94.03-1.07-.19z"/>
|
||||
<path d="m40 15.59c.16-.14 2.53-.72 2.69-.5s.34.44.18.56a11.75 11.75 0 0 1 -2.62.94c-.2-.1-.45-.85-.25-1z"/>
|
||||
<path d="m38.46 22.93c.15.16 1.47 2.28 1.31 2.47s0 .47-.34.31a6.24 6.24 0 0 1 -1.54-2.22c.11-.25.57-.56.57-.56z"/>
|
||||
<path d="m37 24.37a12.18 12.18 0 0 1 1.72 2.09c0 .19 0 .47-.31.38a8.07 8.07 0 0 1 -1.86-1.84c0-.16.45-.66.45-.63z"/>
|
||||
<path d="m49.33 19.65a7.18 7.18 0 0 1 2.5 1.22c0 .19.1.69-.15.59s-2.54-1-2.63-1.12.25-.66.28-.69z"/>
|
||||
<path d="m49.11 22c.08-.11 4 2.18 4 2.53s.35.59-.06.53a30.17 30.17 0 0 1 -4.25-2.16c-.12-.19.2-.75.31-.9z"/>
|
||||
<path d="m48.74 24a25.43 25.43 0 0 1 4.84 2.62c.06.28.28.59-.12.56a40.58 40.58 0 0 1 -4.94-2.37c-.09-.13.09-.75.22-.81z"/>
|
||||
<path d="m49.68 35.53a13.17 13.17 0 0 1 2.9 2.78c-.09.25 0 .37-.28.28a22.37 22.37 0 0 1 -3.12-2.72c.06-.16.34-.28.5-.34z"/>
|
||||
<path d="m48.11 37.43a28.41 28.41 0 0 1 3.35 3.16c0 .25-.13.47-.25.44a41.72 41.72 0 0 1 -3.44-3 4.75 4.75 0 0 1 .34-.6z"/>
|
||||
<path d="m47.11 39.46a23.35 23.35 0 0 1 3.35 3.32c-.07.25.06.4-.25.37a39.21 39.21 0 0 1 -3.53-3.15 3.19 3.19 0 0 1 .43-.54z"/>
|
||||
<path d="m46.33 41.12a29.14 29.14 0 0 1 3.41 3.28c0 .25-.1.41-.22.31a43.92 43.92 0 0 1 -3.84-3.09.84.84 0 0 1 .65-.5z"/>
|
||||
<path d="m45.71 44.12a16 16 0 0 1 3.06 2.72c0 .22-.16.37-.25.34a33.63 33.63 0 0 1 -3.19-2.5c-.03-.19.31-.53.38-.56z"/>
|
||||
<path d="m45 45.93c.17 0 3.25 2.69 3 2.94s-.12.37-.37.28a22.27 22.27 0 0 1 -3.13-2.69c.11-.15.33-.53.5-.53z"/>
|
||||
<path d="m35.18 43.43c.09-.14 1.31.31 1.28.6s0 .34-.16.34a5 5 0 0 1 -1.53-.44c0-.12.34-.4.41-.5z"/>
|
||||
<path d="m33.14 47.28a1.46 1.46 0 0 1 1.16 0c.47.22 1.16 1 1.78 1.1s1.1-.28 1.25-.19a.37.37 0 0 1 .16.47c-.1.16-.16.31-.41.37a2 2 0 0 1 -1.5-.15c-.58-.39-.94-.88-1.58-.88s-.57.12-.69 0-.42-.51-.17-.72z"/>
|
||||
<path d="m26 40.15c.25.16 2.06 1.75 2 2s-.19.5-.38.44a10.1 10.1 0 0 1 -2.15-1.82c-.01-.24.53-.62.53-.62z"/>
|
||||
<path d="m24.21 30.43c.12 0 2.81 4.19 2.59 4.41s-.34.44-.47.31a44.75 44.75 0 0 1 -2.84-4.34 1.31 1.31 0 0 1 .72-.38z"/>
|
||||
<path d="m25.24 30c0-.12.59-.38.78-.19a12 12 0 0 1 1.37 2.72c-.09.18 0 .47-.25.28a17.6 17.6 0 0 1 -1.9-2.81z"/>
|
||||
<path d="m30.74 29.71c.08-.11 1-1 1.28-1s1 0 .91.22-1.41 1.91-1.66 1.75a1.66 1.66 0 0 1 -.53-.97z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.9 KiB |
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 128 128" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--noto" preserveAspectRatio="xMidYMid meet"><path d="M99.06 91.42S83.95 105.6 63.97 105.6S28.89 91.42 28.89 91.42s-2.81-13.49 4.45-36.78c3.83-12.28 58.33-13.53 62.6-2.79c7.26 18.23 3.12 39.57 3.12 39.57z" fill="#424242"></path><path d="M28.89 91.42l4.79 3.84s-.04-7.6 2.31-14.69c.88-2.65 4.02-3.76 6.38-2.27l18.29 11.47a6.389 6.389 0 0 0 6.7.05c8.74-5.3 31.54-19.17 32.58-20.02c0 0 0-1.71-.43-3.89L28.63 66l.26 25.42z" fill="#212121"></path><path d="M122.81 52.03l-56.8 33.83c-1.24.74-2.79.74-4.04 0L5.19 52.03c-1.58-.94-1.58-3.23 0-4.17l56.8-33.83c1.24-.74 2.79-.74 4.04 0l56.8 33.83c1.57.94 1.57 3.23-.02 4.17z" fill="#424242"></path><path d="M64.04 83.38c-.01 0-.03.01-.04.01c-.16 0-.32-.04-.46-.13L4.18 49.04s-.29.55 0 1.54c.3.99.76 1.31 1.01 1.46l56.8 33.83c.62.37 1.32.56 2.02.56h.04v-3.05z" fill="#9e9e9e"></path><path d="M64 83.38c.01 0 .03.01.04.01c.16 0 .32-.04.46-.13l59.36-34.22s.29.55 0 1.54c-.3.99-.76 1.31-1.01 1.46l-56.8 33.83c-.62.37-1.32.56-2.02.56h-.04v-3.05z" fill="#616161"></path><path d="M35.45 70.06l.32-2.81S60.28 53.92 62.7 52.52c2.42-1.4 4.96-2.96 6.09-4.21c2-2.2.56-3.58.56-3.58s-1.58 2.56-5.35 2.11c-2.16-.26-4.97-2.01-5.44-2.83s-27.67 19.9-27.67 19.9l-.19 3.33l4.75 2.82z" fill="#424242"></path><path d="M69.35 44.74c-2.62 3.66-7.06 2.06-7.06 2.06s-13.91 6.67-14.43 5.66s11.49-7.19 11.49-7.19s-.67-2.46-.6-3.51c0 0-21.72 13.82-29.87 18.47c-4.27 2.44-5.18 4.74-5.17 7.98c0 1.42.02 6.03.04 8.78c0 .51-.22.99-.61 1.31a5.162 5.162 0 0 0-1.89 3.99c0 1.53.67 2.9 1.73 3.85c.57.51.45 1.61.5 2.32c.1 1.36 0 1.98-.56 3.24c-.55 1.23-1.06 2.49-1.41 3.79c-.27 1-.45 2.03-.63 3.05c-1.19 6.83-1.73 14.13-4.88 20.41a.993.993 0 0 0 .45 1.34a1.007 1.007 0 0 0 1.35-.44c1.64-3.27 2.49-6.85 3.19-10.4c-.04 3.21-.06 6.45-.17 9.95c-.02.68-.07 2.05.55 2.35c2.33 1.13 2.33-2.35 2.33-2.35s.03 3.13 3.2 3.13s3.4-3.13 3.4-3.13s.23 2.87 1.86 2.73c.66-.06 1.53-.46 1.22-3.89c-.31-3.42-1.08-15.68-1.41-19.56c-.46-5.37-2.22-8.56-2.58-10.46c-.13-.72-.14-1.47.43-1.94a5.165 5.165 0 0 0 .13-7.88a1.71 1.71 0 0 1-.58-1.42c.19-2.59.4-6.35.57-7.22c.74-3.91 2.67-4.61 4.65-5.77c1.98-1.17 30.66-14.19 32.33-15.3c3.09-2.07 2.43-3.95 2.43-3.95z" fill="#e2a610"></path><path d="M69.35 44.74c-2.47 3.49-7.6 1.93-7.6 1.93s-13.11 5.81-12.24 4.76c.86-1.05 9.84-6.16 9.84-6.16s-.67-2.46-.6-3.51c0 0-22.1 12.77-30.67 18.91c-2.21 1.59-4.95 4.19-2.72 6.78c1.03 1.19 3.02 1.44 4.29.5c.77-.56 1.37-1.38 2.05-2.03c.84-.82 1.86-1.34 2.86-1.93c1.98-1.17 30.66-14.19 32.33-15.3c3.12-2.07 2.46-3.95 2.46-3.95z" fill="#ffca28"></path><path d="M26.11 91.86c-1.32 0-2.21-.11-3.02-.3a.62.62 0 0 1-.48-.65l.26-3.82c.03-.39.4-.66.78-.55c.9.26 2.7.52 5.64-.1c.36-.08.72.17.76.54l.4 3.8c.03.31-.17.6-.47.67c-1.53.35-2.64.41-3.87.41z" fill="#9e740b"></path><path d="M99.06 91.42s1.77-9.24 1.06-19.07c-.12-1.66-1.14-3.09-1.93 2.72c-.45 3.33-1.43 13.3-3.1 19.53c2.55-1.84 3.97-3.18 3.97-3.18z" fill="#616161"></path><path d="M65.73 36.79c.73.23 1.4.79 1.59 1.54c.25 1-.38 2-1.06 2.78c-1.33 1.53-3.16 2.87-5.19 2.8c-.67-.02-1.39-.24-1.8-.77c-.29-.37-.39-.85-.42-1.32c-.18-3.43 3.7-6.03 6.88-5.03z" fill="#616161"></path></svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
@@ -0,0 +1,72 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 511.998 511.998" xml:space="preserve">
|
||||
<path style="fill:#CCF7FF;" d="M163.834,349.074c-25.064,0-45.383,20.319-45.383,45.383h205.213v-45.383H163.834z"/>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M124.537,371.766c-3.864,6.677-6.086,14.422-6.086,22.692
|
||||
h205.213v-22.692L124.537,371.766L124.537,371.766z"/>
|
||||
<g>
|
||||
<path style="fill:#667C80;" d="M417.467,439.839H93.254c-18.851,0-34.134,15.282-34.134,34.134v30.219H451.6v-30.219
|
||||
C451.6,455.121,436.318,439.839,417.467,439.839z"/>
|
||||
<path style="fill:#667C80;" d="M401.605,396.196c31.13-23.616,51.274-60.993,51.274-102.992
|
||||
c0-63.667-46.286-116.72-106.973-127.293l-49.73,31.465l6.147,37.44c6.659-2.441,13.847-3.775,21.341-3.775
|
||||
c34.276,0,62.162,27.886,62.162,62.162c0,26.852-17.116,49.779-41.009,58.453l17.963,36.697L401.605,396.196z"/>
|
||||
</g>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M296.176,197.376l6.147,37.44
|
||||
c6.659-2.442,13.847-3.775,21.341-3.775c1.86,0,3.698,0.097,5.518,0.258l37.834-59.817c-6.795-2.427-13.848-4.307-21.11-5.572
|
||||
L296.176,197.376z"/>
|
||||
<g>
|
||||
|
||||
<rect x="166.409" y="263.413" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 268.335 635.4025)" style="fill:#293133;" width="119.62" height="30.829"/>
|
||||
|
||||
<rect x="334.839" y="27.238" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 670.2496 279.5049)" style="fill:#293133;" width="81.556" height="30.829"/>
|
||||
</g>
|
||||
<rect x="341.366" y="53.313" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 626.1679 318.5302)" style="fill:#667C80;" width="35.728" height="30.478"/>
|
||||
<rect x="345.609" y="54.552" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 637.5773 308.4405)" style="opacity:0.15;fill:#293133;enable-background:new ;" width="35.728" height="14.605"/>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M367.322,337.395c-6.328,6.252-13.982,11.166-22.504,14.261
|
||||
l17.963,36.697l38.824,7.842c5.681-4.31,10.992-9.083,15.885-14.255C405.799,362.025,388.149,346.516,367.322,337.395z"/>
|
||||
<path style="fill:#85A1A6;" d="M407.07,408.983c-12.063-35.8-45.627-59.909-83.405-59.909l0,0
|
||||
c-37.778,0-71.342,24.109-83.405,59.909l-10.397,30.856h187.605L407.07,408.983z"/>
|
||||
<circle style="fill:#293133;" cx="323.667" cy="394.461" r="17.279"/>
|
||||
<g>
|
||||
|
||||
<rect x="251.995" y="64.531" transform="matrix(-0.8451 -0.5346 0.5346 -0.8451 447.3835 476.8507)" style="fill:#CCF7FF;" width="81.556" height="218.163"/>
|
||||
<polygon style="fill:#CCF7FF;" points="316.635,59.619 200.015,243.998 385.561,103.216 "/>
|
||||
</g>
|
||||
<path style="opacity:0.15;fill:#333333;enable-background:new ;" d="M59.181,472.016c-0.037,0.648-0.059,1.3-0.059,1.958v30.219
|
||||
h392.48v-30.219c0-0.658-0.023-1.31-0.059-1.958H59.181z"/>
|
||||
<g>
|
||||
<path style="fill:#26150C;" d="M423.21,432.435l-8.742-25.945c-0.93-2.757-1.988-5.442-3.143-8.068
|
||||
c31.446-26.169,49.361-64.158,49.361-105.218c0-32.414-11.573-63.883-32.587-88.612c-18.266-21.495-42.68-36.82-69.642-43.92
|
||||
l33.702-53.283c1.107-1.75,1.473-3.868,1.019-5.888c-0.455-2.02-1.693-3.777-3.443-4.884l-12.767-8.075l7.945-12.561l12.767,8.076
|
||||
c1.295,0.818,2.739,1.21,4.165,1.21c2.588,0,5.119-1.285,6.606-3.635l16.48-26.056c1.107-1.75,1.473-3.868,1.019-5.888
|
||||
s-1.693-3.777-3.443-4.884L353.58,1.208c-3.644-2.301-8.466-1.219-10.771,2.425l-16.48,26.056c-1.107,1.75-1.473,3.868-1.019,5.888
|
||||
c0.455,2.02,1.693,3.777,3.443,4.884l12.767,8.075l-7.945,12.561l-12.767-8.076c-3.643-2.302-8.467-1.219-10.771,2.425
|
||||
L197.591,233.226l-9.485-5.999c-1.75-1.106-3.868-1.473-5.889-1.018c-2.02,0.455-3.777,1.692-4.884,3.443l-16.48,26.057
|
||||
c-2.305,3.644-1.22,8.466,2.424,10.771l101.092,63.941c1.295,0.818,2.739,1.21,4.165,1.21c2.588,0,5.119-1.286,6.606-3.635
|
||||
l16.48-26.056c2.305-3.644,1.22-8.466-2.424-10.771l-9.485-5.999l27.734-43.846c5.23-1.64,10.673-2.473,16.219-2.473
|
||||
c29.971,0,54.355,24.383,54.355,54.355c0,22.037-13.484,41.975-33.78,50.306c-6.662-1.461-13.548-2.243-20.576-2.243H163.835
|
||||
c-29.328,0-53.19,23.861-53.19,53.191c0,4.312,3.495,7.807,7.807,7.807h115.955c-0.543,1.393-1.064,2.798-1.546,4.226
|
||||
l-8.606,25.541H93.254c-23.126,0-41.942,18.815-41.942,41.941v30.218c0,4.312,3.495,7.807,7.807,7.807H451.6
|
||||
c4.312,0,7.807-3.495,7.807-7.807v-30.219C459.408,452.795,443.628,435.245,423.21,432.435z M351.832,18.578l55.73,35.249
|
||||
l-8.133,12.86l-12.763-8.073c-0.001-0.001-0.003-0.002-0.004-0.003l-30.195-19.099c-0.002-0.001-0.005-0.003-0.007-0.004
|
||||
l-12.76-8.071L351.832,18.578z M371.716,67.634l-7.944,12.561l-16.999-10.752l7.944-12.561L371.716,67.634z M266.119,313.051
|
||||
l-87.896-55.594l8.133-12.861l9.474,5.993c0.003,0.002,0.006,0.005,0.011,0.007l68.926,43.596l0.001,0.001l9.483,5.998
|
||||
L266.119,313.051z M266.516,276.822l-1.859-1.176l-53.87-34.074L319.059,70.392l12.762,8.072c0.002,0.001,0.003,0.002,0.005,0.003
|
||||
l30.195,19.099c0.002,0.001,0.004,0.002,0.006,0.003l12.761,8.071l-35.479,56.094c-0.001,0.001-0.001,0.002-0.002,0.002
|
||||
l-24.48,38.704L266.516,276.822z M393.634,293.204c0-38.581-31.388-69.97-69.97-69.97c-1.635,0-3.264,0.056-4.884,0.169
|
||||
l30.617-48.407l0.25-0.395c25.796,5.657,49.272,19.766,66.554,40.102c18.618,21.908,28.87,49.787,28.87,78.501
|
||||
c0,35.327-14.967,68.101-41.359,91.207c-0.094-0.142-0.193-0.279-0.288-0.422c-0.462-0.695-0.931-1.383-1.41-2.063
|
||||
c-0.156-0.222-0.316-0.442-0.473-0.662c-0.529-0.738-1.065-1.47-1.613-2.192c-0.083-0.108-0.168-0.216-0.251-0.324
|
||||
c-9.401-12.255-21.605-22.029-35.522-28.516C382.295,337.3,393.634,316.135,393.634,293.204z M310.385,357.991
|
||||
c18.805-3.142,38.629,0.649,54.928,10.551c15.998,9.719,28.382,25.195,34.359,42.933l6.927,20.556H240.732l6.927-20.556
|
||||
c1.557-4.621,3.519-9.018,5.813-13.178c0.012-0.021,0.027-0.038,0.038-0.059c11.804-21.331,32.536-35.897,56.057-40.1
|
||||
C309.84,358.089,310.111,358.037,310.385,357.991z M127.074,386.649c3.602-16.986,18.716-29.768,36.759-29.768h107.389
|
||||
c-11.635,7.608-21.586,17.73-29.03,29.768H127.074z M443.793,496.384H66.928v-22.411c0-14.517,11.81-26.326,26.327-26.326h136.608
|
||||
h187.605c14.516,0,26.326,11.809,26.326,26.326v22.411H443.793z"/>
|
||||
<path style="fill:#26150C;" d="M323.664,419.543c13.833,0,25.086-11.255,25.086-25.087s-11.253-25.086-25.086-25.086
|
||||
c-13.833,0-25.086,11.253-25.086,25.086C298.578,408.288,309.832,419.543,323.664,419.543z M323.664,384.985
|
||||
c5.223,0,9.472,4.249,9.472,9.472c0,5.224-4.249,9.473-9.472,9.473s-9.472-4.249-9.472-9.473
|
||||
C314.193,389.234,318.442,384.985,323.664,384.985z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.5 KiB |
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 36 36" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--twemoji" preserveAspectRatio="xMidYMid meet"><path fill="#C1694F" d="M21.978 20.424a29.331 29.331 0 0 0-.247-2.325a30.78 30.78 0 0 0-1.885-6.93c-.527-1.299-.943-2.043-.943-2.043l-3.613.466s.417.87.868 2.575c.183.692.371 1.524.54 2.495c.086.49.166 1.012.238 1.573c.1.781.183 1.632.242 2.549c.034.518.058 1.058.074 1.619c.006.204.015.401.018.611a14.52 14.52 0 0 1-.118 1.989c-.074.6-.182 1.197-.311 1.789a26.225 26.225 0 0 1-.67 2.475a34.793 34.793 0 0 1-.655 1.84c-.344.891-.69 1.692-.989 2.359c-.502 1.119-.871 1.863-.871 2.018c0 .49.35 1.408 2.797 2.02c3.827.956 4.196-.621 4.196-.621s.243-.738.526-2.192c.14-.718.289-1.605.424-2.678c.081-.642.156-1.348.222-2.116a61.85 61.85 0 0 0 .22-4.864c.002-.246.008-.484.008-.737c0-.64-.03-1.261-.071-1.872z"></path><path fill="#D99E82" d="M18.306 30.068c-1.403-.244-2.298-.653-2.789-.959c-.344.891-.69 1.692-.989 2.359c.916.499 2.079.895 3.341 1.114c.729.127 1.452.191 2.131.191c.414 0 .803-.033 1.176-.08c.14-.718.289-1.605.424-2.678c-.444.157-1.548.357-3.294.053zm1.06-4.673c-1.093-.108-1.934-.348-2.525-.602a26.225 26.225 0 0 1-.67 2.475c.864.326 1.881.561 2.945.666c.429.042.855.064 1.27.064c.502 0 .978-.039 1.435-.099c.068-.8.125-1.667.165-2.605c-.628.135-1.509.21-2.62.101zm.309-2.133c.822 0 1.63-.083 2.366-.228c.002-.246.008-.484.008-.737c0-.641-.029-1.262-.071-1.873c-.529.138-1.285.272-2.352.286c-1.084-.005-1.847-.155-2.374-.306c.006.204.015.401.018.611a14.52 14.52 0 0 1-.118 1.989c.763.161 1.605.253 2.461.257l.062.001zm-.249-4.577a12.08 12.08 0 0 0 2.304-.585a30.343 30.343 0 0 0-.485-2.513c-.496.204-1.199.431-2.181.572a9.03 9.03 0 0 1-2.129.077c.1.781.183 1.632.242 2.549c.152.006.29.029.446.029c.588.001 1.2-.043 1.803-.129zm1.271-5.116a30.223 30.223 0 0 0-.852-2.4a9.452 9.452 0 0 1-1.737.659a9.23 9.23 0 0 1-1.951.339c.183.692.371 1.524.54 2.495a12.42 12.42 0 0 0 2.094-.376c.679-.188 1.31-.44 1.906-.717z"></path><path fill="#3E721D" d="M32.61 4.305c-.044-.061-4.48-5.994-10.234-3.39c-2.581 1.167-4.247 3.074-4.851 5.535c-1.125-1.568-2.835-2.565-5.093-2.968C6.233 2.376 2.507 9.25 2.47 9.32c-.054.102-.031.229.056.305s.217.081.311.015c.028-.02 2.846-1.993 7.543-1.157c4.801.854 8.167 1.694 8.201 1.702a.254.254 0 0 0 .245-.073c.032-.035 3.22-3.46 6.153-4.787c4.339-1.961 7.298-.659 7.326-.646a.252.252 0 0 0 .298-.07a.246.246 0 0 0 .007-.304z"></path><path fill="#5C913B" d="M27.884 7.63c-4.405-2.328-7.849-1.193-9.995.22c-2.575-.487-7.334-.459-11.364 4.707c-4.983 6.387-.618 14.342-.573 14.422a.376.376 0 0 0 .689-.086c.015-.054 1.527-5.52 5.35-10.118c2.074-2.496 4.55-4.806 6.308-6.34c1.762.298 4.327.947 6.846 2.354c4.958 2.773 7.234 7.466 7.257 7.513a.372.372 0 0 0 .379.212a.377.377 0 0 0 .325-.287c.02-.088 1.968-8.8-5.222-12.597z"></path></svg>
|
||||
|
After Width: | Height: | Size: 2.9 KiB |
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 511.997 511.997" xml:space="preserve">
|
||||
<polygon style="fill:#51D1F5;" points="401.068,139.208 401.068,196.761 433.566,185.867 433.566,139.208 417.317,150.101 "/>
|
||||
<path style="fill:#147391;" d="M338.929,99.676c0,27.85,22.577,50.425,50.425,50.425h27.963
|
||||
C409.589,114.501,374.529,91.948,338.929,99.676z"/>
|
||||
<path style="fill:#51D1F5;" d="M417.317,150.101h27.963c27.85,0,50.425-22.576,50.425-50.425
|
||||
C460.105,91.948,425.045,114.501,417.317,150.101z"/>
|
||||
<path style="fill:#A1EBFF;" d="M401.068,185.867L19.349,221.634c16.961,98.185,102.55,172.87,205.582,172.87
|
||||
c115.225,0,208.635-93.41,208.635-208.637L401.068,185.867L401.068,185.867z"/>
|
||||
<path style="fill:#147391;" d="M312.593,313.805c51.698-19.496,88.475-69.417,88.475-127.937H16.295
|
||||
c0,12.195,1.046,24.146,3.055,35.767l125.679-0.001c8.291,0,15.012,6.721,15.012,15.011c0,8.291-6.721,15.012-15.012,15.012
|
||||
c22.787,41.947,66.072,69.999,116.929,70.865c6.278,17.769,17.678,35.978,33.667,52.009c24.764,24.827,54.718,38.607,80.155,39.316
|
||||
c-0.749-25.546-14.521-55.602-39.287-80.429C328.92,325.826,320.859,319.273,312.593,313.805z"/>
|
||||
<path d="M505.563,91.693c-22.872-4.965-47.028,1.288-64.617,16.724c-3.391,2.976-3.728,8.139-0.751,11.531
|
||||
c2.975,3.39,8.139,3.728,11.53,0.751c12.124-10.641,27.628-15.617,43.372-14.127c-3.301,20.031-20.74,35.36-41.691,35.36h-21.675
|
||||
c-5.158-16.572-15.853-30.669-30.611-40.161c-16.633-10.7-36.452-14.278-55.799-10.077c-3.757,0.815-6.437,4.14-6.437,7.984
|
||||
c0,32.309,26.286,58.596,58.596,58.596h19.793v19.425H8.17c-4.513,0-8.17,3.658-8.17,8.17c0,119.548,97.258,216.807,216.806,216.807
|
||||
c25.745,0,50.879-4.456,74.79-13.249c23.422,19.907,51.013,31.898,75.829,32.589c0.076,0.002,0.153,0.003,0.228,0.003
|
||||
c2.166,0,4.246-0.861,5.782-2.398c1.588-1.59,2.451-3.765,2.385-6.012c-0.837-28.506-16.412-60.64-41.669-85.959
|
||||
c-4.271-4.283-8.748-8.307-13.389-12.041c21.514-10.688,40.001-26.54,54.011-46.434c15.662-22.24,24.587-48.068,26.088-75.137
|
||||
h16.234c-1.951,48.551-21.24,94.366-54.835,129.777c-3.106,3.274-2.97,8.446,0.304,11.551c1.581,1.499,3.604,2.243,5.622,2.243
|
||||
c2.162,0,4.323-0.854,5.928-2.547c38.366-40.441,59.495-93.426,59.495-149.194v-27.597h19.794c32.309,0,58.595-26.285,58.595-58.596
|
||||
C512,95.832,509.32,92.508,505.563,91.693z M397.479,141.931c-20.949,0-38.388-15.326-41.692-35.355
|
||||
c12.797-1.199,25.532,1.885,36.494,8.936c10.02,6.446,17.638,15.618,22.092,26.419H397.479z M21.206,229.804h115.698
|
||||
c3.774,0,6.842,3.069,6.842,6.841c0,3.772-3.069,6.842-6.842,6.842c-2.881,0-5.549,1.517-7.022,3.994
|
||||
c-1.473,2.476-1.532,5.545-0.158,8.077c24.182,44.512,68.15,72.221,118.393,74.936c6.615,16.364,16.932,32.179,30.15,46.236
|
||||
c-19.777,6.371-40.394,9.604-61.46,9.604C121.361,386.334,41.294,319.275,21.206,229.804z M301.586,306.16
|
||||
c-2.872,1.083-4.893,3.683-5.237,6.732c-0.342,3.049,1.052,6.033,3.611,7.727c7.996,5.289,15.606,11.537,22.623,18.57
|
||||
c19.607,19.656,32.623,43.572,36.038,65.633c-21.946-3.4-45.75-16.422-65.339-36.06c-14.639-14.677-25.617-31.608-31.748-48.961
|
||||
c-1.136-3.217-4.153-5.389-7.563-5.447c-43.242-0.735-81.739-22.236-104.815-58.035c6.559-4.099,10.93-11.385,10.93-19.674
|
||||
c0-12.783-10.4-23.182-23.183-23.182H18.237c-0.882-6.386-1.468-12.865-1.733-19.427h367.984
|
||||
C381.265,243.95,348.781,288.362,301.586,306.16z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 969 KiB |
@@ -0,0 +1,88 @@
|
||||
#import "/lib.typ": *
|
||||
|
||||
#show: resume.with(
|
||||
name: "Amira Patel",
|
||||
tagline: "Innovative marine biologist with 15+ years of experience in ocean conservation and research.",
|
||||
keywords: "marine biology, conservation, research, education, patents",
|
||||
thumbnail: image("assets/my-qr-code.svg"),
|
||||
)
|
||||
|
||||
= Research Philosophy
|
||||
|
||||
My approach to marine biology is rooted in curiosity, collaboration, and
|
||||
conservation. I believe in conducting rigorous scientific research that not only
|
||||
advances our understanding of marine ecosystems but also informs policy
|
||||
decisions to protect our oceans. By fostering interdisciplinary partnerships and
|
||||
engaging with local communities, I strive to create impactful solutions that
|
||||
balance human needs with ecological preservation.
|
||||
|
||||
= Experience
|
||||
|
||||
#company-heading("Global Ocean Institute", start: "March 2018", end: "Present", icon: image("./icons/earth.svg"))[
|
||||
#job-heading("Senior Marine Biologist", location: "Brisbane, Queensland, AU")[
|
||||
- Leading a team of 12 researchers in a long-term study on coral reef
|
||||
resilience in changing climates.
|
||||
- Developed an AI-powered system for monitoring fish populations, increasing
|
||||
data accuracy by 40%.
|
||||
- Secured \$2.5M in research grants for the institute's sustainable fishing
|
||||
practices initiative.
|
||||
- Mentored 20+ graduate students, with 5 going on to publish in top-tier
|
||||
scientific journals.
|
||||
]
|
||||
]
|
||||
|
||||
#company-heading("OceanTech Solutions", start: "June 2014", end: "February 2018", icon: image("icons/whale.svg"))[
|
||||
#job-heading("Research Scientist", location: "Baltimore, Maryland")[
|
||||
- Pioneered use of autonomous underwater vehicles for deep-sea exploration,
|
||||
discovering 3 new species.
|
||||
- Collaborated with engineers to develop biodegradable sensors for ocean
|
||||
pollution monitoring.
|
||||
- Presented findings at 15+ international conferences, establishing the
|
||||
company as a leader in marine tech.
|
||||
]
|
||||
]
|
||||
|
||||
#company-heading("Coral Conservation Alliance", start: "September 2009", end: "May 2014", icon: image("icons/coral.svg"))[
|
||||
#job-heading("Conservation Biologist", location: "Corpus Christi, Texas")[
|
||||
- Managed a team of 8 in implementing coral restoration techniques across 5
|
||||
Caribbean sites.
|
||||
- Increased local community engagement in conservation efforts by 200%
|
||||
through education programs.
|
||||
- Co-authored a policy brief that influenced the establishment of 3 new
|
||||
marine protected areas.
|
||||
]
|
||||
]
|
||||
|
||||
#company-heading("Pacific Marine Research Center", start: "July 2005", end: "August 2009", icon: image("icons/microscope.svg"))[
|
||||
#job-heading("Research Assistant", location: "San Diego, California",
|
||||
comment: [Contributed to 7 published studies. #footnote[Visit https://amirapatel.org/publications for full list of publications.]]
|
||||
)[]
|
||||
]
|
||||
|
||||
= Patents
|
||||
|
||||
#link(
|
||||
"https://patents.google.com/patent/US20230123456A1",
|
||||
strong("MARINE BIODIVERSITY MONITORING SYSTEM USING ENVIRONMENTAL DNA (US 20230123456A1)")
|
||||
)
|
||||
#quote[A novel system and method for monitoring marine biodiversity using
|
||||
environmental DNA (eDNA) sampling and analysis. The invention includes an
|
||||
automated collection device capable of filtering seawater at various depths,
|
||||
preserving eDNA samples, and transmitting data in real-time.]
|
||||
|
||||
= Eligibility and Location
|
||||
|
||||
- *Eligibility:* United States Permanent Resident
|
||||
- *Location:* Open to remote opportunities or relocation to coastal areas.
|
||||
- *Travel Availability:* Willing to travel up to 40% for field research and
|
||||
conferences.
|
||||
|
||||
= Education
|
||||
|
||||
#school-heading("University of California, San Diego", start: "Fall 2001", end: "Spring 2005", icon: image("icons/graduation-cap.svg"))[
|
||||
#degree-heading("Ph.D. in Marine Biology")[]
|
||||
]
|
||||
|
||||
#school-heading("University of Miami", start: "Fall 1997", end: "Spring 2001", icon: image("icons/palm-tree.svg"))[
|
||||
#degree-heading("B.S. in Marine Science, Minor in Environmental Policy")[]
|
||||
]
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "finely-crafted-cv"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
entrypoint = "lib.typ"
|
||||
authors = ["Stephen Waits <steve@waits.net>"]
|
||||
license = "MIT"
|
||||
@@ -9,6 +9,7 @@ categories = ["cv"]
|
||||
disciplines = ["business", "communication"]
|
||||
keywords = ["resume", "curriculum", "vitae", "cv"]
|
||||
repository = "https://github.com/swaits/typst-collection"
|
||||
exclude = ["thumbnail.png", "tests"]
|
||||
|
||||
[template]
|
||||
path = "template"
|
||||
|
||||
@@ -41,7 +41,7 @@ different goals:
|
||||
### Import the package
|
||||
|
||||
```typst
|
||||
#import "@preview/glossy:0.5.1": *
|
||||
#import "@preview/glossy:0.7.0": *
|
||||
```
|
||||
|
||||
### Defining Glossary Terms
|
||||
@@ -143,6 +143,7 @@ Available modifiers:
|
||||
- **short**: Shows only short form
|
||||
- **long**: Shows only long form
|
||||
- **def** or **desc**: Shows the description
|
||||
- **noref** or **noindex**: Don't show the term in the glossary.
|
||||
- **a** or **an**: Include the article (`an` is just an alias of `a`, they're
|
||||
equivalent)
|
||||
|
||||
@@ -160,6 +161,9 @@ Modifiers can be combined with colons:
|
||||
| `@tps:short:pl` | "TPSes" |
|
||||
| `@tps:both:pl:cap` | "Technical procedure specifications (TPSes)" |
|
||||
| `@tps:def` | "A formal document describing test steps and expected results" |
|
||||
| `@tps:desc` | _same as above, `desc` is an alias for `def`_ |
|
||||
| `@tps:noref` | _works as normal, just won't show up in glossary_ |
|
||||
| `@tps:noindex` | _same as above, `noindex` is an alias for `noref`_ |
|
||||
|
||||
The `a`/`an` modifier is special because it can either precede or follow the
|
||||
term's key.
|
||||
@@ -180,6 +184,18 @@ For example:
|
||||
Note that the `a`/`an` (article) modifier cannot be combined with the `pl`
|
||||
(plural) modifier.
|
||||
|
||||
### First use logic
|
||||
|
||||
Any use of the `short`, `long`, or `both` modifier will not count against the
|
||||
term's first use.
|
||||
|
||||
This is useful, for example, when you want to use a term in a heading or a
|
||||
caption. In that case, your term might end up in an `outline()` at the top of
|
||||
your document. Normally you don't want that to count as a term's first real use.
|
||||
Normally you want that to happen in the body of your document. So, by using
|
||||
these modifiers in such situations, you can not only specify exactly how you
|
||||
want your term to appear, but also control whether it counts as a "first use".
|
||||
|
||||
### Generating the Glossary
|
||||
|
||||
Display the glossary using the `glossary()` function:
|
||||
@@ -253,7 +269,7 @@ Customize glossary appearance by defining a theme with three functions:
|
||||
// Individual glossary entry
|
||||
entry: (entry, index, total) => {
|
||||
// index = entry index, total = total entries in group
|
||||
let output = [#entry.short]
|
||||
let output = [#entry.short#entry.label] // **NOTE:** Label here!
|
||||
if entry.long != none {
|
||||
output = [#output -- #entry.long]
|
||||
}
|
||||
@@ -280,6 +296,9 @@ Entry fields available to themes:
|
||||
- `label`: Term's dictionary label
|
||||
- `pages`: Linked page numbers where term appears
|
||||
|
||||
**NOTE:** If the theme does not emit `entry.label`, linking form terms to their
|
||||
glossary entry will not work.
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the MIT License.
|
||||
@@ -0,0 +1,6 @@
|
||||
watchexec \
|
||||
--watch . \
|
||||
--clear \
|
||||
--ignore 'tests/**/diff/**' \
|
||||
--ignore 'tests/**/out/**' \
|
||||
"typst-test r"
|
||||
@@ -1,4 +1,4 @@
|
||||
#import "@preview/valkyrie:0.2.1" as z
|
||||
#import "@preview/valkyrie:0.2.2" as z
|
||||
|
||||
#import "./schemas.typ": *
|
||||
#import "./themes.typ": *
|
||||
@@ -7,6 +7,7 @@
|
||||
#let __gloss_entries = state("__gloss_entries", (:))
|
||||
|
||||
#let __gloss_label_prefix = "__gloss:"
|
||||
#let __gloss_first_use_counter_postfix = ":first-use-count"
|
||||
|
||||
// Normalizes a dictionary entry by ensuring all required and optional keys exist
|
||||
// with appropriate default values.
|
||||
@@ -38,7 +39,7 @@
|
||||
if not "short" in entry {
|
||||
panic("Entry must contain a 'short' key")
|
||||
}
|
||||
if type(entry.short) != "string" {
|
||||
if type(entry.short) != str {
|
||||
panic("Entry 'short' must be a string")
|
||||
}
|
||||
if entry.short.trim() == "" {
|
||||
@@ -129,11 +130,14 @@
|
||||
// Returns:
|
||||
// none: Updates state as a side effect
|
||||
//
|
||||
#let __mark_term_used(key) = {
|
||||
#let __mark_term_used(key, count-as-first-use) = {
|
||||
counter(__gloss_label_prefix + key).step()
|
||||
if count-as-first-use {
|
||||
counter(__gloss_label_prefix + key + __gloss_first_use_counter_postfix).step()
|
||||
}
|
||||
}
|
||||
|
||||
// Queries the term usage
|
||||
// Queries whether the term is used ANYWHERE
|
||||
//
|
||||
// Parameters:
|
||||
// key (string): The glossary entry key
|
||||
@@ -142,12 +146,29 @@
|
||||
// Returns:
|
||||
// boolean: If the entry is used above the location in the document
|
||||
//
|
||||
#let __is_term_used(key, location: none) = {
|
||||
#let __is_term_ever_used(key, location: none) = {
|
||||
let c = counter(__gloss_label_prefix + key)
|
||||
c = if location == none {c.final()} else {c.at(location)}
|
||||
c.at(0) > 0
|
||||
}
|
||||
|
||||
// Queries whether the term has been "first used"
|
||||
//
|
||||
// "First used" is used to determine how to display the term, either "long
|
||||
// (short)" or just "(short)"
|
||||
//
|
||||
// Parameters:
|
||||
// key (string): The glossary entry key
|
||||
// location (location): The location in the document. Use none for end of document
|
||||
//
|
||||
// Returns:
|
||||
// boolean: If the entry is used above the location in the document
|
||||
//
|
||||
#let __is_term_first_used(key, location: none) = {
|
||||
let c = counter(__gloss_label_prefix + key + __gloss_first_use_counter_postfix)
|
||||
c = if location == none {c.final()} else {c.at(location)}
|
||||
c.at(0) > 0
|
||||
}
|
||||
|
||||
// Determine if the glossary contains a visible entry
|
||||
//
|
||||
@@ -216,8 +237,12 @@
|
||||
// ---------------------------------------------------------------------------
|
||||
// Manage term usage counting and determine if it's the first reference
|
||||
// ---------------------------------------------------------------------------
|
||||
let is_first_use = not __is_term_used(key, location: here())
|
||||
__mark_term_used(key)
|
||||
let is_first_use = not __is_term_first_used(key, location: here())
|
||||
let count-as-first-use = ("short" not in modifiers and "long" not in modifiers and "both" not in modifiers)
|
||||
let wants_reference = ("noref" not in modifiers and "noindex" not in modifiers)
|
||||
if wants_reference {
|
||||
__mark_term_used(key, count-as-first-use)
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Helper Functions
|
||||
@@ -322,7 +347,7 @@
|
||||
|
||||
// Apply format-term() to get the term
|
||||
let formatted-term = format-term(mode, short-form, long-form)
|
||||
if type(formatted-term) != "string" {
|
||||
if type(formatted-term) != str {
|
||||
// This is because we still need to capitalize the term, and we cannot do
|
||||
// that with content, thus requiring a string here.
|
||||
// TODO: consider if we want to capitalize *before* this. First intuition is
|
||||
@@ -342,15 +367,20 @@
|
||||
} else {
|
||||
term
|
||||
}
|
||||
[#article#show-term(linked-term)#metadata(term)#__term_label(key)]
|
||||
// |^^^^^^^|^^^^^^^^^ |^^^^^^^^ |^^^^^^^^^^^^
|
||||
// \_art. | | |
|
||||
let term-label = if wants_reference {
|
||||
__term_label(key)
|
||||
} else {
|
||||
[]
|
||||
}
|
||||
[#article#show-term(linked-term)#metadata(term)#term-label]
|
||||
// |^^^^^^^|^^^^^^^^^ |^^^^^^^^ |^^^^^^^^^^^^
|
||||
// \_art. | | |
|
||||
// \_ apply user formatting function to the term
|
||||
// | |
|
||||
// \_ metadata lets us label (ie it's "labelable")
|
||||
// |
|
||||
// \_ i.e. <__gloss:key>, etc.
|
||||
// for backlink from glossary
|
||||
// | |
|
||||
// \_ metadata lets us label (ie makes it "labelable")
|
||||
// |
|
||||
// \_ i.e. <__gloss:key>, etc.
|
||||
// for backlink from glossary
|
||||
}
|
||||
}
|
||||
|
||||
@@ -554,7 +584,7 @@
|
||||
// Collect and organize entries by group
|
||||
let output = (:)
|
||||
let all_entries = __gloss_entries.final()
|
||||
let all_used = all_entries.keys().filter(key => __is_term_used(key))
|
||||
let all_used = all_entries.keys().filter(key => __is_term_ever_used(key))
|
||||
|
||||
// Determine which groups to process
|
||||
let all_groups = all_entries
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#import "@preview/valkyrie:0.2.1" as z
|
||||
#import "@preview/valkyrie:0.2.2" as z
|
||||
|
||||
#let dict-schema = z.either(
|
||||
z.string(),
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
// Inspired by academic textbook glossaries
|
||||
#let theme-academic = (
|
||||
section: (title, body) => {
|
||||
set text(font: "New Computer Modern")
|
||||
heading(level: 1, title)
|
||||
v(1em)
|
||||
body
|
||||
@@ -40,7 +39,7 @@
|
||||
grid(
|
||||
columns: (1fr, auto),
|
||||
gutter: 0.75em,
|
||||
[#short-display#long-display#description],
|
||||
[#short-display#long-display#description#entry.label],
|
||||
text(fill: rgb("#666666"), entry.pages)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
grid(
|
||||
columns: (1fr, auto),
|
||||
gutter: 1em,
|
||||
[#short-display#entry.label#long-display#description],
|
||||
[#short-display#entry.label#long-display#description#entry.label],
|
||||
[#entry.pages]
|
||||
)
|
||||
}
|
||||
|
||||
@@ -27,6 +27,6 @@
|
||||
},
|
||||
|
||||
entry: (entry, index, total) => {
|
||||
(entry.short, entry.long, entry.description, entry.pages)
|
||||
(entry.short + entry.label, entry.long, entry.description, entry.pages)
|
||||
}
|
||||
)
|
||||
|
Before Width: | Height: | Size: 481 KiB After Width: | Height: | Size: 489 KiB |
|
Before Width: | Height: | Size: 843 KiB After Width: | Height: | Size: 884 KiB |
@@ -47,6 +47,8 @@ Now make sure I get @tps:a:SHORT report by 2pm! @an:tps:cap is very important!!!
|
||||
[`@tps:both:pl:cap`], [@tps:both:pl:cap],
|
||||
[`@tps:def` ], [@tps:def],
|
||||
[`@tps:desc` ], [@tps:desc],
|
||||
[`@tps:noref` ], [@tps:noref *(not listed in glossary)*],
|
||||
[`@tps:noindex` ], [@tps:noindex *(not listed in glossary)*],
|
||||
)
|
||||
|
||||
== Adding articles via `a`/`an` modifiers
|
||||
|
||||
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 2.5 MiB After Width: | Height: | Size: 2.5 MiB |
|
After Width: | Height: | Size: 98 KiB |
@@ -0,0 +1,45 @@
|
||||
#import "/lib.typ": *
|
||||
#import "@preview/glossarium:0.5.3": *
|
||||
|
||||
#set page(height: auto, width: 4.5in)
|
||||
#show link: set text(fill: red)
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
= `glossy`:
|
||||
|
||||
#box(
|
||||
stroke: 1pt,
|
||||
inset: 1em,
|
||||
[
|
||||
#show: init-glossary.with((WWW: "World Wide Web"))
|
||||
|
||||
This should be a link: @WWW
|
||||
|
||||
This should be a link, too: @WWW
|
||||
|
||||
#glossary()
|
||||
]
|
||||
)
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
= `glossarium`:
|
||||
|
||||
#box(
|
||||
stroke: 1pt,
|
||||
inset: 1em,
|
||||
[
|
||||
#show: make-glossary
|
||||
#let entry-list = (
|
||||
(key: "ML", short: "ML", long: "Machine Learning"),
|
||||
)
|
||||
#register-glossary(entry-list)
|
||||
|
||||
This should be a link: @ML
|
||||
|
||||
This should be a link, too: @ML
|
||||
|
||||
#print-glossary(entry-list)
|
||||
]
|
||||
)
|
||||
|
Before Width: | Height: | Size: 197 KiB After Width: | Height: | Size: 195 KiB |
|
Before Width: | Height: | Size: 141 KiB After Width: | Height: | Size: 139 KiB |
|
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 127 KiB |
|
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 183 KiB After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 55 KiB |
@@ -0,0 +1,26 @@
|
||||
#import "/lib.typ": *
|
||||
|
||||
// Our test glossary
|
||||
#show: init-glossary.with((
|
||||
Normal: "this is a normal term",
|
||||
NoRef: "this term is noref'd",
|
||||
NoIndex: "this term is noindex'd",
|
||||
NoRefNoIndex: "this term is noref'd and noindex'd",
|
||||
))
|
||||
|
||||
// Configure styling
|
||||
|
||||
#set page(margin: 1em)
|
||||
#set page(width: 3.5in)
|
||||
#set page(height: auto)
|
||||
#set text(size: 10pt)
|
||||
|
||||
@Normal
|
||||
|
||||
@NoRef:noref
|
||||
|
||||
@NoIndex:noindex
|
||||
|
||||
@NoRefNoIndex:noref:noindex
|
||||
|
||||
#glossary()
|
||||
|
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 133 KiB After Width: | Height: | Size: 133 KiB |
|
After Width: | Height: | Size: 674 KiB |
@@ -0,0 +1,82 @@
|
||||
#import "/lib.typ": *
|
||||
|
||||
// Our test glossary
|
||||
#show: init-glossary.with((
|
||||
ShortInHeader: "short used in header",
|
||||
ShortInCaption: "short used in caption",
|
||||
LongInHeader: "long used in header",
|
||||
LongInCaption: "long used in caption",
|
||||
BothInHeader: "both used in header",
|
||||
BothInCaption: "both used in caption",
|
||||
NormalInHeader: "unmodified use in header",
|
||||
NormalInCaption: "unmodified use in caption",
|
||||
))
|
||||
|
||||
// Configure styling
|
||||
|
||||
#set page(numbering: "1")
|
||||
#set page(margin: 0.5in)
|
||||
#set page(height: auto)
|
||||
#set text(size: 10pt)
|
||||
|
||||
// Outlines
|
||||
|
||||
#outline(title:"Table of Contents", indent: auto)
|
||||
#outline(title: "List of Figures", target: figure.where(kind: image))
|
||||
#block(
|
||||
height:7em,
|
||||
glossary(title: "List of Abbreviations", theme: theme-twocol)
|
||||
)
|
||||
|
||||
#line(length: 100%)
|
||||
|
||||
// Doc Body
|
||||
|
||||
// Use all the terms in headings
|
||||
#heading(level: 1, outlined: false, [Use terms in HEADERS])
|
||||
|
||||
=== `@ShortInHeader:short` = "@ShortInHeader:short"
|
||||
=== `@LongInHeader:long` = "@LongInHeader:long"
|
||||
=== `@BothInHeader:both` = "@BothInHeader:both"
|
||||
=== `@NormalInHeader` = "@NormalInHeader"
|
||||
|
||||
#line(length: 100%)
|
||||
|
||||
// Use all the terms in captions
|
||||
#heading(level: 1, outlined: false, [Use terms in CAPTIONS])
|
||||
|
||||
#figure([], caption: [`@ShortInCaption:short` = "@ShortInCaption:short"])
|
||||
#figure([], caption: [`@LongInCaption:long` = "@LongInCaption:long"])
|
||||
#figure([], caption: [`@BothInCaption:both` = "@BothInCaption:both"])
|
||||
#figure([], caption: [`@NormalInCaption` = "@NormalInCaption"])
|
||||
|
||||
#line(length: 100%)
|
||||
|
||||
// Now use the terms in the body to see if they handle "first use" correctly
|
||||
#heading(level: 1, outlined: false, [Use terms in BODY])
|
||||
|
||||
First `@ShortInHeader` = "@ShortInHeader".
|
||||
Second `@ShortInHeader` = "@ShortInHeader"
|
||||
|
||||
First `@LongInHeader` = "@LongInHeader".
|
||||
Second `@LongInHeader` = "@LongInHeader".
|
||||
|
||||
First `@BothInHeader` = "@BothInHeader".
|
||||
Second `@BothInHeader` = "@BothInHeader".
|
||||
|
||||
First `@NormalInHeader` = "@NormalInHeader".
|
||||
Second `@NormalInHeader` = "@NormalInHeader".
|
||||
|
||||
#v(0.5em)
|
||||
|
||||
First `@ShortInCaption` = "@ShortInCaption".
|
||||
Second `@ShortInCaption` = "@ShortInCaption"
|
||||
|
||||
First `@LongInCaption` = "@LongInCaption".
|
||||
Second `@LongInCaption` = "@LongInCaption".
|
||||
|
||||
First `@BothInCaption` = "@BothInCaption".
|
||||
Second `@BothInCaption` = "@BothInCaption".
|
||||
|
||||
First `@NormalInCaption` = "@NormalInCaption".
|
||||
Second `@NormalInCaption` = "@NormalInCaption".
|
||||
|
Before Width: | Height: | Size: 259 KiB After Width: | Height: | Size: 259 KiB |
|
Before Width: | Height: | Size: 651 KiB After Width: | Height: | Size: 651 KiB |
|
Before Width: | Height: | Size: 133 KiB After Width: | Height: | Size: 133 KiB |
@@ -3,7 +3,7 @@
|
||||
#set text(lang: "cs", region: "CZ")
|
||||
|
||||
#show: init-glossary.with(yaml("glossary.yml"))
|
||||
#glossary(ignore-case: true)
|
||||
#glossary(ignore-case: true, theme: theme-twocol)
|
||||
|
||||
#line(length: 20em)
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 651 KiB After Width: | Height: | Size: 140 KiB |
|
Before Width: | Height: | Size: 332 KiB After Width: | Height: | Size: 117 KiB |
@@ -1,6 +1,7 @@
|
||||
[package]
|
||||
name = "glossy"
|
||||
version = "0.5.1"
|
||||
version = "0.7.0"
|
||||
compiler = "0.13.0"
|
||||
entrypoint = "lib.typ"
|
||||
authors = ["Stephen Waits <steve@waits.net>"]
|
||||
license = "MIT"
|
||||
@@ -8,4 +9,4 @@ description = "A very simple glossary system with easily customizable output."
|
||||
categories = ["model"]
|
||||
keywords = ["glossary", "index", "dictionary", "gloss"]
|
||||
repository = "https://github.com/swaits/typst-collection"
|
||||
exclude = ["thumbnail.png", "themeshots.pjng", "tests"]
|
||||
exclude = ["thumbnail.png", "themeshots.png", "tests", "bin"]
|
||||
@@ -0,0 +1,2 @@
|
||||
tests/**/out/
|
||||
tests/**/diff/
|
||||
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2025 Stephen Waits <steve@waits.net>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -0,0 +1,62 @@
|
||||
# run-liners
|
||||
|
||||
A Typst package for creating run-in lists, enumerations, and more following Chicago Manual of Style guidelines.
|
||||
|
||||
## Features
|
||||
|
||||
- **Run-in Enumerations**: Create numbered lists like "(1) apple, (2) banana, and (3) cherry"
|
||||
- **Run-in Bullet Lists**: Make bullet-point lists flow in a single line
|
||||
- **Run-in Term Definitions**: Format term-definition pairs inline
|
||||
- **Run-in Verse**: Join poetry lines with custom separators
|
||||
- **Smart Separator Detection**: Automatically switches between commas and semicolons based on content
|
||||
- **Flexible Coordination**: Use "and", "or", "and/or", or no coordinator between the last two items
|
||||
|
||||
## Usage
|
||||
|
||||
```typst
|
||||
#import "@preview/run-liners:0.1.0": *
|
||||
|
||||
// Basic enumeration
|
||||
#run-in-enum([Apple], [Banana], [Cherry])
|
||||
// Output: (1) Apple, (2) Banana, and (3) Cherry
|
||||
|
||||
// Bullet list with custom marker
|
||||
#run-in-list(
|
||||
marker: [#sym.ballot.check],
|
||||
[First],
|
||||
[Second],
|
||||
[Third]
|
||||
)
|
||||
// Output: ✓ First, ✓ Second, and ✓ Third
|
||||
|
||||
// Term definitions
|
||||
#run-in-terms(
|
||||
([Term 1], [Definition 1]),
|
||||
([Term 2], [Definition 2])
|
||||
)
|
||||
// Output: Term 1: Definition 1, and Term 2: Definition 2
|
||||
|
||||
// Poetry lines
|
||||
#run-in-verse(
|
||||
[Line 1],
|
||||
[Line 2],
|
||||
[Line 3]
|
||||
)
|
||||
// Output: Line 1 / Line 2 / Line 3
|
||||
```
|
||||
|
||||
## Configuration Options
|
||||
|
||||
- `separator`: Use "auto" for smart detection or specify like ", " or "; "
|
||||
- `coordinator`: "and", "or", "and/or", or none
|
||||
- `numbering-pattern`: "(1)", "(A)", etc. for enumerations
|
||||
- `marker`: Customize bullet points
|
||||
- `term-formatter`: Style your terms (bold by default)
|
||||
|
||||
## Documentation
|
||||
|
||||
See the [manual](docs/manual.pdf) for detailed examples and usage guidelines.
|
||||
|
||||
## License
|
||||
|
||||
[MIT License](LICENSE)
|
||||
@@ -0,0 +1,6 @@
|
||||
watchexec \
|
||||
--watch . \
|
||||
--clear \
|
||||
--ignore 'tests/**/diff/**' \
|
||||
--ignore 'tests/**/out/**' \
|
||||
"typst-test r"
|
||||
@@ -0,0 +1,472 @@
|
||||
#import "/lib.typ": *
|
||||
|
||||
#import "@preview/codly:1.1.1": *
|
||||
#import "@preview/codly-languages:0.1.1": *
|
||||
#show: codly-init.with()
|
||||
#codly(languages: codly-languages)
|
||||
|
||||
#set page(width: 8.5in, height: 11in, margin: 1in, numbering: "1",
|
||||
header: [#h(1fr) Version: `0.1.0`])
|
||||
#set par(justify: true)
|
||||
#show raw.where(block: true): set text(size:7pt)
|
||||
|
||||
#let easy-typography(
|
||||
body-size: 10pt,
|
||||
body-font: "Source Serif Pro",
|
||||
heading-font: "Source Sans Pro",
|
||||
paper: none,
|
||||
margin: none,
|
||||
body
|
||||
) = {
|
||||
// Constants
|
||||
let heading-above-max = 1.25em
|
||||
let heading-above-min = 0.75em
|
||||
let heading-below-max = 0.65em
|
||||
let heading-below-min = 0.52em
|
||||
let heading-size-max = 1.10em
|
||||
let heading-size-min = 1.00em
|
||||
let body-weight = "light"
|
||||
let line-spacing = 1.25
|
||||
let paragraph-spacing = 2.00
|
||||
|
||||
// Optional page setup
|
||||
if paper != none {
|
||||
set page(paper: paper)
|
||||
}
|
||||
if margin != none {
|
||||
set page(margin: margin)
|
||||
}
|
||||
|
||||
// Paragraphs
|
||||
set par(
|
||||
leading: line-spacing * 0.5em,
|
||||
spacing: paragraph-spacing * 0.5em,
|
||||
justify: true,
|
||||
linebreaks: "optimized",
|
||||
)
|
||||
|
||||
// Body text
|
||||
set text(
|
||||
font: body-font,
|
||||
fallback: false,
|
||||
style: "normal",
|
||||
weight: body-weight,
|
||||
stretch: 100%,
|
||||
size: body-size,
|
||||
tracking: 0pt,
|
||||
spacing: 100% + 0pt,
|
||||
baseline: 0pt,
|
||||
overhang: true,
|
||||
hyphenate: true,
|
||||
kerning: true,
|
||||
ligatures: true,
|
||||
number-type: "lining",
|
||||
)
|
||||
|
||||
// Top-heavy easing function for heading sizes/spacing:
|
||||
// - max = biggest size (H1), min = smallest size (H5), level in [1..5]
|
||||
// - sqrt(t) => gives biggest decrease at top, gentlest at bottom
|
||||
let compute-size(max, min, level) = {
|
||||
if level <= 1 {
|
||||
max
|
||||
} else if level >= 5 {
|
||||
min
|
||||
} else {
|
||||
let t = (level - 1) / 4
|
||||
max - (max - min) * calc.sqrt(t)
|
||||
}
|
||||
}
|
||||
|
||||
// Heading weight logic
|
||||
let compute-weight(level) = {
|
||||
if level <= 1 {
|
||||
"bold"
|
||||
} else if level == 2 {
|
||||
"semibold"
|
||||
} else if level == 3 {
|
||||
"medium"
|
||||
} else {
|
||||
"regular"
|
||||
}
|
||||
}
|
||||
|
||||
// Show headings using computed size/spacing values
|
||||
show heading: it => block(
|
||||
breakable: false,
|
||||
sticky: true,
|
||||
above: compute-size(heading-above-max, heading-above-min, it.level),
|
||||
below: compute-size(heading-below-max, heading-below-min, it.level),
|
||||
text(
|
||||
font: heading-font,
|
||||
size: compute-size(heading-size-max, heading-size-min, it.level),
|
||||
weight: compute-weight(it.level),
|
||||
it
|
||||
)
|
||||
)
|
||||
|
||||
// Finally, render the body
|
||||
body
|
||||
}
|
||||
|
||||
#show: easy-typography
|
||||
|
||||
#text(
|
||||
size: 3em,
|
||||
weight: "black",
|
||||
font: "Source Sans Pro",
|
||||
[`run-liners`: User Manual]
|
||||
)
|
||||
|
||||
#v(1fr)
|
||||
|
||||
#outline(depth: 1)
|
||||
|
||||
#pagebreak()
|
||||
|
||||
|
||||
#set heading(numbering: "1.1.")
|
||||
|
||||
= Introduction
|
||||
|
||||
This package provides a set of functions that create “run-in” lists and enumerations, following guidelines similar to the *Chicago Manual of Style*. You can produce run-in enumerations, bullet lists, terms/definitions, or verses, all joined in a single line with flexible separators and optional words like “and,” “or,” or _none_ (i.e. omit a coordinator).
|
||||
|
||||
We’ll illustrate each function using
|
||||
#run-in-terms(
|
||||
coordinator: "and",
|
||||
([the left column], [a `typst` block containing the Typst code you’d write]),
|
||||
([the right column], [the rendered result]),
|
||||
).
|
||||
|
||||
= `run-in-enum`: Run-in numbered lists
|
||||
`run-in-enum` is typically used for run-in enumerations like “(1) apple, (2) banana, and (3) cherry.” It offers these parameters:
|
||||
|
||||
- *`separator`*: Defaults to `"auto"` (which tries to detect commas and switch to semicolons).
|
||||
- *`coordinator`*: The word or phrase before the last item—defaults to `"and"`, can be `"or"`, `"and/or"`, or `none`.
|
||||
- *`numbering-pattern`*: A pattern like `"(1)"`, `"(A)"`, or any format the `numbering()` call supports.
|
||||
- *`numbering-formatter`*: A function that can style or transform the generated number.
|
||||
|
||||
|
||||
|
||||
== Example: Basic Three-Item Enumeration
|
||||
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-enum(
|
||||
[Apple],
|
||||
[Banana],
|
||||
[Cherry]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
|
||||
#run-in-enum(
|
||||
[Apple],
|
||||
[Banana],
|
||||
[Cherry]
|
||||
)
|
||||
]
|
||||
|
||||
This example uses *all defaults*:
|
||||
- `separator: "auto"` → because there’s no comma in the content, it uses commas.
|
||||
- `coordinator: "and"` → puts “and” before the last item.
|
||||
- `numbering-pattern: "(1)"` → “(1) (2) (3)”
|
||||
- `numbering-formatter: (it) => [#it]` → no special styling.
|
||||
|
||||
|
||||
|
||||
== Example: Coordinator = none, 4 Items, Comma in content
|
||||
|
||||
If one of your items contains `[text, with comma]`, the `auto` separator chooses `"; "`.
|
||||
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-enum(
|
||||
coordinator: none,
|
||||
[Item One],
|
||||
[Item Two, comma here],
|
||||
[Item Three],
|
||||
[Item Four]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
|
||||
#run-in-enum(
|
||||
coordinator: none,
|
||||
[Item One],
|
||||
[Item Two, comma here],
|
||||
[Item Three],
|
||||
[Item Four]
|
||||
)
|
||||
]
|
||||
|
||||
Notice it used semicolons because of comma detection, *and* no coordinator word (because `coordinator: none`).
|
||||
|
||||
== Example: Custom Numbering Pattern & Styling
|
||||
|
||||
#block(breakable: false)[
|
||||
You can change `numbering-pattern` to `"(A)"` or `"(i)"` and style the numbers with `numbering-formatter`.
|
||||
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-enum(
|
||||
numbering-pattern: "(A)",
|
||||
numbering-formatter: (txt) => [#strong(txt)],
|
||||
[Alpha],
|
||||
[Beta],
|
||||
[Gamma]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
|
||||
#run-in-enum(
|
||||
numbering-pattern: "(A)",
|
||||
numbering-formatter: (txt) => [#strong(txt)],
|
||||
[Alpha],
|
||||
[Beta],
|
||||
[Gamma]
|
||||
)
|
||||
]
|
||||
Here, `(A)`, `(B)`, `(C)` appear in *bold*.
|
||||
]
|
||||
|
||||
== Example: Single Item & Two Items Edge Cases
|
||||
|
||||
When only one item is present, no separator or coordinator is used. With two items, you’ll see just one separator plus “and/or/or” (depending on coordinator).
|
||||
|
||||
#columns(2)[
|
||||
```typst
|
||||
// Single item:
|
||||
#run-in-enum([LoneItem])
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-enum([LoneItem])
|
||||
]
|
||||
#columns(2)[
|
||||
```typst
|
||||
// Two items:
|
||||
#run-in-enum([First], [Second])
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-enum([First], [Second])
|
||||
]
|
||||
#columns(2)[
|
||||
|
||||
```typst
|
||||
// Two items, no coordinator:
|
||||
#run-in-enum(coordinator: none, [First], [Second])
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-enum(coordinator: none, [First], [Second])
|
||||
]
|
||||
#columns(2)[
|
||||
|
||||
```typst
|
||||
// Three items:
|
||||
#run-in-enum([First], [Second], [Third])
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-enum([First], [Second], [Third])
|
||||
]
|
||||
#columns(2)[
|
||||
|
||||
```typst
|
||||
// Three items, no coordinator:
|
||||
#run-in-enum(coordinator: none, [First], [Second], [Third])
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-enum(coordinator: none, [First], [Second], [Third])
|
||||
]
|
||||
|
||||
|
||||
|
||||
= `run-in-list`: Run-in bullet points
|
||||
`run-in-list` behaves like `run-in-enum` but uses a *bullet (or any marker)* before each item. The rest of the logic is the same—`separator`, `coordinator`, etc.
|
||||
See the “run-in-enum” section for *how `auto` detection* and *`coordinator`* work.
|
||||
|
||||
|
||||
|
||||
== Example1: Default Bullets
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-list(
|
||||
[Apple],
|
||||
[Banana],
|
||||
[Cherry]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
|
||||
#run-in-list(
|
||||
[Apple],
|
||||
[Banana],
|
||||
[Cherry]
|
||||
)
|
||||
]
|
||||
|
||||
You get bullets `[•]` for each item by default.
|
||||
|
||||
== Example: Custom Marker, Coordinator = 'or'
|
||||
|
||||
#block(breakable: false)[
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-list(
|
||||
coordinator: "or",
|
||||
marker: [#sym.ballot.check],
|
||||
[First],
|
||||
[Second],
|
||||
[Third, comma item]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
|
||||
#run-in-list(
|
||||
coordinator: "or",
|
||||
marker: [#sym.ballot.check],
|
||||
[First],
|
||||
[Second],
|
||||
[Third, comma item]
|
||||
)
|
||||
]
|
||||
Because of the comma, it uses semicolons. The coordinator is now `"or"`.
|
||||
]
|
||||
|
||||
= `run-in-terms`: Run-in term definitions
|
||||
|
||||
`run-in-terms` is for run-in *terms and definitions*. By default, each term is *bold* (`[#strong(term)]`) followed by the definition, and you still get the same *separator* and *coordinator* logic as in `run-in-enum`.
|
||||
|
||||
== Example: Three Terms, No Coordinator
|
||||
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-terms(
|
||||
coordinator: none,
|
||||
(
|
||||
([Goal], [Summarize the prior research]),
|
||||
([Methods], [Outline the approach]),
|
||||
([Outcome], [Analyze the results])
|
||||
)
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-terms(
|
||||
coordinator: none,
|
||||
([Goal], [Summarize the prior research]),
|
||||
([Methods], [Outline the approach]),
|
||||
([Outcome], [Analyze the results])
|
||||
)
|
||||
]
|
||||
|
||||
See how no “and” or “or” appears. It detects commas if they exist.
|
||||
|
||||
|
||||
|
||||
== Example: Custom Term Formatter
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-terms(
|
||||
term-formatter: (txt) => [#underline(txt)],
|
||||
([Key], [Value 1]),
|
||||
([Another Key], [Value 2])
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-terms(
|
||||
term-formatter: (txt) => [#underline(txt)],
|
||||
([Key], [Value 1]),
|
||||
([Another Key], [Value 2])
|
||||
)
|
||||
]
|
||||
|
||||
Each term is underlined, with a colon after the term.
|
||||
|
||||
|
||||
|
||||
= `run-in-verse`: Run-in poetry lines
|
||||
`run-in-verse` simply joins lines (verses) with a given *separator* (default: `[ /~]`), and no coordinator. It’s much simpler since you typically don’t want “and” in between lines of poetry.
|
||||
|
||||
== Example: Default Verse Joining
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-verse(
|
||||
[Line 1],
|
||||
[Line 2],
|
||||
[Line 3]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-verse(
|
||||
[Line 1],
|
||||
[Line 2],
|
||||
[Line 3]
|
||||
)
|
||||
]
|
||||
|
||||
== Example: Custom Separator
|
||||
|
||||
#block(breakable: false)[
|
||||
#columns(2)[
|
||||
```typst
|
||||
// Overriding the default with a comma + space
|
||||
#run-in-verse(
|
||||
separator: ", ",
|
||||
[Line A],
|
||||
[Line B],
|
||||
[Line C]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-verse(
|
||||
separator: ", ",
|
||||
[Line A],
|
||||
[Line B],
|
||||
[Line C]
|
||||
)
|
||||
]
|
||||
]
|
||||
|
||||
= Direct `run-in-join`
|
||||
All these functions ultimately call *`run-in-join`*, which you can use yourself if you want to create custom transformations. You supply:
|
||||
|
||||
1. *`separator`* (or `"auto"` for comma detection).
|
||||
2. *`coordinator`* or `none`.
|
||||
3. A *spread* of content items (`..content`).
|
||||
|
||||
|
||||
|
||||
== Example: Using `run-in-join` Directly
|
||||
#columns(2)[
|
||||
```typst
|
||||
#run-in-join(
|
||||
coordinator: "and/or",
|
||||
[First item],
|
||||
[Second item],
|
||||
[Third item, comma triggers semicolon],
|
||||
[Final item]
|
||||
)
|
||||
```
|
||||
#colbreak()
|
||||
#run-in-join(
|
||||
coordinator: "and/or",
|
||||
[First item],
|
||||
[Second item],
|
||||
[Third item, comma triggers semicolon],
|
||||
[Final item]
|
||||
)
|
||||
]
|
||||
|
||||
You can see that it inserts semicolons (auto detection) and “and/or” before the last item.
|
||||
|
||||
|
||||
|
||||
= Conclusion
|
||||
That’s your tour of the *run-in* functions! Remember:
|
||||
- If you want enumerations with `(1)` or `(A)` prefixes, use *`run-in-enum`*.
|
||||
- For bullet lists, use *`run-in-list`*.
|
||||
- For term–definition pairs, *`run-in-terms`*.
|
||||
- For verse lines, *`run-in-verse`*.
|
||||
- Or just call *`run-in-join`* yourself for custom needs.
|
||||
|
||||
Explore different *separators* (like `[ /~]`, `", "`, or `"; "`) and *coordinators* (`"and"`, `"or"`, `"none"`, etc.) to get the exact run-in style your text requires.
|
||||
|
||||
Happy Typst-ing!
|
||||
@@ -0,0 +1 @@
|
||||
#import "src/main.typ": run-in-join, run-in-enum, run-in-list, run-in-terms, run-in-verse
|
||||
@@ -0,0 +1,77 @@
|
||||
#let run-in-join(
|
||||
// Determines the in-between separator for all but the last item.
|
||||
// - If set to "auto", we'll detect whether content has commas.
|
||||
// - Otherwise, use it literally (e.g., ", ", " / ", etc.).
|
||||
separator: "auto",
|
||||
|
||||
// The word or phrase (e.g., "and", "or", "and/or") that comes before the last item.
|
||||
// - If set to `none`, we skip any coordinator.
|
||||
coordinator: "and",
|
||||
|
||||
// Content items you want to join.
|
||||
// e.g., `[ [#(1) " item one"], [#(2) " item two"], ... ]`
|
||||
..content,
|
||||
) = {
|
||||
// 1. Decide on the base separator.
|
||||
let sep = if separator == "auto" {
|
||||
// naive check: if any item in the content sequence includes a comma, use semicolons
|
||||
if content.pos().any((item) => repr(item).find(regex("\[[^]]*,[^]]*\]")) != none) {
|
||||
"; "
|
||||
} else {
|
||||
", "
|
||||
}
|
||||
} else {
|
||||
separator
|
||||
}
|
||||
|
||||
// 2. Figure out how to handle the last separator.
|
||||
// If `coordinator` is none, just do a normal join.
|
||||
// If `oxford` is true and there are 3+ items, insert a comma before coordinator.
|
||||
let final-sep = if coordinator != none and content.pos().len() == 2 {
|
||||
// For 3 or more items, we do something like: ", and "
|
||||
// That is, a final comma plus the coordinator
|
||||
" " + coordinator + " "
|
||||
} else if coordinator != none and content.pos().len() > 2 {
|
||||
// For 3 or more items, we do something like: ", and "
|
||||
// That is, a final comma plus the coordinator
|
||||
sep + coordinator + " "
|
||||
} else {
|
||||
// No coordinator or too few items; the final separator is just `sep`.
|
||||
sep
|
||||
}
|
||||
|
||||
// 3. Perform the join:
|
||||
content.pos().join(
|
||||
sep,
|
||||
last: final-sep
|
||||
)
|
||||
}
|
||||
|
||||
#let run-in-enum(separator: "auto", coordinator: "and", numbering-pattern: "(1)", numbering-formatter: (it) => [#it], ..items) = {
|
||||
let contents = items.pos().enumerate(start: 1).map(((index, item)) => {
|
||||
[#numbering-formatter(numbering(numbering-pattern, index))~#item]
|
||||
})
|
||||
run-in-join(separator: separator, coordinator: coordinator, ..contents)
|
||||
}
|
||||
|
||||
#let run-in-list(separator: "auto", coordinator: "and", marker: [•], ..items) = {
|
||||
let contents = items.pos().map((item) => {
|
||||
[#marker~#item]
|
||||
})
|
||||
run-in-join(separator: separator, coordinator: coordinator, ..contents)
|
||||
}
|
||||
|
||||
#let run-in-terms(separator: "auto", coordinator: "and", term-formatter: (it) => [#strong(it)], ..terms) = {
|
||||
let contents = terms.pos().map((t) => {
|
||||
if type(t) != array or t.len() != 2 {
|
||||
panic("arguments to run-in-terms must be arrays of the form (term, definition)")
|
||||
}
|
||||
[#term-formatter(t.at(0)):~#t.at(1)]
|
||||
})
|
||||
run-in-join(separator: separator, coordinator: coordinator, ..contents)
|
||||
}
|
||||
|
||||
#let run-in-verse(separator: [ /~], coordinator: none, ..verses) = {
|
||||
let contents = verses
|
||||
run-in-join(separator: separator, coordinator: coordinator, ..contents)
|
||||
}
|
||||
|
After Width: | Height: | Size: 1.0 MiB |
@@ -0,0 +1,335 @@
|
||||
|
||||
// exhaustive-test.typ
|
||||
// =============================================================================
|
||||
// EXHAUSTIVE TESTS for your run-in library
|
||||
// =============================================================================
|
||||
// This file demonstrates almost every combination of named/positional arguments
|
||||
// for run-in-enum, run-in-list, run-in-terms, run-in-verse, and run-in-join,
|
||||
// including zero items, single item, multiple items, bracketed commas, etc.
|
||||
//
|
||||
// Adjust import path to your library as needed:
|
||||
//
|
||||
// #import "/lib.typ": * // or whatever your actual path is
|
||||
//
|
||||
// Then compile.
|
||||
// =============================================================================
|
||||
|
||||
#import "/lib.typ": *
|
||||
|
||||
#set page(height: auto, width: 6in, margin: 1em)
|
||||
|
||||
// A small helper for easy labeling:
|
||||
#let heading = (text) => {
|
||||
[#strong(text) "\n"]
|
||||
}
|
||||
#let subheading = (text) => {
|
||||
[#emph(text) "\n"]
|
||||
}
|
||||
|
||||
// =============================================================================
|
||||
// 1) run-in-enum TESTS
|
||||
// =============================================================================
|
||||
#heading("1) run-in-enum Tests")
|
||||
|
||||
// 1A. NO NAMED ARGUMENTS (uses defaults: separator=auto, coordinator=and, etc.)
|
||||
#subheading("1A: No named arguments")
|
||||
#text("Zero items => Should produce nothing:")
|
||||
#run-in-enum()
|
||||
|
||||
|
||||
#text("Single item => Should just produce \"(1) <item>\":")
|
||||
#run-in-enum([Single item here])
|
||||
|
||||
|
||||
#text("Two items => Typically comma, then \"and\":")
|
||||
#run-in-enum([First], [Second])
|
||||
|
||||
|
||||
#text("Three items => Commas, then \"and\" before last:")
|
||||
#run-in-enum([Apple], [Banana], [Cherry])
|
||||
|
||||
|
||||
#text("Three items w/ bracketed comma => triggers semicolons:")
|
||||
#run-in-enum([Item1], [[test, bracketed]], [Item3])
|
||||
|
||||
|
||||
// 1B. ALL NAMED ARGUMENTS
|
||||
#subheading("1B: All named arguments")
|
||||
#text("separator=', ', coordinator='or', numbering-pattern='(A)', custom numbering-formatter => bold:")
|
||||
#run-in-enum(
|
||||
separator: ", ",
|
||||
coordinator: "or",
|
||||
numbering-pattern: "(A)",
|
||||
numbering-formatter: (val) => [#strong(val)],
|
||||
[Alpha],
|
||||
[Beta],
|
||||
[Gamma]
|
||||
)
|
||||
|
||||
|
||||
#text("separator='; ', coordinator=none, numbering-pattern='(i)', numbering-formatter=>italics, 4 items:")
|
||||
#run-in-enum(
|
||||
separator: "; ",
|
||||
coordinator: none,
|
||||
numbering-pattern: "(i)",
|
||||
numbering-formatter: (val) => [#emph(val)],
|
||||
[Item A],
|
||||
[[Bracket, comma]],
|
||||
[Item C],
|
||||
[Item D]
|
||||
)
|
||||
|
||||
|
||||
// 1C. MIXED SCENARIOS
|
||||
#subheading("1C: Mixed scenarios")
|
||||
#text("Two items, coordinator='and/or':")
|
||||
#run-in-enum(
|
||||
coordinator: "and/or",
|
||||
[Red],
|
||||
[Blue]
|
||||
)
|
||||
|
||||
|
||||
#text("Single item, custom numbering-pattern='(###)':")
|
||||
#run-in-enum(
|
||||
numbering-pattern: "( -- 1 -- )",
|
||||
[JustOne]
|
||||
)
|
||||
|
||||
|
||||
// =============================================================================
|
||||
// 2) run-in-list TESTS
|
||||
// =============================================================================
|
||||
#heading("2) run-in-list Tests (bulleted run-in)")
|
||||
|
||||
// 2A. NO NAMED ARGUMENTS (uses defaults: separator=auto, coordinator=and, marker=[•])
|
||||
#subheading("2A: No named arguments")
|
||||
#text("Zero items => Should produce nothing:")
|
||||
#run-in-list()
|
||||
|
||||
|
||||
#text("Single item => One bullet, no join needed:")
|
||||
#run-in-list([Only me])
|
||||
|
||||
|
||||
#text("Two items => bullet for each, comma by default, then 'and':")
|
||||
#run-in-list([First], [Second])
|
||||
|
||||
|
||||
#text("Three items => bracketed comma triggers semicolons, plus 'and':")
|
||||
#run-in-list([One], [[Two, bracketed]], [Three])
|
||||
|
||||
|
||||
// 2B. ALL NAMED ARGUMENTS
|
||||
#subheading("2B: All named arguments")
|
||||
#text("separator='; ', coordinator='or', marker=[-> ]:")
|
||||
#run-in-list(
|
||||
separator: "; ",
|
||||
coordinator: "or",
|
||||
marker: [-> ],
|
||||
[Apple],
|
||||
[Banana],
|
||||
[Cherry]
|
||||
)
|
||||
|
||||
|
||||
#text("separator=', ', coordinator=none, marker=[❖ ] (for instance):")
|
||||
#run-in-list(
|
||||
separator: ", ",
|
||||
coordinator: none,
|
||||
marker: [❖ ],
|
||||
[ListOne],
|
||||
[ListTwo],
|
||||
[ListThree]
|
||||
)
|
||||
|
||||
|
||||
// 2C. MIXED SCENARIOS
|
||||
#subheading("2C: Mixed scenarios")
|
||||
#text("Single item with custom marker [✓ ]:")
|
||||
#run-in-list(
|
||||
marker: [✓ ],
|
||||
[One item only]
|
||||
)
|
||||
|
||||
|
||||
#text("Three items, coordinator='and/or':")
|
||||
#run-in-list(
|
||||
coordinator: "and/or",
|
||||
[ItemA],
|
||||
[ItemB],
|
||||
[ItemC]
|
||||
)
|
||||
|
||||
|
||||
// =============================================================================
|
||||
// 3) run-in-terms TESTS
|
||||
// =============================================================================
|
||||
#heading("3) run-in-terms Tests (term => definition)")
|
||||
|
||||
// 3A. NO NAMED ARGUMENTS (defaults: separator=auto, coordinator=and, term-formatter=(it)=>[#strong(it)])
|
||||
#subheading("3A: No named arguments")
|
||||
#text("Zero terms => produce nothing:")
|
||||
// #run-in-terms([]) // appropriately panics :)
|
||||
|
||||
|
||||
#text("Single term => no join needed:")
|
||||
#run-in-terms(
|
||||
([OnlyTerm], [ItsDefinition]),
|
||||
)
|
||||
|
||||
|
||||
#text("Two terms => comma then 'and':")
|
||||
#run-in-terms(
|
||||
([FirstTerm], [DefinitionOne]),
|
||||
([SecondTerm], [DefinitionTwo])
|
||||
)
|
||||
|
||||
|
||||
#text("Three terms => bracketed comma triggers semicolons + 'and':")
|
||||
#run-in-terms(
|
||||
([Term1], [Definition1]),
|
||||
([Term2], [Def, bracketed]),
|
||||
([Term3], [Definition3])
|
||||
)
|
||||
|
||||
|
||||
// 3B. ALL NAMED ARGUMENTS
|
||||
#subheading("3B: All named arguments")
|
||||
#text("separator='; ', coordinator='none', custom term-formatter => italic, 3 terms:")
|
||||
#run-in-terms(
|
||||
separator: "; ",
|
||||
coordinator: none,
|
||||
term-formatter: (txt) => [#emph(txt)],
|
||||
([Goal], [Summarize prior research]),
|
||||
([Methods], [Outline approach]),
|
||||
([Outcome], [Analyze results])
|
||||
)
|
||||
|
||||
|
||||
#text("separator=', ', coordinator='or', custom term-formatter => underline, 2 terms:")
|
||||
#run-in-terms(
|
||||
separator: ", ",
|
||||
coordinator: "or",
|
||||
term-formatter: (txt) => [#underline(txt)],
|
||||
([Key], [Value 1]),
|
||||
([Secondary], [Value 2])
|
||||
)
|
||||
|
||||
|
||||
// 3C. MIXED SCENARIOS
|
||||
#subheading("3C: Mixed scenarios")
|
||||
#text("Single term, coordinator='and/or' => no effect because only one term:")
|
||||
#run-in-terms(
|
||||
coordinator: "and/or",
|
||||
([OneTerm], [OneDefinition],)
|
||||
)
|
||||
|
||||
|
||||
// =============================================================================
|
||||
// 4) run-in-verse TESTS
|
||||
// =============================================================================
|
||||
#heading("4) run-in-verse Tests")
|
||||
|
||||
// By default: separator=[ /~], coordinator=none, ..verses
|
||||
|
||||
// 4A. Testing zero, single, multiple verses
|
||||
#subheading("4A: No named arguments")
|
||||
#text("Zero verses => nothing:")
|
||||
#run-in-verse()
|
||||
|
||||
|
||||
#text("Single verse => no joins needed:")
|
||||
#run-in-verse([Alone in the verse])
|
||||
|
||||
|
||||
#text("Two verses => joined with ' / ':")
|
||||
#run-in-verse([Line one], [Line two])
|
||||
|
||||
|
||||
#text("Three verses => bracketed commas don't matter here, but let's try anyway:")
|
||||
#run-in-verse([LineA], [[Line, with comma]], [LineC])
|
||||
|
||||
|
||||
// 4B. Overriding the default separator (rare but possible)
|
||||
#subheading("4B: Custom separator")
|
||||
#text("Using separator=', ' while coordinator=none:")
|
||||
#run-in-verse(
|
||||
separator: ", ",
|
||||
[VerseOne],
|
||||
[VerseTwo],
|
||||
[VerseThree]
|
||||
)
|
||||
|
||||
|
||||
// =============================================================================
|
||||
// 5) DIRECT run-in-join TESTS
|
||||
// =============================================================================
|
||||
#heading("5) Direct run-in-join Tests")
|
||||
|
||||
// We’ll systematically test zero, single, multiple items,
|
||||
// with or without named arguments.
|
||||
|
||||
#subheading("5A: Minimal usage => no named args, zero items => nothing.")
|
||||
#run-in-join()
|
||||
|
||||
|
||||
#text("Single item, no named args => no join needed:")
|
||||
#run-in-join([Solo])
|
||||
|
||||
|
||||
#text("Two items, no named args => comma + 'and':")
|
||||
#run-in-join([Item A], [Item B])
|
||||
|
||||
|
||||
#text("Three items, bracketed comma => semicolons + 'and':")
|
||||
#run-in-join([A1], [[B, bracketed]], [C1])
|
||||
|
||||
|
||||
#subheading("5B: All named args")
|
||||
#text("separator='; ', coordinator='or', 3 items => semicolons and \"or\"")
|
||||
#run-in-join(
|
||||
separator: "; ",
|
||||
coordinator: "or",
|
||||
[Alpha],
|
||||
[Beta],
|
||||
[Gamma]
|
||||
)
|
||||
|
||||
|
||||
#text("separator=[ /~], coordinator='and/or', 4 items => ' / ' as base sep + 'and/or' before last:")
|
||||
#run-in-join(
|
||||
separator: [ /~],
|
||||
coordinator: "and/or",
|
||||
[One],
|
||||
[Two],
|
||||
[Three],
|
||||
[Four]
|
||||
)
|
||||
|
||||
|
||||
#subheading("5C: Edge combos")
|
||||
#text("Two items, coordinator=none => just a single separator between them.")
|
||||
#run-in-join(
|
||||
coordinator: none,
|
||||
[X],
|
||||
[Y]
|
||||
)
|
||||
|
||||
|
||||
#text("Three items, separator=', ', coordinator=none => no 'and':")
|
||||
#run-in-join(
|
||||
separator: ", ",
|
||||
coordinator: none,
|
||||
[X2],
|
||||
[Y2],
|
||||
[Z2]
|
||||
)
|
||||
|
||||
|
||||
#text("Single item, bracketed comma => no effect since there's no join anyway.")
|
||||
#run-in-join([[Has, bracketed]])
|
||||
|
||||
|
||||
#text("Done with direct run-in-join tests.")
|
||||
|
||||
|
After Width: | Height: | Size: 129 KiB |