# Spotting non-default properties in Perspective views

**URL:** <https://forum.inductiveautomation.com/t/spotting-non-default-properties-in-perspective-views/70244>\
**Category:** Ignition\
**Tags:** ignition81, perspective\
**Created:** [February 23, 2023, 8:47pm UTC](https://forum.inductiveautomation.com/t/spotting-non-default-properties-in-perspective-views/70244 "2023-02-23T20:47:12Z")\
**Posts on this page:** 1\
**Showing post:** 6

<div class="post-metadata">

**Author:** ![justin.brzozoski](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/justin.brzozoski/32/13452_2.png) [@justin.brzozoski](https://forum.inductiveautomation.com/u/justin.brzozoski)\
**Post date:** [February 27, 2023, 6:23pm UTC](https://forum.inductiveautomation.com/t/spotting-non-default-properties-in-perspective-views/70244/6 "2023-02-27T18:23:53Z")

</div>

Not actually an implementation of the "tool that goes backwards", but I got a smarter YAML library that allowed me to handle multi-line text blobs intelligently. I can now do:

1. `json2yaml view.json > v.yml`
2. edit v.yml in my favorite power editor including full script blocks
3. `yaml2json v.yml > view.json`

My editor doesn't recognize the scripts blobs as Python blocks, but ... I can do sane search-replace or other editing across all scripts in a view from one place and see what is happening w/o going crazy!

This has some promise...

The tricky bit was telling the YAML library which text blocks to force to the escaped multiline format:

```auto
import ruamel.yaml as yaml

def str_presenter(dumper, data):
  if '\n' in data or '\t' in data: # check for complex or multiline strings
    return dumper.represent_scalar('tag:yaml.org,2002:str', data, style='|')
  return dumper.represent_scalar('tag:yaml.org,2002:str', data)
yaml.add_representer(str, str_presenter)

```

[Here's a github gist of the whole json2yaml.](https://gist.github.com/jbrzozoski/9a12a5b25293cc2be7f09cfa33e6a46e)

---

_[View the full topic](https://forum.inductiveautomation.com/t/spotting-non-default-properties-in-perspective-views/70244)._
