From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35763) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WD8uJ-0004JN-1b for qemu-devel@nongnu.org; Tue, 11 Feb 2014 03:41:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WD8uA-00026X-5t for qemu-devel@nongnu.org; Tue, 11 Feb 2014 03:41:30 -0500 Received: from mx1.redhat.com ([209.132.183.28]:43357) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WD8u9-00026Q-Uk for qemu-devel@nongnu.org; Tue, 11 Feb 2014 03:41:22 -0500 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s1B8fLJM007345 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 11 Feb 2014 03:41:21 -0500 Date: Tue, 11 Feb 2014 09:41:19 +0100 From: Kevin Wolf Message-ID: <20140211084119.GA3102@dhcp-200-207.str.redhat.com> References: <1390994251-21768-1-git-send-email-stefanha@redhat.com> <20140211013907.GB2923@T430.nay.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20140211013907.GB2923@T430.nay.redhat.com> Subject: Re: [Qemu-devel] [PATCH] QMP: allow JSON dict arguments in qmp-shell List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Fam Zheng Cc: qemu-devel@nongnu.org, Stefan Hajnoczi , Luiz Capitulino Am 11.02.2014 um 02:39 hat Fam Zheng geschrieben: > On Wed, 01/29 12:17, Stefan Hajnoczi wrote: > > qmp-shell hides the QMP wire protocol JSON encoding from the user. Most > > of the time this is helpful and makes the command-line human-friendly. > > > > Some QMP commands take a dict as an argument. In order to express this > > we need to revert back to JSON notation. > > > > This patch allows JSON dict arguments in qmp-shell so commands like > > blockdev-add and nbd-server-start can be invoked: > > > > (QEMU) blockdev-add options={"driver":"file","id":"drive1",...} > > > > Note that spaces are not allowed since str.split() is used to break up > > the command-line arguments first. > > > > Signed-off-by: Stefan Hajnoczi > > --- > > While this is definitely useful, just wondering if it is more friendly to allow > passing options as command line options do: > > (QEMU) blockdev-add options.driver=file options.id=drive1 In fact, I have been considering the brace syntax even for the command line, because the dot syntax gets a bit too verbose when you have a lot of nested dicts. The reason why I didn't do it is that it would introduce more special characters. >>From a usability POV, it might be best to have both. Kevin