Roboter reden ein Wörtchen mit

Was sagt denn der Grammatik-Papst und Duden-Revisor Peter Eisenberg dazu:

Sprachwandel durch intelligente Maschinen?

In dieser Woche ist der neue Rechtschreibduden erschienen. Einen Tag zuvor war der Verkaufsstart von Google Home, dem “intelligenten Lautsprecher” mit Sprachfunktion. Zwei Ereignisse ohne Zusammenhang? Nein. Beide haben etwas mit Sprachwandel zu tun – dem realen, heutigen, und dem virtuellen, zukünftigen.

Sprachwandel kann viele Ursachen haben: kulturelle Einflüsse, Migration, Sprachkontakt, Medien, Bildungsprozesse oder sprachsystembedingte Faktoren etwa. Der Duden dokumentiert diesen Wandel für den Wortbestand des Deutschen. Die gerade erschienene 27. Auflage dieses Wörterbuchs, dessen Verlag “Bibliografisches Institut” inzwischen zur Cornelsen-Gruppe gehört, hat eine große Welle in den Medien nach sich gezogen mit den 5.000 Wörtern, die neu aufgenommen wurden. Gleichzeitig sind auch viele Wörter gegenüber der 26. Auflage verschwunden, “Jahr-2000-fähig” etwa. Bei manchen Wörtern ändern sich auch die Angaben zur Deklination oder Konjugation, zum Kasus, den ein Wort von einem anderen fordert, oder zur Bedeutung. All das lässt den kontinuierlichen Wandel, dem jede Sprache unterliegt, erkennbar werden, zumindest den Teil des Sprachwandels, der sich im Wortgebrauch manifestiert. Wandel im Bereich der Grammatik und der Sprachverwendung ist schwerer und vor allem nur langfristiger beizukommen. Aber auch diesen gibt es heute – die Diskussion um das “Kiezdeutsch”, das die Potsdamer Germanistin Heike Wiese in ihrem gleichnamigen Buch beschrieben hat (“Machst du rote Ampel!”), hat sich um diese Ebenen des Sprachsystems gedreht.

Sprachwandel nach der 4. Revolution

Bislang war der Sprachwandel immer von Menschen herbeigeführt worden, manchmal bewusst durch Sprachkritiker oder Grammatiker, zumeist jedoch unbewusst infolge unzähliger Kommunikationsereignisse in einer Sprachgemeinschaft und im Kontakt mit anderen Sprachgemeinschaften. Erstmals jedoch wird seit einigen Jahren die menschliche Sprache auch von Maschinen genutzt, Google Home ist dafür ebenso ein Beispiel wie das Gerät Echo von Amazon, Microsofts Cortana oder die vielen anderen mündlichen und schriftlichen Sprachautomaten, die es inzwischen gibt. Der Informationsphilosoph Luciano Floridi ist der Meinung, dass mit der Digitalisierung eine vierte kulturelle Revolution einhergeht, die das Selbstverständnis des Menschen so grundlegend wandeln wird wie schon die drei Revolutionen zuvor: die Kopernikanische Revolution, nach der sich der Mensch auf seiner Erde nicht mehr im Zentrum des Universums sehen kann; die Darwin-Revolution, die dem Menschen auch seine Sonderstellung in der Natur genommen hat; und die Revolution, die sich mit Freud, der Verhaltenspsychologie und den Neurowissenschaften verbindet. Mit dieser Revolution ist dem Mensch auch die Hoffnung genommen worden, zumindest der Herrschaft im eigenen Oberstübchen innezuhaben, seine Psyche und seine Handlungen also vollständig durch Introspektion verstehen zu können. Nach der vierten Revolution schließlich, der der intelligenten Maschinen, wird dem Menschen nun auch noch das letzte Bisschen seines humanen Selbstverständnisses genommen, seine Intelligenz, und mit ihr die verschiedenen Ausprägungen intelligenten Verhaltens, etwas das Kommunizieren in natürlicher Sprache.

Vier Konstellationen der Einflussnahme

