xacro-rs
An XML preprocessor for xacro files to generate URDF files
Reference: http://wiki.ros.org/xacro
Installation
As a library
As a command-line tool
Usage
Command-line tool
Process a xacro file:
With arguments:
From stdin:
|
See xacro-rs --help for all options.
Library usage
See the examples/ directory for runnable examples including:
- Basic file processing
- Processing from stdin
- Using arguments and the builder API
- Custom extensions
- Generic XML macros (non-ROS usage)
API documentation: https://docs.rs/xacro-rs
Status
Core xacro functionality implemented:
- macro
- include
- insert_block
- property
- if
- unless
- load_yaml
- Basic Python expression evaluation (see limitations)
- Extensions: $(find), $(env), $(optenv), $(cwd)
Not implemented:
- element (dynamic XML generation)
- attribute (dynamic attributes)
See KNOWN_ISSUES.md for limitations and deviations from Python xacro.
No ROS dependencies required. Package resolution via RUST_XACRO_PACKAGE_MAP environment variable.