_pub.n
Title page | James Carlson

Collapse Share Open book
  • 2.1 Create a notebookhttp://www.noteshare.io/section/asciidoc-101?part=Create%20a%20notebook#_create_a_notebook
  • 2.2 Create a new sectionhttp://www.noteshare.io/section/asciidoc-101?part=Create%20a%20new%20section#_create_a_new_section
  • 2.3 Imageshttp://www.noteshare.io/section/asciidoc-101?part=Images#_images
  • 2.4 Manage notebookhttp://www.noteshare.io/section/asciidoc-101?part=Manage%20notebook#_manage_notebook
  • 2.5 Collaborationhttp://www.noteshare.io/section/asciidoc-101?part=Collaboration#_collaboration
  • 2.6 Exporthttp://www.noteshare.io/section/asciidoc-101?part=Export#_export
  • 3.1 First things firsthttp://www.noteshare.io/section/markup-basics?part=First%20things%20first#_first_things_first
  • 3.2 Sectionshttp://www.noteshare.io/section/markup-basics?part=Sections#_sections
  • 3.3 Blockshttp://www.noteshare.io/section/markup-basics?part=Blocks#_blocks
  • 3.4 Basic tableshttp://www.noteshare.io/section/markup-basics?part=Basic%20tables#_basic_tables
  • 4.5 Math Homeworkhttp://www.noteshare.io/section/math-homework?part=Math%20Homework#_math_homework
  • 4.6 Chemistryhttp://www.noteshare.io/section/math-homework?part=Chemistry#_chemistry
  • 5.1 Browse menubarhttp://www.noteshare.io/section/the-menus--to-revise-and-update-?part=Browse%20menubar#_browse_menubar
  • 5.2 Read menubarhttp://www.noteshare.io/section/the-menus--to-revise-and-update-?part=Read%20menubar#_read_menubar
  • 5.3 Write menubarhttp://www.noteshare.io/section/the-menus--to-revise-and-update-?part=Write%20menubar#_write_menubar
  • 5.4 Media menubarhttp://www.noteshare.io/section/the-menus--to-revise-and-update-?part=Media%20menubar#_media_menubar
  • 6.1 Creating a Notehttp://www.noteshare.io/section/creating-notes-and-notebooks?part=Creating%20a%20Note#_creating_a_note
  • 6.2 Editing a Notehttp://www.noteshare.io/section/creating-notes-and-notebooks?part=Editing%20a%20Note#_editing_a_note
  • 6.3 Markup 102http://www.noteshare.io/section/creating-notes-and-notebooks?part=Markup%20102#_markup
  • 6.4 Creating a notebookhttp://www.noteshare.io/section/creating-notes-and-notebooks?part=Creating%20a%20notebook#_creating_a_notebook
  • 7.1 A simple tablehttp://www.noteshare.io/section/tables-?part=A%20simple%20table#_a_simple_table
  • 7.2 A formatted tablehttp://www.noteshare.io/section/tables-?part=A%20formatted%20table#_a_formatted_table
  • 7.3 A table with a headerhttp://www.noteshare.io/section/tables-?part=A%20table%20with%20a%20header#_a_table_with_a_header
  • 7.4 A table with a header and footerhttp://www.noteshare.io/section/tables-?part=A%20table%20with%20a%20header%20and%20footer#_a_table_with_a_header_and_footer
  • 8.1 References within a notehttp://www.noteshare.io/section/cross-references-2?part=References%20within%20a%20note#_references_within_a_note
  • 8.2 References within Notesharehttp://www.noteshare.io/section/cross-references-2?part=References%20within%20Noteshare#_references_within_noteshare
  • 8.3 References to a web pagehttp://www.noteshare.io/section/cross-references-2?part=References%20to%20a%20web%20page#_references_to_a_web_page
  • 8.4 References to something inside a web pagehttp://www.noteshare.io/section/cross-references-2?part=References%20to%20something%20inside%20a%20web%20page#_references_to_something_inside_a_web_page
  • 9.1 Syntaxhttp://www.noteshare.io/section/mathematical-notation?part=Syntax#_syntax
  • 10.1 Exampleshttp://www.noteshare.io/section/chemistry?part=Examples#_examples
  • 10.2 Structural formulashttp://www.noteshare.io/section/chemistry?part=Structural%20formulas#_structural_formulas
  • 10.3 Referenceshttp://www.noteshare.io/section/chemistry?part=References#_references
  • 14.1 Check-in and check-outhttp://www.noteshare.io/section/collaboration?part=Check-in%20and%20check-out#_check_in_and_check_out
  • 14.4 Authorship of commentshttp://www.noteshare.io/section/comments?part=Authorship%20of%20comments#_authorship_of_comments
  • 15.1 Attributeshttp://www.noteshare.io/section/extras?part=Attributes#_attributes
  • 16.1 Notes on the embed featurehttp://www.noteshare.io/section/test-of-embed-feature?part=Notes%20on%20the%20embed%20feature#_notes_on_the_embed_feature
  • 17.1 Standard accounthttp://www.noteshare.io/section/noteshare-advanced-features?part=Standard%20account#_standard_account
  • 17.2 Premium accounthttp://www.noteshare.io/section/noteshare-advanced-features?part=Premium%20account#_premium_account
  • 17.3 In the pipelinehttp://www.noteshare.io/section/noteshare-advanced-features?part=In%20the%20pipeline#_in_the_pipeline
  • 20.1 Problem sets, etc.http://www.noteshare.io/section/technical-appendix?part=Problem%20sets,%20etc.#_problem_sets_etc
  • 20.2 Quiz #1http://www.noteshare.io/section/technical-appendix?part=Quiz%20#1#_quiz
  • 20.3 Quiz #2http://www.noteshare.io/section/technical-appendix?part=Quiz%20#2#_quiz
  • 20.4 Technical notehttp://www.noteshare.io/section/technical-appendix?part=Technical%20note#_technical_note
  • 21.1 The Quadratic Equationhttp://www.noteshare.io/section/linking-the-main-page-and-the-aside?part=The%20Quadratic%20Equation#_the_quadratic_equation
  • 21.2 The Cubic equationhttp://www.noteshare.io/section/linking-the-main-page-and-the-aside?part=The%20Cubic%20equation#_the_cubic_equation
  • 22.1 Why Markup?http://www.noteshare.io/section/asciidoc-markup?part=Why%20Markup?#_why_markup
  • 22.2 PDFhttp://www.noteshare.io/section/asciidoc-markup?part=PDF#_pdf
  • 22.3 Links between lessonshttp://www.noteshare.io/section/asciidoc-markup?part=Links%20between%20lessons#_links_between_lessons
  • 22.4 More Asciidoc Exampleshttp://www.noteshare.io/section/asciidoc-markup?part=More%20Asciidoc%20Examples#_more_asciidoc_examples