Wenn nun also nicht mehr nur Menschen in natürlicher Sprache kommunizieren, sondern auch Maschinen mit dem Menschen und womöglich sogar Maschinen untereinander, stellt sich die Frage, wie sich dies langfristig auf den Sprachwandel auswirken mag. Ich meine, dass es vier verschiedene Konstellationen zu beachten gilt:

  1. Unterstützte menschliche Kommunikation:
    Dies ist schon heute beim Schreiben auf Smartphones weit verbreitet. Der Rechner macht Wortvorschläge, entweder zur Vervollständigung einer Zeichensequenz oder für das nächste Wort im Text. Damit wird ein Bias zur Verwendung bestimmter Wörter erzeugt und zur Nicht-Verwendung anderer. Wörter, die nicht im Smartphone-Wörterbuch enthalten sind, werden möglicherweise tendenziell vermieden, genauso wie grammatische Konstruktionen, die von einem System nicht durch Wortvorschläge unterstützt werden.
    Was wir bislang beim Tippen auf Smartphones erleben, dürfte beim unterstützten Schreiben erst der Anfang sein. Microsoft etwa arbeitet an Systemen, die das Schreiben in einer Fremdsprache unterstützen oder Umformulierungen vorschlagen. Ist so etwas erst einmal in Word & Co. integriert, dürfte eine Auswirkung auf die Schriftsprache offensichtlich werden. Schon heute sind gewisse Folgen der Computer-vermittelten Kommunikation festzustellen, wie etwa Christa Dürscheid und Karina Frick in ihrem Buch “Schreiben digital” zeigen.
  2. Kommunikation mit virtuellen Systemen:
    Damit sind Systeme wie das neue Google Home, Amazon Echo oder Microsoft Cortana gemeint. Derartige Systeme verfügen bislang über eine Sprachkompetenz, die nicht situationsbezogen ist. Dies betrifft sowohl die wahrnehmbare Situation, in der kommuniziert wird (was einen gerade umgibt), als auch die diskursive Situation (was bereits vorher gesagt worden ist). Trotzdem prägen auch diese Systeme die Kommunikation mit dem Menschen, und zwar im umgekehrten Sinne: Bauen wir nämlich Erfahrung darin auf, was solche Systeme verstehen (im lexikalischen und grammatischen Sinne), dann stellen wir uns nach und nach darauf ein – so sind wir Menschen nun einmal gestrickt. Bestimmte Wörter und Konstruktionen meiden wir, andere benutzen wir bevorzugt. Dadurch wird beim Menschen eine kognitive Verstärkung bewirkt, die man Entrenchment nennt. Und diese wiederum bewirkt längerfristig einen sprachlichen Wandel.
    Zwar dürfte all das noch keine Rolle spielen mit den paar sprachfähigen Geräten, die uns demnächst umgeben werden. Wenn man aber bedenkt, dass vor gerade einmal zehn Jahren das iPhone als erstes Smartphone im heutigen Sinne auf den Markt gekommen ist, vermag ich mir nicht vorzustellen, was mit virtuellen sprachlichen Systemen in zehn Jahren alles möglich sein wird.
  3. Kommunikation mit intelligenten Robotern:
    Auch wenn dies immer noch besonders futuristisch erscheint, so handelt es sich dabei doch um eine Computerlinguistik-Anwendung, an der seit mehr als 40 Jahren gearbeitet wird. Schon bei den ersten halbwegs intelligenten Robotern, ob real oder simuliert (etwa Shakey oder SHRDLU), war eine natürlichsprachliche Schnittstelle integraler Bestandteil. Ganz anders als bei virtuellen Systemen sind Roboter in eine reale Situation eingebettet, müssen sehen und agieren können, was sich auch in der Sprachnutzung niederschlägt. Idealerweise sollten intelligente Roboter auf kurze Hinweise und Anweisungen reagieren können, was die Sprachnutzung im Handlungszusammenhang beeinflusst. Sind wir erst einmal von Servicerobotern im Alltag umgeben, dürfte daraus ein spezifischer sprachlicher Anweisungsstil, womöglich ein moderner “Sklavenhalterstil” hervorgehen, wie ihn Menschen untereinander (hoffentlich) nicht verwenden würden. Auch dies dürfte ein Impuls für einen zumindest partiellen Sprachwandel darstellen.
  4. Kommunikation intelligenter Systeme untereinander:
    Auch für diesen Fall gibt es bereits Erkenntnisse: Vor kurzem ging ein Forschungsbericht durch die Wissenschaftsmedien, in dem es um zwei Software-Agenten der Facebook-Forschung ging, die in natürlicher Sprache miteinander verhandeln können. Eigentlich sollten diese Agenten mit Menschen in Chats interagieren, sie wurden aber testweise auch auf ihresgleichen losgelassen. Da es von den Programmierern versäumt worden war, die Verwendung von wohlgeformtem Englisch bei den sprachlichen Äußerungen zu fixieren, bildeten diese Verhandlungschatbots nach und nach ihre eigene Sprache aus, ohne sich weiter um Grammatik und Lexik der englischen Sprache zu scheren. Aussagen wie “i i can i i i everything else” erhielten dabei eine klare Funktion und Bedeutung, die sich aufgrund des inzwischen erfolgten Abstimmungs- und Lernprozesses der Systeme selbst kaum von ihren Programmierern entschlüsseln ließ.
    Ähnliches hatte bereits vor einigen Jahren der Belgische KI-Forscher Luc Steels erreicht. In seinem “Talking Heads”-Experiment entwickelten Roboter durch verschiedene Sprachspiele ihr eigenes Vokabular und ihre eigene Grammatik. Steels wollte damit auch einen Betrag leisten zum Verständnis der Sprachentwicklung überhaupt, insbesondere zu der klassische Frage, wie sprachliche Symbole ihre intersubjektive Bedeutung erhalten haben.
    Dass die Kommunikation intelligenter System untereinander einmal einen Einfluss auf den Sprachwandel menschlicher Sprachen haben wird, bezweifle ich. Die Betrachtung dieser Art des Sprachwandels aber bildet eine wichtige Quelle zum Verständnis des Sprachwandels in menschlichen Gemeinschaften.

Sprachwandel ist nach einem halben Jahrhundert Abstinenz wieder zu einem großen Thema der Sprachwissenschaft geworden. Anders als früher wird dieser heute anhand großer digitaler Korpora untersucht. Für viele Bereiche der Computer-vermittelten oder Computer-beeinflussten Sprachverwendung existieren allerdings noch keine Referenzkorpora. Es steht zu erwarten, dass wir das Signal der Digitalisierung in der Daten bald deutlicher werden erkennen können.

