From: Ray Andrews <rayandrews@eastlink.ca>
To: zsh-workers@zsh.org
Subject: Re: first adventures
Date: Sun, 26 Oct 2014 12:57:54 -0700 [thread overview]
Message-ID: <544D5242.7000505@eastlink.ca> (raw)
In-Reply-To: <141026105032.ZM13782@torch.brasslantern.com>
On 10/26/2014 10:50 AM, Bart Schaefer wrote:
> On Oct 26, 10:20am, Ray Andrews wrote:
> }
> } I'm trying to figure out where/how command lines are grabbed (I think
> } this is done by zle?).
>
> Well, it's done by ZLE when ZLE is active, which it isn't always.
>
> However, I think what you're looking for is Src/Zle/zle_main.c in the
Nuts! I never even thought to look in a subdir. No wonder all trails
went cold.
> function zle_main_entry() under "case ZLE_CMD_READ" where the call to
> zleread() is made. Or perhaps where that's called, which is usually
> from Src/input.c:inputline() via zleentry(ZLE_CMD_READ, ...).
>
> } ... I'm hoping there will be some_string somewhere such that:
> }
> } puts(some_string)
> }
> } ... will print exactly:
> }
> } some-command $1 *.* !{1, 1 & @ >>! $2 "no parsing please!" .. ()
> } '<<' `# ^ -n(*&<)` {}
>
> No, that there isn't, though if you look around line 296 of input.c where
> the VERBOSE option is handled, you'll get close. The input line is read
> into what's called "metafied" form by zleread() and has to be unmetafied
> [by the aptly named function unmetafy(), Src/utils.c] to return it to
> the raw input form.
But. But ... we can't get the string before it's metafied in the first
place? How is it possible
for it to be metafied before 'it' exists? If I can have a meta-fried
egg, surely at some point there
was a raw egg? I was looking in hist.c, because the one place where
things seem to be
stored 'literally' is in .histfile.
The Tao of zsh is a deep thing.
But somehow I just can't get anything to print if interactive. I've got
lots of feedback
if adding " puts("Hi. This is line xxx of file xxx") " ... sort of
things in the code
when running a script, but if interactive nothing ever shows:
// if (isset(VERBOSE)) {
/* Output the whole line read so far. */
zputs(ingetcline, stderr);
fflush(stderr);
// }
... nothing doing, no output. I tried it from console too. Nothing. Is
the xterm somehow
interfering?
next prev parent reply other threads:[~2014-10-26 19:55 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-26 17:20 Ray Andrews
2014-10-26 17:50 ` Bart Schaefer
2014-10-26 18:04 ` Bart Schaefer
2014-10-26 18:41 ` Ray Andrews
2014-10-26 19:57 ` Ray Andrews [this message]
2014-10-26 21:04 ` Bart Schaefer
2014-10-27 3:48 ` Ray Andrews
2014-10-27 6:08 ` Bart Schaefer
2014-10-26 17:52 ` Peter Stephenson
2014-10-28 17:48 ` Ray Andrews
2014-10-29 4:05 ` Bart Schaefer
2014-10-29 15:41 ` Ray Andrews
2014-10-29 20:46 ` Bart Schaefer
2014-10-29 23:31 ` Ray Andrews
2014-10-30 4:07 ` Bart Schaefer
2014-10-30 17:22 ` Ray Andrews
2014-10-31 1:59 ` Ray Andrews
2014-10-31 2:59 ` Bart Schaefer
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=544D5242.7000505@eastlink.ca \
--to=rayandrews@eastlink.ca \
--cc=zsh-workers@zsh.org \
/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.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).