houdinihelp package¶
Submodules¶
houdinihelp.api module¶
-
class
houdinihelp.api.
NodeInfo
(table, scopeop, namespace, corename, version, ext, section)¶ Bases:
tuple
-
corename
¶ Alias for field number 3
-
ext
¶ Alias for field number 5
-
namespace
¶ Alias for field number 2
-
scopeop
¶ Alias for field number 1
-
section
¶ Alias for field number 6
-
table
¶ Alias for field number 0
-
version
¶ Alias for field number 4
-
-
houdinihelp.api.
components_to_path
(table, scopeop, ns, name, version, snap_version=False)¶
-
houdinihelp.api.
find_parm
(root, parmid, label)¶ Tries to find a parameter in a help document, based on the parameter ID and its label.
-
houdinihelp.api.
gather_node_paths
(node, pathset)¶
-
houdinihelp.api.
getFormattedTooltip
(url)¶
-
houdinihelp.api.
getHelpForId
(helpid)¶
-
houdinihelp.api.
getParmTooltip
(op_table_name, op_type, version, namespace, scopeop, parm_token, parm_label, is_spare)¶
-
houdinihelp.api.
getParsedHtmlHelp
(url, content)¶
-
houdinihelp.api.
getParsedTooltip
(url, content)¶
-
houdinihelp.api.
getTooltip
(url)¶
-
houdinihelp.api.
get_pages
()¶
-
houdinihelp.api.
get_searcher
()¶
-
houdinihelp.api.
hasHelp
(url)¶ Returns True if the URL is something the help system can handle, e.g. “op:Object/geo”.
-
houdinihelp.api.
hstring
(text)¶
-
houdinihelp.api.
initialize
(*args, **kwargs)¶
-
houdinihelp.api.
load_example
(source, launch=False)¶
-
houdinihelp.api.
load_module_from_houdini
(module_name, search_distro=True, search_houdini_modules=True)¶
-
houdinihelp.api.
memoize
(func)¶
-
houdinihelp.api.
nodeHelpTemplate
(table, namespace, name, version)¶
-
houdinihelp.api.
nodetype_to_path
(nodetype, snap_version=False)¶ Takes a
hou.NodeType
object and returns the equivalent help path.
-
houdinihelp.api.
open_wiki_preview
(baseurl, path, content)¶
-
houdinihelp.api.
patch_socket_server_error_handler
()¶
-
houdinihelp.api.
path_to_components
(path)¶ Takes a help path and returns a named tuple of the following components:
table
- the node category name, e.g.Object
.scopeop
- if the node has a scope, the name of the scope node,- otherwise an empty string.
namespace
- the node’s namespace, or an empty string.name
- the node’s “core” name.version
- the node’s version string.ext
- the filename extension given in the path (if any).section
- an asset section name, or an empty string.
-
houdinihelp.api.
path_to_nodetype
(path)¶
-
houdinihelp.api.
startHelpServer
(port=48626)¶
-
houdinihelp.api.
urlToPath
(url)¶ Translates a URL from Houdini (e.g. “op:Sop/copy”) and translates it into a help server path (e.g. “/nodes/sop/copy”).
houdinihelp.cli module¶
houdinihelp.examples module¶
-
class
houdinihelp.examples.
ExampleRef
(category, target, hdafile, typename)¶ Bases:
object
-
create_in
(network)¶
-
description
()¶
-
example_type
()¶
-
classmethod
from_definition
(defn)¶
-
target_type
()¶
-
-
houdinihelp.examples.
add_examples_from_hdafile
(filepath)¶
-
houdinihelp.examples.
can_have_example
(node)¶
-
houdinihelp.examples.
create_example
(fornode, typename)¶
-
houdinihelp.examples.
examples_for
(node)¶
-
houdinihelp.examples.
rebuild_example_index
()¶
-
houdinihelp.examples.
refs_for_hdafile
(filepath)¶
-
houdinihelp.examples.
remove_examples_from_hdafile
(filepath)¶
-
houdinihelp.examples.
save_node_example
(subnet)¶
-
houdinihelp.examples.
setup_examples
()¶
-
houdinihelp.examples.
start_node_example
(node)¶
-
houdinihelp.examples.
update_examples_callback
(event_type, library_path)¶
houdinihelp.hcoloring module¶
-
class
houdinihelp.hcoloring.
HScriptLexer
(**options)¶ Bases:
pygments.lexer.RegexLexer
-
aliases
= ['hscript', 'Hscript']¶
-
filenames
= ['*.cmd']¶
-
mimetypes
= ['application/x-hscript']¶
-
name
= 'HScript'¶
-
tokens
= {'curly': [('}', Token.Keyword, '#pop'), (':-', Token.Keyword), ('[^}:]+', Token.Punctuation), (':', Token.Punctuation)], 'paren': [('\\)', Token.Keyword, '#pop'), ('[^)]*', Token.Punctuation)], 'root': [('\\b(set|if|then|else|endif|for|to|step|foreach|while|end|break|continue)\\s*\\b', Token.Keyword), ('^\\s*([A-Za-z][A-Za-z0-9_]+)\\s*\\b', Token.Name.Builtin), ('\\s(-[A-Za-z][A-Za-z0-9_]*)', Token.Operator.Word), ('#.*\\n', Token.Comment), ('(\\b\\w+\\s*)(=)', <function callback>), ('[\\[\\]{}\\(\\)=]+', Token.Operator), ('(==|!=|<|>|<=|>=|&&|\\|\\|)', Token.Operator), ('\\$\\(', Token.Keyword, 'paren'), ('\\${', Token.Keyword, 'curly'), ('`.+`', Token.Literal.String.Backtick), ('(\\d+\\.)?(\\d+)(?= |\\Z)', Token.Literal.Number), ('\\$#?(\\w+|.)', Token.Name.Variable), ('"(\\\\\\\\|\\\\[0-7]+|\\\\.|[^"])*"', Token.Literal.String.Double), ("'(\\\\\\\\|\\\\[0-7]+|\\\\.|[^'])*'", Token.Literal.String.Single), ('\\s+', Token.Text), ('[^=\\s\\n]+', Token.Text)]}¶
-
-
class
houdinihelp.hcoloring.
VexLexer
(**options)¶ Bases:
pygments.lexer.RegexLexer
-
aliases
= ['vex']¶
-
filenames
= ['*.vex']¶
-
mimetypes
= ['application/x-vex']¶
-
name
= 'VEX'¶
-
tokens
= {'dqstring': [('"', Token.Literal.String, '#pop'), ('\\\\([\\\\abfnrtv"\\\']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})', Token.Literal.String.Escape), ('[^\\\\"\\n]+', Token.Literal.String), ('\\\\\\n', Token.Literal.String), ('\\\\', Token.Literal.String)], 'function': ['whitespace', 'statements', (';', Token.Text), ('{', Token.Keyword, '#push'), ('}', Token.Keyword, '#pop')], 'if0': [('^\\s*#if.*?(?<!\\\\)\\n', Token.Comment, '#push'), ('^\\s*#endif.*?(?<!\\\\)\\n', Token.Comment, '#pop'), ('.*?\\n', Token.Comment)], 'macro': [('[^/\\n]+', Token.Comment.Preproc), ('/[*](.|\\n)*?[*]/', Token.Comment), ('//.*?\\n', Token.Comment, '#pop'), ('/', Token.Comment.Preproc), ('(?<=\\\\)\\n', Token.Comment.Preproc), ('\\n', Token.Comment.Preproc, '#pop')], 'rdqstring': [('"', Token.Literal.String, '#pop'), ('[^\\\\"\\n]+', Token.Literal.String), ('\\\\\\n', Token.Literal.String), ('\\\\', Token.Literal.String)], 'root': ['whitespace', ('((?:[a-zA-Z0-9_*\\s])+?(?:\\s|[*]))([a-zA-Z_][a-zA-Z0-9_]*)(\\s*\\([^;]*?\\))((?:\\s|//.*?\\n|/[*].*?[*]/)+)({)', <function callback>, 'function'), ('((?:[a-zA-Z0-9_*\\s])+?(?:\\s|[*]))([a-zA-Z_][a-zA-Z0-9_]*)(\\s*\\([^;]*?\\))((?:\\s|//.*?\\n|/[*].*?[*]/)+)(;)', <function callback>), ('', Token.Text, 'statement')], 'rsqstring': [('[\\\'"]', Token.Literal.String, '#pop'), ("[^\\\\\\'\\n]+", Token.Literal.String), ('\\\\\\n', Token.Literal.String), ('\\\\', Token.Literal.String)], 'sqstring': [('[\\\'"]', Token.Literal.String, '#pop'), ('\\\\([\\\\abfnrtv"\\\']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})', Token.Literal.String.Escape), ("[^\\\\\\'\\n]+", Token.Literal.String), ('\\\\\\n', Token.Literal.String), ('\\\\', Token.Literal.String)], 'statement': ['whitespace', 'statements', ('[{}]', Token.Keyword), (';', Token.Text, '#pop')], 'statements': [('"', Token.Literal.String, 'dqstring'), ("\\'", Token.Literal.String, 'sqstring'), ('r"', Token.Literal.String, 'rdqstring'), ("r\\'", Token.Literal.String, 'rsqstring'), ('(0x[0-9a-fA-F]|0[0-7]+|(\\d+\\.\\d*|\\.\\d+)|\\d+)e[+-]\\d+[lL]?', Token.Literal.Number.Float), ('0x[0-9a-fA-F]+[Ll]?', Token.Literal.Number.Hex), ('0[0-7]+[Ll]?', Token.Literal.Number.Oct), ('(\\d+\\.\\d*|\\.\\d+)', Token.Literal.Number.Float), ('\\d+', Token.Literal.Number.Integer), ('[~!%^&*()+=|\\[\\]:,.<>/?-]', Token.Text), ('(break|continue|do|else|export|forpoints|illuminance|gather|for|foreach|if|return|while|const|_Pragma)\\b', Token.Keyword), ('(int|float|vector|vector2|vector4|matrix|matrix3|string|bsdf|void|lpeaccumulator)\\b', Token.Keyword.Type), ('__(vex|vex_major|vex_minor)\\b', Token.Keyword.Reserved), ('__(LINE|FILE|DATE|TIME)__\\b', Token.Keyword.Reserved), ('[a-zA-Z_][a-zA-Z0-9_]*:', Token.Name.Label), ('[a-zA-Z_][a-zA-Z0-9_]*', Token.Name)], 'whitespace': [('^\\s*#if\\s+0', Token.Comment.Preproc, 'if0'), ('^\\s*#', Token.Comment.Preproc, 'macro'), ('\\n', Token.Text), ('\\s+', Token.Text), ('\\\\\\n', Token.Text), ('//.*?\\n', Token.Comment), ('/[*](.|\\n)*?[*]/', Token.Comment)]}¶
-
houdinihelp.hconfig module¶
-
class
houdinihelp.hconfig.
HoudiniAppConfig
¶ Bases:
houdinihelp.hconfig.HoudiniBaseConfig
-
AUTO_COMPILE_SCSS
= False¶
-
CACHE_DIR
= 'E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$HOUDINI_USER_PREF_DIR\\config\\Help'¶
-
DEBUG
= False¶
-
DOCUMENTS
= [{'classname': 'houdinihelp.hstores.HiddenNodeStore', 'type': 'wrapper', 'child': ['C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\help', {'classname': 'houdinihelp.hstores.HoudiniPathStore', 'type': 'object'}, {'classname': 'houdinihelp.hstores.AssetStore', 'type': 'object'}, {'classname': 'houdinihelp.hstores.ShelfStore', 'type': 'object'}, {'classname': 'bookish.stores.ZipTree', 'args': {'dirpath': 'C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\help'}, 'type': 'object'}]}]¶
-
ENABLE_BACKGROUND_INDEXING
= False¶
-
INDEX_DIR
= 'C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\config\\Help\\index'¶
-
LOGLEVEL
= 'WARNING'¶
-
-
class
houdinihelp.hconfig.
HoudiniBaseConfig
¶ Bases:
bookish.config.DefaultConfig
-
AUTO_COMPILE_SCSS
= False¶
-
CATEGORIES
= '\n _ tool\n node/sop node/dop node/obj node/vop node/out node/cop2 node/chop node/vex\n attribute vex example homclass hommethod homfunction hommodule\n expression hscript property env_variable\n '¶
-
EXTRA_SHORTCUTS
= []¶
-
HOUDINI_BUILD_VERSION
= ''¶
-
HOUDINI_MAJOR_VERSION
= ''¶
-
HOUDINI_MINOR_VERSION
= ''¶
-
HOUDINI_VERSION
= ''¶
-
HSCRIPT_LEXER
¶ alias of
houdinihelp.hcoloring.HScriptLexer
-
PAGES_CLASS
¶ alias of
houdinihelp.hpages.HoudiniPages
-
SEARCHABLES
¶
-
SEARCH_TEMPLATE
= '/templates/hresults.jinja2'¶
-
SHORTCUTS
= [{'query': 'type:node', 'shortcut': 'n', 'desc': 'All nodes'}, {'query': 'category:node/sop', 'shortcut': 's', 'desc': 'Geometry nodes (SOPs)'}, {'query': 'category:node/dop', 'shortcut': 'd', 'desc': 'Dynamics nodes (DOPs)'}, {'query': 'category:node/obj', 'shortcut': 'o', 'desc': 'Object nodes'}, {'query': '(category:vex OR category:node/vop)', 'shortcut': 'v', 'desc': 'VEX and VOPs'}, {'query': 'category:node/vop', 'shortcut': 'vo', 'desc': 'VOPs'}, {'query': 'category:vex', 'shortcut': 'vx', 'desc': 'VEX functions'}, {'query': '(category:node/out OR type:property)', 'shortcut': 'r', 'desc': 'Render nodes and properties'}, {'query': 'category:hom*', 'shortcut': 'p', 'desc': 'Python scripting (HOM)'}, {'query': 'type:expression', 'shortcut': 'e', 'desc': 'Expression functions'}]¶
-
SUPPORT_DOCUMENTS
= [{'source': 'C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\python2.7libs\\bookish\\templates', 'type': 'mount', 'target': '/templates'}, {'source': 'C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\python2.7libs\\bookish\\grammars', 'type': 'mount', 'target': '/grammars'}, {'source': 'C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\python2.7libs\\bookish\\static', 'static': True, 'type': 'mount', 'target': '/static'}, {'source': 'C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\python2.7libs\\houdinihelp\\templates', 'type': 'mount', 'target': '/templates'}, {'source': 'C:\\Program Files\\Side Effects Software\\Houdini 17.0.439\\houdini\\python2.7libs\\houdinihelp\\static', 'static': True, 'type': 'mount', 'target': '/static'}]¶
-
TEMPLATE
= '/templates/hpage.jinja2'¶
-
TEXTIFY_CLASS
¶
-
VEX_LEXER
¶ alias of
houdinihelp.hcoloring.VexLexer
-
WIKI_STYLE
= '/templates/hwiki.jinja2'¶
-
-
class
houdinihelp.hconfig.
HoudiniDevConfig
¶ Bases:
houdinihelp.hconfig.HoudiniBaseConfig
-
AUTO_COMPILE_SCSS
= False¶
-
CACHE_DIR
= 'E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH\\help/build\\cache'¶
-
DEBUG
= True¶
-
DOCUMENTS
= [('E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH\\help/documents',), {'source': 'E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH\\support/icons', 'static': True, 'type': 'mount', 'target': '/icons'}]¶
-
EDITABLE
= True¶
-
EDIT_STORE
= ('E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH\\help/documents',)¶
-
ENABLE_BACKGROUND_INDEXING
= False¶
-
INDEX_DIR
= 'E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH\\help/build\\index'¶
-
build_dir
= 'E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH\\help/build'¶
-
main_docs
= ('E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH\\help/documents',)¶
-
source_base
= 'E:\\ikrima\\home\\houdini\\snippets\\houPyDocs\\$SH'¶
-
houdinihelp.hotkeys module¶
-
class
houdinihelp.hotkeys.
HotkeyFileParser
¶ -
ctx_exp
= <_sre.SRE_Pattern object>¶
-
json_obj
()¶
-
json_text
()¶
-
key_exp
= <_sre.SRE_Pattern object>¶
-
parse_dir
(dirpath)¶
-
parse_file
(filepath)¶
-
print_json
()¶
-
-
houdinihelp.hotkeys.
actions_to_json
(actions)¶
-
houdinihelp.hotkeys.
find_actions
(pages)¶
-
houdinihelp.hotkeys.
hotkey_json_from_docs
(pages)¶
-
houdinihelp.hotkeys.
hotkey_json_from_file
(filepath)¶
-
houdinihelp.hotkeys.
hotkey_to_wiki
(hotkey)¶
-
houdinihelp.hotkeys.
parse_key
(string)¶
houdinihelp.hpages module¶
-
class
houdinihelp.hpages.
Actions
(use_hou=True)¶ Bases:
bookish.wiki.pipeline.Processor
-
apply
(block, context, action_context='')¶
-
before
= ('groups',)¶
-
name
= 'hactions'¶
-
-
class
houdinihelp.hpages.
ContentFroms
¶ Bases:
bookish.wiki.pipeline.Modifier
Finds the “#contentfrom:” property and replaces it with an include.
-
after
= ('hierarchy',)¶
-
before
= ('properties', 'includes')¶
-
modify
(block, context)¶
-
name
= 'hcontentfrom'¶
-
-
class
houdinihelp.hpages.
ExampleFiles
¶ Bases:
bookish.wiki.pipeline.Processor
For example files, computes the nodes and example files and adds them as annotations on the document.
For node docs, searches for examples related to the node.
For everything else, looks for example loader markup.
-
apply
(block, context)¶
-
before
= ('includes',)¶
-
name
= 'hexamples'¶
-
-
class
houdinihelp.hpages.
ExampleSearches
¶ Bases:
bookish.wiki.pipeline.Processor
-
apply
(block, context, root=None)¶
-
static
make_load_example
(hit, context, root)¶
-
-
class
houdinihelp.hpages.
HomClasses
¶ Bases:
bookish.wiki.pipeline.Processor
Post-processor for several features related to HOM pages, such as listing subclasses and methods inherited from superclasses.
-
apply
(block, context)¶
-
before
= ('annotate',)¶
-
name
= 'homclasses'¶
-
-
class
houdinihelp.hpages.
HomTitles
¶ Bases:
bookish.wiki.pipeline.Processor
Aesthetic processor that just takes the dotted prefix of a class/function name (e.g. hou.Node) and puts the part up to the last dot in the pre-title.
-
after
= ('properties',)¶
-
apply
(block, context)¶
-
before
= ('title',)¶
-
name
= 'homtitles'¶
-
-
class
houdinihelp.hpages.
HoudiniIds
¶ Bases:
bookish.wiki.pipeline.Processor
Pre-processor for converting names of methods etc. into IDs.
-
apply
(block, context)¶
-
name
= 'hids'¶
-
-
class
houdinihelp.hpages.
HoudiniNodes
¶ Bases:
bookish.wiki.pipeline.Processor
Sets any missing node-specific information based on HOM calls.
-
after
= ('properties', 'includes')¶
-
apply
(block, context)¶
-
name
= 'nodes'¶
-
-
class
houdinihelp.hpages.
HoudiniPages
(*args, **kwargs)¶ Bases:
bookish.wiki.wikipages.WikiPages
-
use_hou
= True¶
-
-
class
houdinihelp.hpages.
HoudiniPagesWithoutHou
(*args, **kwargs)¶ Bases:
houdinihelp.hpages.HoudiniPages
-
use_hou
= False¶
-
-
class
houdinihelp.hpages.
HoudiniShortcuts
(use_hou=True)¶ Bases:
bookish.wiki.pipeline.TextModifier
Implements Houdini-specific link features such as “opdef:” syntax and convenience schemes such as “Node:” and “Hom:”.
-
apply
(block, context)¶
-
before
= ('promote', 'includes', 'joinkeys')¶
-
do_properties
= ('icon',)¶
-
name
= 'hshortcuts'¶
-
opdef_exp
= <_sre.SRE_Pattern object>¶
-
text
(text, context)¶
-
-
class
houdinihelp.hpages.
Itemize
¶ Bases:
bookish.wiki.pipeline.Processor
-
after
= ('properties', 'sections', 'includes', 'sortheadings')¶
-
apply
(block, context)¶
-
before
= ('groups',)¶
-
name
= 'itemize'¶
-
sections
= ('parameters', 'attributes')¶
-
-
class
houdinihelp.hpages.
Replacements
¶ Bases:
bookish.wiki.pipeline.Processor
If a searcher is available, this processor finds any documents that “replace” the current path, and adds information about them to a “replacedby” list on the document root, making them available to display in the document. This is to support linking from HScript commands to the replacement HOM equivalents.
-
apply
(block, context)¶
-
fields
= ('title', 'path', 'type', 'summary', 'icon')¶
-
name
= 'hreplacements'¶
-
prefixes
= ('/commands/', '/expressions/', '/nodes/')¶
-
-
class
houdinihelp.hpages.
RewriteReplaces
¶ Bases:
bookish.wiki.pipeline.Processor
A long time ago, instead of putting /commands/ophide as the path in a replaces property, someone wrote Cmd:ophide somehow assuming that would work. I should really go back and just replace them all, but rewriting them at runtime isn’t so bad, and who knows who might try the same thing again someday, so I might as well make it work.
Also, someone else decided they wanted that instead of using a page property, they wanted to write a @replaces section with links inside, so I have to support that too. This processor looks for such a section and translates it into a page property.
This has to run as a preprocessor (so the results are visible to the indexer, which currently skips postprocessing), so it’s split from the “Replacments” post-processor which does the reverse lookup on “replaced” pages.
-
apply
(block, context, root=None, in_replaces=False)¶
-
fields
= ('title', 'path', 'type', 'summary', 'icon')¶
-
name
= 'hreplaces'¶
-
split_expr
= <_sre.SRE_Pattern object>¶
-
-
class
houdinihelp.hpages.
Suites
¶ Bases:
bookish.wiki.pipeline.Processor
-
apply
(block, context)¶
-
name
= 'suites'¶
-
retain
= {'vexsuite': ['summary', 'usage_group', 'arg_group']}¶
-
-
class
houdinihelp.hpages.
VexPages
¶ Bases:
bookish.wiki.pipeline.Processor
-
after
= ('hierarchy',)¶
-
apply
(block, context)¶
-
before
= ('groups',)¶
-
name
= 'vex'¶
-
-
houdinihelp.hpages.
get_shortcut
(scheme, value)¶
-
houdinihelp.hpages.
parse_shortcut
(path)¶
houdinihelp.hsearch module¶
-
class
houdinihelp.hsearch.
HoudiniSearchables
(*args, **kwargs)¶ Bases:
sphinx.ext.autodoc.importer._MockObject
-
schema
()¶
-
-
houdinihelp.hsearch.
find_parms
(block)¶ Recursively finds dt blocks inside containers (but doesn’t recurse inside the dt blocks). This is necessary because for bad historical reasons nodes docs don’t mark parameters as items like they should.
-
houdinihelp.hsearch.
usages_for_otl
(otlpath)¶
houdinihelp.hstores module¶
-
class
houdinihelp.hstores.
AssetStore
(config=None)¶ Bases:
bookish.stores.StringStore
Maps assets (and HDK nodes with embedded help) onto paths under /nodes/ in the virtual file system.
-
content
(path, encoding='utf8')¶ Convenience method to return the string content of the file at the given path.
Parameters: encoding – the name of the encoding to use to decode the file’s bytes. Default is
"utf8"
. If you useencoding=None
themethod returns the raw bytestring.
-
delete
(path)¶ Deletes the underlying file for the given path.
-
etag
(path)¶
-
exists
(path)¶ Returns True if the given path exists in this store.
-
is_dir
(path)¶ Returns True if the given path represents a directory in this store.
-
last_modified
(path)¶ Returns a datetime object
-
list_all
(path='/')¶
-
move
(path, newpath)¶ Moves the underlying file to the new path.
-
writable
(path)¶ Returns True if the given path can be created/overwritten.
-
write_file
(path, bytestring)¶
-
-
class
houdinihelp.hstores.
HiddenNodeStore
(child)¶ Bases:
bookish.stores.HideStore
-
class
houdinihelp.hstores.
HoudiniPathStore
(path='help')¶ Bases:
bookish.stores.OverlayStore
Overlays HOUDINIPATH/help directories onto the virtual file system.
-
class
houdinihelp.hstores.
ShelfStore
¶ Bases:
bookish.stores.StringStore
A provider which translates requests for help under /shelf/ into calls to HOM to load embedded help content from shelf tools.
-
content
(path, encoding='utf8')¶ Convenience method to return the string content of the file at the given path.
Parameters: encoding – the name of the encoding to use to decode the file’s bytes. Default is
"utf8"
. If you useencoding=None
themethod returns the raw bytestring.
-
delete
(path)¶ Deletes the underlying file for the given path.
-
exists
(path)¶ Returns True if the given path exists in this store.
-
is_dir
(path)¶ Returns True if the given path represents a directory in this store.
-
list_dir
(path)¶ Lists the file names under the given path.
-
move
(path, newpath)¶ Moves the underlying file to the new path.
-
nodeexp
= <_sre.SRE_Pattern object>¶
-
prefix
= '/shelf/'¶
-
write_file
(path, bytestring)¶
-
houdinihelp.htextify module¶
houdinihelp.server module¶
-
houdinihelp.server.
get_houdini_app
(dev=None, use_houdini_path=True, auto_compile_scss=None, bgindex=None, config_file=None, config_obj=None, logfile=None, loglevel=None, debug=None)¶
-
houdinihelp.server.
is_dev
()¶
-
houdinihelp.server.
start_app_server
(host='0.0.0.0', port=48626, debug=None, bgindex=None, config_file=None, config_obj=None, dev=None, auto_compile_scss=None, **kwargs)¶
-
houdinihelp.server.
start_dev_server
(host='0.0.0.0', port=8080, debug=None, bgindex=None, config_file=None, config_obj=None, dev=None, auto_compile_scss=None, **kwargs)¶
-
houdinihelp.server.
start_server
(host='0.0.0.0', port=8080, debug=False, bgindex=None, config_file=None, config_obj=None, dev=None, use_houdini_path=True, auto_compile_scss=None, **kwargs)¶
houdinihelp.vex module¶
-
class
houdinihelp.vex.
AnyType
(name)¶ Bases:
houdinihelp.vex.RegexVexPart
Represents a metasyntactic wilcard matching any type, e.g. <type>. This is not actually part of VEX, but is used in the documentation to the docs clearer and more compact.
-
exp
= <_sre.SRE_Pattern object>¶
-
classmethod
expected
()¶
-
is_meta
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
meta_name
()¶
-
string
()¶ Returns a plain string representation of the part.
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
Argument
(t, out, ident, optional=None)¶ Bases:
houdinihelp.vex.VexPart
Represents an argument in the function signature. This is a compound object containing the various parts of the argument (type, output indicator, name, optional).
-
basetype
()¶
-
eq_exp
= <_sre.SRE_Pattern object>¶
-
is_meta
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
meta_name
()¶
-
string
()¶ Returns a plain string representation of the part.
-
typecode
()¶
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
ArgumentList
(args)¶ Bases:
houdinihelp.vex.VexPart
Represents zero or more arguments in a function signature.
-
check_meta_types
(arglist, typemap)¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
separator_exp
= <_sre.SRE_Pattern object>¶
-
string
()¶ Returns a plain string representation of the part.
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
ArrayType
(subtype)¶ Bases:
houdinihelp.vex.VexPart
Represents an array type. This is a wrapper around a VexPart instance representing the item type.
-
basetype
()¶
-
classmethod
expected
()¶
-
is_meta
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
meta_name
()¶
-
string
()¶ Returns a plain string representation of the part.
-
typecode
()¶
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
Context
(doc_mode=True)¶ Bases:
object
Used the pass configuration down to the various parsing parts.
Parameters: doc_mode – True if we are parsing a documentation template, False if we are parsing a signature from vcc -X.
-
class
houdinihelp.vex.
ContextRewriteReporter
(funcdir, extension='.txt')¶ Bases:
houdinihelp.vex.Reporter
-
wrong_contexts
(fnname, stated, actual)¶
-
-
class
houdinihelp.vex.
GlobalVar
(type_, name, readable, writable)¶ Bases:
object
-
class
houdinihelp.vex.
Identifier
(name)¶ Bases:
houdinihelp.vex.RegexVexPart
Function name or argument name.
-
exp
= <_sre.SRE_Pattern object>¶
-
classmethod
expected
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
string
()¶ Returns a plain string representation of the part.
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
MissingIdentifier
¶ Bases:
houdinihelp.vex.VexPart
Represents a missing name (as in a target parsed from vcc -X output, which doesn’t have argument names).
-
classmethod
expected
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
string
()¶ Returns a plain string representation of the part.
-
wiki
()¶ Returns a wiki text representation of the part.
-
classmethod
-
exception
houdinihelp.vex.
NoMatch
(cls, string, pos, expected)¶ Bases:
exceptions.Exception
Raised by a VexPart when what it’s trying to parse doesn’t match the given string. This is usually caught by a caller so the caller can try a different pattern, but it may bubble all the way up if the given string is not a valid VEX signature.
-
class
houdinihelp.vex.
PrintReporter
(file=None, print_footer=True)¶ Bases:
houdinihelp.vex.Reporter
-
extra_context
(name)¶
-
extra_doc
(fnname)¶
-
extra_doc_signature
(fnname, sig)¶
-
extra_global
(glob, context)¶
-
finish
(checker)¶
-
missing_doc
(fnname, contexts)¶
-
missing_doc_signature
(fnname, vccsig, docsigs)¶
-
missing_global
(glob, context)¶
-
missing_statement_doc
(sname, contexts)¶
-
parser_error
(fnname, string, exception)¶
-
wrong_contexts
(fnname, stated, actual)¶
-
wrong_function_name
(fnname, wrong_string)¶
-
-
class
houdinihelp.vex.
RegexVexPart
¶ Bases:
houdinihelp.vex.VexPart
Middleware class for subclasses that parse using a regex.
-
exp
= None¶
-
classmethod
expected
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
string
()¶ Returns a plain string representation of the part.
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
Reporter
¶ Bases:
object
-
compared_signatures
(docsig, vccsig, matched)¶
-
extra_context
(name)¶
-
extra_doc
(fnname)¶
-
extra_doc_signature
(fnname, sig)¶
-
extra_global
(glob, context)¶
-
finish
(checker)¶
-
marked_deprecated
(signature)¶
-
missing_doc
(fnname, contexts)¶
-
missing_doc_signature
(fnname, vccsig, docsigs)¶
-
missing_global
(glob, context)¶
-
missing_statement_doc
(statementname, contexts)¶
-
parsed_doc_page
(fnname)¶
-
parsed_doc_sig
(sig)¶
-
parsed_signature
(context, sig)¶
-
parser_error
(fnname, string, exception)¶
-
start
(checker)¶
-
wrong_contexts
(fnname, stated, actual)¶
-
wrong_function_name
(fnname, wrong_string)¶
-
-
class
houdinihelp.vex.
Signature
(rtype, ident, arglist, original=None)¶ Bases:
houdinihelp.vex.VexPart
Top-level object represents the entire signature. Contains the return type, function name, and argument list.
-
check_meta_types
(other)¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
classmethod
parse_concrete
(string)¶
-
classmethod
parse_template
(string)¶
-
string
()¶ Returns a plain string representation of the part.
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
TypeAtom
(name)¶ Bases:
houdinihelp.vex.RegexVexPart
Represents an atomic type or struct.
-
basetype
()¶
-
exp
= <_sre.SRE_Pattern object>¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
string
()¶ Returns a plain string representation of the part.
-
typecode
()¶
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
TypeChoice
(names)¶ Bases:
houdinihelp.vex.RegexVexPart
Reresents a choice between two or more types, e.g. int|float. This is not actually part of VEX, but is used in the documentation to the docs clearer and more compact.
-
atom_pattern
= '(int|float|vector|vector2|vector4|matrix2|matrix3|matrix4|matrix|string|bsdf|light|material|void|lpeaccumulator)'¶
-
exp
= <_sre.SRE_Pattern object>¶
-
classmethod
expected
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
string
()¶ Returns a plain string representation of the part.
-
typecode
()¶
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
VariadicArgs
(pairs=False)¶ Bases:
houdinihelp.vex.VexPart
Represents variadic arguments (…) in a function signature.
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
string
()¶ Returns a plain string representation of the part.
-
wiki
()¶ Returns a wiki text representation of the part.
-
-
class
houdinihelp.vex.
VexChecker
(reporter=None)¶ Bases:
object
-
add_signature
(context, sig)¶
-
build
(vccpath, app)¶
-
check_contexts
(fnname, contexts)¶
-
check_statements
()¶
-
compare_function_names
()¶
-
context_set_to_string
(contextset)¶
-
match_all_signatures
()¶
-
match_globals
()¶
-
match_signatures
(fnname)¶
-
overdocumented
()¶
-
parse_vcc_output
(vccpath)¶
-
parse_vex_docs
(app)¶
-
string_to_context_set
(string)¶
-
undocumented
()¶
-
-
class
houdinihelp.vex.
VexPart
¶ Bases:
object
Base class for parsing bits of a VEX signature. The parsing methods are class methods that return a tree of instances representing the parsed signature.
-
classmethod
choice
(ctx, string, pos, choices)¶
-
classmethod
expect
(string, pos, text)¶
-
classmethod
expect_regex
(string, pos, expr)¶
-
classmethod
expected
()¶
-
is_meta
()¶
-
matches
(other)¶ Returns True if this “template” signature matches the given “target” signature.
Note that this is NOT the same as being equal to other. Equality testing is exact, whereas this method tests whether other can match this object’s template pattern.
-
classmethod
optional
(ctx, string, pos, optcls)¶
-
classmethod
optional_text
(string, pos, optstring)¶
-
classmethod
parse
(string, pos=0, **kwargs)¶ Parses the given string and returns a VexPart tree or raises NoMatch. Any keyword arguments are passed to the Context() constructor.
-
string
()¶ Returns a plain string representation of the part.
-
classmethod
take
(ctx, string, pos)¶
-
classmethod
take_type
(ctx, string, pos, allow_array=True)¶
-
typecode
()¶
-
wiki
()¶ Returns a wiki text representation of the part.
-
classmethod
ws
(string, pos, required=False)¶
-
ws_exp
= <_sre.SRE_Pattern object>¶
-
classmethod
-
class
houdinihelp.vex.
VexType
¶ Bases:
houdinihelp.vex.VexPart
-
houdinihelp.vex.
parse_vex
(vexstring)¶ Parses the given signature string into a VexPart object.
-
houdinihelp.vex.
vex_to_wiki
(vexstring)¶ Parses the given signature string and returns a wiki json representation.
-
houdinihelp.vex.
wikiconcat
(*args)¶ Concatenates pieces of wiki text and returns a new wiki text list.
-
houdinihelp.vex.
wikispan
(text, typename, role='vexmarkup')¶ Returns a wiki json span with the given type and role.