aboutsummaryrefslogtreecommitdiff
path: root/nvim/dot-config/nvim-final/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'nvim/dot-config/nvim-final/init.lua')
-rw-r--r--nvim/dot-config/nvim-final/init.lua719
1 files changed, 0 insertions, 719 deletions
diff --git a/nvim/dot-config/nvim-final/init.lua b/nvim/dot-config/nvim-final/init.lua
deleted file mode 100644
index eb9074d..0000000
--- a/nvim/dot-config/nvim-final/init.lua
+++ /dev/null
@@ -1,719 +0,0 @@
-vim.loader.enable(true)
-
-vim.pack.add({
- "https://github.com/nvim-treesitter/nvim-treesitter",
-}, { confirm = false })
-
-vim.pack.add({
- "https://github.com/zenbones-theme/zenbones.nvim",
-}, { load = false })
-
-require("mo.zen").setup("seoulbones")
-
-require("vim._extui").enable({})
-vim.cmd([[ packadd! nvim.undotree ]])
-
-vim.cmd([[
-nnoremap - <Cmd>Ex<CR>
-
-nnoremap <expr> [e '<Cmd>.move --' . v:count1 . '<CR>'
-nnoremap <expr> ]e '<Cmd>.move +' . v:count1 . '<CR>'
-xnoremap <expr> [e ':move --' . v:count1 . '<CR>gv'
-xnoremap <expr> ]e ':move +' . (v:count1 + line('''>') - line('''<')) . '<CR>gv'
-
-function! Sort(type, ...) abort
- '[,']sort
- call setpos('.', getpos("''"))
-endfunction
-nnoremap gs m'<Cmd>set operatorfunc=Sort<CR>g@
-xnoremap gs :sort<CR>
-]])
-
-vim.keymap.set("n", "gK", "K")
-
-vim.o.expandtab = true
-vim.o.shiftwidth = 4
-vim.o.tabstop = 4
-
-vim.o.breakindent = true
--- Every wrapped line will continue visually indented (same amount of
--- space as the beginning of that line), thus preserving horizontal
--- blocks of text.
-
-vim.o.cinoptions = "l1,:0,g0,E-s,N-s,t0,(s,J1,j1"
--- The 'cinoptions' affect the way 'cindent' reindents lines in a C
--- program.
-
-vim.o.colorcolumn = "+1"
--- 'colorcolumn' is a comma-separated list of screen columns that are
--- highlighted with ColorColumn |hl-ColorColumn|. Useful to align
--- text. Will make screen redrawing slower.
--- The screen column can be an absolute number, or a number preceded with
--- '+' or '-', which is added to or subtracted from 'textwidth'.
--- When 'textwidth' is zero then the items with '-' and '+' are not used.
-
-vim.o.completeopt = "menu,menuone,preview,noselect,fuzzy"
--- 'completeopt' 'cot' string (default "menu,popup")
--- global or local to buffer |global-local|
--- A comma-separated list of options for Insert mode completion
--- |ins-completion|. The supported values are:
---
--- fuzzy Enable |fuzzy-matching| for completion candidates. This
--- allows for more flexible and intuitive matching, where
--- characters can be skipped and matches can be found even
--- if the exact sequence is not typed.
---
--- longest
--- When 'autocomplete' is not active, only the longest common
--- prefix of the matches is inserted. If the popup menu is
--- displayed, you can use CTRL-L to add more characters.
--- Whether case is ignored depends on the type of completion.
--- For buffer text the 'ignorecase' option applies.
---
--- When 'autocomplete' is active and no completion item is
--- selected, the longest common prefix of the matches is
--- inserted after the cursor. The prefix is taken either
--- from all displayed items or only from items in the current
--- buffer. The inserted text is highlighted with
--- |hl-PreInsert|, and the cursor position does not change
--- (similar to `"preinsert"`). Press CTRL-Y to accept.
--- See also |preinserted()|.
---
--- menu Use a popup menu to show the possible completions. The
--- menu is only shown when there is more than one match and
--- sufficient colors are available. |ins-completion-menu|
---
--- menuone Use the popup menu also when there is only one match.
--- Useful when there is additional information about the
--- match, e.g., what file it comes from.
---
--- nearest Matches are listed based on their proximity to the cursor
--- position, unlike the default behavior, which only
--- considers proximity for matches appearing below the
--- cursor. This applies only to matches from the current
--- buffer. No effect if "fuzzy" is present.
---
--- noinsert Do not insert any text for a match until the user selects
--- a match from the menu. Only works in combination with
--- "menu" or "menuone". No effect if "longest" is present.
---
--- noselect Same as "noinsert", except that no menu item is
--- pre-selected. If both "noinsert" and "noselect" are
--- present, "noselect" takes precedence. This is enabled
--- automatically when 'autocomplete' is on, unless
--- "preinsert" is also enabled.
---
--- nosort Disable sorting of completion candidates based on fuzzy
--- scores when "fuzzy" is enabled. Candidates will appear
--- in their original order.
---
--- popup Show extra information about the currently selected
--- completion in a popup window. Only works in combination
--- with "menu" or "menuone". Overrides "preview".
---
--- preinsert
--- Inserts the text of the first completion candidate beyond
--- the current leader, highlighted with |hl-PreInsert|.
--- The cursor does not move.
--- Requires "fuzzy" to be unset, and either "menuone" in
--- 'completeopt' or 'autocomplete' enabled. When
--- 'autocomplete' is enabled, this does not work if
--- 'ignorecase' is set without 'infercase'.
--- See also |preinserted()|.
---
--- preview Show extra information about the currently selected
--- completion in the preview window. Only works in
--- combination with "menu" or "menuone".
---
--- Only "fuzzy", "longest", "popup", "preinsert" and "preview" have an
--- effect when 'autocomplete' is enabled.
---
--- This option does not apply to |cmdline-completion|. See 'wildoptions'
--- for that.
-vim.opt.cpoptions:remove("~")
--- 'cpoptions' 'cpo' string (default "aABceFs_")
--- global
--- A sequence of single character flags. When a character is present
--- this indicates Vi-compatible behavior. This is used for things where
--- not being Vi-compatible is mostly or sometimes preferred.
--- 'cpoptions' stands for "compatible-options".
--- Commas can be added for readability.
--- To avoid problems with flags that are added in the future, use the
--- "+=" and "-=" feature of ":set" |add-option-flags|.
-vim.o.cursorline = true
-vim.o.cursorlineopt = "number"
-vim.o.foldlevelstart = 99
--- 'foldlevelstart' 'fdls' number (default -1)
--- global
--- Sets 'foldlevel' when starting to edit another buffer in a window.
--- Useful to always start editing with all folds closed (value zero),
--- some folds closed (one) or no folds closed (99).
--- This is done before reading any modeline, thus a setting in a modeline
--- overrules this option. Starting to edit a file for |diff-mode| also
--- ignores this option and closes all folds.
--- It is also done before BufReadPre autocommands, to allow an autocmd to
--- overrule the 'foldlevel' value for specific files.
--- When the value is negative, it is not used.
-vim.o.foldtext = ""
--- 'foldtext' 'fdt' string (default "foldtext()")
--- local to window
--- An expression which is used to specify the text displayed for a closed
--- fold. The context is set to the script where 'foldexpr' was set,
--- script-local items can be accessed. See |fold-foldtext| for the
--- usage.
---
--- The expression will be evaluated in the |sandbox| if set from a
--- modeline, see |sandbox-option|.
--- This option cannot be set in a modeline when 'modelineexpr' is off.
---
--- It is not allowed to change text or jump to another window while
--- evaluating 'foldtext' |textlock|.
---
--- When set to an empty string, foldtext is disabled, and the line
--- is displayed normally with highlighting and no line wrapping.
-vim.o.ignorecase = true
--- 'ignorecase' 'ic' boolean (default off)
--- global
--- Ignore case in search patterns, |cmdline-completion|, when
--- searching in the tags file, |expr-==| and for Insert-mode completion
--- |ins-completion|.
--- Also see 'smartcase' and 'tagcase'.
--- Can be overruled by using "\c" or "\C" in the pattern, see
--- |/ignorecase|.
-vim.o.smartcase = true
--- Override the 'ignorecase' option if the search pattern contains upper
--- case characters. Only used when the search pattern is typed and
--- 'ignorecase' option is on. Used for the commands "/", "?", "n", "N",
--- ":g" and ":s" and when filtering matches for the completion menu
--- |compl-states|.
--- Not used for "*", "#", "gd", tag search, etc. After "*" and "#" you
--- can make 'smartcase' used by doing a "/" command, recalling the search
--- pattern from history and hitting <Enter>.
-vim.o.jumpoptions = "view,clean"
--- 'jumpoptions' 'jop' string (default "clean")
--- global
--- List of words that change the behavior of the |jumplist|.
--- stack Make the jumplist behave like the tagstack.
--- Relative location of entries in the jumplist is
--- preserved at the cost of discarding subsequent entries
--- when navigating backwards in the jumplist and then
--- jumping to a location. |jumplist-stack|
---
--- view When moving through the jumplist, |changelist|,
--- |alternate-file|, using |mark-motions| or when popping
--- the |tagstack| try to restore the |mark-view| in which
--- the action occurred.
---
--- clean Remove unloaded buffers from the jumplist.
--- EXPERIMENTAL: this flag may change in the future.
-vim.o.linebreak = true
--- 'linebreak' 'lbr' boolean (default off)
--- local to window
--- If on, Vim will wrap long lines at a character in 'breakat' rather
--- than at the last character that fits on the screen. Unlike
--- 'wrapmargin' and 'textwidth', this does not insert <EOL>s in the file,
--- it only affects the way the file is displayed, not its contents.
--- If 'breakindent' is set, line is visually indented. Then, the value
--- of 'showbreak' is used to put in front of wrapped lines. This option
--- is not used when the 'wrap' option is off.
--- Note that <Tab> characters after an <EOL> are mostly not displayed
--- with the right amount of white space.
-vim.o.list = true
--- 'list' boolean (default off)
--- local to window
--- List mode: By default, show tabs as ">", trailing spaces as "-", and
--- non-breakable space characters as "+". Useful to see the difference
--- between tabs and spaces and for trailing blanks. Further changed by
--- the 'listchars' option.
---
--- When 'listchars' does not contain "tab" field, tabs are shown as "^I"
--- or "<09>", like how unprintable characters are displayed.
---
--- The cursor is displayed at the start of the space a Tab character
--- occupies, not at the end as usual in Normal mode. To get this cursor
--- position while displaying Tabs with spaces, use: >vim
--- set list lcs=tab:\ \
--- <
--- Note that list mode will also affect formatting (set with 'textwidth'
--- or 'wrapmargin') when 'cpoptions' includes 'L'. See 'listchars' for
--- changing the way tabs are displayed.
-vim.opt.listchars:append("precedes:<", "extends:>")
--- 'listchars' 'lcs' string (default "tab:> ,trail:-,nbsp:+")
--- global or local to window |global-local|
--- Strings to use in 'list' mode and for the |:list| command. It is a
--- comma-separated list of string settings. *E1511*
---
--- *lcs-eol*
--- eol:c Character to show at the end of each line. When
--- omitted, there is no extra character at the end of the
--- line.
--- *lcs-tab*
--- tab:xy[z] Two or three characters to be used to show a tab.
--- The third character is optional.
---
--- tab:xy The 'x' is always used, then 'y' as many times as will
--- fit. Thus "tab:>-" displays: >
--- >
--- >-
--- >--
--- etc.
--- <
--- tab:xyz The 'z' is always used, then 'x' is prepended, and
--- then 'y' is used as many times as will fit. Thus
--- "tab:<->" displays: >
--- >
--- <>
--- <->
--- <-->
--- etc.
--- <
--- When "tab:" is omitted, a tab is shown as ^I.
--- *lcs-space*
--- space:c Character to show for a space. When omitted, spaces
--- are left blank.
--- *lcs-multispace*
--- multispace:c...
--- One or more characters to use cyclically to show for
--- multiple consecutive spaces. Overrides the "space"
--- setting, except for single spaces. When omitted, the
--- "space" setting is used. For example,
--- `:set listchars=multispace:---+` shows ten consecutive
--- spaces as: >
--- ---+---+--
--- <
--- *lcs-lead*
--- lead:c Character to show for leading spaces. When omitted,
--- leading spaces are blank. Overrides the "space" and
--- "multispace" settings for leading spaces. You can
--- combine it with "tab:", for example: >vim
--- set listchars+=tab:>-,lead:.
--- <
--- *lcs-leadmultispace*
--- leadmultispace:c...
--- Like the |lcs-multispace| value, but for leading
--- spaces only. Also overrides |lcs-lead| for leading
--- multiple spaces.
--- `:set listchars=leadmultispace:---+` shows ten
--- consecutive leading spaces as: >
--- ---+---+--XXX
--- <
--- Where "XXX" denotes the first non-blank characters in
--- the line.
--- *lcs-trail*
--- trail:c Character to show for trailing spaces. When omitted,
--- trailing spaces are blank. Overrides the "space" and
--- "multispace" settings for trailing spaces.
--- *lcs-extends*
--- extends:c Character to show in the last column, when 'wrap' is
--- off and the line continues beyond the right of the
--- screen.
--- *lcs-precedes*
--- precedes:c Character to show in the first visible column of the
--- physical line, when there is text preceding the
--- character visible in the first column.
--- *lcs-conceal*
--- conceal:c Character to show in place of concealed text, when
--- 'conceallevel' is set to 1. A space when omitted.
--- *lcs-nbsp*
--- nbsp:c Character to show for a non-breakable space character
--- (0xA0 (160 decimal) and U+202F). Left blank when
--- omitted.
---
--- The characters ':' and ',' should not be used. UTF-8 characters can
--- be used. All characters must be single width. *E1512*
---
--- Each character can be specified as hex: >vim
--- set listchars=eol:\\x24
--- set listchars=eol:\\u21b5
--- set listchars=eol:\\U000021b5
--- < Note that a double backslash is used. The number of hex characters
--- must be exactly 2 for \\x, 4 for \\u and 8 for \\U.
---
--- Examples: >vim
--- set lcs=tab:>-,trail:-
--- set lcs=tab:>-,eol:<,nbsp:%
--- set lcs=extends:>,precedes:<
--- < |hl-NonText| highlighting will be used for "eol", "extends" and
--- "precedes". |hl-Whitespace| for "nbsp", "space", "tab", "multispace",
--- "lead" and "trail".
-vim.o.number = true
-vim.o.pumheight = 10
--- 'pumheight' 'ph' number (default 0)
--- global
--- Maximum number of items to show in the popup menu
--- (|ins-completion-menu|). Zero means "use available screen space".
-vim.o.scrolloff = 2
--- 'scrolloff' 'so' number (default 0)
--- global or local to window |global-local|
--- Minimal number of screen lines to keep above and below the cursor.
--- This will make some context visible around where you are working. If
--- you set it to a very large value (999) the cursor line will always be
--- in the middle of the window (except at the start or end of the file or
--- when long lines wrap).
--- After using the local value, go back the global value with one of
--- these two: >vim
--- setlocal scrolloff<
--- setlocal scrolloff=-1
--- < For scrolling horizontally see 'sidescrolloff'.
-vim.o.shada =
- "'100,<50,s10,:100,/100,h,r/tmp/,r/private/,rfugitive:,rzipfile:,rterm:"
--- 'shada' 'sd' string (default for
--- Win32: !,'100,<50,s10,h,rA:,rB:
--- others: !,'100,<50,s10,h)
--- global
--- When non-empty, the shada file is read upon startup and written
--- when exiting Vim (see |shada-file|). The string should be a comma-
--- separated list of parameters, each consisting of a single character
--- identifying the particular parameter, followed by a number or string
--- which specifies the value of that parameter. If a particular
--- character is left out, then the default value is used for that
--- parameter. The following is a list of the identifying characters and
--- the effect of their value.
--- CHAR VALUE ~
--- *shada-!*
--- ! When included, save and restore global variables that start
--- with an uppercase letter, and don't contain a lowercase
--- letter. Thus "KEEPTHIS and "K_L_M" are stored, but "KeepThis"
--- and "_K_L_M" are not. Nested List and Dict items may not be
--- read back correctly, you end up with an empty item.
--- *shada-quote*
--- " Maximum number of lines saved for each register. Old name of
--- the '<' item, with the disadvantage that you need to put a
--- backslash before the ", otherwise it will be recognized as the
--- start of a comment!
--- *shada-%*
--- % When included, save and restore the buffer list. If Vim is
--- started with a file name argument, the buffer list is not
--- restored. If Vim is started without a file name argument, the
--- buffer list is restored from the shada file. Quickfix
--- ('buftype'), unlisted ('buflisted'), unnamed and buffers on
--- removable media (|shada-r|) are not saved.
--- When followed by a number, the number specifies the maximum
--- number of buffers that are stored. Without a number all
--- buffers are stored.
--- *shada-'*
--- ' Maximum number of previously edited files for which the marks
--- are remembered. This parameter must always be included when
--- 'shada' is non-empty.
--- If non-zero, then the |jumplist| and the |changelist| are also
--- stored in the shada file.
--- *shada-/*
--- / Maximum number of items in the search pattern history to be
--- saved. If non-zero, then the previous search and substitute
--- patterns are also saved. When not included, the value of
--- 'history' is used.
--- *shada-:*
--- : Maximum number of items in the command-line history to be
--- saved. When not included, the value of 'history' is used.
--- *shada-<*
--- < Maximum number of lines saved for each register. If zero then
--- registers are not saved. When not included, all lines are
--- saved. '"' is the old name for this item.
--- Also see the 's' item below: limit specified in KiB.
--- *shada-@*
--- @ Maximum number of items in the input-line history to be
--- saved. When not included, the value of 'history' is used.
--- *shada-c*
--- c Dummy option, kept for compatibility reasons. Has no actual
--- effect: ShaDa always uses UTF-8 and 'encoding' value is fixed
--- to UTF-8 as well.
--- *shada-f*
--- f Whether file marks need to be stored. If zero, file marks ('0
--- to '9, 'A to 'Z) are not stored. When not present or when
--- non-zero, they are all stored. '0 is used for the current
--- cursor position (when exiting or when doing |:wshada|).
--- *shada-h*
--- h Disable the effect of 'hlsearch' when loading the shada
--- file. When not included, it depends on whether ":nohlsearch"
--- has been used since the last search command.
--- *shada-n*
--- n Name of the shada file. The name must immediately follow
--- the 'n'. Must be at the end of the option! If the
--- 'shadafile' option is set, that file name overrides the one
--- given here with 'shada'. Environment variables are
--- expanded when opening the file, not when setting the option.
--- *shada-r*
--- r Removable media. The argument is a string (up to the next
--- ','). This parameter can be given several times. Each
--- specifies the start of a path for which no marks will be
--- stored. This is to avoid removable media. For Windows you
--- could use "ra:,rb:". You can also use it for temp files,
--- e.g., for Unix: "r/tmp". Case is ignored.
--- *shada-s*
--- s Maximum size of an item contents in KiB. If zero then nothing
--- is saved. Unlike Vim this applies to all items, except for
--- the buffer list and header. Full item size is off by three
--- unsigned integers: with `s10` maximum item size may be 1 byte
--- (type: 7-bit integer) + 9 bytes (timestamp: up to 64-bit
--- integer) + 3 bytes (item size: up to 16-bit integer because
--- 2^8 < 10240 < 2^16) + 10240 bytes (requested maximum item
--- contents size) = 10253 bytes.
---
--- Example: >vim
--- set shada='50,<1000,s100,:0,n~/nvim/shada
--- <
--- '50 Marks will be remembered for the last 50 files you
--- edited.
--- <1000 Contents of registers (up to 1000 lines each) will be
--- remembered.
--- s100 Items with contents occupying more then 100 KiB are
--- skipped.
--- :0 Command-line history will not be saved.
--- n~/nvim/shada The name of the file to use is "~/nvim/shada".
--- no / Since '/' is not specified, the default will be used,
--- that is, save all of the search history, and also the
--- previous search and substitute patterns.
--- no % The buffer list will not be saved nor read back.
--- no h 'hlsearch' highlighting will be restored.
---
--- When setting 'shada' from an empty value you can use |:rshada| to
--- load the contents of the file, this is not done automatically.
---
--- This option cannot be set from a |modeline| or in the |sandbox|, for
--- security reasons.
-vim.o.sidescrolloff = 5
--- 'sidescrolloff' 'siso' number (default 0)
--- global or local to window |global-local|
--- The minimal number of screen columns to keep to the left and to the
--- right of the cursor if 'nowrap' is set. Setting this option to a
--- value greater than 0 while having 'sidescroll' also at a non-zero
--- value makes some context visible in the line you are scrolling in
--- horizontally (except at beginning of the line). Setting this option
--- to a large value (like 999) has the effect of keeping the cursor
--- horizontally centered in the window, as long as one does not come too
--- close to the beginning of the line.
--- After using the local value, go back the global value with one of
--- these two: >vim
--- setlocal sidescrolloff<
--- setlocal sidescrolloff=-1
--- <
--- Example: Try this together with 'sidescroll' and 'listchars' as in the
--- following example to never allow the cursor to move onto the
--- "extends" character: >vim
---
--- set nowrap sidescroll=1 listchars=extends:>,precedes:<
--- set sidescrolloff=1
--- <
-vim.o.smartcase = true
--- 'smartcase' 'scs' boolean (default off)
--- global
--- Override the 'ignorecase' option if the search pattern contains upper
--- case characters. Only used when the search pattern is typed and
--- 'ignorecase' option is on. Used for the commands "/", "?", "n", "N",
--- ":g" and ":s" and when filtering matches for the completion menu
--- |compl-states|.
--- Not used for "*", "#", "gd", tag search, etc. After "*" and "#" you
--- can make 'smartcase' used by doing a "/" command, recalling the search
--- pattern from history and hitting <Enter>.
-vim.o.smoothscroll = true
--- 'smoothscroll' 'sms' boolean (default off)
--- local to window
--- Scrolling works with screen lines. When 'wrap' is set and the first
--- line in the window wraps part of it may not be visible, as if it is
--- above the window. "<<<" is displayed at the start of the first line,
--- highlighted with |hl-NonText|.
--- You may also want to add "lastline" to the 'display' option to show as
--- much of the last line as possible.
--- NOTE: partly implemented, doesn't work yet for |gj| and |gk|.
-vim.o.splitright = true
--- 'splitright' 'spr' boolean (default off)
--- global
--- When on, splitting a window will put the new window right of the
--- current one. |:vsplit|
-vim.o.statuscolumn = "%s%=%l%{%&nu||&rnu?'%#WinSeparator#│':''%}"
--- 'statuscolumn' 'stc' string (default "")
--- local to window
--- When non-empty, this option determines the content of the area to the
--- side of a window, normally containing the fold, sign and number columns.
--- The format of this option is like that of 'statusline'.
---
--- Some of the items from the 'statusline' format are different for
--- 'statuscolumn':
---
--- %l line number column for currently drawn line
--- %s sign column for currently drawn line
--- %C fold column for currently drawn line
---
--- The 'statuscolumn' width follows that of the default columns and
--- adapts to the 'numberwidth', 'signcolumn' and 'foldcolumn' option values
--- (regardless of whether the sign and fold items are present).
--- Additionally, the 'statuscolumn' grows with the size of the evaluated
--- format string, up to a point (following the maximum size of the default
--- fold, sign and number columns). Shrinking only happens when the number
--- of lines in a buffer changes, or the 'statuscolumn' option is set.
---
--- The |v:lnum| variable holds the line number to be drawn.
--- The |v:relnum| variable holds the relative line number to be drawn.
--- The |v:virtnum| variable is negative when drawing virtual lines, zero
--- when drawing the actual buffer line, and positive when
--- drawing the wrapped part of a buffer line.
---
--- When using |v:relnum|, keep in mind that cursor movement by itself will
--- not cause the 'statuscolumn' to update unless 'relativenumber' is set.
---
--- NOTE: The %@ click execute function item is supported as well but the
--- specified function will be the same for each row in the same column.
--- It cannot be switched out through a dynamic 'statuscolumn' format, the
--- handler should be written with this in mind.
---
--- Examples: >vim
--- " Line number with bar separator and click handlers:
--- set statuscolumn=%@SignCb@%s%=%T%@NumCb@%l│%T
---
--- " Line numbers in hexadecimal for non wrapped part of lines:
--- let &stc='%=%{v:virtnum>0?"":printf("%x",v:lnum)} '
---
--- " Human readable line numbers with thousands separator:
--- let &stc='%{substitute(v:lnum,"\\d\\zs\\ze\\'
--- . '%(\\d\\d\\d\\)\\+$",",","g")}'
---
--- " Both relative and absolute line numbers with different
--- " highlighting for odd and even relative numbers:
--- let &stc='%#NonText#%{&nu?v:lnum:""}' .
--- '%=%{&rnu&&(v:lnum%2)?"\ ".v:relnum:""}' .
--- '%#LineNr#%{&rnu&&!(v:lnum%2)?"\ ".v:relnum:""}'
---
--- < WARNING: this expression is evaluated for each screen line so defining
--- an expensive expression can negatively affect render performance.
---
-vim.o.tagcase = "match"
--- 'tagcase' 'tc' string (default "followic")
--- global or local to buffer |global-local|
--- This option specifies how case is handled when searching the tags
--- file:
--- followic Follow the 'ignorecase' option
--- followscs Follow the 'smartcase' and 'ignorecase' options
--- ignore Ignore case
--- match Match case
--- smart Ignore case unless an upper case letter is used
-vim.o.title = true
--- 'title' boolean (default off)
--- global
--- When on, the title of the window will be set to the value of
--- 'titlestring' (if it is not empty), or to:
--- filename [+=-] (path) - Nvim
--- Where:
--- filename the name of the file being edited
--- - indicates the file cannot be modified, 'ma' off
--- + indicates the file was modified
--- = indicates the file is read-only
--- =+ indicates the file is read-only and modified
--- (path) is the path of the file being edited
--- - Nvim the server name |v:servername| or "Nvim"
-vim.o.undofile = true
--- 'undofile' 'udf' boolean (default off)
--- local to buffer
--- When on, Vim automatically saves undo history to an undo file when
--- writing a buffer to a file, and restores undo history from the same
--- file on buffer read.
--- The directory where the undo file is stored is specified by 'undodir'.
--- For more information about this feature see |undo-persistence|.
--- The undo file is not read when 'undoreload' causes the buffer from
--- before a reload to be saved for undo.
--- When 'undofile' is turned off the undo file is NOT deleted.
-vim.o.updatetime = 250
--- 'updatetime' 'ut' number (default 4000)
--- global
--- If this many milliseconds nothing is typed the swap file will be
--- written to disk (see |crash-recovery|). Also used for the
--- |CursorHold| autocommand event.
-vim.opt.wildignore:append({ "*.pyc", "__pycache__", "*~", "#*#", "*.o" })
--- 'wildignore' 'wig' string (default "")
--- global
--- A list of file patterns. A file that matches with one of these
--- patterns is ignored when expanding |wildcards|, completing file or
--- directory names, and influences the result of |expand()|, |glob()| and
--- |globpath()| unless a flag is passed to disable this.
--- The pattern is used like with |:autocmd|, see |autocmd-pattern|.
--- Also see 'suffixes'.
--- Example: >vim
--- set wildignore=*.o,*.obj
--- < The use of |:set+=| and |:set-=| is preferred when adding or removing
--- a pattern from the list. This avoids problems when a future version
--- uses another default.
-vim.o.wildignorecase = true
--- 'wildignorecase' 'wic' boolean (default off)
--- global
--- When set case is ignored when completing file names and directories.
--- Has no effect when 'fileignorecase' is set.
--- Does not apply when the shell is used to expand wildcards, which
--- happens when there are special characters.
-vim.o.wildmode = "longest:full,full"
--- 'wildmode' 'wim' string (default "full")
--- global
--- Completion mode used for the character specified with 'wildchar'.
--- This option is a comma-separated list of up to four parts,
--- corresponding to the first, second, third, and fourth presses of
--- 'wildchar'. Each part is a colon-separated list of completion
--- behaviors, which are applied simultaneously during that phase.
---
--- The possible behavior values are:
--- "" Only complete (insert) the first match. No further
--- matches are cycled or listed.
--- "full" Complete the next full match. Cycles through all
--- matches, returning to the original input after the
--- last match. If 'wildmenu' is enabled, it will be
--- shown.
--- "longest" Complete to the longest common substring. If this
--- doesn't extend the input, the next 'wildmode' part is
--- used.
--- "list" If multiple matches are found, list all of them.
--- "lastused" When completing buffer names, sort them by most
--- recently used (excluding the current buffer). Only
--- applies to buffer name completion.
--- "noselect" If 'wildmenu' is enabled, show the menu but do not
--- preselect the first item.
--- If only one match exists, it is completed fully, unless "noselect" is
--- specified.
---
--- Some useful combinations of colon-separated values:
--- "longest:full" Start with the longest common string and show
--- 'wildmenu' (if enabled). Does not cycle
--- through full matches.
--- "list:full" List all matches and complete first match.
--- "list:longest" List all matches and complete till the longest
--- common prefix.
--- "list:lastused" List all matches. When completing buffers,
--- sort them by most recently used (excluding the
--- current buffer).
--- "noselect:lastused" Do not preselect the first item in 'wildmenu'
--- if it is active. When completing buffers,
--- sort them by most recently used (excluding the
--- current buffer).
---
--- Examples: >vim
--- set wildmode=full
--- < Complete full match on every press (default behavior) >vim
--- set wildmode=longest,full
--- < First press: longest common substring
--- Second press: cycle through full matches >vim
--- set wildmode=list:full
--- < First press: list all matches and complete the first one >vim
--- set wildmode=list,full
--- < First press: list matches only
--- Second press: complete full matches >vim
--- set wildmode=longest,list
--- < First press: longest common substring
--- Second press: list all matches >vim
--- set wildmode=noselect:full
--- < First press: show 'wildmenu' without completing or selecting
--- Second press: cycle full matches >vim
--- set wildmode=noselect:lastused,full
--- < Same as above, but buffer matches are sorted by time last used
--- More info here: |cmdline-completion|.
-vim.o.winborder = "none"
--- 'winborder' string (default "")
--- global
--- Defines the default border style of floating windows. The default value
--- is empty, which is equivalent to "none". Valid values include:
--- - "bold": Bold line box.
--- - "double": Double-line box.
--- - "none": No border.
--- - "rounded": Like "single", but with rounded corners ("ā•­" etc.).
--- - "shadow": Drop shadow effect, by blending with the background.
--- - "single": Single-line box.
--- - "solid": Adds padding by a single whitespace cell.
--- - custom: comma-separated list of exactly 8 characters in clockwise
--- order starting from topleft. Example: >lua
--- vim.o.winborder='+,-,+,|,+,-,+,|'
--- <