0.20.2
Fixes
- Fixes a regression introduced in 0.20.1 that affected right-hand boundary checking within an underline structure
- Specifically, rules such as
VN
>
[+nas]
/
<(..)_>
now work as expected
0.20.1
New Features
- Segments and matrices can be negated in input and environment with
- or ¬
- e.g.
<(..)-G>
>
[+str]
;; a syllable that doesn't have an off-glide is stressed
- Boundaries can be used at the periphery of structures
- Allows for boundary manipulation with all the benefits of underline structures
- e.g.
V:[-str]
$
>
*
/
_S:[+str]
|
#<(..)_>
me.da'ra.ni => me'dra.ni
ka'ra.sa => ka'ra.sa
Fixes
- Options at the beginning or end of a structure properly check if they fill a syllable
0.20.0
BREAKING CHANGES
- Group
C now stands for
[+cons,
-syll], no longer just
[-syll]
- This is motivated in part so that
C:[+syll]
has the expected behaviour.
-
Note that as glides are
[-cons],
they are no longer covered under
C.
Use
{C,G}
or
[-syll]
(or after 0.20.1
-V)
to capture both consonants and glides.
- Glottalic consonants (e.g.
h, ʔ) are now [+cons]
- Rules such as
a
>
e now preserve length
- Previously, this rule would cause a word such as
ha:t to become het.
- This change now brings the behaviour of IPA Literals in line with Groups and Matrices.
- Previous behaviour is preserved when the input is matched by length e.g.
a:[+lng]
>
e
which is equiv. to
a:[+lng]
>
e:[-lng]
- See here for an archived explanation for the previous behaviour.
New Features
- Allow for multi-dimensional suprasegmentals (stress and length) to be referenced with one alpha.
[A long, B overlong] can be replaced with just [A length]
[A stress, B sec.str] can be replaced with just [A anystress]
- Allow for the underline to be placed within an environment structure.
- e.g.
VN
>
[+nas]
/
<(..)_>
instead of VN > [+nas] / _$ guarantees V and N are of the same syllable and N is coda.
- Rework of Sets
- Allow for multiple items in set choices
- e.g.
{i:[+long],
u:[+long]}
>
{aj,
aw}
- These items can be mixed type e.g.
{k<CV>,
N$[-syll]}
- Allow for sets, as a whole, to be modified by a matrix.
- e.g.
{i, u}:[+long] rather than {i:[+long], u:[+long]}
- Rework of Metathesis logic
- Ellipses act to group elements on either side
- e.g.
pf..s
>
&
to result in
pfas => safp
whereas it currently would render
pfas => sfap
- In general:
abcd..ef..ghi => ihg..fe..dcba
- New
@ metathesis operator which allows for maintaining grouped element orderings
- e.g.
pf..s
>
@
to result in
pfas => sapf
- In general:
abcd..ef..ghi => ghi..ef..abcd
- Added aliases
J and W for ʝ and ɯ respectively
Fixes
ʁ̞ is correctly encoded as [+cons]
- (Metathesis) Swapping segments of different lengths in the same syllable works as expected
- Corrected structure location error highlighting
- Removed redundant error locations from error messages
- Increased Stability
- Attempt to detect hanging rules and provide error to user
- Rules such as
$
>
a$
no longer hang
- Insertion rules with optionals that match zero times should no longer hang
- Potential matches with ellipsis input are not skipped if a previous match has the wrong environment
-
e.g.
k..h > & | #_
results in
ka.ko.he => ka.ho.ke
rather than previous
ka.ko.he => ka.ko.he
0.19
Web Changes
- Separate this changelog from main page to decrease unnecessary loads
- Add grabber on rule blocks on mobile for easier scrolling
- Add
handedness toggle for mobile so you can move rules with your preferred hand
- Decrease padding and margins to increase useful space
- When an error occurs, the erroring rule block is now highlighted
0.18
Library Changes
Structures and References now allowed inside sets
- Various bug fixes. See release notes
- Trying to swap syllables between words, i.e.
% ## % > &, now works
- Leading spaces before a phrase no longer affect output
- Avoided infinite loop after lengthening a segment in certain situations at the end of a word
- Enforce use of commas within a set i.e.
{p,t,k} not {ptk} (trailing comma allowed)
Web Changes
- Saves can now be shared
- Comments can now be retained in the output
- Finally moved input box to CodeMirror, allowing keybindings and syntax highlighting for comments
- Tab Indentation allowed in input and rule boxes, press
Escape beforehand to allow tab navigation
0.17
Library Changes
- Cross Boundary Interactions with
## allowing for External Sandhi, Rebracketing, and Affixation (see docs).
- New substitution implementation allowing for ellipses and implicit syllable boundary deletion/insertion.
- Retroflex diacritic
ʵ works as expected.
Variables are now called References.
- Long segments are correctly deleted and metathesised.
Web Changes
- Fixed potential HTML escaping issues when displaying errors.
- Ability to toggle output romanisation.
- Updated
pie-to-proto-germanic example save.
0.16
Library Changes
[-long] matrices match correctly after an ellipsis.
- A comment after a deletion rule with no environment no longer errors.
- Special environment checking works properly with a following comment.
- Reworked segment rendering to reduce weird edgecases.
Web Changes
- Comments delimited by
# now allowed in input.
- Added
pie-to-proto-germanic example save.
0.15
Library Changes
- Diacritic aliases are now preceded by
" instead of ^ to remove ambiguity between ʔ͡h and ʔʰ which are now ?^h and ?"h respectively.
- Added more inbuilt diacritic aliases using the new
" prefix.
- Removed dedicated americanist aliases in favour of custom aliasing. See release notes for a replacement.
- Prenasalised palatal and retroflex consonants now use consistent diacritics (
ᶮC and ᶯC respectively).
- Fixed infinite loop caused by erroneous use of
^ in certain situations.
- Fixed
qǀ, qǃ, qǁ, q‼, and qǂ being falsely encoded as +voice.
- Ellipses can now be wrapped in brackets i.e.
(..) to skip 'zero or more' segments instead of 'one or more' segments.
- Options and Sets are now allowed in non-output Structures.
Web Changes
- Added formatting options for output.
0.14
Web Changes
- Brand-new saving system allowing for multiple files to be loaded at once.
0.13
Web Changes
- Move(ing) to CodeMirror inputs and added syntax highlighting.
Colours are work in progress and probably will change!
- Add section collapse buttons for mobile and small screens to reduce scrolling.
- Added hotkeys for easier keyboard navigation.
0.12
Library Changes
- Inbuilt aliases for common diacritics.
- A
$ or * alone in the output of a deromanisation rule is now allowed.
- Added easy right-to-left propagation with the tilde
~ | ~> operator (see docs).
- Aliases now work correctly when tracing.
- Segment length character
ː is correctly omitted when removing a long segment.
Web Changes
- The values of any segments that couldn't be represented are now displayed at the bottom of the output.
- These unknown segments are colour-coded in the output for easier debugging.
- Traced rules are now highlighted.
0.11
Library Changes
- A given word or phrase can now be traced throughout its evolution.
- Multiple words can now be placed on the same line separated by a space.
- Fixed infinite loop when inserting after a boundary in certain cases.
Web Changes
- Ability to specify adding a rule to either the beginning or the end of the list.
- Ability to duplicate a given rule.
- Sticky UI elements to reduce scrolling.
0.10
Library Changes
- Rules can now have single-line comments delimited by
;;
- Multiple contiguous underlines are now allowed in environments.
- Environments can now be grouped so they can be checked all at once, similarly to a set (see docs).
- Structural Matching (see docs).
- Various performance improvements and bug fixes, see releases 0.5.0 and 0.5.1.
Web Changes
- Ability to temporarily enable/disable rules with quick global toggle button.
- Updated global rule collapse button change to also expand all.
0.8
Library Changes
- Added "voiced stridentised" diacritic. (release 0.3.1)
- Fixed bug whereby IPA literals with a feature alpha modifier were not correctly matching. (release 0.2.1)
- Fixed options falsely matching in certain situations (issue #3)
- Fixed some bugs regarding matching ipa
- Added normalisation for some precomposed Unicode characters
- Rule errors now show rule and line numbers
Web Changes
- Added changelog as modal dialog
- Working drag and drop on mobile
0.7
Library Changes
- Some common Americanist characters such as
ƛ can now be used (no longer supported as of v0.15)
- Rules with just whitespace no longer error
Web Changes
- Fixed some behavioural differences between chromium and firefox
Before 0.7
Library Changes
- Palatal lateral fricatives and affricates now use ExtIPA characters, matching their retroflex and velar counterparts
- Updated distinction between glides and their approximant counterparts
- Fixed neighbouring matches sometimes being skipped in substitution rule
- Added Strident diacritic to help catch possible errors when converting
+strid consonants
Web Changes
- Now require confirmation before deleting rules
- Added collapse and clear buttons