* fit-frame every time i open a file @ 2007-10-15 13:07 alxx 2007-10-15 15:45 ` Drew Adams 0 siblings, 1 reply; 14+ messages in thread From: alxx @ 2007-10-15 13:07 UTC (permalink / raw) To: Help-gnu-emacs Hello, I'm been using emacs (well, Aquamacs for the past year) but I'm still on a beginner's level. I've went through some of the available tutorials and I'm also a computer programmer, so I should at least pretend to understand emacs better :) Here's my question. I've been getting tired of manually calling fit-frame everytime I open a file with long lines (I have a wide-screen iMac so soft wrapping doesn't make much sense), and I would like to know if there's any easy way to tell emacs to call fit-frame everytime it opens a file. I tried to hook fit-frame to some of the hooks (specifically, after-make-frame) but it didn't seem to do much (at least in Aquamacs). Since I've noticed that Aquamacs sets the mark after each file opening, I tried to hook fit-frame to activate-mark-hook and that did the trick, except -- you guessed it -- my window is all over the screen everytime I select anything. Does anyone know what the correct hook would be to make fit-frame run each time I open a file? Or what's the correct way to do this? Thank you! -- View this message in context: http://www.nabble.com/fit-frame-every-time-i-open-a-file-tf4627339.html#a13212438 Sent from the Emacs - Help mailing list archive at Nabble.com. ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: fit-frame every time i open a file 2007-10-15 13:07 fit-frame every time i open a file alxx @ 2007-10-15 15:45 ` Drew Adams 2007-10-15 16:13 ` alxx 0 siblings, 1 reply; 14+ messages in thread From: Drew Adams @ 2007-10-15 15:45 UTC (permalink / raw) To: alxx, Help-gnu-emacs > I've been getting tired of manually calling fit-frame > everytime I open a file with long lines (I have a wide-screen iMac so soft > wrapping doesn't make much sense), and I would like to know if there's any > easy way to tell emacs to call fit-frame everytime it opens a file. > > I tried to hook fit-frame to some of the hooks (specifically, > after-make-frame) but it didn't seem to do much (at least in Aquamacs). > Since I've noticed that Aquamacs sets the mark after each file opening, I > tried to hook fit-frame to activate-mark-hook and that did the > trick, except -- you guessed it -- my window is all over the screen > everytime I select anything. > > Does anyone know what the correct hook would be to make fit-frame run each > time I open a file? Or what's the correct way to do this? Yes, see http://www.emacswiki.org/cgi-bin/wiki/Shrink-Wrapping_Frames#AutoFitFrames. You need libraries `fit-frame.el' and `autofit-frame.el' (which might be included in Aquamacs), and you'll want to do this: (add-hook 'after-make-frame-functions 'fit-frame) If you don't have the libraries, they are here: http://www.emacswiki.org/cgi-bin/emacs/fit-frame.el http://www.emacswiki.org/cgi-bin/emacs/autofit-frame.el However, you say that you have already tried `after-make-frame-hook'. Try again, with the above versions of the files. And perhaps someone who uses Aquamacs can speak to the Aquamacs problems you encountered. ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: fit-frame every time i open a file 2007-10-15 15:45 ` Drew Adams @ 2007-10-15 16:13 ` alxx 2007-10-15 17:02 ` Drew Adams 2007-10-15 17:44 ` Peter Dyballa 0 siblings, 2 replies; 14+ messages in thread From: alxx @ 2007-10-15 16:13 UTC (permalink / raw) To: Help-gnu-emacs Thanks, but been there, done that. I admit I didn't try again with the new libraries, because I'm not sure where they should be replaced :"> (yes, I could try to find the files on disk). However, aren't I correct in assuming that the libraries (albeit not necessarily the latest versions) are already in Aquamacs, since I can call fit-frame manually and it works? Moreover, I can successfully associate it to some other hooks and that works too. The only thing that doesn't work is hooking fit-frame to after-make-frame-functions in particular. This yields no visible results. Drew Adams wrote: > > Yes, see > http://www.emacswiki.org/cgi-bin/wiki/Shrink-Wrapping_Frames#AutoFitFrames. > > [...] > > However, you say that you have already tried `after-make-frame-hook'. Try > again, with the above versions of the files. And perhaps someone who uses > Aquamacs can speak to the Aquamacs problems you encountered. > -- View this message in context: http://www.nabble.com/fit-frame-every-time-i-open-a-file-tf4627339.html#a13216190 Sent from the Emacs - Help mailing list archive at Nabble.com. ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: fit-frame every time i open a file 2007-10-15 16:13 ` alxx @ 2007-10-15 17:02 ` Drew Adams 2007-10-15 17:44 ` Peter Dyballa 1 sibling, 0 replies; 14+ messages in thread From: Drew Adams @ 2007-10-15 17:02 UTC (permalink / raw) To: alxx, Help-gnu-emacs > Thanks, but been there, done that. I admit I didn't try again with the new > libraries, because I'm not sure where they should be replaced :"> (yes, I > could try to find the files on disk). You need not replace anything, just to try a library - just load it. If it happens to help, then you can worry about how to replace what you have. > However, aren't I correct in assuming that the libraries (albeit not > necessarily the latest versions) are already in Aquamacs, since I can call > fit-frame manually and it works? I have no idea what is in Aquamacs. I don't use Aquamacs, I don't have access to an Apple machine, and I wasn't involved in adding my code to Aquamacs. If I had to guess, I'd guess that Aquamacs does something different with these libraries and `after-make-frame-functions'. But that's just a guess from ignorance. > Moreover, I can successfully associate it to some other hooks and > that works too. The only thing that doesn't work is > hooking fit-frame to after-make-frame-functions in particular. > This yields no visible results. I'm afraid I can't help you then. It works fine on other platforms. Perhaps Aquamacs does something special in this regard. Perhaps someone who is familiar with Aquamacs has a suggestion. Perhaps it has to do with the order of the functions in `after-make-frame-functions'. You might try changing the order or testing without any other functions in that hook, besides `fit-frame'. Perhaps it has to do with how Aquamacs and Apple create frames, and how that process interacts with `after-make-frame-functions'. Dunno. Did you say that it doesn't work only on files with long lines? Perhaps `fit-frame' is in fact being called, but it doesn't do what you expect. `fit-frame' does not fill or change your text in any way. The new frame width is based on the longest line in your buffer, so if you have long lines, then you'll have a wide frame. You can, however, control the maximum width in various ways (variables) - see the Commentary in fit-frame.el. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: fit-frame every time i open a file 2007-10-15 16:13 ` alxx 2007-10-15 17:02 ` Drew Adams @ 2007-10-15 17:44 ` Peter Dyballa 2007-10-15 18:15 ` Drew Adams 1 sibling, 1 reply; 14+ messages in thread From: Peter Dyballa @ 2007-10-15 17:44 UTC (permalink / raw) To: alxx; +Cc: Help-gnu-emacs Am 15.10.2007 um 18:13 schrieb alxx: > I'm not sure where they should be replaced Look at load-path. It will have among the first few elements directories that belong to your home directory. Put the files there, so they're found before those inside the Mac OS X application bundle. -- Greetings Pete A child of five could understand this! Fetch me a child of five. ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: fit-frame every time i open a file 2007-10-15 17:44 ` Peter Dyballa @ 2007-10-15 18:15 ` Drew Adams 2007-10-15 18:23 ` Alex Deva 0 siblings, 1 reply; 14+ messages in thread From: Drew Adams @ 2007-10-15 18:15 UTC (permalink / raw) To: Peter Dyballa, alxx; +Cc: Help-gnu-emacs > > I'm not sure where they should be replaced > > Look at load-path. It will have among the first few elements > directories that belong to your home directory. Put the files there, > so they're found before those inside the Mac OS X application bundle. First, just try loading each of them using `M-x load-file'. If they don't help, there is no sense in using them. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: fit-frame every time i open a file 2007-10-15 18:15 ` Drew Adams @ 2007-10-15 18:23 ` Alex Deva 2007-10-15 18:41 ` Drew Adams 0 siblings, 1 reply; 14+ messages in thread From: Alex Deva @ 2007-10-15 18:23 UTC (permalink / raw) To: Drew Adams; +Cc: Peter Dyballa, Help-gnu-emacs Sorry Drew, but as I said, I'm more of a beginner. I saved the two libraries you recommended, and then loaded both manually with load-file. So... what now? I can't call add-hook from inside emacs (or I don't know how). What am I supposed to do from this point on? How do I test the hook? On Oct 15, 2007, at 9:15 PM, Drew Adams wrote: >>> I'm not sure where they should be replaced >> >> Look at load-path. It will have among the first few elements >> directories that belong to your home directory. Put the files there, >> so they're found before those inside the Mac OS X application bundle. > > First, just try loading each of them using `M-x load-file'. If they > don't > help, there is no sense in using them. > ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: fit-frame every time i open a file 2007-10-15 18:23 ` Alex Deva @ 2007-10-15 18:41 ` Drew Adams 2007-10-15 20:12 ` Alex Deva [not found] ` <mailman.2101.1192479183.18990.help-gnu-emacs@gnu.org> 0 siblings, 2 replies; 14+ messages in thread From: Drew Adams @ 2007-10-15 18:41 UTC (permalink / raw) To: Alex Deva; +Cc: Peter Dyballa, Help-gnu-emacs > Sorry Drew, but as I said, I'm more of a beginner. No apology needed. My fault for not noticing that. > I saved the two libraries you recommended, and then loaded both > manually with load-file. So... what now? I can't call add-hook from > inside emacs (or I don't know how). What am I supposed to do from > this point on? How do I test the hook? After you load the *.el files with `load-file', do this (mentioned in the file Commentary): M-: (add-hook 'after-make-frame-functions 'fit-frame) If that doesn't fix the problem, then take a look at the value of `after-make-frame-functions'. If it contains more than just `fit-frame', try setting it to nil (empty) and then adding `fit-frame' back again: M-: (setq after-make-frame-functions nil) M-: (add-hook 'after-make-frame-functions 'fit-frame) The result should then be this: C-h v after-make-frame-functions ==> (fit-frame) Note: If there were additional functions, besides `fit-frame', in `after-make-frame-functions', then there might be a good reason for them to be there. ;-) The above procedure is just to try to see if `fit-frame' does the right thing at least when there are no other `after-make-frame-functions' present. If it does, then there is likely interference among those functions. In that case, you can try (starting with an empty list) adding them all back, in different orders (e.g. try `fit-frame' first or last), to see if that helps. You get the idea. But see my previous reply about long lines. It sounds like this might just be unrealistic expectations on your part. `fit-frame' makes the frame as wide as its longest line, but it respects maximum limits that you can set. See the `fit-frame' doc string. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: fit-frame every time i open a file 2007-10-15 18:41 ` Drew Adams @ 2007-10-15 20:12 ` Alex Deva 2007-10-15 20:54 ` Drew Adams 2007-10-16 8:44 ` Peter Dyballa [not found] ` <mailman.2101.1192479183.18990.help-gnu-emacs@gnu.org> 1 sibling, 2 replies; 14+ messages in thread From: Alex Deva @ 2007-10-15 20:12 UTC (permalink / raw) To: Drew Adams; +Cc: Help-gnu-emacs [-- Attachment #1.1: Type: text/plain, Size: 3645 bytes --] On Oct 15, 2007, at 9:41 PM, Drew Adams wrote: >> Sorry Drew, but as I said, I'm more of a beginner. > > No apology needed. My fault for not noticing that. I actually take pride in that :) > >> I saved the two libraries you recommended, and then loaded both >> manually with load-file. So... what now? I can't call add-hook from >> inside emacs (or I don't know how). What am I supposed to do from >> this point on? How do I test the hook? > > After you load the *.el files with `load-file', do this (mentioned > in the > file Commentary): > > M-: (add-hook 'after-make-frame-functions 'fit-frame) > I added the hook manually (I honestly didn't know about M-: because I'm not a LISP programmer, though it's on my list) and the effect was this: any file I opened came up in a frame exactly the same dimensions as the current frame (which, as it happens, had been fit- framed). The dimensions of the new frames are now irrespective of the frame best fit (i.e., if I manually call fit-frame, the frame resizes). However, if I resize the current window by dragging its corner (Aquamacs lets you do that), then the files I subsequently open still have the same dimensions that the current window originally had. In other words, width/height seem to have been frozen when I added the hook, somehow. > If that doesn't fix the problem, then take a look at the value of > `after-make-frame-functions'. If it contains more than just `fit- > frame', try > setting it to nil (empty) and then adding `fit-frame' back again: > Taking a look at the variable in question, I get this: (fit-frame set-mode-style-after-make-frame) A quick grep showed that the second call has nothing to do with either of your two libraries. I don't know how to look it up inside emacs to see where it comes from. :( > M-: (setq after-make-frame-functions nil) > M-: (add-hook 'after-make-frame-functions 'fit-frame) > > The result should then be this: > > C-h v after-make-frame-functions ==> (fit-frame) > OK. Now again nothing happens when I open new files. They seem to open with the default width/height and are resized to best fit when I call fit-frame manually. > The above procedure is just to try to see if `fit-frame' does the > right > thing at least when there are no other `after-make-frame-functions' > present. > If it does, then there is likely interference among those > functions. In that > case, you can try (starting with an empty list) adding them all > back, in > different orders (e.g. try `fit-frame' first or last), to see if > that helps. > You get the idea. Thank you, I do, but since the test failed, I don't see the point in reversing the order of the only 2 functions that were hooked... > > But see my previous reply about long lines. It sounds like this > might just > be unrealistic expectations on your part. `fit-frame' makes the > frame as > wide as its longest line, but it respects maximum limits that you > can set. > See the `fit-frame' doc string. I read everything you write carefully. I know (empirically) what fit- frame does and what it doesn't do, and we're not having a case of enforced line width limits (besides, those are accessible as configuration parameters within Aquamacs -- one of the reasons I thought fit-frame would be better integrated). Given this new information, is there anything else I could try? The problem started off pretty simple, but now seems to be getting hairier... Aquamacs support is rather scarce, and I'm surprised to discover that nobody from their team is on this list also. Thank you for your support so far, Alex [-- Attachment #1.2: Type: text/html, Size: 8688 bytes --] [-- Attachment #2: Type: text/plain, Size: 152 bytes --] _______________________________________________ help-gnu-emacs mailing list help-gnu-emacs@gnu.org http://lists.gnu.org/mailman/listinfo/help-gnu-emacs ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: fit-frame every time i open a file 2007-10-15 20:12 ` Alex Deva @ 2007-10-15 20:54 ` Drew Adams 2007-10-16 7:15 ` Alex Deva 2007-10-16 8:44 ` Peter Dyballa 1 sibling, 1 reply; 14+ messages in thread From: Drew Adams @ 2007-10-15 20:54 UTC (permalink / raw) To: Alex Deva; +Cc: Help-gnu-emacs > > After you load the *.el files with `load-file', do this > > (mentioned in the file Commentary): > > > > M-: (add-hook 'after-make-frame-functions 'fit-frame) > I added the hook manually (I honestly didn't know about > M-: because I'm not a LISP programmer, though it's on my list) `M-:' means hold the Meta key (probably the Alt key) pressed while you hit `:'. It is bound to command `pp-eval-expression', which lets you type a Lisp expression to evaluate. > and the effect was this: any file I opened came up in a > frame exactly the same dimensions as the current frame > (which, as it happens, had been fit-framed). The dimensions > of the new frames are now irrespective of the frame best fit > (i.e., if I manually call fit-frame, the frame resizes). > However, if I resize the current window by dragging its corner > (Aquamacs lets you do that), then the files I subsequently > open still have the same dimensions that the current window > originally had. In other words, width/height seem to have been > frozen when I added the hook, somehow. It sounds like either `fit-frame' was not called, it was called but didn't do anything, or it did something that was undone afterward. > Taking a look at the variable in question, I get this: > (fit-frame set-mode-style-after-make-frame) > > A quick grep showed that the second call has nothing to > do with either of your two libraries. I don't know how to > look it up inside emacs to see where it comes from. :( FYI - You can use `C-h f' to describe any function. The *Help* buffer showing the description usually tells you what file it is defined in and provides a link to its definition. > > M-: (setq after-make-frame-functions nil) > > M-: (add-hook 'after-make-frame-functions 'fit-frame) > OK. > Now again nothing happens when I open new files. > They seem to open with the default width/height and are > resized to best fit when I call fit-frame manually. If `after-make-frame-functions' has value (fit-frame), then `fit-frame' should be called. You can do this to see if it is called: M-x debug-on-entry RET fit-frame RET You can cancel such debugging this way: M-x cancel-debug-on-entry RET If `fit-frame' is not being called, then you'll need to get some help from an Aquamacs user. It sounds to me like it is not getting called, because when you call it by hand it apparently works correctly. Make sure you spelled everything correctly. C-h v after-make-frame-functions should show this: (fit-frame) If `fit-frame' is getting called (as shown by entering the debugger), then you need to figure out why it doesn't fit the frame. Read the doc string of `fit-frame' to understand it, including the conditions under which it does nothing. It's possible that the values of the fit-frame user options (e.g. `fit-frame-inhibit-fitting-flag') are preventing resizing. Again, however, I doubt that it is getting called at all, since calling it manually does resize the frame correctly. > > The above procedure is just to try to see if `fit-frame' > > does the right thing at least when there are no other > > `after-make-frame-functions' present. If it does, then > > there is likely interference among those functions. > > In that case, you can try (starting with an empty list) > > adding them all back, in different orders (e.g. try > > `fit-frame' first or last), to see if that helps. > > You get the idea. > Thank you, I do, but since the test failed, I don't see > the point in reversing the order of the only 2 functions > that were hooked... Do you see "If it does" and "In that case" in what I wrote? From what you wrote, it does not: `after-make-frame-functions' = (fit-frame) does not solve the problem. So the presence of `set-mode-style-after-make-frame' is not the problem. > I read everything you write carefully. I know (empirically) > what fit-frame does and what it doesn't do, and we're not > having a case of enforced line width limits (besides, those > are accessible as configuration parameters within Aquamacs -- > one of the reasons I thought fit-frame would be better integrated). Yes, and you said that it correctly resizes the frame when you call it manually. I suspect it is not being called, but I can't say why. I also don't know what you meant by it resizing OK with short lines, but not when there are long lines. If it works with short lines, then it would seem to be getting called as an after-make-frame function. Does it resize correctly with long-lines if you call it manually? Something doesn't make sense to me in your description. > Given this new information, is there anything else I could try? See above. If `fit-frame' is called, you can also try stepping through it in the debugger (`d') to see what it is doing. Why it might do something wrong when called in a hook and when called manually is unclear. I doubt that that is what's happening - I suspect that it is not called from the hook. > The problem started off pretty simple, but now seems to be > getting hairier... Aquamacs support is rather scarce, and I'm > surprised to discover that nobody from their team is on this > list also. Thank you for your support so far, I think that there are Aquamacs people who read this list. They might not be willing or able to help. The things you need to determine for sure are these: 1. Whether `fit-frame' gets called as an after-make-frame function. 2. Exactly what changes if you have short or long lines. If `fit-frame' is not called by the hook, then I cannot help you. If it is called but it doesn't DTRT, then I can try to help. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: fit-frame every time i open a file 2007-10-15 20:54 ` Drew Adams @ 2007-10-16 7:15 ` Alex Deva 2007-10-16 14:18 ` Drew Adams 0 siblings, 1 reply; 14+ messages in thread From: Alex Deva @ 2007-10-16 7:15 UTC (permalink / raw) To: Drew Adams; +Cc: Help-gnu-emacs On Oct 15, 2007, at 11:54 PM, Drew Adams wrote: > `M-:' means hold the Meta key (probably the Alt key) pressed while > you hit > `:'. It is bound to command `pp-eval-expression', which lets you > type a Lisp > expression to evaluate. > Thanks. I wouldn't have gotten very far without knowing the basic emacs keystroke conventions, and definitely not this far. :) I just didn't know that `pp-eval-expression' was bound to a particular keystroke. > > FYI - You can use `C-h f' to describe any function. The *Help* buffer > showing the description usually tells you what file it is defined > in and > provides a link to its definition. Another keystroke I didn't know. This is what I get in the *Help* buffer: set-mode-style-after-make-frame is a Lisp function in `aquamacs- styles.el'. (set-mode-style-after-make-frame frame) Not documented. So obviously Aquamacs-specific code. > > If `after-make-frame-functions' has value (fit-frame), then `fit- > frame' > should be called. You can do this to see if it is called: > > M-x debug-on-entry RET fit-frame RET I activated up the debugger, then opened a new file and the debugger didn't start, probably meaning that `fit-frame' never got called. I double-checked and `after-make-frame-functions' indeed had the value (fit-frame). I suppose this means that the problem is Aquamacs ignoring this call...? > Again, however, I doubt that it is getting called at all, since > calling it > manually does resize the frame correctly. > You seem to be right there. > If `fit-frame' is called, you can also try stepping through it in the > debugger (`d') to see what it is doing. Why it might do something > wrong when > called in a hook and when called manually is unclear. I doubt that > that is > what's happening - I suspect that it is not called from the hook. > Is there any way I can debug the hook itself, and maybe see why it doesn't call `fit-frame'? > The things you need to determine for sure are these: > > 1. Whether `fit-frame' gets called as an after-make-frame function. It doesn't seem to get called. > 2. Exactly what changes if you have short or long lines. That must've been my fault -- I expressed myself poorly (sorry, I'm not a native English speaker). When I call `fit-frame' manually, the frame is correctly resized to smaller if the lines are shorter than the current edge (within minimum limits), and bigger if the lines are soft-wrapped (also within maximum limits). I don't think that the problem is anywhere inside `fit-frame'. > > If `fit-frame' is not called by the hook, then I cannot help you. > If it is > called but it doesn't DTRT, then I can try to help. > That makes perfect sense and thank you again for your help so far. However, let me ask again, perhaps I might debug the hook itself and see what it's calling and what it's not? Is there a way to do this? Thanks, Alex ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: fit-frame every time i open a file 2007-10-16 7:15 ` Alex Deva @ 2007-10-16 14:18 ` Drew Adams 0 siblings, 0 replies; 14+ messages in thread From: Drew Adams @ 2007-10-16 14:18 UTC (permalink / raw) To: Alex Deva; +Cc: Help-gnu-emacs > This is what I get in the *Help* buffer: > > set-mode-style-after-make-frame is a Lisp function in `aquamacs- > styles.el'. (set-mode-style-after-make-frame frame) > Not documented. > > So obviously Aquamacs-specific code. You can click `mouse-2' on `aquamacs-styles.el' to go to its definition. Sometimes there are comments in the code that will help you understand what it does. And sometimes the code itself is understandable, even for someone new to Lisp. (And it's one way to learn a little Lisp, in passing...) > > If `after-make-frame-functions' has value (fit-frame), then `fit- > > frame' should be called. You can do this to see if it is called: > > M-x debug-on-entry RET fit-frame RET > > I activated up the debugger, then opened a new file and the debugger > didn't start, probably meaning that `fit-frame' never got called. That's what I suspected. > I double-checked and `after-make-frame-functions' indeed had the value > (fit-frame). I suppose this means that the problem is Aquamacs > ignoring this call...? I don't know, sorry. At least the problem is apparently not with `fit-frame'. I think you'll need to contact an Aquamacs expert. > Is there any way I can debug the hook itself, and maybe see why it > doesn't call `fit-frame'? Try debugging `make-frame'. There might be other code to debug instead or in addition, but I don't have the time now to search for it. If you `grep' the Lisp source files you might find code that runs the hook, and then you can debug that. You can also define a command that calls `find-file' (or whatever), and then debug that. Sooner or later, you will get to the hook. Good luck. Try also what Peter suggested: contacting an Aquamacs mailing list. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: fit-frame every time i open a file 2007-10-15 20:12 ` Alex Deva 2007-10-15 20:54 ` Drew Adams @ 2007-10-16 8:44 ` Peter Dyballa 1 sibling, 0 replies; 14+ messages in thread From: Peter Dyballa @ 2007-10-16 8:44 UTC (permalink / raw) To: Alex Deva; +Cc: emacs list Am 15.10.2007 um 22:12 schrieb Alex Deva: > Given this new information, is there anything else I could try? The > problem started off pretty simple, but now seems to be getting > hairier... Aquamacs support is rather scarce, and I'm surprised to > discover that nobody from their team is on this list also. Because they're on the Mac OS X Emacs list: ---------------------------- Info ----------------------------- List Post: <mailto:macosx-emacs@email.esm.psu.edu> List Archives: <http://dir.gmane.org/gmane.emacs.macintosh.osx> -- Greetings Pete "We have to expect it, otherwise we would be surprised." ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <mailman.2101.1192479183.18990.help-gnu-emacs@gnu.org>]
* Re: fit-frame every time i open a file [not found] ` <mailman.2101.1192479183.18990.help-gnu-emacs@gnu.org> @ 2007-10-21 7:57 ` David Reitter 0 siblings, 0 replies; 14+ messages in thread From: David Reitter @ 2007-10-21 7:57 UTC (permalink / raw) To: help-gnu-emacs On Oct 15, 9:12 pm, Alex Deva <a...@indigenious.ro> wrote: > Given this new information, is there anything else I could try? The > problem started off pretty simple, but now seems to be getting > hairier... (I presume you run one-buffer-one-frame-mode, that is, "Display Buffers in Separate Frames" is on in the Options menu.) To fit a frame, the `fit-frame' function needs to see the buffer contents. When you type C-x C-f, a new frame is opened, and then you are allowed to enter the name of the file to be loaded. This means that the `after- make-frame-functions' are run _before_ the file is loaded. The idea of using `after-make-frame-functions' is thus a kludge: it assumes that the frame is created after the file has been loaded. This is easy to see if you actually watch watch's happening when you press C-x C-f. As further hint: `fit-frame' works fine when you find files from the "Recent Files" menu. If you enter C-h k C-x C-f, you find that C-x C-f is bound to `aquamacs-find-file' in Aquamacs. That's something we can leverage. So, my solution is this (in addition to the code Drew suggested): (defadvice aquamacs-find-file (after fit activate) (fit-frame)) if you add that to your ~/Library/Preferences/Aquamacs Emacs/ Preferences.el, `fit-frame' is called after each (interactive) aquamacs-find-file operation. Does that work for you? Maybe we'll add an option for users to easily enable frame fitting in such a situation - I think that'd be nice. > Aquamacs support is rather scarce, and I'm surprised to > discover that nobody from their team is on this list also. Can you substantiate that? What else have you tried with respect to support? Notice the support options on the website. -- http://aquamacs.org -- Aquamacs: Emacs on Mac OS X http://aquamacs.org/donate -- Could we help you? Return the favor and support the Aquamacs Project! ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2007-10-21 7:57 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2007-10-15 13:07 fit-frame every time i open a file alxx 2007-10-15 15:45 ` Drew Adams 2007-10-15 16:13 ` alxx 2007-10-15 17:02 ` Drew Adams 2007-10-15 17:44 ` Peter Dyballa 2007-10-15 18:15 ` Drew Adams 2007-10-15 18:23 ` Alex Deva 2007-10-15 18:41 ` Drew Adams 2007-10-15 20:12 ` Alex Deva 2007-10-15 20:54 ` Drew Adams 2007-10-16 7:15 ` Alex Deva 2007-10-16 14:18 ` Drew Adams 2007-10-16 8:44 ` Peter Dyballa [not found] ` <mailman.2101.1192479183.18990.help-gnu-emacs@gnu.org> 2007-10-21 7:57 ` David Reitter
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).