Beitragsbild: Replikat von Walter Schulze-Mittendorffs Maschinenmensch Maria aus Fritz Langs Film “Metropolis” von 1927 (Ausschnitt). Quelle: WikipediaCC BY-SA 2.0

Veröffentlicht von

www.lobin.de

Henning Lobin ist seit 1999 Professor für Angewandte Sprachwissenschaft und Computerlinguistik an der Justus-Liebig-Universität Gießen. Von 2007 bis 2016 leitete er dort das interdisziplinäre Zentrum für Medien und Interaktivität, in dem die Auswirkungen von neuen Kommunikationsformen auf Wissenschaft, Kultur und Bildung untersucht werden. Seine Forschungsschwerpunkte bilden die Texttechnologie, die multimediale Wissenschaftskommunikation und der medienkulturelle Wandel durch die Digitalisierung. Gegenwärtig ist er u.a. Mitglied im wissenschaftlichen Beirat des Instituts für deutsche Sprache in Mannheim und des Fachkollegiums "Sprachwissenschaft" bei der Deutschen Forschungsgemeinschaft. Bei den SciLogs ist Henning Lobin Autor des Blogs "Die Engelbart-Galaxis" und Gast-Autor im Blog "Wissenschaftskommunikation hoch 3" der ACATECH, für die er auch als externer Experte für Fragen der Wissenschaftskommunikation in sozialen Medien fungiert. Lobin ist Autor von sieben Monografien und hat zahlreiche Sammelbände herausgegeben (Bücher bei Amazon, bei Buch.de und im Buchhandel). Zuletzt erschienen: Engelbarts Traum (Campus, 2014).

Der Sprachwandel zeigt sich in verkürzten Sätzen, weggelassenen Präpositionen, in Internetkürzeln.
Das kommt daher, dass die meisten nicht mit 10 Fingern eintippen können und mit nur 2 Fingern zu schreiben, dauert es zu lange. Also opfert man einen korrekten Satz einer verkrüppelten Verkürzung.
Dazu kommen natürlich noch die vielen Fachsubstantive, die man auch noch verbalisiert oder adjektivisiert.

In meinem Umfeld kenne ich kaum jemanden, der mit Siri, Cortana oder Alexa (Amazon) kommuniziert oder auch nur regelmässig Fragen stellt. Und das obwohl ich in einem Informatikumfeld tätig bin. Doch in diesem Umfeld wird heute vor allem getippt und nur wenig gesprochen.
Es hat sicher auch mit Gewohnheiten zu tun. Ich weiss zwar, dass ich Siri einfach diktieren könnte: “Stelle den Wecker auf 7:30”, doch das mache ich bis jetzt manuell und sehe auch keinen Grund, das zu ändern.
In den USA scheint aber beispielsweise Alexa schon eine ansehnliche Benutzergemeinde zu haben. In einer Dokumentation dazu erfuhr ich von einem Altersheim/Pflegeheim in dem Alexa von beispielsweise Sehschwachen/Teilblinden benutzt wird um Informationen über das Wetter und vieles mehr abzufragen oder um sich vorlesen oder alte Hits abspielen zu lassen. Das heisst, solche automatischen Zuhörer und “Versteher” können (Teil-)Behinderungen überwinden helfen.
Menschen ohne Behinderungen benutzen Alexa beispielsweise um sich während des Kochens ein Rezept vorlesen zu lassen oder überhaupt um während des häuslichen Arbeitens Rückfrage- und Unterhaltungsmöglichkeiten zu haben. Es braucht dann keine Tastatur, keine PC zu dem man laufen muss, sondern man frägt während des Kochens, Putzens, etc. Alexa, damit sie einem Hilfestellung gibt oder einen mit Musik, dem Wetterbericht unterhält oder damit es einen mit einem Bekannten telephonisch verbindet.

Doch von zwischenmenschlicher Kommunikation ist auch Alexa noch meilenweit entfernt. Das Sprachverständnis all dieser zuhörenden Assistenten ist sehr beschränkt.

@ Herr Holzherr :

Die “Pflegerobbe” Paro nicht zu vergessen, oder Eliza; helfen tut hier wohl entscheidend nur die Demenz, Abnehmerzufriedenheit meinend.

Insgesamt nerven den Schreiber dieser Zeilen, den Webbaer, auch Erfolgsmeldungen zunehmend ab, er ist vor vielen Jahren selbst ein wenig, auch im SciFi-Kontext, womöglich hat niemand mehr technische SciFi der Sechziger gelesen, als jemand, der jetzt noch lebt, irritiert worden.

Auch hier – ‘Nach der vierten Revolution schließlich, der der intelligenten Maschinen, wird dem Menschen nun auch noch das letzte Bisschen seines humanen Selbstverständnisses genommen, seine Intelligenz, und mit ihr die verschiedenen Ausprägungen intelligenten Verhaltens, etwas das Kommunizieren in natürlicher Sprache.’ – weiß Dr. Webbaer nicht so recht, ‘das letzte Bisschen seines humanen Selbstverständnisses’, tsk, tsk…

Marketing, es müsste Marketing vorliegen, die AI hat keineswegs derart, auch bei stark zunehmender CPU-Leistung, in den letzten Jahrzehnten derart geleistet, wie einstmals versprochen, und sie scheint nicht dabei zu sein, dies zukünftig zu tun, wie später versprochen.

