Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to emulate some behavior of the darkroom-mode Emacs mode -- specifically the margins setup.

I've figured out one piece of the puzzle -- specifically, to change window margins, I can eval (set-window-margins nil <left margin> <right margin>).

Which is fine, but I'm noticing that the changes only occur in the current window, and will actually go back to the default margin if I switch to a different buffer using C-x left or right arrow key.

I'd like to figure out how to do the following:

  • Set it so that all buffers get the same window-margin settings.
  • Set it so that the margin settings persist after changing windows.

I know that it might involve using hooks, but I'm not exactly sure which hooks to use.

share|improve this question

migrated from Jul 7 '11 at 17:21

This question came from our site for professional and enthusiast programmers.

To whom might be tempted to close-vote: Emacs falls into the "software tools commonly used by programmers" so according to the FAQ it's on topic. – Cosmin Prund Jul 7 '11 at 7:44
@cosmin-prund Also, the solution would probably involve programming, specifically coding in Elisp. Had it not I'd have gone to Super User. – tariqk Jul 7 '11 at 10:44

Do this in your init file (~/.emacs) -- use whatever values you want in place of 10 and 8:

 (setq-default left-margin-width 10 right-margin-width 8) ; Define new widths.
 (set-window-buffer nil (current-buffer)) ; Use them now.
share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .