Skip to content

Instantly share code, notes, and snippets.

@FichteFoll
Created May 23, 2013 14:20
Show Gist options
  • Save FichteFoll/5636413 to your computer and use it in GitHub Desktop.
Save FichteFoll/5636413 to your computer and use it in GitHub Desktop.
ExpressionEngine Syntax (adjustments)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>comment</key>
<string>ExpressionEngine grammar for Sublime Text. Forked, overhauled and expanded by fcgrx from imjared's module, which was forked from wes baker's fork of tim kelty's original work.</string>
<key>fileTypes</key>
<array>
<string>html</string>
<string>htm</string>
<string>php</string>
<string>xhtml</string>
</array>
<key>foldingStartMarker</key>
<string>(\{(exp:([a-zA-Z0-9_:]+)|if )\b.*?\})|(&lt;(head|table|tr|div|style|script|ul|ol|form|dl|section|header|footer|article|nav|aside)\b.*?&gt;)</string>
<key>foldingStopMarker</key>
<string>(\{/(exp:([a-zA-Z0-9_:]+)|if)\})|(&lt;/(head|table|tr|div|style|script|ul|ol|form|dl|section|header|footer|article|nav|aside)&gt;)</string>
<key>keyEquivalent</key>
<string>^~E</string>
<key>name</key>
<string>ExpressionEngine</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#embedded-code</string>
</dict>
<dict>
<key>comment</key>
<string>This is set to use XHTML standards, but you can change that by changing .strict to .basic for HTML standards</string>
<key>include</key>
<string>text.html.basic</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>css</key>
<dict>
<key>begin</key>
<string>(?:^\s+)?&lt;((?i:style))\b(?![^&gt;]*/&gt;)[^.&gt;]*&gt;?</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.tag.html</string>
</dict>
</dict>
<key>end</key>
<string>&lt;/((?i:style))&gt;(?:\s*\n)?</string>
<key>name</key>
<string>source.css.embedded.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#embedded-code</string>
</dict>
<dict>
<key>include</key>
<string>source.css</string>
</dict>
</array>
</dict>
<key>ee-comment</key>
<dict>
<key>begin</key>
<string>{!--</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.html</string>
</dict>
</dict>
<key>end</key>
<string>--}</string>
<key>name</key>
<string>comment.block.ee</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>--</string>
<key>name</key>
<string>invalid.illegal.bad-comments-or-CDATA.html</string>
</dict>
</array>
</dict>
<key>ee-tag</key>
<dict>
<key>begin</key>
<string>\{(?=/?[a-z|A-Z])</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.begin.ee</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.tag.end.ee</string>
</dict>
</dict>
<key>name</key>
<string>ee.tag.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#ee-tag-deprecated</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-addon-builtin</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-addon</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-conditional</string>
</dict>
<dict>
<key>include</key>
<string>#tag-stuff</string>
</dict>
</array>
</dict>
<key>ee-tag-addon</key>
<dict>
<key>begin</key>
<string>(exp:[a-zA-Z0-9_:]+\b)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.function.addon.ee</string>
</dict>
</dict>
<key>end</key>
<string>(?=\})</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-stuff</string>
</dict>
</array>
</dict>
<key>ee-tag-addon-builtin</key>
<dict>
<key>begin</key>
<string>(/?exp:(channel:(entries|calendar|month_links|next_entry|prev_entry|categories|category_archive|category_heading|info)|comment:(ajax_edit_url|edit_comment_script|entries|notification_links|subscriber_list|form|preview)|cookie_consent:message|email:contact_form|email:tell_a_friend|emoticon|file:entries|ip_to_nation:world_flags|jquery:(script_tag|script_src|output_javascript)|mailinglist:form|member:(login_form|custom_profile_data|ignore_list)|moblog:check|pages:load_site_pages|query|referrer|rss:feed|rte:script_url|forum:forum_helper|forum:topic_titles|forum|xml_encode|safecracker|search:(advanced_form|simple_form|search_results|total_results|keywords)|magpie|updated_sites:pings|stats|simple_commerce:purchase|wiki)|wiki:categories|wiki:category_subcategories|wiki:category_articles|wiki:files|wiki:recent_changes|wiki:search_results|wiki:title_list|wiki:associated_articles|wiki:associated_pages|wiki:custom_namespaces_list)\b</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.addon.ee</string>
</dict>
</dict>
<key>end</key>
<string>(?=\})</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-stuff</string>
</dict>
</array>
</dict>
<key>ee-tag-conditional</key>
<dict>
<key>begin</key>
<string>(if:else|if:elseif|/?if)\b</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.ee</string>
</dict>
</dict>
<key>end</key>
<string>(?=\})</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-stuff</string>
</dict>
</array>
</dict>
<key>ee-tag-constant-bracketed</key>
<dict>
<key>match</key>
<string>\{(DATE_ATOM|DATE_COOKIE|DATE_ISO8601|DATE_RFC822|DATE_RFC850|DATE_RFC1036|DATE_RFC1123|DATE_RFC2822|DATE_RSS|DATE_W3C|XID_HASH)\}</string>
<key>name</key>
<string>support.constant.ee</string>
</dict>
<key>ee-tag-deprecated</key>
<dict>
<key>match</key>
<string>(/?exp:weblog:.*|exp:channel:entry_form|exp:trackback:.*|exp:gallery:.*|display_custom_fields|saef_javascript)\b(?=\s|\})</string>
<key>name</key>
<string>invalid.deprecated.ee</string>
</dict>
<key>ee-tag-embed</key>
<dict>
<key>match</key>
<string>embed:[a-zA-Z0-9-_:]+</string>
<key>name</key>
<string>variable.other.ee</string>
</dict>
<key>ee-tag-global-variable</key>
<dict>
<key>match</key>
<string>(\G|\s|\b)(app_build|app_version|auto_log_in|build|captcha|charset|cp_url|current_id|current_page|current_path|current_request|current_time|current_url|debug_mode|doc_url|elapsed_time|email|error_message|form_declaration:wiki:edit|form_declaration:wiki:uploads|forum_build|forum_name|forum_url|group_description|group_id|group_title|gzip_mode|hits|homepage|include:body_extra|include:head_extra|include:spellcheck_js|include:theme_option_list|ip_address|ip_hostname|lang|lang:[a-zA-Z_]+|location|logged_in|logged_in_email|logged_in_group_description|logged_in_group_id|logged_in_ip_address|logged_in_location|logged_in_member_id|logged_in_private_messages|logged_in_screen_name|logged_in_total_comments|logged_in_total_entries|logged_in_total_forum_posts|logged_in_total_forum_topics|logged_in_username|logged_out|member_group|member_id|member_profile_link|module_version|page_title|path:advanced_search|path:atom|path:do_search|path:forgot|path:forum_home|path:image_url|path:login|path:logout|path:mark_all_read|path:memberlist|path:private_messages|path:recent_poster|path:register|path:rss|path:smileys|path:spellcheck_iframe|path:theme_css|path:view_active_topics|path:view_new_topics|path:view_pending_topics|path:wiki_base_url|path:wiki_home|path:your_control_panel|path:your_profile|private_messages|recent_poster|screen_name|site_id|site_index|site_label|site_name|site_short_name|site_url|theme_folder_url|total_comments|total_entries|total_forum_posts|total_forum_replies|total_forum_topics|total_queries|username|version|webmaster_email)\b</string>
<key>name</key>
<string>support.variable.language.ee</string>
</dict>
<key>ee-tag-global-variable-bracketed</key>
<dict>
<key>match</key>
<string>\{(app_build|app_version|auto_log_in|build|captcha|charset|cp_url|current_id|current_page|current_path|current_request|current_time|current_url|debug_mode|doc_url|elapsed_time|email|error_message|form_declaration:wiki:edit|form_declaration:wiki:uploads|forum_build|forum_name|forum_url|group_description|group_id|group_title|gzip_mode|hits|homepage|include:body_extra|include:head_extra|include:spellcheck_js|include:theme_option_list|ip_address|ip_hostname|lang|lang:[a-zA-Z_]+|location|logged_in|logged_in_email|logged_in_group_description|logged_in_group_id|logged_in_ip_address|logged_in_location|logged_in_member_id|logged_in_private_messages|logged_in_screen_name|logged_in_total_comments|logged_in_total_entries|logged_in_total_forum_posts|logged_in_total_forum_topics|logged_in_username|logged_out|member_group|member_id|member_profile_link|module_version|page_title|path:advanced_search|path:atom|path:do_search|path:forgot|path:forum_home|path:image_url|path:login|path:logout|path:mark_all_read|path:memberlist|path:private_messages|path:recent_poster|path:register|path:rss|path:smileys|path:spellcheck_iframe|path:theme_css|path:view_active_topics|path:view_new_topics|path:view_pending_topics|path:wiki_base_url|path:wiki_home|path:your_control_panel|path:your_profile|private_messages|recent_poster|screen_name|site_id|site_index|site_label|site_name|site_short_name|site_url|theme_folder_url|total_comments|total_entries|total_forum_posts|total_forum_replies|total_forum_topics|total_queries|username|version|webmaster_email)\}</string>
<key>name</key>
<string>support.variable.language.ee</string>
</dict>
<key>ee-tag-global-variable-param-bracketed</key>
<dict>
<key>begin</key>
<string>\{(path=|(?:(?:path|permalink|title_permalink|comment_path|day_path|entry_id_path|embed|encode|redirect|last_author_profile_path|member_path|member_search_path|multi_field|next_path|preload_replace:[a-zA-Z0-9_-]+|previous_path|profile_path|stylesheet|switch|thread_path|url_title_path)=)(".*?"|'.*?'|[^}\s]+?))(?=\s|\})</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.variable.language.ee</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>variable.parameter.ee</string>
</dict>
</dict>
<key>end</key>
<string>\}</string>
<key>name</key>
<string>support.variable.language.ee</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-stuff</string>
</dict>
</array>
</dict>
<key>ee-tag-local-variable</key>
<dict>
<key>match</key>
<string>(\G|\s|\b)(/?add_to_cart_button|/?articles|/?audio|/?buy_now_button|/?calendar_heading|/?calendar_rows|/?categories|/?category_menu|/?custom_fields|/?date_footer|/?date_heading|/?entries|/?entry_titles|/?field|/?field_errors|/?files|/?first_page|/?footer|/?global_errors|/?header|/?images|/?items|/?last_page|/?letter_header|/?member_names|/?moderators|/?movie|/?next_page|/?options|/?options:[a-zA-Z0-9_]+|/?page|/?paginate|/?pagination_links|/?parents|/?ping_row|/?ping_servers|/?preview|/?previous_page|/?row_blank|/?row_column|/?row_end|/?row_start|/?siblings|/?status|/?status_footer|/?status_group|/?status_header|/?status_menu|/?statuses|/?sticky|/?view_cart_button|/?year_heading|[a-zA-Z0-9_]+_file_url|absolute_count|absolute_results|active|add_to_cart_url|address_city|address_country|address_name|address_state|address_status|address_street|address_zip|age|allow_comments|allow_multiple|aol_im|article|article_history|article_title|articles_total|author|author_email|author_id|author_name|auto_login|auto_path|auto_thread_path|avatar|avatar_height|avatar_image_height|avatar_image_width|avatar_url|avatar_width|bio|birthday|blank|board_label|board_name|body|bulletins|buy_now_url|can_admin|can_ban|can_change_status|can_delete|can_edit|can_merge|can_moderate_comment|can_move|can_post|can_post_bulletin|can_private_message|can_report|can_split|cannot_admin|cannot_edit|captcha|caption|category_description|category_group|category_id|category_image|category_name|category_namespace|category_request|category_url_title|channel|channel_description|channel_encoding|channel_id|channel_lang|channel_language|channel_name|channel_names|channel_short_name|channel_title|channel_url|checkbox|children|class|clear_all_cookies_link|clear_ee_cookies_link|comment|comment_auto_path|comment_date|comment_entry_id_auto_path|comment_id|comment_site_id|comment_stripped|comment_subscriber_total|comment_tb_total|comment_total|comment_url_title_auto_path|comments_disabled|comments_expired|content|cookies_allowed|cookies_allowed_link|cookies_not_allowed|count|credit|date|day_number|depth|description|directory_id|directory_title|display_field|edit_article|edit_date|editable|email|empty_feed|encoding|entry_author_id|entry_date|entry_id|entry_site_id|error|error:[a-zA-Z0-9_]+|excerpt|expiration_date|extended_description|extension|field_data|field_errors:count|field_id|field_instructions|field_label|field_name|file_id|file_name|file_namespace|file_page|file_size|file_type|file_types|file_url|filename|file|first_child|first_name|formatting_buttons|forum_topic|forum_topic_id|forums_exist|freelancer_version|full_name|full_text|gender|global_errors:count|gmt_comment_date|gmt_date|gmt_edit_date|gmt_entry_date|gmt_last_updated|gmt_revision_date|group_description|group_id|heading|height|history|html_email|icq|id_auto_path|id_path|ignore_screen_name|image_namespace|in_forum|instructions|instructions:[a-zA-Z0-9_]+|interests|ip_address|is_ignored|is_image|is_post|is_topic|item|item_enabled|item_id|item_name|item_purchases|item_regular_price|item_sale_price|item_type|item_use_sale|join_date|keywords|label:[a-zA-Z0-9_]+|language|last_activity|last_author|last_child|last_comment_date|last_entry_date|last_forum_post_date|last_name|last_post_date|last_post_id|last_post_relative_date|last_reply|last_segment|last_updated|last_visit|last_visitor_date|letter|link|local_time|location|locked|mailing_list|main_namespace|maxlength|member_email|member_name|message_text|meta_refresh|mime_type|moderated|modified_date|month|month_num|month_short|most_visitor_date|most_visitors|msn_im|multiselect|name|name_namespace|namespace|namespace_label|new_article|next:|next_date|next_topic|next_topic_title|no_bulletins|no_history|no_results|no_results_page|not_category_request|not_entries|not_forum_topic|notes|occupation|old_revision|option_name|option_value|original_page|page_id|page_uri|page_url|pagination_page_number|pagination_url|parent_id|parents:|parents:title|parents:url-title|password|path|path:author_profile|path:close_revision|path:edit_topic|path:open_revision|path:redirect_page|path:topic_history|path:view_article|path:view_category|path:view_file|path:view_orig_article|path:view_revision|path:wiki_base_url|payer_business_name|payer_status|payment_fee|payment_gross|permalink|photo|photo_height|photo_image_height|photo_image_width|photo_url|photo_width|ping_date|ping_ipaddress|ping_server_name|ping_site_check|ping_site_name|ping_site_rss|ping_site_url|plain_email|post_date|post_number|post_total|posts|previous:|previous_date|previous_topic|previous_topic_title|private_messages|quantity|radio|recent_comment_date|redirect_page|redirected|ref_agent|ref_agent_short|ref_date|ref_from|ref_ip|ref_to|relationship|relative_date|relative_url|replies|reply_author|reply_results|required|results|revision|revision_author|revision_date|revision_id|revision_notes|revision_status|row_end|row_start|rows|safecracker_file|safecracker_head|screen_name|search_path|segment_[0-9]+|select|select_date|select_options|selected|selected_option:[a-zA-Z0-9_]+(:label)?|send_private_message|siblings:|siblings:title|siblings:url-title|signature|signature_image|signature_image_height|signature_image_url|signature_image_width|size|smiley|special_namespace|special_page|subcategory_total|subscribed|subscriber_count|subscriber_email|subscriber_guest_total|subscriber_is_member|subscriber_member_id|subscriber_member_total|subscriber_screen_name|subscriber_total_results|summary|switch(?!==)|template_edit_date|text|text_direction|textarea|textinput|timezone|title|title_permalink|topic_date|topic_relative_date|topic_title|topic_type|total_anon|total_comments|total_entries|total_forum_posts|total_forum_topics|total_guests|total_logged_in|total_members|total_pages|total_posts|total_replies|total_results|trackback_total|trimmed_url|unsubscribe_url|upload_date|uploads|url|url:[a-zA-Z0-9_]+|url_as_author|url_or_email|url_or_email_as_author|url_or_email_as_link|url_title|username|version|view_cart_url|view_count_four|view_count_one|view_count_three|view_count_two|viewable_image|views|week_date|width|wiki_name|yahoo_im|year|year_short)\b(?![\=\-\:])</string>
<key>name</key>
<string>support.variable.language.ee</string>
</dict>
<key>ee-tag-local-variable-bracketed</key>
<dict>
<key>match</key>
<string>\{(/?add_to_cart_button|/?articles|/?audio|/?buy_now_button|/?calendar_heading|/?calendar_rows|/?categories|/?category_menu|/?custom_fields|/?date_footer|/?date_heading|/?entries|/?entry_titles|/?field|/?field_errors|/?files|/?first_page|/?footer|/?global_errors|/?header|/?images|/?items|/?last_page|/?letter_header|/?member_names|/?moderators|/?movie|/?next_page|/?options|/?options:[a-zA-Z0-9_]+|/?page|/?paginate|/?pagination_links|/?parents|/?ping_row|/?ping_servers|/?preview|/?previous_page|/?row_blank|/?row_column|/?row_end|/?row_start|/?siblings|/?status|/?status_footer|/?status_group|/?status_header|/?status_menu|/?statuses|/?sticky|/?view_cart_button|/?year_heading|[a-zA-Z0-9_]+_file_url|absolute_count|absolute_results|active|add_to_cart_url|address_city|address_country|address_name|address_state|address_status|address_street|address_zip|age|allow_comments|allow_multiple|aol_im|article|article_history|article_title|articles_total|author|author_email|author_id|author_name|auto_login|auto_path|auto_thread_path|avatar|avatar_height|avatar_image_height|avatar_image_width|avatar_url|avatar_width|bio|birthday|blank|board_label|board_name|body|bulletins|buy_now_url|can_admin|can_ban|can_change_status|can_delete|can_edit|can_merge|can_moderate_comment|can_move|can_post|can_post_bulletin|can_private_message|can_report|can_split|cannot_admin|cannot_edit|captcha|caption|category_description|category_group|category_id|category_image|category_name|category_namespace|category_request|category_url_title|channel|channel_description|channel_encoding|channel_id|channel_lang|channel_language|channel_name|channel_names|channel_short_name|channel_title|channel_url|checkbox|children|class|clear_all_cookies_link|clear_ee_cookies_link|comment|comment_auto_path|comment_date|comment_entry_id_auto_path|comment_id|comment_site_id|comment_stripped|comment_subscriber_total|comment_tb_total|comment_total|comment_url_title_auto_path|comments_disabled|comments_expired|content|cookies_allowed|cookies_allowed_link|cookies_not_allowed|count|credit|date|day_number|depth|description|directory_id|directory_title|display_field|edit_article|edit_date|editable|email|empty_feed|encoding|entry_author_id|entry_date|entry_id|entry_site_id|error|error:[a-zA-Z0-9_]+|excerpt|expiration_date|extended_description|extension|field_data|field_errors:count|field_id|field_instructions|field_label|field_name|file_id|file_name|file_namespace|file_page|file_size|file_type|file_types|file_url|filename|file|first_child|first_name|formatting_buttons|forum_topic|forum_topic_id|forums_exist|freelancer_version|full_name|full_text|gender|global_errors:count|gmt_comment_date|gmt_date|gmt_edit_date|gmt_entry_date|gmt_last_updated|gmt_revision_date|group_description|group_id|heading|height|history|html_email|icq|id_auto_path|id_path|ignore_screen_name|image_namespace|in_forum|instructions|instructions:[a-zA-Z0-9_]+|interests|ip_address|is_ignored|is_image|is_post|is_topic|item|item_enabled|item_id|item_name|item_purchases|item_regular_price|item_sale_price|item_type|item_use_sale|join_date|keywords|label:[a-zA-Z0-9_]+|language|last_activity|last_author|last_child|last_comment_date|last_entry_date|last_forum_post_date|last_name|last_post_date|last_post_id|last_post_relative_date|last_reply|last_segment|last_updated|last_visit|last_visitor_date|letter|link|local_time|location|locked|mailing_list|main_namespace|maxlength|member_email|member_name|message_text|meta_refresh|mime_type|moderated|modified_date|month|month_num|month_short|most_visitor_date|most_visitors|msn_im|multiselect|name|name_namespace|namespace|namespace_label|new_article|next:|next_date|next_topic|next_topic_title|no_bulletins|no_history|no_results|no_results_page|not_category_request|not_entries|not_forum_topic|notes|occupation|old_revision|option_name|option_value|original_page|page_id|page_uri|page_url|pagination_page_number|pagination_url|parent_id|parents:|parents:title|parents:url-title|password|path|path:author_profile|path:close_revision|path:edit_topic|path:open_revision|path:redirect_page|path:topic_history|path:view_article|path:view_category|path:view_file|path:view_orig_article|path:view_revision|path:wiki_base_url|payer_business_name|payer_status|payment_fee|payment_gross|permalink|photo|photo_height|photo_image_height|photo_image_width|photo_url|photo_width|ping_date|ping_ipaddress|ping_server_name|ping_site_check|ping_site_name|ping_site_rss|ping_site_url|plain_email|post_date|post_number|post_total|posts|previous:|previous_date|previous_topic|previous_topic_title|private_messages|quantity|radio|recent_comment_date|redirect_page|redirected|ref_agent|ref_agent_short|ref_date|ref_from|ref_ip|ref_to|relationship|relative_date|relative_url|replies|reply_author|reply_results|required|results|revision|revision_author|revision_date|revision_id|revision_notes|revision_status|row_end|row_start|rows|safecracker_file|safecracker_head|screen_name|search_path|segment_[0-9]+|select|select_date|select_options|selected|selected_option:[a-zA-Z0-9_]+(:label)?|send_private_message|siblings:|siblings:title|siblings:url-title|signature|signature_image|signature_image_height|signature_image_url|signature_image_width|size|smiley|special_namespace|special_page|subcategory_total|subscribed|subscriber_count|subscriber_email|subscriber_guest_total|subscriber_is_member|subscriber_member_id|subscriber_member_total|subscriber_screen_name|subscriber_total_results|summary|switch(?!==)|template_edit_date|text|text_direction|textarea|textinput|timezone|title|title_permalink|topic_date|topic_relative_date|topic_title|topic_type|total_anon|total_comments|total_entries|total_forum_posts|total_forum_topics|total_guests|total_logged_in|total_members|total_pages|total_posts|total_replies|total_results|trackback_total|trimmed_url|unsubscribe_url|upload_date|uploads|url|url:[a-zA-Z0-9_]+|url_as_author|url_or_email|url_or_email_as_author|url_or_email_as_link|url_title|username|version|view_cart_url|view_count_four|view_count_one|view_count_three|view_count_two|viewable_image|views|week_date|width|wiki_name|yahoo_im|year|year_short)\}</string>
<key>name</key>
<string>support.variable.language.ee</string>
</dict>
<key>ee-tag-operator</key>
<dict>
<key>match</key>
<string>(\s|^)(OR|AND|XOR|&amp;&amp;|&lt;=?|&gt;=?|&lt;&gt;|!=|==|\|\|)\s</string>
<key>name</key>
<string>keyword.operator.logical.ee</string>
</dict>
<key>ee-tag-parameter-known</key>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.other.attribute-name.predefined.ee</string>
</dict>
</dict>
<key>match</key>
<string>(?:\s|^)(allow_comments|allow_html|author_id|author_only|backspace|base_path|board|boards|cache|cancel|cat_limit|cat_style|category|category_group|channel|charset|class|columns|comment_id|country_code|currency|custom_fields|datepicker|day|debug|decimal|directory_id|disable|display|display_by|dynamic|dynamic_parameters|dynamic_start|dynamic_title|effect|entry_id|entry_id_from|entry_id_to|entry_status|error_handling|exclude_guests|field|file|file_id|fixed_order|form_class|form_id|form_name|format|forums|group_id|id|image_url|include_jquery|json|leading_zeroes|limit|list|logged_out_member_id|markup|match|member_data|member_id|month|month_limit|multipname|name|no_result_page|offset|orderby|paginate|paginate_base|paginate_type|parent_only|parse|plugin|popup|preserve_checkboxes|preview|profile_path|recipients|redirect|refresh|related_categories_mode|relaxed_categories|replyto|require_entry|restrict_channel|result_page|results|return|return_[0-9]+|rte_selector|rte_toolset_id|rules:[a-zA-Z_]+|safecracker_head|search:[a-zA-Z_]+|search_in|secure_action|secure_return|selector|show|show_current_week|show_disabled|show_empty|show_expired|show_expired_entries|show_future_entries|show_group|show_pages|silent|site|sort|sql|start_day|start_on|status|status_code|sticky|stop_before|style|success|switch|theme|title|toolset_id|track_views|type|ui|uncategorized_entries|url|url_title|use_live_url|user_recipients|username|users|weblog|week_sort|where|which|wiki|wrap|year)=(?!=)</string>
</dict>
<key>ee-tag-parameter-user</key>
<dict>
<key>match</key>
<string>\b([a-zA-Z0-9-_:]+)(?==)</string>
<key>name</key>
<string>entity.other.attribute-name.user.ee</string>
</dict>
<key>ee-tag-variable-user</key>
<dict>
<key>match</key>
<string>/?(?!exp:)[a-zA-Z0-9-_:]+</string>
<key>name</key>
<string>variable.other.ee</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#tag-stuff</string>
</dict>
</array>
</dict>
<key>embedded-code</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#ee-comment</string>
</dict>
<dict>
<key>include</key>
<string>#php</string>
</dict>
<dict>
<key>include</key>
<string>#javascript</string>
</dict>
<dict>
<key>include</key>
<string>#css</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-global-variable-param-bracketed</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-constant-bracketed</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-local-variable-bracketed</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-global-variable-bracketed</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag</string>
</dict>
</array>
</dict>
<key>javascript</key>
<dict>
<key>begin</key>
<string>(?:^\s+)?&lt;((?i:script))\b(?![^&gt;]*/&gt;)[^&gt;]*&gt;?</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>entity.name.tag.html</string>
</dict>
</dict>
<key>end</key>
<string>&lt;/((?i:script))&gt;(?:\s*)?</string>
<key>name</key>
<string>source.js.embedded.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#embedded-code</string>
</dict>
<dict>
<key>include</key>
<string>source.js.jquery</string>
</dict>
<dict>
<key>include</key>
<string>source.js</string>
</dict>
</array>
</dict>
<key>php</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>(?:\s*)&lt;\?(php|=)</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.embedded.begin.php</string>
</dict>
</dict>
<key>end</key>
<string>\?&gt;</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.section.embedded.end.php</string>
</dict>
</dict>
<key>name</key>
<string>source.php.embedded.block.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#embedded-code</string>
</dict>
<dict>
<key>include</key>
<string>#php-source</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>php-source</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>/\*</string>
<key>end</key>
<string>\*/</string>
<key>name</key>
<string>comment.block.php</string>
</dict>
<dict>
<key>match</key>
<string>\/\/.*</string>
<key>name</key>
<string>comment.php</string>
</dict>
<dict>
<key>match</key>
<string>#.*?(?=\?&gt;)</string>
<key>name</key>
<string>comment.line.number-sign.ruby</string>
</dict>
<dict>
<key>match</key>
<string>//.*?(?=\?&gt;)</string>
<key>name</key>
<string>comment.line.double-slash.ruby</string>
</dict>
<dict>
<key>include</key>
<string>source.php</string>
</dict>
</array>
</dict>
<key>string-double-quoted</key>
<dict>
<key>begin</key>
<string>"</string>
<key>end</key>
<string>"</string>
<key>name</key>
<string>string.quoted.double.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#ee-comment</string>
</dict>
</array>
</dict>
<key>string-single-quoted</key>
<dict>
<key>begin</key>
<string>'</string>
<key>end</key>
<string>'</string>
<key>name</key>
<string>string.quoted.single.html</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#ee-comment</string>
</dict>
</array>
</dict>
<key>tag-stuff</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#ee-comment</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-parameter-known</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-local-variable</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-global-variable-param</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-global-variable</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-embed</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-operator</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag-parameter-user</string>
</dict>
<dict>
<key>include</key>
<string>#string-double-quoted</string>
</dict>
<dict>
<key>include</key>
<string>#string-single-quoted</string>
</dict>
<dict>
<key>include</key>
<string>#ee-tag</string>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>text.html.ee</string>
<key>uuid</key>
<string>B47DFD28-B25E-4CC7-BFD4-1AEA1B84DA2F</string>
</dict>
</plist>
# [PackageDev] target_format: plist, ext: tmLanguage
comment: ExpressionEngine grammar for Sublime Text. Forked, overhauled and expanded
by fcgrx from imjared's module, which was forked from wes baker's fork of tim kelty's
original work.
name: ExpressionEngine
scopeName: text.html.ee
fileTypes: [html, htm, php, xhtml]
uuid: B47DFD28-B25E-4CC7-BFD4-1AEA1B84DA2F
patterns:
- include: '#embedded-code'
- comment: 'This is set to use XHTML standards, but you can change that by changing .strict to .basic for HTML standards'
include: text.html.basic
repository:
css:
name: source.css.embedded.html
begin: (?:^\s+)?<((?i:style))\b(?![^>]*/>)[^.>]*>?
end: </((?i:style))>(?:\s*\n)?
captures:
'1': {name: entity.name.tag.html}
patterns:
- include: '#embedded-code'
- include: source.css
ee-comment:
name: comment.block.ee
begin: '{!--'
end: --}
captures:
'0': {name: punctuation.definition.comment.html}
patterns:
- name: invalid.illegal.bad-comments-or-CDATA.html
match: --
ee-tag:
name: ee.tag.html
begin: \{(?=/?[a-z|A-Z])
beginCaptures:
'0': {name: punctuation.definition.tag.begin.ee}
end: \}
endCaptures:
'0': {name: punctuation.definition.tag.end.ee}
patterns:
- include: '#ee-tag-deprecated'
- include: '#ee-tag-addon-builtin'
- include: '#ee-tag-addon'
- include: '#ee-tag-conditional'
- include: '#tag-stuff'
ee-tag-addon:
begin: (exp:[a-zA-Z0-9_:]+\b)
end: (?=\})
captures:
'1': {name: entity.function.addon.ee}
patterns:
- include: '#tag-stuff'
ee-tag-addon-builtin:
begin: (/?exp:(channel:(entries|calendar|month_links|next_entry|prev_entry|categories|category_archive|category_heading|info)|comment:(ajax_edit_url|edit_comment_script|entries|notification_links|subscriber_list|form|preview)|cookie_consent:message|email:contact_form|email:tell_a_friend|emoticon|file:entries|ip_to_nation:world_flags|jquery:(script_tag|script_src|output_javascript)|mailinglist:form|member:(login_form|custom_profile_data|ignore_list)|moblog:check|pages:load_site_pages|query|referrer|rss:feed|rte:script_url|forum:forum_helper|forum:topic_titles|forum|xml_encode|safecracker|search:(advanced_form|simple_form|search_results|total_results|keywords)|magpie|updated_sites:pings|stats|simple_commerce:purchase|wiki)|wiki:categories|wiki:category_subcategories|wiki:category_articles|wiki:files|wiki:recent_changes|wiki:search_results|wiki:title_list|wiki:associated_articles|wiki:associated_pages|wiki:custom_namespaces_list)\b
end: (?=\})
captures:
'1': {name: support.function.addon.ee}
patterns:
- include: '#tag-stuff'
ee-tag-conditional:
begin: (if:else|if:elseif|/?if)\b
end: (?=\})
captures:
'1': {name: keyword.control.ee}
patterns:
- include: '#tag-stuff'
ee-tag-constant-bracketed:
name: support.constant.ee
match: \{(DATE_ATOM|DATE_COOKIE|DATE_ISO8601|DATE_RFC822|DATE_RFC850|DATE_RFC1036|DATE_RFC1123|DATE_RFC2822|DATE_RSS|DATE_W3C|XID_HASH)\}
ee-tag-deprecated:
name: invalid.deprecated.ee
match: (/?exp:weblog:.*|exp:channel:entry_form|exp:trackback:.*|exp:gallery:.*|display_custom_fields|saef_javascript)\b(?=\s|\})
ee-tag-embed:
name: variable.other.ee
match: embed:[a-zA-Z0-9-_:]+
ee-tag-global-variable:
name: support.variable.language.ee
match: (\G|\s|\b)(app_build|app_version|auto_log_in|build|captcha|charset|cp_url|current_id|current_page|current_path|current_request|current_time|current_url|debug_mode|doc_url|elapsed_time|email|error_message|form_declaration:wiki:edit|form_declaration:wiki:uploads|forum_build|forum_name|forum_url|group_description|group_id|group_title|gzip_mode|hits|homepage|include:body_extra|include:head_extra|include:spellcheck_js|include:theme_option_list|ip_address|ip_hostname|lang|lang:[a-zA-Z_]+|location|logged_in|logged_in_email|logged_in_group_description|logged_in_group_id|logged_in_ip_address|logged_in_location|logged_in_member_id|logged_in_private_messages|logged_in_screen_name|logged_in_total_comments|logged_in_total_entries|logged_in_total_forum_posts|logged_in_total_forum_topics|logged_in_username|logged_out|member_group|member_id|member_profile_link|module_version|page_title|path:advanced_search|path:atom|path:do_search|path:forgot|path:forum_home|path:image_url|path:login|path:logout|path:mark_all_read|path:memberlist|path:private_messages|path:recent_poster|path:register|path:rss|path:smileys|path:spellcheck_iframe|path:theme_css|path:view_active_topics|path:view_new_topics|path:view_pending_topics|path:wiki_base_url|path:wiki_home|path:your_control_panel|path:your_profile|private_messages|recent_poster|screen_name|site_id|site_index|site_label|site_name|site_short_name|site_url|theme_folder_url|total_comments|total_entries|total_forum_posts|total_forum_replies|total_forum_topics|total_queries|username|version|webmaster_email)\b
ee-tag-global-variable-bracketed:
name: support.variable.language.ee
match: \{(app_build|app_version|auto_log_in|build|captcha|charset|cp_url|current_id|current_page|current_path|current_request|current_time|current_url|debug_mode|doc_url|elapsed_time|email|error_message|form_declaration:wiki:edit|form_declaration:wiki:uploads|forum_build|forum_name|forum_url|group_description|group_id|group_title|gzip_mode|hits|homepage|include:body_extra|include:head_extra|include:spellcheck_js|include:theme_option_list|ip_address|ip_hostname|lang|lang:[a-zA-Z_]+|location|logged_in|logged_in_email|logged_in_group_description|logged_in_group_id|logged_in_ip_address|logged_in_location|logged_in_member_id|logged_in_private_messages|logged_in_screen_name|logged_in_total_comments|logged_in_total_entries|logged_in_total_forum_posts|logged_in_total_forum_topics|logged_in_username|logged_out|member_group|member_id|member_profile_link|module_version|page_title|path:advanced_search|path:atom|path:do_search|path:forgot|path:forum_home|path:image_url|path:login|path:logout|path:mark_all_read|path:memberlist|path:private_messages|path:recent_poster|path:register|path:rss|path:smileys|path:spellcheck_iframe|path:theme_css|path:view_active_topics|path:view_new_topics|path:view_pending_topics|path:wiki_base_url|path:wiki_home|path:your_control_panel|path:your_profile|private_messages|recent_poster|screen_name|site_id|site_index|site_label|site_name|site_short_name|site_url|theme_folder_url|total_comments|total_entries|total_forum_posts|total_forum_replies|total_forum_topics|total_queries|username|version|webmaster_email)\}
ee-tag-global-variable-param-bracketed:
name: support.variable.language.ee
begin: \{(path=|(?:(?:path|permalink|title_permalink|comment_path|day_path|entry_id_path|embed|encode|redirect|last_author_profile_path|member_path|member_search_path|multi_field|next_path|preload_replace:[a-zA-Z0-9_-]+|previous_path|profile_path|stylesheet|switch|thread_path|url_title_path)=)(".*?"|'.*?'|[^}\s]+?))(?=\s|\})
end: \}
captures:
'1': {name: support.variable.language.ee}
'2': {name: variable.parameter.ee}
patterns:
- include: '#tag-stuff'
ee-tag-local-variable:
name: support.variable.language.ee
match: (\G|\s|\b)(/?add_to_cart_button|/?articles|/?audio|/?buy_now_button|/?calendar_heading|/?calendar_rows|/?categories|/?category_menu|/?custom_fields|/?date_footer|/?date_heading|/?entries|/?entry_titles|/?field|/?field_errors|/?files|/?first_page|/?footer|/?global_errors|/?header|/?images|/?items|/?last_page|/?letter_header|/?member_names|/?moderators|/?movie|/?next_page|/?options|/?options:[a-zA-Z0-9_]+|/?page|/?paginate|/?pagination_links|/?parents|/?ping_row|/?ping_servers|/?preview|/?previous_page|/?row_blank|/?row_column|/?row_end|/?row_start|/?siblings|/?status|/?status_footer|/?status_group|/?status_header|/?status_menu|/?statuses|/?sticky|/?view_cart_button|/?year_heading|[a-zA-Z0-9_]+_file_url|absolute_count|absolute_results|active|add_to_cart_url|address_city|address_country|address_name|address_state|address_status|address_street|address_zip|age|allow_comments|allow_multiple|aol_im|article|article_history|article_title|articles_total|author|author_email|author_id|author_name|auto_login|auto_path|auto_thread_path|avatar|avatar_height|avatar_image_height|avatar_image_width|avatar_url|avatar_width|bio|birthday|blank|board_label|board_name|body|bulletins|buy_now_url|can_admin|can_ban|can_change_status|can_delete|can_edit|can_merge|can_moderate_comment|can_move|can_post|can_post_bulletin|can_private_message|can_report|can_split|cannot_admin|cannot_edit|captcha|caption|category_description|category_group|category_id|category_image|category_name|category_namespace|category_request|category_url_title|channel|channel_description|channel_encoding|channel_id|channel_lang|channel_language|channel_name|channel_names|channel_short_name|channel_title|channel_url|checkbox|children|class|clear_all_cookies_link|clear_ee_cookies_link|comment|comment_auto_path|comment_date|comment_entry_id_auto_path|comment_id|comment_site_id|comment_stripped|comment_subscriber_total|comment_tb_total|comment_total|comment_url_title_auto_path|comments_disabled|comments_expired|content|cookies_allowed|cookies_allowed_link|cookies_not_allowed|count|credit|date|day_number|depth|description|directory_id|directory_title|display_field|edit_article|edit_date|editable|email|empty_feed|encoding|entry_author_id|entry_date|entry_id|entry_site_id|error|error:[a-zA-Z0-9_]+|excerpt|expiration_date|extended_description|extension|field_data|field_errors:count|field_id|field_instructions|field_label|field_name|file_id|file_name|file_namespace|file_page|file_size|file_type|file_types|file_url|filename|file|first_child|first_name|formatting_buttons|forum_topic|forum_topic_id|forums_exist|freelancer_version|full_name|full_text|gender|global_errors:count|gmt_comment_date|gmt_date|gmt_edit_date|gmt_entry_date|gmt_last_updated|gmt_revision_date|group_description|group_id|heading|height|history|html_email|icq|id_auto_path|id_path|ignore_screen_name|image_namespace|in_forum|instructions|instructions:[a-zA-Z0-9_]+|interests|ip_address|is_ignored|is_image|is_post|is_topic|item|item_enabled|item_id|item_name|item_purchases|item_regular_price|item_sale_price|item_type|item_use_sale|join_date|keywords|label:[a-zA-Z0-9_]+|language|last_activity|last_author|last_child|last_comment_date|last_entry_date|last_forum_post_date|last_name|last_post_date|last_post_id|last_post_relative_date|last_reply|last_segment|last_updated|last_visit|last_visitor_date|letter|link|local_time|location|locked|mailing_list|main_namespace|maxlength|member_email|member_name|message_text|meta_refresh|mime_type|moderated|modified_date|month|month_num|month_short|most_visitor_date|most_visitors|msn_im|multiselect|name|name_namespace|namespace|namespace_label|new_article|next:|next_date|next_topic|next_topic_title|no_bulletins|no_history|no_results|no_results_page|not_category_request|not_entries|not_forum_topic|notes|occupation|old_revision|option_name|option_value|original_page|page_id|page_uri|page_url|pagination_page_number|pagination_url|parent_id|parents:|parents:title|parents:url-title|password|path|path:author_profile|path:close_revision|path:edit_topic|path:open_revision|path:redirect_page|path:topic_history|path:view_article|path:view_category|path:view_file|path:view_orig_article|path:view_revision|path:wiki_base_url|payer_business_name|payer_status|payment_fee|payment_gross|permalink|photo|photo_height|photo_image_height|photo_image_width|photo_url|photo_width|ping_date|ping_ipaddress|ping_server_name|ping_site_check|ping_site_name|ping_site_rss|ping_site_url|plain_email|post_date|post_number|post_total|posts|previous:|previous_date|previous_topic|previous_topic_title|private_messages|quantity|radio|recent_comment_date|redirect_page|redirected|ref_agent|ref_agent_short|ref_date|ref_from|ref_ip|ref_to|relationship|relative_date|relative_url|replies|reply_author|reply_results|required|results|revision|revision_author|revision_date|revision_id|revision_notes|revision_status|row_end|row_start|rows|safecracker_file|safecracker_head|screen_name|search_path|segment_[0-9]+|select|select_date|select_options|selected|selected_option:[a-zA-Z0-9_]+(:label)?|send_private_message|siblings:|siblings:title|siblings:url-title|signature|signature_image|signature_image_height|signature_image_url|signature_image_width|size|smiley|special_namespace|special_page|subcategory_total|subscribed|subscriber_count|subscriber_email|subscriber_guest_total|subscriber_is_member|subscriber_member_id|subscriber_member_total|subscriber_screen_name|subscriber_total_results|summary|switch(?!==)|template_edit_date|text|text_direction|textarea|textinput|timezone|title|title_permalink|topic_date|topic_relative_date|topic_title|topic_type|total_anon|total_comments|total_entries|total_forum_posts|total_forum_topics|total_guests|total_logged_in|total_members|total_pages|total_posts|total_replies|total_results|trackback_total|trimmed_url|unsubscribe_url|upload_date|uploads|url|url:[a-zA-Z0-9_]+|url_as_author|url_or_email|url_or_email_as_author|url_or_email_as_link|url_title|username|version|view_cart_url|view_count_four|view_count_one|view_count_three|view_count_two|viewable_image|views|week_date|width|wiki_name|yahoo_im|year|year_short)\b(?![\=\-\:])
ee-tag-local-variable-bracketed:
name: support.variable.language.ee
match: \{(/?add_to_cart_button|/?articles|/?audio|/?buy_now_button|/?calendar_heading|/?calendar_rows|/?categories|/?category_menu|/?custom_fields|/?date_footer|/?date_heading|/?entries|/?entry_titles|/?field|/?field_errors|/?files|/?first_page|/?footer|/?global_errors|/?header|/?images|/?items|/?last_page|/?letter_header|/?member_names|/?moderators|/?movie|/?next_page|/?options|/?options:[a-zA-Z0-9_]+|/?page|/?paginate|/?pagination_links|/?parents|/?ping_row|/?ping_servers|/?preview|/?previous_page|/?row_blank|/?row_column|/?row_end|/?row_start|/?siblings|/?status|/?status_footer|/?status_group|/?status_header|/?status_menu|/?statuses|/?sticky|/?view_cart_button|/?year_heading|[a-zA-Z0-9_]+_file_url|absolute_count|absolute_results|active|add_to_cart_url|address_city|address_country|address_name|address_state|address_status|address_street|address_zip|age|allow_comments|allow_multiple|aol_im|article|article_history|article_title|articles_total|author|author_email|author_id|author_name|auto_login|auto_path|auto_thread_path|avatar|avatar_height|avatar_image_height|avatar_image_width|avatar_url|avatar_width|bio|birthday|blank|board_label|board_name|body|bulletins|buy_now_url|can_admin|can_ban|can_change_status|can_delete|can_edit|can_merge|can_moderate_comment|can_move|can_post|can_post_bulletin|can_private_message|can_report|can_split|cannot_admin|cannot_edit|captcha|caption|category_description|category_group|category_id|category_image|category_name|category_namespace|category_request|category_url_title|channel|channel_description|channel_encoding|channel_id|channel_lang|channel_language|channel_name|channel_names|channel_short_name|channel_title|channel_url|checkbox|children|class|clear_all_cookies_link|clear_ee_cookies_link|comment|comment_auto_path|comment_date|comment_entry_id_auto_path|comment_id|comment_site_id|comment_stripped|comment_subscriber_total|comment_tb_total|comment_total|comment_url_title_auto_path|comments_disabled|comments_expired|content|cookies_allowed|cookies_allowed_link|cookies_not_allowed|count|credit|date|day_number|depth|description|directory_id|directory_title|display_field|edit_article|edit_date|editable|email|empty_feed|encoding|entry_author_id|entry_date|entry_id|entry_site_id|error|error:[a-zA-Z0-9_]+|excerpt|expiration_date|extended_description|extension|field_data|field_errors:count|field_id|field_instructions|field_label|field_name|file_id|file_name|file_namespace|file_page|file_size|file_type|file_types|file_url|filename|file|first_child|first_name|formatting_buttons|forum_topic|forum_topic_id|forums_exist|freelancer_version|full_name|full_text|gender|global_errors:count|gmt_comment_date|gmt_date|gmt_edit_date|gmt_entry_date|gmt_last_updated|gmt_revision_date|group_description|group_id|heading|height|history|html_email|icq|id_auto_path|id_path|ignore_screen_name|image_namespace|in_forum|instructions|instructions:[a-zA-Z0-9_]+|interests|ip_address|is_ignored|is_image|is_post|is_topic|item|item_enabled|item_id|item_name|item_purchases|item_regular_price|item_sale_price|item_type|item_use_sale|join_date|keywords|label:[a-zA-Z0-9_]+|language|last_activity|last_author|last_child|last_comment_date|last_entry_date|last_forum_post_date|last_name|last_post_date|last_post_id|last_post_relative_date|last_reply|last_segment|last_updated|last_visit|last_visitor_date|letter|link|local_time|location|locked|mailing_list|main_namespace|maxlength|member_email|member_name|message_text|meta_refresh|mime_type|moderated|modified_date|month|month_num|month_short|most_visitor_date|most_visitors|msn_im|multiselect|name|name_namespace|namespace|namespace_label|new_article|next:|next_date|next_topic|next_topic_title|no_bulletins|no_history|no_results|no_results_page|not_category_request|not_entries|not_forum_topic|notes|occupation|old_revision|option_name|option_value|original_page|page_id|page_uri|page_url|pagination_page_number|pagination_url|parent_id|parents:|parents:title|parents:url-title|password|path|path:author_profile|path:close_revision|path:edit_topic|path:open_revision|path:redirect_page|path:topic_history|path:view_article|path:view_category|path:view_file|path:view_orig_article|path:view_revision|path:wiki_base_url|payer_business_name|payer_status|payment_fee|payment_gross|permalink|photo|photo_height|photo_image_height|photo_image_width|photo_url|photo_width|ping_date|ping_ipaddress|ping_server_name|ping_site_check|ping_site_name|ping_site_rss|ping_site_url|plain_email|post_date|post_number|post_total|posts|previous:|previous_date|previous_topic|previous_topic_title|private_messages|quantity|radio|recent_comment_date|redirect_page|redirected|ref_agent|ref_agent_short|ref_date|ref_from|ref_ip|ref_to|relationship|relative_date|relative_url|replies|reply_author|reply_results|required|results|revision|revision_author|revision_date|revision_id|revision_notes|revision_status|row_end|row_start|rows|safecracker_file|safecracker_head|screen_name|search_path|segment_[0-9]+|select|select_date|select_options|selected|selected_option:[a-zA-Z0-9_]+(:label)?|send_private_message|siblings:|siblings:title|siblings:url-title|signature|signature_image|signature_image_height|signature_image_url|signature_image_width|size|smiley|special_namespace|special_page|subcategory_total|subscribed|subscriber_count|subscriber_email|subscriber_guest_total|subscriber_is_member|subscriber_member_id|subscriber_member_total|subscriber_screen_name|subscriber_total_results|summary|switch(?!==)|template_edit_date|text|text_direction|textarea|textinput|timezone|title|title_permalink|topic_date|topic_relative_date|topic_title|topic_type|total_anon|total_comments|total_entries|total_forum_posts|total_forum_topics|total_guests|total_logged_in|total_members|total_pages|total_posts|total_replies|total_results|trackback_total|trimmed_url|unsubscribe_url|upload_date|uploads|url|url:[a-zA-Z0-9_]+|url_as_author|url_or_email|url_or_email_as_author|url_or_email_as_link|url_title|username|version|view_cart_url|view_count_four|view_count_one|view_count_three|view_count_two|viewable_image|views|week_date|width|wiki_name|yahoo_im|year|year_short)\}
ee-tag-operator:
name: keyword.operator.logical.ee
match: (\s|^)(OR|AND|XOR|&&|<=?|>=?|<>|!=|==|\|\|)\s
ee-tag-parameter-known:
match: (?:\s|^)(allow_comments|allow_html|author_id|author_only|backspace|base_path|board|boards|cache|cancel|cat_limit|cat_style|category|category_group|channel|charset|class|columns|comment_id|country_code|currency|custom_fields|datepicker|day|debug|decimal|directory_id|disable|display|display_by|dynamic|dynamic_parameters|dynamic_start|dynamic_title|effect|entry_id|entry_id_from|entry_id_to|entry_status|error_handling|exclude_guests|field|file|file_id|fixed_order|form_class|form_id|form_name|format|forums|group_id|id|image_url|include_jquery|json|leading_zeroes|limit|list|logged_out_member_id|markup|match|member_data|member_id|month|month_limit|multipname|name|no_result_page|offset|orderby|paginate|paginate_base|paginate_type|parent_only|parse|plugin|popup|preserve_checkboxes|preview|profile_path|recipients|redirect|refresh|related_categories_mode|relaxed_categories|replyto|require_entry|restrict_channel|result_page|results|return|return_[0-9]+|rte_selector|rte_toolset_id|rules:[a-zA-Z_]+|safecracker_head|search:[a-zA-Z_]+|search_in|secure_action|secure_return|selector|show|show_current_week|show_disabled|show_empty|show_expired|show_expired_entries|show_future_entries|show_group|show_pages|silent|site|sort|sql|start_day|start_on|status|status_code|sticky|stop_before|style|success|switch|theme|title|toolset_id|track_views|type|ui|uncategorized_entries|url|url_title|use_live_url|user_recipients|username|users|weblog|week_sort|where|which|wiki|wrap|year)=(?!=)
captures:
'1': {name: entity.other.attribute-name.predefined.ee}
ee-tag-parameter-user:
name: entity.other.attribute-name.user.ee
match: \b([a-zA-Z0-9-_:]+)(?==)
ee-tag-variable-user:
name: variable.other.ee
match: /?(?!exp:)[a-zA-Z0-9-_:]+
patterns:
- include: '#tag-stuff'
embedded-code:
patterns:
- include: '#ee-comment'
- include: '#php'
- include: '#javascript'
- include: '#css'
- include: '#ee-tag-global-variable-param-bracketed'
- include: '#ee-tag-constant-bracketed'
- include: '#ee-tag-local-variable-bracketed'
- include: '#ee-tag-global-variable-bracketed'
- include: '#ee-tag'
javascript:
name: source.js.embedded.html
begin: (?:^\s+)?<((?i:script))\b(?![^>]*/>)[^>]*>?
end: </((?i:script))>(?:\s*)?
captures:
'1': {name: entity.name.tag.html}
patterns:
- include: '#embedded-code'
- include: source.js.jquery
- include: source.js
php:
patterns:
- name: source.php.embedded.block.html
begin: (?:\s*)<\?(php|=)
beginCaptures:
'0': {name: punctuation.section.embedded.begin.php}
end: \?>
endCaptures:
'0': {name: punctuation.section.embedded.end.php}
patterns:
- include: '#embedded-code'
- include: '#php-source'
php-source:
patterns:
- name: comment.block.php
begin: /\*
end: \*/
- name: comment.php
match: \/\/.*
- name: comment.line.number-sign.ruby
match: '#.*?(?=\?>)'
- name: comment.line.double-slash.ruby
match: //.*?(?=\?>)
- include: source.php
string-double-quoted:
name: string.quoted.double.html
begin: '"'
end: '"'
patterns:
- include: '#ee-comment'
string-single-quoted:
name: string.quoted.single.html
begin: ''''
end: ''''
patterns:
- include: '#ee-comment'
tag-stuff:
patterns:
- include: '#ee-comment'
- include: '#ee-tag-parameter-known'
- include: '#ee-tag-local-variable'
- include: '#ee-tag-global-variable-param'
- include: '#ee-tag-global-variable'
- include: '#ee-tag-embed'
- include: '#ee-tag-operator'
- include: '#ee-tag-parameter-user'
- include: '#string-double-quoted'
- include: '#string-single-quoted'
- include: '#ee-tag'
foldingStartMarker: (\{(exp:([a-zA-Z0-9_:]+)|if )\b.*?\})|(<(head|table|tr|div|style|script|ul|ol|form|dl|section|header|footer|article|nav|aside)\b.*?>)
foldingStopMarker: (\{/(exp:([a-zA-Z0-9_:]+)|if)\})|(</(head|table|tr|div|style|script|ul|ol|form|dl|section|header|footer|article|nav|aside)>)
keyEquivalent: ^~E
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment