Closed Felipe-9 closed 1 week ago
Maybe try tinkering with g:vimtex_indent_delims
or something.
when i try to indent using
=
orgq
=
is the mapping for indents, whereas gq
is a mapping for formatting. See :help vimtex-indent
and :help vimtex_format_enabled
for some related docs.
I'll ignore the gq
for now.
some delimiters are being ignored
Yes, this is by design. Your example expected vs observed seems to be basically this:
= \left(
\dots
+ c_1\,(
- e^{-x^2}
- \,(-2\,x)
+ e^{-x^2}
+ \,(-2\,x)
)
\right)
As mentioned by @user202729, you can control this with g:vimtex_indent_delims
, although I strongly recommend not to indent e.g. simple parantheses. If you do, then it will also indent these in regular text.
Description
Following #3013
when i try to indent using
=
orgq
some delimiters are being ignored Expected behaviour would be formatting into the original file (test.tex) (no changes)text.tex (original)
```tex % !TEX root = ./test.tex \documentclass[ class=article, multi={minipage}, border={3mm}, ]{standalone} \usepackage{amsmath, amssymb} \usepackage{mathtools} \begin{document} \begin{flalign*} & = \left( \dots + c_1\,( e^{-x^2} \,(-2\,x) ) \right) & \end{flalign*} \end{document} ```test.tex after `=ae` or `gqae` (actual behaviour)
Notice: - Indents on `\left(\right)` - Ignores indentation on `()` ```tex ... \begin{flalign*} & = \left( \dots + c_1\,( e^{-x^2} \,(-2\,x) ) \right) other chars that disappear & \end{flalign*} ... ```Config
init.lua
```lua -- KEYMAP vim.g.mapleader = " " -- Leader key into space vim.g.maplocalleader = "\\" -- OPTIONS local opt = vim.opt -- Options opt.updatetime = 200 opt.wrap = false -- Linenumber opt.relativenumber = true -- Relative number opt.number = true -- Relative number with cursor being absolute number -- tabs & indentation opt.tabstop = 2 -- 2 spaces for tabs (prettier default) opt.softtabstop = 2 -- opt.shiftwidth = 2 -- 2 spaces for indent width opt.expandtab = true -- expand tab to spaces opt.autoindent = true -- copy indent from current line when starting new one -- search settings opt.ignorecase = true -- ignore case when searching opt.smartcase = true -- if you include mixed case in your search, assumes you want case-sensitive -- Splits opt.splitbelow = true -- set new split windows below opt.splitright = true -- set new split windows right -- backspace opt.backspace = "indent,eol,start" -- allow backspace on indent, end of line or insert mode start position -- Theme opt.cursorline = true -- Highlight cursor line opt.termguicolors = true opt.background = "dark" -- colorschemes that can be light or dark theme opt.signcolumn = "yes" -- show sign column so taht text doesnt shift -- clipboard opt.clipboard:append("unnamedplus") -- use system clipboard as default register -- ui vim.lsp.handlers["textDocument/hover"] = vim.lsp.with( vim.lsp.handlers.hover, { border = "rounded" } ) vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with( vim.lsp.handlers.signature_help, { border = "rounded" } ) vim.diagnostic.config{ float={border= 'rounded'} } -- LAZY -- Bootstrap lazy.nvim local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not (vim.uv or vim.loop).fs_stat(lazypath) then local lazyrepo = "https://github.com/folke/lazy.nvim.git" local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) if vim.v.shell_error ~= 0 then vim.api.nvim_echo({ { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, { out, "WarningMsg" }, { "\nPress any key to exit..." }, }, true, {}) vim.fn.getchar() os.exit(1) end end vim.opt.rtp:prepend(lazypath) require("lazy").setup({ { import = "profiles.felipe.plugins" }, }, { install = { colorscheme = { "catppuccin-mocha" } }, -- automatically check for plugin updates checker = { enabled = true, notify = false, }, change_detection = { notify = false }, ui = { border = "rounded" }, }) ```vimtex.lua
```lua return { "lervag/vimtex", lazy = false, init = function() -- Preview vim.g.vimtex_view_method = "zathura" vim.g.latex_view_general_viewer = "zathura" -- vim.g.vimtex_view_method = "zathura_simple" -- Compiling vim.g.vimtex_compiler_latexmk_engines = { ["_"] = "-lualatex" } vim.g.vimtex_compiler_latexmk = { aux_dir = ".build", -- out_dir = "", options = { "-shell-escape", "-verbose", "-file-line-error", "-synctex=1", "-interaction=nonstopmode", }, } -- Features vim.g.vimtex_quickfix_mode = 1 vim.g.vimtex_mappings_enable = 0 vim.g.vimtex_indent_enabled = 1 vim.g.vimtex_format_enabled = 1 vim.g.imaps_enabled = 0 vim.g.vimtex_log_ignore = { "Underfull", "Overfull", "specifier changed to", "Token not allowed in PDF string", } -- -- Syntax conceal -- vim.wo.conceallevel = 2 vim.vimtex_syntax_conceal = 1 vim.g.vimtex_syntax_conceal = { accents = 1, ligatures = 1, cites = 1, fancy = 1, spacing = 0, greek = 1, math_bounds = 1, math_delimiters = 1, math_fracs = 1, math_super_sub = 0, math_symbols = 1, sections = 0, styles = 1, } -- -- Defining custom syntax conceal -- -- Simple commands vim.g.vimtex_syntax_custom_cmds = { -- { -- mathmode = true, -- name = ",", -- concealchar = " ", -- }, { -- mdif mathmode = true, name = "mdif", concealchar = "D", }, { -- mdif* mathmode = true, name = "mdifstar", cmdre = "mdif\\*", concealchar = "D", }, { -- odif mathmode = true, name = "odif", concealchar = "d", }, { -- fdif mathmode = true, name = "fdif", concealchar = "δ", }, { -- adif mathmode = true, name = "adif", concealchar = "Δ", }, { -- jdif mathmode = true, name = "jdif", concealchar = "∂", }, { -- gdif mathmode = true, name = "gdif", concealchar = "∇", }, } -- Commands with variables vim.g.vimtex_syntax_custom_cmds_with_concealed_delims = { { -- myrange mathmode = true, opt = false, name = "myrange", nargs = 1, cchar_open = "[", cchar_close = "]", }, { -- myrange* mathmode= true, opt = false, conceal=true, name = "myrangestar", cmdre = "myrange\\*", nargs = 1, cchar_open = "]", cchar_close = "[" }, { -- myranger mathmode = true, opt = false, name = "myranger", nargs = 1, cchar_open = "[", cchar_close = "[", }, { -- myrangel mathmode = true, opt = false, name = "myrangel", nargs = 1, cchar_open = "]", cchar_close = "]", }, { -- myrangelr mathmode = true, opt = false, name = "myrangelr", nargs = 1, cchar_open = "]", cchar_close = "[", }, { -- myvert mathmode = true, opt = false, nargs= 1, name = "myvertsingle", cmdre = "myvert", cchar_open = "|", cchar_close = "|" }, { -- myVert mathmode = true, opt = false, nargs= 1, name = "myVertdouble", cmdre = "myVert", cchar_open = "‖", cchar_close = "‖" }, { -- myvert* mathmode = true, opt = false, nargs= 1, name = "myvertsinglestar", cmdre = "myvert\\*", cchar_open = "|", cchar_close = "|" }, { -- myVert mathmode = true, opt = false, nargs= 1, name = "myVertdoublestar", cmdre = "myVert\\*", cchar_open = "‖", cchar_close = "‖" }, } vim.g.vimtex_syntax_custom_envs = { { name = "BM", math = true } } end, } ```Steps to reproduce
No response
Expected behavior
No response
Actual behavior
No response
Do you use a latexmkrc file?
no
VimtexInfo