Giter VIP home page Giter VIP logo

org-ehtml's Introduction

                              Org-ehtml
             export Org-mode files as editable web pages

DESCRIPTION
    Org-ehtml allows for interactively viewing and editing Org-mode
    files through a web browser.  The Emacs web server [1] serves
    Org-mode files as editable HTML exported with a special ox-ehtml
    backend which extends the standard Org-mode HTML export.

    [1]  https://github.com/eschulte/emacs-web-server

REQUIREMENTS
    Emacs 24.3 or later and the Emacs web server [1].

USAGE
    1. Install from melpa [2] or source.

       [2]  http://melpa.milkbox.net/

    2. Optionally run the tests suite.

       (require 'test-org-ehtml)
       (ert "org-ehtml")

    3. Configure Org-ehtml to serve a directory of Org-mode files on
       your machine (e.g., "~/public_org"), and set all fields to be
       editable.

       ;; NOTE: the org-ehtml-docroot value should be fully expanded
       (setq org-ehtml-docroot (expand-file-name "~/public_org"))
       (setq org-ehtml-everything-editable t)

    4. Start up the web server.

       (require 'org-ehtml)
       (ws-start org-ehtml-handler 8888)

    5. Point your browser to [3] select a page, and move your mouse
       over the page.  Editable portions of the page will be
       highlighted, click on these to edit.

       [3]  http://localhost:8888

EXTENSIONS

    Integration with Version Control

      (require 'vc)

      (add-hook
       'org-ehtml-after-save-hook
       (lambda (request)
         (let ((file (buffer-file-name (current-buffer))))
           (vc-checkin (list file)
                       (vc-backend file) nil "edit through org-ehtml"))))

    Authentication

      NOTE: This uses HTTP BASIC authentication which is only secure
      when used over a secure (HTTPS) connection.

      Use the `ws-with-authentication' function to protect org-ehtml
      functionality with credentials.  For example, the following
      requires all edits require a user supplies the username "admin"
      and the password "password".

          (setf (cdr (assoc '(:POST . ".*") org-ehtml-handler))
                (ws-with-authentication 'org-ehtml-edit-handler
                                        '(("admin" . "password"))))

    Agenda View

      Org-ehtml supports viewing the Agenda buffer.  It can be enabled
      by setting org-ehtml-allow-agenda to a non-nil value.  The
      agenda can be viewed by adding /agenda/CMD to the url with CMD
      being one of the following.

      day, week, fortnight, month, year:
        Show org-agenda-list in that range.  For example [4] will show
        the agenda for the specified day.  An additional argument can
        be provided to set the start date.

        [4]  http://localhost:8888/agenda/day/2013-11-11

      any natural number:
        Show org-agenda-list for that many days.  Similar to using
        day, week, etc.

      todo:
        Show org-todo-list.

      tags:
        Show org-tags-view.  It requires an additional argument
        (separated by a /) specifying the tag.  Using todo as first
        argument will limit the search to TODO entries.  For example
        [5] will show all headlines tagged :work: and [6] will only
        show headlines tagged :work: and marked TODO.

        [5]  http://localhost:8888/agenda/tags/work
        [6]  http://localhost:8888/agenda/tags/todo/work

org-ehtml's People

Contributors

eschulte avatar ruediger avatar boykov avatar jeffkowalski avatar thesoftwarebin avatar joranvar avatar

Watchers

Pavel Tokarev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.