Noteshare Handbook

\(\def\AA{\mathbb{A}} \def\BB{\mathbb{B}} \def\CC{\mathbb{C}} \def\DD{\mathbb{D}} \def\EE{\mathbb{E}} \def\FF{\mathbb{F}} \def\NN{\mathbb{N}} \def\OO\mathbb{{O}} \def\PP{\mathbb{P}} \def\QQ{\mathbb{Q}} \def\RR{\mathbb{R}} \def\ZZ{\mathbb{Z}} \def\ffp{\mathfrak{p}} \def\bold#1{\bf #1} \def\CCC{\mathcal{C}} \def\EEE{\mathcal{E}} \def\FFF{\mathcal{F}} \def\PPP{\mathcal{P}} \def\UUU{\mathcal{U}}    \newcommand{\commadots}{, \ldots, } \newcommand{\set}[1]{ \{\,#1\, \} } \newcommand{\sett}[2]{ \{\,#1\, \mid\, #2\, \} } \newcommand{\Set}[1]{ \Big\{\,#1\, \Big\} } \newcommand{\Sett}[2]{ \Big\{\,#1\, \Big\vert\; #2\, \Big\} } \newcommand{\mapright}[1]{\ \smash{ \mathop{\longrightarrow}\limits^{#1}}\ } \newcommand{\vars}[2]{{#1}_1\commadots{#1}_{#2}} \newcommand{\map}{\longrightarrow} \def\rank{\mathop{rank}} \def\dim{\mathop{dim}} \def\height{\mathop{height}}\)

16. Test of embed feature

In writing up lecture notes it frequently happens that you need to spend considerable time writing up some standard topic that is quite well-known and likely treated elsewhere. Suppose that you, or someone else already wrote up a perfectly good treatment of this topic. Wouldn’t it be nice if you could just say embed::616223[] to embed document 616223 and then go on about your writing?

Well, that is now possible. Imagine that you are a math professor, and you need for your students to review basic manifold theory. Someone, some time ago, wrote this up in the document with id 1080. So we just reference it like we did document 616223 above. And voilà! Look below and behold!! (Scroll please — look for Manifolds).

16.1. Notes on the embed feature

At the moment, every document (note, or lessson) in Noteshare is referenced by an integer id. This may or may not be the way to go for a long future for this idea. What I envision is a site — or a network of sites, which is what noteshare appears to be to the user — within which anyone can embed a document when, where, and how he pleases as long as the author of the document has given permission for embedding. This is the DRY principle applied to a community of authors (where the community extends in space and time — author A may use the text of author B 30 years after author B has passed on).

There is a lot to be thought out, but I think that this could be a valuable feature. Note also that there is a kind of live update bonus: If the author of "Manifolds" below updates his version, the "Embedder" can re-render his document to get the update. How the author notifies the embedder needs to be though out also.

Here is the basic code that implements the feature (it has evolved a bit since first written):

def TextTransformer.execute_embeds(text)

    embedRX = /embed::(.*?)\[(.*?)\]/
    scan = text.scan embedRX
    for match in scan do
      oldText = "embed::#{match[0]}[#{match[1]}]"
      lesson = Lesson.where(id: match[0])[0]
      if lesson
        puts "EXX: I will embed lesson #{lesson.id}"
        newText = lesson.original_content
        text = text.gsub(oldText, newText)
      end
    end

    return text
  end

Note much to it, though this is a first and fast implementation.

Note
The embedded section below is just a start on a rough draft. It is used here as a proof-of-concept only.

embed::1080[]


Created December 13, 2014, last updated: August 21, 2015