Die Grenzen der Welten sind halt unüberwindbar, “Paro 3.0” wird ein schlaues Kerlchen sein, auch womöglich sehr putzig, aber doch ganz primär in seiner Welt unterwegs.
In puncto Linguistik wird hier Honig zu saugen sein, den teils auch sprachlich minderbemittelten hier gemeinten Primaten sozusagen bestmöglich zu unterstützen; Gegner dieser Entwicklung ist Dr. Webbaer selbstverständlich nicht.
Jede “Pflegerobbe” könnte die letzte sein.

MFG
Dr. Webbaer

Die “Drei Revolutionen” des hier gemeinten Primaten, sind dem Schreiber dieser Zeilen als die der Schrift, die des Buchdrucks und die der netzwerkbasierten (auch : globalen) Kommunikation, als die des “Webs” bekannt.

Inwieweit subordinierter Sprachmissbrauch, sog. Kiezdeutsch beispielsweise, hier hinein spielt, “Isch gehen Döner” hier als Exempel, sollen andere beurteilen, gerne auch “hypen”, wenn ihnen danach ist.

Ansonsten, vgl. mit ‘i i can i i i everything else’, der Webbaer hat sich einige Texte zu dieser Sache durchgelesen, darf womöglich auch hier gehofft werden, von anderen, dass sich auch die Sprache der AI günstig und vor allem auch : divers entwickelt.
(Der Webbaer ist sich sicher, dass Sätze, wie die zitierten, die auf ein ‘I i i i i i i i i i i i i i i i i i i I i i i i i i i i i i i i i i i i i i’, also bildlich gesprochen vierzigfach auf ein ‘I’ hinaus laufen, nicht allzu viel Semantik transportieren werden. – Womöglich hapert es hier i.p. AI ein wenig und besonderes Erkennen muss nicht vermutet werden; medienwirksam war’s natürlich schon, aber derartige Gags der AI bereichern die Nachrichtengebung bereits seit geraumer Zeit. Vielleicht wissen Sie genau hierzu mehr, lieber Herr Dr. Lobin; dies dann auch gerne substanziiert beibringen, hier, womöglich.)


Ansonsten, die Sprache entwickelt sich sozusagen in atemberaubenden Tempo, jeden Tag werden neue Wörter erfunden, sinnhafterweise, die “Eingabehilfen” schaden keineswegs, und der Schreiber dieser Zeilen kann sich auch vorstellen, dass zwischen Maschinen Geteiltes auch bspw. der menschlichen Sprache ähnlich, in Form sogenannter XML-Dokumente, mehr und mehr stattfinden wird, also durchaus der menschlichen Sprache ähnlich.

Wobei die Maschinen die Welt verstehen müssten, was für sie nicht geht, jedenfalls nicht so wie im von dem hier gemeinten Primaten gemeinten Sinne; allerdings ist die Humansprache womöglich auch, wegen ihren Dichte i.p. Inhalt, für die Automaten geeignet, selbst wenn sie sie nicht verstehen.

MFG + schönes Wochenende schon einmal,
Dr. Webbaer

Zur (Zitat) Kommunikation mit intelligenten Robotern und zur (Zitat) Kommunikation intelligenter Systeme untereinander
Für die heutige Generation von Haushaltsrobotern wie Roomba, dem Staubsaugerroboter oder Mäh- und Gartenrobotern ist die Kommunikation heute auf das Abstecken der Arbeitsfläche durch den Besitzer beschränkt. Diese Roboter für den Hausgebrauch sind heute nicht humanoid. In der nahen Zukunft könnten sich solche Haushaltshilfen ähnlich wie Haustiere einweisen lassen – also durch Gesten, Fingerzeig etc.
Staubsauger, Garten- und Mähroboter sind heute meist auf Karten ihrer Arbeitsumgebung angewiesen. Allerdings erstellen sie diese Karten selber. Und iRobot, der Hersteller von Roomba denkt daran, die dabei erhobenen Daten an andere Firmen weiterzugeben, die im Umfeld des Smart Home anzusiedeln sind So sieht also die Kommunikation intelligenter Systeme untereinandern heute aus: es werden Kundendaten untereinander ausgetauscht um weitere Produkte zu unterstützen.

Das EU-Projekt Companions for Seniors Citizens geht in der Mensch-Maschinenkommunikation wesentlich weiter will es doch älteren Menschen den
1) Zugang zu den Internetdienstleistungen über eine Art Internet-Assistent erleichtern – einen Internet-Assistenten, der weiss wie man Internetdienste anspricht und der vom Benutzer sprachliche Befehle akzeptiert.
2) älteren Menschen durch den Alltag helfen (Getränke einschenken und servieren, etc)

Vor allem 2) scheint mir sehr ambitioniert und heute wohl noch nicht alltagstauglich.

Vortrag am Donnerstag in der Digital Eatery: der Gutenberg-Editor

Digital Eatery, Unter den Linden 17, Donnerstag 19 Uhr im Rahmen des WordPress Meetup Berlin gibts nen Vortrag von Maja Benke über den neuen Editor für WordPress: Gutenberg.

Gutenberg

Description

The goal of the block editor is to make adding rich content to WordPress simple and enjoyable.

Warning: This is beta software, do not run on production sites!

The new post and page building experience will make writing rich posts effortless, making it easy to do what today might take shortcodes, custom HTML, or “mystery meat” embed discovery.

