All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
1 -----------------------------------------------------------------------------
2 --- moving around, searching and patterns
3 -----------------------------------------------------------------------------
5 -- ignore case when using a search pattern
6 vim.opt.ignorecase = true
8 -- override 'ignorecase' when pattern has upper case characters
9 vim.opt.smartcase = true
11 -----------------------------------------------------------------------------
12 --- syntax, highlighting and spelling
13 -----------------------------------------------------------------------------
15 -- "dark" or "light"; the background color brightness
16 vim.opt.background = "light"
18 -----------------------------------------------------------------------------
20 -----------------------------------------------------------------------------
22 -- list of flags to make messages shorter
23 vim.opt.shortmess = "atTWoOI"
25 -- display the current mode in the status line
26 vim.opt.showmode = false -- the cursor already reflects the mode
28 -- do not display a status line unless there is more than one window
29 vim.opt.laststatus = 1
31 -----------------------------------------------------------------------------
33 -----------------------------------------------------------------------------
35 -- preserve indentation in wrapped text
36 vim.opt.breakindent = true
38 -----------------------------------------------------------------------------
40 -----------------------------------------------------------------------------
42 -- line length above which to break a line
43 vim.opt.textwidth = 78
45 -- list of flags that tell how automatic formatting works
46 vim.opt.formatoptions = "tcroqn1l"
48 -- pattern to recognize a numbered list
49 -- [[…]] is the Lua way to disable escape sequences in strings
50 vim.opt.formatlistpat = [[^\v\s*(((#|\a|\d{,4}|[ivx]{,4})[]:.)}/])+|[-\*.·→+])\s+]]
52 -- whether to use a popup menu for Insert mode completion
53 vim.opt.completeopt = { "menu", "noinsert", "popup", "preview" }
55 -- number of spaces used for each step of (auto)indent
56 vim.opt.shiftwidth = 2
58 -- round to 'shiftwidth' for "<<" and ">>"
59 vim.opt.shiftround = true
61 -- expand <Tab> to spaces in Insert mode
62 vim.opt.expandtab = true
64 -- copy whitespace for indenting from previous line
65 vim.opt.copyindent = true
67 -- preserve kind of whitespace when changing indent
68 vim.opt.preserveindent = true
70 -- automatically save and restore undo history
71 vim.opt.undofile = true
73 -----------------------------------------------------------------------------
75 -----------------------------------------------------------------------------
77 -- folding type: "manual", "indent", "expr", "marker", "syntax" or "diff"
78 vim.opt.foldmethod = "marker"
80 -----------------------------------------------------------------------------
81 --- reading and writing files
82 -----------------------------------------------------------------------------
84 -- automatically write a file when leaving a modified buffer
85 vim.opt.autowrite = true
87 -- as 'autowrite', but works with more commands
88 vim.opt.autowriteall = true
90 -- automatically read a file when it was modified outside of Vim
91 vim.opt.autoread = true
93 -----------------------------------------------------------------------------
95 -----------------------------------------------------------------------------
97 -- list of directories for the swap file
98 vim.opt.directory = { ".", vim.g.statedir .. "/swap//", "/var/tmp//", "$TMPDIR//", "/tmp//" }
100 -----------------------------------------------------------------------------
101 --- command line editing
102 -----------------------------------------------------------------------------
104 -- list of patterns to ignore files for file name completion
105 vim.opt.wildignore = { "*.o", "*.pyc", "*.pyo", "*~", "*.bk", "*.bak" }
107 -----------------------------------------------------------------------------
109 -----------------------------------------------------------------------------
111 -- safer working with script files in the current directory
112 vim.opt.secure = true
114 -- list that specifies what to write in the ShaDa file
115 vim.opt.shada = { "!", "%", "'100", "/100", ":100", "<100", "@100", "f1", "h", "s10" }
116 -- location of shada file
117 vim.opt.shadafile = vim.g.statedir .. "shada/main.shada"
119 -- disable the mouse entirely