* Reuse frame with emacsclient and/or use shell aliases when finding files
@ 2014-05-30 21:56 Jacob Gerlach
2014-05-30 22:13 ` Thorsten Jolitz
` (7 more replies)
0 siblings, 8 replies; 15+ messages in thread
From: Jacob Gerlach @ 2014-05-30 21:56 UTC (permalink / raw
To: help-gnu-emacs
I'm trying to better integrate my workflow in emacs. I've read a lot
about using emacs server, and experimented a little bit with setting
it up. If I open files with emacsclient, I end up with multiple
separate frames (I think I mean frame and not window. I've never been
positive I correctly understand the terminology). Although the frames
are connected through the server, I miss some of the navigation
functionality I get when I have multiple windows in a frame
(other-window, kill-buffer-and-window, etc).
What I think that I want to do is figure out how to reuse an existing
GUI frame if it exists. In other words, if I run `emacsclient -c
foofile' from my shell and I already have a frame open, I would like
foofile to open in that frame (and have the option to split the frame
if possible). If no frame is open (i.e. just the server), I would
like the normal behavior of opening a new frame.
I realize that another (perhaps better option) is to use emacs as my
shell. I'm experimenting with this but I am not sold yet.
Another problem, and the reason I'm opening multiple files from the
shell in the first place (instead of from within emacs), is that I
mostly navigate around between different projects using shell aliases.
Is there any way to use those aliases so that when I find-file I don't
have to manually navigate to the desired directory?
Any other recommendations that come to mind to migrate work from the
shell to emacs are welcome.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-30 21:56 Reuse frame with emacsclient and/or use shell aliases when finding files Jacob Gerlach
@ 2014-05-30 22:13 ` Thorsten Jolitz
2014-05-30 22:47 ` Robert Thorpe
` (6 subsequent siblings)
7 siblings, 0 replies; 15+ messages in thread
From: Thorsten Jolitz @ 2014-05-30 22:13 UTC (permalink / raw
To: help-gnu-emacs
Jacob Gerlach <jacobgerlach@gmail.com> writes:
Hi,
> I'm trying to better integrate my workflow in emacs. I've read a lot
> about using emacs server, and experimented a little bit with setting
> it up. If I open files with emacsclient, I end up with multiple
> separate frames (I think I mean frame and not window. I've never been
> positive I correctly understand the terminology). Although the frames
> are connected through the server, I miss some of the navigation
> functionality I get when I have multiple windows in a frame
> (other-window, kill-buffer-and-window, etc).
when using a terminal multiplexer like tmux or gnu-screen or a tiling
window-manager like stumpwm or awesome or so, and configuring them with
emacs key-bindings, frame navigation is pretty similar to window
navigation in Emacs, only with a special preserved prefix like
e.g. C-o. The nice thing is that you can have an external browser, a
shell and an emacsclient side by side almost as if they were 3 Emacs
buffers.
> What I think that I want to do is figure out how to reuse an existing
> GUI frame if it exists. In other words, if I run `emacsclient -c
> foofile' from my shell and I already have a frame open, I would like
> foofile to open in that frame (and have the option to split the frame
> if possible). If no frame is open (i.e. just the server), I would
> like the normal behavior of opening a new frame.
Thats something I tried to figure out to - how to address a specific
already open emacsclient instance, i.e. start it, figure out its process
id or so, and later on communicate with it (programmatically, not
interactively)
> I realize that another (perhaps better option) is to use emacs as my
> shell. I'm experimenting with this but I am not sold yet.
>
> Another problem, and the reason I'm opening multiple files from the
> shell in the first place (instead of from within emacs), is that I
> mostly navigate around between different projects using shell aliases.
> Is there any way to use those aliases so that when I find-file I don't
> have to manually navigate to the desired directory?
>
> Any other recommendations that come to mind to migrate work from the
> shell to emacs are welcome.
dired + ido? recent-files?
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-30 21:56 Reuse frame with emacsclient and/or use shell aliases when finding files Jacob Gerlach
2014-05-30 22:13 ` Thorsten Jolitz
@ 2014-05-30 22:47 ` Robert Thorpe
[not found] ` <mailman.2576.1401490089.1147.help-gnu-emacs@gnu.org>
` (5 subsequent siblings)
7 siblings, 0 replies; 15+ messages in thread
From: Robert Thorpe @ 2014-05-30 22:47 UTC (permalink / raw
To: Jacob Gerlach; +Cc: help-gnu-emacs
Jacob Gerlach <jacobgerlach@gmail.com> writes:
> What I think that I want to do is figure out how to reuse an existing
> GUI frame if it exists. In other words, if I run `emacsclient -c
> foofile' from my shell and I already have a frame open, I would like
> foofile to open in that frame (and have the option to split the frame
> if possible). If no frame is open (i.e. just the server), I would
> like the normal behavior of opening a new frame.
You want the default behaviour of emacsclient then. In that case don't add
"-c" to the emacsclient command. I'm sure you tried that though. I'm
not sure why it doesn't work on your setup. Do you have (server-start)
in your init file? Are you using emacs --daemon?
> I realize that another (perhaps better option) is to use emacs as my
> shell. I'm experimenting with this but I am not sold yet.
>
> Another problem, and the reason I'm opening multiple files from the
> shell in the first place (instead of from within emacs), is that I
> mostly navigate around between different projects using shell aliases.
> Is there any way to use those aliases so that when I find-file I don't
> have to manually navigate to the desired directory?
You could setup bookmarks with C-x r m that have the same names as the
aliases. You can bookmark a dired buffer in a certain directory and
recalling the bookmark will return you there.
> Any other recommendations that come to mind to migrate work from the
> shell to emacs are welcome.
Well, if you do use an Emacs shell then when you press C-x C-f it will
default to your current directory. Suppose you do M-x shell and you
have a bash alias 'alias pro1="cd ~\Projects\FooCorp\MainProject"'. If you
type "pro1 RET" it'll take you to the directory. Then C-x C-f, C-x d,
etc will default to \Projects\FooCorp\MainProject. "Shell" and "Term"
modes don't replace the shell they run it as a sub-process, only
"Eshell" replaces it with a different shell.
BR,
Robert Thorpe
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
[not found] ` <mailman.2576.1401490089.1147.help-gnu-emacs@gnu.org>
@ 2014-05-31 1:57 ` Jacob Gerlach
2014-05-31 11:21 ` Thien-Thi Nguyen
` (2 more replies)
0 siblings, 3 replies; 15+ messages in thread
From: Jacob Gerlach @ 2014-05-31 1:57 UTC (permalink / raw
To: help-gnu-emacs
> You want the default behaviour of emacsclient then. In that case don't add
> "-c" to the emacsclient command. I'm sure you tried that though. I'm
> not sure why it doesn't work on your setup. Do you have (server-start)
> in your init file? Are you using emacs --daemon?
If I use just emacsclient, I get a terminal window. With -c I get a GUI window. I don't have any problem with the client not starting. I didn't have (server-start) in my init, but adding it didn't change anything.
> You could setup bookmarks with C-x r m that have the same names as the
> aliases. You can bookmark a dired buffer in a certain directory and
> recalling the bookmark will return you there.
That's a pretty good idea! I've just recently started experimenting with bookmarks. I wonder if I could come up with some utility function to read in bash aliases and create the associated dired bookmarks when I start emacs. That way I don't have to maintain two lists of aliases and keep them synced.
> Well, if you do use an Emacs shell then when you press C-x C-f it will
> default to your current directory. Suppose you do M-x shell and you
> have a bash alias 'alias pro1="cd ~\Projects\FooCorp\MainProject"'. If you
> type "pro1 RET" it'll take you to the directory. Then C-x C-f, C-x d,
> etc will default to \Projects\FooCorp\MainProject. "Shell" and "Term"
> modes don't replace the shell they run it as a sub-process, only
> "Eshell" replaces it with a different shell.
I'm not certain I understood this correctly. After `M-x shell', I can use C-x C-f RET to get dired for the current directory. If I try C-x C-f, C-x d as you suggested, I get "Command attempted to use minibuffer while in minibuffer". In any case, if I change directories manually, `cd ~/foobar', find-file defaults to ~/foobar. If I use an alias to cd to ~/foobar, find-file remains in the previous working directory.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-31 1:57 ` Jacob Gerlach
@ 2014-05-31 11:21 ` Thien-Thi Nguyen
2014-05-31 11:22 ` Robert Thorpe
[not found] ` <mailman.2614.1401535376.1147.help-gnu-emacs@gnu.org>
2 siblings, 0 replies; 15+ messages in thread
From: Thien-Thi Nguyen @ 2014-05-31 11:21 UTC (permalink / raw
To: help-gnu-emacs
[-- Attachment #1.1: Type: text/plain, Size: 342 bytes --]
() Jacob Gerlach <jacobgerlach@gmail.com>
() Fri, 30 May 2014 18:57:19 -0700 (PDT)
I wonder if I could come up with some utility
function to read in bash aliases and create the
associated dired bookmarks when I start emacs.
Probably yes, if you learn a small bit of Emacs Lisp.
Personally, i define an env var for each directory:
[-- Attachment #1.2: .directory-env-vars --]
[-- Type: application/emacs-lisp, Size: 2244 bytes --]
[-- Attachment #1.3: jamenv.el --]
[-- Type: application/emacs-lisp, Size: 1911 bytes --]
[-- Attachment #1.4: Type: text/plain, Size: 2283 bytes --]
and type (for example) ‘C-x C-f $go/gnugo.el’ to visit
/home/ttn/build/GNU/elpa/packages/gnugo/gnugo.el.
Recent Emacs versions can do completion, and even on
the env vars! (I marvel at this, taken aback by the
mega-cycles burned for such banalities -- i guess i
prefer a more lizard-like less-electric lifestyle...
[insert more curmudgeonly harumphing] here.)
The "scads of short env vars" approach has, over the
years, tickled bugs in various tools that presume such
env vars are not set, which was annoying at the time,
but good for all (me and tools) over the long run,
once the tools' authors made them more mindful.
I also instrument ‘M-x compile’ like so:
(defun rewrite-shell-command-w/cd (string)
"If STRING begins w/ \"$foo\", return a new string.
In the new string, the \"$foo\" is replaced with \"cd $foo\", and
furthermore \"$foo\" is replaced with the value of `(getenv \"foo\")'.
For example, if (getenv \"hack\") => \"~/build/hack\", then
(rewrite-shell-command-w/cd \"$hack.b ; echo $hack\")
=> \"cd ~/build/hack.b ; echo $hack\"
For other values of STRING, simply return it."
(save-match-data
(if (string-match "^[$]\\([a-zA-Z_]+\\)" string)
(replace-match (concat "cd " (getenv (match-string 1 string)))
t t string)
string)))
(defadvice compilation-start (before rewrite-compilation-command-w/cd activate)
"Replace COMMAND using `rewrite-shell-command-w/cd'."
(ad-set-arg 0 (rewrite-shell-command-w/cd (ad-get-arg 0))))
and bind ‘M-m’ to ‘compile’, such that (for example)
M-m $go ; git remote update RET
invokes the "git remote update" command in directory
/home/ttn/build/GNU/elpa/packages/gnugo, no matter
what the ‘default-directory’ (from current buffer) is
at ‘M-m’ time. This is a small step towards the yet-
unrealized ideal of having the env var expanded in the
command, itself, which involves phasing complications
for the expansion of "~", primarily. Maybe Some Day...
--
Thien-Thi Nguyen
GPG key: 4C807502
(if you're human and you know it)
read my lisp: (responsep (questions 'technical)
(not (via 'mailing-list)))
=> nil
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-31 1:57 ` Jacob Gerlach
2014-05-31 11:21 ` Thien-Thi Nguyen
@ 2014-05-31 11:22 ` Robert Thorpe
[not found] ` <mailman.2614.1401535376.1147.help-gnu-emacs@gnu.org>
2 siblings, 0 replies; 15+ messages in thread
From: Robert Thorpe @ 2014-05-31 11:22 UTC (permalink / raw
To: Jacob Gerlach; +Cc: help-gnu-emacs
Jacob Gerlach <jacobgerlach@gmail.com> writes:
> If I use just emacsclient, I get a terminal window. With -c I get a
> GUI window. I don't have any problem with the client not starting.
> I didn't have (server-start) in my init, but adding it didn't
> change anything.
That's wierd. Have a look at the section on "Emacs Server" in the Emacs
manual. Emacsclient can only work if you have an Emacs server running.
To get one you have to start Emacs then run (server-start). After that
emacsclient will send a message to the running Emacs server telling it
to open the file.
Try the following:
* Close all Emacs instances.
* From the command line type "Emacs &" and minimize the Emacs.
* Execute (server-start) e.g. by typing it into scratch and pressing C-x
C-e with the cursor at the end of the line.
* From a shell type "emacsclient file.txt".
After the last step the existing Emacs should pop-up with the file open
in it.
> That's a pretty good idea! I've just recently started experimenting
> with bookmarks. I wonder if I could come up with some utility
> function to read in bash aliases and create the associated dired
> bookmarks when I start emacs. That way I don't have to maintain two
> lists of aliases and keep them synced.
I expect that's possible with a little bit of elisp. If you look at
.emacs.bmk it's quite a simple format.
> I'm not certain I understood this correctly. After `M-x shell', I
> can use C-x C-f RET to get dired for the current directory. If I
> try C-x C-f, C-x d as you suggested, I get "Command attempted to use
> minibuffer while in minibuffer". In any case, if I change
> directories manually, `cd ~/foobar', find-file defaults to ~/foobar.
When I wrote "C-x C-f, C-x d" I meant you could use C-x C-f or C-x d.#
> If I use an alias to cd to ~/foobar, find-file remains in the
> previous working directory.
So it does. I'd say that's a bug in shell mode.
BR,
Robert Thorpe
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-30 21:56 Reuse frame with emacsclient and/or use shell aliases when finding files Jacob Gerlach
` (2 preceding siblings ...)
[not found] ` <mailman.2576.1401490089.1147.help-gnu-emacs@gnu.org>
@ 2014-05-31 11:41 ` Thorsten Jolitz
2014-05-31 13:39 ` Robert Thorpe
2014-06-01 23:42 ` lee
` (3 subsequent siblings)
7 siblings, 1 reply; 15+ messages in thread
From: Thorsten Jolitz @ 2014-05-31 11:41 UTC (permalink / raw
To: help-gnu-emacs
Jacob Gerlach <jacobgerlach@gmail.com> writes:
> What I think that I want to do is figure out how to reuse an existing
> GUI frame if it exists.
A bit OT, but something I always wanted to find out:
Say I have 5 emacsclients connected to the same server, some started by
me on the command line, others by external programs, and I want those
external programs to reuse the specific emacsclient instance they
started for further code evaluation, showing other documents etc - how
do I do that?
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-31 11:41 ` Thorsten Jolitz
@ 2014-05-31 13:39 ` Robert Thorpe
2014-05-31 15:54 ` Thorsten Jolitz
0 siblings, 1 reply; 15+ messages in thread
From: Robert Thorpe @ 2014-05-31 13:39 UTC (permalink / raw
To: Thorsten Jolitz; +Cc: help-gnu-emacs
Thorsten Jolitz <tjolitz@gmail.com> writes:
> Jacob Gerlach <jacobgerlach@gmail.com> writes:
>
>> What I think that I want to do is figure out how to reuse an existing
>> GUI frame if it exists.
>
> A bit OT, but something I always wanted to find out:
>
> Say I have 5 emacsclients connected to the same server, some started by
> me on the command line, others by external programs, and I want those
> external programs to reuse the specific emacsclient instance they
> started for further code evaluation, showing other documents etc - how
> do I do that?
I don't think you can do that without modifying the Emacs server code
directly. That might not be so hard though, you could use the -e option
to emacsclient to send info to the bits within Emacs that you change.
BR,
Robert Thorpe
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
[not found] ` <mailman.2614.1401535376.1147.help-gnu-emacs@gnu.org>
@ 2014-05-31 14:16 ` Jacob Gerlach
2014-05-31 15:49 ` Robert Thorpe
0 siblings, 1 reply; 15+ messages in thread
From: Jacob Gerlach @ 2014-05-31 14:16 UTC (permalink / raw
To: help-gnu-emacs
> That's wierd. Have a look at the section on "Emacs Server" in the Emacs
> manual. Emacsclient can only work if you have an Emacs server running.
> To get one you have to start Emacs then run (server-start). After that
> emacsclient will send a message to the running Emacs server telling it
> to open the file.
Perhaps a bit of miscommunication. I was starting the server by running `emacs --daemon'. From my reading of the server help page, this does more or less the same thing as a regular instance with (server-start).
> Try the following:
> * Close all Emacs instances.
> * From the command line type "Emacs &" and minimize the Emacs.
> * Execute (server-start) e.g. by typing it into scratch and pressing C-x
> C-e with the cursor at the end of the line.
> * From a shell type "emacsclient file.txt".
> After the last step the existing Emacs should pop-up with the file open
> in it.
Previous comment about --daemon notwithstanding, I tried it the way you suggest, and this seems closer to the functionality I'm looking for. I need to play around with this a bit and see if I can tweak it to work exactly the way I like.
For example, I'd like the same shell command to start emacs initially as to connect as a client if it's already running. I think I figured out how to do this when running --daemon, specifying alternate editor as ''. I imagine it's something similar.
> So it does. I'd say that's a bug in shell mode.
OK. I double checked that this occurs under emacs -q, so I'll M-x report-emacs-bug about it.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-31 14:16 ` Jacob Gerlach
@ 2014-05-31 15:49 ` Robert Thorpe
0 siblings, 0 replies; 15+ messages in thread
From: Robert Thorpe @ 2014-05-31 15:49 UTC (permalink / raw
To: Jacob Gerlach; +Cc: help-gnu-emacs
Jacob Gerlach <jacobgerlach@gmail.com> writes:
>> That's wierd. Have a look at the section on "Emacs Server" in the Emacs
>> manual. Emacsclient can only work if you have an Emacs server running.
>> To get one you have to start Emacs then run (server-start). After that
>> emacsclient will send a message to the running Emacs server telling it
>> to open the file.
> Perhaps a bit of miscommunication. I was starting the server by
> running `emacs --daemon'. From my reading of the server help page,
> this does more or less the same thing as a regular instance with
> (server-start).
Ah, daemon mode is a different thing. I don't know about it, maybe
someone else here does though.
> Previous comment about --daemon notwithstanding, I tried it the way
> you suggest, and this seems closer to the functionality I'm looking
> for. I need to play around with this a bit and see if I can tweak it
> to work exactly the way I like.
> For example, I'd like the same shell command to start emacs initially
> as to connect as a client if it's already running. I think I figured
> out how to do this when running --daemon, specifying alternate editor
> as ''. I imagine it's something similar.
Set ALTERNATE_EDITOR to "emacs". That said what you want should work
with emacs --daemon.
BR,
Robert Thorpe
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-31 13:39 ` Robert Thorpe
@ 2014-05-31 15:54 ` Thorsten Jolitz
0 siblings, 0 replies; 15+ messages in thread
From: Thorsten Jolitz @ 2014-05-31 15:54 UTC (permalink / raw
To: help-gnu-emacs
Robert Thorpe <rt@robertthorpeconsulting.com> writes:
> Thorsten Jolitz <tjolitz@gmail.com> writes:
>
>> Jacob Gerlach <jacobgerlach@gmail.com> writes:
>>
>>> What I think that I want to do is figure out how to reuse an existing
>>> GUI frame if it exists.
>>
>> A bit OT, but something I always wanted to find out:
>>
>> Say I have 5 emacsclients connected to the same server, some started by
>> me on the command line, others by external programs, and I want those
>> external programs to reuse the specific emacsclient instance they
>> started for further code evaluation, showing other documents etc - how
>> do I do that?
>
> I don't think you can do that without modifying the Emacs server code
> directly. That might not be so hard though, you could use the -e option
> to emacsclient to send info to the bits within Emacs that you change.
I thought maybe by addressing the instance with its PID, but could not
figure out how. Anyway, thanks for the answer.
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-30 21:56 Reuse frame with emacsclient and/or use shell aliases when finding files Jacob Gerlach
` (3 preceding siblings ...)
2014-05-31 11:41 ` Thorsten Jolitz
@ 2014-06-01 23:42 ` lee
[not found] ` <mailman.2724.1401666174.1147.help-gnu-emacs@gnu.org>
` (2 subsequent siblings)
7 siblings, 0 replies; 15+ messages in thread
From: lee @ 2014-06-01 23:42 UTC (permalink / raw
To: help-gnu-emacs
Jacob Gerlach <jacobgerlach@gmail.com> writes:
> I'm trying to better integrate my workflow in emacs. I've read a lot
> about using emacs server, and experimented a little bit with setting
> it up. If I open files with emacsclient, I end up with multiple
> separate frames (I think I mean frame and not window. I've never been
> positive I correctly understand the terminology). Although the frames
> are connected through the server, I miss some of the navigation
> functionality I get when I have multiple windows in a frame
> (other-window, kill-buffer-and-window, etc).
Are you looking for 'emacsclient -n'?
There is a problem when you have multiple frames, though: How do you
decide in which frame the visited file will be displayed? Is it
possible to specify that when starting emacsclient? --- I usually have
at least two frames for different purposes, and using emacsclient to
visit a file or to create an email usually doesn`t put the file/email
into the frame I`d like to have it in.
--
Knowledge is volatile and fluid. Software is power.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
[not found] ` <mailman.2724.1401666174.1147.help-gnu-emacs@gnu.org>
@ 2014-06-02 1:10 ` Jacob Gerlach
0 siblings, 0 replies; 15+ messages in thread
From: Jacob Gerlach @ 2014-06-02 1:10 UTC (permalink / raw
To: help-gnu-emacs
> Are you looking for 'emacsclient -n'?
I don't think I'm specifically looking for -n, although I do use it. I
haven't used emacsclient enough to understand the nuance of C-x #
instead of typical methods like C-x k or otherwise.
> There is a problem when you have multiple frames, though: How do you
> decide in which frame the visited file will be displayed? Is it
> possible to specify that when starting emacsclient? --- I usually have
> at least two frames for different purposes, and using emacsclient to
> visit a file or to create an email usually doesn`t put the file/email
> into the frame I`d like to have it in.
I haven't worked into these more advanced issues yet, but I can
certainly imagine that I will soon want to know how to do these
things. For example, I usually have separate things going in different
virtual desktops. It would be nice to have four separate severs
running and for a call to emacsclient to connect to the corresponding
server for that virtual desktop. If anyone has any solutions for that,
it would be great.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
[not found] ` <mailman.2618.1401536506.1147.help-gnu-emacs@gnu.org>
@ 2014-06-06 8:35 ` Hans BKK
0 siblings, 0 replies; 15+ messages in thread
From: Hans BKK @ 2014-06-06 8:35 UTC (permalink / raw
To: help-gnu-emacs
On Saturday, May 31, 2014 7:41:16 AM UTC-4, Thorsten Jolitz wrote:
> Say I have 5 emacsclients connected to the same server, some started by
> me on the command line, others by external programs, and I want those
> external programs to reuse the specific emacsclient instance they
> started for further code evaluation, showing other documents etc - how
> do I do that?
possible (but kludgey) workaround?
set up an identically-configured instance of emacs running a separate server, have only one client per server
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Reuse frame with emacsclient and/or use shell aliases when finding files
2014-05-30 21:56 Reuse frame with emacsclient and/or use shell aliases when finding files Jacob Gerlach
` (6 preceding siblings ...)
[not found] ` <mailman.2618.1401536506.1147.help-gnu-emacs@gnu.org>
@ 2014-06-06 11:31 ` Alexander Baier
7 siblings, 0 replies; 15+ messages in thread
From: Alexander Baier @ 2014-06-06 11:31 UTC (permalink / raw
To: help-gnu-emacs
Hello Jacob,
On 2014-05-30 23:56 Jacob Gerlach wrote:
[...]
> Another problem, and the reason I'm opening multiple files from the
> shell in the first place (instead of from within emacs), is that I
> mostly navigate around between different projects using shell aliases.
> Is there any way to use those aliases so that when I find-file I don't
> have to manually navigate to the desired directory?
I think you should consider taking a look at projectile
[https://github.com/bbatsov/projectile]. It lets you jump between
different projects and opens files by offering you _every_ file in your
project. This is incredibly useful combined with flex matching like ido
or ido-flx.
It can do all sorts of other project related tasks, too, but only using
it for these two is already worth it, IMO.
HTH,
--
Alexander Baier
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2014-06-06 11:31 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-30 21:56 Reuse frame with emacsclient and/or use shell aliases when finding files Jacob Gerlach
2014-05-30 22:13 ` Thorsten Jolitz
2014-05-30 22:47 ` Robert Thorpe
[not found] ` <mailman.2576.1401490089.1147.help-gnu-emacs@gnu.org>
2014-05-31 1:57 ` Jacob Gerlach
2014-05-31 11:21 ` Thien-Thi Nguyen
2014-05-31 11:22 ` Robert Thorpe
[not found] ` <mailman.2614.1401535376.1147.help-gnu-emacs@gnu.org>
2014-05-31 14:16 ` Jacob Gerlach
2014-05-31 15:49 ` Robert Thorpe
2014-05-31 11:41 ` Thorsten Jolitz
2014-05-31 13:39 ` Robert Thorpe
2014-05-31 15:54 ` Thorsten Jolitz
2014-06-01 23:42 ` lee
[not found] ` <mailman.2724.1401666174.1147.help-gnu-emacs@gnu.org>
2014-06-02 1:10 ` Jacob Gerlach
[not found] ` <mailman.2618.1401536506.1147.help-gnu-emacs@gnu.org>
2014-06-06 8:35 ` Hans BKK
2014-06-06 11:31 ` Alexander Baier
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.