WordPress already supports a large amount of “blocks”, but doesn’t surface them very well, nor does it give them much in the way of layout options. By embracing the blocky nature of rich post content, we will surface the blocks that already exist, as well as provide more advanced layout options for each of them. This will allow you to easily compose beautiful posts like this example.

Gutenberg is built by many contributors and volunteers. You can see the full list of contributors in the GitHub CONTRIBUTORS.md file which we are continuously updating. You can follow along on github.com/WordPress/gutenberg and on the #editor tag on the make.wordpress.org blog.

FAQ

How can I send feedback or get help with a bug?

We’d love to hear your bug reports, feature suggestions and any other feedback! Please head over to the GitHub issues page to search for existing issues or open a new one. While we’ll try to triage issues reported here on the plugin forum, you’ll get a faster response (and reduce duplication of effort) by keeping everything centralized in the GitHub repository.

How can I contribute?

The more the merrier! To get started, check out our guide for contributors.

Reviews

Good concept for power users

I like the concept of Gutenberg, its like dawn of next era but this is going to make average users (most of my clients) go nuts. My clients are still unable to adapt to the TinyMCE editor which is very easy to work with. Gutenberg I’m afraid may make them shun using wordpress, my request is if you include Gutenberg in core then please make it optional don’t make it the default editor. Remember simplicity is what people love about WordPress.

I would also like to add one more thing, the concept of Gutenberg is good but UI is confusing (for average users), you need to do lot of improvements like instead of text columns just make them into ‘columns’ that can accommodate anything (image block, video embed or a button) like bootstrap rows and columns’col-md-4′.

For the button text i think it would be better if we can be able to enter / change button text from ‘block’ area you know there is hex color field there you can add a field called ‘button text’ below hex field.

If there is a place to give suggestions for improvements let me know i will post it there. Thnx

2 stars for design, but please don’t put this in core

Have installed Gutenberg and tried adding a post..

  • It’s unclear to me why in certain cases I can change the block-type afterwards, but in other cases I cannot change it (or have fewer options to choose from).
  • I don’t understand button “Show inspector”… it doesn’t seem to do anything. And no additional info is provided when I hover the button. Or am I missing something here?
  • Glad to find out there’s still a “Classic Text” feature (current native tinyMCE editor). Without that many useful editor features will not be available.

I call this a basic page builder. I don’t like it, the tinyMCE driven editor should stay the native editor. Why? Because it’s much easier to add content to a post. Sorry.

Great but don’t eliminate MCE text editor

Reason I like:

As fan of page builder, Gutenberg definitely what a page builder should.
The block & components are more robust and better integrated to core.

I have forked a page builder. After seeing Gutenberg, I will port my work to make it as Gutenberg extension.

Gutenberg is great for news publishing & some blog.

Reason I dislike:

If Gutenberg completely replace MCE text editor, many people having hard time. In fact, many people really comfortable with MCE text editor. For some website, we only need MCE text editor.

Even some e-commerce website only need plain textarea. Gutenberg will ruin it.

If custom post type & field get disabled, it is so bad. Custom post type & field is not optional things.

I hope Gutenberg will not disturb the current functionality.

I voted many stars, but worry if any functionality get disabled.

We still have time btw.

Over simplimied UI, bad UX

The UI is over simplified and somewhat tries to copy medium. Though this can be a good thing for bloggers who only blog it is useless for most. The editor tries to achieve complex task through confusing UI and bad UX.

The main problem is, it deviate too much from original TinyMCE. And possibly makes advance use a bit impossible to use. It will also probably break lots of Plugins and Themes.

Probably need to move few things here and there. or add kitchen shink and other toolbard option at top.

Pro:
The formatting of post created from it is beautiful.

Image quick mockup
http://imgur.com/a/QDC47

Read all 95 reviews

Contributors & Developers

“Gutenberg” is open source software. The following people have contributed to this plugin.

Contributors

Translate “Gutenberg” into your language.

Interested in development?

Browse the code or subscribe to the development log by RSS.

Changelog

0.9.0

  • Added ability to change font-size in cover text using slider and number input.
  • Added support for custom anchors (ids) on blocks, allowing to link directly to a section of the post.
  • Updated pull-quote design.
  • Created custom color palette component with “clear” option and “custom color” option. (And better markup and accessibility.)
  • Improve pasting: recognizing more elements, adding tests, stripping non-semantic markup, etc.
  • Improve gallery visual design and fix cropping in Safari.
  • Allow selecting a heading block from the table-of-contents panel directly.
  • Make toolbar slide horizontally for mobile.
  • Improve range-input control with a number input.
  • Fix pasting problems (handling of block attributes).
  • More stripping of unhandled elements during paste.
  • Show post format selector only for posts.
  • Display nicer URLs when editing links.
  • More compact save indicator.
  • Disabled arrow key navigation between blocks as we refine implementation.
  • Removed blank target from “view post” in notices.
  • Fix empty links still rendering ont he front-end.
  • Fix shadow on inline toolbars.
  • Fix problem with inserting pull-quotes.
  • Fix drag and drop on image block.
  • Removed warning when publishing.
  • Don’t provide version for vendor scripts.
  • Clean category code in block registration.
  • Added history and resources docs.

