diff --git a/rosidl_adapter/rosidl_adapter/msg/__init__.py b/rosidl_adapter/rosidl_adapter/msg/__init__.py index b02b7b5bd..cff0b3306 100644 --- a/rosidl_adapter/rosidl_adapter/msg/__init__.py +++ b/rosidl_adapter/rosidl_adapter/msg/__init__.py @@ -61,7 +61,9 @@ def convert_msg_to_idl(package_dir, package_name, input_file, output_dir): def to_idl_literal(idl_type, value): if idl_type[-1] == ']' or idl_type.startswith('sequence<'): - content = repr(tuple(value)).replace('\\', r'\\').replace('"', r'\"') + content = repr(tuple(value)).replace('\\', r'\\') + content = content.encode().decode('unicode_escape') + content = content.replace('"', r'\"').replace("'", r"\'") return f'"{content}"' if 'boolean' == idl_type: