[Tcsh] Interactive comments for tcsh?
Matheus Garcia
tateusg at hotmail.com
Wed Mar 26 13:15:31 UTC 2025
https://github.com/tcsh-org/tcsh/pull/89/files/e59e30adb28b683f5f46f5b66bedfe1d6366e7d4#diff-3c3be7038187eac587a847863d11413dc3111f2fb82c8e0785227287961e8a1bR280
Refactored.
const-qualified variables yield undefined behavior on change. Do pointer struct members follow this behavior as well? Possible undefined behavior case?
@@ -273,9 +274,21 @@ syn0(const struct wordent *p1, const struct wordent *p2, int flags)
t->t_dcar = t1;
t->t_dcdr = syntax(p, p2, flags);
return (t);
+
+ case '#':
+ if (intty) {
+ struct wordent *p1 = p2->prev;
+
+ p1 = p1->prev = p1->prev->prev;
+ xfree(p1->next->word);
+ xfree(p1->next);
+ p1->next = p2->prev;
+ goto out;
+ }
default:
break;
}
+out:
if (l == 0)
return (syn1(p1, p2, flags));
seterror(ERR_TOOMANYLP);
________________________________
https://github.com/Krush206/tcsh/commit/70eec821e7965cfa728277e00d12a174829abc82
This should do to prevent history substitution. Only problem is that adds a new backslash for ! characters.
________________________________
https://github.com/Krush206/tcsh/commit/93f08ae2b63073ba57125bbb2be375e7c78cdaa5
I modified the parser so that # characters are ignored. Unfortunately, history substitution still is parsed, because it's executed before syntax(). History substitution is probably located in sh.lex.c, and the code is executed before syntax().
________________________________
Is there any possibility/interest in adding an 'interactive_comments" option for tcsh like is in bash?
I'm interested because I often make notes of procedures/commands that I want to cat and paste into the terminal to repeat at some point and want to be able to add comments to them. Stuff like:
mkdir foobar # pick any name
cd foobar
ln -s ../bletch/bin/* ./ # include bletch commands
I have been using ' ;: ' to introduce comments, but the shell still tries to parse the rest of the line and if there are any quotes, semi-colons, less-thans, or greater-thans, it doesn't work properly
-WRSomsky
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.astron.com/pipermail/tcsh/attachments/20250326/2b2bd5f9/attachment.htm>
More information about the Tcsh
mailing list