0.8.0

  • New Categories Block (based on existing widget).
  • New Text Columns Block (initial exploration of text-only multiple columns).
  • New Video Block.
  • New Shortcode Block.
  • New Audio Block.
  • Added resizing handlers to Image Block.
  • Added direct image upload button to Image Block and Gallery Block.
  • Give option to transform a block to Classic when it encounters problems.
  • Give option to Overwrite changes on a block detected as invalid.
  • Added “link to” option in galleries.
  • Added support for custom taxonomies.
  • Added post formats selector to post settings.
  • Added keywords support (aliases) to various blocks to improve search discovery.
  • Significant improvements to the way attributes are specified in the Block API and its clarity (handles defaults and types).
  • Added Tooltip component displaying aria-labels from buttons.
  • Removed stats tracking code.
  • Updated design document.
  • Capture and recover from block rendering runtime errors.
  • Handle enter when focusing on outer boundary of a block.
  • Reduce galleries json attributes data to a minimum.
  • Added caption styles to the front-end for images and embeds.
  • Added missing front-end alignment classes for table and cover-text blocks.
  • Only reset blocks on initial load to prevent state fluctuations.
  • Improve calculation of dirty state by making a diff against saved post.
  • Improve visual weight of toolbar by reducing its silhouette.
  • Improve rendering of galleries on the front-end.
  • Improve Cover Image placeholder visual presentation.
  • Improve front-end display of quotes.
  • Improve responsive design of galleries on the front-end.
  • Allow previewing new posts that are yet to be saved.
  • Reset scrolling position within inserter when switching tabs.
  • Refactor popover to render at root of document.
  • Refactor withFocusReturn to handle accessibility better in more contexts.
  • Prevent overlap between multi-selection and within-block selection.
  • Clear save notices when triggering a new save.
  • Disable “preview” button if post is not saveable.
  • Renamed blocks.query to blocks.source for clarity and updated documentation.
  • Rearrange block stylesheets to reflect display and editor styles.
  • Use @wordpress dependencies consistently.
  • Added validation checks for specifying a block’s category.
  • Fix problems with quote initialization and list transformation.
  • Fix issue where Cover Image was being considered invalid after edits.
  • Fix errors in editable coming from Table block commands.
  • Fix error in latest posts block when date is not set for a post.
  • Fix issue with active color in ColorPalette component.
  • Prevent class=false serialization issue in covert-text.
  • Treat range control value as numeric.
  • Added warning when using Editable and passing non-array values.
  • Show block switcher above link input.
  • Updated rememo dependency.
  • Start consuming from separate @wordpress dependencies.
  • Fix problem with inserting new galleries.
  • Fix issue with embeds and missing captions.
  • Added outreach section to docs.

0.7.1

  • Address problem with the freeform block and Jetpack’s contact form.

0.7.0

  • Hide placeholders on focus—reduces visual distractions while writing.
  • Add PostAuthor dropdown to the UI.
  • Add theme support for customized color palettes and a shared component (applies to cover text and button blocks).
  • Add theme support for wide images.
  • Report on missing headings in the document outline feature.
  • Update block validation to make it less prone to over-eagerness with trivial changes (like whitespace and new lines).
  • Attempt to create an embed block automatically when pasting URL on a single line.
  • Save post before previewing.
  • Improve operations with “lists”, enter on empty item creates new paragraph block, handling backspace, etc.
  • Don’t serialize attributes that match default attributes.
  • Order link suggestions by relevance.
  • Order embeds for easier discoverability.
  • Added “keywords” property for searching blocks with aliases.
  • Added responsive styles for Table block in the front end.
  • Set default list type to be unordered list.
  • Improve accessibility of UrlInput component.
  • Improve accessibility and keyboard interaction of DropdownMenu.
  • Improve Popover component and use for PostVisibility.
  • Added higher order component for managing spoken messages.
  • Localize schema for WP API, avoiding initialization delay if schema is present.
  • Do not expose editor.settings to block authors.
  • Do not remove tables on pasting.
  • Consolidate block server-side files with client ones in the same directory.
  • Removed array of paragraphs structure from text block.
  • Trim whitespace when searching for blocks.
  • Document, test, and refactor DropdownMenu component.
  • Use separate mousetrap instance per component instance.
  • Add npm organization scope to WordPress dependencies.
  • Expand utilities around fixture regeneration.
  • Renamed “Text” to “Paragraph”.
  • Fix multi-selection “delete” functionality.
  • Fix text color inline style.
  • Fix issue caused by changes with React build process.
  • Fix splitting editable without child nodes.
  • Use addQueryArgs in oEmbed proxy url.
  • Update dashicons with new icons.
  • Clarify enqueuing block assets functions.
  • Added code coverage information to docs.
  • Document how to create new docs.
  • Add example of add_theme_support in docs.
  • Added opt-in mechanism for learning what blocks are being added to the content.

