Sorry for the HTML mess. I've added split-window to the patch.

On Sat, Mar 3, 2012 at 10:59 PM, Nicholas Marriott
<nicholas.marri...@gmail.com> wrote:
> Hi
>
> Your mailer seems to have converted to HTML and screwed up the patch,
> can you either send it inline as text only or as an attachment?
>
> Also I guess the same -F flag should be added to split-window?
>
>
> On Sat, Mar 03, 2012 at 07:01:51PM -0800, George Nachman wrote:
>>    Thanks for committing the previous patch. Here is a patch that adds a -F
>>    format arg to new-window that can be used in conjunction with -P. Note
>>    that it doesn't support any of the window pane format strings because it
>>    doesn't seem to make sense in this context.
>>    Index: cmd-new-window.c
>>    ===================================================================
>>    --- cmd-new-window.c    (revision 2710)
>>    +++ cmd-new-window.c    (working copy)
>>    @@ -30,9 +30,9 @@
>>    *
>>    *const struct cmd_entry cmd_new_window_entry = {
>>    *       "new-window", "neww",
>>    -       "ac:dkn:Pt:", 0, 1,
>>    -       "[-adk] [-c start-directory] [-n window-name] [-t target-window] "
>>    -       "[command]",
>>    +       "ac:dkn:Pt:F:", 0, 1,
>>    +       "[-adkP] [-c start-directory] [-n window-name] [-t target-window]
>>    "
>>    +       "[-F format] [command]",
>>    *       0,
>>    *       NULL,
>>    *       NULL,
>>    @@ -42,12 +42,15 @@
>>    *int
>>    *cmd_new_window_exec(struct cmd *self, struct cmd_ctx *ctx)
>>    *{
>>    -       struct args     *args = self->args;
>>    -       struct session  *s;
>>    -       struct winlink  *wl;
>>    -       const char * *  *cmd, *cwd;
>>    -       char            *cause;
>>    -       int              idx, last, detached;
>>    +       struct args             *args = self->args;
>>    +       struct session          *s;
>>    +       struct winlink          *wl;
>>    +       struct client           *c;
>>    +       const char              *cmd, *cwd;
>>    +       const char              *template;
>>    +       char                    *cause;
>>    +       int                      idx, last, detached;
>>    +       struct format_tree      *ft;
>>    *
>>    *       if (args_has(args, 'a')) {
>>    *               wl = cmd_find_window(ctx, args_get(args, 't'), &s);
>>    @@ -116,7 +119,19 @@
>>    *       } else
>>    *               server_status_session_group(s);
>>    *
>>    -       if (args_has(args, 'P'))
>>    -               ctx->print(ctx, "%s:%u", s->name, wl->idx);
>>    +       if (args_has(args, 'P')) {
>>    +               if (args_has(args, 'F'))
>>    +                       template = args_get(args, 'F');
>>    +               else
>>    +                * *template = "#{session_name}:#{window_index}";
>>    +               c = cmd_find_client(ctx, NULL);
>>    +               ft = format_create();
>>    +               if (c != NULL)
>>    +                * *format_client(ft, c);
>>    +               format_session(ft, s);
>>    +               format_winlink(ft, s, wl);
>>    +               ctx->print(ctx, "%s", format_expand(ft, template));
>>    +       }
>>    +
>>    *       return (0);
>>    *}
>>    Index: tmux.1
>>    ===================================================================
>>    --- tmux.1      (revision 2710)
>>    +++ tmux.1      (working copy)
>>    @@ -1253,6 +1253,7 @@
>>    *.Op Fl c Ar start-directory
>>    *.Op Fl n Ar window-name
>>    *.Op Fl t Ar target-window
>>    +.Op Fl F Ar format
>>    *.Op Ar shell-command
>>    *.Xc
>>    *.D1 (alias: Ic neww )
>>    @@ -1310,7 +1311,14 @@
>>    *.Pp
>>    *The
>>    *.Fl P
>>    -option prints the location of the new window after it has been created.
>>    +option prints information about the new window after it has been created.
>>    +By default, it uses the format
>>    +.Ql #{session_name}:#{window_index} ,
>>    +but a different format may be specified with the
>>    +.Fl F
>>    +flag with a
>>    +.Ar format
>>    +argument.
>>    *.It Ic next-layout Op Fl t Ar target-window
>>    *.D1 (alias: Ic nextl )
>>    *Move a window to the next layout and rearrange the panes to fit.

Attachment: new-window-2.patch
Description: Binary data

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
tmux-users mailing list
tmux-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tmux-users

Reply via email to