mirror of
https://gitea.com/mcereda/oam.git
synced 2026-02-09 05:44:23 +00:00
74 lines
1.8 KiB
Markdown
74 lines
1.8 KiB
Markdown
# Vim
|
|
|
|
## TL;DR
|
|
|
|
```sh
|
|
# Go to a particular line.
|
|
42G
|
|
42gg
|
|
:42<CR>
|
|
|
|
# Delete all file's lines.
|
|
:1,$d
|
|
|
|
# Substitute 4-spaces indentations with tabs.
|
|
:%s/ /\t/g
|
|
|
|
# Enable auto indentation per file type.
|
|
:filetype plugin indent on
|
|
|
|
# Render existing tab as 4 spaces in width.
|
|
:set tabstop=4
|
|
|
|
# Insert 4 spaces of width when indenting with '>'.
|
|
:set shiftwidth=4
|
|
|
|
# Insert 4 spaces when indenting with 'tab'.
|
|
:set expandtab
|
|
|
|
# Align the file to the current indentation settings.
|
|
:retab
|
|
|
|
# Get help on something.
|
|
:help modeline
|
|
```
|
|
|
|
## Modelines
|
|
|
|
Set different options for a particular file.
|
|
|
|
> The `modeline` option must be enabled in order to take advantage of this.
|
|
> This option is **set** by default for Vim running in nocompatible mode, but some notable distributions of Vim disable it in the system's `vimrc` for security. In addition, the option is **off** by default when editing as `root`.
|
|
|
|
See `:help modeline` for more information.
|
|
|
|
The modeline line needs to:
|
|
|
|
- be placed near the top of the file; how near, will depend on the modeline settings
|
|
- start with a comment opening for the file type.
|
|
|
|
> The space between the comment opening and 'vim' is necessary for the modeline to be recognized.
|
|
|
|
Examples:
|
|
|
|
```txt
|
|
# vim: set expandtab:
|
|
|
|
# -*- mode: ruby -*-
|
|
# vi: set ft=ruby :
|
|
|
|
/* ex: set ts=8 sw=4 tw=0 noet : */
|
|
```
|
|
|
|
## Sources
|
|
|
|
- [Modeline magic]
|
|
- [Embed vim settings in file]
|
|
- [Basic vimrc]
|
|
- [Set whitespace preferences by filetype]
|
|
|
|
[basic vimrc]: https://github.com/amix/vimrc/blob/master/vimrcs/basic.vim
|
|
[embed vim settings in file]: https://stackoverflow.com/questions/3958416/embed-vim-settings-in-file#3958516
|
|
[modeline magic]: https://vim.fandom.com/wiki/Modeline_magic
|
|
[set whitespace preferences by filetype]: https://stackoverflow.com/questions/1562633/setting-vim-whitespace-preferences-by-filetype#1563552
|