1. An apparatus, comprising: a processor; and a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to: present a markup language document on a display coupled to the apparatus, for editing by a user, wherein the markup language document is a document comprising current content generated using at least one markup language; and provide grammatical assistance to the user based on a markup language grammar inferred from the current content of the markup language document, wherein the markup language grammar comprises syntax rules of the at least one markup language used to generate the current content of the markup language document.