unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Random832 <random832@fastmail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: Question on frame title
Date: Thu, 15 Oct 2015 13:30:20 -0400	[thread overview]
Message-ID: <87y4f4hwer.fsf@fastmail.com> (raw)
In-Reply-To: d3ecbc36-ee74-485f-9eb4-2d0242dd4528@googlegroups.com

Benny Sum <benny.sum@gmail.com> writes:

> ls is just as an example.  I want to do unix command to get the
> revision control of a file.  Ultimately, here is what I want to do:
>
> Say unix command:
>> info_data filename
> -> revision number of the file from the database
>
> (setq frame-title-format
>  (list (format "%s" (shell-command-to-string(concat "info-data " " %b "))))) 
>
> So, I just use ls -1 as an example of unix command.
>
> But the problem is that it seems I don't have filename correctly.  It
> says I can't access the filename.  Did you try the command and see if
> that works for you?

I think you can do this with an :eval like this:

I included the default frame-title-format and put your info_data command
after it, since it won't work on non-files.

(setq frame-title-format
      '(""
        (multiple-frames "%b" ("" invocation-name "@" system-name))
        " "
        (:eval (when (stringp (buffer-file-name))
                 (shell-command-to-string
                   (concat "info_data "
                           (shell-quote-argument (buffer-file-name))))))))

This will re-execute the info-data command every time you switch
buffers. If the command is expensive, you may want to store the value in
a buffer-local variable.




  parent reply	other threads:[~2015-10-15 17:30 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-15 15:26 Question on frame title Benny Sum
2015-10-15 16:26 ` Marcin Borkowski
     [not found] ` <mailman.391.1444926481.7904.help-gnu-emacs@gnu.org>
2015-10-15 16:43   ` Benny Sum
2015-10-15 17:21     ` Marcin Borkowski
2015-10-15 17:30     ` Random832 [this message]
2015-10-15 17:49       ` Random832
     [not found]       ` <mailman.405.1444931478.7904.help-gnu-emacs@gnu.org>
2015-10-16 11:05         ` Benny Sum
2015-10-16 13:35           ` Random832
     [not found]           ` <mailman.455.1445002561.7904.help-gnu-emacs@gnu.org>
2015-10-16 18:15             ` Benny Sum
2015-10-16 19:14               ` Benny Sum
     [not found]     ` <mailman.402.1444930342.7904.help-gnu-emacs@gnu.org>
2015-10-15 23:08       ` Benny Sum

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y4f4hwer.fsf@fastmail.com \
    --to=random832@fastmail.com \
    --cc=help-gnu-emacs@gnu.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.
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 read-only IMAP folder(s) and NNTP newsgroup(s).