content/glyph/book/text_editing/macro_intro.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
<!DOCTYPE html> <html lang="en"> <head> <title>Glyph - Introducing Glyph Macros</title> <meta charset="utf-8" /> <meta name="author" content="Fabio Cevasco" /> <meta name="copyright" content="Fabio Cevasco" /> <meta name="robots" content="all, follow" /> <meta name="Revisit-After" content="2 Days" /> <meta name="language" content="en" /> <meta name="target_country" content="en-us" /> <meta name="country" content="United States" /> <meta name="description" content="H3RALD - Fabio Cevasco's Web Site" /> <meta name="keywords" content="h3rald, fabio cevasco, glyph" /> <link rel="shortcut icon" href="/favicon.png" type="image/png" /> <meta content="44.388041;9.073248" name="ICBM" /> <link rel="stylesheet" type="text/css" href="/styles/html5reset.css" /> <link rel="stylesheet" type="text/css" href="/styles/style.css" /> <!--[if lte IE 8]> <script src="/js/html5.js" type="text/javascript"></script> <![endif]--> </head> <body> <!--[if lte IE 6]> <div id="ie-warning"> This site is not compatible with Internet Explorer 6 or lower. You should consider using a more modern browser for a better – and <em>safer</em> – web experience. [<a href="http://browsehappy.com/browsers/">Read More »</a>] </div> <![endif]--> <section id="container"> <header class="page"> <nav class="home-link"> <a href="/"> <img src="/images/h3rald_small.png" alt="H3RALD" class="default"/> <![if !IE]> <img src="/images/h3rald_hover_small.png" alt="H3RALD" class="hover"/> <![endif]> </a> </nav> <nav class="section"> /<a href="/projects/" rel="archives">PROJECTS</a> </nav> </header> <article class="page"> <header> <hgroup> <h1>Introducing Glyph Macros</h1> </hgroup> </header> <section id="body-text" class="hyphenate"> <nav><a href="/glyph/book/text_editing/glyph_files.html">.glyph files ←</a><a href="/glyph/book/index.html">Contents</a><a href="/glyph/book/text_editing/attribute_intro.html">→ Macro attributes</a></nav> <p>The most important concept to grasp about Glyph is the concept of <em>macro</em>.</p> <p>A Glyph macro is, in a nutshell, an identifier of some kind that wraps a value or parameters within square brackets. More specifically:</p> <ul> <li>The macro identifier can contain <em>any</em> character except for: <code>[</code>, <code>]</code>, <code>\</code>, <code>|</code>, <code>@</code> or spaces.</li> <li>The delimiters can be either <code>[</code> and <code>]</code> or <code>[=</code> and <code>=]</code> (<span class="fmi">for more information on <mark>differences between delimiters</mark>, see <a href="/glyph/book/text_editing/esc_quot.html#esc_quot">Escaping and Quoting</a></span>).</li> <li>The value can be anything, even other macros. If a macro supports more than one parameter, they must be separated with <code>|</code>. For example, the <a href="/glyph/book/macros/macros_inline.html#m_link"><code>link</code></a> macro can take an optional second parameter for the link text: <code>link[#link_id|This is the link text]</code>.</li> <li>A macro can also have <em>attributes</em>, which look exactly like macros but their identifier starts with a <code>@</code>.</li> </ul> <p>A macro can often have one or more aliases. For example, <code>=></code> is an alias for the <a href="/glyph/book/macros/macros_inline.html#m_link"><code>link</code></a> macro, so the following macro calls are equivalent:</p> <ul> <li><code>=>[#test|Test Section]</code></li> <li><code>link[#test|Test Section]</code></li> </ul> <nav><a href="/glyph/book/text_editing/glyph_files.html">.glyph files ←</a><a href="/glyph/book/index.html">Contents</a><a href="/glyph/book/text_editing/attribute_intro.html">→ Macro attributes</a></nav> </section> </article> <footer> <section class="ads"> <script type="text/javascript"><!-- google_ad_client = "pub-2871497824158668"; /* 728x90, created 9/10/10 */ google_ad_slot = "3963343166"; google_ad_width = 728; google_ad_height = 90; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> </section> <section> <nav> <a href="/about/">ABOUT</a>|<a href="/contact/">CONTACT</a> </nav> <p>H3RALD Web Site v8.1 — © 2010 — <em>Fabio Cevasco</em></p> </section> </footer> </section><!-- #container end --> <script src="http://www.google.com/jsapi?key=ABQIAAAAr6RY1Z6dchG_sX9WDLSy3xRlq2n1sm52B5HDRR5tm6o8XM18FhR56xHNNH6CsX86uN5VoTrglpyOyQ" type="text/javascript"></script> <!-- <script src="/js/jquery.js" type="text/javascript"></script> --> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script src="/js/jquery-timeago.js" type="text/javascript"></script> <script src="/js/jquery-easing.js" type="text/javascript"></script> <script src="/js/jquery-fancybox.js" type="text/javascript"></script> <script src="/js/jquery-toc.js" type="text/javascript"></script> <script src="/js/date.js" type="text/javascript"></script> <script src="/js/feeds.js" type="text/javascript"></script> <script src="/js/search.js" type="text/javascript"></script> <script src="/js/hyphenator.min.js" type="text/javascript"></script> <script src="/js/init.js" type="text/javascript"></script> <!-- Start Google Analytics --> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-18587377-1']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> <!-- End Google Analytics --> <!-- Start of StatCounter Code --> <script type="text/javascript"> var sc_project=6193656; var sc_invisible=1; var sc_security="57f7ee2a"; </script> <script type="text/javascript" src="http://www.statcounter.com/counter/counter_xhtml.js"></script> <!-- End of StatCounter Code --> </body> </html> |