On 10/24/07, Nils Bruin <[EMAIL PROTECTED]> wrote:
> I understand that the "bg=" hack is a quick way of getting the
> configurability you want, but frankly, I would find it hard to explain
> the existence of that option independent of the very particular usage
> scenario you describe.
To you, since you don't use it, it is a "very particular usage scenario".
To me it is the normal very common (for me at least) usage scenario.
> Jf we want sage to pop up "the appropriate editor", the user should
> not be required to give an extra option like that.
I certainly don't propose that they have to give the extra option.
It is optional. There should still be the default proposal you implemented.
edit(.., bg=None)
does the default
edit(..., bg=True)
does the background = True mode,
edit(..., bg = False)
does the background = False mode.
> In the model I
> proposed (which clearly is inconvenient to you, so we need to see how
> to wrap this), the solution would be to put into your init.sage
> (basically following a suggestion Justin made):
>
> if os.environ.haskey('DISPLAY'):
> sage.misc.edit_module.set_edit_template('emacs +${line} ${file}
> &')
> else:
> sage.misc.edit_module.set_edit_template('emacs +${line} ${file}')
>
> So, if you're sure that this does for emacs what you want, we could
I'm sure that does *not* do what I want. When I login to my laptop
under Linux the DISPLAY environment variable is not even set, yet
emacs pops up in a window. When I login remotely to another machine
(or my laptop, from OS X), it can easily be that DISPLAY is not set.
I also have a similar issue with my office desktop, which I use both
remotely and when I'm actually in my office at the console.
> wrap this into the set_editor command instead of the "bg=" option.
> Then the appropriate magic gets executed if either 'EDITOR=emacs' or
> if set_editor('emacs'), and currently even if edit(..,
> editor='emacs').
>
> Guessing a user's configuration and preferences will stay hackish
> guesswork. I'm happy to put some guesses into set_editor. Ultimately,
> however, people should just put personal configuration stuff into
> init.sage. (either that or every user patches sage.misc.edit_module
^^^^^^^^^
That doesn't work for me, since in my usage the init.sage is the same
in both cases, and I often switch between both usage scenarios.
> Another solution would be two possible "editor templates": emacs-fg
> and emacs-bg.
I just want to type
sage: edit(name)
and have it work. If it happens to be that a window pops up, and will
say to myself -- gee, I need this to be backgrounded so I can type
command still, and I'll instead do
sage; edit(name, bg=True).
Anyway, I can't see the problem with having that option, and your only
argument against it is that "it is difficult to explain in the documentation".
-- William
>
> On Oct 23, 11:03 pm, "William Stein" <[EMAIL PROTECTED]> wrote:
> > On 10/22/07, Nils Bruin <[EMAIL PROTECTED]> wrote:
> >
> > > See:
> >
> > >http://sagetrac.org/sage_trac/ticket/768
> >
> > > I have updated the attached patch to be clean against 2.8.8.1. When I
> > > checked the edit() command in sage 2.8.8.1, I realized it was really
> > > broken -- It doesn't work if EDITOR is unset in the environment. The
> > > patch attached to the trac ticket is supposed to fix that.
> >
> > I'm generally happy with this patch, though I don't agree with removing
> > the bg option. Perhaps you're removing that functionality because
> > your particular workflow is more rigid than mine. For example, I use
> > emacs quite a lot, both in a console (especially when I login to other
> > machines), but also as a popup separate application. When I use emacs
> > in console mode, putting the editor in the background is very frusting,
> > and doesn't work at all. When I use emacs as a separate popup application,
> > it
> > is very very frustrating if the console session freezes, since often the
> > reason
> > I'm popping up the editor is to create some examples in the console and
> > paste them into the docstring of a function. In both cases the command
> > name is exactly the same "emacs".
> >
> > So please change the patch back to have the bg option.
> >
> > This is a lot like black on white versus white on black. Most people
> > exclusively
> > use one or the other mode, and it's impossible to know which from the
> > application's point of view. So applications have to support both and
> > make
> > it easy to switch between generating colors for each. I often switch
> > between
> > using emacs and vi, both in window and console mode, and between black
> > on white and white on black, depending on my mood, eye strain, computing
> > I'm logged into, etc. So it needs to be easy to support changing modes.
> > The bg= option to edit is 3 lines of code and does just that; it allows one
> > to
> > very easily override automatic defaults on a per-use basis.
> >
> > -- William
>
>
> >
>
--
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---