The Ultimate .vimrc Knowledge Quiz


Reuben
Idyllic Icon

Reuben

Created 6/25/2024

72

68.61%

Q & A


Share This Quiz

Sources

https://www.reddit.com/r/vim/wiki/vimrctips/#wiki_you_don.27t_need_set_nocompatible
https://www.reddit.com/r/vim/wiki/tabstop/

Think you know everything about .vimrc and best practices? Test your knowledge with this challenging quiz!

Think you know everything about .vimrc and best practices? Test your knowledge with this challenging quiz!

1. Why should you avoid using 'set nocompatible' in your .vimrc?

It may triggers other settings to reset unintentionally.
It makes your config incompatible with gVim.
It disables all custom plugins.
It's an outdated command.

2. Why should you prefer using full option names instead of short names in your .vimrc?

Full names are required for compatibility with newer versions of Vim.
Short names are no longer supported in Vim.
Full names are easier to understand and maintain.
Full names have better performance.

3. Why should you wrap autocmds in proper augroups?

To speed up Vim's loading time.
To make them run faster.
To allow easier debugging.
To prevent duplication when sourcing your .vimrc multiple times.

4. What is the purpose of version control for your .vimrc?

To speed up Vim's loading time.
To prevent configuration file mishaps.
To share the .vimrc with multiple users.
To use Vim on multiple devices.

5. Why should you avoid using 'source' in your .vimrc?

It makes Vim start slower.
Source requires you just use &runtimepath which is more difficult to manage
Source path is relative to :pwd not to the path of vimrc
It can cause syntax errors.

6. Why is it important to be specific in your mappings?

To ensure mappings do not accidentally apply to unintended modes.
To enable performance improvements.
To automatically debug mappings.
To allow using reserved keywords.

7. In which situation would it be suitable to use recursive mappings?

When defining a simple shortcut.
When using <Plug> mappings provided by a plugin.
When mapping normal mode to insert mode.
When using autoloaded functions.

8. What is a risk of using 'smartindent' in your vimrc?

It is not recognized by newer versions of Vim.
It slows down editing speed.
It might conflict with other languages indentation methods.
It only works for C-based languages.

9. Why should your functions include the 'abort' attribute in the .vimrc?

To prevent other functions from executing.
To allow the function to immediately stop on error.
To make the function run faster.
To enable recursion within the function.

10. Why should you be careful about putting unknown commands in your .vimrc?

It can slow down Vim initialization.
It may cause unexpected behaviour.
It will disable other mappings.
It forces Vim to enter compatibility mode.