Git Product home page Git Product logo

coo's People

Contributors

fisxoj avatar vindarel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

coo's Issues

Can not copy <my-project>/default.css

Trying out coo (even though I can't tell what it brings out of the box compared to cl-docutils ;) ), it tries to copy default.css giving it the path of the current relative pathname.

Doesn't compile on CCL

Here is a stack trace I copied from Sly's debugger.

Unknown character name - "Form" .
   [Condition of type SIMPLE-ERROR]

Restarts:
 0: [RETRY-COMPILE-FILE] Retry compiling #P"/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"
 1: [SKIP-COMPILE-FILE] Skip compiling #P"/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"
 2: [RETRY] Retry compiling #<CL-SOURCE-FILE "pp-toml" "pp-toml">.
 3: [ACCEPT] Continue, treating compiling #<CL-SOURCE-FILE "pp-toml" "pp-toml"> as having been successful.
 4: [RETRY] Retry ASDF operation.
 5: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration.
 --more--

Backtrace:
 0: (#<Anonymous Function #x30000072F1EF> #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> #\\ NIL)
 1: (CCL::READ-DISPATCH #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> #\#)
 2: (CCL::%PARSE-EXPRESSION #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> #\# (NIL))
 3: (CCL::%READ-LIST-EXPRESSION #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> (NIL) #\))
 4: (CCL::READ-LIST #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> NIL #\))
 5: (CCL::%PARSE-EXPRESSION #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> #\( NIL)
 6: (CCL::%READ-FORM #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> 0 NIL)
 7: (CCL::READ-CONDITIONAL #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> #\- NIL)
 8: (CCL::READ-DISPATCH #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> #\#)
 9: (CCL::%PARSE-EXPRESSION #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> #\# (NIL))
10: (CCL::%READ-LIST-EXPRESSION #<BASIC-FILE-CHARACTER-INPUT-STREAM ("/Users/mb/quicklisp/dists/quicklisp/software/pp-toml-20180228-git/pp-toml.lisp"/4 UTF-8) #x3020051D707D> (NIL) #\))

May be a docparser issue - but "unexpected indentation" error?

Just tried running coo on postmodern. It was happily running away and then suddenly threw up on one file.

By the way, it threw an error, giving a line number, but not the file name (grep tells me that it s prepare.lisp).

It looks like it is upset when there is demonstration lisp code in a document string.

Fails when package name has a slash (/)

The documentation generation fails if the package name has a "/" on it, because this "/" goes straight into the pathname name and thus it's interpreted like a directory separator.

(defun document-package (package-index &key keep-rst (base-path #P"docs/"))
 "Generates documentation in html form for :param:`package-index`.

The documentation file will have the pathanme ``{{base-path}}{{package-name}}.html``, so a package named ``cool-package`` with :param:`base-dir` ``docs/`` will have the generated pathame ``docs/cool-package.html``.

If :param:`keep-rst` is truthy, don't delete the intermediate restructured text file."

 (let* ((pathname (make-pathname :defaults base-path
                                 :name (-> package-index docparser:package-index-name string-downcase)
                                 :type "rst"
                                 :version nil))
        (coo.roles:*context-package* (find-package (docparser:package-index-name package-index)))
        (args (list :variables nil
                    :functions nil
                    :macros nil
                    :generic-functions nil
                    :structures nil
                    :classes nil)))

The problem is at name (-> package-index docparser:package-index-name string-downcase) : pathname is not filtering the package-index's name.

If this package name has a slash (/) (for example "mypackage/utils", then it becomes part of the pathname. It shouldn't.

The system needs to filter the package names accordingly.

Explore replacing cl-docutils

I started with this because it was an existing docutils implementation, but it's proving pretty difficult to work with

  • Controlling html output is difficult
    • limits styling
    • limits decorations like table of contents, border matter like links to other packages
  • can't figure out how to work with the transform system
    • can't put coo's name/link in the footer
    • it's been hard to muffle some errors

I might explore a new implementation of an rst parser in another repo in the meantime.

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.