Coder Social home page Coder Social logo

Comments (11)

apjanke avatar apjanke commented on July 1, 2024 1

Feel free to take my helptext extractor code! The stuff you need is:

  • .gitignore
  • Makefile
  • doc/Makefile
  • doc/mktexi.pl
  • doc/OctTexiDoc.pm
  • doc/README.md
  • doc/slf4o.qhcp
  • doc/slf4o.texi.in

Edit the doc/slf4o.qhcp file to use the right file names for your package and rename it to <mypackage>.qhcp. Rename doc/slf4o.texi.in to <mypackage>.texi.in and change its contents as appropriate. The rest of the files are generic and should be usable if you drop them right in to another Octave package. You'll need to provide your own properly-formatted DESCRIPTION and INDEX files in the package root.

These scripts are based on the doco-generation stuff in various Octave Forge packages, but I've modified them to support namespaces and classdef files, and refactored the code.

Let me know how they work out for you! I'd be happy to fix them up if you have problems with them.

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024 1

Okay, I think this is all working now. Closing as fixed.

Let me know if you have any issues!

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024

I'm tagging this as "help wanted" because this is just clerical work, and I don't like working with Texinfo. Maybe some kind soul will come along and save me from this onerous task.

from octave-slf4o.

mariajcasas avatar mariajcasas commented on July 1, 2024

HI Andrew,
I've seen you are asking for some help with formatting some documentation and I think I could help you with this. Under /doc folder there is only UserGuide.md file. Is this the one that should be converted to texinfo?
It would be my first time doing this but this kind of tasks works for me.
I will start reading about textinfo and I will keep you up to date of my progress or failures!

Cheers
Maria J. Casas

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024

Hi Maria,

Glad you're interested!

There's only the UserGuide.md under /doc. But there is per-function and per-class "helptext" documentation in each of the public functions and classes in the library. (For example, this whole block.) All that will need to be converted to TexInfo as well.

If you want to see some examples, take a look at my Tablicious package - all its doco is in correct Octave-friendly Texinfo format. (And it's one of the few Octave packages that correctly supports class-level Texinfo documentation; that's an extension I added in to the package's doco-building scripts.)

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024

I decided I'm not so lazy that I can't do this. Work is proceeding on the convert-doco-to-texinfo branch: https://github.com/apjanke/octave-slf4o/tree/convert-doco-to-texinfo.

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024

Okay, I got the doco kind of converted to Texinfo format and merged it to master.

It's not entirely working:

  • Some of the API Reference function/method doco is not showing up, even though there are section headers for those functions
  • Too many "logger." prefixes for the objects; looks like the namespace is getting appended to them by the doco processor
  • Building the QHelp project is not working. I'm getting this error:
>> master >  ~/l/r/o/doc >
$ make maintainer-clean; make all
rm -rf *.dvi *.eps html *.html *.info *.pdf *.ps *.png *.texi *.qhp *.qch *.qhc *.tmp images.mk
export SOURCE_DATE_EPOCH=`cat TIMESTAMP`; \
	perl ./mktexi.pl slf4o.texi.in ../INDEX slf4o.texi slf4o.qhp ../inst
perl ./mktexi.pl --check-texinfo-version
Texinfo version 6.7 is new enough
makeinfo --no-split -o slf4o.info slf4o.texi
makeinfo --html --no-split -o slf4o.html slf4o.texi
rm -rf html
makeinfo --html -o html slf4o.texi
texi2dvi --quiet --clean -o slf4o.dvi slf4o.texi
export SOURCE_DATE_EPOCH=`cat TIMESTAMP`; \
	texi2pdf --quiet --clean -o slf4o.pdf slf4o.texi
/usr/local/opt/qt/bin/qhelpgenerator slf4o.qhcp -o slf4o.qhc
Reading collection config file...
Generating help for slf4o.qhp...
Error in line 14: Expected '>' or '/', but got '[a-zA-Z]'.
make: *** [slf4o.qhc] Error 1

from octave-slf4o.

mariajcasas avatar mariajcasas commented on July 1, 2024

Hi Andrew,

Not sure If I can help you with anything else now that you've done the work! hehehe

What I see is that the way you extract the "helptext" documentation of the library, can be useful for my project. So. I'll catch a glimpse and try to use it. Any tips!

Thanks a lot!
Cheers

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024

Building the QHelp project is fixed now. Double-quotes in section names were producing invalid XML. The mktexi.pl stuff should be fixed to handle this case by escaping the quotes, but for now, I just removed the quotes from the section name.

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024

Oh! I forgot to add the special PKG_ADD/PKG_DEL files that make the manual available in the Octave GUI's documentation browser. Added in 03c1c35.

You'll want to grab and adapt those, too, if you're using my helptext extractor stuff.

from octave-slf4o.

apjanke avatar apjanke commented on July 1, 2024

Aha: found a bug in the doco generation code: #13.

from octave-slf4o.

Related Issues (16)

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.