What's new

0.19 — Coming Soon

13th May: Apologies for the delay on releasing 0.19. To make up for it, this release will have a few more features than planned. I'm currently implementing a full rework of sets so that they are more powerful and useful than current.

Library Changes (Not yet live)

  • 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.

  • 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], e:[+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, e}:[+long] rather than {i:[+long], e:[+long]}

  • Fixes to Metathesis logic
    • Swapping segments of different lengths in the same syllable works as expected
    • Ellipses will act to group elements on either side (exact behaviour to be determined)
      • e.g. pf..s > & to result in pfas => sapf

  • Corrected some error highlighting

Web Changes (Already live)

  • 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

Web Changes (Not yet live)

  • Ability to see which words have been affected by the last run

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‼, and 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.9

Library Changes

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