I split a file on Emacs using C-x 2.
When I modify the top window, the bottom window gets modified simultaneously.
How can I modify the top window and not the bottom?
You may have confused the concepts of Windows, buffers and files. Although you split Windows, they show the same buffer and changes are synchronized between the two Windows. If you really want to, you need to create a new buffer or file with the same content.
Related
After working in a multiple column layout it is nice to be able to focus on one file momentarily using the entire application space. Then, returning to a column view.
In Slick-Edit this is Window / Zoom Toggle.
In VSCode, moving between multiple columns to 1, and then back to multiple loses editor groupings.
My approach for this scenario is using CMD+KO to Open Active File in New Window. If you close the window the file will still be present in your editor group.
There are some hiccups: I prefer a maximized window over full screen mode, but that will open a new, non-maximized window. In full screen you can prevent that, but will have to use CMD+W twice to get back to original view.
I use emacs within screen in SSH for most of my work, and would like to be able to copy text from one session to another. I currently use the mouse to select, but this is problematic for three reasons:
Spacing often gets messed up, particularly tabs
I have to get temporarily out of vertical screen split to copy (lest the other half get copied as well)
I can't copy more than one vertical screen's worth of text
And of course, it slows me down by requiring taking my hands off the keyboard. Is there a way to use some command similar to emacs kill-ring buffers to paste between screen sessions with the keyboard?
I have not used screen for years, so I cannot give you a screen based answer, but there is other things you can try:
If emacs are in same machine, use emacs in daemon mode, and emacsclient. Your can have same emacs session across several screen sessions. Since it is the same emacs session, the kill ring is the same and cut and pasting is trivial (your 3 problems are solved). If files are in different hosts, just open them from the same emacs session in one host via ssh (emacs can open remote files using tramp).
Use tmux as a replacement of screen. It is more scriptable and configurable. You can use copy-mode in tmux to copy and paste tmux buffers, that you can select with emacs-like key combos. While those buffers may span across more than one "tmux page", copy-mode is not able to scroll over emacs buffer (it scrolls over tmux buffer). So thos does not solve your #3 problem.
Create a emacs key binding to "paste" a region of file into a temp file (write-region) and another to read from that same file file.
I want to change the icon which is displayed for the emacs window (frame). For two different sessions (gnus and normal emacs editing) I want to have different icons. Any ideas how I can achieve that?
See the Emacs manual, node Icons X. This is what it says about this:
By default, Emacs uses an icon containing the Emacs logo. On
desktop environments such as Gnome, this icon is also displayed in
other contexts, e.g., when switching into an Emacs frame. The `-nbi'
or `--no-bitmap-icon' option tells Emacs to let the window manager
choose what sort of icon to use--usually just a small rectangle
containing the frame's title.
On some window managers or platforms you might need to find another way to do it.
I'm working on my .emacs configuration for clojure development.
What I want to happen is whenever I open a file called "project.clj" if there is no open buffer called "swank", split the window first horizontally then split the right side vertically. Then from the project.clj buffer run (clojure-jack-in) to start the REPL and (shell) to load a bash shell. When all of this is done I'd like the project.clj file to be in the left window, the shell to be in the top right window, and the REPL to be in the bottom right window.
Also if there's a way to get speedbar to open in a specified window rather than in a new frame, that would be awesome.
I guess my question is: is there a way to specify which window new buffers are opened in?
Ok, how about this answer via ibuffer or via grid-files-sq or GridLayout and (more unrelatedly) desktop remembering suggestions
I'm a new emacs user using emacs for the awesome org-mode. I have links to all my org files at the top of my pages but everytime I click a link it splits my window, so I only have half of the screen estate available. How do I set it so that emacs does not split the window horizontally but rather opens up a new window for my links?
I'm assuming you mean you want to open the link in a new frame. (Emacs terminology is a bit different from other GUI apps, because Emacs predates X11. What would be called a "window" in other apps is called a "frame" in Emacs, because "window" already had a specific meaning in Emacs, and was used in the names of lots of functions.) What's happening now is that you have a frame containing one window, and Emacs is splitting that window to form two windows.
You need to customize org-link-frame-setup to use find-file-other-frame instead of the default find-file-other-window.
You can do this by typing M-x customize-variable <ENTER> org-link-frame-setup <ENTER>. Click the Value Menu next to find-file-other-window and select find-file-other-frame, then click Save for future sessions.
One option is to tell Emacs to never split windows, which can be done like so:
(setq same-window-regexps '("."))
This will keep your window from splitting, and then you use your regular commands to switch buffers to get back to what you were looking at.
This is as opposed to what it sounds like you were asking for, which was new frames, which IMO doesn't really help if you have limited screen real estate because you're now having to switch frames (graphical windows).