From: jenia.ivlev@gmail.com (jenia.ivlev)
To: help-gnu-emacs@gnu.org
Subject: set-window-buffer bugs
Date: Sat, 05 Dec 2015 15:52:12 -0500 [thread overview]
Message-ID: <87fuzgboub.fsf@gmail.com> (raw)
Hello.
Using dired, I want find-buffer-other-window to open in the exact
same window.
So I made this little program:
(define-key dired-mode-map "o" 'dired-find-file-other-opened-window)
(defun dired-find-file-other-opened-window ()
(interactive)
(set-window-buffer (frame-first-window) (dired-get-filename 'no-dir))
(dired-find-file-other-window))
It turns out that you needed to have visited that file already for
this to work.
Here is the backtrace for when it doesnt work:
Debugger entered--entering a function:
* #<subr set-window-buffer>(#<window 3 on *Backtrace*> "String.h" nil)
* apply(#<subr set-window-buffer> (#<window 3 on *Backtrace*> "String.h"))
* set-window-buffer(#<window 3 on *Backtrace*> "String.h")
dired-find-file-other-opened-window()
dired-fnd-fl-otr-opn-wnd-keep-cursor()
call-interactively(dired-fnd-fl-otr-opn-wnd-keep-cursor nil nil)
command-execute(dired-fnd-fl-otr-opn-wnd-keep-cursor)
After pressing `d` again, I get:
* command-error-default-function((wrong-type-argument bufferp nil) "" apply)
And here is a backtrace where it does work (the file has been previous visited):
Debugger entered--entering a function:
* window-buffer(#<window 3 on *Backtrace*>)
* linum-after-scroll(#<window 3 on *Backtrace*> 1)
* #<subr set-window-buffer>(#<window 3 on *Backtrace*> "String.c" nil)
* apply(#<subr set-window-buffer> (#<window 3 on *Backtrace*> "String.c"))
* set-window-buffer(#<window 3 on *Backtrace*> "String.c")
dired-find-file-other-opened-window()
dired-fnd-fl-otr-opn-wnd-keep-cursor()
call-interactively(dired-fnd-fl-otr-opn-wnd-keep-cursor nil nil)
command-execute(dired-fnd-fl-otr-opn-wnd-keep-cursor)
I mean, I don't get it. Why do I need to have visited the file before?
And in any case, how do I fix this? I just want it to open in the
(frame-first-window) that's all.
Thanks
next reply other threads:[~2015-12-05 20:52 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-05 20:52 jenia.ivlev [this message]
2015-12-05 21:04 ` set-window-buffer bugs jenia.ivlev
2015-12-05 21:19 ` John Mastro
2015-12-05 21:33 ` jenia.ivlev
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fuzgboub.fsf@gmail.com \
--to=jenia.ivlev@gmail.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.
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.