Sven Guckes [email protected] ©1995-2001

Last update: Mon Nov 12 00:00:00 MET 2001

VIM HowTo - Creating a Bugreport

How do you report a bug, anyway? Here's a small guide for you:


HOW *NOT* TO report a bug

"I am using vim and it does not seem to be working." Well, what exactly is not working?


HOWTO report bugs

Preparing the report:
*Take* *your* *time*!

Do not just fire up your mailer and send some text in haste. This will simply cost the time of the recipient (read: mine) - and in return it will cost time for you to read this text, anyway.

Some minimal info should *always* be given with a report - even if it turns out to be superfluous at some point. So please put a little effort into the report. The more info you give the less questions will have to be asked about it. It will be well worth it and your work is much appreciated!

Please give info about these things:

VIM can do all this for you automatically. Just "source" the file bugreport.vim and the commands which will be executed then will create the file bugreport.txt in Vim's current working directory (check with command ":pwd"). There are two ways to do this: Either from within a running Vim with ":so $VIM/bugreport.vim", or starting Vim from the command line with "vim -s $VIM/bugreport.vim".

NOTE: The data created by this command can be *huge* - so do *not* send this text to the mailing list. In fact, please *test* whether the bug actually applies to a non-special setup by starting vim *without* any setup files:

	vim -u NONE
Example: The reports says "I am using set noautoindent in my ~/.vimrc - but it doesn't seem to be working.."

here is my answer:

wild guess:
your setup defines "autoindent"
at some point, anyway.
please check this - both with and without setup files:
start vim, and enter ":set ai?" -
does vim give you "autoindent" as
a return message?  then it *is* set.
Now try the same without setup files:
  vim -u NONE
again, use ":set ai?" -
what does vim give you now?
if it is "noautoindent" then it is
fine because that is the default.
now start with "vim -V3" and
see which files get sourced.
can you spot the point
of setting/error now?
remember: it could also be an autocommand
which sets the autoindent for some files.
and once it gets set it stays set.
it might require another (default)
autocommand to reset the settings.
However, some bugs are not errand values of options but can only exposed by a sequence of commands.

Try to find a sequence of commands which will expose the bug *every* time you use it. This will help in finding the bug much better, and requires just some commands/text to be sent.

Please give this some time - it will save us all a lot of testing. Thank you for doing so! :-)

If you cannot find a way to track the bug to some specific command and you think you really have to send a huge amount of data then *please* put all the files into an archive, compress it, and then *attach* the file to your email. Thanks!

And please do *not* send this huge data onto the mailing lists. most people will not care about this amount of data,a nyway. Furthermore, this will just make the archives unnecessarily big and will lead to false positives in searches. And some people with a slow data connection will simply hate you for dumping data into their mailboxes. In general, never ever send huge data which was not requested for.

Please keep your messages on the lists as *small* as possible. Thankyou!

Please prepare your data in your description as follows: Version info:
Please always state your version of vim clearly! You can abbreviate "vim version 5.4a" to "vim-5.4a" and even "vim54a". Making this one word also has the advantage that you can use the word completion command on it, ie all you need to type is "vim^P" and the command ^P (control-p) will expand the word "vim" to "vim46".

Create a version info file:
I suggest that you write this info to a file and keep it around so you can include with the next bug report.

	vim --version > vimvers.txt

Options settings:
Use the command :set to look at the changed settings; this command will show just the *changed* settings from the default.

Mappings:
Please include info about the settings that may affect the error. If you are not sure which settings have to do with the effect then please add the info you get from these commands: ":set all", ":set termcap", ":map", ":map!", ":au" (in that order). If you happen to be sure that not all of these might be appropriate then just include the ones you think are relevant.

Problem description:
Please give a clear description of problem. Let us know about the commands you used and the messages that Vim gave you. Add examples, if possible.
This can certainly take some time - but it can save a lot of time for those of use who wish to help you. An elaborated report certainly is much appreciated! :-) (Yes, this really makes us happy. No shit.)

Problem list:
Keep a file around with problems that you have encountered. This will be useful for testing new releases. Let us know whether a problem has been fixed! Let us know about workarounds, too!

Patches:
If you know how to read and change code then PLEASE send a patch, too! This will save a lot of time for the author and thus will make it a lot easier for him to fix it. Sending patches also raises the chances for introducing your new features. Think about it!
Posting patches: If you think that your patch will be useful right away for everybody then you might want to send it to the development list. please create a "diff file" using GNU's "diff", possibly with "context" if the patch is small; add the patchfile as an attachment if possible.

Best of all, put your info about workarounds and patches onto a webpage and have it linked to from the Vim User Page. That way, the info will get read by search engines, so the data does not get lost so easily, and we can access it right away without having you send updates. This is especially good if the info is big. Btw, posting the web address to a patch should then suffice.

Subject lines: version command/options
Please make the subject descriptive! Give the version number and possibly the related command name or option.

Examples for subject lines:

	Subject: vim46 - ":help billgates" not found
	Subject: vim46 - ":goemacs" -> error "no way, buddy"
	Subject: vim5n - ":syntax on"  -> color!
	Subject: vim5t - ":tnext"
	Subject: vim5  - goals for vim6
	Subject: vim52d - kitchen sink feature does not work
	Subject: vim54 - more functions, more GUI - but no folding
	Subject: vim60 - ":set ve=all" - where did my cursor go?
Where to send bug reports: author or vim-dev
You can theoretically send all reports to the author ([email protected]). But it is usually better to tell all developers by posting on the "developers (mailing) list" ([email protected]) and discuss it there! Note: You must subscribe to the lists first before a post is accepted and distributed. If you can put your patch onto a webpage then please just post the URL.

Bug report prizes -> credit list:
Well, there are no prizes for bug reports. Sorry. But everyone who contributes much to the code there is the possibility to get into the credit list (see ":help credits").

Language: Sometimes I get reports which simply quote some error message. Then I dont even know in which *language* I should repond. (Hello, Wayne!) Even though 95% of all emails are in English some people expect me to answer in German even though their domain name does not end in at/ch/de. A few words as a comment should be helpful...


Example Bugreport

From:    Sven Guckes           <[email protected]>
To:      VIM Development List <[email protected]>
Subject: [52f] no color on rxvt
MinInfo:
Environ: OS: SunOS 4.1.3; terminal: rxvt-2.4.5-mason3; $TERM=xterm;
program: vim-5.2f +GUI_Athena +mouse_xterm +terminfo -xterm_save.
I cannot get color with Vim-5.2f on an rxvt.  Anyone have any hints?
And another one:
From:    Sven Guckes           
To:      VIM Development List 
Subject: [60aj] no color on rxvt
Linux Debian 2.2rel2; vim-6.0aj -GUI +X11; console [TERM=linux]
When I start "vim"  with DISPLAY=hostname:10.0
then vim tries to contact the X server
and I get a dozen errors of type "E79":
E79: Cannot expand wildcards
Could not find ':' in DISPLAY:
XIO:  fatal IO error 104 (Connection reset by peer) on X server "hostname:10.0"
after 0 requests (0 known processed) with 0 events remaining.

URL:         http://www.math.fu-berlin.de/~guckes/vim/howto/bugrep.html
URL:         https://www.vim8.org/howto/bugrep.html (mirror)
Created:     Mon Jul 06 00:00:00 CEST 1998
Send feedback on this page to
Sven Guckes [email protected]