* new *Help* argument highlighting @ 2004-05-07 5:32 Miles Bader 2004-05-07 8:39 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-05-07 5:32 UTC (permalink / raw) I've just seen the effect of the argument highlighting in describe-function *Help* buffers, and it seems like _way_ too much. It's nice to have some highlighting for the args, but I think `font-lock-variable-name-face' is the wrong thing to use. In an otherwise monochrome help-buffer, that makes the args stand out like lasers, and distracts attention from everything else (a typical source buffer using font-lock is a neon fruit salad anyway, so that face is appropriate there). I tried changing the `help-argument-name' face to be just italic instead, and that seemed a bit better (after all in documentation italics is often used for arguments), but since the args are uppercased, it looked slightly odd -- uppercase italics are generally a bit weird. I ended up thinking `the arguments are _already_ in uppercase, which is pretty noticeable, why is necessary to highlight them further at all?' -Miles -- ===== (^o^; (())) *This is the cute octopus virus, please copy it into your sig so it can spread. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-07 5:32 new *Help* argument highlighting Miles Bader @ 2004-05-07 8:39 ` Juanma Barranquero 2004-05-08 22:22 ` Juri Linkov 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-07 8:39 UTC (permalink / raw) On 07 May 2004 14:32:46 +0900 Miles Bader <miles@lsi.nec.co.jp> wrote: > I've just seen the effect of the argument highlighting in > describe-function *Help* buffers, and it seems like _way_ too much. > It's nice to have some highlighting for the args, but I think > `font-lock-variable-name-face' is the wrong thing to use. Not only I fully agree with you, but one or two days ago I changed it to use (:face '(:weight bold)), which seems much more sensible as a default... :) The font-lock-variable-name-face was just a test version. > I ended up thinking `the arguments are _already_ in uppercase, which is > pretty noticeable, why is necessary to highlight them further at all?' There are several reasons: - Many docstrings have other uppercase words (for example, most def* functions, like defface, define-minor-mode, defcustom...), so the highlighting helps to distinguish which ones are really function arguments. - It makes easier to look for an argument when the docstring is long. - The feature can be used to highlight just *one* (or a set of) argument. That could help in places where we're asking for input for an argument and want to show the entire docstring, but highlight the item we're requesting (that's the original motivation). Help argument highlighting has proved already very useful to find docstrings with typos in argument names, or which use a different name in the arglist and the docstring. My (admitedly *very* biased opinion :) is that some people finds the feature useful, so I suggest that, instead of removing it, thoso who don't like it set the face to default. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-07 8:39 ` Juanma Barranquero @ 2004-05-08 22:22 ` Juri Linkov 2004-05-08 23:32 ` Juanma Barranquero 2004-05-09 18:47 ` Richard Stallman 0 siblings, 2 replies; 173+ messages in thread From: Juri Linkov @ 2004-05-08 22:22 UTC (permalink / raw) Cc: emacs-devel I like this feature. However, I think that by highlighting only argument names it causes such a feeling that other text in the Help buffer is less important. This is especially wrong for a function name which should be regarded as more important than its arguments. So perhaps highlighting a function name will help a bit. [Note that all function references are already highlighted as buttons. What I propose is to add highlighting to the name of a function which is described in the Help buffer.] BTW, there is one bug. The following string is incorrectly fontified: [Arg list not available until function definition is loaded.] -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-08 22:22 ` Juri Linkov @ 2004-05-08 23:32 ` Juanma Barranquero 2004-05-08 23:47 ` Juri Linkov 2004-05-08 23:49 ` Miles Bader 2004-05-09 18:47 ` Richard Stallman 1 sibling, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-08 23:32 UTC (permalink / raw) On Sun, 09 May 2004 01:22:45 +0300, Juri Linkov <juri@jurta.org> wrote: > So perhaps highlighting a function name will help a bit. Hmm. I don't object to changing what it does now, obviously, but I fear too highlighting would turn the *Help* buffer into a christmas tree. So let's hear what others have to say about it. > What I propose is to add highlighting to the name of a function > which is described in the Help buffer.] Yes, I understand. > [Arg list not available until function definition is loaded.] Which function are you describing, please? Thanks, /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-08 23:32 ` Juanma Barranquero @ 2004-05-08 23:47 ` Juri Linkov 2004-05-09 0:14 ` Juanma Barranquero 2004-05-08 23:49 ` Miles Bader 1 sibling, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-05-08 23:47 UTC (permalink / raw) Cc: emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > On Sun, 09 May 2004 01:22:45 +0300, Juri Linkov <juri@jurta.org> wrote: >> [Arg list not available until function definition is loaded.] > > Which function are you describing, please? This is displayed with any function defined by `autoload': (autoload 'some-mode "some-mode" "Some mode." t) -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-08 23:47 ` Juri Linkov @ 2004-05-09 0:14 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-09 0:14 UTC (permalink / raw) On Sun, 09 May 2004 02:47:34 +0300, Juri Linkov <juri@jurta.org> wrote: > This is displayed with any function defined by `autoload': Ok, I'll fix it. Thanks, /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-08 23:32 ` Juanma Barranquero 2004-05-08 23:47 ` Juri Linkov @ 2004-05-08 23:49 ` Miles Bader 2004-05-09 0:09 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-05-08 23:49 UTC (permalink / raw) Cc: Juri Linkov, emacs-devel On Sun, May 09, 2004 at 01:32:25AM +0200, Juanma Barranquero wrote: > > So perhaps highlighting a function name will help a bit. > > Hmm. I don't object to changing what it does now, obviously, but I fear > too highlighting would turn the *Help* buffer into a christmas tree. So > let's hear what others have to say about it. I agree[*]. I think that if the highlighted args are too noticeable, we should reduce their highlighting, not start highlighting everything else. Perhaps Juanma's suggestion of changing the arg-highlighting to `bold' instead of `font-lock-...-face' will do that. Personally I wish we had even more subtle methods of highlighting (e.g., an underline with very sparsely-spaced dots instead of a solid line). [*] Note that a *Help* buffer is very different from a source code buffer: a source code buffer is usually very long and full of text, and using colored faces helps you visually organize the mass of text more quickly, but a *Help* buffer is usually short and concise, and already written with easy readability as a goal, so excessive highlighting often just detracts from readability. -Miles -- Fast, small, soon; pick any 2. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-08 23:49 ` Miles Bader @ 2004-05-09 0:09 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-09 0:09 UTC (permalink / raw) On Sat, 8 May 2004 19:49:56 -0400, Miles Bader <miles@gnu.org> wrote: > I think that if the highlighted args are too noticeable, we should reduce > their highlighting, not start highlighting everything else. Yes. Personally I find arg highlighting very useful (it helps me a lot to quickly extract information from help buffers, in particular from long-winded docstrings) but I think the key is that args are somewhat more visible, not the absolute focus of attention. That would be distracting. > Personally I wish we had even more subtle > methods of highlighting (e.g., an underline with very sparsely-spaced dots > instead of a solid line). That could perhaps be done with stipples, but seems a bit over the top. Another alternative is to use a soft shade of gray, for example this: (defface myhelp-argument-name '(((background light) :foreground "gray45") ((background dark) :foreground "gray70")) "Face to highlight argument names in *Help* buffers") /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-08 22:22 ` Juri Linkov 2004-05-08 23:32 ` Juanma Barranquero @ 2004-05-09 18:47 ` Richard Stallman 2004-05-09 22:25 ` Miles Bader 1 sibling, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-05-09 18:47 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel I like this feature. However, I think that by highlighting only argument names it causes such a feeling that other text in the Help buffer is less important. Let's use italic for the argument names, when italic is available. That matches what the manual does. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-09 18:47 ` Richard Stallman @ 2004-05-09 22:25 ` Miles Bader 2004-05-09 22:54 ` Juanma Barranquero 2004-05-10 17:54 ` Richard Stallman 0 siblings, 2 replies; 173+ messages in thread From: Miles Bader @ 2004-05-09 22:25 UTC (permalink / raw) Cc: Juri Linkov, jmbarranquero, emacs-devel On Sun, May 09, 2004 at 02:47:29PM -0400, Richard Stallman wrote: > I like this feature. However, I think that by highlighting only > argument names it causes such a feeling that other text in the Help > buffer is less important. > > Let's use italic for the argument names, when italic is available. > That matches what the manual does. The problem is that the argument names are already uppercase, and uppercase+italic looks kinda weird, certainly not very much like what's in the manuals. -Miles -- .Numeric stability is probably not all that important when you're guessing. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-09 22:25 ` Miles Bader @ 2004-05-09 22:54 ` Juanma Barranquero 2004-05-09 23:10 ` Stefan Monnier 2004-05-10 17:54 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-09 22:54 UTC (permalink / raw) On Sun, 9 May 2004 18:25:55 -0400, Miles Bader <miles@gnu.org> wrote: > The problem is that the argument names are already uppercase, and > uppercase+italic looks kinda weird, certainly not very much like what's in > the manuals. I agree, but I don't see it as a problem because people can customize it. What we're trying to find is a non-intrusive default, and italics seems like a good one. I've changed the face to italics. Let's see what people think. /L/e/k/t/u BTW, you wanted a subtle highlighting: did you try with (:underline "gray70") or the like? ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-09 22:54 ` Juanma Barranquero @ 2004-05-09 23:10 ` Stefan Monnier 2004-05-09 23:48 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Stefan Monnier @ 2004-05-09 23:10 UTC (permalink / raw) Cc: emacs-devel >> The problem is that the argument names are already uppercase, and >> uppercase+italic looks kinda weird, certainly not very much like what's in >> the manuals. > I agree, but I don't see it as a problem because people can customize it. > What we're trying to find is a non-intrusive default, and italics seems > like a good one. I think uppercase is intrusive enough. It makes sense to add highlighting for cases where the user wants to highlight a particular argument (as in the original situation which prompted this long thread). But highlighting all args doesn't seem of much use to me. At leaqst with the current appearance where nothing's highlighted. I think the additional highlight would make more sense in a situation where the *Help* buffer uses a larger font for the function/variable name at the top (i.e. like a title), then some other font (probably courrier) for the usage, then yet some other (something proportional) for the body, ... Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-09 23:10 ` Stefan Monnier @ 2004-05-09 23:48 ` Juanma Barranquero 2004-05-10 0:00 ` Stefan Monnier 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-09 23:48 UTC (permalink / raw) On 09 May 2004 19:10:19 -0400, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > I think uppercase is intrusive enough. As with all issues regarding colors and defaults, it seems there aren't two users/developers who agree on this one... :) > It makes sense to add highlighting for cases where the user wants to > highlight a particular argument (as in the original situation which > prompted this long thread). Hm. We could allow passing a numeric argument to describe function, so "C-3 C-h f my-function" would highlight the third argument of myfunction (only half joking...) > But highlighting all args doesn't seem of much > use to me. Oh, I don't find it very useful to describe `nth'; but `define-minor-mode' or `define-key', definitely yes. > I think the additional highlight would make more sense in a situation where > the *Help* buffer uses a larger font for the function/variable name at the > top (i.e. like a title), then some other font (probably courrier) for the > usage, then yet some other (something proportional) for the body, ... That's doable, but I think many people would find it way too much highlighting. However, if that's the way to go, I'd take a look into implementing it. I'm not going to push for any specific default color/highlighting on this issue; whatever is decided is OK by me. But I certainly wouldn't like the feature to go. At the very least, we can set the face to 'default and let the user decide. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-09 23:48 ` Juanma Barranquero @ 2004-05-10 0:00 ` Stefan Monnier 2004-05-10 0:11 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Stefan Monnier @ 2004-05-10 0:00 UTC (permalink / raw) Cc: emacs-devel >> But highlighting all args doesn't seem of much use to me. > Oh, I don't find it very useful to describe `nth'; but > `define-minor-mode' or `define-key', definitely yes. I just find it odd to highlight arguments more than, say, the function's name (i.e. basically the title of the help buffer). Maybe italics will make it less strange, but the current bold I see is just very surprising because it highlights (in the literal sense) parts of the docstring as if they were THE-THING-I-VE-BEEN-LOOKING-FOR, even when it has strictly no indication that it's what I'm interested in. >> I think the additional highlight would make more sense in a situation where >> the *Help* buffer uses a larger font for the function/variable name at the >> top (i.e. like a title), then some other font (probably courrier) for the >> usage, then yet some other (something proportional) for the body, ... > That's doable, but I think many people would find it way too > much highlighting. I didn't say fruit salad. I meant a sober presentation like you'd find in a book (e.g. generated from Texinfo). > I'm not going to push for any specific default color/highlighting on > this issue; No colors, please. Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 0:00 ` Stefan Monnier @ 2004-05-10 0:11 ` Juanma Barranquero 2004-05-10 0:25 ` Stefan Monnier 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 0:11 UTC (permalink / raw) On 09 May 2004 20:00:07 -0400, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > I just find it odd to highlight arguments more than, say, the function's > name (i.e. basically the title of the help buffer). I've read that already on the thread, and I find it very surprising. When I read a describe-function *Help* buffer, I'm never interested in the function's name: I already know that, I *typed* it. In 100% of cases, the reason I type C-h f is precisely to find what to pass to the args. In a great many cases, I'm interested in just a few args, because the others I remember from previous uses of the function, so having a way to quickly determine where on the docstring are these args referred seems a big win, performance-wise. I think other people must be using C-h f in very different ways to mine... > Maybe italics will make it less strange, but the current bold I see is just > very surprising because it highlights (in the literal sense) parts of the > docstring as if they were THE-THING-I-VE-BEEN-LOOKING-FOR, even when it > has strictly no indication that it's what I'm interested in. Bold, or italics, just reinforce the convention already stated by using uppercase, I think. > I didn't say fruit salad. I meant a sober presentation like you'd find in > a book (e.g. generated from Texinfo). Yeah, sorry, I didn't intend to imply that. But I get the feeling (I can be wrong) that there are people who simply likes the Help buffers with no highlighting/font-locking at all. That's also a bit surprising to me, given that we use font-locking in a lot of cases, like the recently added `completions-fist-difference' and `completions-common-part' faces. It's not like help-argument-name introduces highlighting on an otherwise very sober Emacs environment... :) > No colors, please. No, not as default. I don't think anyone would like that. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 0:11 ` Juanma Barranquero @ 2004-05-10 0:25 ` Stefan Monnier 2004-05-10 0:53 ` Juanma Barranquero 2004-05-10 16:18 ` Robert J. Chassell 0 siblings, 2 replies; 173+ messages in thread From: Stefan Monnier @ 2004-05-10 0:25 UTC (permalink / raw) Cc: emacs-devel > Yeah, sorry, I didn't intend to imply that. But I get the feeling (I can > be wrong) that there are people who simply likes the Help buffers with > no highlighting/font-locking at all. I think you're wrong. There's a lot of problems with adding colors. But playing with font size is pretty safe (at least, I can't remember a single complaint from the font-size change in Info-mode, for example). Bold sometimes causes problems as does italics. Too bad: I find them irreplaceable. Using proportional fonts OTOH is asking for trouble, not because "some people won't like it" but because we'll encounter many bugs linked to the poor support for proportional fonts in the current code. > That's also a bit surprising to me, given that we use font-locking in > a lot of cases, like the recently added `completions-fist-difference' and > `completions-common-part' faces. It's not like help-argument-name > introduces highlighting on an otherwise very sober Emacs environment... :) As said, it's not the fact of highlighting that surprises, it's just the fact that args and only args are highlighted as if they were so very special. Note that I try to consistently say "surprise" rather than "bother". I'm not opposed to it, but I think it currently looks odd. Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 0:25 ` Stefan Monnier @ 2004-05-10 0:53 ` Juanma Barranquero 2004-05-10 1:32 ` Miles Bader 2004-05-10 2:42 ` Stefan Monnier 2004-05-10 16:18 ` Robert J. Chassell 1 sibling, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 0:53 UTC (permalink / raw) On 09 May 2004 20:25:13 -0400, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > I think you're wrong. There's a lot of problems with adding colors. Sure. But we already have lots of faces, some of which add colors with not much remorse: (defface comint-highlight-prompt '((((background dark)) (:foreground "cyan")) (t (:foreground "dark blue"))) "Face to use to highlight prompts." :group 'comint) (defface hi-yellow '((((background dark)) (:background "yellow" :foreground "black")) (t (:background "yellow"))) "Default face for hi-lock mode." :group 'hi-lock-faces) (defface smerge-mine-face '((((background light)) (:foreground "blue")) (((background dark)) (:foreground "cyan"))) "Face for your code." :group 'smerge) (defface speedbar-button-face '((((class color) (background light)) (:foreground "green4")) (((class color) (background dark)) (:foreground "green3"))) "Face used for +/- buttons." :group 'speedbar-faces) That said, I wouldn't advocate adding colors to this as a default. > But playing with font size is pretty safe (at least, I can't remember > a single complaint from the font-size change in Info-mode, for example). As I said, it's OK to me if that's what's decided. > As said, it's not the fact of highlighting that surprises, it's just the > fact that args and only args are highlighted as if they were so > very special. Aren't? In an elisp function's help, I honestly don't know what else could be special... Perhaps if we had a more structured style guide for function docstrings, with sections à la: MYFUNCTION is a function in .emacs.el. # where/bindings It is bound to H-z. (myfunction A B &optional C) # function header MYFUNCTION is an obsolete function # obsolescence info since the beginning of time; do not use it. The object of MYFUNCTION is serving as an example. # function description You can use it at your leisure. Argument A is for whatever you want. # argument usage B, on the other hand, is unused. Optional C defaults to nil, and should stay so. Example: # example (myfunction 7 "I'm being ignored") Notes: # additional notes You really shouldn't use this function. It hasn't been tested on the wild so it could misfire. then I'd understand why highlighting just arguments would be weird. > Note that I try to consistently say "surprise" rather than > "bother". I'm not opposed to it, but I think it currently looks odd. Yeah, I understand. Let's see whether we can agree on something generally useful and non-surprising/non-bothering. Thanks, /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 0:53 ` Juanma Barranquero @ 2004-05-10 1:32 ` Miles Bader 2004-05-10 7:24 ` Juanma Barranquero 2004-05-10 2:42 ` Stefan Monnier 1 sibling, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-05-10 1:32 UTC (permalink / raw) Cc: Stefan Monnier, emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > > I think you're wrong. There's a lot of problems with adding colors. > > Sure. But we already have lots of faces, some of which add colors with > not much remorse: ... > That said, I wouldn't advocate adding colors to this as a default. Whether or not colors are appropriate depends a lot on the context; each case has to be thought about separately. What people (including me) are saying is that colors are the wrong thing for this case. [Though, FWIW, I think that changes in _brightness_ are generally less intrusive than changes in _hue_, especially if they're subtle.] -Miles -- Ich bin ein Virus. Mach' mit und kopiere mich in Deine .signature. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 1:32 ` Miles Bader @ 2004-05-10 7:24 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 7:24 UTC (permalink / raw) On 10 May 2004 10:32:06 +0900 Miles Bader <miles@lsi.nec.co.jp> wrote: > Whether or not colors are appropriate depends a lot on the context; each > case has to be thought about separately. Yes. > What people (including me) are > saying is that colors are the wrong thing for this case. I think we all agree on this one. I initially used font-lock-variable-name-face because it seemed vaguely related, but after a short while I came to understand it just wasn't right and changed it to bold (that's what I'd prefer, as a default), and then to italics per RMS' suggestion. > [Though, FWIW, I think that changes in _brightness_ are generally less > intrusive than changes in _hue_, especially if they're subtle.] Sure, I agree on this one too. The only problem (in this case) is finding the right highlight, subtle but not invisible (or perhaps in this case non-visible is just the right default, I don't know). Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 0:53 ` Juanma Barranquero 2004-05-10 1:32 ` Miles Bader @ 2004-05-10 2:42 ` Stefan Monnier 2004-05-10 7:37 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Stefan Monnier @ 2004-05-10 2:42 UTC (permalink / raw) Cc: emacs-devel >> I think you're wrong. There's a lot of problems with adding colors. > Sure. But we already have lots of faces, some of which add colors with > not much remorse: I know, but you were saying that there is some resistance against adding highlighting, and I think the resistance is more against colors. The reason why the two are often mixed is because indeed most highlighting adds color (believe me, I don't like that: the fist thing I did when I tried font-lock was to remove all colors (other than grey for comments) and restrict myself to bold/italics. Nowadays I live with colors on various faces for the simple reason that there are too many faces and I don't have the time/energy to customize them all to something else). > (defface smerge-mine-face Funnily, for SMerge, I think colors are the way to go (in my setup at least) because those faces are added to the ones normally added by font-lock, so since my font-lock faces don't use colors, my smerge faces are properly combined with the font-lock ones. >> As said, it's not the fact of highlighting that surprises, it's just the >> fact that args and only args are highlighted as if they were so >> very special. > Aren't? In an elisp function's help, I honestly don't know what else > could be special... Perhaps if we had a more structured style guide for > function docstrings, with sections à la: Well I find the highlighting attracts my eye to the arguments, but not to the text that surrounds it, whereas I don't care so much about the argument as I care about the text. Basically, my reaction is "Hmm... the argument OVERLAY is used three times in the docstring; now, why should I care?". Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 2:42 ` Stefan Monnier @ 2004-05-10 7:37 ` Juanma Barranquero 2004-05-10 12:45 ` Thien-Thi Nguyen 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 7:37 UTC (permalink / raw) On 09 May 2004 22:42:01 -0400 Stefan Monnier <monnier@iro.umontreal.ca> wrote: > I know, but you were saying that there is some resistance against adding > highlighting, and I think the resistance is more against colors. Yes, I agree. In this case, though, nobody's proposing to add color (except, perhaps, a shade of gray, which could be understood as changing intensity). > Well I find the highlighting attracts my eye to the arguments, but not to > the text that surrounds it, whereas I don't care so much about the argument > as I care about the text. > > Basically, my reaction is "Hmm... the argument OVERLAY is used three times > in the docstring; now, why should I care?". I think it boils down to personal differences. My though is more like "Ah, so OVERLAY is described here, here and... oh, here. Let's se what does it say about it." If we had very strict style requirements to writing docstrings, we could put marking on an argument's description, so we would be able to highlight (with whichever method is subtle enough) the doc's paragraph(s) were the argument is described and used. You could then type 1, 2, 3... on a *Help* buffer to switch highlighting between first, second, third argument, etc. But nowadays a docstring is just a bunch of text that satisfies a few loose guidelines: using args in uppercase, making the first line stand-alone for apropos, etc. As it stands, there's not easy way to show the Help information in a more useful make up. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 7:37 ` Juanma Barranquero @ 2004-05-10 12:45 ` Thien-Thi Nguyen 2004-05-10 13:01 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Thien-Thi Nguyen @ 2004-05-10 12:45 UTC (permalink / raw) Cc: Stefan Monnier, emacs-devel suggestions: - recognize args by all-uppercase. - make only the first N instances of the arg stand out. - default N is 1, but add a user-defineable function to evaluate context and possibly return another number. - keep "stand out" as bold. this makes it easy to locate the general area of an arg's description, w/o overwhelming decoration, by default, and at the same time allow programmers who like to explore their heuristical sensibilities go wild. thi ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 12:45 ` Thien-Thi Nguyen @ 2004-05-10 13:01 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 13:01 UTC (permalink / raw) Cc: Thien-Thi Nguyen On 10 May 2004 08:45:46 -0400 Thien-Thi Nguyen <ttn@glug.org> wrote: > - recognize args by all-uppercase. That's what's done now, but exploring just the arglist info, not the full docstring. > - make only the first N instances of the arg stand out. That would be easy to implement. But... > this makes it easy to locate the general area of an arg's > description, w/o overwhelming decoration, by default ...I don't think it would work right in many cases of long docstrings. Examples: defmacro, open-network-stream (-nowait, -server), define-key, etc. > - default N is 1, but add a user-defineable function to > evaluate context and possibly return another number. My gut feeling is that this would add unneeded complexity for such a simple featurette. I think there's people who likes it (for different levels of subtlety), and people who just don't and will customize it out of their Emacs :) > - keep "stand out" as bold. Whatever is decided. Thanks, Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 0:25 ` Stefan Monnier 2004-05-10 0:53 ` Juanma Barranquero @ 2004-05-10 16:18 ` Robert J. Chassell 2004-05-10 19:06 ` Stefan Monnier 1 sibling, 1 reply; 173+ messages in thread From: Robert J. Chassell @ 2004-05-10 16:18 UTC (permalink / raw) But playing with font size is pretty safe ... No, it is not. Bold sometimes causes problems... Yes, you are right. But the word `sometimes' is not accurate. Bold *always* causes a problem when I change font size to 10x20. In a mode line, `m' becomes unreadable. (That font size is best for the display I mostly use. Everything looks fine in the default font.) Back in December 2002, Miles Bader fixed the problem by providing a patch to emacs/src/xfaces.c and an Emacs Lisp file to load. The patch works fine. I have been incorporating it with the current xfaces.c source ever since. Because I do not understand it, I have held back from committing Miles' change. First, will someone who understands the patch review it? Or should I commit the merged version of xfaces.c and see whether it breaks others people's installations? Here is the patch itself. As I said, the patch works fine with the current CVS. RCS file: /cvsroot/emacs/emacs/src/xfaces.c,v retrieving revision 1.266 diff -u -r1.266 xfaces.c --- src/xfaces.c 17 Nov 2002 23:51:19 -0000 1.266 +++ src/xfaces.c 18 Dec 2002 05:26:34 -0000 @@ -422,6 +422,13 @@ Lisp_Object Vtty_defined_color_alist; +/* A list of functions to perturb faces before final realization. + They are passed a lisp-vector containing all the attributes of the + fully-specified face, and can change any that they wish. */ + +Lisp_Object Vrealize_face_filter_functions; + + /* Counter for calls to clear_face_cache. If this counter reaches CLEAR_FONT_TABLE_COUNT, and a frame has more than CLEAR_FONT_TABLE_NFONTS load, unused fonts are freed. */ @@ -481,7 +488,7 @@ static unsigned char *xstrlwr P_ ((unsigned char *)); static void signal_error P_ ((char *, Lisp_Object)); static struct frame *frame_or_selected_frame P_ ((Lisp_Object, int)); -static void load_face_font P_ ((struct frame *, struct face *, int)); +static void load_face_font P_ ((struct frame *, struct face *, Lisp_Object *, int)); static void load_face_colors P_ ((struct frame *, struct face *, Lisp_Object *)); static void free_face_colors P_ ((struct frame *, struct face *)); static int face_color_gray_p P_ ((struct frame *, char *)); @@ -502,10 +509,10 @@ static int cmp_font_names P_ ((const void *, const void *)); static struct face *realize_face P_ ((struct face_cache *, Lisp_Object *, int, struct face *, int)); -static struct face *realize_x_face P_ ((struct face_cache *, - Lisp_Object *, int, struct face *)); -static struct face *realize_tty_face P_ ((struct face_cache *, - Lisp_Object *, int)); +static void realize_x_face P_ ((struct face *, struct face_cache *, + Lisp_Object *, int, struct face *)); +static void realize_tty_face P_ ((struct face *, struct face_cache *, + Lisp_Object *, int)); static int realize_basic_faces P_ ((struct frame *)); static int realize_default_face P_ ((struct frame *)); static void realize_named_face P_ ((struct frame *, Lisp_Object, int)); @@ -1245,14 +1252,15 @@ #ifdef HAVE_WINDOW_SYSTEM -/* Load font of face FACE which is used on frame F to display - character C. The name of the font to load is determined by lface - and fontset of FACE. */ +/* Load font of face FACE with attributes ATTRS which is used on frame F to + display character C. The name of the font to load is determined by + lface and fontset of FACE. */ static void -load_face_font (f, face, c) +load_face_font (f, face, attrs, c) struct frame *f; struct face *face; + Lisp_Object *attrs; int c; { struct font_info *font_info = NULL; @@ -1262,7 +1270,7 @@ face->font_info_id = -1; face->font = NULL; - font_name = choose_face_font (f, face->lface, face->fontset, c, + font_name = choose_face_font (f, attrs, face->fontset, c, &needs_overstrike); if (!font_name) return; @@ -6678,6 +6686,11 @@ int former_face_id; { struct face *face; + /* The set of attributes this face is know by to the user, as opposed to + the set actually used to render the face. They're usually the same + as, but may be different if some attribute is changed by + realize-face-filter. */ + Lisp_Object *orig_attrs = attrs; /* LFACE must be fully specified. */ xassert (cache != NULL); @@ -6691,41 +6704,70 @@ free_realized_face (cache->f, former_face); } + if (CONSP (Vrealize_face_filter_functions)) + { + /* Call these user-defined functions to perturb the face attributes + before realization. */ + Lisp_Object filters, cycle_check; + Lisp_Object lface = Fmake_vector (make_number (LFACE_VECTOR_SIZE), + Qunspecified); + + bcopy (attrs, XVECTOR (lface)->contents, + LFACE_VECTOR_SIZE * (sizeof *attrs)); + + cycle_check = Qnil; + for (filters = Vrealize_face_filter_functions; + CONSP (filters); + filters = XCDR (filters)) + { + safe_call1 (XCAR (filters), lface); + cycle_check = CYCLE_CHECK (cycle_check, filters, 50); + if (NILP (cycle_check)) + break; /* cycle detected */ + } + + attrs = XVECTOR (lface)->contents; + } + + /* Allocate a new realized face. */ + face = make_realized_face (orig_attrs); + + /* Fill it in. */ if (FRAME_WINDOW_P (cache->f)) - face = realize_x_face (cache, attrs, c, base_face); + realize_x_face (face, cache, attrs, c, base_face); else if (FRAME_TERMCAP_P (cache->f) || FRAME_MSDOS_P (cache->f)) - face = realize_tty_face (cache, attrs, c); + realize_tty_face (face, cache, attrs, c); else abort (); /* Insert the new face. */ - cache_face (cache, face, lface_hash (attrs)); + cache_face (cache, face, lface_hash (orig_attrs)); #ifdef HAVE_WINDOW_SYSTEM if (FRAME_WINDOW_P (cache->f) && face->font == NULL) - load_face_font (cache->f, face, c); + load_face_font (cache->f, face, attrs, c); #endif /* HAVE_WINDOW_SYSTEM */ return face; } -/* Realize the fully-specified face with attributes ATTRS in face - cache CACHE for character C. Do it for X frame CACHE->f. If C is - a multibyte character, BASE_FACE is a face that has the same - attributes. Otherwise, BASE_FACE is ignored. If the new face - doesn't share font with the default face, a fontname is allocated - from the heap and set in `font_name' of the new face, but it is not - yet loaded here. Value is a pointer to the newly created realized - face. */ +/* Realize into FACE the fully-specified face with attributes ATTRS in face + cache CACHE for character C. Do it for X frame CACHE->f. If C is a + multibyte character, BASE_FACE is a face that has the same attributes. + Otherwise, BASE_FACE is ignored. If the new face doesn't share font + with the default face, a fontname is allocated from the heap and set in + `font_name' of the new face, but it is not yet loaded here. Value is a + pointer to the newly created realized face. */ -static struct face * -realize_x_face (cache, attrs, c, base_face) +static void +realize_x_face (face, cache, attrs, c, base_face) + struct face *face; struct face_cache *cache; Lisp_Object *attrs; int c; struct face *base_face; { #ifdef HAVE_WINDOW_SYSTEM - struct face *face, *default_face; + struct face *default_face; struct frame *f; Lisp_Object stipple, overline, strike_through, box; @@ -6733,9 +6775,6 @@ xassert (SINGLE_BYTE_CHAR_P (c) || base_face); - /* Allocate a new realized face. */ - face = make_realized_face (attrs); - f = cache->f; /* If C is a multibyte character, we share all face attirbutes with @@ -6751,7 +6790,7 @@ /* to force realize_face to load font */ face->font = NULL; - return face; + return; } /* Now we are realizing a face for ASCII (and unibyte) characters. */ @@ -6921,7 +6960,6 @@ face->stipple = load_pixmap (f, stipple, &face->pixmap_w, &face->pixmap_h); xassert (FACE_SUITABLE_FOR_CHAR_P (face, c)); - return face; #endif /* HAVE_WINDOW_SYSTEM */ } @@ -7012,17 +7050,16 @@ } -/* Realize the fully-specified face with attributes ATTRS in face - cache CACHE for character C. Do it for TTY frame CACHE->f. Value is a - pointer to the newly created realized face. */ +/* Realize into FACE the fully-specified face with attributes ATTRS in face + cache CACHE for character C. Do it for TTY frame CACHE->f. */ -static struct face * -realize_tty_face (cache, attrs, c) +static void +realize_tty_face (face, cache, attrs, c) + struct face *face; struct face_cache *cache; Lisp_Object *attrs; int c; { - struct face *face; int weight, slant; int face_colors_defaulted = 0; struct frame *f = cache->f; @@ -7030,8 +7067,6 @@ /* Frame must be a termcap frame. */ xassert (FRAME_TERMCAP_P (cache->f) || FRAME_MSDOS_P (cache->f)); - /* Allocate a new realized face. */ - face = make_realized_face (attrs); face->font_name = FRAME_MSDOS_P (cache->f) ? "ms-dos" : "tty"; /* Map face attributes to TTY appearances. We map slant to @@ -7068,8 +7103,6 @@ && face->background == FACE_TTY_DEFAULT_FG_COLOR && face->foreground == FACE_TTY_DEFAULT_BG_COLOR) face->tty_bold_p = 0; - - return face; } @@ -7670,6 +7703,14 @@ Each element is a regular expression that matches names of fonts to ignore. */); Vface_ignored_fonts = Qnil; + + DEFVAR_LISP ("realize-face-filter-functions", + &Vrealize_face_filter_functions, + doc:/* A list of functions to perturb faces before final realization. +They are passed a lisp-vector containing all the attributes of the +fully-specified face, and can change any that they wish. */); + Vrealize_face_filter_functions = Qnil; + #ifdef HAVE_WINDOW_SYSTEM defsubr (&Sbitmap_spec_p); -- Robert J. Chassell Rattlesnake Enterprises As I slowly update it, bob@rattlesnake.com I rewrite a "What's New" segment for http://www.rattlesnake.com ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 16:18 ` Robert J. Chassell @ 2004-05-10 19:06 ` Stefan Monnier 2004-05-10 21:54 ` Robert J. Chassell 2004-05-11 0:07 ` Juri Linkov 0 siblings, 2 replies; 173+ messages in thread From: Stefan Monnier @ 2004-05-10 19:06 UTC (permalink / raw) Cc: emacs-devel > But playing with font size is pretty safe ... > No, it is not. Care to back up your claim with at least some kind of data, so we have a chance of estimating how serious the problem is? As I said, I haven't seen a single complaint about the font-size change in Info-mode in Emacs-21. > Bold sometimes causes problems... > Yes, you are right. But the word `sometimes' is not accurate. Bold > *always* causes a problem when I change font size to 10x20. In a mode I think "sometimes" is perfectly correct. It was clear that I didn't mean for the problem to be non-deterministic, but just to depend on the situation. BTW, I still haven't understood why bold is such a problem for you. Is it that you don't have a bold face and Emacs creates one automatically (and that one is unreadable) or is it that you do have a bold face but it's unreadable? If the latter, is it there a reason why the face is unreadable (other than "the font author just did a bad job")? > line, `m' becomes unreadable. (That font size is best for the display > I mostly use. Everything looks fine in the default font.) With the 6x13 font I use, "m" in bold looks basically like a solid block, but I've never found it to be unreadable because it still looks clearly different from all others (including "w"). Is your situation similar except that the solid block does bother you (maybe because you sight is not as good as mine)? > First, will someone who understands the patch review it? Or should I > commit the merged version of xfaces.c and see whether it breaks others > people's installations? My understanding of the patch is that it introduces risks of crashes. If you set realize-face-filter-functions to functions that are simple enough, it might be safe (tho maybe only if you compile with -DSYNC_INPUT). Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 19:06 ` Stefan Monnier @ 2004-05-10 21:54 ` Robert J. Chassell 2004-05-11 15:57 ` Juri Linkov 2004-05-11 0:07 ` Juri Linkov 1 sibling, 1 reply; 173+ messages in thread From: Robert J. Chassell @ 2004-05-10 21:54 UTC (permalink / raw) Cc: emacs-devel [Regarding bold causing a problem in a mode line] > First, will someone who understands the patch review it? Or should I > commit the merged version of xfaces.c and see whether it breaks others > people's installations? My understanding of the patch is that it introduces risks of crashes. If you set realize-face-filter-functions to functions that are simple enough, it might be safe (tho maybe only if you compile with -DSYNC_INPUT). I did suffer some crashes immediately after installing the patch, but none in the past year or so. As I said a year ago, I think that some other change to xfaces.c solved that danger. But an alternative explanation is that I stopped doing anything that evokes the condition. I don't know which is which, although I doubt the latter. Here are extracts from the message I sent on 20 Nov 2002. As I saw it then, the problem is how to make a permanent global change to a variable that is buffer local? ... using a `10x20' font, -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO8859-1 which has been very clear for the screen I am using. * I cannot permanently change :weight bold to :weight normal in the variable `mode-line-buffer-identification', which is buffer-local. That is to say, when I reset the value of `mode-line-buffer-identification' so its face is :weight normal rather than :weight bold, that change is only temporary. I don't know what to write in my .emacs file that can make a permanent global change to a variable that is buffer local. If there is a method please tell me! Put another way, evaluating the following works temporarily but not permanently: (setq mode-line-buffer-identification (quote (#("%14b" 0 4 (face ;; (:weight bold) (:weight normal) help-echo "mouse-1: other buffer, mouse-2: prev, M-mouse-2: next, mouse-3: buffer menu" local-map (keymap (header-line keymap (down-mouse-3 . mouse-buffer-menu) (mouse-2 . bury-buffer) (M-mouse-2 . mode-line-unbury-buffer) (mouse-1 . mode-line-other-buffer)) (mode-line keymap (down-mouse-3 . mouse-buffer-menu) (mouse-2 . bury-buffer) (M-mouse-2 . mode-line-unbury-buffer)))))) )) On the other hand, the following produces the face that I specify when I evaluate it: (custom-set-faces ... '(bold ((t (:background "DodgerBlue4" :foreground "cyan")))) ...) ... Please tell me how to reset the bold characteristic universally. I talked about `mode-line-buffer-identification' because it is easy and obvious, but it turns out that name of directories shown in a PCL-CVS *cvs* buffer are also effected. The `m' in the word `emacs' becomes unreadable. -- Robert J. Chassell Rattlesnake Enterprises As I slowly update it, bob@rattlesnake.com I rewrite a "What's New" segment for http://www.rattlesnake.com ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:54 ` Robert J. Chassell @ 2004-05-11 15:57 ` Juri Linkov 2004-05-11 20:58 ` Miles Bader 2004-05-11 22:08 ` Robert J. Chassell 0 siblings, 2 replies; 173+ messages in thread From: Juri Linkov @ 2004-05-11 15:57 UTC (permalink / raw) Cc: Stefan Monnier, emacs-devel "Robert J. Chassell" <bob@rattlesnake.com> writes: > [Regarding bold causing a problem in a mode line] > > * I cannot permanently change > :weight bold > to > :weight normal > in the variable `mode-line-buffer-identification' This problem with bold faces in a mode line was solved recently by using `Buffer-menu-buffer-face' instead of the hard-coded `(:weight bold)'. > Please tell me how to reset the bold characteristic universally. > I talked about `mode-line-buffer-identification' because it is easy > and obvious, but it turns out that name of directories shown in a > PCL-CVS *cvs* buffer are also effected. The `m' in the word `emacs' > becomes unreadable. I don't know at which point it was changed, but currently cvs directory names have a special face `cvs-header-face' whose bold property can be changed easily. Generally, I think there should not be anonymous faces, and all used faces should have their own names to make it possible to change their properties. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 15:57 ` Juri Linkov @ 2004-05-11 20:58 ` Miles Bader 2004-05-11 21:51 ` Juri Linkov 2004-05-11 22:08 ` Robert J. Chassell 1 sibling, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-05-11 20:58 UTC (permalink / raw) Cc: bob, Stefan Monnier, emacs-devel On Tue, May 11, 2004 at 06:57:09PM +0300, Juri Linkov wrote: > This problem with bold faces in a mode line was solved recently > by using `Buffer-menu-buffer-face' instead of the hard-coded > `(:weight bold)'. Which, BTW, is a silly thing to use for the mode-line -- there should be a more generic face that's in turn :inherited by Buffer-menu-buffer-face (or just change the buffer-menu code to use the third face directly, and add a face alias to be backward compatible). -Miles -- I'd rather be consing. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 20:58 ` Miles Bader @ 2004-05-11 21:51 ` Juri Linkov 2004-05-11 22:58 ` Miles Bader 0 siblings, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-05-11 21:51 UTC (permalink / raw) Cc: bob, emacs-devel Miles Bader <miles@gnu.org> writes: >> This problem with bold faces in a mode line was solved recently >> by using `Buffer-menu-buffer-face' instead of the hard-coded >> `(:weight bold)'. > > Which, BTW, is a silly thing to use for the mode-line -- there should be a > more generic face that's in turn :inherited by Buffer-menu-buffer-face (or > just change the buffer-menu code to use the third face directly, and add a > face alias to be backward compatible). I don't think new faces should be introduced if there are existing faces for similar purposes. However, if new proposed faces for the mode line (major-mode, minor-mode, vc) will be added then certainly a special face for the buffer name should be added to the same set of mode line faces as well. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 21:51 ` Juri Linkov @ 2004-05-11 22:58 ` Miles Bader 0 siblings, 0 replies; 173+ messages in thread From: Miles Bader @ 2004-05-11 22:58 UTC (permalink / raw) Cc: bob, emacs-devel, Miles Bader On Wed, May 12, 2004 at 12:51:25AM +0300, Juri Linkov wrote: > > Which, BTW, is a silly thing to use for the mode-line -- there should be a > > more generic face that's in turn :inherited by Buffer-menu-buffer-face (or > > just change the buffer-menu code to use the third face directly, and add a > > face alias to be backward compatible). > > I don't think new faces should be introduced if there are existing > faces for similar purposes. The point is not that the faces should be separate, but that the existing face name doesn't make sense for the extended use. -Miles -- `...the Soviet Union was sliding in to an economic collapse so comprehensive that in the end its factories produced not goods but bads: finished products less valuable than the raw materials they were made from.' [The Economist] ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 15:57 ` Juri Linkov 2004-05-11 20:58 ` Miles Bader @ 2004-05-11 22:08 ` Robert J. Chassell 1 sibling, 0 replies; 173+ messages in thread From: Robert J. Chassell @ 2004-05-11 22:08 UTC (permalink / raw) Cc: monnier, emacs-devel This problem with bold faces in a mode line was solved recently by using `Buffer-menu-buffer-face' instead of the hard-coded `(:weight bold)'. Thank you! I tried it again and now it works globally. According to my notes, I tried it first on 2004 Apr 14 and again on May 4, but found that the fix was buffer-local. I still needed Miles' patch to get it to work globally. Now I don't. I simply put (custom-set-faces '(Buffer-menu-buffer-face ((t (:weight normal)))) ... ) in my .emacs file. This is with Today's CVS snapshot, Tue, 2004 May 11 21:45 UTC GNU Emacs 21.3.50.5 (i686-pc-linux-gnu, GTK+ Version 2.2.4) but using src/fontset.c version 1.82 rather than the new 1.86, since version 1.86 prevented a bootstrap build. (My apologies, but I inadvertently overwrote the *compilation* buffer and cannot remember the bug.) -- Robert J. Chassell Rattlesnake Enterprises As I slowly update it, bob@rattlesnake.com I rewrite a "What's New" segment for http://www.rattlesnake.com ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 19:06 ` Stefan Monnier 2004-05-10 21:54 ` Robert J. Chassell @ 2004-05-11 0:07 ` Juri Linkov 2004-05-11 2:30 ` Stefan Monnier 1 sibling, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-05-11 0:07 UTC (permalink / raw) Cc: bob, emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: > As I said, I haven't seen a single complaint about the font-size change > in Info-mode in Emacs-21. Perhaps you haven't seen complaints about font sizes in Info-mode, because users who don't like that, has silently changed sizes in their .emacs files :-) > With the 6x13 font I use, "m" in bold looks basically like a solid block, > but I've never found it to be unreadable because it still looks clearly > different from all others (including "w"). > Is your situation similar except that the solid block does bother you > (maybe because you sight is not as good as mine)? This is clearly my situation with my 6x10 font, where the text displayed in this font is hardly readable. Even though I am able to guess from letter shapes and context what the text is displayed in bold, such constant guessing is too bothersome. And note, fr xmpl, tht vn wrds w/ vwls cn b rcgnzd, but this requires additional mental efforts. >> First, will someone who understands the patch review it? Or should I >> commit the merged version of xfaces.c and see whether it breaks others >> people's installations? > > My understanding of the patch is that it introduces risks of crashes. > If you set realize-face-filter-functions to functions that are simple > enough, it might be safe (tho maybe only if you compile with -DSYNC_INPUT). I tried this patch a month ago, but it often causes crashes. So without hope to get this patch working without crashes, I solved this particular problem with a small piece of code in .emacs: (add-to-list 'custom-define-hook 'my-faces-set) (defun my-faces-set (&optional frame) (interactive) ;; Check if this function is called by `custom-define-hook' from ;; `custom-declare-face' where the variable `face' is bound locally. (if (boundp 'face) (mapc (lambda (face) (when (face-bold-p face frame) (set-face-bold-p face nil frame) (set-face-underline-p face t frame)) (when (numberp (face-attribute face :height frame)) (set-face-attribute face frame :height 'unspecified)) (when (numberp (face-attribute face :width frame)) (set-face-attribute face frame :width 'unspecified))) (face-list)))) -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 0:07 ` Juri Linkov @ 2004-05-11 2:30 ` Stefan Monnier 2004-05-11 15:28 ` Juri Linkov 0 siblings, 1 reply; 173+ messages in thread From: Stefan Monnier @ 2004-05-11 2:30 UTC (permalink / raw) Cc: bob, emacs-devel >> As I said, I haven't seen a single complaint about the font-size change >> in Info-mode in Emacs-21. > Perhaps you haven't seen complaints about font sizes in Info-mode, > because users who don't like that, has silently changed sizes > in their .emacs files :-) Of course. I don't expect that everybody liked it. But if they don't whine, they get what they deserve. When I compare that to the reaction w.r.t colors, I conclude that "font-size changes are pretty safe". >> With the 6x13 font I use, "m" in bold looks basically like a solid block, >> but I've never found it to be unreadable because it still looks clearly >> different from all others (including "w"). >> Is your situation similar except that the solid block does bother you >> (maybe because you sight is not as good as mine)? > This is clearly my situation with my 6x10 font, where the text > displayed in this font is hardly readable. I've often heard comments about my 6x13 font being pretty small already, so I don't expect too many people to use a 6x10 font. And those people should expect to have to fiddle with things to get good results. So I don't think it's a class of users we should worry too much about. The case of Robert's 10x20 font is different since it should be a "pretty safe size" and the user probably expects things to be readable without much fiddling. > I tried this patch a month ago, but it often causes crashes. So without > hope to get this patch working without crashes, I solved this particular > problem with a small piece of code in .emacs: An elisp approach is indeed much safer. If it's good enough, maybe we should try such an approach (we could make it much cleaner than your code by hooking directly in face-spec-set or face-spec-choose). Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 2:30 ` Stefan Monnier @ 2004-05-11 15:28 ` Juri Linkov 2004-05-11 17:44 ` Stefan Monnier 0 siblings, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-05-11 15:28 UTC (permalink / raw) Cc: bob, emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: >>> As I said, I haven't seen a single complaint about the font-size change >>> in Info-mode in Emacs-21. >> Perhaps you haven't seen complaints about font sizes in Info-mode, >> because users who don't like that, has silently changed sizes >> in their .emacs files :-) > > Of course. I don't expect that everybody liked it. But if they don't > whine, they get what they deserve. When I compare that to the reaction > w.r.t colors, I conclude that "font-size changes are pretty safe". I didn't complain about current sizes of Info faces, because I agree that these are good defaults for font sizes larger than 6x10. > I've often heard comments about my 6x13 font being pretty small already, so > I don't expect too many people to use a 6x10 font. And those people should > expect to have to fiddle with things to get good results. So I don't think > it's a class of users we should worry too much about. 6x10 is the smallest font listed in the default value of `x-fixed-font-alist', so it's already kind of "supported" by Emacs. But I don't say that bold properties should be avoided. What I wanted to achieve is an ability to adjust some properties on all faces easily. > An elisp approach is indeed much safer. If it's good enough, maybe we > should try such an approach (we could make it much cleaner than your code > by hooking directly in face-spec-set or face-spec-choose). I'd try to add a hook to `face-spec-set', but I see one possible problem: since `face-spec-set' processes one face at a time, it may be possible that some faces are already processed before a user hook is added in .emacs, and so some faces defined earlier may remain unchanged. My current hook iterates over all faces, so it guarantees that all faces will be changed according to the rules defined in a hook when some new face is added later. Though, nothing prevents from iterating over all faces even in a hook called from `face-spec-set'. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 15:28 ` Juri Linkov @ 2004-05-11 17:44 ` Stefan Monnier 0 siblings, 0 replies; 173+ messages in thread From: Stefan Monnier @ 2004-05-11 17:44 UTC (permalink / raw) Cc: bob, emacs-devel > I'd try to add a hook to `face-spec-set', but I see one possible problem: > since `face-spec-set' processes one face at a time, it may be possible > that some faces are already processed before a user hook is added in .emacs, > and so some faces defined earlier may remain unchanged. Yes, it might be problem, but it might not: it's called once per frame, so it depends whether it's called again after reading .emacs (when the initial frame is resized/reshaped/... to adapt to parameter changes that took place in .emacs). It's at least not obviously going to fail, so it's worth trying. Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-09 22:25 ` Miles Bader 2004-05-09 22:54 ` Juanma Barranquero @ 2004-05-10 17:54 ` Richard Stallman 2004-05-10 21:10 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-05-10 17:54 UTC (permalink / raw) Cc: juri, jmbarranquero, emacs-devel The problem is that the argument names are already uppercase, and uppercase+italic looks kinda weird, certainly not very much like what's in the manuals. Yes, it would be good to downcase them in the Help buffer as well as italicizing them. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 17:54 ` Richard Stallman @ 2004-05-10 21:10 ` Juanma Barranquero 2004-05-10 21:28 ` David Kastrup ` (2 more replies) 0 siblings, 3 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 21:10 UTC (permalink / raw) On Mon, 10 May 2004 13:54:11 -0400, Richard Stallman <rms@gnu.org> wrote: > Yes, it would be good to downcase them in the Help buffer > as well as italicizing them. That's a one-line patch, and the effect is nice, and scarcely intrusive. However, it has the problem that if someone customizes help-argument-face to the default face, he's lost also the uppercase, so now arguments do not stand out at all. To solve that, we'd have do something like: (defvar help-arg-highlighting-function #'(lambda (arg) (propertize (downcase arg) 'face '(:slant italic))) "Function to call to highlight argument names in `describe-function' *Help* buffers.") instead of having a help-argument-name face. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:10 ` Juanma Barranquero @ 2004-05-10 21:28 ` David Kastrup 2004-05-10 21:41 ` Juanma Barranquero 2004-05-10 21:47 ` Juanma Barranquero 2004-05-11 12:23 ` Richard Stallman 2004-05-11 16:51 ` Kevin Rodgers 2 siblings, 2 replies; 173+ messages in thread From: David Kastrup @ 2004-05-10 21:28 UTC (permalink / raw) Cc: Richard Stallman, emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > On Mon, 10 May 2004 13:54:11 -0400, Richard Stallman <rms@gnu.org> wrote: > > > Yes, it would be good to downcase them in the Help buffer > > as well as italicizing them. > > That's a one-line patch, and the effect is nice, and scarcely > intrusive. However, it has the problem that if someone customizes > help-argument-face to the default face, he's lost also the > uppercase, so now arguments do not stand out at all. His choice. How about an uppercase-face? -- David Kastrup, Kriemhildstr. 15, 44793 Bochum ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:28 ` David Kastrup @ 2004-05-10 21:41 ` Juanma Barranquero 2004-05-10 21:59 ` Stefan Monnier 2004-05-10 21:47 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 21:41 UTC (permalink / raw) Cc: David Kastrup On 10 May 2004 23:28:54 +0200, David Kastrup <dak@gnu.org> wrote: > His choice. How about an uppercase-face? How do you do that, other than having an uppercase-only font? (Genuine question, I don't know how to do it via Emacs faces.) /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:41 ` Juanma Barranquero @ 2004-05-10 21:59 ` Stefan Monnier 2004-05-10 22:12 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Stefan Monnier @ 2004-05-10 21:59 UTC (permalink / raw) Cc: David Kastrup, emacs-devel >> His choice. How about an uppercase-face? > How do you do that, other than having an uppercase-only font? (Genuine Use smallcaps? Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:59 ` Stefan Monnier @ 2004-05-10 22:12 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 22:12 UTC (permalink / raw) Cc: Stefan Monnier On 10 May 2004 17:59:10 -0400, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > Use smallcaps? Sorry. I don't understand. I don't see a way to set up a face so it shows in small caps (other than having a smallcaps font). Is there one? /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:28 ` David Kastrup 2004-05-10 21:41 ` Juanma Barranquero @ 2004-05-10 21:47 ` Juanma Barranquero 2004-05-10 21:57 ` David Kastrup 2004-05-10 23:42 ` Kenichi Handa 1 sibling, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 21:47 UTC (permalink / raw) Cc: David Kastrup On 10 May 2004 23:28:54 +0200, David Kastrup <dak@gnu.org> wrote: > His choice. How about an uppercase-face? How do you do that, other than having an uppercase-only font? (Genuine question, I don't know how to do it via Emacs faces.) /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:47 ` Juanma Barranquero @ 2004-05-10 21:57 ` David Kastrup 2004-05-10 22:10 ` Juanma Barranquero 2004-05-10 23:42 ` Kenichi Handa 1 sibling, 1 reply; 173+ messages in thread From: David Kastrup @ 2004-05-10 21:57 UTC (permalink / raw) Cc: emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > On 10 May 2004 23:28:54 +0200, David Kastrup <dak@gnu.org> wrote: > > > His choice. How about an uppercase-face? > > How do you do that, other than having an uppercase-only font? > (Genuine question, I don't know how to do it via Emacs faces.) Neither do I. That was a question directed at coders, not users. To be expanded into "Wouldn't it be nice if we had an uppercase-face?" rather than "why don't you use an uppercase-face?". -- David Kastrup, Kriemhildstr. 15, 44793 Bochum ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:57 ` David Kastrup @ 2004-05-10 22:10 ` Juanma Barranquero 2004-05-10 22:26 ` Miles Bader 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-10 22:10 UTC (permalink / raw) Cc: David Kastrup On 10 May 2004 23:57:38 +0200, David Kastrup <dak@gnu.org> wrote: > To > be expanded into "Wouldn't it be nice if we had an uppercase-face?" > rather than "why don't you use an uppercase-face?". Ah, OK :) So we still have a problem with using lowercase italics as arg highlighting. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 22:10 ` Juanma Barranquero @ 2004-05-10 22:26 ` Miles Bader 2004-05-11 8:11 ` Juanma Barranquero 2004-05-11 9:02 ` Juanma Barranquero 0 siblings, 2 replies; 173+ messages in thread From: Miles Bader @ 2004-05-10 22:26 UTC (permalink / raw) Cc: David Kastrup, emacs-devel On Tue, May 11, 2004 at 12:10:55AM +0200, Juanma Barranquero wrote: > So we still have a problem with using lowercase italics as arg > highlighting. Still, it seems like a very nice way of presenting the arguments -- easy to read, less SHOUTY than the old method, and more consistent with the printed documentation[*]. I'd be happy if there was (as you suggested) a variable holding a filter-function that help would call to munge the args, which by default would downcase-and-italicize them. Then change the docstring for the help-arguments face to say `you might want to change this variable too'. 99.9% of the users won't ever change either one, so I think the nicer display would be worth the small amount of added complexity for those who do want to change something. [*] Along the same lines, but probably more difficult: maybe the info reader should do something similar ...? -Miles -- (\(\ (^.^) (")") *This is the cute bunny virus, please copy this into your sig so it can spread. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 22:26 ` Miles Bader @ 2004-05-11 8:11 ` Juanma Barranquero 2004-05-12 7:51 ` Richard Stallman 2004-05-11 9:02 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-11 8:11 UTC (permalink / raw) Cc: Miles Bader On Mon, 10 May 2004 18:26:21 -0400 Miles Bader <miles@gnu.org> wrote: > Still, it seems like a very nice way of presenting the arguments -- easy to > read, less SHOUTY than the old method, and more consistent with the printed > documentation[*]. Yes, I think is the best one suggested so far. > I'd be happy if there was (as you suggested) a variable > holding a filter-function that help would call to munge the args, which by > default would downcase-and-italicize them. That's my preferred solution too, so people can even do (defun my-arg-highlight (arg) (propertize (downcase arg) 'display '(size (+ 1)) 'face '(:weight bold))) which is not possible with a face. > 99.9% of the users won't ever change either one, so I think the nicer > display would be worth the small amount of added complexity for those who do > want to change something. Agreed. Aside: for this to work, docstring writers still have to use the ALLCAPS convention for arguments; I wonder if we could introduce (sometime after 21.[45], obviously :) a new (additional) convention to mark arguments in the docstring, so less guesswork is needed. Of course, it wouldn't be necessary to go back to change all existing docstrings (the current guessing method would still work), but just adding the new convention to a few complex ones would be a gain. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 8:11 ` Juanma Barranquero @ 2004-05-12 7:51 ` Richard Stallman 2004-05-12 8:15 ` Miles Bader 0 siblings, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-05-12 7:51 UTC (permalink / raw) Cc: miles, emacs-devel Aside: for this to work, docstring writers still have to use the ALLCAPS convention for arguments; I wonder if we could introduce (sometime after 21.[45], obviously :) a new (additional) convention to mark arguments in the docstring, so less guesswork is needed. That sounds like a good idea. It would be more reliable than assuming that upper-case words are argument names. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 7:51 ` Richard Stallman @ 2004-05-12 8:15 ` Miles Bader 2004-05-12 8:58 ` Juanma Barranquero 2004-05-12 10:47 ` new *Help* argument highlighting Kenichi Handa 0 siblings, 2 replies; 173+ messages in thread From: Miles Bader @ 2004-05-12 8:15 UTC (permalink / raw) Cc: Juanma Barranquero, emacs-devel Richard Stallman <rms@gnu.org> writes: > Aside: for this to work, docstring writers still have to use the ALLCAPS > convention for arguments; I wonder if we could introduce (sometime after > 21.[45], obviously :) a new (additional) convention to mark arguments in > the docstring, so less guesswork is needed. > > That sounds like a good idea. It would be more reliable than assuming > that upper-case words are argument names. Why not use the texinfo convention, @var{name} ? Nice & easy to parse, unlikely to occur in a docstring, and pretty understandable even if _not_ translated into propertized text. It might also make it easier when updating a docstring and the manual at the same time. There are probably other @-escapes which could be useful for docstrings too. -Miles -- Is it true that nothing can be known? If so how do we know this? -Woody Allen ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 8:15 ` Miles Bader @ 2004-05-12 8:58 ` Juanma Barranquero 2004-05-12 9:25 ` Miles Bader 2004-05-13 15:45 ` Richard Stallman 2004-05-12 10:47 ` new *Help* argument highlighting Kenichi Handa 1 sibling, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 8:58 UTC (permalink / raw) On 12 May 2004 17:15:00 +0900 Miles Bader <miles@lsi.nec.co.jp> wrote: > Why not use the texinfo convention, @var{name} ? I was thinking of something similar to substitute-command-keys markers, i.e., "\<>", "\{}" and "\[]", but I really have no preference and what you propose seems more sensible. I'll put the issue in my TODO. Speaking of TODOs and keys... We have etc/TODO, but this is more for features than bug reports. How do we track bugs pending to be fixed, now that we're on bug-fixing mode? I posted a bug report for a keybinding-related issue I don't know how to fix: "Why does where-is-internal return nil?" http://mail.gnu.org/archive/html/emacs-devel/2004-04/msg00952.html Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 8:58 ` Juanma Barranquero @ 2004-05-12 9:25 ` Miles Bader 2004-05-12 9:32 ` Juanma Barranquero 2004-05-13 15:45 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-05-12 9:25 UTC (permalink / raw) Cc: emacs-devel Juanma Barranquero <jmbarranquero@wke.es> writes: > > Why not use the texinfo convention, @var{name} ? > > I was thinking of something similar to substitute-command-keys markers, > i.e., "\<>", "\{}" and "\[]" Prob with that kind of thing is that there's a very limited number of them, and the closer you get to running out, the weirder and more obscure they get... :-) It's a little tricky, since docstrings also serve as documentation in the source file they occur in, so you don't want notation that's _too_ verbose, but personally I think @var is reasonable enough, and docstrings are much more often viewed in *Help*. -Miles -- o The existentialist, not having a pillow, goes everywhere with the book by Sullivan, _I am going to spit on your graves_. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 9:25 ` Miles Bader @ 2004-05-12 9:32 ` Juanma Barranquero 2004-05-13 15:45 ` Richard Stallman 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 9:32 UTC (permalink / raw) Cc: Miles Bader On 12 May 2004 18:25:37 +0900 Miles Bader <miles@lsi.nec.co.jp> wrote: > Prob with that kind of thing is that there's a very limited number of > them, and the closer you get to running out, the weirder and more > obscure they get... :-) Yeah, well, I was on the \+ARG+, \|ARG|, \¿ARG?, \@#$&!!!! path when your message arrived, and I saw instant light :) > but personally I think @var is reasonable enough, and > docstrings are much more often viewed in *Help*. I *fully* agree. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 9:32 ` Juanma Barranquero @ 2004-05-13 15:45 ` Richard Stallman 2004-05-13 17:33 ` David Kastrup 0 siblings, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-05-13 15:45 UTC (permalink / raw) Cc: miles, emacs-devel > but personally I think @var is reasonable enough, and > docstrings are much more often viewed in *Help*. I *fully* agree. Perhaps we should abbreviate it to @v{..} for this purpose. Saving even 2 characters will help the formatting of the doc strings. Or maybe even just @{..}. References to variables are very very common in doc strings. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-13 15:45 ` Richard Stallman @ 2004-05-13 17:33 ` David Kastrup 0 siblings, 0 replies; 173+ messages in thread From: David Kastrup @ 2004-05-13 17:33 UTC (permalink / raw) Cc: Juanma Barranquero, miles, emacs-devel Richard Stallman <rms@gnu.org> writes: > > but personally I think @var is reasonable enough, and > > docstrings are much more often viewed in *Help*. > > I *fully* agree. > > Perhaps we should abbreviate it to @v{..} for this purpose. > Saving even 2 characters will help the formatting of the > doc strings. Since doc strings should be formatted with something like 60 characters or so (I don't remember the exact size right now), it would take at least 3 mentions of @var{} in a single line before the normal terminal line width of 80 characters in the source code would get exceeded. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 8:58 ` Juanma Barranquero 2004-05-12 9:25 ` Miles Bader @ 2004-05-13 15:45 ` Richard Stallman 2004-06-11 10:53 ` Bug tracking (was: new *Help* argument highlighting) Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-05-13 15:45 UTC (permalink / raw) Cc: miles, emacs-devel Speaking of TODOs and keys... We have etc/TODO, but this is more for features than bug reports. How do we track bugs pending to be fixed, now that we're on bug-fixing mode? Savannah has some sort of bug-tracking facility, but I have never used it and I don't know how it works. Does someone else want to find out? ^ permalink raw reply [flat|nested] 173+ messages in thread
* Bug tracking (was: new *Help* argument highlighting) 2004-05-13 15:45 ` Richard Stallman @ 2004-06-11 10:53 ` Juanma Barranquero 2004-06-11 11:20 ` Bug tracking Lars Hansen ` (3 more replies) 0 siblings, 4 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-11 10:53 UTC (permalink / raw) Cc: emacs-devel On Thu, 13 May 2004 11:45:32 -0400 Richard Stallman <rms@gnu.org> wrote: > Savannah has some sort of bug-tracking facility, but I have never used > it and I don't know how it works. Does someone else want to find out? I see no bug tracking facility on Savannah, but perhaps I didn't look at the right places. Still, the question remains: should we use some kind of issue tracker? Currently we have an etc/TODO, which is sort of half wish list, half grab bag of heterogeneous items. I'm all for using an issue tracker, if only because it makes easier to know where we are, release-wise, for any given release. For example, what's precluding us from doing a prerelease tarball just today (not that I'm proposing it, of course)? My guess is that a mix of: - Outstanding bugs (each one known to a few developers, the ones more interested or knowledgeable on the issue) - Pending documentation for new features - Undecided status of several patches (dynamic loading, currying, overridable faces, etc.) - Lack of consensus for the release number (OK, that's only half-serious :) - Uncertainty about where we stand right now Of course, issue tracking systems have other advantages than I'm not going to repeat here, unrelated to whether we're trying to do a release right now or not. Almost every serious free or open source project out there uses one form or another of issue tracking. We should do it, not to follow suit, but for the intrinsic gain. I said a while back that IMHO we should be a more structured project, in the sense of having a plan for releases, with tentative dates, perhaps even a release manager, etc. Someone (Eli, I think, but I'm speaking from memory) opposed on the grounds that it costs human resources that we don't have. But the Emacs project has 87 registered developers; that's 33% more than Subversion, for example, and they seem to be doing well on that regard (though, to be fair, they have four or five people paid to work almost full-time on Subversion). OTOH, perhaps I'm the only one that feels that way, and I'm just pissing out my turf... Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-11 10:53 ` Bug tracking (was: new *Help* argument highlighting) Juanma Barranquero @ 2004-06-11 11:20 ` Lars Hansen 2004-06-11 11:33 ` Juanma Barranquero 2004-06-11 11:39 ` Bug tracking (was: new *Help* argument highlighting) Kim F. Storm ` (2 subsequent siblings) 3 siblings, 1 reply; 173+ messages in thread From: Lars Hansen @ 2004-06-11 11:20 UTC (permalink / raw) Cc: emacs-devel Juanma Barranquero wrote: > I see no bug tracking facility on Savannah, but perhaps I didn't look at > the right places. Look at https://savannah.gnu.org/bugs/?group=tasklist You can access it from the savannah start page by selecting "GNU Task List" in the lower left part of the page, and then look for "Public Areas: Development Tools". I don't know anyting about the system, just noticed it was there. BTW, it seems to be unused. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-11 11:20 ` Bug tracking Lars Hansen @ 2004-06-11 11:33 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-11 11:33 UTC (permalink / raw) Cc: emacs-devel On Fri, 11 Jun 2004 13:20:33 +0200 Lars Hansen <larsh@math.ku.dk> wrote: > https://savannah.gnu.org/bugs/?group=tasklist https://savannah.gnu.org/bugs/?group=emacs => "This project has turned off this tracker [#1];" so perhaps we could turn it on and take a look. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-11 10:53 ` Bug tracking (was: new *Help* argument highlighting) Juanma Barranquero 2004-06-11 11:20 ` Bug tracking Lars Hansen @ 2004-06-11 11:39 ` Kim F. Storm 2004-06-11 12:40 ` Bug tracking Juanma Barranquero 2004-06-11 14:21 ` Bug tracking (was: new *Help* argument highlighting) Miles Bader 2004-06-12 1:50 ` Richard Stallman 2004-06-12 18:26 ` Bug tracking (was: new *Help* argument highlighting) Karl Fogel 3 siblings, 2 replies; 173+ messages in thread From: Kim F. Storm @ 2004-06-11 11:39 UTC (permalink / raw) Cc: rms, emacs-devel Juanma Barranquero <jmbarranquero@wke.es> writes: > I said a while back that IMHO we should be a more structured project, in > the sense of having a plan for releases, with tentative dates, perhaps > even a release manager, etc. Someone (Eli, I think, but I'm speaking > from memory) opposed on the grounds that it costs human resources that > we don't have. But the Emacs project has 87 registered developers; > that's 33% more than Subversion, for example, and they seem to be doing > well on that regard (though, to be fair, they have four or five people > paid to work almost full-time on Subversion). > I really don't understand that we manage to get by without using a bug tracking system. We seem to manage, but I'm sure there are many issues which are never fully addressed and resolved. I use my personal mail archives and TODO list to keep an eye on issue that I MIGHT want to look into; actually, I have several mails more than a year old that I really don't know (without using time I don't have to find out) if the issue is still unresolved. A major advantage of bug tracking is also to know WHO (if any) is responsible for fixing a given bug. I have very positive experience with bugzilla from other projects, but there may be other choices... -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-11 11:39 ` Bug tracking (was: new *Help* argument highlighting) Kim F. Storm @ 2004-06-11 12:40 ` Juanma Barranquero 2004-06-11 14:21 ` Bug tracking (was: new *Help* argument highlighting) Miles Bader 1 sibling, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-11 12:40 UTC (permalink / raw) Cc: rms, emacs-devel On 11 Jun 2004 13:39:25 +0200 storm@cua.dk (Kim F. Storm) wrote: > I really don't understand that we manage to get by without using a bug > tracking system. We seem to manage, but I'm sure there are many > issues which are never fully addressed and resolved. I have the same feeling: we *seem* to manage. > I use my personal mail archives and TODO list to keep an eye on issue > that I MIGHT want to look into; actually, I have several mails more > than a year old that I really don't know (without using time I don't > have to find out) if the issue is still unresolved. Same here. I had for almost a year and half a personal note to try to find out what caused the incompatibilities between GnuWin32 image libraries and MSVC optimized builds. > A major advantage of bug tracking is also to know WHO (if any) is > responsible for fixing a given bug. Yes. That also helps when preparing for a release, because people can take a look at outstanding bug reports and appoint themselves responsibles for issues in their area of expertise. Another thing that I find surprising is not having any kind of regression testing in place. User interface issues are hard to test automatically, but there are many things that *could* be tested (the elisp interpretor, lots of modules, perhaps even the garbage collector). > I have very positive experience with bugzilla from other projects, but > there may be other choices... If we were to use an bug/issue tracker, would it be being on Savannah a prerequisite? (Not that I have any other system to propose, just to keep choices open...) Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-11 11:39 ` Bug tracking (was: new *Help* argument highlighting) Kim F. Storm 2004-06-11 12:40 ` Bug tracking Juanma Barranquero @ 2004-06-11 14:21 ` Miles Bader 2004-06-11 15:11 ` Kim F. Storm 2004-06-12 9:45 ` Richard Stallman 1 sibling, 2 replies; 173+ messages in thread From: Miles Bader @ 2004-06-11 14:21 UTC (permalink / raw) Cc: Juanma Barranquero, rms, emacs-devel On Fri, Jun 11, 2004 at 01:39:25PM +0200, Kim F. Storm wrote: > I have very positive experience with bugzilla from other projects, but > there may be other choices... Bugzilla and the savannah bug tracker stuff both seem to suffer from the almost fatal flaw that they are almost entirely web-based. Filing a simple bug report or managing bugs with either is a painful process, because you are largely stuck with the slow manual process of filling in a web form. I'd much prefer something based around email, only using the web where it makes sense. Andrew Suffield's `BugGoo' system, which Tom Lord has started using for tla (replacing savannah's bug tracker), looks interesting. Andrew is a Debian developer so I presume it is partially based on experience with Debian's bug-tracking system (which is generally excellent, at least from a user's point of view). http://bugs.gnuarch.org/ -Miles -- [|nurgle|] ddt- demonic? so quake will have an evil kinda setting? one that will make every christian in the world foamm at the mouth? [iddt] nurg, that's the goal ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-11 14:21 ` Bug tracking (was: new *Help* argument highlighting) Miles Bader @ 2004-06-11 15:11 ` Kim F. Storm 2004-06-11 22:29 ` Miles Bader 2004-06-12 9:45 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Kim F. Storm @ 2004-06-11 15:11 UTC (permalink / raw) Cc: Juanma Barranquero, rms, emacs-devel Miles Bader <miles@gnu.org> writes: > On Fri, Jun 11, 2004 at 01:39:25PM +0200, Kim F. Storm wrote: > > I have very positive experience with bugzilla from other projects, but > > there may be other choices... > > Bugzilla and the savannah bug tracker stuff both seem to suffer from the > almost fatal flaw that they are almost entirely web-based. Filing a simple > bug report or managing bugs with either is a painful process, because you are > largely stuck with the slow manual process of filling in a web form. I have entered/updated 1000s of bugzilla trackers, and NEVER found it to be slow. Anything complicated (the description part) can be cut/pasted if necessary. > > I'd much prefer something based around email, only using the web where it > makes sense. To me using web interface for bug tracking makes a lot of sense... That doesn't mean that it has to be the only interface though. > > Andrew Suffield's `BugGoo' system, which Tom Lord has started using for tla > (replacing savannah's bug tracker), looks interesting. Andrew is a Debian > developer so I presume it is partially based on experience with Debian's > bug-tracking system (which is generally excellent, at least from a user's > point of view). http://bugs.gnuarch.org/ Looks ok on the surface -- but it seems like the only interface, e.g. to reassign a bug, is to send mail ... seems clumsy (unless of course there is a nice Elisp package to help you with the nitty gritty.) -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-11 15:11 ` Kim F. Storm @ 2004-06-11 22:29 ` Miles Bader 0 siblings, 0 replies; 173+ messages in thread From: Miles Bader @ 2004-06-11 22:29 UTC (permalink / raw) Cc: Juanma Barranquero, emacs-devel, rms, Miles Bader On Fri, Jun 11, 2004 at 05:11:57PM +0200, Kim F. Storm wrote: > > Bugzilla and the savannah bug tracker stuff both seem to suffer from the > > almost fatal flaw that they are almost entirely web-based. Filing a > > simple bug report or managing bugs with either is a painful process, > > because you are largely stuck with the slow manual process of filling in > > a web form. > > I have entered/updated 1000s of bugzilla trackers, and NEVER found it to be > slow. Anything complicated (the description part) can be cut/pasted if > necessary. There are two (enormous) problems with web-based bug user-interfaces: (1) The web UI cannot do any environmental inspection of your system at all. In the case of emacs, of course, the traditional bug-reportting form includes _tons_ of auto-detected data, which is invaluable for for analyzing bug reports. (2) For the sophisticated user they are extremely difficult to automate, whereas an email-based system moves all the work to client where it's actually fairly easy (_especially_ for an emacs user, who is often using an email client integrated with emacs). If you report lots of bugs, or are in charge of bug-handling, a web-based interface can become a huge time drain for this reason. Note that this is the same old `GUI problem' we're all familiar with from other applications: GUIs are great for occasional use by naive users, but when compared to a `language based' approach, they can be extremely inefficient for sophisticated users because of the difficulty of automation. `cut and pasting' is absolutely not an answer to (2): it is a time-consuming and fiddly process unless the entire bug report is a single text field, in which case you might was well offer an email interface. For some tasks, a web-based system is probably easier, such as searching of the bug data-base, so certainly you want _some_ web tools, but you should also export a simple protocol usable by non-web-browser clients -- see debian's bug-reporting program for an example (it is client program, and so can do environmental inspection, but also queries the bug database to allow the user to make sure they aren't duplicating a bug report). > To me using web interface for bug tracking makes a lot of sense... > That doesn't mean that it has to be the only interface though. If there are multiple interfaces, great, of course -- but I think the entire functionality of the system _must_ be available via email, except where that doesn't make much sense (e.g., I'd say that database searching is best left to other protocols, as email-based query systems are usually too slow to be very usable). > > Andrew Suffield's `BugGoo' system, which Tom Lord has started using for > > tla (replacing savannah's bug tracker), looks interesting. Andrew is a > > Debian developer so I presume it is partially based on experience with > > Debian's bug-tracking system (which is generally excellent, at least from > > a user's point of view). http://bugs.gnuarch.org/ > > Looks ok on the surface -- but it seems like the only interface, e.g. > to reassign a bug, is to send mail ... seems clumsy I think he's only been developing it for about 5 minutes, so yeah, it's a a bit spartan -- but it's already better than savannah's system for heavy users... > (unless of course there is a nice Elisp package to help you with the nitty > gritty.) Of course -- but this is simple if you use emacs to read your email (actually even with reasonably facile non-emacs email clients this shouldn't be too hard, e.g. make a shell-script called `bugh' and pipe email with commands like "| bugh reassign kim"). Note that a (huge) advantage of email-based systems is that they make bug-handling part of your morning email session, where besides being in a nice familiar environment with easy automation is, it's hard to forget to do it ... :-) Not a minor issue in practice... -Miles -- "Whatever you do will be insignificant, but it is very important that you do it." Mahatma Ghandi ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-11 14:21 ` Bug tracking (was: new *Help* argument highlighting) Miles Bader 2004-06-11 15:11 ` Kim F. Storm @ 2004-06-12 9:45 ` Richard Stallman 1 sibling, 0 replies; 173+ messages in thread From: Richard Stallman @ 2004-06-12 9:45 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel, storm I'd much prefer something based around email, only using the web where it makes sense. It would be nearly essential for me, if I'm to use the bug-tracker. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-11 10:53 ` Bug tracking (was: new *Help* argument highlighting) Juanma Barranquero 2004-06-11 11:20 ` Bug tracking Lars Hansen 2004-06-11 11:39 ` Bug tracking (was: new *Help* argument highlighting) Kim F. Storm @ 2004-06-12 1:50 ` Richard Stallman 2004-06-12 2:12 ` Juanma Barranquero 2004-06-12 8:37 ` Bug tracking Juri Linkov 2004-06-12 18:26 ` Bug tracking (was: new *Help* argument highlighting) Karl Fogel 3 siblings, 2 replies; 173+ messages in thread From: Richard Stallman @ 2004-06-12 1:50 UTC (permalink / raw) Cc: emacs-devel Still, the question remains: should we use some kind of issue tracker? It would be useful to keep track of the problems that need to be solved before we can make a release. However, using some special "issue tracker" seems like doing it the hard way. All we need is a file we can edit. We can keep it in /etc using CVS and edit it with Emacs. The main job is collecting the information to put in the file. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-12 1:50 ` Richard Stallman @ 2004-06-12 2:12 ` Juanma Barranquero 2004-06-12 8:15 ` Lars Hansen 2004-06-13 0:01 ` Richard Stallman 2004-06-12 8:37 ` Bug tracking Juri Linkov 1 sibling, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-12 2:12 UTC (permalink / raw) On Fri, 11 Jun 2004 21:50:59 -0400, Richard Stallman <rms@gnu.org> wrote: > However, using some special > "issue tracker" seems like doing it the hard way. Why? Why it is the good way for so many projects and would be "hard" for us? Issue trackers have many advantages, from statistics to easy work flow, from categorization of bugs to accesibility to outside and/or casual users. > The main job is collecting the information to put in the file. I agree. And certainly, we can do that (using an etc/BUGS file) if that's what's decided. It would already be better than what we do now. But a few of us have expressed interest in finding a good solution via a dedicated software solution. Are you vetoing it? /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-12 2:12 ` Juanma Barranquero @ 2004-06-12 8:15 ` Lars Hansen 2004-06-13 0:01 ` Richard Stallman 1 sibling, 0 replies; 173+ messages in thread From: Lars Hansen @ 2004-06-12 8:15 UTC (permalink / raw) Cc: emacs-devel Juanma Barranquero wrote: > Issue trackers have many advantages, from statistics to easy work flow, > from categorization of bugs to accesibility to outside and/or casual > users. I agree. It seems many (all?) developers have their own TODO list because of the lack of an Emacs bug/issue tracker. Why not share with other developers and outside world? ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-12 2:12 ` Juanma Barranquero 2004-06-12 8:15 ` Lars Hansen @ 2004-06-13 0:01 ` Richard Stallman 2004-06-13 0:20 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-06-13 0:01 UTC (permalink / raw) Cc: emacs-devel > However, using some special > "issue tracker" seems like doing it the hard way. Why? Why it is the good way for so many projects and would be "hard" for us? I won't assume it is really good for other projects. I don't know whether they have thought about it carefully. Techies are often attracted to using the highest tech available whether it is better or not. It is clear that using a special "issue tracker" would be extra work for many people, and it would be hard for me to use. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 0:01 ` Richard Stallman @ 2004-06-13 0:20 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 0:20 UTC (permalink / raw) On Sat, 12 Jun 2004 20:01:11 -0400, Richard Stallman <rms@gnu.org> wrote: > I won't assume it is really good for other projects. > I don't know whether they have thought about it carefully. > Techies are often attracted to using the highest tech available > whether it is better or not. That's hardly fair. The GCC people, for example, is having a discussion right now about someday replacing CVS with another version control software. They certainly haven't jumped to the "highest tech available", and in fact it seems like they'll decide to just delay the decision till more, and more mature, tools exist so they can be fairly compared. I can't honestly object to people saying "I don't want to use a web interface", or "it's hard for me to use it for such and such", or "I would prefer just an e-mail system", or "text files are the way to go". But I simply find incredible that, confronted with the fact that many projects put web-based issue trackers to good use and express satisfaction with them, the answer be doubting their word. I'm certainly curious about how many free or open source projects the approximate size of Emacs go along happily without some sort of issue tracker. > It is clear that using a special "issue tracker" would be extra work > for many people, and it would be hard for me to use. Oh, I doubt it would be extra work for people, unless they decide to invest the effort on it. This is voluntary work, after all. And it is equally clear that, to-day, no one has decided to invest even the "modest effort" in maintaining issues in a simple etc/ISSUES.PENDING text file... so we're both on the realm of theology, right now. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 1:50 ` Richard Stallman 2004-06-12 2:12 ` Juanma Barranquero @ 2004-06-12 8:37 ` Juri Linkov 2004-06-12 9:38 ` Lars Hansen ` (2 more replies) 1 sibling, 3 replies; 173+ messages in thread From: Juri Linkov @ 2004-06-12 8:37 UTC (permalink / raw) Cc: Juanma Barranquero, emacs-devel Richard Stallman <rms@gnu.org> writes: > All we need is a file we can edit. We can keep it in /etc using CVS > and edit it with Emacs. This is the most simple and flexible solution! Such file could be in the mail-like format with relevant field names that comprise the database of bug reports, todo items and news (the latter actually would be either a bug report or a todo item with `Completed' status). An example of a record for such database: Summary: Do this and that Category: Custom Priority: High Status: Open Submitted: J. Random Hacker Assigned: J. Random Hacker Long multi-line description. Long multi-line description. Long multi-line description. ^L "Issue trackers" written in a plain text file have many advantages: it can be edited directly in Emacs, all changes can be easily tracked by developers after committing this file to CVS, it allows arbitrary text-processing operations on a file... -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 8:37 ` Bug tracking Juri Linkov @ 2004-06-12 9:38 ` Lars Hansen 2004-06-12 15:28 ` Juri Linkov 2004-06-13 0:01 ` Richard Stallman 2004-06-12 12:47 ` Juanma Barranquero 2004-06-13 0:01 ` Richard Stallman 2 siblings, 2 replies; 173+ messages in thread From: Lars Hansen @ 2004-06-12 9:38 UTC (permalink / raw) Cc: Juanma Barranquero, emacs-devel Juri Linkov wrote: > Richard Stallman <rms@gnu.org> writes: > >>All we need is a file we can edit. We can keep it in /etc using CVS >>and edit it with Emacs. > > > This is the most simple and flexible solution! Such file could be > in the mail-like format with relevant field names that comprise the > database of bug reports, todo items and news (the latter actually > would be either a bug report or a todo item with `Completed' status). IMO database functionality is needed. I should be easy to select items having to do with a particular module/issuer/maintainer/priority/version of Emacs/OS and possibly other. Of course that can be done with a text file, but is there existing (Emacs lisp) code that can do it? And IMHO it should be accessible from the web as well. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 9:38 ` Lars Hansen @ 2004-06-12 15:28 ` Juri Linkov 2004-06-14 13:52 ` Kim F. Storm 2004-06-13 0:01 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-06-12 15:28 UTC (permalink / raw) Cc: Juanma Barranquero, emacs-devel Lars Hansen <larsh@math.ku.dk> writes: > IMO database functionality is needed. I should be easy to select items > having to do with a particular > module/issuer/maintainer/priority/version of Emacs/OS > and possibly other. Of course that can be done with a text file, but > is there existing (Emacs lisp) code that can do it? Yes, there is existing Emacs Lisp code (but obviously I am biased). It is Ee information manager which displays data from text files in category trees and allows to operate on displayed data: expand/collapse categories, edit data fields, etc. It's possible to create different views for every data file. Here is an example http://www.jurta.org/emacs/ee/data/todo.en.html how a possible issue tracker might look. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 15:28 ` Juri Linkov @ 2004-06-14 13:52 ` Kim F. Storm 2004-06-14 15:09 ` Juri Linkov 0 siblings, 1 reply; 173+ messages in thread From: Kim F. Storm @ 2004-06-14 13:52 UTC (permalink / raw) Cc: Juanma Barranquero, Lars Hansen, emacs-devel Juri Linkov <juri@jurta.org> writes: > Lars Hansen <larsh@math.ku.dk> writes: > > IMO database functionality is needed. I should be easy to select items > > having to do with a particular > > module/issuer/maintainer/priority/version of Emacs/OS > > and possibly other. Of course that can be done with a text file, but > > is there existing (Emacs lisp) code that can do it? > > Yes, there is existing Emacs Lisp code (but obviously I am biased). > It is Ee information manager which displays data from text files > in category trees and allows to operate on displayed data: > expand/collapse categories, edit data fields, etc. It's possible > to create different views for every data file. Here is an > example http://www.jurta.org/emacs/ee/data/todo.en.html > how a possible issue tracker might look. There is also ewoc.el already included in emacs, which might be useful as the basis of a simple emacs bug tracker interface. -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 13:52 ` Kim F. Storm @ 2004-06-14 15:09 ` Juri Linkov 2004-06-14 15:38 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-06-14 15:09 UTC (permalink / raw) Cc: jmbarranquero, larsh, emacs-devel storm@cua.dk (Kim F. Storm) writes: > Juri Linkov <juri@jurta.org> writes: >> Yes, there is existing Emacs Lisp code (but obviously I am biased). >> It is Ee information manager which displays data from text files >> in category trees and allows to operate on displayed data: >> expand/collapse categories, edit data fields, etc. It's possible >> to create different views for every data file. Here is an >> example http://www.jurta.org/emacs/ee/data/todo.en.html >> how a possible issue tracker might look. > > There is also ewoc.el already included in emacs, which might be useful > as the basis of a simple emacs bug tracker interface. Thanks for the information. It seems ewoc.el might be useful as a data-view connection between a buffer with BUGS text file and categorized views displayed by Ee. However, I think we should start with creating a simple mode to support editing BUGS text files: fontification and completion of data fields, adding new records from templates, moving existing records, etc. with all these operations performed on a file buffer. And later to add other packages to display statistics, summaries, categorized views and other such additional features in a separate view buffer. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 15:09 ` Juri Linkov @ 2004-06-14 15:38 ` Juanma Barranquero 2004-06-14 16:32 ` Juri Linkov 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-14 15:38 UTC (permalink / raw) Cc: emacs-devel On Mon, 14 Jun 2004 18:09:34 +0300 Juri Linkov <juri@jurta.org> wrote: > It seems ewoc.el might be useful as > a data-view connection between a buffer with BUGS text file and > categorized views displayed by Ee. Ee is composed of 65 files, 27 of them elisp modules. It is mature enough, and generally useful enough, to accept it as a prerequisite for a issue tracker on elisp? Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 15:38 ` Juanma Barranquero @ 2004-06-14 16:32 ` Juri Linkov 0 siblings, 0 replies; 173+ messages in thread From: Juri Linkov @ 2004-06-14 16:32 UTC (permalink / raw) Cc: emacs-devel Juanma Barranquero <jmbarranquero@wke.es> writes: > On Mon, 14 Jun 2004 18:09:34 +0300 > Juri Linkov <juri@jurta.org> wrote: >> It seems ewoc.el might be useful as >> a data-view connection between a buffer with BUGS text file and >> categorized views displayed by Ee. > > Ee is composed of 65 files, 27 of them elisp modules. It is mature > enough, and generally useful enough, to accept it as a prerequisite for > a issue tracker on elisp? It is quite mature: there were no serious problems found for a year. As for usefulness, I believe it is useful due to its general and simple interface for presenting data by views with hierarchical categories. However, I wouldn't say that it should be a prerequisite for managing bug reports and TODO items in Emacs. I think they should be editable as normal text files (though, in a predefined format) without requiring additional packages. Issue trackers could be implemented on top of text files as a tool to display data in different views (with all additional nice features like statistics, categorizing, etc. that existing issue trackers have) instead of default flat text. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 9:38 ` Lars Hansen 2004-06-12 15:28 ` Juri Linkov @ 2004-06-13 0:01 ` Richard Stallman 2004-06-13 0:05 ` Juanma Barranquero ` (2 more replies) 1 sibling, 3 replies; 173+ messages in thread From: Richard Stallman @ 2004-06-13 0:01 UTC (permalink / raw) Cc: juri, jmbarranquero, emacs-devel IMO database functionality is needed. I should be easy to select items having to do with a particular module/issuer/maintainer/priority/version of Emacs/OS It is easy enough to search a file. If this gets to be large, something is wrong. We're not planning to use this to track individual bugs, and aside from individual bugs, the number of issues cannot be too large. What you're proposing would be too costly to set up and maintain. Our sysadmins would have to do it. I can't agree to that. Also, I would be unable to access it. I usually do not have a net connection, and often don't even have the possibility of one. Therefore, I want this info to be kept in a file in the Emacs repository, so I will be able to look at it and edit it without a net connection. If you want to work on Emacs code to do more sophisticated searching of this file, please go ahead. That would be a modular improvement which would not impose any problems elsewhere. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 0:01 ` Richard Stallman @ 2004-06-13 0:05 ` Juanma Barranquero 2004-06-13 11:55 ` Kai Grossjohann 2004-06-13 22:26 ` Kim F. Storm 2 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 0:05 UTC (permalink / raw) On Sat, 12 Jun 2004 20:01:23 -0400, Richard Stallman <rms@gnu.org> wrote: > We're not planning to use this to track > individual bugs [...] <sigh> /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 0:01 ` Richard Stallman 2004-06-13 0:05 ` Juanma Barranquero @ 2004-06-13 11:55 ` Kai Grossjohann 2004-06-13 14:34 ` Juanma Barranquero 2004-06-14 18:50 ` Richard Stallman 2004-06-13 22:26 ` Kim F. Storm 2 siblings, 2 replies; 173+ messages in thread From: Kai Grossjohann @ 2004-06-13 11:55 UTC (permalink / raw) Richard Stallman <rms@gnu.org> writes: > We're not planning to use this to track individual bugs, Why not? I thought the discussion was about putting things reported by M-x report-emacs-bug RET into a database? (The word database is to be understood in the broadest possible sense, so that a text file is also encompassed.) The mailing list bug-gnu-emacs is nice, but it doesn't provide a list of open issues, it doesn't provide a way to get a list of bugs that are being worked on by somebody, and so on. Kai ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 11:55 ` Kai Grossjohann @ 2004-06-13 14:34 ` Juanma Barranquero 2004-06-13 16:04 ` Juri Linkov 2004-06-14 18:50 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 14:34 UTC (permalink / raw) On Sun, 13 Jun 2004 13:55:54 +0200, Kai Grossjohann <kai@emptydomain.de> wrote: > Why not? I thought the discussion was about putting things reported > by M-x report-emacs-bug RET into a database? When I started the thread, I was talking mainly about exactly *that*; it's more difficult to manage open bugs that ideas for new developments or things to finish (etc/TODO could be used for that, even if it isn't right now). > The mailing list bug-gnu-emacs is nice, but it doesn't provide a list > of open issues, it doesn't provide a way to get a list of bugs that > are being worked on by somebody, and so on. In other words: it doesn't help in managing open issues. I fully agree. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 14:34 ` Juanma Barranquero @ 2004-06-13 16:04 ` Juri Linkov 0 siblings, 0 replies; 173+ messages in thread From: Juri Linkov @ 2004-06-13 16:04 UTC (permalink / raw) Cc: emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > When I started the thread, I was talking mainly about exactly *that*; > it's more difficult to manage open bugs that ideas for new developments > or things to finish I agree. It's a pity so many bug reports are already lost in bug-gnu-emacs archives without being registered and categorized by their severity and status. > (etc/TODO could be used for that, even if it isn't right now). As I see it, the purpose of etc/TODO is to manage ideas rather than open bugs. Open bugs could be placed to a separate file. So a set of database text files might contain only four files: etc/BUGS etc/TODO etc/DONE etc/NEWS That's all that's needed for the simplest issue tracker. Another question is how to add new bug reports to the BUGS file. I think this is the task of Emacs developers to register bug reports from bug-gnu-emacs in the BUGS file, because usually Emacs users who report bugs on bug-gnu-emacs can't assign right categories and severity levels to reported bugs. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 11:55 ` Kai Grossjohann 2004-06-13 14:34 ` Juanma Barranquero @ 2004-06-14 18:50 ` Richard Stallman 2004-06-14 21:41 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-06-14 18:50 UTC (permalink / raw) Cc: emacs-devel > We're not planning to use this to track individual bugs, Why not? I thought the discussion was about putting things reported by M-x report-emacs-bug RET into a database? No, this discussion is about tracking issues that need to be resolved before the release. Here is the message that raised this question: Still, the question remains: should we use some kind of issue tracker? Currently we have an etc/TODO, which is sort of half wish list, half grab bag of heterogeneous items. I'm all for using an issue tracker, if only because it makes easier to know where we are, release-wise, for any given release. For example, what's precluding us from doing a prerelease tarball just today (not that I'm proposing it, of course)? The answer to this question is not a list of bug reports; this job is not bug tracking. Tracking issues cannot mean bug tracking, because only something important qualifies as an "issue". A mere bug report is not (usually) an issue. On some occasions a certain bug report might be important enough to be an issue, but only the Emacs developers can decide when that is so. Only the developers can enter issues, and it makes no sense to have a large number of issues. A text file is the perfect way to keep track of issues. Bug tracking might be useful, but it is a completely different subject. If we use a bug-tracker, it should be easy to use via email and cvs. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 18:50 ` Richard Stallman @ 2004-06-14 21:41 ` Juanma Barranquero 2004-06-14 23:09 ` Kim F. Storm 2004-06-16 16:57 ` Richard Stallman 0 siblings, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-14 21:41 UTC (permalink / raw) Cc: Richard Stallman On Mon, 14 Jun 2004 14:50:05 -0400, Richard Stallman <rms@gnu.org> wrote: > No, this discussion is about tracking issues that need to be > resolved before the release. Here is the message that raised this > question: Put that on English not being my native language. I was thinking (and referring, at least on my mind :) to both things. > A text file is the perfect way to keep track of issues. On that, I agree. > Bug tracking might be useful, but it is a completely different > subject. If we use a bug-tracker, it should be easy to use via email > and cvs. Via CVS? That meaning? /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 21:41 ` Juanma Barranquero @ 2004-06-14 23:09 ` Kim F. Storm 2004-06-14 23:33 ` Miles Bader 2004-06-16 16:57 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Kim F. Storm @ 2004-06-14 23:09 UTC (permalink / raw) Cc: Richard Stallman, emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > On Mon, 14 Jun 2004 14:50:05 -0400, Richard Stallman <rms@gnu.org> wrote: > > > No, this discussion is about tracking issues that need to be > > resolved before the release. Here is the message that raised this > > question: > > Put that on English not being my native language. I was thinking (and > referring, at least on my mind :) to both things. > > > A text file is the perfect way to keep track of issues. > > On that, I agree. > > > Bug tracking might be useful, but it is a completely different > > subject. If we use a bug-tracker, it should be easy to use via email > > and cvs. > > Via CVS? That meaning? We could start small and simple: Create an emacs/tracker subdirectory and create text files 1.bug, 2.bug, etc. with one file for each bug. Then add a simple header to the file, initially just: ,------------------------------------- | Subject: Title of this bug | From: Name and email of original reporter of the bug | Date: Date created | Modified: Date last modified | Status: empty | user name of developer (when assigned) | DELAY | REJECT | DONE | Priority: RELEASE | FATAL | HIGH | NORMAL | LOW | ... | Cc: List of email addresses to be notified when tracker is updated | [empty line] | Free format text about the bug `------------------------------------- Priority = RELEASE means that issue must be resolved before next release. Priotity = FATAL means this bug makes emacs crash. Then we can create fairly simple commands like bug-tracker-create which creates an empty bug tracker, and bug-tracker-commit (bound to C-c C-c) which checks it into cvs (automatically updating the Modified date). We can also make bug-tracker-create-from-message which will take a mail or news message (in the current buffer) and create a tracker for it by: a) select the next unused number in tracker b) write header + body to that tracker file tracker/N.bug c) do cvs add + cvs commit on that file As we progress, we can add more commands that can list, summarize, search, update those trackers, etc. all with proper interfacing to cvs (including committing changes at a later time if currently off-line). The basic idea is that all trackers are recorded as simple text (mbox-like) files in CVS. Updates to the trackers will then automatically be mailed to anyone subscribing to the emacs-diffs mailing list. Such a system could be written in a couple of hours initially, and expanded gradually as we find the time and need... BTW, progress about the bug can also be recorded in the cvs log, e.g. changes to Status field. -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 23:09 ` Kim F. Storm @ 2004-06-14 23:33 ` Miles Bader 2004-06-15 8:11 ` Kim F. Storm 0 siblings, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-06-14 23:33 UTC (permalink / raw) Cc: Juanma Barranquero, Richard Stallman, emacs-devel On Tue, Jun 15, 2004 at 01:09:38AM +0200, Kim F. Storm wrote: > We could start small and simple: > > Create an emacs/tracker subdirectory and create text files 1.bug, 2.bug, etc. > with one file for each bug. > > Then add a simple header to the file, initially just: Please look at the link I posted earlier about Andrew Suffield's bug system which covers many of these issues (it's an email-based system). I don't know that we could use his system unchanged, but it might be nice to have at least a bit of consistency of format or something. I think the link is: http://bugs.gnuarch.org [and then select some link below about explanation] -Miles -- 80% of success is just showing up. --Woody Allen ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 23:33 ` Miles Bader @ 2004-06-15 8:11 ` Kim F. Storm 0 siblings, 0 replies; 173+ messages in thread From: Kim F. Storm @ 2004-06-15 8:11 UTC (permalink / raw) Cc: Juanma Barranquero, Richard Stallman, emacs-devel Miles Bader <miles@gnu.org> writes: > On Tue, Jun 15, 2004 at 01:09:38AM +0200, Kim F. Storm wrote: > > We could start small and simple: > > > > Create an emacs/tracker subdirectory and create text files 1.bug, 2.bug, etc. > > with one file for each bug. > > > > Then add a simple header to the file, initially just: > > Please look at the link I posted earlier about Andrew Suffield's bug system > which covers many of these issues (it's an email-based system). I don't know > that we could use his system unchanged, but it might be nice to have at least > a bit of consistency of format or something. Sure, but I don't want to go ahead an implement this before we get some sort of consensus on the topic. So the question is: Would the proposed "trackers in cvs" + "emacs frontent" (with no email interface) be sufficient for you and others who have voiced a strong rejection of web based trackers? -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 21:41 ` Juanma Barranquero 2004-06-14 23:09 ` Kim F. Storm @ 2004-06-16 16:57 ` Richard Stallman 1 sibling, 0 replies; 173+ messages in thread From: Richard Stallman @ 2004-06-16 16:57 UTC (permalink / raw) Cc: emacs-devel > Bug tracking might be useful, but it is a completely different > subject. If we use a bug-tracker, it should be easy to use via email > and cvs. Via CVS? That meaning? I mean that someone like me, who needs to use email and CVS, should be able to use it with full effectiveness. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 0:01 ` Richard Stallman 2004-06-13 0:05 ` Juanma Barranquero 2004-06-13 11:55 ` Kai Grossjohann @ 2004-06-13 22:26 ` Kim F. Storm 2004-06-13 23:52 ` Miles Bader 2 siblings, 1 reply; 173+ messages in thread From: Kim F. Storm @ 2004-06-13 22:26 UTC (permalink / raw) Cc: juri, Lars Hansen, jmbarranquero, emacs-devel Richard Stallman <rms@gnu.org> writes: > IMO database functionality is needed. I should be easy to select items > having to do with a particular > module/issuer/maintainer/priority/version of Emacs/OS > > It is easy enough to search a file. If this gets to be large, > something is wrong. We're not planning to use this to track > individual bugs, and aside from individual bugs, the number of issues > cannot be too large. You lost me there -- how do we track individual bugs then? I'm sick and tired of having +100 mails and usenet articles that are constantly marked unread because I might have to look at them -- if nobody else does that. To be useful, a bug tracker must record all bugs -- trivial and non-trivial for the purpose of knowing who (if any) is looking into each of those bugs. And as a repository of things to look at when we have time. The interface to the system is less important -- but I don't really see how you can use a central tracker database if you are off-line most of the time. -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 22:26 ` Kim F. Storm @ 2004-06-13 23:52 ` Miles Bader 0 siblings, 0 replies; 173+ messages in thread From: Miles Bader @ 2004-06-13 23:52 UTC (permalink / raw) Cc: juri, Lars Hansen, jmbarranquero, rms, emacs-devel On Mon, Jun 14, 2004 at 12:26:27AM +0200, Kim F. Storm wrote: > The interface to the system is less important -- but I don't really > see how you can use a central tracker database if you are off-line > most of the time. It's not important to have an exact to-the-minute copy of the database (because the rate of change is slow, and conflicts tend not to be critical), so any solution that allows easy occasional synchronization would be good enough (and with an email-based system, the synchronization can be one-way -- modification commands typically will get queued with other outgoing email). -Miles -- 80% of success is just showing up. --Woody Allen ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 8:37 ` Bug tracking Juri Linkov 2004-06-12 9:38 ` Lars Hansen @ 2004-06-12 12:47 ` Juanma Barranquero 2004-06-12 15:38 ` Juri Linkov 2004-06-13 21:49 ` Richard Stallman 2004-06-13 0:01 ` Richard Stallman 2 siblings, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-12 12:47 UTC (permalink / raw) Cc: Juri Linkov, rms On Sat, 12 Jun 2004 11:37:05 +0300, Juri Linkov <juri@jurta.org> wrote: > This is the most simple and flexible solution! There is flexibility and there is flexibility. Of course using a custom-format, text file is the most flexible answer, at the cost of having no tool other than what we want to develop. Yes, we have Emacs, but even Emacs has no "Bug Tracker" major mode, that I know of :) > "Issue trackers" written in a plain text file have many advantages: > it can be edited directly in Emacs, all changes can be easily tracked > by developers after committing this file to CVS, it allows arbitrary > text-processing operations on a file... It doesn't have a web interface for other people, no automatic way to extract statistics, it's *clumsy* beyond belief if you want to also store past (and fixed or rejected) issues, has to be manually edited by us so outside people cannot enter issues, needs that someone reads gnu-emacs-bugs@ reports and formats them as desired, it has limited posibilities for searching and categorizing... /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 12:47 ` Juanma Barranquero @ 2004-06-12 15:38 ` Juri Linkov 2004-06-12 22:09 ` Juanma Barranquero 2004-06-13 21:49 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-06-12 15:38 UTC (permalink / raw) Cc: rms, emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > There is flexibility and there is flexibility. Of course using a > custom-format, text file is the most flexible answer, at the cost of > having no tool other than what we want to develop. Yes, we have Emacs, > but even Emacs has no "Bug Tracker" major mode, that I know of :) Even without special mode a plain text file is the most convenient way to edit data and to perform arbitrary Emacs operations on them. > It doesn't have a web interface for other people, no automatic way > to extract statistics, it's *clumsy* beyond belief if you want to > also store past (and fixed or rejected) issues, has to be manually > edited by us so outside people cannot enter issues, I think there is nothing wrong with the fact that only Emacs developers will be able to fill bug reports. So no web interface is really needed. > needs that someone reads gnu-emacs-bugs@ reports and formats > them as desired That's exactly how it might work: developers read gnu-emacs-bugs, create new bug entries in the text file and commit them to CVS. And you can track changes in the text file with all the usual features of CVS. > it has limited posibilities for searching and categorizing... Apart from the Ee categorizing manager, I think that some other Emacs packages can perform these operations on text files. AFAIK, at least Gnus should be able to read a text file in the mail-like format and to treat it as a mail group with bug and TODO entries as messages. There are even many possibilities of tighter integration with its email functionality. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 15:38 ` Juri Linkov @ 2004-06-12 22:09 ` Juanma Barranquero 2004-06-12 23:06 ` Miles Bader 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-12 22:09 UTC (permalink / raw) Cc: Juri Linkov, rms On Sat, 12 Jun 2004 18:38:29 +0300, Juri Linkov <juri@jurta.org> wrote: > Even without special mode a plain text file is the most convenient > way to edit data and to perform arbitrary Emacs operations on them. No, a plain text file is not necessarily "the most convenient way to edit data", not by a long shot. Certain kinds of data, yes. And yes, it is easi to perform arbitrary Emacs operations on it, but we don't want to perform arbitrary operations, but a few, very specific, widely used kinds of operations: the ones usually associated with bug/issue management. Your claim is so broad that it seems like you were saying that Emacs is "the most convenient way" to do anything. > I think there is nothing wrong with the fact that only Emacs > developers will be able to fill bug reports. So no web interface > is really needed. Obviously, we *strongly* disagree here. I see much wrong with only Emacs developers being able to fill bug reports (for one, that means someone *has* to do the work which could have made the user). So the web interface is, to me, really needed. > That's exactly how it might work: developers read gnu-emacs-bugs, > create new bug entries in the text file and commit them to CVS. > And you can track changes in the text file with all the usual > features of CVS. Yes, I understand how could it work, I just happen to think that is a extraordinarily un-optimized way to do things. See etc/TODO: would you dare say that it is really used for the intended purpose? Many things in TODO have been there for years, and almost *all* things implemented or fixed never ever touched TODO. > Apart from the Ee categorizing manager, I think that some other > Emacs packages can perform these operations on text files. > AFAIK, at least Gnus should be able to read a text file in the > mail-like format and to treat it as a mail group with bug and TODO > entries as messages. There are even many possibilities of tighter > integration with its email functionality. Aren't you saying that we can shoehorn something into simulating being an issue tracker, just to *not* use an issue tracker which already does all that? /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 22:09 ` Juanma Barranquero @ 2004-06-12 23:06 ` Miles Bader 2004-06-13 0:08 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-06-12 23:06 UTC (permalink / raw) Cc: Juri Linkov, rms, emacs-devel On Sun, Jun 13, 2004 at 12:09:04AM +0200, Juanma Barranquero wrote: > Yes, I understand how could it work, I just happen to think that is a > extraordinarily un-optimized way to do things. See etc/TODO: would you > dare say that it is really used for the intended purpose? Many things > in TODO have been there for years, and almost *all* things implemented > or fixed never ever touched TODO. I doubt a fancy `issue tracker' would make a whole lot of difference -- indeed it might make things worse, if it tried to hide what's actually a simple, relatively small, list of items under an unnecessary search interface. I think the best thing for help to get TODO more used would be a bit more structure / categorization in the file, to make it less daunting for first-time viewers, and an easy way for regular developers to see changes to it, without having to explicitly _do_ something, e.g., a special mailing list just for commit diffs to TODO. -Miles -- We live, as we dream -- alone.... ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 23:06 ` Miles Bader @ 2004-06-13 0:08 ` Juanma Barranquero 2004-06-13 0:50 ` Miles Bader 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 0:08 UTC (permalink / raw) Cc: Miles Bader On Sat, 12 Jun 2004 19:06:38 -0400, Miles Bader <miles@gnu.org> wrote: > I doubt a fancy `issue tracker' would make a whole lot of difference -- I was not saying "fancy". In fact, I have no preference for one or another, and simple is enough. But certainly a text file is not what I was talking about. I bet it won't be useful. No, scratch that. I bet it won't be used. > I think the best thing for help to get TODO more used would be a bit more > structure / categorization in the file, to make it less daunting for > first-time viewers, and an easy way for regular developers to see changes to > it, without having to explicitly _do_ something, e.g., a special mailing list > just for commit diffs to TODO. So, we should develop a simple issue tracker, instead of using a simple, already-existing issue tracker... /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 0:08 ` Juanma Barranquero @ 2004-06-13 0:50 ` Miles Bader 2004-06-13 1:07 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-06-13 0:50 UTC (permalink / raw) Cc: Miles Bader, emacs-devel On Sun, Jun 13, 2004 at 02:08:05AM +0200, Juanma Barranquero wrote: > So, we should develop a simple issue tracker, instead of using a simple, > already-existing issue tracker... Huh? Of course not -- if you can find one that actually works for us and meets the constraints given. Web-only software need not apply. -Miles -- A zen-buddhist walked into a pizza shop and said, "Make me one with everything." ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 0:50 ` Miles Bader @ 2004-06-13 1:07 ` Juanma Barranquero 2004-06-13 16:00 ` Juri Linkov 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 1:07 UTC (permalink / raw) Cc: Miles Bader On Sat, 12 Jun 2004 20:50:22 -0400, Miles Bader <miles@gnu.org> wrote: > Huh? Of course not What I meant is that we're bound to reproduce, in text files and elisp modules, an issue tracker. > if you can find one that actually works for us and > meets the constraints given. Web-only software need not apply. I'll take a look. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 1:07 ` Juanma Barranquero @ 2004-06-13 16:00 ` Juri Linkov 2004-06-13 22:52 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Juri Linkov @ 2004-06-13 16:00 UTC (permalink / raw) Cc: Miles Bader, emacs-devel Juanma Barranquero <lektu@mi.madritel.es> writes: > What I meant is that we're bound to reproduce, in text files and > elisp modules, an issue tracker. Why _bound to reproduce_? Let's put it another way: we are _motivated to create_ an Emacs-based issue tracker. And once we implement it, even other projects might benefit from that. As for a web interface, I think it is not an absolute requirement, and even often undesirable, since a better method for filing bugs is `report-emacs-bug' which also adds all the necessary information and doesn't require from Emacs users additional tools. Though, a some kind of an add-on HTTP<->CVS gateway could be implemented to sync data between Savannah bug database and text files in CVS repository, if that becomes absolutely necessary. -- Juri Linkov http://www.jurta.org/emacs/ ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 16:00 ` Juri Linkov @ 2004-06-13 22:52 ` Juanma Barranquero 2004-06-13 23:56 ` Miles Bader 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 22:52 UTC (permalink / raw) Cc: Juri Linkov On Sun, 13 Jun 2004 19:00:47 +0300, Juri Linkov <juri@jurta.org> wrote: > Why _bound to reproduce_? ?? Because (IMHO) we need the functionality of an issue tracker, and we don't have it implemented. > Let's put it another way: we are > _motivated to create_ an Emacs-based issue tracker. No. Perhaps you're motivated to create an Emacs-based issue tracker. I'm just motivated to *use* an issue tracker, because I think quality would improve. I have not a single bit of interest in developing or helping to develop Yet Another Issue Tracker, and less so because there are quite a few free ones to pick from. > As for a web interface, I think it is not an absolute requirement, > and even often undesirable, since a better method for filing bugs > is `report-emacs-bug' which also adds all the necessary information > and doesn't require from Emacs users additional tools. I think we had already implicitly agreed to disagree on this one... Every program has a context. That doesn't mean that the users who take the trouble to file a bug report are unable to provide that information. report-emacs-bug is great, and if it can be integrated with an IT, wonderful. But surely is not a precondition. > Though, a some kind of an add-on HTTP<->CVS gateway could be > implemented to sync data between Savannah bug database and text > files in CVS repository, if that becomes absolutely necessary. "Could be implemented". Yeah. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 22:52 ` Juanma Barranquero @ 2004-06-13 23:56 ` Miles Bader 2004-06-14 7:20 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-06-13 23:56 UTC (permalink / raw) Cc: Juri Linkov, emacs-devel On Mon, Jun 14, 2004 at 12:52:01AM +0200, Juanma Barranquero wrote: > Every program has a context. That doesn't mean that the users who take > the trouble to file a bug report are unable to provide that information. > report-emacs-bug is great, and if it can be integrated with an IT, > wonderful. But surely is not a precondition. Most users are _lazy_ -- if reporting a bug entails a lot of extra work, they'll either give up reporting the bug, or they'll just omit all the info (if the interface allows it). -Miles -- "Whatever you do will be insignificant, but it is very important that you do it." Mahatma Ghandi ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 23:56 ` Miles Bader @ 2004-06-14 7:20 ` Juanma Barranquero 2004-06-14 7:31 ` Juanma Barranquero 2004-06-14 16:40 ` Thien-Thi Nguyen 0 siblings, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-14 7:20 UTC (permalink / raw) Cc: emacs-devel On Sun, 13 Jun 2004 19:56:13 -0400 Miles Bader <miles@gnu.org> wrote: > Most users are _lazy_ -- if reporting a bug entails a lot of extra work, > they'll either give up reporting the bug, or they'll just omit all the info > (if the interface allows it). Well, two points: - Report quality must be not so bad, after all, when many projects use IT. As users usually have to register with an e-mail, interested developers can always ask for more info. That happens right now, even with the context information of M-x report-emacs-bug. - Certainly, if we are able to use an IT where M-x report-emacs-bug creates a report (via de url package or whatever) that'd be great. Nobody's proposing dispensing with this interface. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 7:20 ` Juanma Barranquero @ 2004-06-14 7:31 ` Juanma Barranquero 2004-06-14 16:40 ` Thien-Thi Nguyen 1 sibling, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-14 7:31 UTC (permalink / raw) Cc: emacs-devel On Mon, 14 Jun 2004 09:20:49 +0200 Juanma Barranquero <jmbarranquero@wke.es> wrote: > via de url package ^^ That's a phonetic typo. Funny. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 7:20 ` Juanma Barranquero 2004-06-14 7:31 ` Juanma Barranquero @ 2004-06-14 16:40 ` Thien-Thi Nguyen 2004-06-14 21:36 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Thien-Thi Nguyen @ 2004-06-14 16:40 UTC (permalink / raw) Cc: emacs-devel, Miles Bader Juanma Barranquero <jmbarranquero@wke.es> writes: Nobody's proposing dispensing with this interface. the user interface can be anything but if the data representation is more complicated than mbox, that's a step away from the shoulders of giants, etc. mbox (specifically mime) is tagged and recursive. it is in use already by other tracking systems. general tools to manipulate mbox files are everywhere. these add up to a huge hint to the would-be designer of systems that need to store tagged and recursive data. not understanding this hint means the first batch of bugs will be about the bug tracking system itself, and that batch may be large, and mostly uninteresting. i think if you separate the user interface question from the data representation question, you will receive less static. thi ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 16:40 ` Thien-Thi Nguyen @ 2004-06-14 21:36 ` Juanma Barranquero 2004-06-15 1:36 ` Thien-Thi Nguyen 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-14 21:36 UTC (permalink / raw) Cc: Thien-Thi Nguyen On 14 Jun 2004 12:40:43 -0400, Thien-Thi Nguyen <ttn@glug.org> wrote: > i think if you separate the user interface question from the data > representation question, you will receive less static. You lost me there. My primary interest is user interface, which is what makes or breaks the success of a bug tracker. Users must be able to enter bug reports easily, and developers must be able to see what's done and what's waiting, who's doing what, etc. also easily Whether the data is in cuneiform tablets or tachyonic particles oscillating between alternate universes is an implementation detail. (Which doesn't mean all representations are equivalent, obviously). But in fact, and contrarily to many things heard in this thead, I'm specifically proposing to develop *nothing* (or at least, almost nothing), so data representation is an issue for the software already existing out there, not for me. I'm hearing about using text files and developing modes to manage and display that information, and I wonder, who's going to implement it? Because I know I'm not (although I will use whatever we have, if someone invests the effort in developing it). First, though, we'd have to answer whether we want a bug tracker (as I proposed), a pending-and-future-issues planner (as I think Richard wants), both or none. Personally I find little use in the planner, a text file (with no custom elisp development) is fine. But a bug tracker, oh yes, I strongly think this would be good for the project. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 21:36 ` Juanma Barranquero @ 2004-06-15 1:36 ` Thien-Thi Nguyen 2004-06-15 13:58 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Thien-Thi Nguyen @ 2004-06-15 1:36 UTC (permalink / raw) Cc: emacs-devel From: Juanma Barranquero <lektu@mi.madritel.es> Date: Mon, 14 Jun 2004 23:36:56 +0200 You lost me there. My primary interest is user interface, which is what makes or breaks the success of a bug tracker. Users must be able to enter bug reports easily, and developers must be able to see what's done and what's waiting, who's doing what, etc. also easily. Whether the data is in cuneiform tablets or tachyonic particles oscillating between alternate universes is an implementation detail. a system designer might say the user interface is also an implementation detail (anything but the block diagram could be considered so). my primary interest is in emulating the thought patterns of (good) system designers. But in fact, and contrarily to many things heard in this thead, I'm specifically proposing to develop *nothing* (or at least, almost nothing), so data representation is an issue for the software already existing out there, not for me. I'm hearing about using text files and developing modes to manage and display that information, and I wonder, who's going to implement it? Because I know I'm not (although I will use whatever we have, if someone invests the effort in developing it). if the design is clean and approachable, the implementation will tend to happen w/o too much pushing. i was hoping you would propose an abstract-ish design in the form of a big block diagram, taking into consideration the wide-ranging requirements mentioned thus far, that we could clean up and post somewhere. the major effort is in conceiving the big block diagram, IMHO; code will follow, naturally. First, though, we'd have to answer whether we want a bug tracker (as I proposed), a pending-and-future-issues planner (as I think Richard wants), both or none. Personally I find little use in the planner, a text file (with no custom elisp development) is fine. But a bug tracker, oh yes, I strongly think this would be good for the project. perhaps these are specializations that can be deferred? thi ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-15 1:36 ` Thien-Thi Nguyen @ 2004-06-15 13:58 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-15 13:58 UTC (permalink / raw) Cc: emacs-devel On Tue, 15 Jun 2004 03:36:37 +0200 Thien-Thi Nguyen <ttn@surf.glug.org> wrote: > i was hoping you would > propose an abstract-ish design in the form of a big block diagram, > taking into consideration the wide-ranging requirements mentioned > thus far, that we could clean up and post somewhere. No. There are people here with ideas about how to do it inside an Emacs framework. Let's hear them (assuming they want to design such a thing). > perhaps these are specializations that can be deferred? You're, IMHO, overgeneralizing. I'm not interested (in this context) in reusable, high-level, well-designed, pattern-chocked systems to resolve general data classification problems. I just wanted a simple bug tracker to, you know, track bugs... Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 12:47 ` Juanma Barranquero 2004-06-12 15:38 ` Juri Linkov @ 2004-06-13 21:49 ` Richard Stallman 2004-06-13 23:03 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-06-13 21:49 UTC (permalink / raw) Cc: juri, emacs-devel I will not agree to use of a system that is hard for me to access, so we simply can't use the systems you have in mind. Please accept that decision. We will use a text file that I can access with CVS. The number of issues we want to record should not be as much as 50. It doesn't have a web interface for other people, It is not important for anyone to see this file except the Emcs developers, who will be looking for jobs they can work on to help make the release happen. no automatic way to extract statistics, The purpose of this database is to keep track of jobs that need to be done, for the release. We don't need statistics. They all will need to be done. it's *clumsy* beyond belief if you want to also store past (and fixed or rejected) issues, We can put the past issues into a DONE file in case anyone wants to look back at them. I don't know what you mean by "rejected" issues. If we don't believe a job needs to be done for the release, we won't ever put it in this file. Perhaps you are envisioning a bug tracking system. That's not what this we're trying to do here. has to be manually edited by us so outside people cannot enter issues, Only Emacs maintainers should edit this file. Outsiders cannot decide what jobs we need to do before the release, or mark them as done. needs that someone reads gnu-emacs-bugs@ reports and formats them as desired, That will be necessary no matter how we store the file. Only humans can decide what should go in the file. It cannot be done automatically. it has limited posibilities for searching and categorizing... We should not have so many items in the file that this becomes a significant issue. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 21:49 ` Richard Stallman @ 2004-06-13 23:03 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 23:03 UTC (permalink / raw) Cc: Richard Stallman On Sun, 13 Jun 2004 17:49:32 -0400, Richard Stallman <rms@gnu.org> wrote: > I will not agree to use of a system that is hard for me to access, so > we simply can't use the systems you have in mind. I don't have specific systems in mind. I've seen one or two that could be useful (Mantis, for example), because they seem easy. But I'm not married to any one answer. > The number of issues we want to record should not be as much as 50. You and I are talking about different things. I brought this up with regards to issues unfinished, from a release POV. I'm not sure what you include in that category: documentation to write, unfinished features, etc. But I certainly include in it bug reports, so I cannot put a limit on "the issues I want to record" of 50 or 100 or any other number. > The purpose of this database is to keep track of jobs that need to be > done, for the release. We don't need statistics. They all will > need to be done. [...] > We can put the past issues into a DONE file in case anyone wants to > look back at them. > > I don't know what you mean by "rejected" issues. If we don't believe > a job needs to be done for the release, we won't ever put it in this > file. I was talking about rejected bug reports, of course. The ones that are determined not to be a bug after all. > Perhaps you are envisioning a bug tracking system. That's not what > this we're trying to do here. Richard, excuse me, but till three days ago, no one was "trying to do" anything on this matter (in general; of course each one of us has their particular TODO). What you now want to do is clear, and what I'm interested in doing is too, and they aren't the same thing. I accept the decision, as you said; i.e., if you create an etc/ISSUES and put in it things to do, I'll use it. But this has *nothing* to do with having or not having a bug/issue tracker. You're talking of a planner of sorts. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-12 8:37 ` Bug tracking Juri Linkov 2004-06-12 9:38 ` Lars Hansen 2004-06-12 12:47 ` Juanma Barranquero @ 2004-06-13 0:01 ` Richard Stallman 2 siblings, 0 replies; 173+ messages in thread From: Richard Stallman @ 2004-06-13 0:01 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel An example of a record for such database: Summary: Do this and that Category: Custom Priority: High Status: Open Submitted: J. Random Hacker Assigned: J. Random Hacker That general plan is good. Instead of "Assigned", let's call it "Undertaken". Here normally people choose to undertake a task, rather than having it assigned to them. Also, we should always list the date when the task was undertaken, so we can tell when something has gone on for a long time without getting done. Completed items should be moved to a different file, so they don't clutter the status of work remaining to be done. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-11 10:53 ` Bug tracking (was: new *Help* argument highlighting) Juanma Barranquero ` (2 preceding siblings ...) 2004-06-12 1:50 ` Richard Stallman @ 2004-06-12 18:26 ` Karl Fogel 2004-06-12 20:03 ` Karl Fogel 2004-06-14 18:50 ` Bug tracking (was: new *Help* argument highlighting) Richard Stallman 3 siblings, 2 replies; 173+ messages in thread From: Karl Fogel @ 2004-06-12 18:26 UTC (permalink / raw) Cc: rms, emacs-devel Juanma Barranquero <jmbarranquero@wke.es> writes: > I said a while back that IMHO we should be a more structured project, in > the sense of having a plan for releases, with tentative dates, perhaps > even a release manager, etc. Someone (Eli, I think, but I'm speaking > from memory) opposed on the grounds that it costs human resources that > we don't have. But the Emacs project has 87 registered developers; > that's 33% more than Subversion, for example, and they seem to be doing > well on that regard (though, to be fair, they have four or five people > paid to work almost full-time on Subversion). A data point: The Subversion issue tracker database is almost entirely maintained by unpaid volunteers now. The salaried developers use it too, of course, but not in any fundamentally different way than the unpaid developers, and not proportionally more often. (There are actually two or three paid developers, by the way, not four or five). It's very common for experienced volunteers to help new reporters file bugs. For example, a longtime volunteer will often 1. See a newbie's post on the mailing list, 2. Solicit more details, 3. Instruct the newbie in how to file a useful bug report, 4. Watch to confirm that the newbie did so, 5. Add some developer-directed comments to the issue if appropriate, 6. Possibly fix it, if they are a developer themselves. This process is self-perpetuating. January's newbie becomes June's experienced volunteer. This thread (about whether to have a bug tracker for Emacs) is quite long, and I can't participate in detail due to time constraints, unfortunately. So I'll just say I'm very much in favor of having such a system -- and yes, to track individual bugs, not just large-scale future plans. In the long run, it would save humans much headache, even though there would be an initial cost to setting it up. RMS wrote: > I won't assume it is really good for other projects. > I don't know whether they have thought about it carefully. > Techies are often attracted to using the highest tech available > whether it is better or not. > > It is clear that using a special "issue tracker" would be extra work > for many people, and it would be hard for me to use. I understand your skepticism, and in fact harbored similar reservations when we started Subversion. However, we did think about it and discuss it quite carefully, both then and now. We have no doubt now that it's actually helping us. It serves a real need; otherwise we would have dispensed with it long ago. Regarding your comment that using an issue tracker would be hard for you: note that it is not necessary that every developer use the bug tracker, or use it in the same way, for it to be useful to the project as a whole. (I think over time you would find yourself using it too, though, as using it is often more efficient than avoiding it.) There is no particular need for this thread to come to a definite conclusion. If someone sets up a good tracker and starts using it, others will follow. However, it would be nice if the tracker were at Savannah and advertised from the project pages in some obvious way; and especially nice if 'M-x report-emacs-bug' and other "official" sources named it as the canonical database for Emacs bugs. I wish I had time to set such a thing up, but don't right now. I hope someone else does. FWIW, the Subversion bug tracker is a [non-portably customized] version of IssueZilla. It's entirely web-based. Lack of a good email interface is one of its serious flaws, though it hasn't been a fatal flaw for us. I have no strong opinion about which bug tracker Emacs should use (except that it be Free of course). Just the subset of features common to all bug trackers would already be useful for Emacs... -Karl ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-12 18:26 ` Bug tracking (was: new *Help* argument highlighting) Karl Fogel @ 2004-06-12 20:03 ` Karl Fogel 2004-06-13 2:39 ` Miles Bader 2004-06-14 18:50 ` Bug tracking (was: new *Help* argument highlighting) Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Karl Fogel @ 2004-06-12 20:03 UTC (permalink / raw) Cc: rms, emacs-devel Karl Fogel <kfogel@floss.red-bean.com> writes: > I wish I had time to set such a thing up, but don't right now. I hope > someone else does. FWIW, the Subversion bug tracker is a > [non-portably customized] version of IssueZilla. It's entirely > web-based. Lack of a good email interface is one of its serious ^^^^^^^^^^ Sorry, I misspoke. While the tracker does not accept input via email, it does send *out* an email (to a list) whenever a change is made to an issue. This is vital functionality, of course. You can read email to follow what's going on with bugs, then visit the web forms only when you need to make a comment or whatever. (Of course, taking input via email would be even nicer.) -Karl ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-12 20:03 ` Karl Fogel @ 2004-06-13 2:39 ` Miles Bader 2004-06-12 21:01 ` Karl Fogel ` (3 more replies) 0 siblings, 4 replies; 173+ messages in thread From: Miles Bader @ 2004-06-13 2:39 UTC (permalink / raw) Cc: Juanma Barranquero, rms, emacs-devel On Sat, Jun 12, 2004 at 03:03:25PM -0500, Karl Fogel wrote: > While the tracker does not accept input via email, it does send *out* > an email (to a list) whenever a change is made to an issue. This is > vital functionality, of course. You can read email to follow what's > going on with bugs, then visit the web forms only when you need to > make a comment or whatever. > > (Of course, taking input via email would be even nicer.) It's critical, IMO -- my experience of using mozilla and savannah's bug tracker is that the annoyance of having to go to the web site and muddle through the forms significantly decreased the likelihood that I would bother (it was fine the first N times, but after a while I started to dread it). -Miles -- "Unless there are slaves to do the ugly, horrible, uninteresting work, culture and contemplation become almost impossible. Human slavery is wrong, insecure, and demoralizing. On mechanical slavery, on the slavery of the machine, the future of the world depends." -Oscar Wilde, "The Soul of Man Under Socialism" ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 2:39 ` Miles Bader @ 2004-06-12 21:01 ` Karl Fogel 2004-06-13 3:34 ` Miles Bader 2004-06-13 9:06 ` David Kastrup ` (2 subsequent siblings) 3 siblings, 1 reply; 173+ messages in thread From: Karl Fogel @ 2004-06-12 21:01 UTC (permalink / raw) Cc: Juanma Barranquero, rms, emacs-devel Miles Bader <miles@gnu.org> writes: > It's critical, IMO -- my experience of using mozilla and savannah's bug > tracker is that the annoyance of having to go to the web site and muddle > through the forms significantly decreased the likelihood that I would bother > (it was fine the first N times, but after a while I started to dread it). Note that filing bugs by email significantly increases the likelihood of duplicate issues. One of the advantages of going to the web site is that you can first search to see if the bug already exists in the database. Whereas if you fire off an email, there's no query step. Sure, the editing environment for an email is better -- Emacs buffer, rather than web form -- but the web forms *are* also a realtime database front end, and that makes a difference too. I'm not sure what interface made you "muddle through forms". In my experience, if you're filing a new bug, there's one form to fill out, and if you're modifying an existing bug, then you just go to a URL and make the appropriate change. It's not that hard; I certainly don't dread it. Administering existing bugs by email would be nice, of course. For example, I'd like to be able to respond to an email sent by the issue tracker, and have my response cause some new change to the bug. But lack of this feature is hardly a showstopper. Please, let's not aim for perfection, that way lies madness. Some issue tracker is better than no issue tracker, and if one sets up the appropriate bookmarks and URLs, one should never have to muddle through multiple forms to get things done. -Karl ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-12 21:01 ` Karl Fogel @ 2004-06-13 3:34 ` Miles Bader 2004-06-12 21:52 ` Karl Fogel ` (2 more replies) 0 siblings, 3 replies; 173+ messages in thread From: Miles Bader @ 2004-06-13 3:34 UTC (permalink / raw) Cc: Juanma Barranquero, emacs-devel, rms, Miles Bader On Sat, Jun 12, 2004 at 04:01:15PM -0500, Karl Fogel wrote: > > It's critical, IMO -- my experience of using mozilla and savannah's bug > > tracker is that the annoyance of having to go to the web site and muddle > > through the forms significantly decreased the likelihood that I would > > bother (it was fine the first N times, but after a while I started to > > dread it). > > Note that filing bugs by email significantly increases the likelihood > of duplicate issues. > > One of the advantages of going to the web site is that you can first > search to see if the bug already exists in the database. Whereas if > you fire off an email, there's no query step. Sure, the editing > environment for an email is better -- Emacs buffer, rather than web > form -- but the web forms *are* also a realtime database front end, > and that makes a difference too. Indeed for the original bug submission, it helps to be able to search the database, but it's not necessary to use the web to do that (even though you might want to use an http/html-based interface of some sort for maximum firewall transparency) -- see debian's bug system for an example of a system that does most of the work on the client, but also uses a network database-access protocol of some sort to allow the user to look for old bugs (it doesn't a perfect interface; something emacs based would likely be much better). Note that another important area of bug submission, automatic detection of environmental parameters, can't be done by a web interface, meaning that the user is responsible for filling in lots of fussy details, which can make bug reporting a real chore. For many `bug management' tasks, the ease of automation and integration into one's normal workflow make email-friendly systems far superior, especially if there's an ancillary database-search mechanism that is easily accessible for automation (i.e. simple enough for an elisp program to use). > Please, let's not aim for perfection, that way lies madness. I agree, but I'm not suggesting that, merely trying to establish some minimal standards. Purely web-based systems are non-starter. Thanks, -Miles -- `Life is a boundless sea of bitterness' ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 3:34 ` Miles Bader @ 2004-06-12 21:52 ` Karl Fogel 2004-06-13 11:31 ` Bug tracking Juanma Barranquero 2004-06-13 12:19 ` Bug tracking (was: new *Help* argument highlighting) Jason Rumney 2 siblings, 0 replies; 173+ messages in thread From: Karl Fogel @ 2004-06-12 21:52 UTC (permalink / raw) Cc: Juanma Barranquero, rms, emacs-devel Miles Bader <miles@gnu.org> writes: > I agree, but I'm not suggesting that, merely trying to establish some > minimal standards. Purely web-based systems are non-starter. They're not perfect, but they don't have to be a non-starter. After all, you're not using *any* bug tracker right now. So if some Emacs developers start using a web-based system, and you decide not to, we're all still better off in absolute terms than we are now, right? All I'm asking is that, if you're not going to set up an email-accessible bug tracking system yourself, that you not object if someone else sets up a purely web-based one. You don't have to use it, though I hope you would at least try it. Many, many people use purely web-based bug trackers, and think that they are better off than with no bug tracker at all. -Karl ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 3:34 ` Miles Bader 2004-06-12 21:52 ` Karl Fogel @ 2004-06-13 11:31 ` Juanma Barranquero 2004-06-13 13:28 ` Miles Bader 2004-06-13 12:19 ` Bug tracking (was: new *Help* argument highlighting) Jason Rumney 2 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 11:31 UTC (permalink / raw) Cc: Miles Bader On Sat, 12 Jun 2004 23:34:52 -0400, Miles Bader <miles@gnu.org> wrote: > Indeed for the original bug submission, it helps to be able to search the > database, but it's not necessary to use the web to do that (even though you > might want to use an http/html-based interface of some sort for maximum > firewall transparency) -- see debian's bug system for an example of a system > that does most of the work on the client, but also uses a network > database-access protocol of some sort to allow the user to look for old bugs > (it doesn't a perfect interface; something emacs based would likely be much > better). I think we agree that, with Emacs, a better system could be done (if not in absolute terms, definitely better for Emacs-using developers tracking Emacs-using users :) Where we differ is, these Emacs-based systems do not exist. We don't have a project or a group of people set to create one, we don't have, as far as I can see, even one developer with the time or the inclination to create it. Other systems are less perfect, but the quality of already existing weights a lot. > Purely web-based systems are non-starter. Here, I agree with Karl: we don't have an issue tracker. How could having one, even if web-based, be a non-starter? Nobody's forced to use it. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 11:31 ` Bug tracking Juanma Barranquero @ 2004-06-13 13:28 ` Miles Bader 2004-06-13 14:38 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-06-13 13:28 UTC (permalink / raw) Cc: Miles Bader, emacs-devel On Sun, Jun 13, 2004 at 01:31:55PM +0200, Juanma Barranquero wrote: > > Purely web-based systems are non-starter. > > Here, I agree with Karl: we don't have an issue tracker. How could having > one, even if web-based, be a non-starter? Well obviously it's not a comparison against zero; people have always managed somehow, via files in the source tree, or mailing lists, or whatever. These ad-hoc systems may not be all that great -- but they may very well be better than something like what savannah offers. > Nobody's forced to use it. Sure, use whatever you want. -Miles -- "Unless there are slaves to do the ugly, horrible, uninteresting work, culture and contemplation become almost impossible. Human slavery is wrong, insecure, and demoralizing. On mechanical slavery, on the slavery of the machine, the future of the world depends." -Oscar Wilde, "The Soul of Man Under Socialism" ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 13:28 ` Miles Bader @ 2004-06-13 14:38 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-06-13 14:38 UTC (permalink / raw) Cc: Miles Bader On Sun, 13 Jun 2004 09:28:46 -0400, Miles Bader <miles@gnu.org> wrote: > Well obviously it's not a comparison against zero; people have always managed > somehow, via files in the source tree, or mailing lists, or whatever. Sure, you're right. But my bringing this whole issue is because I feel we manage, but we don't have information enough. Perhaps bugs would be better squashed if people were more conscious about how many have been reported, their severity, and their status. > These ad-hoc systems may not be all that great -- but they may very well be > better than something like what savannah offers. OK. But what Savannah offers is not the only option (I hope). /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 3:34 ` Miles Bader 2004-06-12 21:52 ` Karl Fogel 2004-06-13 11:31 ` Bug tracking Juanma Barranquero @ 2004-06-13 12:19 ` Jason Rumney 2 siblings, 0 replies; 173+ messages in thread From: Jason Rumney @ 2004-06-13 12:19 UTC (permalink / raw) Cc: kfogel, Juanma Barranquero, rms, emacs-devel Miles Bader <miles@gnu.org> writes: >> Please, let's not aim for perfection, that way lies madness. > > I agree, but I'm not suggesting that, merely trying to establish some > minimal standards. Purely web-based systems are non-starter. With the url library now part of Emacs, I think even a web-based system could be made usable. It just requires a volunteer to write a mode for using it from within Emacs. It would be nice to have a gateway to/from the bug mailing lists, but that would probably involve more work for sysadmins, so we could come up with some elisp functions that a few volunteers could use to enter bug reports from the mailing lists and handle replies from people like RMS who are not always online when they are dealing with bugs, so anything other than email is unusable. As for concerns about the GNU sysadmins having to maintain extra software, there is already a bug tracker on savannah which other projects are using. It is disabled for Emacs because users were being misled into reporting bugs there but the developers never used it. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 2:39 ` Miles Bader 2004-06-12 21:01 ` Karl Fogel @ 2004-06-13 9:06 ` David Kastrup 2004-06-13 14:26 ` Robert J. Chassell 2004-06-13 14:29 ` Bug tracking Oliver Scholz 3 siblings, 0 replies; 173+ messages in thread From: David Kastrup @ 2004-06-13 9:06 UTC (permalink / raw) Cc: kfogel, Juanma Barranquero, rms, emacs-devel Miles Bader <miles@gnu.org> writes: > On Sat, Jun 12, 2004 at 03:03:25PM -0500, Karl Fogel wrote: > > While the tracker does not accept input via email, it does send > > *out* an email (to a list) whenever a change is made to an issue. > > This is vital functionality, of course. You can read email to > > follow what's going on with bugs, then visit the web forms only > > when you need to make a comment or whatever. > > > > (Of course, taking input via email would be even nicer.) > > It's critical, IMO -- my experience of using mozilla and savannah's > bug tracker is that the annoyance of having to go to the web site > and muddle through the forms significantly decreased the likelihood > that I would bother (it was fine the first N times, but after a > while I started to dread it). Agreed. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 2:39 ` Miles Bader 2004-06-12 21:01 ` Karl Fogel 2004-06-13 9:06 ` David Kastrup @ 2004-06-13 14:26 ` Robert J. Chassell 2004-06-13 14:36 ` Karl Fogel 2004-06-13 14:29 ` Bug tracking Oliver Scholz 3 siblings, 1 reply; 173+ messages in thread From: Robert J. Chassell @ 2004-06-13 14:26 UTC (permalink / raw) > (Of course, taking input via email would be even nicer.) It's critical, IMO -- my experience of using mozilla and savannah's bug tracker is that the annoyance of having to go to the web site and muddle through the forms significantly decreased the likelihood that I would bother (it was fine the first N times, but after a while I started to dread it). Miles is right. Please, always consider the person who is connecting over a slow and unreliable connection. Normally, I do not connect too slowly -- right now I am at 26400 baud -- but sometimes my connections are bad. Other people suffer the same way. Of course, my sister has fast and pretty reliable connection. When I visit her, I tend to forget all the annoyances of slow, unreliable, expensive, or non-existent connections..... :) Note that filing bugs by email significantly increases the likelihood of duplicate issues. Yes, that will happen. You either exclude some people, like Miles and RMS, or you deal with duplicates. ... So if some Emacs developers start using a web-based system, and you decide not to, we're all still better off in absolute terms than we are now, right? No, that does not follow. People outside the web-based system may end up doing less, because they become afraid that their work will duplicate others and they do not want to waste their time. -- Robert J. Chassell Rattlesnake Enterprises As I slowly update it, bob@rattlesnake.com I rewrite a "What's New" segment for http://www.rattlesnake.com ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 14:26 ` Robert J. Chassell @ 2004-06-13 14:36 ` Karl Fogel 2004-06-13 23:29 ` Robert J. Chassell 0 siblings, 1 reply; 173+ messages in thread From: Karl Fogel @ 2004-06-13 14:36 UTC (permalink / raw) Cc: emacs-devel "Robert J. Chassell" <bob@rattlesnake.com> writes: > No, that does not follow. People outside the web-based system may end > up doing less, because they become afraid that their work will > duplicate others and they do not want to waste their time. Why would those people not worry that their efforts are duplicated right now? ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-13 14:36 ` Karl Fogel @ 2004-06-13 23:29 ` Robert J. Chassell 0 siblings, 0 replies; 173+ messages in thread From: Robert J. Chassell @ 2004-06-13 23:29 UTC (permalink / raw) "Robert J. Chassell" <bob@rattlesnake.com> writes: > No, that does not follow. People outside the web-based system may end > up doing less, because they become afraid that their work will > duplicate others and they do not want to waste their time. kfogel@red-bean.com asked Why would those people not worry that their efforts are duplicated right now? Because right now people expect to make duplicate reports, and then, usually, only one person works on the problem. When reporting and fixing are combined in a `fast' group, then those in the `slow' group may not bother either to report or to volunteer to do something. -- Robert J. Chassell Rattlesnake Enterprises As I slowly update it, bob@rattlesnake.com I rewrite a "What's New" segment for http://www.rattlesnake.com ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 2:39 ` Miles Bader ` (2 preceding siblings ...) 2004-06-13 14:26 ` Robert J. Chassell @ 2004-06-13 14:29 ` Oliver Scholz 2004-06-14 18:50 ` Richard Stallman 3 siblings, 1 reply; 173+ messages in thread From: Oliver Scholz @ 2004-06-13 14:29 UTC (permalink / raw) Cc: Juanma Barranquero, rms, emacs-devel Miles Bader <miles@gnu.org> writes: > On Sat, Jun 12, 2004 at 03:03:25PM -0500, Karl Fogel wrote: [...] >> (Of course, taking input via email would be even nicer.) > > It's critical, IMO -- my experience of using mozilla and savannah's bug > tracker is that the annoyance of having to go to the web site and muddle > through the forms significantly decreased the likelihood that I would bother > (it was fine the first N times, but after a while I started to dread it). Please bear with my ignorance, if I happen to say something stupid; but couldn't just Emacs talk to the bug tracking system directly so that a user has no need to start a browser? I imagine that this would be less annoying. Of course this would require Emacs being able to do http. (ISTR that there was talk about adding url to Emacs. Anyways there is a simple package for http posts out there, written by Alex Schröder IIRC.) I envision something like this: (defun example-report-emacs-bug () (interactive) (switch-to-buffer (generate-new-buffer "*Emacs Bug Report*")) (let ((widgets nil)) (widget-insert "Bug Report\n\nBla ... blub ...\n\n" (make-string fill-column ?-) "\n") (push (widget-create 'editable-field :tag "Your mail address" :format "%t: %v" :size 40 :value user-mail-address :value-to-external (lambda (wid val) (format "<email>%s</email>" val))) widgets) (widget-insert "\n\n") (push (widget-create 'text :format "%t\n%v" :tag "Please describe the symptoms of the bug" :value "\n\n\n\n" :value-to-external (lambda (wid val) (format "<descr>\n%s\n</descr>" val))) widgets) (widget-insert "\n\n") (widget-create 'push-button :tag "Submit Bug Report" :notify `(lambda (&rest ignore) (example-submit-emacs-bug ',(nreverse widgets)))) (widget-insert "\n\n" (make-string fill-column ?-) "\n\n By default Emacs will try to post this bug report via http to http://savannah.gnu.org/lirum/larum. If you want to send it via e-mail instead, please activate the check box below.\n\n") (widget-create 'checkbox :tag "Send as e-mail" :format "%v %t") (widget-insert "\n\nEmacs will also send the information about your environment \(below you can see which information exactly). If you do not want this, please activate the check box below.\n\n") (widget-create 'checkbox :format "%v %t" :tag "Do not send information about my environment") (widget-insert "\n\n" (make-string fill-column ?-) "\n\n... display the information to be sent here ...") (use-local-map widget-keymap) (widget-setup))) (defun example-submit-emacs-bug (widgets) (pop-to-buffer (generate-new-buffer "*example*")) (insert (format "<bug-report>\n%s\n</bug-report>" (mapconcat 'widget-value widgets "\n")))) Oliver -- Oliver Scholz 26 Prairial an 212 de la Révolution Taunusstr. 25 Liberté, Egalité, Fraternité! 60329 Frankfurt a. M. http://www.jungdemokratenhessen.de Tel. (069) 97 40 99 42 http://www.jdjl.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-13 14:29 ` Bug tracking Oliver Scholz @ 2004-06-14 18:50 ` Richard Stallman 2004-06-14 21:17 ` Tak Ota 0 siblings, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-06-14 18:50 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel, miles Please bear with my ignorance, if I happen to say something stupid; but couldn't just Emacs talk to the bug tracking system directly so that a user has no need to start a browser? This does not solve the problem. The problem is that a web-based system requires a net connection. Using Emacs as the client rather than an ordinary browser might indeed be an improvement in such systems but it won't help those who have no net connection--such as me. I have decided that for tracking issues we should use a text file, not a complex system, and certainly not something web-based. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 18:50 ` Richard Stallman @ 2004-06-14 21:17 ` Tak Ota 2004-06-16 16:57 ` Richard Stallman 0 siblings, 1 reply; 173+ messages in thread From: Tak Ota @ 2004-06-14 21:17 UTC (permalink / raw) Cc: epameinondas, jmbarranquero, rms, miles Isn't there a system that supports both UUCP like batch email service as well as web-based service? I am not a strong advocate of either system but your comments do not sound forward-looking but anachronism. Who knows, we may run emacs on a cell phone someday. I am awfully impressed by the advancement of today's technology. I can compile and run the latest emacs on a MIPS in my target embedded system while I had to run a fastest workstation for several hours to compile emacs which was much smaller than today. That was 15 years ago. -Tak Mon, 14 Jun 2004 14:50:16 -0400: Richard Stallman <rms@gnu.org> wrote: > Please bear with my ignorance, if I happen to say something stupid; > but couldn't just Emacs talk to the bug tracking system directly so > that a user has no need to start a browser? > > This does not solve the problem. The problem is that a web-based > system requires a net connection. Using Emacs as the client rather > than an ordinary browser might indeed be an improvement in such systems > but it won't help those who have no net connection--such as me. > > I have decided that for tracking issues we should use a text file, > not a complex system, and certainly not something web-based. > > > > _______________________________________________ > Emacs-devel mailing list > Emacs-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-devel ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-14 21:17 ` Tak Ota @ 2004-06-16 16:57 ` Richard Stallman 2004-06-16 17:59 ` Tak Ota 0 siblings, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-06-16 16:57 UTC (permalink / raw) Cc: epameinondas, jmbarranquero, miles, emacs-devel Isn't there a system that supports both UUCP like batch email service as well as web-based service? I am not a strong advocate of either system but your comments do not sound forward-looking but anachronism. It is not my goal to be "forward-looking" for its own sake. I made this decision based on practicalities. When you describe my decision to use low tech as an "anachronism", that exaggeration means only a sneer at what is unfashionable. That is unjust, so please don't do it here. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking 2004-06-16 16:57 ` Richard Stallman @ 2004-06-16 17:59 ` Tak Ota 0 siblings, 0 replies; 173+ messages in thread From: Tak Ota @ 2004-06-16 17:59 UTC (permalink / raw) Cc: epameinondas, jmbarranquero, miles, emacs-devel Wed, 16 Jun 2004 12:57:51 -0400: Richard Stallman <rms@gnu.org> wrote: > It is not my goal to be "forward-looking" for its own sake. I made > this decision based on practicalities. I understand this but what is practical is quite a subjective issue. My understanding is that some people raised a question that current emacs bug tracking mechanism was getting less practical than what was available out there. > When you describe my decision to use low tech as an "anachronism", > that exaggeration means only a sneer at what is unfashionable. > That is unjust, so please don't do it here. I am sorry for it sounded as sneering to you. I have no such intention. As network proliferate throughout the society emacs is becoming net savvy too. What I wanted to express was let us not go against it but take advantage of it as long as people without net connection are not sacrificed. I do not care about a fashion but the speed, accuracy, efficiency and convenience of the development. What I meant by "anachronism" was that let's not bound rest of the people to the people who don't have network connection. I regret I wrote that message. I should have spent my time for seeking a solution that I believe is right than writing that message. I apologize I wasted your time as well. -Tak ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-12 18:26 ` Bug tracking (was: new *Help* argument highlighting) Karl Fogel 2004-06-12 20:03 ` Karl Fogel @ 2004-06-14 18:50 ` Richard Stallman 2004-06-14 20:19 ` Karl Fogel 1 sibling, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-06-14 18:50 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel > I said a while back that IMHO we should be a more structured project, in > the sense of having a plan for releases, with tentative dates, perhaps > even a release manager, etc. Thanks for the suggestion, but I do not like the idea of going that way. (I think over time you would find yourself using it too, though, as using it is often more efficient than avoiding it.) If you think that I could "find myself" using a web-based system, you must not understand the difficulty. If it is web based, I can't access it. There is little chance I will "find myself" having a net connection more of the time. That is the reason for my decision that we will not use a web-based system to hold data about Emacs development. Please consider the decision final; let's not keep discussing the matter. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-14 18:50 ` Bug tracking (was: new *Help* argument highlighting) Richard Stallman @ 2004-06-14 20:19 ` Karl Fogel 2004-06-16 16:58 ` Richard Stallman 0 siblings, 1 reply; 173+ messages in thread From: Karl Fogel @ 2004-06-14 20:19 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel Richard Stallman <rms@gnu.org> writes: > That is the reason for my decision that we will not use a web-based > system to hold data about Emacs development. [Note: I'm talking about a bug tracker now.] Would it be okay to have a system where the bug "database" (which might be some sort of structured text file) is stored in the CVS tree, and the interface to the database is via Emacs itself? (This wouldn't include email access... But on the other hand many of us read email in Emacs anyway, so manually integrating information from email into that database wouldn't be so hard.) Would such a system meet your constraints? -Karl ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: Bug tracking (was: new *Help* argument highlighting) 2004-06-14 20:19 ` Karl Fogel @ 2004-06-16 16:58 ` Richard Stallman 0 siblings, 0 replies; 173+ messages in thread From: Richard Stallman @ 2004-06-16 16:58 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel Would it be okay to have a system where the bug "database" (which might be some sort of structured text file) is stored in the CVS tree, and the interface to the database is via Emacs itself? I am not sure whether this would be practical for me. It depends on the size of the data. I only sometimes have good enough connection that I can do a cvs update on Emacs. However, if the bulk of data is much smaller, so I could update it in a couple of minutes on a phone line, that would be practical everywhere. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 8:15 ` Miles Bader 2004-05-12 8:58 ` Juanma Barranquero @ 2004-05-12 10:47 ` Kenichi Handa 2004-05-12 11:10 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Kenichi Handa @ 2004-05-12 10:47 UTC (permalink / raw) Cc: jmbarranquero, rms, emacs-devel In article <buoad0ecb97.fsf@mcspd15.ucom.lsi.nec.co.jp>, Miles Bader <miles@lsi.nec.co.jp> writes: >> That sounds like a good idea. It would be more reliable than assuming >> that upper-case words are argument names. > Why not use the texinfo convention, @var{name} ? Nice & easy to parse, > unlikely to occur in a docstring, and pretty understandable even if > _not_ translated into propertized text. It might also make it easier > when updating a docstring and the manual at the same time. > There are probably other @-escapes which could be useful for docstrings too. I prefer a shorter convention something like @NAME or $NAME. --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 10:47 ` new *Help* argument highlighting Kenichi Handa @ 2004-05-12 11:10 ` Juanma Barranquero 2004-05-12 11:25 ` Kenichi Handa 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 11:10 UTC (permalink / raw) Cc: Kenichi Handa On Wed, 12 May 2004 19:47:58 +0900 (JST) Kenichi Handa <handa@m17n.org> wrote: > I prefer a shorter convention something like @NAME or $NAME. The probability of a collision with current docstrings is much higher. $NAME could happen easily in shell-related modules, and both in perl-related ones. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 11:10 ` Juanma Barranquero @ 2004-05-12 11:25 ` Kenichi Handa 2004-05-12 11:47 ` Juanma Barranquero 2004-05-12 12:53 ` Juanma Barranquero 0 siblings, 2 replies; 173+ messages in thread From: Kenichi Handa @ 2004-05-12 11:25 UTC (permalink / raw) Cc: emacs-devel In article <20040512130729.FB5D.JMBARRANQUERO@wke.es>, Juanma Barranquero <jmbarranquero@wke.es> writes: > On Wed, 12 May 2004 19:47:58 +0900 (JST) > Kenichi Handa <handa@m17n.org> wrote: >> I prefer a shorter convention something like @NAME or $NAME. > The probability of a collision with current docstrings is much higher. > $NAME could happen easily in shell-related modules, and both in > perl-related ones. Really? I think it's very rare that a docstring of a funciton that has an argument NAME contains a reference to a shell/perl variable NAME in the form $NAME? I grepped "\$[a-z]" in etc/DOC but found none. The reason I prefer a shorter name is that I want to keep the first line of a docstring in a source code short because we can't fill it. And, if we use @var{NAME}, it's get a little bit difficult to check if the first line fits in 80 columns. --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 11:25 ` Kenichi Handa @ 2004-05-12 11:47 ` Juanma Barranquero 2004-05-12 13:01 ` Kenichi Handa 2004-05-12 12:53 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 11:47 UTC (permalink / raw) Cc: Kenichi Handa On Wed, 12 May 2004 20:25:38 +0900 (JST) Kenichi Handa <handa@m17n.org> wrote: > Really? I think it's very rare that a docstring of a > funciton that has an argument NAME contains a reference to a > shell/perl variable NAME in the form $NAME? OK, but we're assuming different things. With @var{ARG}, it wouldn't be necessary to pre-scan the usage info to heuristically find the args, as it is done now. A simple walk through the "doc" part of the docstring would allow to find @var{ARG}s, highlight them and save them, so in fact the opposite is true: the information gathered processing the doc would allow to highlight the usage info, so arguments not referenced would *not* be highlighted in the usage info either (and, in this way, alerting the doc writer and the user that the argument is not described in the doc). That would also eliminate any need to recognize CL-style arglists, BTW. What you propose is as is done now: scan the usage, recognize the args, and then substitute the args in the doc. That is helpful, because it would prevent accidental highlighting, but that case is rare even now (defstruct, for example, mentions NAME-SLOT accessors, and the reference is not highlighted), so perhaps is not worth the change. To be fair, if implemented as I suggest, both the current scan-usage-then-doc and my proposed scan-doc-then-usage methods would have to coexist (we're not going to retroactively update thousands of docstrings), but at least we could do: scan-doc-then-usage; if it does not find any @{var}, fall back to old method. > I grepped "\$[a-z]" in etc/DOC but found none. Hu? C:\...\etc> grep "\$[A-Za-z]" DOC `$FOO' where FOO is an environment variable name means to substitute `$FOO' where FOO is an environment variable name means to substitute the entire variable name in braces. For instance, in `ab$cd-x', `$cd' is treated as an environment variable. For example, invoke "emacs -batch -f batch-byte-compile $emacs/ ~/*.el". Insert a copyright by $ORGANIZATION notice at cursor. $ type sys$input For example, invoke "emacs -batch -f batch-info-validate $info/ ~/*.info" nil means the default, which is ("/usr/spool/mail/$USER") And \@[A-Za-z] returns 33 hits. > The reason I prefer a shorter name is that I want to keep > the first line of a docstring in a source code short because > we can't fill it. Yes, I imagine as much. > And, if we use @var{NAME}, it's get a > little bit difficult to check if the first line fits in 80 > columns. On one hand, you're not sure $NAME (or @var{NAME}) is going to be substituted by a four-letter highlighted NAME (the user could make help-arg-highlighting-function to do something weird). I admit this is not likely. On the other hand, we could "fix" filling for emacs-lisp docstrings so it recognizes @var{NAME} and acts accordingly. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 11:47 ` Juanma Barranquero @ 2004-05-12 13:01 ` Kenichi Handa 2004-05-12 13:15 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Kenichi Handa @ 2004-05-12 13:01 UTC (permalink / raw) Cc: emacs-devel In article <20040512133037.FB60.JMBARRANQUERO@wke.es>, Juanma Barranquero <jmbarranquero@wke.es> writes: > With @var{ARG}, it wouldn't be necessary to pre-scan the usage info to > heuristically find the args, as it is done now. A simple walk through > the "doc" part of the docstring would allow to find @var{ARG}s, highlight > them and save them, so in fact the opposite is true: the information > gathered processing the doc would allow to highlight the usage info, so > arguments not referenced would *not* be highlighted in the usage info > either (and, in this way, alerting the doc writer and the user that the > argument is not described in the doc). That would also eliminate any > need to recognize CL-style arglists, BTW. > What you propose is as is done now: scan the usage, recognize the args, > and then substitute the args in the doc. That is helpful, because it > would prevent accidental highlighting, but that case is rare even now > (defstruct, for example, mentions NAME-SLOT accessors, and the reference > is not highlighted), so perhaps is not worth the change. I see your point. The above discussion depends on that @var{NAME} much much rarely appears in a docstring than $NAME. But, with another grep ('\( \|^\)$[a-z-][a-z-]*\( \|$\)'), I found only this docstring contains $NAME that will be treated as an arg unless we prescan usage. ------------------------------------------------------------ copyright is an interactive autoloaded Lisp function in `copyright'. (copyright &optional STR ARG) Insert a copyright by $ORGANIZATION notice at cursor. ------------------------------------------------------------ We can change it to: Insert a copyright by `$ORGANIZATION' notice at cursor. Then we can use scan-doc-then-usage method even with $NAME convention. >> I grepped "\$[a-z]" in etc/DOC but found none. > Hu? > C:\...\etc> grep "\$[A-Za-z]" DOC > `$FOO' where FOO is an environment variable name means to substitute > `$FOO' where FOO is an environment variable name means to substitute Ah, I meant that I found none that results in mis-highlighting. >> The reason I prefer a shorter name is that I want to keep >> the first line of a docstring in a source code short because >> we can't fill it. > Yes, I imagine as much. >> And, if we use @var{NAME}, it's get a >> little bit difficult to check if the first line fits in 80 >> columns. > On one hand, you're not sure $NAME (or @var{NAME}) is going to be > substituted by a four-letter highlighted NAME (the user could make > help-arg-highlighting-function to do something weird). I admit this is > not likely. At least, $NAME convention is easier for keeping the first line in 80 column even without eliminating `$'s. > On the other hand, we could "fix" filling for emacs-lisp docstrings so > it recognizes @var{NAME} and acts accordingly. What do you mean? The first `sentence' should never be broken into multiple lines. So only the meaningful "fix" for fill is to make it recognize the emacs-lisp docstrings and keep the first line untouched. --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 13:01 ` Kenichi Handa @ 2004-05-12 13:15 ` Juanma Barranquero 2004-05-12 14:06 ` Miles Bader 2004-05-17 1:16 ` new *Help* argument highlighting Kenichi Handa 0 siblings, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 13:15 UTC (permalink / raw) Cc: Kenichi Handa On Wed, 12 May 2004 22:01:41 +0900 (JST) Kenichi Handa <handa@m17n.org> wrote: > I see your point. The above discussion depends on that > @var{NAME} much much rarely appears in a docstring than $NAME. Yes. > found only this docstring contains $NAME that will be treated > as an arg unless we prescan usage. > ------------------------------------------------------------ > copyright is an interactive autoloaded Lisp function in `copyright'. > (copyright &optional STR ARG) > > Insert a copyright by $ORGANIZATION notice at cursor. > ------------------------------------------------------------ > > We can change it to: > > Insert a copyright by `$ORGANIZATION' notice at cursor. I'm not sure I understand. Are you assuming `$NAME' could not be a valid argument reference? > What do you mean? The first `sentence' should never be > broken into multiple lines. So only the meaningful "fix" > for fill is to make it recognize the emacs-lisp docstrings > and keep the first line untouched. Well, filling for docstrings could work so it doesn't wrap the first line, but marks chars exceding 80 in a warning face orwhatever. It could take into account $var{NAME} or $NAME$ expansion (assuming a length-preserving highlighting) when computing the number of columns, not only for the first line, but the rest of the docstring. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 13:15 ` Juanma Barranquero @ 2004-05-12 14:06 ` Miles Bader 2004-05-12 13:09 ` Kim F. Storm 2004-05-12 23:28 ` fill docstring (Re: new *Help* argument highlighting) Kenichi Handa 2004-05-17 1:16 ` new *Help* argument highlighting Kenichi Handa 1 sibling, 2 replies; 173+ messages in thread From: Miles Bader @ 2004-05-12 14:06 UTC (permalink / raw) Cc: Kenichi Handa, emacs-devel On Wed, May 12, 2004 at 03:15:01PM +0200, Juanma Barranquero wrote: > > What do you mean? The first `sentence' should never be > > broken into multiple lines. So only the meaningful "fix" > > for fill is to make it recognize the emacs-lisp docstrings > > and keep the first line untouched. It already does that. -Miles -- Is it true that nothing can be known? If so how do we know this? -Woody Allen ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 14:06 ` Miles Bader @ 2004-05-12 13:09 ` Kim F. Storm 2004-05-12 22:18 ` Miles Bader 2004-05-12 23:28 ` fill docstring (Re: new *Help* argument highlighting) Kenichi Handa 1 sibling, 1 reply; 173+ messages in thread From: Kim F. Storm @ 2004-05-12 13:09 UTC (permalink / raw) Cc: emacs-devel Miles Bader <miles@gnu.org> writes: > On Wed, May 12, 2004 at 03:15:01PM +0200, Juanma Barranquero wrote: > > > What do you mean? The first `sentence' should never be > > > broken into multiple lines. So only the meaningful "fix" > > > for fill is to make it recognize the emacs-lisp docstrings > > > and keep the first line untouched. > > It already does that. Also in DEFUN:s in C code ? -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 13:09 ` Kim F. Storm @ 2004-05-12 22:18 ` Miles Bader 2004-05-17 1:14 ` Kenichi Handa 2004-05-17 14:46 ` Kim F. Storm 0 siblings, 2 replies; 173+ messages in thread From: Miles Bader @ 2004-05-12 22:18 UTC (permalink / raw) Cc: emacs-devel, Miles Bader On Wed, May 12, 2004 at 03:09:26PM +0200, Kim F. Storm wrote: > > > > So only the meaningful "fix" > > > > for fill is to make it recognize the emacs-lisp docstrings > > > > and keep the first line untouched. > > > > It already does that. > > Also in DEFUN:s in C code ? Not to the best of my knowledge. But it hardly makes a difference -- the first line of doc: comments in C-code DEFUNs are typically indented so much that they usually _already_ go way past the left margin. -Miles -- A zen-buddhist walked into a pizza shop and said, "Make me one with everything." ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 22:18 ` Miles Bader @ 2004-05-17 1:14 ` Kenichi Handa 2004-05-17 2:30 ` Miles Bader 2004-05-17 14:46 ` Kim F. Storm 1 sibling, 1 reply; 173+ messages in thread From: Kenichi Handa @ 2004-05-17 1:14 UTC (permalink / raw) Cc: miles, emacs-devel, storm In article <20040512221825.GA30731@fencepost>, Miles Bader <miles@gnu.org> writes: > But it hardly makes a difference -- the first line of doc: comments in C-code > DEFUNs are typically indented so much that they usually _already_ go way past > the left margin. In such a case, can't we put the docstring as this? DEFVAR_LISP ("some-var", &Vsome_var, doc: /* Long long long long long long long long long first line of the docstring. ... --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-17 1:14 ` Kenichi Handa @ 2004-05-17 2:30 ` Miles Bader 2004-05-18 12:54 ` Kenichi Handa 0 siblings, 1 reply; 173+ messages in thread From: Miles Bader @ 2004-05-17 2:30 UTC (permalink / raw) Cc: emacs-devel, storm Kenichi Handa <handa@m17n.org> writes: > > But it hardly makes a difference -- the first line of doc: comments > > in C-code DEFUNs are typically indented so much that they usually > > _already_ go way past the left margin. > > In such a case, can't we put the docstring as this? > > doc: /* > Long long long long long long long long long first line of the docstring. You could I suppose (though I don't know if that has any funny interaction with the doc-string processing code), but people don't seem to, and instead just let the line overflow. Perhaps that's because c-mode, if given the chance, will screw up the indentation of such a line, so it can be a pain to _keep_ that way (e.g., if you type a */ at the end the line, bang, c-mode will put the indentation back...). -Miles -- Would you like fries with that? ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-17 2:30 ` Miles Bader @ 2004-05-18 12:54 ` Kenichi Handa 0 siblings, 0 replies; 173+ messages in thread From: Kenichi Handa @ 2004-05-18 12:54 UTC (permalink / raw) Cc: emacs-devel, storm In article <buohdufzsxn.fsf@mctpc71.ucom.lsi.nec.co.jp>, Miles Bader <miles@lsi.nec.co.jp> writes: > Kenichi Handa <handa@m17n.org> writes: >> > But it hardly makes a difference -- the first line of doc: comments >> > in C-code DEFUNs are typically indented so much that they usually >> > _already_ go way past the left margin. >> >> In such a case, can't we put the docstring as this? >> >> doc: /* >> Long long long long long long long long long first line of the docstring. > You could I suppose (though I don't know if that has any funny > interaction with the doc-string processing code), I used such format in emacs-unicode branch and it seems that doc-string processing code has no problem with that format. > but people don't seem > to, and instead just let the line overflow. Perhaps that's because > c-mode, if given the chance, will screw up the indentation of such a > line, so it can be a pain to _keep_ that way (e.g., if you type a */ at > the end the line, bang, c-mode will put the indentation back...). Yes. If we are going to promote that format, we should adjust the behaviour of c-mode. --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 22:18 ` Miles Bader 2004-05-17 1:14 ` Kenichi Handa @ 2004-05-17 14:46 ` Kim F. Storm 2004-05-17 22:23 ` Miles Bader 1 sibling, 1 reply; 173+ messages in thread From: Kim F. Storm @ 2004-05-17 14:46 UTC (permalink / raw) Cc: emacs-devel Miles Bader <miles@gnu.org> writes: > On Wed, May 12, 2004 at 03:09:26PM +0200, Kim F. Storm wrote: > > > > > So only the meaningful "fix" > > > > > for fill is to make it recognize the emacs-lisp docstrings > > > > > and keep the first line untouched. > > > > > > It already does that. > > > > Also in DEFUN:s in C code ? > > Not to the best of my knowledge. > > But it hardly makes a difference -- the first line of doc: comments in C-code > DEFUNs are typically indented so much that they usually _already_ go way past > the left margin. Yes, they often go past right margin when you edit the C file, but IMO filling should try to fill the doc string so that the first line looks sane when the user views it with e.g C-h C-f. That means that in c code, filling should really ignore \s*doc:\s*" at the beginning of the line. -- Kim F. Storm <storm@cua.dk> http://www.cua.dk ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-17 14:46 ` Kim F. Storm @ 2004-05-17 22:23 ` Miles Bader 0 siblings, 0 replies; 173+ messages in thread From: Miles Bader @ 2004-05-17 22:23 UTC (permalink / raw) Cc: emacs-devel, Miles Bader On Mon, May 17, 2004 at 04:46:30PM +0200, Kim F. Storm wrote: > That means that in c code, filling should really ignore \s*doc:\s*" at > the beginning of the line. Hey I'd love it, but I can imagine the obscure bug reports ... maybe there needs to be a special `emacs-c-mode'... -miles -- "Most attacks seem to take place at night, during a rainstorm, uphill, where four map sheets join." -- Anon. British Officer in WW I ^ permalink raw reply [flat|nested] 173+ messages in thread
* fill docstring (Re: new *Help* argument highlighting) 2004-05-12 14:06 ` Miles Bader 2004-05-12 13:09 ` Kim F. Storm @ 2004-05-12 23:28 ` Kenichi Handa 1 sibling, 0 replies; 173+ messages in thread From: Kenichi Handa @ 2004-05-12 23:28 UTC (permalink / raw) Cc: jmbarranquero, emacs-devel In article <20040512140625.GA20095@fencepost>, Miles Bader <miles@gnu.org> writes: > On Wed, May 12, 2004 at 03:15:01PM +0200, Juanma Barranquero wrote: >> > What do you mean? The first `sentence' should never be >> > broken into multiple lines. So only the meaningful "fix" >> > for fill is to make it recognize the emacs-lisp docstrings >> > and keep the first line untouched. > It already does that. Wow! I didn't know that. But, it seems that there's a bug. When I move point in the following docstring and type M-q: (defun temp () "This is a fairly long first line of a function documentation string." nil) the result is: (defun temp () "This is a fairly long first line of a function documentation string." nil) Another test: (defun temp () "This is a short documentation string." nil) is filled as: (defun temp () "This is a short documentation string." nil) If the docstring is more than two lines, it works as expected. So, perhaps, I should not try to fill a single line docstring which is anyway a nonsense thing. But I found another problem. (defun temp () (interactive) "This is a fairly long long long long first line of an embedded Lisp string. The second line." ) The string part is not filled, perhaps because it is detected as a docstring? --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 13:15 ` Juanma Barranquero 2004-05-12 14:06 ` Miles Bader @ 2004-05-17 1:16 ` Kenichi Handa 2004-05-17 7:02 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Kenichi Handa @ 2004-05-17 1:16 UTC (permalink / raw) Cc: emacs-devel In article <20040512150550.FB66.JMBARRANQUERO@wke.es>, Juanma Barranquero <jmbarranquero@wke.es> writes: > On Wed, 12 May 2004 22:01:41 +0900 (JST) > Kenichi Handa <handa@m17n.org> wrote: >> I see your point. The above discussion depends on that >> @var{NAME} much much rarely appears in a docstring than $NAME. > Yes. >> found only this docstring contains $NAME that will be treated >> as an arg unless we prescan usage. >> ------------------------------------------------------------ >> copyright is an interactive autoloaded Lisp function in `copyright'. >> (copyright &optional STR ARG) >> >> Insert a copyright by $ORGANIZATION notice at cursor. >> ------------------------------------------------------------ >> >> We can change it to: >> >> Insert a copyright by `$ORGANIZATION' notice at cursor. > I'm not sure I understand. Are you assuming `$NAME' could not be a valid > argument reference? I think so. If we surround $NAME with `', we should not treat it as an argument. --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-17 1:16 ` new *Help* argument highlighting Kenichi Handa @ 2004-05-17 7:02 ` Juanma Barranquero 2004-05-17 7:16 ` Kenichi Handa 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-17 7:02 UTC (permalink / raw) On Mon, 17 May 2004 10:16:49 +0900 (JST) Kenichi Handa <handa@m17n.org> wrote: > I think so. If we surround $NAME with `', we should not > treat it as an argument. I think that's a consequence, not a feature, or what you're proposing. If we had argument-name markers, I'd like for them to be honored everywhere they appear. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-17 7:02 ` Juanma Barranquero @ 2004-05-17 7:16 ` Kenichi Handa 0 siblings, 0 replies; 173+ messages in thread From: Kenichi Handa @ 2004-05-17 7:16 UTC (permalink / raw) Cc: emacs-devel In article <20040517090152.E437.JMBARRANQUERO@wke.es>, Juanma Barranquero <jmbarranquero@wke.es> writes: > On Mon, 17 May 2004 10:16:49 +0900 (JST) > Kenichi Handa <handa@m17n.org> wrote: >> I think so. If we surround $NAME with `', we should not >> treat it as an argument. > I think that's a consequence, not a feature, or what you're proposing. > If we had argument-name markers, I'd like for them to be honored > everywhere they appear. We anyway need some escape method for argument-name markers. It seems to me that surrounding them by `' is an easy way. But, I don't inisist on it that much. Changing the docstring to this is clearer. Insert a copyright by the organization notice (extracted from the environment variable ORGANIZATION) at cursor. --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 11:25 ` Kenichi Handa 2004-05-12 11:47 ` Juanma Barranquero @ 2004-05-12 12:53 ` Juanma Barranquero 2004-05-12 13:22 ` Kenichi Handa 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 12:53 UTC (permalink / raw) Cc: Kenichi Handa Kenichi Handa <handa@m17n.org> wrote: > I prefer a shorter convention something like @NAME or $NAME. BTW, it should be @NAME@ or $NAME$, because I want to support: {N}th {INDEX}es {SLOT}s make-{NAME} {NAME}-p (the part between {} is highlighted). All of them do happen now (see defstruct, for example). Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 12:53 ` Juanma Barranquero @ 2004-05-12 13:22 ` Kenichi Handa 2004-05-12 13:43 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Kenichi Handa @ 2004-05-12 13:22 UTC (permalink / raw) Cc: emacs-devel In article <20040512143721.FB63.JMBARRANQUERO@wke.es>, Juanma Barranquero <jmbarranquero@wke.es> writes: > Kenichi Handa <handa@m17n.org> wrote: >> I prefer a shorter convention something like @NAME or $NAME. > BTW, it should be @NAME@ or $NAME$, because I want to support: > {N}th > {INDEX}es > {SLOT}s > make-{NAME} > {NAME}-p > (the part between {} is highlighted). All of them do happen now (see > defstruct, for example). Even with $NAME, it seems (replace-regexp "\\$\\([A-Z]\\(-*[A-Z]\\)*\\)" "{\\1}") can correctly find parts to be highlighted (perhaps there will be more efficient regexp). --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 13:22 ` Kenichi Handa @ 2004-05-12 13:43 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 13:43 UTC (permalink / raw) Cc: Kenichi Handa On Wed, 12 May 2004 22:22:26 +0900 (JST) Kenichi Handa <handa@m17n.org> wrote: > Even with $NAME, it seems > (replace-regexp "\\$\\([A-Z]\\(-*[A-Z]\\)*\\)" "{\\1}") > can correctly find parts to be highlighted I'm not converting ARG1-XXX to {ARG1}-{XXX} or {ARG1-XXX} because there can be functions which have YYY as an argument, and YYY-XXX as a non-related "variable" in the docstring (because UPPERCASE words are often used as additional "docstring variables" in functions which accept complex combinations of keywords and/or structured args). But in fact, yes, I'm sure it can be made to work. Choosing $var{NAME} or $NAME or $NAME$ is not very important. Whatever people feels more comfortable with. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 22:26 ` Miles Bader 2004-05-11 8:11 ` Juanma Barranquero @ 2004-05-11 9:02 ` Juanma Barranquero 1 sibling, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-11 9:02 UTC (permalink / raw) Cc: Miles Bader On Mon, 10 May 2004 18:26:21 -0400 Miles Bader <miles@gnu.org> wrote: > Then change the docstring for the help-arguments face to say `you might want > to change this variable too'. Patch attached. (I'm not commiting it yet, let's see if the dust settles...) Juanma --- help-fns.el.orig 2004-05-09 21:02:38.000000000 +0200 +++ help-fns.el 2004-05-11 10:59:31.000000000 +0200 @@ -239,5 +239,13 @@ (defface help-argument-name '((t (:slant italic))) - "Face to highlight function arguments in docstrings.") + "Face to highlight function arguments in *Help* buffers. +You can customize this face. For more extensive customization, +see variable `help-arg-highlighting-function'.") + +(defvar help-arg-highlighting-function + #'(lambda (arg) (propertize (downcase arg) 'face 'help-argument-name)) + "Function to call to highlight function arguments in *Help* buffers. +The function receives the argument to highlight, as a string. +It must return the string with the desired highlighting (properties).") (defun help-do-arg-highlight (doc args) @@ -248,5 +256,5 @@ (setq doc (replace-regexp-in-string (concat "\\<\\(" arg "\\)\\(?:es\\|s\\|th\\)?\\>") - (propertize arg 'face 'help-argument-name) + (funcall help-arg-highlighting-function arg) doc t t 1)))) doc)) ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:47 ` Juanma Barranquero 2004-05-10 21:57 ` David Kastrup @ 2004-05-10 23:42 ` Kenichi Handa 2004-05-11 8:14 ` Juanma Barranquero 1 sibling, 1 reply; 173+ messages in thread From: Kenichi Handa @ 2004-05-10 23:42 UTC (permalink / raw) Cc: dak, emacs-devel In article <20040510234737.AE82.LEKTU@mi.madritel.es>, Juanma Barranquero <lektu@mi.madritel.es> writes: > On 10 May 2004 23:28:54 +0200, David Kastrup <dak@gnu.org> wrote: >> His choice. How about an uppercase-face? > How do you do that, other than having an uppercase-only font? (Genuine > question, I don't know how to do it via Emacs faces.) Perhaps the easiest way is to implement a new face property `display-table'. But, please note upper/down-case is not applicable to CJK (although it's quite rare to write a function whose arguments are not latin). --- Ken'ichi HANDA handa@m17n.org ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 23:42 ` Kenichi Handa @ 2004-05-11 8:14 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-11 8:14 UTC (permalink / raw) Cc: Kenichi Handa On Tue, 11 May 2004 08:42:52 +0900 (JST) Kenichi Handa <handa@m17n.org> wrote: > Perhaps the easiest way is to implement a new face property > `display-table'. I had no trouble thinking that some kind of filtering would allow to do it. My question was more "Oh, so it is possible right now?" because of a miscommunication between David and me. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:10 ` Juanma Barranquero 2004-05-10 21:28 ` David Kastrup @ 2004-05-11 12:23 ` Richard Stallman 2004-05-11 13:56 ` Juanma Barranquero 2004-05-11 16:51 ` Kevin Rodgers 2 siblings, 1 reply; 173+ messages in thread From: Richard Stallman @ 2004-05-11 12:23 UTC (permalink / raw) Cc: emacs-devel That's a one-line patch, and the effect is nice, and scarcely intrusive. However, it has the problem that if someone customizes help-argument-face to the default face, he's lost also the uppercase, so now arguments do not stand out at all. So he can customize two things instead of one. That is no big deal. (Only a few people will customize this.) ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 12:23 ` Richard Stallman @ 2004-05-11 13:56 ` Juanma Barranquero 2004-05-11 14:36 ` David Kastrup 2004-05-12 19:40 ` Richard Stallman 0 siblings, 2 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-11 13:56 UTC (permalink / raw) Cc: Richard Stallman On Tue, 11 May 2004 08:23:17 -0400 Richard Stallman <rms@gnu.org> wrote: > So he can customize two things instead of one. That is no big deal. > (Only a few people will customize this.) I'm not entirely sure whether that means "OK, let's use lowercase italics and have a face and a -function var", or I'm just misreading English again :) Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 13:56 ` Juanma Barranquero @ 2004-05-11 14:36 ` David Kastrup 2004-05-11 14:53 ` Juanma Barranquero 2004-05-12 19:40 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: David Kastrup @ 2004-05-11 14:36 UTC (permalink / raw) Cc: Richard Stallman, emacs-devel Juanma Barranquero <jmbarranquero@wke.es> writes: > On Tue, 11 May 2004 08:23:17 -0400 > Richard Stallman <rms@gnu.org> wrote: > > > So he can customize two things instead of one. That is no big deal. > > (Only a few people will customize this.) > > I'm not entirely sure whether that means "OK, let's use lowercase > italics and have a face and a -function var", or I'm just misreading > English again :) I think the least we can do is make lowercasing depending on whether face-differs-from-default-p returns true. If it does what I think it does. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 14:36 ` David Kastrup @ 2004-05-11 14:53 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-11 14:53 UTC (permalink / raw) Cc: David Kastrup On 11 May 2004 16:36:56 +0200 David Kastrup <dak@gnu.org> wrote: > I think the least we can do is make lowercasing depending on whether > face-differs-from-default-p returns true. Seems like a good idea, but: ELISP> (set-face-attribute 'help-argument-name nil :slant 'unspecified) nil ELISP> (face-differs-from-default-p 'help-argument-name) t ELISP> (describe-face 'help-argument-name) Face: help-argument-name (customize this face) Documentation: Face to highlight function arguments in *Help* buffers. You can customize this face. For more extensive customization, see variable `help-arg-highlighting-function'. Family: unspecified Width: unspecified Height: unspecified Weight: unspecified Slant: unspecified Foreground: unspecified Background: unspecified Underline: unspecified Overline: unspecified Strike-through: unspecified Box: unspecified Inverse: unspecified Stipple: unspecified Font or fontset: nil Inherit: unspecified Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 13:56 ` Juanma Barranquero 2004-05-11 14:36 ` David Kastrup @ 2004-05-12 19:40 ` Richard Stallman 2004-05-12 20:12 ` Stefan Monnier 2004-05-13 1:25 ` Juanma Barranquero 1 sibling, 2 replies; 173+ messages in thread From: Richard Stallman @ 2004-05-12 19:40 UTC (permalink / raw) Cc: emacs-devel > So he can customize two things instead of one. That is no big deal. > (Only a few people will customize this.) I'm not entirely sure whether that means "OK, let's use lowercase italics and have a face and a -function var", or I'm just misreading English again :) To say that a user can customize something does not necessarily mean introducing a defcustom to customize it. That is one of many customization mechanisms in Emacs. Another customization mechanism is to redefine a function. Some customizations are natural to do in that way, and some are important enough to be worth installing a defcustom for. But we should refuse to fall into thinking automatically "add a defcustom" whenever we think something might want to be changed by some users. Many of those things are definitely not worth adding a defcustom for. I am not sure what is the best way to recommend users deal with customizing this, when they want to customize this. It depends on how often anyone will want to change that. That depends on other things. I think the least we can do is make lowercasing depending on whether face-differs-from-default-p returns true. If it does what I think it does. Detecting automatically when to do this is much better than adding a separate defcustom to control whether to downcase. (Meanwhile, in the long term, we also have the idea of defining a new way to indicate variable names in doc strings. With that, it won't be a matter of downcasing any more. But the issue of deciding whether to upcase will replace it.) ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 19:40 ` Richard Stallman @ 2004-05-12 20:12 ` Stefan Monnier 2004-05-13 1:18 ` Miles Bader 2004-05-13 1:30 ` Juanma Barranquero 2004-05-13 1:25 ` Juanma Barranquero 1 sibling, 2 replies; 173+ messages in thread From: Stefan Monnier @ 2004-05-12 20:12 UTC (permalink / raw) Cc: Juanma Barranquero, emacs-devel Honestly, I can't believe we're spending so much energy on printing args in a slightly nicer way: - making sure the new highlighting pleases most people [done]. - making sure the new highlighting is OK in 99& of the environments [already done: including when the user changed the face to not be italics, or when running on a tty.] [left to do: detect X11 systems where the font chosen has no italics version.] - define a new format like @var{foo}. - change the help-mode to fiddle with those and only those. - change the fill code to try and not count the @var{...} annotation. - ... If someone comes up with an actual use for those changes (rather than just minor aesthetics tweaks), maybe I can buy them, but as it stands I find it just a waste of effort. Especially since experience on gnu.emacs.help seems to indicate that most users don't spend that much time and effort reading docstrings. The current convention is simple and safe, and as far as I can tell it's quite sufficient as well. The changes discussed here seem to be about a new convention which is not simple, and more importantly not safe. Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 20:12 ` Stefan Monnier @ 2004-05-13 1:18 ` Miles Bader 2004-05-13 1:30 ` Juanma Barranquero 1 sibling, 0 replies; 173+ messages in thread From: Miles Bader @ 2004-05-13 1:18 UTC (permalink / raw) Cc: Juanma Barranquero, rms, emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: > If someone comes up with an actual use for those changes (rather than just > minor aesthetics tweaks), maybe I can buy them, but as it stands I find it > just a waste of effort. > Especially since experience on gnu.emacs.help seems to indicate that most > users don't spend that much time and effort reading docstrings. > > The current convention is simple and safe, and as far as I can tell it's > quite sufficient as well. The changes discussed here seem to be about > a new convention which is not simple, and more importantly not safe. I kinda agree -- but _if_ we _do_ change to a new variable notation, it should be something extensible like @var{...}, not yet-another magic quote notation. That at least provides a path for easier future enhancements. -Miles -- o The existentialist, not having a pillow, goes everywhere with the book by Sullivan, _I am going to spit on your graves_. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 20:12 ` Stefan Monnier 2004-05-13 1:18 ` Miles Bader @ 2004-05-13 1:30 ` Juanma Barranquero 2004-05-13 1:41 ` Stefan Monnier 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-13 1:30 UTC (permalink / raw) Cc: Stefan Monnier On 12 May 2004 16:12:32 -0400, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > Honestly, I can't believe we're spending so much energy on printing args in > a slightly nicer way: Me neither :) > - making sure the new highlighting pleases most people [done]. > - making sure the new highlighting is OK in 99& of the environments Yes. > [already done: including when the user changed the face to not be italics, > or when running on a tty.] > [left to do: detect X11 systems where the font chosen has no italics > version.] It should work now, at least if display-supports-face-attributes-p is reliable. > If someone comes up with an actual use for those changes (rather than just > minor aesthetics tweaks), maybe I can buy them, but as it stands I find it > just a waste of effort. > Especially since experience on gnu.emacs.help seems to indicate that most > users don't spend that much time and effort reading docstrings. Well, I see it different because I spend a lot of time reading docstrings, so I don't think it's a waste of effort making them better, even in aesthetic ways. But certainly now is not the time to discuss it. If we decide that more information (structure, highlighting, or whatever) is necessary or helpful in docstrings, we can design the new features on the 22.X timeframe. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-13 1:30 ` Juanma Barranquero @ 2004-05-13 1:41 ` Stefan Monnier 2004-05-13 7:04 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Stefan Monnier @ 2004-05-13 1:41 UTC (permalink / raw) Cc: emacs-devel >> [left to do: detect X11 systems where the font chosen has no italics >> version.] > It should work now, at least if display-supports-face-attributes-p is > reliable. I strongly doubt it, because it is not a property of the display (X11 always supports italics) but of the particular font used. Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-13 1:41 ` Stefan Monnier @ 2004-05-13 7:04 ` Juanma Barranquero 2004-05-13 14:21 ` Stefan Monnier 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-13 7:04 UTC (permalink / raw) Cc: Stefan Monnier On 12 May 2004 21:41:31 -0400 Stefan Monnier <monnier@iro.umontreal.ca> wrote: > I strongly doubt it, because it is not a property of the display (X11 > always supports italics) but of the particular font used. Patches welcome. I don't know much about that stuff. Juanma ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-13 7:04 ` Juanma Barranquero @ 2004-05-13 14:21 ` Stefan Monnier 2004-05-13 21:25 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Stefan Monnier @ 2004-05-13 14:21 UTC (permalink / raw) Cc: emacs-devel >> I strongly doubt it, because it is not a property of the display (X11 >> always supports italics) but of the particular font used. > Patches welcome. I don't know much about that stuff. Neither do I. The best approach I can think of is to compare the font used for "A" and then for (propertize "A" 'face 'help-arg-face), but I don't think we have a function to get the font used for a given char-with-face. Of course, even if we do, it would only be valid for the current frame which might be different from the one in which *Help* will be displayed (IIRC the buffer is first constructed and then displayed via pop-to-buffer). Stefan ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-13 14:21 ` Stefan Monnier @ 2004-05-13 21:25 ` Juanma Barranquero 0 siblings, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-13 21:25 UTC (permalink / raw) Cc: Stefan Monnier On 13 May 2004 10:21:56 -0400, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > Of course, even if we do, it would only be valid for the current frame which > might be different from the one in which *Help* will be displayed (IIRC the > buffer is first constructed and then displayed via pop-to-buffer). I have no way to test all that. I think the best thing to do is wait for someone to trample into the problem and fix it and report back :) /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 19:40 ` Richard Stallman 2004-05-12 20:12 ` Stefan Monnier @ 2004-05-13 1:25 ` Juanma Barranquero 2004-05-14 9:20 ` Richard Stallman 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-13 1:25 UTC (permalink / raw) Cc: Richard Stallman On Wed, 12 May 2004 15:40:48 -0400, Richard Stallman <rms@gnu.org> wrote: > That is one of many > customization mechanisms in Emacs. Another customization mechanism > is to redefine a function. [...] > I am not sure what is the best way to recommend users deal with > customizing this, when they want to customize this. I think we've already given too much thought to something that should be simple, so I've done what you say: there's now no customizable face or variable, just a function `help-default-arg-highlight'. The NEWS entry explains that the user should redefine the function if he's not satisfied with the default. The default, by the way, is lowercase italics if display-supports-face-attributes-p says that the display supports it, uppercase normal (non-italics) otherwise. I'd suggest to leave the issue to rest and come back to it only if a problem is found. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-13 1:25 ` Juanma Barranquero @ 2004-05-14 9:20 ` Richard Stallman 0 siblings, 0 replies; 173+ messages in thread From: Richard Stallman @ 2004-05-14 9:20 UTC (permalink / raw) Cc: emacs-devel I think we've already given too much thought to something that should be simple, I tend to agree. so I've done what you say: there's now no customizable face or variable, just a function `help-default-arg-highlight'. The NEWS entry explains that the user should redefine the function if he's not satisfied with the default. The default, by the way, is lowercase italics if display-supports-face-attributes-p says that the display supports it, uppercase normal (non-italics) otherwise. I'd suggest to leave the issue to rest and come back to it only if a problem is found. That sounds good to me. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-10 21:10 ` Juanma Barranquero 2004-05-10 21:28 ` David Kastrup 2004-05-11 12:23 ` Richard Stallman @ 2004-05-11 16:51 ` Kevin Rodgers 2004-05-11 18:30 ` Juanma Barranquero 2004-05-12 0:04 ` Juanma Barranquero 2 siblings, 2 replies; 173+ messages in thread From: Kevin Rodgers @ 2004-05-11 16:51 UTC (permalink / raw) Juanma Barranquero wrote: > On Mon, 10 May 2004 13:54:11 -0400, Richard Stallman <rms@gnu.org> wrote: >>Yes, it would be good to downcase them in the Help buffer as well as >>italicizing them. > > That's a one-line patch, and the effect is nice, and scarcely intrusive. > However, it has the problem that if someone customizes > help-argument-face to the default face, he's lost also the uppercase, so > now arguments do not stand out at all. > > To solve that, we'd have do something like: > > (defvar help-arg-highlighting-function > #'(lambda (arg) (propertize (downcase arg) 'face '(:slant italic))) > "Function to call to highlight argument names in `describe-function' *Help* buffers.") > > instead of having a help-argument-name face. No, you just need to check (face-differs-from-default-p 'help-argument-name) before downcasing the argument. -- Kevin Rodgers ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 16:51 ` Kevin Rodgers @ 2004-05-11 18:30 ` Juanma Barranquero 2004-05-12 0:04 ` Juanma Barranquero 1 sibling, 0 replies; 173+ messages in thread From: Juanma Barranquero @ 2004-05-11 18:30 UTC (permalink / raw) Cc: Kevin Rodgers On Tue, 11 May 2004 10:51:47 -0600, Kevin Rodgers <ihs_4664@yahoo.com> wrote: > No, you just need to check (face-differs-from-default-p > 'help-argument-name) before downcasing the argument. Nice, I didn't know about f-d-f-d-p until David and you mentioned it. But still, I don't seem to be able to return a face to a non-differing state. ELISP> (defface test1-face '() "") test1-face ELISP> (face-differs-from-default-p 'test1-face) nil ELISP> (defface test2-face '((t (:slant italic))) "") test2-face ELISP> (face-differs-from-default-p 'test2-face) t ELISP> (set-face-attribute 'test2-face nil :slant 'unspecified :family 'unspecified) nil ELISP> (face-differs-from-default-p 'test2-face) t ELISP> and describe-face for test2-face shows "family or font: nil". Any idea what I'm doing wrong? /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-11 16:51 ` Kevin Rodgers 2004-05-11 18:30 ` Juanma Barranquero @ 2004-05-12 0:04 ` Juanma Barranquero 2004-05-12 18:29 ` Romain Francoise 1 sibling, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-12 0:04 UTC (permalink / raw) On Tue, 11 May 2004 10:51:47 -0600, Kevin Rodgers <ihs_4664@yahoo.com> wrote: > No, you just need to check (face-differs-from-default-p > 'help-argument-name) before downcasing the argument. Well, I've finally commited it so people can take a look at the downcase/italized setting. I've installed the two customizable options, the face and the -function var, because I think using a font differing or not from default is independent of wanting the args upper or lowercase. As RMS said, not many people will change the defaults (hopefully), but certainly *I* want to be able to do it (I prefer args in uppercase). Still, if face-differs-from-default-p works as expected, I'll patch the default highlighting lambda to not downcase for default-looking faces. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 0:04 ` Juanma Barranquero @ 2004-05-12 18:29 ` Romain Francoise 2004-05-13 1:31 ` Juanma Barranquero 0 siblings, 1 reply; 173+ messages in thread From: Romain Francoise @ 2004-05-12 18:29 UTC (permalink / raw) Juanma Barranquero <lektu@mi.madritel.es> writes: > Well, I've finally commited it so people can take a look at the > downcase/italized setting. Italic doesn't work on terminals (at least mine), so you should probably restrict this to window systems and leave the arguments in uppercase otherwise. Having no argument highlighting at all is quite disturbing. -- Romain Francoise <romain@orebokech.com> | I know, you love the song but it's a miracle -- http://orebokech.com/ | not the singer. ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-12 18:29 ` Romain Francoise @ 2004-05-13 1:31 ` Juanma Barranquero 2004-05-13 6:55 ` Romain Francoise 0 siblings, 1 reply; 173+ messages in thread From: Juanma Barranquero @ 2004-05-13 1:31 UTC (permalink / raw) Cc: Romain Francoise On Wed, 12 May 2004 20:29:43 +0200, Romain Francoise <romain@orebokech.com> wrote: > Italic doesn't work on terminals (at least mine), so you should probably > restrict this to window systems and leave the arguments in uppercase > otherwise. Please, try with the current HEAD and see if it works right for you. /L/e/k/t/u ^ permalink raw reply [flat|nested] 173+ messages in thread
* Re: new *Help* argument highlighting 2004-05-13 1:31 ` Juanma Barranquero @ 2004-05-13 6:55 ` Romain Francoise 0 siblings, 0 replies; 173+ messages in thread From: Romain Francoise @ 2004-05-13 6:55 UTC (permalink / raw) Juanma Barranquero <lektu@mi.madritel.es> writes: > Please, try with the current HEAD and see if it works right for you. It does, thanks. -- Romain Francoise <romain@orebokech.com> | They're nothing but scared it's a miracle -- http://orebokech.com/ | little mice. ^ permalink raw reply [flat|nested] 173+ messages in thread
end of thread, other threads:[~2004-06-16 17:59 UTC | newest] Thread overview: 173+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2004-05-07 5:32 new *Help* argument highlighting Miles Bader 2004-05-07 8:39 ` Juanma Barranquero 2004-05-08 22:22 ` Juri Linkov 2004-05-08 23:32 ` Juanma Barranquero 2004-05-08 23:47 ` Juri Linkov 2004-05-09 0:14 ` Juanma Barranquero 2004-05-08 23:49 ` Miles Bader 2004-05-09 0:09 ` Juanma Barranquero 2004-05-09 18:47 ` Richard Stallman 2004-05-09 22:25 ` Miles Bader 2004-05-09 22:54 ` Juanma Barranquero 2004-05-09 23:10 ` Stefan Monnier 2004-05-09 23:48 ` Juanma Barranquero 2004-05-10 0:00 ` Stefan Monnier 2004-05-10 0:11 ` Juanma Barranquero 2004-05-10 0:25 ` Stefan Monnier 2004-05-10 0:53 ` Juanma Barranquero 2004-05-10 1:32 ` Miles Bader 2004-05-10 7:24 ` Juanma Barranquero 2004-05-10 2:42 ` Stefan Monnier 2004-05-10 7:37 ` Juanma Barranquero 2004-05-10 12:45 ` Thien-Thi Nguyen 2004-05-10 13:01 ` Juanma Barranquero 2004-05-10 16:18 ` Robert J. Chassell 2004-05-10 19:06 ` Stefan Monnier 2004-05-10 21:54 ` Robert J. Chassell 2004-05-11 15:57 ` Juri Linkov 2004-05-11 20:58 ` Miles Bader 2004-05-11 21:51 ` Juri Linkov 2004-05-11 22:58 ` Miles Bader 2004-05-11 22:08 ` Robert J. Chassell 2004-05-11 0:07 ` Juri Linkov 2004-05-11 2:30 ` Stefan Monnier 2004-05-11 15:28 ` Juri Linkov 2004-05-11 17:44 ` Stefan Monnier 2004-05-10 17:54 ` Richard Stallman 2004-05-10 21:10 ` Juanma Barranquero 2004-05-10 21:28 ` David Kastrup 2004-05-10 21:41 ` Juanma Barranquero 2004-05-10 21:59 ` Stefan Monnier 2004-05-10 22:12 ` Juanma Barranquero 2004-05-10 21:47 ` Juanma Barranquero 2004-05-10 21:57 ` David Kastrup 2004-05-10 22:10 ` Juanma Barranquero 2004-05-10 22:26 ` Miles Bader 2004-05-11 8:11 ` Juanma Barranquero 2004-05-12 7:51 ` Richard Stallman 2004-05-12 8:15 ` Miles Bader 2004-05-12 8:58 ` Juanma Barranquero 2004-05-12 9:25 ` Miles Bader 2004-05-12 9:32 ` Juanma Barranquero 2004-05-13 15:45 ` Richard Stallman 2004-05-13 17:33 ` David Kastrup 2004-05-13 15:45 ` Richard Stallman 2004-06-11 10:53 ` Bug tracking (was: new *Help* argument highlighting) Juanma Barranquero 2004-06-11 11:20 ` Bug tracking Lars Hansen 2004-06-11 11:33 ` Juanma Barranquero 2004-06-11 11:39 ` Bug tracking (was: new *Help* argument highlighting) Kim F. Storm 2004-06-11 12:40 ` Bug tracking Juanma Barranquero 2004-06-11 14:21 ` Bug tracking (was: new *Help* argument highlighting) Miles Bader 2004-06-11 15:11 ` Kim F. Storm 2004-06-11 22:29 ` Miles Bader 2004-06-12 9:45 ` Richard Stallman 2004-06-12 1:50 ` Richard Stallman 2004-06-12 2:12 ` Juanma Barranquero 2004-06-12 8:15 ` Lars Hansen 2004-06-13 0:01 ` Richard Stallman 2004-06-13 0:20 ` Juanma Barranquero 2004-06-12 8:37 ` Bug tracking Juri Linkov 2004-06-12 9:38 ` Lars Hansen 2004-06-12 15:28 ` Juri Linkov 2004-06-14 13:52 ` Kim F. Storm 2004-06-14 15:09 ` Juri Linkov 2004-06-14 15:38 ` Juanma Barranquero 2004-06-14 16:32 ` Juri Linkov 2004-06-13 0:01 ` Richard Stallman 2004-06-13 0:05 ` Juanma Barranquero 2004-06-13 11:55 ` Kai Grossjohann 2004-06-13 14:34 ` Juanma Barranquero 2004-06-13 16:04 ` Juri Linkov 2004-06-14 18:50 ` Richard Stallman 2004-06-14 21:41 ` Juanma Barranquero 2004-06-14 23:09 ` Kim F. Storm 2004-06-14 23:33 ` Miles Bader 2004-06-15 8:11 ` Kim F. Storm 2004-06-16 16:57 ` Richard Stallman 2004-06-13 22:26 ` Kim F. Storm 2004-06-13 23:52 ` Miles Bader 2004-06-12 12:47 ` Juanma Barranquero 2004-06-12 15:38 ` Juri Linkov 2004-06-12 22:09 ` Juanma Barranquero 2004-06-12 23:06 ` Miles Bader 2004-06-13 0:08 ` Juanma Barranquero 2004-06-13 0:50 ` Miles Bader 2004-06-13 1:07 ` Juanma Barranquero 2004-06-13 16:00 ` Juri Linkov 2004-06-13 22:52 ` Juanma Barranquero 2004-06-13 23:56 ` Miles Bader 2004-06-14 7:20 ` Juanma Barranquero 2004-06-14 7:31 ` Juanma Barranquero 2004-06-14 16:40 ` Thien-Thi Nguyen 2004-06-14 21:36 ` Juanma Barranquero 2004-06-15 1:36 ` Thien-Thi Nguyen 2004-06-15 13:58 ` Juanma Barranquero 2004-06-13 21:49 ` Richard Stallman 2004-06-13 23:03 ` Juanma Barranquero 2004-06-13 0:01 ` Richard Stallman 2004-06-12 18:26 ` Bug tracking (was: new *Help* argument highlighting) Karl Fogel 2004-06-12 20:03 ` Karl Fogel 2004-06-13 2:39 ` Miles Bader 2004-06-12 21:01 ` Karl Fogel 2004-06-13 3:34 ` Miles Bader 2004-06-12 21:52 ` Karl Fogel 2004-06-13 11:31 ` Bug tracking Juanma Barranquero 2004-06-13 13:28 ` Miles Bader 2004-06-13 14:38 ` Juanma Barranquero 2004-06-13 12:19 ` Bug tracking (was: new *Help* argument highlighting) Jason Rumney 2004-06-13 9:06 ` David Kastrup 2004-06-13 14:26 ` Robert J. Chassell 2004-06-13 14:36 ` Karl Fogel 2004-06-13 23:29 ` Robert J. Chassell 2004-06-13 14:29 ` Bug tracking Oliver Scholz 2004-06-14 18:50 ` Richard Stallman 2004-06-14 21:17 ` Tak Ota 2004-06-16 16:57 ` Richard Stallman 2004-06-16 17:59 ` Tak Ota 2004-06-14 18:50 ` Bug tracking (was: new *Help* argument highlighting) Richard Stallman 2004-06-14 20:19 ` Karl Fogel 2004-06-16 16:58 ` Richard Stallman 2004-05-12 10:47 ` new *Help* argument highlighting Kenichi Handa 2004-05-12 11:10 ` Juanma Barranquero 2004-05-12 11:25 ` Kenichi Handa 2004-05-12 11:47 ` Juanma Barranquero 2004-05-12 13:01 ` Kenichi Handa 2004-05-12 13:15 ` Juanma Barranquero 2004-05-12 14:06 ` Miles Bader 2004-05-12 13:09 ` Kim F. Storm 2004-05-12 22:18 ` Miles Bader 2004-05-17 1:14 ` Kenichi Handa 2004-05-17 2:30 ` Miles Bader 2004-05-18 12:54 ` Kenichi Handa 2004-05-17 14:46 ` Kim F. Storm 2004-05-17 22:23 ` Miles Bader 2004-05-12 23:28 ` fill docstring (Re: new *Help* argument highlighting) Kenichi Handa 2004-05-17 1:16 ` new *Help* argument highlighting Kenichi Handa 2004-05-17 7:02 ` Juanma Barranquero 2004-05-17 7:16 ` Kenichi Handa 2004-05-12 12:53 ` Juanma Barranquero 2004-05-12 13:22 ` Kenichi Handa 2004-05-12 13:43 ` Juanma Barranquero 2004-05-11 9:02 ` Juanma Barranquero 2004-05-10 23:42 ` Kenichi Handa 2004-05-11 8:14 ` Juanma Barranquero 2004-05-11 12:23 ` Richard Stallman 2004-05-11 13:56 ` Juanma Barranquero 2004-05-11 14:36 ` David Kastrup 2004-05-11 14:53 ` Juanma Barranquero 2004-05-12 19:40 ` Richard Stallman 2004-05-12 20:12 ` Stefan Monnier 2004-05-13 1:18 ` Miles Bader 2004-05-13 1:30 ` Juanma Barranquero 2004-05-13 1:41 ` Stefan Monnier 2004-05-13 7:04 ` Juanma Barranquero 2004-05-13 14:21 ` Stefan Monnier 2004-05-13 21:25 ` Juanma Barranquero 2004-05-13 1:25 ` Juanma Barranquero 2004-05-14 9:20 ` Richard Stallman 2004-05-11 16:51 ` Kevin Rodgers 2004-05-11 18:30 ` Juanma Barranquero 2004-05-12 0:04 ` Juanma Barranquero 2004-05-12 18:29 ` Romain Francoise 2004-05-13 1:31 ` Juanma Barranquero 2004-05-13 6:55 ` Romain Francoise
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.