content/glyph.textile
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 |
----- permalink: glyph filters_pre: - erb - redcloth title: "Project: Glyph" type: project github: glyph links: - "Repository": http://www.github.com/h3rald/glyph/ - "Bug Tracking": http://www.github.com/h3rald/glyph/issues - "Book (PDF)": http://github.com/h3rald/glyph/raw/master/book/output/pdf/glyph.pdf - "Reference Documentation": http://yardoc.org/docs/h3rald-glyph/ - "User Group": http://groups.google.com/group/glyph-framework status: Active version: 0.1.0 ----- <%= render 'project_data', :tag => 'glyph' %> Glyph is a _Rapid Document Authoring Framework_. Think of it like a sort of "Ruby On Rails":http://www.rubyonrails.org but for creating text documents instead of web sites. With Glyph, you can manage your documents tidily in _projects_ that can be used to generate deliverables in different formats such as HTML or PDF (through "Prince":http://www.princexml.com). <br style="clear:both" /> h3. Main Features !>/img/pictures/glyph.png! Glyph uses a simple macro system to perform a wide variety of advanced tasks: * Generate block-level HTML tags not commonly managed by lightweight markups, like @head@, @body@, @div@ and @table@. * Create and validate internal and external links. * Include and validate images and figures. * Automatically determine header levels based on the document structure. * Automatically generate a Table of Contents based on the document structure. * Store common snippets of text in a single YAML file and use them anywhere in your document, as many times as you need. * Store configuration settings in a YAML file and use them anywhere in your document, as many times as you need. * Evaluate Ruby code within your document. * Call macros from other macros (including snippets), carefully avoiding mutual calls. * Include text files in other text files. * Include the contents of configuration settings (author, title) in the document. * Filter input explicitly or implicitly, based on file extensions when including files. * Manage comments and todo items. h3. Installation @gem install glyph@ -- simple, as always. h3. Essential Glyph Commands Glyph is 100% command line. Its interface "Git's":http://git-scm.com/ for its simplicity and power (thanks to the "Gli":http://github.com/davetron5000/gli gem). Here are some example commands: * @glyph init@ -- to initialize a new Glyph project in the current (empty) directory. * @glyph add introduction.textile@ -- to create a new file called _introduction.textile_. * @glyph compile@ -- to compile the current document into a single HTML file. * @glyph compile -f pdf@ -- to compile the current document into HTML and then transform it into PDF using "Prince":http://www.princexml.com. h3. Glyph macros in a nutshell Format your documents using Textile or Markdown, and use Glyph Macros to do everything else: **Glyph Source:** <pre><code> section[header[Something about Glyph] You can use Glyph macros in conjunction with _Textile_ or _Markdown_ to produce HTML files effortlessly. section[header[What about PDFs?|pdf] Once you have a single, well-formatted HTML file, converting it to PDF is extremely easy with a 3rd-party renderer like =>[http://www.princexml.com|Prince]. ] ] </code></pre> **HTML Output:** <pre><code> <div class="section"> <h2 id="h_1">Something about Glyph</h2> <p>You can use Glyph macros in conjunction with <em>Textile</em> or <em>Markdown</em> to produce HTML files effortlessly.</p> <div class="section"> <h3 id="pdf">What about PDFs?</h3> <p>Once you have a single, well-formatted HTML file, converting it to PDF is extremely easy with a 3rd-party renderer like <a href="http://www.princexml.com">Prince</a>.</p> </div> </div> </code></pre> <%= render 'project_updates', :tag => 'glyph' %> |