0.6.0

  • Split paragraphs on enter—we have been exploring different behaviours here.
  • Added grid layout option for latest posts with columns slider control.
  • Show internal posts / pages results when creating links.
  • Added “Cover Text” block with background, text color, and full-width options.
  • Autosaving drafts.
  • Added “Read More” block.
  • Added color options to the button block.
  • Added mechanism for validating and protecting blocks that may have suffered unrecognized edits.
  • Add patterns plugin for text formatting shortcuts: create lists by adding * at the beginning of a text line, use # to create headings, and backticks for code.
  • Implement initial support for Cmd/Ctrl+Z (undo) and Cmd/Ctrl+Shift+Z (redo).
  • Improve pasting experience from outside editors by transforming content before converting to blocks.
  • Improve gallery creation flow by opening into “gallery” mode from placeholder.
  • Added page attributes with menu order setting.
  • Use two distinct icons for quote style variations.
  • Created KeyboardShortcuts component to handle keyboard events.
  • Add support for custom icons (non dashicons) on blocks.
  • Initialize new posts with auto-draft to match behaviour of existing editor.
  • Don’t display “save” button for published posts.
  • Added ability to set a block as “use once” only (example: “read more” block).
  • Hide gallery display settings in media modal.
  • Simplify “cover image” markup and resolve conflict state in demo.
  • Introduce PHP classes for interacting with block types.
  • Announce block search results to assistive technologies.
  • Reveal “continue writing” shortcuts on focus.
  • Update document.title when the post title changes.
  • Added focus styles to several elements in the UI.
  • Added external-link component to handle links opening in new tabs or windows.
  • Improve responsive video on embed previews.
  • Improve “speak” messages for tag suggestions.
  • Make sure newly created blocks are marked as valid.
  • Preserve valid state during transformations.
  • Allow tabbing away from table.
  • Improve display of focused panel titles.
  • Adjust padding and margins across various design elements for consistency and normalization.
  • Fix pasting freeform content.
  • Fix proper propagation of updated block attributes.
  • Fix parsing and serialization of multi-paragraph pullquotes.
  • Fix a case where toggling pending preview would consider post as saved.
  • Fix positioning of block mover on full-width blocks.
  • Fix line height regression in quote styles.
  • Fix IE11 with polyfill for fetch method.
  • Fix case where blocks are created with isTyping and it never clears.
  • Fix block warning display in IE11.
  • Polish inspector visual design.
  • Prevent unhandled actions from returning new state reference.
  • Prevent unintentionally clearing link input value.
  • Added focus styles to switch toggle components.
  • Avoid navigating outside the editor with arrow keys.
  • Add short description to Verse block.
  • Initialize demo content only for new demo posts.
  • Improve insert link accessibility.
  • Improve version compare checks for plugin compatibility.
  • Clean up obsolete poststoshowattribute in LatestPosts block.
  • Consolidate addQueryArgs usage.
  • Add unit tests to inserter.
  • Update fixtures with latest modifications and ensure all end in newlines.
  • Added codecov for code coverage.
  • Clean up JSDoc comments.
  • Link to new docs within main readme.

0.5.0

  • New tabs mode for the sidebar to switch between post settings and block inspector.
  • Implement recent blocks display.
  • Mobile implementation of block mover, settings, and delete actions.
  • Search through all tabs on the inserter and hide tabs.
  • New documentation app to serve all tutorials, faqs, docs, etc.
  • Enable ability to add custom classes to blocks (via inspector).
  • Add ability to drag-and-drop on image block placeholders to upload images.
  • Add “table of contents” document outline for headings (with empty heading validation).
  • Refactor tests to use Jest API.
  • New block: Verse (intended for poetry, respecting whitespace).
  • Avoid showing UI when typing and starting a new paragraph (text block).
  • Display warning message when navigating away from the editor with unsaved changes.
  • Use old editor as “freeform”.
  • Improve PHP parser compatibility with different server configurations (“mbstring” extension and PCRE settings).
  • Improve PostVisibility markup and accessibility.
  • Add shortcuts to manage indents and levels in List block.
  • Add alignment options to latest posts block.
  • Add focus styles for quick tags buttons in text mode.
  • Add way to report PHP parsing performance.
  • Add labels and roles to UrlInput.
  • Add ability to set custom placeholders for text and headings as attributes.
  • Show error message when trashing action fails.
  • Pass content to dynamic block render functions in PHP.
  • Fix various z-index issues and clarify reasonings.
  • Fix DropdownMenu arrows navigation and add missing aria-label.
  • Update sandboxed iframe size calculations.
  • Export inspector controls component under wp.blocks.
  • Adjust Travis JS builds to improve task allocation.
  • Fix warnings during tests.
  • Fix caret jumping when switching formatting in Editable.
  • Explicitly define prop-types as dependency.
  • Update list of supported browsers for consistency with core.

0.4.0

  • Initial FAQ (in progress).
  • API for handling pasted content. (Aim is to have specific handling for converting Word, Markdown, Google Docs to native WordPress blocks.)
  • Added support for linking to a url on image blocks.
  • Navigation between blocks using arrow keys.
  • Added alternate Table block with TinyMCE functionality for adding/removing rows/cells, etc. Retired previous one.
  • Parse more/noteaser comment tokens from core.
  • Re-engineer the approach for rendering embed frames.
  • First pass at adding aria-labels to blocks list.
  • Setting up Jest for better testing environment.
  • Improve performance of server-side parsing.
  • Update blocks documentation with latest API functions and clearer examples.
  • Use fixed position for notices.
  • Make inline mode the default for Editable.
  • Add actions for plugins to register frontend and editor assets.
  • Supress gallery settings sidebar on media library when editing gallery.
  • Validate save and edit render when registering a block.
  • Prevent media library modal from opening when loading placeholders.
  • Update to sidebar design and behaviour on mobile.
  • Improve font-size in inserter and latest posts block.
  • Improve rendering of button block in the front end.
  • Add aria-label to edit image button.
  • Add aria-label to embed input url input.
  • Use pointer cursor for tabs in inserter.
  • Update design docs with regard to selected/unselected states.
  • Improve generation of wp-block-* classes for consistency.
  • Select first cell of table block when initializing.
  • Fix wide and full alignment on the front-end when images have no caption.
  • Fix initial state of freeform block.
  • Fix ability to navigate to resource on link viewer.
  • Fix clearing floats on inserter.
  • Fix loading of images in library.
  • Fix auto-focusing on table block being too agressive.
  • Clean double reference to pegjs in dependencies.
  • Include messages to ease debugging parser.
  • Check for exact match for serialized content in parser tests.
  • Add allow-presentation to fix issue with sandboxed iframe in Chrome.
  • Declare use of classnames module consistently.
  • Add translation to embed title.
  • Add missing text domains and adjust PHPCS to warn about them.
  • Added template for creating new issues including mentions of version number.

