<commit_before>1.3
---

- [X] TextRange module
      (http://groups.google.com/group/rangy/browse_frm/thread/bd7a351e63a16474)
- [X] Allow Window, Document, iframe and DOM node as params to range/selection creation methods
- [X] Add rangy.features.implementsWinGetSelection and rangy.features.implementsDocSelection
- [X] Check Range and Selection against WHATWG Range spec algorithms
- [X] Highlighter module. Review and rewrite existing.
- [X] Added select() method to range
- [X] Rename CSS class applier module to "class applier module"
- [X] Add handling for img and similar elements in class applier module
- [X] AMD support
- [X] Add getNativeTextRange() to selection for IE 11
- [X] Add Range setStartAndEnd(). Overloaded? eg. two args collapsed, three args (node, startOffset, endOffset),
      four args (startNode, startOffset, endNode, endOffset) (consider this)

1.4
---

- [?] Consider range.restrict(node)
- [?] Consider filter option in createClassApplier() options object
- [ ] Either a utils module or an FAQ page with code snippets for common use cases, including:
      - [X] Simple selection save/restore (bookmark?) (is this necessary?)
      - [ ] Insert HTML
            (http://stackoverflow.com/questions/2213376/how-to-find-cursor-position-in-a-contenteditable-div/2213514#2213514)
- [?] Some kind of jQuery integration module?
- [ ] Move IE <= 8 support into a separate optional module
- [ ] Add withinRange and withinNode options to move(), moveStart() and moveEnd() methods
- [?] Positions module
      (http://stackoverflow.com/questions/4122315/how-to-find-xy-position-in-javascript-with-offset/4123495#4123495)
- [ ] Config module or something so that config can work with AMD. See P" 285
      (https://github.com/timdown/rangy/pull/285)

Possible features for some version
----------------------------------

- [?] Commands module with basic inline commands (bold, italic, colour, font face, font size, background colour, etc.)
      (http://stackoverflow.com/questions/2887101/apply-style-to-range-of-text-with-javascript-in-uiwebview/2888969#2888969)
- [?] More commands (block? Insert line break? Think about this, don't want to build a WYSIWYG editor)
- [ ] Add selection extend()? Don't think this is possible.
- [ ] Option in TextRange module for alternative ways to extract text for an element (see email from <NAME>)<commit_msg>Update roadmap<commit_after>1.3
---

- [X] TextRange module
      (http://groups.google.com/group/rangy/browse_frm/thread/bd7a351e63a16474)
- [X] Allow Window, Document, iframe and DOM node as params to range/selection creation methods
- [X] Add rangy.features.implementsWinGetSelection and rangy.features.implementsDocSelection
- [X] Check Range and Selection against WHATWG Range spec algorithms
- [X] Highlighter module. Review and rewrite existing.
- [X] Added select() method to range
- [X] Rename CSS class applier module to "class applier module"
- [X] Add handling for img and similar elements in class applier module
- [X] AMD support
- [X] Add getNativeTextRange() to selection for IE 11
- [X] Add Range setStartAndEnd(). Overloaded? eg. two args collapsed, three args (node, startOffset, endOffset),
      four args (startNode, startOffset, endNode, endOffset) (consider this)

1.4
---

- [?] Consider range.restrict(node)
- [?] Consider filter option in createClassApplier() options object
- [ ] Either a utils module or an FAQ page with code snippets for common use cases, including:
      - [X] Simple selection save/restore (bookmark?) (is this necessary?)
      - [ ] Insert HTML
            (http://stackoverflow.com/questions/2213376/how-to-find-cursor-position-in-a-contenteditable-div/2213514#2213514)
- [?] Some kind of jQuery integration module?
- [ ] Move IE <= 8 support into a separate optional module
- [ ] Add withinRange and withinNode options to move(), moveStart() and moveEnd() methods
- [?] Positions module
      (http://stackoverflow.com/questions/4122315/how-to-find-xy-position-in-javascript-with-offset/4123495#4123495)
- [ ] Config module or something so that config can work with AMD. See PR 285
      (https://github.com/timdown/rangy/pull/285)
- [ ] Move to one of the common testing libraries

Possible features for some version
----------------------------------

- [?] Commands module with basic inline commands (bold, italic, colour, font face, font size, background colour, etc.)
      (http://stackoverflow.com/questions/2887101/apply-style-to-range-of-text-with-javascript-in-uiwebview/2888969#2888969)
- [?] More commands (block? Insert line break? Think about this, don't want to build a WYSIWYG editor)
- [ ] Add selection extend()? Don't think this is possible.
- [ ] Option in TextRange module for alternative ways to extract text for an element (see email from <NAME>)
{'fraction_non_alphanumeric': 0.12100980596703526, 'fraction_numerical': 0.03630294179011058, 'mean_word_length': 3.765407554671968, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 5, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6107047', 'n_tokens_mistral': 1522, 'n_tokens_neox': 1391, 'n_words': 500}