package Ġcom . app mat t us . markdown . rules Ċ Ċ import Ġcom . app mat t us . markdown . dsl . Rule Setup Ċ import Ġcom . app mat t us . markdown . errors . Error Reporter Ċ import Ġcom . app mat t us . markdown . processing . Markdown Document Ċ Ċ /** Ċ Ġ* Ġ# ĠSp aces Ġafter Ġlist Ġmarkers Ċ Ġ* Ċ Ġ* ĠThis Ġrule Ġchecks Ġfor Ġthe Ġnumber Ġof Ġspaces Ġbetween Ġa Ġtask Ġlist Ġmarker Ġ( e . g . Ġ'[ Ġ] ', Ġ' &# 9 1 ; x ]' Ġor Ġ' &# 9 1 ; X ]') Ġand Ġthe Ċ Ġ* Ġtext Ġof Ġthe Ġlist Ġitem . Ċ Ġ* Ċ Ġ* ĠThe Ġnumber Ġof Ġspaces Ġchecked Ġfor Ġdepends Ġon Ġthe Ġdocument Ġstyle Ġin Ġuse , Ġbut Ġthe Ġdefault Ġis Ġ 1 Ġspace Ġafter Ġany Ġtask Ġlist Ċ Ġ* Ġmarker : Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġ- Ġ[ Ġ] ĠFoo Ċ Ġ* ĠĠĠĠ Ġ- Ġ[ x ] ĠBar Ċ Ġ* ĠĠĠĠ Ġ- Ġ[ Ġ] ĠB az Ċ Ġ* Ċ Ġ* ĠTo Ġfix Ġthis , Ġensure Ġthe Ġcorrect Ġnumber Ġof Ġspaces Ġare Ġused Ġafter Ġtask Ġlist Ġmarkers Ġfor Ġyour Ġselected Ġdocument Ġstyle . Ċ Ġ*/ Ċ class ĠTask List Marker Space Rule ( ĊĠĠĠ Ġprivate Ġval Ġindent : ĠInt Ġ= Ġ 1 , ĊĠĠĠ Ġoverride Ġval Ġconfig : ĠRule Setup . Builder . () Ġ-> ĠUnit Ġ= Ġ{} Ċ ) Ġ: ĠRule () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġvisit Document ( document : ĠMarkdown Document , Ġerror Reporter : ĠError Reporter ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġdocument . task List Items . forEach Ġ{ Ġitem Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item . firstChild Ġ!= Ġnull Ġ&& Ġitem . firstChild . start Offset Ġ- Ġitem . marker Suffix . end Offset Ġ!= Ġindent ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfirst Line Ġ= Ġitem . firstChild . chars . line Sequence (). iterator (). next () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdescription Ġ= Ġ" Ensure Ġ$ indent Ġspace Ġcharacters Ġafter Ġtask Ġlist Ġmarkers , Ġfor Ġexample Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"' ${ item . marker Suffix }${ " Ġ". repeat ( indent )} $ first Line '. ĠConfiguration : Ġindent =$ indent ." ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerror Reporter . report Error ( item . start Offset , Ġitem . end Offset , Ġdescription ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