0.3.0

  • Added framework for notices and implemented publishing and saving ones.
  • Implemented tabs on the inserter.
  • Added text and image quick inserts next to inserter icon at the end of the post.
  • Generate front-end styles for core blocks and enqueue them.
  • Include generated block classname in edit environment.
  • Added “edit image” button to image and cover image blocks.
  • Added option to visually crop images in galleries for nicer alignment.
  • Added option to disable dimming the background in cover images.
  • Added buffer for multi-select flows.
  • Added option to display date and to configure number of posts in LatestPosts block.
  • Added PHP parser based on PEG.js to unify grammars.
  • Split block styles for display so they can be loaded on the theme.
  • Auto-focusing for inserter search field.
  • Added text formatting to CoverImage block.
  • Added toggle option for fixed background in CoverImage.
  • Switched to store attributes in unescaped JSON format within the comments.
  • Added placeholder for all text blocks.
  • Added placeholder text for headings, quotes, etc.
  • Added BlockDescription component and applied it to several blocks.
  • Implemented sandboxing iframe for embeds.
  • Include alignment classes on embeds with wrappers.
  • Changed the block name declaration for embeds to be “core-embed/name-of-embed”.
  • Simplified and made more robust the rendering of embeds.
  • Different fixes for quote blocks (parsing and transformations).
  • Improve display of text within cover image.
  • Fixed placeholder positioning in several blocks.
  • Fixed parsing of HTML block.
  • Fixed toolbar calculations on blocks without toolbars.
  • Added heading alignments and levels to inspector.
  • Added sticky post setting and toggle.
  • Added focus styles to inserter search.
  • Add design blueprints and principles to the storybook.
  • Enhance FormTokenField with accessibility improvements.
  • Load word-count module.
  • Updated icons for trash button, and Custom HTML.
  • Design tweaks for inserter, placeholders, and responsiveness.
  • Improvements to sidebar headings and gallery margins.
  • Allow deleting selected blocks with “delete” key.
  • Return more than 10 categories/tags in post settings.
  • Accessibility improvements with FormToggle.
  • Fix media button in gallery placeholder.
  • Fix sidebar breadcrumb.
  • Fix for block-mover when blocks are floated.
  • Fixed inserting Freeform block (now classic text).
  • Fixed missing keys on inserter.
  • Updated drop-cap class implementation.
  • Showcasing full-width cover image in demo content.
  • Copy fixes on demo content.
  • Hide meta-boxes icons for screen readers.
  • Handle null values in link attributes.

0.2.0

  • Include “paste” as default plugin in Editable.
  • Extract block alignment controls as a reusable component.
  • Added button to delete a block.
  • Added button to open block settings in the inspector.
  • New block: Custom HTML (to write your own HTML and preview it).
  • New block: Cover Image (with text over image support).
  • Rename “Freeform” block to “Classic Text”.
  • Added support for pages and custom post types.
  • Improve display of “saving” label while saving.
  • Drop usage of controls property in favor of components in render.
  • Add ability to select all blocks with ctrl/command+A.
  • Automatically generate wrapper class for styling blocks.
  • Avoid triggering multi-select on right click.
  • Improve target of post previewing.
  • Use imports instead of accessing the wp global.
  • Add block alignment and proper placeholders to pullquote block.
  • Wait for wp.api before loading the editor. (Interim solution.)
  • Adding several reusable inspector controls.
  • Design improvements to floats, switcher, and headings.
  • Add width classes on figure wrapper when using captions in images.
  • Add image alt attributes.
  • Added html generation for photo type embeds.
  • Make sure plugin is run on WP 4.8.
  • Update revisions button to only show when there are revisions.
  • Parsing fixes on do_blocks.
  • Avoid being keyboard trapped on editor content.
  • Don’t show block toolbars when pressing modifier keys.
  • Fix overlapping controls in Button block.
  • Fix post-title line height.
  • Fix parsing void blocks.
  • Fix splitting inline Editable instances with shift+enter.
  • Fix transformation between text and list, and quote and list.
  • Fix saving new posts by making post-type mandatory.
  • Render popovers above all elements.
  • Improvements to block deletion using backspace.
  • Changing the way block outlines are rendered on hover.
  • Updated PHP parser to handle shorthand block syntax, and fix newlines.
  • Ability to cancel adding a link from link menu.

0.1.0

  • First release of the plugin.