I have a similar vim shortcut - for me, instead of using the stuff command,
I write to /tmp/screen-exchange, and then use readbuf and paste screen
commands.  This also lets you send text containing multiple lines eg for
python.

On Tue, Sep 11, 2018 at 8:43 AM 张小潘 <zhangxiao...@gmail.com> wrote:

> Hi there,
>
> I have been using GNU screen for many years and have some personal
> modifications to make it work better in my environment. There is one change
> I am looking for contribute back to main repository.
>
> Typically I have two monitors connected to my workstation, and I run one
> screen session in a terminal window on each of these monitors.  One screen
> is used to run a Vim session, another screen is used to run a bash
> session.  The trick here is I wrote a Vim script so that in a special
> buffer of the vim window, I can edit bash commands, and send these commands
> to run on the screen window by using  "/usr/bin/screen -S <session> -p
> <window> -X stuff <shell-command>", which is really handy. (I can share the
> vim script if anybody wants to see, but that is not my main point here)
>
> One thing annoys me is that screen uses a predefined constant in the
> source code to define the size to receive the remote command, that is:
>
>     http://git.savannah.gnu.org/cgit/screen.git/tree/src/screen.h#n44
>     #define MAXSTR 768
>
>     http://git.savannah.gnu.org/cgit/screen.git/tree/src/socket.c#n1297
>     char fullcmd[MAXSTR];
>
>     http://git.savannah.gnu.org/cgit/screen.git/tree/src/socket.c#n1309
>     ...
>     if (!(fc = strncpy_escape_quote(fc, p, fullcmd + ARRAY_SIZE(fullcmd)
> - 2))) { /* '"' ' ' */
>
>      Msg(0, "Remote command too long.");
>
>    ...
>
> My shell commands are usually quite long (binary with dozens of command
> line flags) and it can easily exceed the 768 limit. So in my local screen
> source copy, I changed it to 16384, which works really well for me. As I
> think in modern computers usually come up with several Gigabytes memory, 16
> k is really a small number, so I am writing this email to see if I can
> contribute this change back to screen main repository, and if yes, what is
> the appropriate steps to do it.
>
> Regards.
>
> --
> Xiaopan Zhang - (张小潘)
> _______________________________________________
> screen-users mailing list
> screen-users@gnu.org
> https://lists.gnu.org/mailman/listinfo/screen-users
>
_______________________________________________
screen-users mailing list
screen-users@gnu.org
https://lists.gnu.org/mailman/listinfo/screen-users

Reply via email to