From: Kevin Pouget <kevin.pouget@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>, Siva Chandra <sivachandra@google.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [RFC] A new command 'grep'
Date: Mon, 02 Jan 2012 09:28:00 -0000 [thread overview]
Message-ID: <CAPftXUJ-gFL9dRYX9OWx9oaEhPSfMsBak_vu3Dk5P1-5xaWA4A@mail.gmail.com> (raw)
In-Reply-To: <E1Rhdf5-0002s7-UR@fencepost.gnu.org>
On Mon, Jan 2, 2012 at 9:54 AM, Eli Zaretskii <eliz@gnu.org> wrote:
>
> I think this is the first time we receive a proposal for a command
> implemented in Python. Perhaps there's a place to discuss whether
> some policy is in order in this regard. E.g., the command will be
> unavailable in non-Python builds, which at least needs to be
> documented. There may be other aspects that are worth discussing.
I'm also curious about that, and maybe first of all, is there a Python
specific coding convention likely to be enforced in GNU projects
and/or GDB?
>> Date: Mon, 2 Jan 2012 10:30:55 +0530
>> From: Siva Chandra <sivachandra@google.com>
>>
>> Attached is a patch which implements a 'grep' command using the GDB
>> Python API. The idea behind the 'grep' command is as follows. We often
>> have deep data structures and are probably interested in some one
>> particular field or value embedded somewhere deep in that data
>> structure. For such cases, instead of typing the complete expression
>> for the field, we can use the 'grep' command to lookup the field or
>> value of interest.
>
> Thanks.
>
> I think this is the first time we receive a proposal for a command
> implemented in Python. Perhaps there's a place to discuss whether
> some policy is in order in this regard. E.g., the command will be
> unavailable in non-Python builds, which at least needs to be
> documented. There may be other aspects that are worth discussing.
>
> If this is accepted, it will need user-level documentation.
>
> I cannot say I like the name "grep". Users will associate that name
> with the Unix command that searches through files, which is radically
> different from what your command does. How about "lookup-fields"
> instead?
There was a discussion a few months ago about "Implementation of pipe
to pass GDB's command output to the shell" [1] which would allow to
use the 'real' grep to do a similar job, but I'm not sure about the
status of this patch, it seems not to be in the trunk yet, according
to the ChangeLog.
I didn't really look in depth at the sources, but based on you email
description, I wonder how it differs from a generic code like that
(not tested):
> (gdb) grep int ss
> ss.int_val = (int) 10
#assume set print pretty on
command = "print %s" % ss
to_grep = "int"
out = gdb.execute (command, to_string=True)
for line in out.split("\n")
if to_grep in line:
print line
good idea anyway,
thanks,
Kevin
[1]: http://sourceware.org/ml/gdb-patches/2011-08/msg00483.html
next prev parent reply other threads:[~2012-01-02 9:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-02 5:01 Siva Chandra
2012-01-02 8:54 ` Eli Zaretskii
2012-01-02 9:28 ` Kevin Pouget [this message]
2012-01-02 9:35 ` Abhijit Halder
2012-01-02 10:17 ` Siva Chandra
2012-01-02 17:44 ` Doug Evans
2012-01-03 6:02 ` Siva Chandra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAPftXUJ-gFL9dRYX9OWx9oaEhPSfMsBak_vu3Dk5P1-5xaWA4A@mail.gmail.com \
--to=kevin.pouget@gmail.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
--cc=sivachandra@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox