# CodeMirror: Smarty mixed mode

{** * @brief Smarty mixed mode * @author Ruslan Osmanov * @date 29.06.2013 *} <html> <head> <title>{$title|htmlspecialchars|truncate:30}</title> </head> <body> {* Multiline smarty * comment, no {$variables} here *} {literal} {literal} is just an HTML text. <script type="text/javascript">//<![CDATA[ var a = {$just_a_normal_js_object : "value"}; var myCodeMirror = CodeMirror.fromTextArea(document.getElementById("code"), { mode : "smartymixed", tabSize : 2, indentUnit : 2, indentWithTabs : false, lineNumbers : true, smartyVersion : 3 }); // ]]> </script> <style> /* CSS content {$no_smarty} */ .some-class { font-weight: bolder; color: "orange"; } </style> {/literal} {extends file="parent.tpl"} {include file="template.tpl"} {* some example Smarty content *} {if isset($name) && $name == 'Blog'} This is a {$var}. {$integer = 4511}, {$array[] = "a"}, {$stringvar = "string"} {$integer = 4512} {$array[] = "a"} {$stringvar = "string"} {assign var='bob' value=$var.prop} {elseif $name == $foo} {function name=menu level=0} {foreach $data as $entry} {if is_array($entry)} - {$entry@key} {menu data=$entry level=$level+1} {else} {$entry} {* One * Two * Three *} {/if} {/foreach} {/function} {/if} </body> <!-- R.O. --> </html>

The Smarty mixed mode depends on the Smarty and HTML mixed modes. HTML mixed mode itself depends on XML, JavaScript, and CSS modes.

It takes the same options, as Smarty and HTML mixed modes.

MIME types defined: `text/x-smarty`.