From 2355b425916b7f822fe3ca7566aa5b93f7435c0e Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Thu, 14 Dec 2023 18:28:26 -0500 Subject: [PATCH 01/16] working on software --- renv.lock | 563 +++++- requirements.txt | 71 +- software/assets/fave_logo.png | Bin 0 -> 29422 bytes software/index.qmd | 6 + software/packages/aligned-textgrid.qmd | 31 + software/packages/assets/aligned-textgrid.svg | 1615 +++++++++++++++++ 6 files changed, 2267 insertions(+), 19 deletions(-) create mode 100644 software/assets/fave_logo.png create mode 100644 software/index.qmd create mode 100644 software/packages/aligned-textgrid.qmd create mode 100644 software/packages/assets/aligned-textgrid.svg diff --git a/renv.lock b/renv.lock index eddc0b3..41e57a4 100644 --- a/renv.lock +++ b/renv.lock @@ -11,7 +11,7 @@ "Python": { "Version": "3.11.4", "Type": "virtualenv", - "Name": "/Users/joseffruehwald/.pyenv/versions/3.11.4/envs/site" + "Name": "./renv/python/virtualenvs/renv-python-3.11" }, "Packages": { "MASS": { @@ -45,6 +45,58 @@ ], "Hash": "e779c7d9f35cc364438578f334cffee2" }, + "R6": { + "Package": "R6", + "Version": "2.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "470851b6d5d0ac559e9d01bb352b4021" + }, + "RColorBrewer": { + "Package": "RColorBrewer", + "Version": "1.1-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "45f0398006e83a5b10b72a90663d8d8c" + }, + "Rcpp": { + "Package": "Rcpp", + "Version": "1.0.11", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "methods", + "utils" + ], + "Hash": "ae6cbbe1492f4de79c45fce06f967ce8" + }, + "RcppTOML": { + "Package": "RcppTOML", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "c232938949fcd8126034419cc529333a" + }, + "base64enc": { + "Package": "base64enc", + "Version": "0.1-3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "543776ae6848fde2f48ff3816d0628bc" + }, "boot": { "Package": "boot", "Version": "1.3-28.1", @@ -57,6 +109,229 @@ ], "Hash": "9a052fbcbe97a98ceb18dbfd30ebd96e" }, + "bslib": { + "Package": "bslib", + "Version": "0.6.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "cachem", + "grDevices", + "htmltools", + "jquerylib", + "jsonlite", + "lifecycle", + "memoise", + "mime", + "rlang", + "sass" + ], + "Hash": "c0d8599494bc7fb408cd206bbdd9cab0" + }, + "cachem": { + "Package": "cachem", + "Version": "1.0.8", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "fastmap", + "rlang" + ], + "Hash": "c35768291560ce302c0a6589f92e837d" + }, + "cli": { + "Package": "cli", + "Version": "3.6.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" + }, + "colorspace": { + "Package": "colorspace", + "Version": "2.1-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "f20c47fd52fae58b4e377c37bb8c335b" + }, + "digest": { + "Package": "digest", + "Version": "0.6.33", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "b18a9cf3c003977b0cc49d5e76ebe48d" + }, + "ellipsis": { + "Package": "ellipsis", + "Version": "0.3.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "rlang" + ], + "Hash": "bb0eec2fe32e88d9e2836c2f73ea2077" + }, + "evaluate": { + "Package": "evaluate", + "Version": "0.23", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" + }, + "farver": { + "Package": "farver", + "Version": "2.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "8106d78941f34855c440ddb946b8f7a5" + }, + "fastmap": { + "Package": "fastmap", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "f7736a18de97dea803bde0a2daaafb27" + }, + "fontawesome": { + "Package": "fontawesome", + "Version": "0.5.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "htmltools", + "rlang" + ], + "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" + }, + "fs": { + "Package": "fs", + "Version": "1.6.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "47b5f30c720c23999b913a1a635cf0bb" + }, + "glue": { + "Package": "glue", + "Version": "1.6.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "4f2596dfb05dac67b9dc558e5c6fba2e" + }, + "here": { + "Package": "here", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "rprojroot" + ], + "Hash": "24b224366f9c2e7534d2344d10d59211" + }, + "highr": { + "Package": "highr", + "Version": "0.10", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "xfun" + ], + "Hash": "06230136b2d2b9ba5805e1963fa6e890" + }, + "htmltools": { + "Package": "htmltools", + "Version": "0.5.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "base64enc", + "digest", + "ellipsis", + "fastmap", + "grDevices", + "rlang", + "utils" + ], + "Hash": "2d7b3857980e0e0d0a1fd6f11928ab0f" + }, + "jquerylib": { + "Package": "jquerylib", + "Version": "0.1.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "htmltools" + ], + "Hash": "5aab57a3bd297eee1c1d862735972182" + }, + "jsonlite": { + "Package": "jsonlite", + "Version": "1.8.8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods" + ], + "Hash": "e1b9c55281c5adc4dd113652d9e26768" + }, + "knitr": { + "Package": "knitr", + "Version": "1.45", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "evaluate", + "highr", + "methods", + "tools", + "xfun", + "yaml" + ], + "Hash": "1ec462871063897135c1bcbe0fc8f07d" + }, + "labeling": { + "Package": "labeling", + "Version": "0.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "graphics", + "stats" + ], + "Hash": "b64ec208ac5bc1852b285f665d6368b3" + }, "lattice": { "Package": "lattice", "Version": "0.21-8", @@ -72,6 +347,40 @@ ], "Hash": "0b8a6d63c8770f02a8b5635f3c431e6b" }, + "lifecycle": { + "Package": "lifecycle", + "Version": "1.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "rlang" + ], + "Hash": "b8552d117e1b808b09a832f589b79035" + }, + "magrittr": { + "Package": "magrittr", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "7ce2733a9826b3aeb1775d56fd305472" + }, + "memoise": { + "Package": "memoise", + "Version": "2.0.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "cachem", + "rlang" + ], + "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" + }, "mgcv": { "Package": "mgcv", "Version": "1.8-42", @@ -89,6 +398,27 @@ ], "Hash": "3460beba7ccc8946249ba35327ba902a" }, + "mime": { + "Package": "mime", + "Version": "0.12", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "tools" + ], + "Hash": "18e9c28c1d3ca1560ce30658b22ce104" + }, + "munsell": { + "Package": "munsell", + "Version": "0.5.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "colorspace", + "methods" + ], + "Hash": "6dfe8bf774944bd5595785e3229d8771" + }, "nlme": { "Package": "nlme", "Version": "3.1-162", @@ -103,6 +433,41 @@ ], "Hash": "0984ce8da8da9ead8643c5cbbb60f83e" }, + "png": { + "Package": "png", + "Version": "0.1-8", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "bd54ba8a0a5faded999a7aab6e46b374" + }, + "purrr": { + "Package": "purrr", + "Version": "1.0.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "lifecycle", + "magrittr", + "rlang", + "vctrs" + ], + "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" + }, + "rappdirs": { + "Package": "rappdirs", + "Version": "0.3.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "5e3c5dc0b071b21fa128676560dbe94d" + }, "renv": { "Package": "renv", "Version": "1.0.3", @@ -112,6 +477,202 @@ "utils" ], "Hash": "41b847654f567341725473431dd0d5ab" + }, + "reticulate": { + "Package": "reticulate", + "Version": "1.34.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppTOML", + "graphics", + "here", + "jsonlite", + "methods", + "png", + "rappdirs", + "rlang", + "utils", + "withr" + ], + "Hash": "a69f815bcba8a055de0b08339b943f9e" + }, + "rlang": { + "Package": "rlang", + "Version": "1.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "50a6dbdc522936ca35afc5e2082ea91b" + }, + "rmarkdown": { + "Package": "rmarkdown", + "Version": "2.25", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "bslib", + "evaluate", + "fontawesome", + "htmltools", + "jquerylib", + "jsonlite", + "knitr", + "methods", + "stringr", + "tinytex", + "tools", + "utils", + "xfun", + "yaml" + ], + "Hash": "d65e35823c817f09f4de424fcdfa812a" + }, + "rprojroot": { + "Package": "rprojroot", + "Version": "2.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" + }, + "sass": { + "Package": "sass", + "Version": "0.4.8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "fs", + "htmltools", + "rappdirs", + "rlang" + ], + "Hash": "168f9353c76d4c4b0a0bbf72e2c2d035" + }, + "scales": { + "Package": "scales", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "RColorBrewer", + "cli", + "farver", + "glue", + "labeling", + "lifecycle", + "munsell", + "rlang", + "viridisLite" + ], + "Hash": "c19df082ba346b0ffa6f833e92de34d1" + }, + "stringi": { + "Package": "stringi", + "Version": "1.8.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats", + "tools", + "utils" + ], + "Hash": "058aebddea264f4c99401515182e656a" + }, + "stringr": { + "Package": "stringr", + "Version": "1.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "magrittr", + "rlang", + "stringi", + "vctrs" + ], + "Hash": "960e2ae9e09656611e0b8214ad543207" + }, + "tinytex": { + "Package": "tinytex", + "Version": "0.49", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "xfun" + ], + "Hash": "5ac22900ae0f386e54f1c307eca7d843" + }, + "vctrs": { + "Package": "vctrs", + "Version": "0.6.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang" + ], + "Hash": "c03fa420630029418f7e6da3667aac4a" + }, + "viridisLite": { + "Package": "viridisLite", + "Version": "0.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" + }, + "withr": { + "Package": "withr", + "Version": "2.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "stats" + ], + "Hash": "4b25e70111b7d644322e9513f403a272" + }, + "xfun": { + "Package": "xfun", + "Version": "0.41", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "stats", + "tools" + ], + "Hash": "460a5e0fe46a80ef87424ad216028014" + }, + "yaml": { + "Package": "yaml", + "Version": "2.3.8", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "29240487a071f535f5e5d5a323b7afbd" } } } diff --git a/requirements.txt b/requirements.txt index 32848b5..041d4b9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,59 +1,94 @@ +anyio==4.1.0 appnope==0.1.3 +argon2-cffi==23.1.0 +argon2-cffi-bindings==21.2.0 +arrow==1.3.0 asttokens==2.4.1 +async-lru==2.0.4 attrs==23.1.0 -biblib==0.1.3 -biblio-py==0.7.4 -bibtex-pygments-lexer==0.0.1 -bibtexparser==1.4.1 +Babel==2.14.0 +beautifulsoup4==4.12.2 +bleach==6.1.0 certifi==2023.11.17 +cffi==1.16.0 charset-normalizer==3.3.2 comm==0.2.0 debugpy==1.8.0 decorator==5.1.1 +defusedxml==0.7.1 executing==2.0.1 fastjsonschema==2.19.0 -feedparser==6.0.11 +fqdn==1.5.1 idna==3.6 ipykernel==6.27.1 ipython==8.18.1 -isbnlib==3.10.14 +ipywidgets==8.1.1 +isoduration==20.11.0 jedi==0.19.1 +Jinja2==3.1.2 +json5==0.9.14 +jsonpointer==2.4 jsonschema==4.20.0 jsonschema-specifications==2023.11.2 +jupyter==1.0.0 +jupyter-console==6.6.3 +jupyter-events==0.9.0 +jupyter-lsp==2.2.1 jupyter_client==8.6.0 jupyter_core==5.5.0 -latexcodec==2.0.1 +jupyter_server==2.12.1 +jupyter_server_terminals==0.5.0 +jupyterlab==4.0.9 +jupyterlab-widgets==3.0.9 +jupyterlab_pygments==0.3.0 +jupyterlab_server==2.25.2 +MarkupSafe==2.1.3 matplotlib-inline==0.1.6 +mistune==3.0.2 +nbclient==0.9.0 +nbconvert==7.12.0 nbformat==5.9.2 nest-asyncio==1.5.8 +notebook==7.0.6 +notebook_shim==0.2.3 +overrides==7.4.0 packaging==23.2 +pandocfilters==1.5.0 parso==0.8.3 pexpect==4.9.0 platformdirs==4.1.0 -prompt-toolkit==3.0.42 +prometheus-client==0.19.0 +prompt-toolkit==3.0.43 psutil==5.9.6 ptyprocess==0.7.0 pure-eval==0.2.2 -pyaml==23.9.7 -pybtex==0.24.0 +pycparser==2.21 Pygments==2.17.2 -pylatexenc==3.0a21 -pyparsing==3.1.1 python-dateutil==2.8.2 -python-magic==0.4.27 -pytz==2023.3.post1 +python-json-logger==2.0.7 PyYAML==6.0.1 pyzmq==25.1.2 -pyzotero==1.5.18 +qtconsole==5.5.1 +QtPy==2.4.1 referencing==0.32.0 requests==2.31.0 +rfc3339-validator==0.1.4 +rfc3986-validator==0.1.1 rpds-py==0.13.2 -sgmllib3k==1.0.0 +Send2Trash==1.8.2 six==1.16.0 +sniffio==1.3.0 +soupsieve==2.5 stack-data==0.6.3 +terminado==0.18.0 +tinycss2==1.2.1 tornado==6.4 traitlets==5.14.0 -Unidecode==1.3.7 +types-python-dateutil==2.8.19.14 +uri-template==1.3.0 urllib3==2.1.0 wcwidth==0.2.12 -zotero2qmd @ git+https://github.com/JoFrhwld/zotero2qmd.git@d678db31706efe1786e8d454d9b735a78cdba1a6 +webcolors==1.13 +webencodings==0.5.1 +websocket-client==1.7.0 +widgetsnbextension==4.0.9 diff --git a/software/assets/fave_logo.png b/software/assets/fave_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f7b5671b305377419e9be218fa38c6ea4bc1da47 GIT binary patch literal 29422 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 FV1kj(+`j+- literal 0 HcmV?d00001 diff --git a/software/index.qmd b/software/index.qmd new file mode 100644 index 0000000..1db6f89 --- /dev/null +++ b/software/index.qmd @@ -0,0 +1,6 @@ +--- +title: Software +listing: + contents: packages + type: grid +--- diff --git a/software/packages/aligned-textgrid.qmd b/software/packages/aligned-textgrid.qmd new file mode 100644 index 0000000..4d9b78c --- /dev/null +++ b/software/packages/aligned-textgrid.qmd @@ -0,0 +1,31 @@ +--- +title: aligned-textgrid +author: + - name: + family: Fruehwald + given: Josef + - name: + family: Brickhouse + given: Christian +doi: 10.5281/zenodo.10190692 +abstract: 'The aligned-textgrid package provides a python interface for representing and operating on TextGrids produced by forced aligners like FAVE or the Montreal Forced Aligner. Classes provided by aligned-textgrid represent hierarchical and precedence relationships among data stored in TextGrid formats allowing for simplified and more accessible analysis of aligned speech data.' +image: ../assets/fave_logo.png +citation: + issued: '2023-11-22' + type: software + url: https://forced-alignment-and-vowel-extraction.github.io/alignedTextGrid/ + version: v0.5.0 +--- + +```{r} +#| echo: false +library(epoxy) +``` + +```{epoxy} +Most recent version: {rmarkdown::metadata$citation$version} + +Read the documentation [here]({rmarkdown::metadata$citation$url}) +``` + +![](assets/aligned-textgrid.svg){fig-align="center"} diff --git a/software/packages/assets/aligned-textgrid.svg b/software/packages/assets/aligned-textgrid.svg new file mode 100644 index 0000000..13285ac --- /dev/null +++ b/software/packages/assets/aligned-textgrid.svg @@ -0,0 +1,1615 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + the + + dog + + DH + + AH0 + + .fol + + + .fol + .subset_list[0] + .first + .last + .first + .subset_list[0] + .subset_list[1] + .subset_list[2] + .super_instance + .super_instance + .super_instance + + .prev + .prev + + # + + + + # + + + + + # + + + + + + + D + + AO1 + + G + + + + # + + + + + + + + + # + + + + + + + # + + + + + .prev + + + + .prev + + + .fol + + .fol + + + + + + + + + + + .last + + From 0155e81bf8a1ac1b5c77978862e41615f783af58 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Thu, 14 Dec 2023 18:28:37 -0500 Subject: [PATCH 02/16] nav --- _quarto.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/_quarto.yml b/_quarto.yml index 235c3d5..52f53e2 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -22,8 +22,20 @@ website: text: Home - href: research/index.qmd text: Research + - href: software/index.qmd + text: Software - href: teaching/index.qmd text: Teaching + right: + - href: https://jofrhwld.github.io/blog/ + text: Blog + icon: newspaper + - href: https://bsky.app/profile/jofrhwld.bsky.social + icon: clouds + text: bsky + - href: https://github.com/JoFrhwld + icon: github + format: html: theme: From 5fd296c5b19f30e6186b4bf5194eee559064158a Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 14:21:31 -0500 Subject: [PATCH 03/16] fave-recode software --- research/papers/Fruehwald_2023_MW4ESNC8.qmd | 24 +++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 research/papers/Fruehwald_2023_MW4ESNC8.qmd diff --git a/research/papers/Fruehwald_2023_MW4ESNC8.qmd b/research/papers/Fruehwald_2023_MW4ESNC8.qmd new file mode 100644 index 0000000..879e617 --- /dev/null +++ b/research/papers/Fruehwald_2023_MW4ESNC8.qmd @@ -0,0 +1,24 @@ +--- +abstract: 'The idea behind fave-recode is that no matter how much you may adjust the + dictionary of a forced-aligner, you may still want to make programmatic changes + to the output.' +author: +- name: + family: Fruehwald + given: Josef +citation: + issued: '2023-11-21' + type: software + url: https://forced-alignment-and-vowel-extraction.github.io/fave-recode/ + version: v0.2.0 +date: '2023-11-21' +date-format: YYYY +description: v0.2.0 +doi: 10.5281/ZENODO.10392791 +params: + key: MW4ESNC8 + notes: 'DOI: ' +title: fave-recode +--- + +Documentation: [Docs](https://forced-alignment-and-vowel-extraction.github.io/fave-recode/) \ No newline at end of file From aa301e6e44b69a852788c8709640b2d2a9159657 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 14:21:43 -0500 Subject: [PATCH 04/16] working on software page --- software/index.qmd | 1 + software/packages/aligned-textgrid.qmd | 17 +++++++---------- software/packages/fave-recode.qmd | 22 ++++++++++++++++++++++ 3 files changed, 30 insertions(+), 10 deletions(-) create mode 100644 software/packages/fave-recode.qmd diff --git a/software/index.qmd b/software/index.qmd index 1db6f89..773f4cd 100644 --- a/software/index.qmd +++ b/software/index.qmd @@ -3,4 +3,5 @@ title: Software listing: contents: packages type: grid + categories: true --- diff --git a/software/packages/aligned-textgrid.qmd b/software/packages/aligned-textgrid.qmd index 4d9b78c..13a5da0 100644 --- a/software/packages/aligned-textgrid.qmd +++ b/software/packages/aligned-textgrid.qmd @@ -8,6 +8,9 @@ author: family: Brickhouse given: Christian doi: 10.5281/zenodo.10190692 +categories: + - fave + - textgrids abstract: 'The aligned-textgrid package provides a python interface for representing and operating on TextGrids produced by forced aligners like FAVE or the Montreal Forced Aligner. Classes provided by aligned-textgrid represent hierarchical and precedence relationships among data stored in TextGrid formats allowing for simplified and more accessible analysis of aligned speech data.' image: ../assets/fave_logo.png citation: @@ -16,16 +19,10 @@ citation: url: https://forced-alignment-and-vowel-extraction.github.io/alignedTextGrid/ version: v0.5.0 --- +[![Static Badge](https://img.shields.io/badge/GH-get_it_on_Github-blue?logo=github)](https://github.com/Forced-Alignment-and-Vowel-Extraction/alignedTextGrid) +[![PyPI](https://img.shields.io/pypi/v/aligned-textgrid.png)](https://pypi.org/project/aligned-textgrid/) +[![Build Docs](https://github.com/Forced-Alignment-and-Vowel-Extraction/alignedTextGrid/actions/workflows/build-docs.yml/badge.svg)](https://forced-alignment-and-vowel-extraction.github.io/alignedTextGrid/) +[![DOI](https://zenodo.org/badge/552633207.svg)](https://zenodo.org/badge/latestdoi/552633207) -```{r} -#| echo: false -library(epoxy) -``` - -```{epoxy} -Most recent version: {rmarkdown::metadata$citation$version} - -Read the documentation [here]({rmarkdown::metadata$citation$url}) -``` ![](assets/aligned-textgrid.svg){fig-align="center"} diff --git a/software/packages/fave-recode.qmd b/software/packages/fave-recode.qmd new file mode 100644 index 0000000..78a1c42 --- /dev/null +++ b/software/packages/fave-recode.qmd @@ -0,0 +1,22 @@ +--- +title: fave-recode +author: + - name: + family: Fruehwald + given: Josef +doi: 10.5281/ZENODO.10392791 +categories: + - fave + - textgrids +abstract: 'The idea behind fave-recode is that no matter how much you may adjust the dictionary of a forced-aligner, you may still want to make programmatic changes to the output.' +image: ../assets/fave_logo.png +citation: + issued: '2023-11-21' + type: software + url: https://forced-alignment-and-vowel-extraction.github.io/fave-recode/ + version: v0.2.0 +--- +[![Static Badge](https://img.shields.io/badge/GH-get_it_on_Github-blue?logo=github)](https://github.com/Forced-Alignment-and-Vowel-Extraction/fave-recode) +[![PyPI](https://img.shields.io/pypi/v/fave-recode.png)](https://pypi.org/project/fave-recode/) +[![BuildDocs](https://github.com/Forced-Alignment-and-Vowel-Extraction/fave-recode/actions/workflows/build-docs.yml/badge.svg)](https://forced-alignment-and-vowel-extraction.github.io/fave-recode/) +[![DOI](https://zenodo.org/badge/605740158.svg)](https://zenodo.org/badge/latestdoi/605740158) From 16153636e5960f730146eed3cbfbe55ff7d28987 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 15:29:40 -0500 Subject: [PATCH 05/16] added python categories --- software/packages/aligned-textgrid.qmd | 1 + software/packages/fave-recode.qmd | 1 + 2 files changed, 2 insertions(+) diff --git a/software/packages/aligned-textgrid.qmd b/software/packages/aligned-textgrid.qmd index 13a5da0..690db17 100644 --- a/software/packages/aligned-textgrid.qmd +++ b/software/packages/aligned-textgrid.qmd @@ -11,6 +11,7 @@ doi: 10.5281/zenodo.10190692 categories: - fave - textgrids + - python abstract: 'The aligned-textgrid package provides a python interface for representing and operating on TextGrids produced by forced aligners like FAVE or the Montreal Forced Aligner. Classes provided by aligned-textgrid represent hierarchical and precedence relationships among data stored in TextGrid formats allowing for simplified and more accessible analysis of aligned speech data.' image: ../assets/fave_logo.png citation: diff --git a/software/packages/fave-recode.qmd b/software/packages/fave-recode.qmd index 78a1c42..1f14b93 100644 --- a/software/packages/fave-recode.qmd +++ b/software/packages/fave-recode.qmd @@ -8,6 +8,7 @@ doi: 10.5281/ZENODO.10392791 categories: - fave - textgrids + - python abstract: 'The idea behind fave-recode is that no matter how much you may adjust the dictionary of a forced-aligner, you may still want to make programmatic changes to the output.' image: ../assets/fave_logo.png citation: From 7d3233d399bd85ff21835f467db3240b5acd8722 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 15:32:23 -0500 Subject: [PATCH 06/16] added syllabifyr page --- make_qmd.ipynb | 29 ++++++++++----------- research/papers/Fruehwald_2020_6IQH5VV5.qmd | 22 ++++++++++++++++ 2 files changed, 36 insertions(+), 15 deletions(-) create mode 100644 research/papers/Fruehwald_2020_6IQH5VV5.qmd diff --git a/make_qmd.ipynb b/make_qmd.ipynb index 8413e57..70da91a 100644 --- a/make_qmd.ipynb +++ b/make_qmd.ipynb @@ -78,20 +78,17 @@ { "data": { "text/plain": [ - "{'params': {'key': 'M3E7A7LS', 'notes': ''},\n", - " 'author': [{'name': {'given': 'Ingrid', 'family': 'Rosenfelder'}},\n", - " {'name': {'given': 'Josef', 'family': 'Fruehwald'}},\n", - " {'name': {'given': 'Keelan', 'family': 'Evanini'}},\n", - " {'name': {'given': 'Jiahong', 'family': 'Yuan'}}],\n", - " 'title': 'FAVE (Forced Alignment and Vowel Extraction) Program Suite.',\n", - " 'date': '2011',\n", + "{'params': {'key': '6IQH5VV5', 'notes': 'DOI: 10.5281/zenodo.10393038'},\n", + " 'author': [{'name': {'given': 'Josef', 'family': 'Fruehwald'}}],\n", + " 'title': 'syllabifyr: v0.1.1',\n", + " 'date': '2020-10-24',\n", " 'date-format': 'YYYY',\n", - " 'description': 'v0.0.0',\n", - " 'abstract': '',\n", + " 'description': 'v0.1.1',\n", + " 'abstract': 'The goal of `syllabifyr` is to provide tidy syllabification of phonetic transcriptions. So far, only CMU dict transcriptions are supported.',\n", " 'citation': {'type': 'software',\n", - " 'issued': '2011',\n", - " 'url': 'http://fave.ling.upenn.edu/',\n", - " 'version': 'v0.0.0'}}" + " 'issued': '2020-10-24',\n", + " 'url': 'https://jofrhwld.github.io/syllabifyr/',\n", + " 'version': 'v0.1.1'}}" ] }, "execution_count": 7, @@ -137,7 +134,9 @@ { "data": { "text/plain": [ - "['Rosenfelder_2011_M3E7A7LS',\n", + "['Fruehwald_2020_6IQH5VV5',\n", + " 'Fruehwald_2023_MW4ESNC8',\n", + " 'Rosenfelder_2011_M3E7A7LS',\n", " 'Rosenfelder_2015_K57PJ2RE',\n", " 'Rosenfelder_2022_TRXWWXD2',\n", " 'Fruehwald_2023_GY5I9QMZ',\n", @@ -174,7 +173,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -183,7 +182,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ diff --git a/research/papers/Fruehwald_2020_6IQH5VV5.qmd b/research/papers/Fruehwald_2020_6IQH5VV5.qmd new file mode 100644 index 0000000..d908111 --- /dev/null +++ b/research/papers/Fruehwald_2020_6IQH5VV5.qmd @@ -0,0 +1,22 @@ +--- +abstract: The goal of `syllabifyr` is to provide tidy syllabification of phonetic + transcriptions. So far, only CMU dict transcriptions are supported. +author: +- name: + family: Fruehwald + given: Josef +citation: + issued: '2020-10-24' + type: software + url: https://jofrhwld.github.io/syllabifyr/ + version: v0.1.1 +date: '2020-10-24' +date-format: YYYY +description: v0.1.1 +doi: 10.5281/zenodo.10393038 +params: + key: 6IQH5VV5 + notes: 'DOI: 10.5281/zenodo.10393038' +title: 'syllabifyr: v0.1.1' + +--- \ No newline at end of file From df1dec659544360bcc102ac3c313a32f46dcc63b Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 15:33:27 -0500 Subject: [PATCH 07/16] moved logo asset --- software/packages/aligned-textgrid.qmd | 2 +- software/{ => packages}/assets/fave_logo.png | Bin software/packages/fave-recode.qmd | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename software/{ => packages}/assets/fave_logo.png (100%) diff --git a/software/packages/aligned-textgrid.qmd b/software/packages/aligned-textgrid.qmd index 690db17..501b181 100644 --- a/software/packages/aligned-textgrid.qmd +++ b/software/packages/aligned-textgrid.qmd @@ -13,7 +13,7 @@ categories: - textgrids - python abstract: 'The aligned-textgrid package provides a python interface for representing and operating on TextGrids produced by forced aligners like FAVE or the Montreal Forced Aligner. Classes provided by aligned-textgrid represent hierarchical and precedence relationships among data stored in TextGrid formats allowing for simplified and more accessible analysis of aligned speech data.' -image: ../assets/fave_logo.png +image: assets/fave_logo.png citation: issued: '2023-11-22' type: software diff --git a/software/assets/fave_logo.png b/software/packages/assets/fave_logo.png similarity index 100% rename from software/assets/fave_logo.png rename to software/packages/assets/fave_logo.png diff --git a/software/packages/fave-recode.qmd b/software/packages/fave-recode.qmd index 1f14b93..df77efd 100644 --- a/software/packages/fave-recode.qmd +++ b/software/packages/fave-recode.qmd @@ -10,7 +10,7 @@ categories: - textgrids - python abstract: 'The idea behind fave-recode is that no matter how much you may adjust the dictionary of a forced-aligner, you may still want to make programmatic changes to the output.' -image: ../assets/fave_logo.png +image: assets/fave_logo.png citation: issued: '2023-11-21' type: software From c16aa1a1a50f2da46d57e773d28654d38dd951a8 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 15:55:52 -0500 Subject: [PATCH 08/16] trim description length --- software/index.qmd | 1 + 1 file changed, 1 insertion(+) diff --git a/software/index.qmd b/software/index.qmd index 773f4cd..049c820 100644 --- a/software/index.qmd +++ b/software/index.qmd @@ -4,4 +4,5 @@ listing: contents: packages type: grid categories: true + max-description-length: 100 --- From a543cbea7365fc2830ecd5e0be5e329fc82e2906 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 15:56:04 -0500 Subject: [PATCH 09/16] updates --- software/packages/aligned-textgrid.qmd | 1 + software/packages/assets/syllabifyr_logo.png | Bin 0 -> 8530 bytes software/packages/fave-recode.qmd | 1 + software/packages/syllabifyr.qmd | 23 +++++++++++++++++++ 4 files changed, 25 insertions(+) create mode 100644 software/packages/assets/syllabifyr_logo.png create mode 100644 software/packages/syllabifyr.qmd diff --git a/software/packages/aligned-textgrid.qmd b/software/packages/aligned-textgrid.qmd index 501b181..c08e568 100644 --- a/software/packages/aligned-textgrid.qmd +++ b/software/packages/aligned-textgrid.qmd @@ -13,6 +13,7 @@ categories: - textgrids - python abstract: 'The aligned-textgrid package provides a python interface for representing and operating on TextGrids produced by forced aligners like FAVE or the Montreal Forced Aligner. Classes provided by aligned-textgrid represent hierarchical and precedence relationships among data stored in TextGrid formats allowing for simplified and more accessible analysis of aligned speech data.' +date: 2023-11-22 image: assets/fave_logo.png citation: issued: '2023-11-22' diff --git a/software/packages/assets/syllabifyr_logo.png b/software/packages/assets/syllabifyr_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6b18ce72963433ff1b037e76576b894920eec490 GIT binary patch literal 8530 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 M07*qoM6N<$g7J=^N&o-= literal 0 HcmV?d00001 diff --git a/software/packages/fave-recode.qmd b/software/packages/fave-recode.qmd index df77efd..8d4d8c0 100644 --- a/software/packages/fave-recode.qmd +++ b/software/packages/fave-recode.qmd @@ -10,6 +10,7 @@ categories: - textgrids - python abstract: 'The idea behind fave-recode is that no matter how much you may adjust the dictionary of a forced-aligner, you may still want to make programmatic changes to the output.' +date: 2023-11-21 image: assets/fave_logo.png citation: issued: '2023-11-21' diff --git a/software/packages/syllabifyr.qmd b/software/packages/syllabifyr.qmd new file mode 100644 index 0000000..c8f51da --- /dev/null +++ b/software/packages/syllabifyr.qmd @@ -0,0 +1,23 @@ +--- +title: "syllabifyr: Syllabifier for CMU Dictionary Transcriptions" +author: + - name: + given: Josef + family: Fruehwald +abstract: "The goal of `syllabifyr` is to provide tidy syllabification of phonetic transcriptions. So far, only CMU dict transcriptions are supported." +categories: + - R +doi: 10.5281/zenodo.10393038 +date: '2020-10-24' +image: assets/syllabifyr_logo.png +citation: + issued: '2020-10-24' + type: software + url: https://jofrhwld.github.io/syllabifyr/ + version: v0.1.1 +--- + +[![Static Badge](https://img.shields.io/badge/GH-get_it_on_Github-blue?logo=github)](https://github.com/JoFrhwld/syllabifyr) +[![CRAN status](https://www.r-pkg.org/badges/version/syllabifyr)](https://CRAN.R-project.org/package=syllabifyr) +[![pkgdown](https://github.com/JoFrhwld/syllabifyr/actions/workflows/pkgdown.yaml/badge.svg)](https://jofrhwld.github.io/syllabifyr/) +[![DOI](https://zenodo.org/badge/139162633.svg)](https://zenodo.org/badge/latestdoi/139162633) \ No newline at end of file From 3c2c5ac2508349f6fc89f4c30692421de2abd8b2 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 16:06:48 -0500 Subject: [PATCH 10/16] added density area --- research/papers/Fruehwald_2023_W27UEZSV.qmd | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 research/papers/Fruehwald_2023_W27UEZSV.qmd diff --git a/research/papers/Fruehwald_2023_W27UEZSV.qmd b/research/papers/Fruehwald_2023_W27UEZSV.qmd new file mode 100644 index 0000000..7999918 --- /dev/null +++ b/research/papers/Fruehwald_2023_W27UEZSV.qmd @@ -0,0 +1,21 @@ +--- +abstract: Areas of Bivarate Density Distributions +author: +- name: + family: Fruehwald + given: Josef +citation: + issued: '2023-10-02' + type: software + url: https://jofrhwld.github.io/densityarea/ + version: v0.1.0 +date: '2023-10-02' +date-format: YYYY +description: v0.1.0 +doi: 10.5281/ZENODO.10393190 +params: + key: W27UEZSV + notes: 'DOI: 10.5281/ZENODO.10393190' +title: 'densityarea: Polygons of Bivariate Density Distributions' + +--- \ No newline at end of file From bd660476e16018b8e9b94a12e2d75a104fd00a6e Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 16:13:19 -0500 Subject: [PATCH 11/16] densityarea --- software/packages/assets/densityarea_logo.svg | 1174 +++++++++++++++++ software/packages/densityarea.qmd | 27 + 2 files changed, 1201 insertions(+) create mode 100644 software/packages/assets/densityarea_logo.svg create mode 100644 software/packages/densityarea.qmd diff --git a/software/packages/assets/densityarea_logo.svg b/software/packages/assets/densityarea_logo.svg new file mode 100644 index 0000000..215164b --- /dev/null +++ b/software/packages/assets/densityarea_logo.svg @@ -0,0 +1,1174 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + density + area + + diff --git a/software/packages/densityarea.qmd b/software/packages/densityarea.qmd new file mode 100644 index 0000000..41d6c69 --- /dev/null +++ b/software/packages/densityarea.qmd @@ -0,0 +1,27 @@ +--- +title: 'densityarea: Polygons of Bivariate Density Distributions' +abstract: Areas of Bivarate Density Distributions +categories: + - R + - phonetics + - "data-viz" +author: +- name: + family: Fruehwald + given: Josef +citation: + issued: '2023-10-02' + type: software + url: https://jofrhwld.github.io/densityarea/ + version: v0.1.0 +date: '2023-10-02' +date-format: YYYY +description: v0.1.0 +doi: 10.5281/ZENODO.10393190 +image: assets/densityarea_logo.svg +--- + +[![CRAN +status](https://www.r-pkg.org/badges/version/densityarea)](https://CRAN.R-project.org/package=densityarea) +[![pkgdown](https://github.com/JoFrhwld/densityarea/actions/workflows/pkgdown.yaml/badge.svg)](https://jofrhwld.github.io/densityarea/) +[![DOI](https://zenodo.org/badge/691165861.svg)](https://zenodo.org/badge/latestdoi/691165861) \ No newline at end of file From 7f80c94aec137636be2499415e73464d531c073e Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 16:23:50 -0500 Subject: [PATCH 12/16] fasttrackpy --- research/papers/Fruehwald_2023_BNWT43F9.qmd | 23 +++++++++++++++++ software/packages/assets/fasttrack_logo.png | Bin 0 -> 3968 bytes software/packages/densityarea.qmd | 1 - software/packages/fasttrackpy.qmd | 27 ++++++++++++++++++++ 4 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 research/papers/Fruehwald_2023_BNWT43F9.qmd create mode 100644 software/packages/assets/fasttrack_logo.png create mode 100644 software/packages/fasttrackpy.qmd diff --git a/research/papers/Fruehwald_2023_BNWT43F9.qmd b/research/papers/Fruehwald_2023_BNWT43F9.qmd new file mode 100644 index 0000000..b2d7fed --- /dev/null +++ b/research/papers/Fruehwald_2023_BNWT43F9.qmd @@ -0,0 +1,23 @@ +--- +abstract: This is a python implementation of the FastTrack method. +author: +- name: + family: Fruehwald + given: Josef +- name: + family: Barreda + given: Santiago +citation: + issued: '2023-11-28' + type: software + url: https://fasttrackiverse.github.io/fasttrackpy/ + version: v0.3.0 +date: '2023-11-28' +date-format: YYYY +description: v0.3.0 +doi: 10.5281/ZENODO.10212099 +params: + key: BNWT43F9 + notes: 'DOI: 10.5281/ZENODO.10212099' +title: fasttrackpy +--- \ No newline at end of file diff --git a/software/packages/assets/fasttrack_logo.png b/software/packages/assets/fasttrack_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b93517ff18ced50940b19a3c105e4b925c5a6392 GIT binary patch literal 3968 zcmc&%_dgq4)K4V#9u=!bs2Z(Z<+0KV;-RQglpsdY7_AjMp~DE8(m~aDN^1+MwMW%z zZ8c+S2|;Ts33>Im_b+(gAI?3WbMF1zd(P*3?!D)mXk}r-$tJ=E001~m5pe4>-Sbyi zn9jy>`-+@1#d;s%5Ci~lefcZE?tmhXGpBH{k$v#3fV;sMRG=pSgTW~I_@jf|QTIKS z0s_6Ve(8z;0Nk9W@M|_ntC8TH&8XkSvL0pZn1Z)UrPcRz>kMxaMz3W+qEo~z$#XCFi>M$dPDgo2ifAu zDp&ZY5-kCjQ1U$cFNNN*sr<~bfxgU4GBeMUc*BAJ`s2x-1Nb6^gr0!{BmkPLDhcP} zV0i`tUH{pJIaQx5&P^Iy-&rmWpxB zrmy6=lQaLUeXD<$HH&?!Cn=$%Tn?%OFN{dTf!78!Ho@ePDkps`TNlr>kP9`>k`;MTkh`*IJ&L&n18=0aP*-1C3!7e3D!^1az?{pks7 zUwyQC3qaRf%{gA$jqHo?WLwT&5sP#E1}ovov|iN>y_f$5AoHKwQ$h>6S%C!LS4-Yc znJ%9=R=%q#iK0>ZF#e#h)?HM{Mlo5z@oqI!zHNfJ=R21IzerAKtfq}x#^GLb#L30^ zVpEtK8#g_I?Dr+U9ZVg1KV(@K}%=>7Ju#i#gq!7T2L z*_o!t=9mRtm5bt3`!{hPKRVa+dS=qu3Z?ayZ*0PM5gp)Hx=it0|#^aLZHMn)&**^K4z5N#-I42UUWX5#-Eu;06o44)TP(9j^XV zzU~vDDyc2i&J`h061Gd(SwkN-JOzFQ`e>#wU^7Cs)t1Hc?T{P@E_0We43p0gf|0G# zVpI`zDeTY8hyM7ugU#2x#fnz8c}fJ4JX@H;1KkfSHp{u=FI{xMW1D3bLF07_cm+Z!6V*KtEgh`^f^MDDpZO~avK?fm=^e^D~MmJu^N^W8;9 zEcw+v5k!B&=tcAO^VIBi-m?1@#FOnwEc^uOPfbS!4Qfh^xbE^-rkv|Kv{QaV>n(Dz zDT4Tge;@B>5=y594Xke(o#VV(E+;jgzDNpk+H>t>e^qeD3mFXd0=Hlg;#v#&!`v6PX)&(DFz&P{r+;(oAxNL>$q6OQXb^F{+`AP`Ej6)`ePKv@-_&`M6SfZ9 zg&y>14*!Y1u&@QDqnl|SA9Sgb;+73sDDPC`N}NCps}9-9BzOCm`lGJ_txN$NT(Dl< zv-jE>5VtpY66yn8Ykve~`RIta9Y(c_fGYyYKruv7k80&ryBb^ngs>^#wKmz820JZ= zNlBAWBM!o{h97+B$9a4`DFd4~x(L*40%MDaqMfr*zc*_2EgE_9pHp#MFIAndH!hgA=y6Ol{w$CTfLP*O( z3zs*1@8qzJEfC-ODvB_n31z%QjOvkF(%`9Y)5p`fqSoS9ehz^<+LAsI{hu(~CvGsc zf>2t3c-Mg0jRyRwO6u=#IFBBoE}GNB9DPn6npSE+AI>8|WIHs;^qZ1%<5s^*_jZaf zf#X@*I#$1HEg&rEuM;(=kg zNDcBzi8`)0iJ}3gIrXHUi!)OsyU_gU%TosQF5bNCLq@k}#jB+aH3A*`C-Gbeukg*W zf$sB|72y|{_bHCD>mhVg%~;xplfcH$lsRKJv@=k($&_1tFd<8)ZqlnmWSHr>X#L@o zruC7-8*YSW3F}pikU4XiVSHf1#8S$OAhW80lbwTCrA1jf;I|J`@BCmHM=tp}1I3wT z%6Kok?YwiTIl8t?L6)*W1haksQr}sL6BE1Cn+xn#Kzzm-M&|l^cyL{r*FX)GNDT1T z<7x|kX$)*`t&R$`^3zd!%z_Y#*~4#SX@KYa)nAL>Y)b105+blH{eo~(^3Zvli-2(@ zzV92eF&qev_C0*+Y3IE7z4fpw-s?5I*|#%Fu4COA?ck!ir9rRe*9cx*#+|r=f)Ciy zZopg%xgYB5wr|xlcpLM&qe^iBU*{W6%Ow7O=q9@v_~%0A%DFaNSb$+ynBcKLNvRh5 zeDsSD&mb#9i{#AaCb#qH3bUzRGI0A%Nvo)Bp-k1^<|gab|Qi$gfO*V?DBx_%AYbxL=U}5I!bdTuW|-Hp{&^8A$}O-BM=? zdEsh9b`{7`4GUVHDIPmr-^lwt;-6wk(^!i)WD#taxMNm%56oGpO* zA1N-`4#zTU@mzXiGQB2QN3!0pHoEnw)7R*b*qML#5=#=B#Wt2Zx0zWb{8qB&D=z1f zh|zRuj|Wv6jp2KOxMukmXo9PwB30kX`Hp3yr0Ld@GN#=mE8GZYcCrY-9gPp0OrJgm z0V>X25W`&rvPu(8^h+lva5au3TrM8w=F&+{?*q#uQ`aEZh8;yOOe$9g>`J?dP!`1w zV;d`e+Eg&`bq$&5W3qxGywc-`_waGRQWibrU36erTDjRG1K(}y6X+GU^Pl4)8g70> zabA}?`_J_n{$Qw%q8Xa+H8{PmSY`7fIENG@zf-#uG1;YdE>SU-to%>A91i~T`^bKd zNBK#(PwkYKB`p!mH=VkCxVS=joX$L=1W#)c?*DIIJ(f6~%r&#GT6@+2$kR5k93p80 z>P#JmYzAl^ko+i%;2GwoQAi^#SHwSqXK;@~vU0x+L<&l%o;}JtUGH;0GFL|5r*w@) z&c9UVNbnk+PxmFZ?2njD`#_*Re;pI)1#DVzj4G0Iyq0L5%dX7l>$+|DeKh+wlxxLV zKRsOIs}af50D0ST++(qdUlovaH$A7REKpY+y7)79-vz>(sTb4U`(X&L)xka^Et$Pr zXh4aw-+WzJnDN_zb27UUBhYqwQ}Ca4@DBU*etn^H1}jfk!)k9#o#ou@p+_fzJu_m^ zqBT- zM}P2Pj~AE(QR{anhpD$xjX=haG+6GnG4Ko}Zcng$XLw8xV(A zlLH%#Cqk|YH)Ec3AhyS2gU_8c1sx;GB12B9);oa^e!yeL_&GeV-V$|eG~)aExO4xD zr@H2B+)U+ceiEay&T8A{n6kN(StE}R3dT1SzDVMH_98)3x7=WE^LZ;l3)0I^S%(%g zQ~=jHabXKXZo5E$$%s;Xia;>eZ3t*7_G@|n#f9G*qT`a!m0U2YK&w^WOE}^kdov}oXDd6qnWlNj|=x^F}0t;deH7yfW>|J`l6(OIosT3FUJFw$l3kR7`_#PT%s zAksvjD%a2++jxc95yMIU3f!)$CFL zdScf6D-RM}Ivi8ag0PpSK#b<(t(j}cjMWQ1%;y)(t^*j^5ke0(60Ci0Orm*SFm?1M z)W}}k$oDt;;-2SjeReko!_aT%?lH!XzqD*cHIjQ?S?ZQj7A556{mQcGREYv4hs0l& l_XcnD|HAnGH`AnZi-500fHjuN&e$`+)W`x}aosiUe*k{KRFD7w literal 0 HcmV?d00001 diff --git a/software/packages/densityarea.qmd b/software/packages/densityarea.qmd index 41d6c69..3b175b4 100644 --- a/software/packages/densityarea.qmd +++ b/software/packages/densityarea.qmd @@ -16,7 +16,6 @@ citation: version: v0.1.0 date: '2023-10-02' date-format: YYYY -description: v0.1.0 doi: 10.5281/ZENODO.10393190 image: assets/densityarea_logo.svg --- diff --git a/software/packages/fasttrackpy.qmd b/software/packages/fasttrackpy.qmd new file mode 100644 index 0000000..073ac39 --- /dev/null +++ b/software/packages/fasttrackpy.qmd @@ -0,0 +1,27 @@ +--- +title: fasttrackpy +abstract: "This is a python implementation of the FastTrack method." +categories: + - python + - phonetics +author: +- name: + family: Fruehwald + given: Josef +- name: + family: Barreda + given: Santiago +citation: + issued: '2023-11-28' + type: software + url: https://fasttrackiverse.github.io/fasttrackpy/ + version: v0.3.0 +date: '2023-11-28' +date-format: YYYY +image: assets/fasttrack_logo.png +doi: 10.5281/ZENODO.10212099 +params: + key: BNWT43F9 + notes: 'DOI: 10.5281/ZENODO.10212099' + +--- \ No newline at end of file From 0743d447f2d624f51021a24e7501d017de54c704 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 16:24:14 -0500 Subject: [PATCH 13/16] update make_qmd --- make_qmd.ipynb | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/make_qmd.ipynb b/make_qmd.ipynb index 70da91a..2bac53f 100644 --- a/make_qmd.ipynb +++ b/make_qmd.ipynb @@ -78,17 +78,18 @@ { "data": { "text/plain": [ - "{'params': {'key': '6IQH5VV5', 'notes': 'DOI: 10.5281/zenodo.10393038'},\n", - " 'author': [{'name': {'given': 'Josef', 'family': 'Fruehwald'}}],\n", - " 'title': 'syllabifyr: v0.1.1',\n", - " 'date': '2020-10-24',\n", + "{'params': {'key': 'BNWT43F9', 'notes': 'DOI: 10.5281/ZENODO.10212099'},\n", + " 'author': [{'name': {'given': 'Josef', 'family': 'Fruehwald'}},\n", + " {'name': {'given': 'Santiago', 'family': 'Barreda'}}],\n", + " 'title': 'fasttrackpy',\n", + " 'date': '2023-11-28',\n", " 'date-format': 'YYYY',\n", - " 'description': 'v0.1.1',\n", - " 'abstract': 'The goal of `syllabifyr` is to provide tidy syllabification of phonetic transcriptions. So far, only CMU dict transcriptions are supported.',\n", + " 'description': 'v0.3.0',\n", + " 'abstract': 'This is a python implementation of the FastTrack method.',\n", " 'citation': {'type': 'software',\n", - " 'issued': '2020-10-24',\n", - " 'url': 'https://jofrhwld.github.io/syllabifyr/',\n", - " 'version': 'v0.1.1'}}" + " 'issued': '2023-11-28',\n", + " 'url': 'https://fasttrackiverse.github.io/fasttrackpy/',\n", + " 'version': 'v0.3.0'}}" ] }, "execution_count": 7, @@ -134,7 +135,9 @@ { "data": { "text/plain": [ - "['Fruehwald_2020_6IQH5VV5',\n", + "['Fruehwald_2023_BNWT43F9',\n", + " 'Fruehwald_2023_W27UEZSV',\n", + " 'Fruehwald_2020_6IQH5VV5',\n", " 'Fruehwald_2023_MW4ESNC8',\n", " 'Rosenfelder_2011_M3E7A7LS',\n", " 'Rosenfelder_2015_K57PJ2RE',\n", From fc8a9c35008b2ea3bbae116a39b4ec5b7667e404 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 16:26:49 -0500 Subject: [PATCH 14/16] fasttrack badges --- software/packages/fasttrackpy.qmd | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/software/packages/fasttrackpy.qmd b/software/packages/fasttrackpy.qmd index 073ac39..67925c5 100644 --- a/software/packages/fasttrackpy.qmd +++ b/software/packages/fasttrackpy.qmd @@ -24,4 +24,8 @@ params: key: BNWT43F9 notes: 'DOI: 10.5281/ZENODO.10212099' ---- \ No newline at end of file +--- + +[![PyPI](https://img.shields.io/pypi/v/fasttrackpy)](https://pypi.org/project/fasttrackpy/) +[![Static Badge](https://img.shields.io/badge/docs-blue)](https://fasttrackiverse.github.io/fasttrackpy/) +[![DOI](https://zenodo.org/badge/580169086.svg)](https://zenodo.org/doi/10.5281/zenodo.10212099) \ No newline at end of file From ae4cf428b180e0ef53185d937242ef22e1ef6ae8 Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 16:48:29 -0500 Subject: [PATCH 15/16] added extension --- .../jofrhwld/codeblocklabel/_extension.yml | 8 +++++ .../codeblocklabel/codeblocklabel.css | 10 +++++++ .../codeblocklabel/codeblocklabel.lua | 30 +++++++++++++++++++ 3 files changed, 48 insertions(+) create mode 100644 _extensions/jofrhwld/codeblocklabel/_extension.yml create mode 100644 _extensions/jofrhwld/codeblocklabel/codeblocklabel.css create mode 100644 _extensions/jofrhwld/codeblocklabel/codeblocklabel.lua diff --git a/_extensions/jofrhwld/codeblocklabel/_extension.yml b/_extensions/jofrhwld/codeblocklabel/_extension.yml new file mode 100644 index 0000000..3c068e5 --- /dev/null +++ b/_extensions/jofrhwld/codeblocklabel/_extension.yml @@ -0,0 +1,8 @@ +title: Codeblocklabel +author: Josef Fruehwald +version: 1.0.0 +quarto-required: ">=1.3.0" +contributes: + filters: + - codeblocklabel.lua + diff --git a/_extensions/jofrhwld/codeblocklabel/codeblocklabel.css b/_extensions/jofrhwld/codeblocklabel/codeblocklabel.css new file mode 100644 index 0000000..fdb38d0 --- /dev/null +++ b/_extensions/jofrhwld/codeblocklabel/codeblocklabel.css @@ -0,0 +1,10 @@ +.langname { + margin-bottom: 0%; + padding-bottom: 0%; + font-style: italic; + font-size:smaller; +} + +.sourceCode[id]{ + margin-top: 0%; +} diff --git a/_extensions/jofrhwld/codeblocklabel/codeblocklabel.lua b/_extensions/jofrhwld/codeblocklabel/codeblocklabel.lua new file mode 100644 index 0000000..677e3a5 --- /dev/null +++ b/_extensions/jofrhwld/codeblocklabel/codeblocklabel.lua @@ -0,0 +1,30 @@ + +-- function Div(el) +-- if el.content[1].t == "CodeBlock" then +-- return pandoc.Para("CodeBlock!") +-- end +-- end + +quarto.doc.add_html_dependency({ + name = 'codenamelabel', + stylesheets = {'codeblocklabel.css'} + }) + +function CodeBlock(block) + local newblock = block + if (FORMAT:match "html") and + (block.classes[1]) then + local langname = block.classes[1] + out = {pandoc.Div( + pandoc.RawInline("html", + "
"..block.classes[1].."
" + ), + pandoc.Attr("", {"langname"}, {}) + ), + newblock + } + else + out = newblock + end + return out +end \ No newline at end of file From 0e424e589338ef939cd900b06ffa82db29ce7f6f Mon Sep 17 00:00:00 2001 From: JoFrhwld Date: Fri, 15 Dec 2023 16:49:34 -0500 Subject: [PATCH 16/16] linked to make qmd --- _quarto.yml | 10 +++- make_qmd.ipynb | 135 ++++++++++++++++++++++----------------------- research/index.qmd | 4 +- 3 files changed, 78 insertions(+), 71 deletions(-) diff --git a/_quarto.yml b/_quarto.yml index 52f53e2..608a313 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -5,10 +5,15 @@ project: - teaching #- papers render: - - "*.qmd" + - "*qmd" + - "*ipynb" - "!papers/*/*qmd" - "!teaching/courses/2022_lin517/src" - - "!*/skeleton" + - "!**/*_files/" + +filters: + - codeblocklabel + website: google-analytics: tracking-id: "G-C00S3NPL7B" @@ -48,6 +53,7 @@ format: - styles/dark.scss - styles/styles.scss toc: true + editor: visual diff --git a/make_qmd.ipynb b/make_qmd.ipynb index 2bac53f..ef6ccc9 100644 --- a/make_qmd.ipynb +++ b/make_qmd.ipynb @@ -5,13 +5,33 @@ "metadata": {}, "source": [ "---\n", - "execute: false\n", + "title: \"Make research pages\"\n", + "execution:\n", + " eval: false\n", "---" ] }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#| eval: false\n", + "! pip install pyzotero\n", + "! pip install git+https://github.com/JoFrhwld/zotero2qmd.git" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`zoetero2qmd` is a quick and dirty package I wrote to convert the output from `pyzotero` to compatible data structures for quarto headers." + ] + }, + { + "cell_type": "code", + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -23,24 +43,30 @@ "from pathlib import Path" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you are reusing this code, you'll need to get your own API key: [pyzotero getting started](https://pyzotero.readthedocs.io/en/latest/#getting-started-short-version)" + ] + }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "keypath = Path(\".zotero\")\n", "with keypath.open() as keyfile:\n", - " key_text = keyfile.readline().strip()" + " key_text = keyfile.readline().strip()\n", + "zot = zotero.Zotero(library_id='7642731', library_type='user', api_key=key_text) " ] }, { - "cell_type": "code", - "execution_count": 3, + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "zot = zotero.Zotero(library_id='7642731', library_type='user', api_key=key_text)" + "The `zotero.Zotero.publications()` method pulls down all citations you've added to \"My Publications\"." ] }, { @@ -53,26 +79,32 @@ ] }, { - "cell_type": "code", - "execution_count": 5, + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "filtered_pubs = filter_pubs(pubs)" + "Everything that isn't a talk is going into one big pile for now. I'll figure out what to do with talks later. Also, I don't know why I started using \"main\" to refer to the publication info." ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ + "filtered_pubs = filter_pubs(pubs)\n", "all_mains = [item2main(x) for x in filtered_pubs]" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Each dictionary can be yaml dumped into valid quarto headings." + ] + }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -92,7 +124,7 @@ " 'version': 'v0.3.0'}}" ] }, - "execution_count": 7, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -101,9 +133,16 @@ "all_mains[0]" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It took a bit of work to generate mostly legible but unique file names. I decided to append the Zotero `key` value to each." + ] + }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -120,7 +159,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -128,64 +167,31 @@ ] }, { - "cell_type": "code", - "execution_count": 10, + "cell_type": "markdown", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "['Fruehwald_2023_BNWT43F9',\n", - " 'Fruehwald_2023_W27UEZSV',\n", - " 'Fruehwald_2020_6IQH5VV5',\n", - " 'Fruehwald_2023_MW4ESNC8',\n", - " 'Rosenfelder_2011_M3E7A7LS',\n", - " 'Rosenfelder_2015_K57PJ2RE',\n", - " 'Rosenfelder_2022_TRXWWXD2',\n", - " 'Fruehwald_2023_GY5I9QMZ',\n", - " 'Fruehwald_2019_URYFVWHE',\n", - " 'Tanner_2020_GH2LZM4Y',\n", - " 'Purse_2022_LIGPGR5R',\n", - " 'Mielke_2019_U5C56KNR',\n", - " 'Labov_2013_QZP9CAP8',\n", - " 'Fruehwald_2013_W28LR5KT',\n", - " 'Fruehwald_2011_LPQN5R3M',\n", - " 'Fruehwald_2022_H347UNLS',\n", - " 'Fruehwald_2017_ETG527QQ',\n", - " 'Fruehwald_2012_7HNEQZ7H',\n", - " 'Fruehwald_2008_IZLBZKZV',\n", - " 'Fruehwald_2007_MG8DFJEK',\n", - " 'Boyd_2021_733Q4MMI',\n", - " 'Fruehwald_2016_TCTQU8FS',\n", - " 'Wieling_2016_FU9RXCUV',\n", - " 'Sneller_2019_8ERVHBSG',\n", - " 'Fruehwald_2015_TJI9T9W6',\n", - " 'Fruehwald_2017_258NF56V',\n", - " 'Fruehwald_2016_34D4IRNY',\n", - " 'Fruehwald_2013_H3BZPAT7']" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], "source": [ - "all_stems" + "I started dumping everything into \"papers\"... so now I'm stuck with it." ] }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "out_path = Path(\"research\",\"papers\")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "I only want to write new files, since I may manually edit the results here and there." + ] + }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 10, "metadata": {}, "outputs": [], "source": [ @@ -196,13 +202,6 @@ " qmd_string = \"---\\n\"+yaml.dump(item)+\"\\n---\"\n", " out_file.write_text(qmd_string)" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/research/index.qmd b/research/index.qmd index bbb9fcc..c4681ff 100644 --- a/research/index.qmd +++ b/research/index.qmd @@ -7,4 +7,6 @@ listing: date-format: YYYY sort: date desc max-description-length: 280 ---- \ No newline at end of file +--- + +[Generated from my Zotero publications](../make_qmd.ipynb). \ No newline at end of file