Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Anchor names can't be parsed nicely #294

beelsebob opened this Issue Dec 25, 2012 · 2 comments


None yet
2 participants

beelsebob commented Dec 25, 2012

When generating docsets, appledoc does not produce the same anchor name format as apple's docsets use. This means that they're very hard to parse by tools like https://github.com/beelsebob/Stash, and miss information.

Apple's documentation contains anchors of the form
<a name="//apple_ref/language_string/symbol_type/parent_symbol/symbol_name"> for all symbols in their documentation, where:

language_string is one of:
c (the symbol is a C symbol)
occ (the symbol is an Objective-C symbol)
cpp (the symbol is a C++ symbol)

symbol_type is one of:
func (the symbol is a function)
macro (the symbol is a macro)
instm (the symbol is an instance method)
econst (the symbol is an enumeration constant value)
data (the symbol is a data blob)
instp (the symbol is an instance property)
intfp (the symbol is an interface property)
intfm (the symbol is an interface method)
intfcm (the symbol is an interface class method)
tag (the symbol is a tag)
clm (the symbol is a class method)
tdef (the symbol is a type definition)
cl (the symbol is a class)
intf (the symbol is an interface)
cat (the symbol is a category)
binding (the symbol is a binding)
clconst (the symbol is a class constant)

parent_symbol may or may not exist, but is set to the parent class, interface or category if the symbol is a method/property.

symbol_name is the name of the symbol.

These are present for all symbol types as above.

In contrast, appledoc does not produce anchors for all symbols, and does not use the above nice, easily parsable format. This makes it very difficult for tools like stash to index the docsets.


tomaz commented Dec 25, 2012

Will comsider this when implementing functioality on 3.0.


beelsebob commented Dec 25, 2012

Excellent, thanks, a couple of minor things:

I updated the ticket, what should have been apple_ref said apple_doc.
The other slight difference between apple's docs and appledocs' that stash reveals is that apple's use javascript to add the left, top and bottom bar, meaning they can be easily hidden by disabling javascript, they are baked onto the page with appledocs'.

Merry Christmas :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment