Message ID | 20201013141414.18398-1-david.edmondson@oracle.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | qmp-shell: Sort by key when pretty-printing | expand |
David Edmondson <david.edmondson@oracle.com> writes: > If the user selects pretty-printing (-p) the contents of any > dictionaries in the output are sorted by key. > > Signed-off-by: David Edmondson <david.edmondson@oracle.com> > --- > scripts/qmp/qmp-shell | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell > index c5eef06f3f..b4d06096ab 100755 > --- a/scripts/qmp/qmp-shell > +++ b/scripts/qmp/qmp-shell > @@ -260,7 +260,7 @@ class QMPShell(qmp.QEMUMonitorProtocol): > indent = None > if self._pretty: > indent = 4 > - jsobj = json.dumps(qmp, indent=indent) > + jsobj = json.dumps(qmp, indent=indent, sort_keys=self._pretty) > print(str(jsobj)) > > def _execute_cmd(self, cmdline): Queued, thanks!
On 10/13/20 10:14 AM, David Edmondson wrote: > If the user selects pretty-printing (-p) the contents of any > dictionaries in the output are sorted by key. > > Signed-off-by: David Edmondson <david.edmondson@oracle.com> > --- > scripts/qmp/qmp-shell | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell > index c5eef06f3f..b4d06096ab 100755 > --- a/scripts/qmp/qmp-shell > +++ b/scripts/qmp/qmp-shell > @@ -260,7 +260,7 @@ class QMPShell(qmp.QEMUMonitorProtocol): > indent = None > if self._pretty: > indent = 4 > - jsobj = json.dumps(qmp, indent=indent) > + jsobj = json.dumps(qmp, indent=indent, sort_keys=self._pretty) > print(str(jsobj)) > > def _execute_cmd(self, cmdline): > Hi, out of curiosity, what does this help you accomplish? I've recently been overhauling a LOT of the Python utilities we have, so I'm interested in hearing about how people use these tools and what they'd like them to do. --js
On Monday, 2020-11-30 at 15:56:51 -05, John Snow wrote: > On 10/13/20 10:14 AM, David Edmondson wrote: >> If the user selects pretty-printing (-p) the contents of any >> dictionaries in the output are sorted by key. >> >> Signed-off-by: David Edmondson <david.edmondson@oracle.com> >> --- >> scripts/qmp/qmp-shell | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell >> index c5eef06f3f..b4d06096ab 100755 >> --- a/scripts/qmp/qmp-shell >> +++ b/scripts/qmp/qmp-shell >> @@ -260,7 +260,7 @@ class QMPShell(qmp.QEMUMonitorProtocol): >> indent = None >> if self._pretty: >> indent = 4 >> - jsobj = json.dumps(qmp, indent=indent) >> + jsobj = json.dumps(qmp, indent=indent, sort_keys=self._pretty) >> print(str(jsobj)) >> >> def _execute_cmd(self, cmdline): >> > > Hi, out of curiosity, what does this help you accomplish? When dumping a dictionary with many values, visually finding a specific one that is of interest is much quicker if they are sorted. Nothing more than that. > I've recently been overhauling a LOT of the Python utilities we have, so > I'm interested in hearing about how people use these tools and what > they'd like them to do. > > --js dme.
On 11/30/20 4:57 PM, David Edmondson wrote: > On Monday, 2020-11-30 at 15:56:51 -05, John Snow wrote: > >> On 10/13/20 10:14 AM, David Edmondson wrote: >>> If the user selects pretty-printing (-p) the contents of any >>> dictionaries in the output are sorted by key. >>> >>> Signed-off-by: David Edmondson <david.edmondson@oracle.com> >>> --- >>> scripts/qmp/qmp-shell | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell >>> index c5eef06f3f..b4d06096ab 100755 >>> --- a/scripts/qmp/qmp-shell >>> +++ b/scripts/qmp/qmp-shell >>> @@ -260,7 +260,7 @@ class QMPShell(qmp.QEMUMonitorProtocol): >>> indent = None >>> if self._pretty: >>> indent = 4 >>> - jsobj = json.dumps(qmp, indent=indent) >>> + jsobj = json.dumps(qmp, indent=indent, sort_keys=self._pretty) >>> print(str(jsobj)) >>> >>> def _execute_cmd(self, cmdline): >>> >> >> Hi, out of curiosity, what does this help you accomplish? > > When dumping a dictionary with many values, visually finding a specific > one that is of interest is much quicker if they are sorted. Nothing more > than that. > Okay, simple! thanks for the input. If you ever have any other laundry list desires or feedback for qmp-shell, let me know, as I intend to overhaul it soon. (I may turn it into a GSoC project, too.) --js
diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell index c5eef06f3f..b4d06096ab 100755 --- a/scripts/qmp/qmp-shell +++ b/scripts/qmp/qmp-shell @@ -260,7 +260,7 @@ class QMPShell(qmp.QEMUMonitorProtocol): indent = None if self._pretty: indent = 4 - jsobj = json.dumps(qmp, indent=indent) + jsobj = json.dumps(qmp, indent=indent, sort_keys=self._pretty) print(str(jsobj)) def _execute_cmd(self, cmdline):
If the user selects pretty-printing (-p) the contents of any dictionaries in the output are sorted by key. Signed-off-by: David Edmondson <david.edmondson@oracle.com> --- scripts/qmp/qmp-shell | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)