Skip to content

Commit

Permalink
Merge pull request #203 from neelsmith/dev
Browse files Browse the repository at this point in the history
Update docs
  • Loading branch information
neelsmith authored Sep 12, 2024
2 parents dbaa38a + a5c5b7f commit 78ef8b0
Show file tree
Hide file tree
Showing 26 changed files with 643 additions and 319 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
Manifest.toml
docs/build/
.vscode/
scratch/
scratch/
_site/
_freeze/
17 changes: 0 additions & 17 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -17,23 +17,6 @@ makedocs(
sitename = "PolytonicGreek.jl",
pages = [
"Home" => "index.md",
"String manipulation" => Any[
"guide/strcat.md",
"guide/sorting.md",
"guide/syllabification.md",
"guide/accents.md",
"guide/augment.md"

],
"Greek orthography" => Any[
"guide/orthography.md"
],
"The LiteraryGreek implementation" => Any[
"litgreek/lgstrings.md",
"litgreek/lgortho.md",
"litgreek/orthodetails.md"
],
"API documentation" => "api/index.md"
]
)

Expand Down
119 changes: 0 additions & 119 deletions docs/src/api/index.md

This file was deleted.

1 change: 0 additions & 1 deletion docs/src/guide/orthography-details.md

This file was deleted.

12 changes: 0 additions & 12 deletions docs/src/guide/orthography.md

This file was deleted.

Empty file removed docs/src/guide/quarry.md
Empty file.
40 changes: 1 addition & 39 deletions docs/src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,44 +3,6 @@

*Rigorously defined orthographies for text in polytonic ancient Greek.*

