Comments (11)
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.
Okay, I think this is all working now. Closing as fixed.
Let me know if you have any issues!
from octave-slf4o.
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.
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.
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.
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.
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.
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.
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.
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.
Aha: found a bug in the doco generation code: #13.
from octave-slf4o.
Related Issues (16)
- How do I reference Java constants? HOT 2
- Convert code to GNU Octave code style HOT 1
- Octave crashes when trying to launch the configurator GUI HOT 1
- Add "Introduction" section to manual HOT 1
- "## -*- texinfo -*-" is ignored if it is the first line in file HOT 1
- Have Makefile build dist from current workspace state instead of HEAD commit
- Remove the bogus dispstrlib loading code from initSLF4O HOT 1
- Unify error identifiers HOT 1
- We're disabling the shadowed-function warning HOT 1
- Finish conversion to Octave `pkg` package format HOT 1
- logger.version is broken HOT 1
- "class not found" warning upon pkg installation HOT 1
- Warning about Mcode-examples upon load HOT 1
- pkg installation not working in Octave.app HOT 1
- isa() does not work to check Java interface implementation HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from octave-slf4o.