function(editor) {
			var allowedSyntaxes = {'html': 1, 'xml': 1, 'xsl': 1};
			var syntax = String(editor.getSyntax());
			if (syntax in allowedSyntaxes) {
				var content = String(editor.getContent());
				var tag = require('htmlMatcher').find(content, editor.getCaretPos());
				
				if (tag && tag.type == 'tag') {
					var startTag = tag.open;
					var contextNode = {
						name: startTag.name,
						attributes: []
					};
					
					// parse attributes
					var tagTree = require('xmlEditTree').parse(startTag.range.substring(content));
					if (tagTree) {
						contextNode.attributes = _.map(tagTree.getAll(), function(item) {
							return {
								name: item.name(),
								value: item.value()
							};
						});
					}
					
					return contextNode;
				}
			}
			
			return null;
		}
function(editor) {
			var allowedSyntaxes = {'html': 1, 'xml': 1, 'xsl': 1};
			var syntax = String(editor.getSyntax());
			if (syntax in allowedSyntaxes) {
				var content = String(editor.getContent());
				var tag = require('htmlMatcher').find(content, editor.getCaretPos());
				
				if (tag && tag.type == 'tag') {
					var startTag = tag.open;
					var contextNode = {
						name: startTag.name,
						attributes: []
					};
					
					
					var tagTree = require('xmlEditTree').parse(startTag.range.substring(content));
					if (tagTree) {
						contextNode.attributes = _.map(tagTree.getAll(), function(item) {
							return {
								name: item.name(),
								value: item.value()
							};
						});
					}
					
					return contextNode;
				}
			}
			
			return null;
		}
function ( editor ) { var allowedSyntaxes = { 'html' : 1 , 'xml' : 1 , 'xsl' : 1 } ; var syntax = String ( editor . getSyntax ( ) ) ; if ( syntax in allowedSyntaxes ) { var content = String ( editor . getContent ( ) ) ; var tag = require ( 'htmlMatcher' ) . find ( content , editor . getCaretPos ( ) ) ; if ( tag && tag . type == 'tag' ) { var startTag = tag . open ; var contextNode = { name : startTag . name , attributes : [ ] } ; // parse attributes var tagTree = require ( 'xmlEditTree' ) . parse ( startTag . range . substring ( content ) ) ; if ( tagTree ) { contextNode . attributes = _ . map ( tagTree . getAll ( ) , function ( item ) { return { name : item . name ( ) , value : item . value ( ) } ; } ) ; } return contextNode ; } } return null ; }
Captures context XHTML element from editor under current caret position.
This node can be used as a helper for abbreviation extraction
@param {IEmmetEditor} editor
@returns {Object}
Captures context XHTML element from editor under current caret position . This node can be used as a helper for abbreviation extraction