The `PolytonicGreek` package supports working with accented ancient Greek encoded in Unicode.
Project documentation is available [on quartopub](https://neelsmith.quarto.pub/polytonicgreek/).


## An abstract interface

`GreekOrthography` is an abstract type for functions that understand the phonology of ancient Greek as it is represented in specific orthographic systems, and can therefore:

- sort Unicode Greek strings by the logic of the Greek alphabet
- syllabify Greek strings
- work with accents, including correct placement for recessive and persistent accent patterns, respecting morpheme boundaries in compound verbs
- support reduplication and augment (both temporal and syllabic) of verbal stems
- concatenate strings in a specified orthography with appropriate phonological adjustments, optionally including elision
- implement the `OrthographicSystem` interface (from the HCMID [Orthography package](https://hcmid.github.io/Orthography.jl/stable/)), with semantic tokenization of text in polytonic Greek


## Concrete implementations

This package includes `PolytonicGreek`, an implementation of the `GreekOrthography` type for literary Greek as it appears in standard printed editions.

Other implementations are possible. Examples are:


- [ManuscriptOrthography](https://homermultitext.github.io/ManuscriptOrthography.jl/stable/) (from the Homer Multitext project) for working with the orthography of polytonic Greek in medieval manuscripts
- [AtticGreek](https://github.com/neelsmith/AtticGreek.jl), an implementation for the epichoric alphabet used in Athens before 403 BCE


## String manipulation

```@contents
Pages = ["guide/strcat.md",
"guide/sorting.md", "guide/accents.md", "guide/syllabification.md", "guide/augment.md"]
Depth = 2
```


## The `OrthographicSystem` interface

```@contents
Pages = ["guide/orthography.md"]
Depth = 3
```
1 change: 0 additions & 1 deletion docs/src/utilities.md

This file was deleted.

1 change: 1 addition & 0 deletions quarto/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/.quarto/
4 changes: 4 additions & 0 deletions quarto/_publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- source: project
quarto-pub:
- id: 05ce1cf1-be08-4b8e-961f-755ebcd13102
url: 'https://neelsmith.quarto.pub/polytonicgreek'
75 changes: 75 additions & 0 deletions quarto/_quarto.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
project:
type: website
jupyter: julia-1.10
theme: spacelab
execute:
freeze: auto
date: last-modified
margin-header: "Package version: `0.21.12`"
format:
html:
toc: true


website:
title: "polytonicgreek"
navbar:
background: primary
search: true
left:
- text: "Home"
file: index.qmd
- text: "Concepts"
file: concepts/index.qmd
- text: "Tutorials"
file: tutorials/index.qmd
- text: "Guides"
file: guides/index.qmd
- text: "Reference"
file: reference/index.qmd
right:
- icon: github
href: https://github.com/neelsmith/PolytonicGreek.jl
aria-label: GitHub
- icon: person-circle
menu:
- text: "About me"
href: https://neelsmith.quarto.pub
- text: "More of my digital scholarship"
href: https://neelsmith.quarto.pub/digschol/
aria-label: "More of my work"

sidebar:
- title: "Tutorials"
contents:
- tutorials/index.qmd
- tutorials/literarygreek.qmd
- tutorials/lgstrings.qmd
- tutorials/sorting.qmd
- tutorials/syllabification.qmd

- title: "Guides"
contents:
- guides/index.qmd
- guides/accentuation.qmd
- guides/strcat.qmd
- guides/augment.qmd


- title: "Reference"
contents:
- reference/index.qmd
- reference/lg_charset.qmd
- reference/api.qmd

- title: "Concepts"
contents:
- concepts/index.qmd



- title: "Home"
contents:
- index.qmd


47 changes: 47 additions & 0 deletions quarto/concepts/index.qmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
title: Concepts
---



## An abstract interface

`GreekOrthography` is an abstract type for functions that understand the phonology of ancient Greek as it is represented in specific orthographic systems, and can therefore:

- sort Unicode Greek strings by the logic of the Greek alphabet
- syllabify Greek strings
- work with accents, including correct placement for recessive and persistent accent patterns, respecting morpheme boundaries in compound verbs
- support reduplication and augment (both temporal and syllabic) of verbal stems
- concatenate strings in a specified orthography with appropriate phonological adjustments, optionally including elision
- implement the `OrthographicSystem` interface (from the HCMID [Orthography package](https://hcmid.github.io/Orthography.jl/stable/)), with semantic tokenization of text in polytonic Greek


## Generic features of an orthographic system

The `GreekOrthography` abstract type is a subtype of `OrthographicSystem`. Concrete implementations of `GreekOrthography` are therefore also implementations of an `OrthographicSystem`. In the following code blocks, you can see that `LiteraryGreekOrthography` inherits from `OrthographicSystem` via `GreekOrthography`, and can be used like any other `OrthographicSystem` to assess the validity of characters and strings, and analyze strings of characters as sequences of classified tokens.


## The `GreekOrthography` abstraction

`GreekOrthography` is an abstract type, which in turn is a
subtype of the [Orthography package](https://github.com/hcmid/Orthography.jl)'s `OrthographicSystem`.

Implementations of `GreekOrthography` can therefore:


1. use the functions specific to implementations of `GreekOrthography` to remove and add accents to words, to break words into syllables, and to sort words according to the logic of the Greek alphabet
2. use the generic functions of the `Orthography` package to assess the validity of characters and strings, and to tokenize a string into a series of explicitly classified tokens.




## Concrete implementations

This package includes `PolytonicGreek`, an implementation of the `GreekOrthography` type for literary Greek as it appears in standard printed editions.

Other implementations are possible. Examples are:


- `ScientificGreekOrthography`, for texts that including numeric and synmbolic content used in Greek mathematical and scientific texts
- [ManuscriptOrthography](https://homermultitext.github.io/ManuscriptOrthography.jl/stable/) (from the Homer Multitext project) for working with the orthography of polytonic Greek in medieval manuscripts
- [AtticGreek](https://github.com/neelsmith/AtticGreek.jl), an implementation for the epichoric alphabet used in Athens before 403 BCE
20 changes: 8 additions & 12 deletions docs/src/guide/accents.md → quarto/guides/accentuation.qmd
Original file line number Diff line number Diff line change
@@ -1,33 +1,29 @@
```@meta
CurrentModule = PolytonicGreek
```

# Accentuation



Overview: two exported functions allows you to remove accents from a string, or add accent to a "word" (a single lexical token). Words may be accented either with recessive accent, or with persistent accent in the penult, indicated with a second parameter which should be either the symbol `:RECESSIVE` or `:PENULT`.

!!! note
Words cannot be accented on the ultima based on orthography alone; that requires further knowledge of the morphological form of the word.

:::{.callout-note}
Words cannot be accented on the ultima based on orthography alone; that requires further knowledge of the morphological form of the word.
:::

```jldoctest accented
```{julia}
using PolytonicGreek
lg = literaryGreek()
rmaccents("πολλά", lg)
# output
"πολλα"
#"πολλα"
```

```jldoctest accented
```{julia}
accentword("ἀνθρωπος", :RECESSIVE, lg)
# output
"ἄνθρωπος"
#"ἄνθρωπος"
```



Loading

0 comments on commit 78ef8b0

Please sign in to comment.