DE: Kommata

Hallo,

ich konnte bisher keine Regeln zu den Kommata finden und bei Infinitivkonstruktionen bekomme ich auch keine Fehlermeldungen. Ich habe mich deshalb an dem Regel-Tool probiert, speziell für Regel 117 , allerding ohne Erfolg.

Dies ist wohlgemerkt mein erster Versuch, hier etwas beizusteuern.

Vielleicht gibt es also schon elaborierte Kommata-Regeln, die noch nicht live sind (und die ich auch nicht über Google, Github und die Forensuche finden konnte).

<!-- German rule, 2015-07-23 -->

<rule id="ID" name="Infinitivgruppen Komma">    
     <pattern>
      <token regexp='yes'>als|anstatt|außer|ohne|um</token>
      <token postag='INF'></token>
     </pattern>
     <message>Infinitivgruppen werden durch Komma abgetrennt, wenn Sie mit „als", „anstatt", „außer", „ohne", „statt" oder „um" eingeleitet werden</message>
     <url>http://www.duden.de/sprachwissen/rechtschreibregeln/komma#K117</url>
     <short>Komma setzen</short>
     <example correction=''>Ich kenne nichts Schöneres als mit einem guten Buch am Kamin zu sitzen.</example>
     <example>Ich kenne nichts Schöneres, als mit einem guten Buch am Kamin zu sitzen.</example>
     <example correction=''>Du könntest auch einfach anrufen anstatt einen Brief zu schreiben.</example>
     <example>Du könntest auch einfach anrufen, anstatt einen Brief zu schreiben.</example>
     <example correction=''>Ihr könnt nichts tun außer abzuwarten.</example>
     <example>Ihr könnt nichts tun, außer abzuwarten.</example>
     <example correction=''>Er antwortete ohne gefragt worden zu sein.</example>
     <example>Er antwortete, ohne gefragt worden zu sein.</example>
     <example correction=''>Wir wollen helfen statt nur zu reden.</example>
     <example>Wir wollen helfen, statt nur zu reden.</example>
     <example correction=''>Sie ging nach Hause um sich umzuziehen.</example>
     <example>Sie ging nach Hause, um sich umzuziehen.</example>
    </rule>

Hallo,

bisher haben wir nur wenige Regeln zu Kommas (LanguageTool-Regeln: 35 Treffer für German). Deine Regel funktioniert so nicht, weil es eine Wortart “INF” nicht gibt. Wenn man z. B. das Wort “abzuwarten” analysiert (“Show analysis” im Rule Editor) sieht man, dass es die Wortart VER:EIZ:SFT hat (eine Beschreibung gibt es unter http://www.wolfganglezius.de/lib/exe/fetch.php?media=cl:wklassen.pdf). Man könnte die Formen mit “zu” also finden mit “VER:EIZ:.*”. Für die Varianten in denen das “zu” im Wort steht oder nicht und der Infinitiv vor/nach dem Komma braucht man dann jeweils eine Variante der Regel.

Grüße

Daniel

Hallo mcbetz,

danke für dein Interesse und deinen Beitrag! In der Tat gibt es im Bereich der Zeichensetzung (und nicht nur da) noch allerhand zu tun. Das liegt unter anderem daran, dass wir an chronischem Personalmangel leiden, deshalb wäre es sehr wünschenswert, dass du an der Sache dranbleibst.

Ich habe mal einen ersten Schritt in die von Daniel angedeutete Richtung getan, siehe unten. Es fehlen noch weitere Untergruppen (

), um alle ursprünglichen Beispiele abzudecken.

<!-- German rule, 2015-07-23 -->

<rulegroup id="INFINITIV_KOMMA" name="Komma bei Infinitivgruppen">    
     <rule>
      <pattern>
       <token negate='yes'>,</token>
       <marker>
        <token regexp='yes'>als|anstatt|außer|ohne|um</token>
       </marker>
       <token min="0" postag='PRO:REF:.+' postag_regexp='yes'/>
       <token postag='VER:EIZ:.+' postag_regexp='yes'/>
      </pattern>
      <message>Infinitivgruppen werden durch Komma abgetrennt, wenn Sie mit „als“, „anstatt“, „außer“, „ohne“, „statt“ oder „um“ eingeleitet werden: <suggestion>, \2</suggestion>.</message>
      <url>http://www.duden.de/sprachwissen/rechtschreibregeln/komma#K117</url>
      <short>Komma setzen</short>
      <example correction=', außer'>Ihr könnt nichts tun <marker>außer</marker> abzuwarten.</example>
      <example>Ihr könnt nichts tun, außer abzuwarten.</example>
      <example correction=', um'>Sie ging nach Hause <marker>um</marker> sich umzuziehen.</example>
      <example>Sie ging nach Hause, um sich umzuziehen.</example>
     </rule>

 <!-- TODO: add more rules -->
</rulegroup>